

Nothing quite like crash landing a squad into the jungle under fire from Vietcong. Or the reverse, swooping in to grab the last three guys still alive surrounded and under heavy mortar fire
Nothing quite like crash landing a squad into the jungle under fire from Vietcong. Or the reverse, swooping in to grab the last three guys still alive surrounded and under heavy mortar fire
OpenAI hasn’t even replaced their own developers, and they push out the biggest LLM turd around.
My #1 pet peeve is when someone comes to me with a problem, and the solution is in the fucking console output or error message.
On a bad day, if I had unilateral power, I would fire those people on the spot.
Don’t they use super statically verifiable code for these kinds of applications? Like, Ada?
Cheaper & faster development by leveraging large libraries/frameworks, but inability to automatically drop most unused parts of those libraries/frameworks. You could in theory shrink Electron way down by yoinking out tons of browser features you’re not using, but there’s not much incentive to do it and it’d potentially require a lot of engineering work.
Try porting a very small bit of behavior into a new tiny library or module that is Typescript based and independently published. Enable the strictness checks in tsconfig - really, really resist the urge to use any, and enforce that any is disallowed in tsconfig. Familiarize yourself with its utility types that really trip new authors up. “Record” comes to mind here, and others that involve generics if you haven’t before worked with generics. Some of the type error messaging can be pretty obtuse - don’t be afraid to paste them into an LLM (or use Copilot enhanced Intellisense) to explain what it actually means. IMO the type violation messaging is a weak dev experience point for new authors, so don’t sweat it if you occasionally “struggle to make the squiggles go away”.
This is why I will never touch Javascript again. Long ago when I worked on web stuff, half my workflow was spent in the debugger tracing garbage to find where a typo was. The industry moved to Typescript, and now assuming the strictness checks are enabled, if some Typescript transpiles successfully, I can be 95% sure whatever fuckup I observe at runtime is a logic problem.
Weakly typed languages were an awful idea. But in general, if the compiler isn’t able to detect most runtime issues (like with C++ here), it’s not going to be the most productive language to use for building solutions compared to smarter alternatives.
It doesn’t pass judgment. It just knows what “looks” correct. You need a trained person to discern that. It’s like describing symptoms to WebMD. If you had a junior doctor using WebMD, how comfortable would you be with their assessment?
I buy a short $5 indie game. I give it away afterwards digitally to a friend. The next guy does the same thing. And the next guy.
Now the developer has to primarily make money by selling merch or ingame ads. No thanks. If the game is good, people will buy it.
You could argue people did this with physical media. But it was not nearly as impactful; I couldn’t click a few buttons in seconds and hand the game away.
It’s one of many things they could do just like how security is a layers thing.
They could inject random zero width non joiners to help detection too. Easy to defeat, but something a layperson would have to go through extra effort to filter out. Kinda like how some plagiarism cases have been won by pointing out identical misspelled words.
He’s just refactoring it
Hated this in one past job. It gave me great joy to quit and work somewhere that wasn’t bean counting. But I can say that RescueTime with Toggl was pretty handy to track stuff. RescueTime would autotrack the time spent in different apps and tabs. Toggl allowed me to do a simple start/stop with a label for more focused work.
Sometimes I am happy about the increase in AI assisted coding specifically so junior devs won’t get as stuck without outside help. Very frustrating when they don’t reach out when they struggle, but at least they can privately copypaste into ChatGPT and get ideas. But, still requires a fine toothed comb when you’re doing the review to know if any toilet tier material sprayed out.
I don’t know if that headcount I listed includes contract employees. They typically get compensated far less, and anecdotally I’ve been told by a former Meta friend that there are more contracted developers than salaried there. And what’s the ratio of software developers compared to other personnel? HR, QA, marketing, sales, etc? Employees in other countries? I figured a more conservative estimate was reasonable for cost overall.
Well, about half of that is probably salary. There are apparently 17,000 Reality Labs employees. If you assume the average salary is 100K or more, which is reasonable for tech jobs in high COL areas, you’re already looking at a couple billion after benefits that the company has to spend on headcount. The other spend is probably third-party contracts, hardware, etc.
How many open source projects have 50 million lines of code like Windows, or legal agreements related to backwards compatibility and version support guarantees?
A for-profit company is going to focus on whatever generates revenue, sure. But crappy software will lose customers in a non-monopoly scenario. They’re not exactly incentivized to make broken things nobody wants.
I’ve gone through Visual Studio, JetBrains IDEs, Vim, Atom, Sublime, VSCode, probably others too, but frankly VSCode’s simplicity out of the box coupled with great plugin support is hard to beat. Folks who complain about VSCode not having some feature like to ignore that being relatively simple by default is a good thing. You can always add or enable what extensions you need to tailor it to your language and workflow of choice. Even if you’re used to Vim keyboard centric editing…guess what? There’s a well supported OSS extension to give you that functionality.
The power of being able to use one IDE on a diverse team across various languages is huge. You can even commit extension and settings defaults to a repo to immediately get new cloners up to speed with whatever workflow and tooling defaults are good starting points on a per project basis, but still leaving them the option to ignore/override as needed without dictating a team-wide workflow change.