All the noise I see is from people insisting that Rust developers are noisy, and their favorite language is much better types-don’t-solve-bugs-undefined-behavior-is-fine-and-memory-errors-are-not-a-problem.
Actual Rust developers have been silent for years.
I once shared that I had a bad first experience with Rust and no less than four Rust developers arrived to inform me that I was either hallucinating, or bad at programming, or both.
I haven’t had this much fun winding up a sensitive community since I shared how I really felt about Java Spring, in it’s heyday.
I suspect there are a lot of “Rust devs” that are little more than kool-aid drinkers. Common refrains are that Rust is the fastest language, most type-safe language, and most powerful language. Rust certainly seems to move the state of the art forward in some ways, but you can still write garbage code in it.
I’ve worked with lots of different people in lots of different languages, and I think I’d rather good people in a bad language than the other way around by a mile.
I tend to stick to interpreted languages so I can’t weigh in on the Rust vs. C++ debate, but I know that if you’re trying to make headway against a language as entrenched as C++ is you’ve got to get loud.
Geez… Project managers are forbidden from making work estimates- they only get to collect them.
They don’t get to argue estimates either. They can ask questions to gain understanding but the estimates are the estimates.
Wearing an architect or chief engineer hat is sometimes more fun because you get to call bullshit on dumb estimates like “4 to 5 weeks to model a table with 7 fields, with 2 of them being PK, FK” like GTFO we can model it in the next 5 minutes if I talk slowly.
Based on this interaction alone and his dad deciding the price for him, I’m going to make the wildly assumptious assumption this is a 20s/30s(/40s?) unemploymed guy living at his dad’s house rent free.
If my assumptions are incorrect, sorry mate, you did not win the dad lottery.
I’m still not sure exactly what Project Managers do. I’ve seen countless job postings and even stories from people claiming to have been one. Yet, more often than not they get shit on, and memes often have a kernel of truth. #ConfusedHumanPerson
Many roles main responsibility is to report upwards what happens in"the basement". Which includes translating what one person says into that the other can understand. Then there’s roles that do it both ways.
If there’s time to spare, a good project manager can also bring health and common sense to the team they’re part of. That takes pointing out non sense both inside and outside the team, and the hardest part - being constructive about it.
So essentially taking complex ideas or situations and breaking them down a’la eli5 style to the suits and other personnel that may not otherwise understand. At the same time in other situations or roles, taking expectations and directives from higher up and breaking them down so they’re digestible and workable.
Man, these job descriptions really makes it sound like you’re going to be doing incredibly complicated and potentially invasive team-to-team tasks. When in reality you’re trying to get a bunch of cats to work together without slapping one another.
They are supposed to be the glue that binds the internal team together as well as bonding to external groups.
The project manager organises external requirements and steers the project in the direction needed for the business. That direction might change depending on the status of other projects, it’s their job to be on top of that.
They also report progress and roadblocks upstream so that those who manage groups of related projects can work on keeping everything running.
Whether they’re actually competent, well that’s something else entirely.
Exactly this. You don’t realize how useful they are until you’ve had a good one. The amount of BS from other teams they can shield you from can make focusing on your own job so much easier.
Unfortunately the ratio of good to bad PMs leaves a lot to be desired.
Oooh. Okay yeah, that explains it. Communication is the number one thing that most people struggle with. I’m constantly pestering my bosses about communicating even slightly important information that could affect me a rung down. Then even when it is reported it isn’t effective or concise, or if it is concise it’s unclear.
Gosh the QA column is depressingly accurate for shitty game companies.
The best thing to take away from this meme isn’t “lol QA dumb” or “lol Designers eat paint” it’s “fuck, what kind of toxic asshole legitimately feels this way about their coworkers” and yea, they exist - I’ve met them. Don’t be one of those assholes.
But until a government steps in there’s potential civil liability for violating the terms. And even winning a lawsuit against Nvidia could be very expensive and take years. And even if they lost it would be worth it to Nvidia to go through the long, expensive process because they’d making sales that entire time.
You probably don’t but it depends where you are. Reverse engineering software without permission isn’t illegal in most places but in the US I’m pretty sure it is.
No idea, I’m not from the US and don’t know the laws beyond what I have previously looked up. Here in Estonia you can make the translation layer without accepting any EULA and even if you did it wouldn’t be legally binding. You can alse reverse engineer anything you want.
Meanwhile Rust: you might get an error at line 45 word 3 because it assumes variable foo is an int32 but it could be (whatever else idk), let’s not compile this before you correct this by changing line 43 in this specific way. Here’s the before and after code snippets so you can just copy-paste the fix.
In my IDE there us even a button for accepting the compilers recommend fix. This is only possible because the error messages and recommendations are that good.
The US add engineer to everything to sound most prestigious than they are. If you sell your service as a AI prompt writer, you get paid peanuts. If you sell the same service as AI prompt engineer, the C-Suites cream their pants.
I’ve found it helpful in learning things about languages I’m unfamiliar with, but it seems like saying “I’m an AI programmer” means “I don’t really know what I’m doing in this language, I’m still learning.” Which I suppose shows a willingness to learn, but that’s about it.
Every time I commit I have to look through git diff, figure out what the hell I actually did, come up with something intelligent to say about jt, possibly split the commit into multiple commits if I changed multiple things, do some shuffling with git reset and git add…
For some reason all my personal projects are all like 4K SLoC with 50 total commits, all of which include apologies for not doing more smaller commits
You see, sometimes I code something, go to bed before finishing it, come back, decide not to commit because then I’d have to think of a commit message and I just want to code, start working on an unrelated feature, do that for a couple days, get distracted by life stuff and put the project down for a few weeks/months, rinse and repeat, and then I finally get around to writing a commit message because I’m about to start a huge change and I want a restore point and I’m like. Okay, it’s been like 3 months since my last commit, I’m pretty sure my code can now do something it couldn’t 3 months ago but come on, I can’t even remember what I had for lunch last Thursday
I’m well aware this is terrible practice but I don’t know how to stop doing it
Commit more often. Maybe work in a different feature branch, and don’t be afraid to commit your half-working crappy code. If it’s a personal project/fork, it’s totally acceptable to commit often with bad commit names and small unfinished changes: you can always amend/squash the commits later. That’s how I tend to work: create a new branch, work on the feature, rebase and merge (fast forward, no merge commit). Also, maybe don’t jump around working on random features :P
You can help yourself a lot here by making commits every time you make a meaningful change. A feature doesn’t need to be complete to commit major checkpoints along the path to completion. That’s what feature branches are for. Commit often. It’ll help you think of messages, and it’ll help you recover in the case of catastrophe.
I just get too excited about actually implementing/fixing something (random things that I see along the way) more than commit ceremony (nobody will care about it in my project anyway other than one random guy who gave the repo a star)
I spend much time splitting them up inside visual studio by file and individual lines changed to try and separate my many simultaneous changes into several somewhat usable commits. If I was stupid enough to make some big refactor at the same time I might just have to throw in the towel… It’s really painful after a few weeks to try and pick up the pieces of what I was doing but never commited too lol.
Patch add - it shows you particular changes you made, and you choose whether or not to include them in the commit. (You can then use git stash -k to stash only the changes you did not add, so you can test before you commit.)
Also Go: exceptions aren’t real, you declare and handle every error at every level or declare that you might return that error because go fuck yourself.
It is better than in most languages with exceptions, except from languages like Java, that require you to declare that certain method throws certain error.
It’s more tedious in Go, but at the end of the day it’s the same thing.
When I use someone else’s code I want to be sure if that thing can throw an error so I can decide what to do with it.
Java doesn’t have to declare every error at every level… Go is significantly more tedious and verbose than any other common language (for errors). I found it leads to less specific errors and errors handled at weird levels in the stack.
It’s better than “invisible” exceptions, but it’s still the worst “better” version. The best solution is some version of the good old Result monad. Rust has the BEST error handling (at least in the languages i know). You must handle Errors, BUT they are just values, AND there’s a easy, non-verbose way of passing on the error (the ? operator).
Aside from the technology stack being the embodiment of vendor lock-in and misery, the scamming is really what makes me not want to work on Generative AI tasks, or whatever the next hype thing is going to be.
The worst part is that many people want to be scammed. We have customers come to us, asking for a solution to a problem they’ve had for long time, and asking it to be solved with GenAI.
Then we tell them that there’s really no use-case for GenAI there, that it could be better solved for half the money using traditional methods.
At which point, they ask us to integrate GenAI in some place anyways, because otherwise their boss will not give them the money. And of course, that boss also has a boss who also only frees up budget for GenAI.
And that just repeats upwards, until you have shareholders at the top, who eat up the hype, because other shareholders eat up the hype.
And if you tell them “no” too often they’ll choose your scummy competitor who’ll just tell them “yeah we put all the AI in it, whatever” over you who want to actually help them.
And it took a lot of hard work by a lot of people to adopt new date standards to avoid that problem. Now it’s time to adopt new IP standards, and it’s going to take a lot of hard work by a lot of people.
programmer_humor
Top
This magazine is from a federated server and may be incomplete. Browse more on the original instance.