• 0 Posts
  • 309 Comments
Joined 2 years ago
cake
Cake day: June 16th, 2023

help-circle


  • Most of my career was spent working for small shops that provided custom software for small-ish clients. The absolute number one skillset required was the ability to talk to clients, understand their business and figure out what they needed the software to actually do. Not only are these skills not taught in Computer Science programs, it’s never even suggested that you might possibly need them at some point in your career. In my opinion, this is why CS types cling so tenaciously to a rigid division of labor in software development: they want somebody else to do this and then hand them a well-written requirements document.


  • I spent a big chunk of my career going through mountains of incomprehensible human-generated code. I eventually learned that it was generally easier to just start over from scratch. At the same time I learned that nothing makes corporate bosses’ heads explode faster than telling them that their codebase sucks and needs to be rewritten from scratch. My solution to this fundamental dilemma was to become a school bus driver.








  • Fun facts: “killer bees” are also known as “africanized bees”. In the 1970s there was great alarm in the US about the spread of africanized bee strains because they’re so much more aggressive than European bees. There was even a terrible horror movie about it, but this particular catastrophe never materialized. I had a friend in graduate school in the '90s who was part of a team of scientists investigating the problem. It turns out that if you raise an africanized queen in a temperate climate, the bees she produces are no more aggressive than European bees; likewise, a European queen raised in a hot, tropical climate produces bees just as hyper-aggressive as typical africanized bees. So the entire thing was just bee racism all along. Bracism?

    Of course global heating is going to make this a bigger problem everywhere, but fortunately we’ll be fucked a lot worse by all the other problems this is going to produce.









  • I ran into a similar situation many years ago, when I was trying to write a software synthesizer using Visual Basic (version 4 at the time). The big problem is that if you’re doing sample-by-sample processing of audio data in a loop (like doing pixel-by-pixel processing of images) and your chosen language’s compiler can’t compile to a native EXE or inline calls, then you end up suffering the performance hit of function calls that have to be made for each sample (or pixel). In many applications you’re not making a lot of function calls and the overall performance hit is negligible, but when you’re doing something where you’re making hundreds of thousands or even millions of calls per second, you’re screwed by the overhead of the function calls themselves - without there being any other sort of inefficiency going on.

    In my case, I eventually offloaded the heavy sample processing to a compiled DLL I wrote in C, and I was able to keep using Visual Basic for what it did really well, which was quickly building a reliable Windows GUI.