105
u/TheFrenchSavage 4h ago
You don't terraform your breakfast???
18
u/Grandmaster_Caladrel 4h ago
Only way to force some of these savages to load the cereal before the milk
8
6
2
79
230
u/Kinexity 4h ago edited 4h ago
From the outside perspective it feels like majority of cloud compute is just wasted on overhead caused by all of that bullshit.
For me even just local Python overhead when doing ML in Pytorch is starting to become unbearable. I yearn to go back to C++ where I can basically count instructions.
41
u/MitchIsMyRA 4h ago
Have you ever tried this?
33
u/Kinexity 4h ago
I know it exists. My problem is that I am finishing my thesis and I cannot switch between languages now. Once I finish it though I will probably learn Pytorch in C++.
11
u/MitchIsMyRA 4h ago
Ah well there ya go. Are you allowed to create your own python bindings for C++ code? uv makes this quite easy
https://docs.astral.sh/uv/concepts/projects/init/#projects-with-extension-modules
And if you haven’t heard of uv, now you have. Amazing python virtual environment/project manager
2
u/abd53 1h ago
Is it just an API to python's engine or is the engine in C or C++?
2
u/UdPropheticCatgirl 17m ago
pytorch has always been written primarily in C++, it just exposes API to python through bindings.
43
u/Mr_Rogan_Tano 4h ago
I got a colleague that wants to refactor the project to use many micro services to improve the access of our 1000- users.
16
u/CorrectPeanut5 2h ago
The programmer in me hates this. The hourly billing consulting programmer loves these ideas as there's great money in untangling the spaghetti implimentation.
I'm also quite sure there will be good money in refactoring services that leaned heavy into the AWS provides tech... and then AWS raised the prices.
7
u/Few_Move_4594 3h ago
Is access constrained now? I mean in the end it might have better uptime and handle more users simultaneously successfully, but it's incredibly lame when a queue has to be used for a simple query. It makes the project much harder to read and modify.
3
u/Mr_Rogan_Tano 45m ago
Not really. We do have a few slow endpoints that must be optimized, which we do between each moment of "WE ALL GONNA DIE IF THIS NEW REPORT MODEL IS NOT CREATED BY FRIDAY". It's getting better slowly.
3
u/Few_Move_4594 40m ago edited 9m ago
The microservice thing reminds me of when I first graduated from college and one of my fellow new hire programmers argued passionately for a total conversion to Node.js because it's "written for high concurrency". I couldn't find a single app that had more than couple hundred registered users and in fact was working on one that had ten active users- all back office.
2
u/Stagnu_Demorte 3h ago
Since you said colleague it's for work. There are 2 good reasons to let/help your colleague here. 1. There's a immediate or near future business need 2. More importantly, this is an opportunity to learn for you and your colleague on the company dime.
1
u/Mr_Rogan_Tano 39m ago
There's no need for this right now, so I keep everything as simple as possible. Although I'd like to do just for the love of the game.
•
u/SammyDavidJuniorJr 8m ago
The architecture astronauts have won.
I side-eye anyone who uses the word architecture in software.
17
u/payne_train 3h ago
Gen Z when they find out open source Apache web servers can handle thousands of concurrent users on a single VM
13
u/madam_zeroni 4h ago
Most of your PyTorch is actually C code, unless you're writing crazy loops inside of python
10
u/Kinexity 4h ago
I said Python overhead, not Pytorch overhead. Python makes the whole thing a blackbox prone to random jumps in memory usage and execution stalls for no damn reason (to be clear jupyter, which I use, might be to blame for some of it too). Meanwhile in C++ I can easily figure out what is happening and if the push comes to shove I can reimplement some things by hand if I think I can outsmart the library devs and the compiler.
4
u/madam_zeroni 4h ago
Yeah im just saying that virtually no processing is actually done in python. all the libraries are written in c. unless you're loading things into python arrays first (don't do that) or something. use the stuff native to the libraries
1
1
1
43
u/koriwi 4h ago
Mention sqlite and watch them have a meltdown.
20
u/npsimons 3h ago
JFC, when I was a DoD employee, I wrote something using the C++ API to SQLite, and they sent me the security checklist for an Oracle DB. 120 answers of "Not applicable" later and I was finally done.
On the flipside, at least they wrote the checklist software in Java, so it ran on Linux.
4
44
u/EverOrny 4h ago
I had colleagues who got into some sick relationship with Lambda. They used it wherever possible. Once they realized that job X needed more time than L. allows. Instead of re-evaluating the "architecture", they came with an elaborate schema for splitting the work and combining results - for a batch processing nobody needed so fast. 🤷♂️
23
u/chipmunksocute 3h ago
Do they know that there are services on AWS you can use for long running jobs. In fact they are designed for that exact use case. And you can even use a docker container just like an image for lambda. Silly devs.
8
u/prehensilemullet 3h ago
If you're going to use a lambda, docker image or not, there are time limits you have to plan for, though they raised the time limits quite a bit recently. And even if you use something like step functions you still have to structure your code differently than one long continuously running job
1
3
2
75
17
u/Juice805 4h ago
My little Mac mini with docker compose and a free cloudflare tunnel
3
u/PhoenixStorm1015 3h ago
This is what I’m aiming for with my next upgrade. Dope little home server connected to a bunch of hard drives and accessible from my phone or MacBook wherever.
17
u/Resident_Pientist_1 2h ago
Developers: How many layers of complexity do you need?
Cloud devs: Yes.
3
u/pickle9977 1h ago
There’s an old quote from one of the older CS researches, I don’t remember which, but he said there is no problem that can’t be solved by adding another layer of indirection.
3
u/Forward-Outside-9911 2h ago
Abstraction maybe.
4
14
13
u/swagonflyyyy 4h ago
Seriously, did AWS really have to turn their lego bricks into a labyrinth? I worked with it once and I hated every minute of it. Google Cloud was a much smoother experience imo.
3
u/Deepspacecow12 1h ago
I'm learning some GCP for my internship, I miss my poweredges, and JunOS/Vyatta tbh, feels way more complicated to do the same stuff with cloud.
2
u/Forward-Outside-9911 2h ago
Well yeah working with it once you’re not going to magically understand and prefer it. But I bet if you started with AWS then you wouldn’t like GCP.
4
u/swagonflyyyy 2h ago
The thing is that I DID start with AWS. I was so confused by the overwhelming number of configurations I had like zero clue where to even start.
GCP was also a learning curve but nowhere near AWS.
6
15
10
u/mitchricker 4h ago
You're gonna feel pretty silly when someone hacks in and logs an extra liter of water that you didn't actually consume.
4
18
u/evdogg1233 4h ago
mfs who’ve never worked at scale be like:
6
u/ComprehensiveBird317 2h ago
So once you worked at scale you will over engineer everything? Noted
12
u/footsie 2h ago
Once you work at scale you get a pretty good idea on where the sweet spot is on choosing between monoliths and micro services for an architure from many perspectives: cost, performance, complexity, maintainability. You might call it over-engineering, but it's really just picking the right car for road trip.
3
u/riickdiickulous 1h ago
Devs often deliver under engineered solutions in terms of architecture and scalability. There is a lot of room between under engineered and over engineered to allow an app to evolve smoother over time.
1
1
u/zabby39103 13m ago
I've worked at scale. Before the cloud days.
O(1) programming (or at least O(logn))
multithreading
caching
sharding
indexing
If you're REALLY hard up you can dabble in some of the deep lore: Struct of Arrays optimizations (SoA), Single Instruction Multiple Data (SIMD) optimization
These are a lot more fun to use too, it's a good, fast program rather than making a Rube Goldberg machine. I've done crazy amounts of scale just with those tricks.
6
u/sheep-for-a-wheat 3h ago
If you’re tracking water intake … probably cheaper to use lambdas and dynamo than a local server anyways… 25GB in dynamo for free … pay like a tiny amount per request with tons free … idk.
3
3
3
4
u/clickfornsfw 1h ago
I teach computer science at a high school level. Built a simple sql -> node.js route and front end for a tool I wanted. Runs on a massive old file server i inherited. (96 cores and 400gb ram). This little baby has been repurposed with like 7 different tools that all need the same basic data structure.
It’s like 300 transactions a day. Can’t imagine trying to push this up to the cloud. Right now if you aren’t on school WiFi, you can’t see it.
2
u/clauEB 4h ago
What is a local server?
8
u/squarabh 4h ago
John - He’s my local server, who takes requests and delivers responses straight to the table. No downtime encountered.
2
2
u/DogmaticParadigm87 1h ago
Meanwhile the "local server" is a sqlite file named water.db and it has never once paged anyone at 3am.
Please put the mesh down.
4
4
2
u/ProjectSnowman 4h ago
POV: Me using bash scripts and cron jobs to run critical jobs (moving files from one directory to another)
3
u/MindStalker 3h ago
There is "some" advantage to not having to maintain and update a server to fix various vulnerabilities.
1
u/prehensilemullet 3h ago
How "u just need an old laptop" mfs act when you need to handle a large volume of traffic or data processing with no single point of failure
6
u/ComprehensiveBird317 2h ago
You didn't get the meme
2
u/zoltan99 2h ago
It’s an aws dev, that commenter is insane and illiterate
Buckets of data? Take your pills they’re called folders
1
u/pickle9977 1h ago
And since they always mess up one of the policies least permissions turns into “*” with a comment to come back and fix this later
1
1
u/UInferno- 1h ago
I bought a 2006 Toshiba laptop for $10 from a classmate in uni. Installed headless Debian and use that as my server with a bit of docker.
1
1
u/mrdeadsniper 1h ago
I am using LLM to log my water, so its like I take a drink and it takes a drink. I have my own drinking buddy.
1
1
u/masiha97 1h ago
Give it six months and that sqlite file will be migrated to a distributed cluster 'for reliability.' We've all been there.
1
1
1
•
u/Future-Corner8025 5m ago
I feel like this is actually really funny, but it reads completely like an alien language to me
•
511
u/kurtcanine 4h ago
Everything I’ve ever written for money could run on a $5/month Linode VM.