It’s not THAT complicated but I wouldn’t call it dead simple. When you understand how git works internally yeah it’s pretty simple but people usually start with the idea that it’s a tool to put your code on a server to synchronize with other people and only later learn that you have both a local and a remote (or multiple remote) tree and how the tree really works.
I think the problem is most git 101 tutorials teach it wrong, IMO the best git tutorial is this: https://wildlyinaccurate.com/a-hackers-guide-to-git/
Unfortunately it’s pretty dense so it’s gonna scare off a lot of newbies.
Eh, that’s unfortunate. Yeah the whole ecosystem is still a bit wonky, probably more wonky than most popular languages but tbh I rarely used a stack that just worked out of the box, it almost always took some dicking around, I’d rather do the dicking around with a language that doesn’t always seem to work against me.
because no compiler can check to see if you thought of everything.
We can try to get closer to that with better language design. You’ll never get there but I think there are obvious benefits as to why you’d want to do that.
I write way less bugs in Rust than I have in Java or C++, and that’s mostly thanks to the language design.
I’m just tired of people entirely dismissing languages like C because they don’t have these features. Especially when the operating systems their code runs on and their languages may even be implemented in C!
Because that code has been review and re-reviewed and patched by experts in the field for years. You’re not gonna write a backend for an app with short deadlines in C because that would be absolutely fucking insane.
Death to the concept of intellectual property and all but I’ve never actually felt Denuvo making problems for me when I played a game using it, you’re right it seems to be working as advertised.
I’m still hoping someone to crack it in a more reliable and fast manner, fuck large gamedev companies and their profit margins.
Most types force premature design/optimization.
I disagree. What you’re saying is true for Java-like OOP languages because OOP is actually complete garbage if you want to design good, easy to understand abstractions. Types are way more elegant in functional or functional-inspired languages.
Most unit tests lock up some specific implementation (increasing cost of inevitable refactors) rather than prevent actual bugs.
Agreed, unit tests are useless in most cases, they mostly test the bullshit abstractions you built for the unit tests themselves.
Go sacrifices too much for superficial simplicity; but I would like to see a language that’s nearly as easy to learn, but has a better type system and fewer footguns.
“Easy to learn” and “good type system” will by necessity be opposing forces IMO. If you want to work with a good type system you’re gonna have to put in the effort to learn it, I’m not sure there’s this magical formulation of a good type system that’s also intuitive for most new developers. Hope to be proven wrong one day tho but so far no dice.
I worked in a large company where they used scrum and I just don’t see where it ever helped me. Sure I guess forcing you to write down in Jira or whatever all the features/bugs you worked and will work on is good practice but I can do that without scrum too.
Daily standups were annoying and rarely ever helped people resolve issues that wouldn’t have been resolved by just talking to some people directly, which you would have done anyway regardless of the standup meeting.
Sprint plannings were useless and amounted to either taking 3-4 things off the top of the backlog or the manager forcing their priority feature in the sprint.
Story point estimation was awful, everybody pretends the points aren’t just measures of time but rather this complex abstract of multiple factors and whatnot but everybody still just converts them to time in their head anyway because of fucking course they do because the time estimate is the most important thing to know and the only truly objective measure of task difficulty.
In the end management gets what it wanted when it wanted no matter our complaints because that’s how things work in privately owned companies. Scrum for the manager at worst just becomes another bureaucratic hoop they need to jump through to get what they want.
This is also the experience of my colleagues from other companies, and also I read a lot of similar anecdotes online. I have literally never heard anybody seriously claim scrum works great in their company that also wasn’t personally invested in the ideology like a “professional” scrum master or consultant or whatever.
I don’t read such books because they’re almost always written by “consultant” grifters trying to make money off of proselytizing the latest bullshit corporate fad. And it’s almost never based on actual data or a coherent theory, just gut feelings and a few anecdotes. My own felt experience and that of my colleagues is enough to confirm that it’s all just corporate ideology bullshit.
I don’t think you can truly change anything with these methodologies. At the end of the day most companies are still privately owned companies, and you as a developer will do what the owners and/or the managers tell you to do. The owners aren’t going to delegate important decisions to developers unless it’s a really technical thing. The part where “developers take control” in scrum is bullshit and always will be by necessity of how our economic system works.
I feel like Scrum and similar stuff just serves to obfuscate real material relations in the company that aren’t going to change no matter how many story points you assign to this or that or how many scrum masters you have. Also it makes micromanagement easier I guess.
It’s just difficult to start using it when the corporate culture isn’t able to adapt and change it’s structures, that’s the hard part.
Yeah but that’s almost every company ever. At what point do you blame the methodology then if it doesn’t work properly almost anywhere?
I feel like scrum and agile in general are almost religions at this point, just blind belief in a system you haven’t really seen work properly ever but you still believe in it.
Also no higher-order functions like map, filter, reduce etc.
Really weird design decision for a brand new language.
Comptime is pretty dope tho, I wish Rust had that instead of relying on macros so much.