This is going to be unpopular on HN but lots of software jobs are also pointless. So much effort gets put into automating things like finance or improving advertising. These things don't really add a lot of value to society but instead extract value from it. I know I'm hypocritical because I myself work in one of these areas but lately the lack of purpose has been hitting me hard.
Absolutely, while I'm sure there are people who find joy in solving hard problems related to fields like ad-tech, it's not a particularly useful job. Finance as well, there are tons of jobs that involve creating these huge convoluted systems which only exist because rules and regulation are pretty much incomprehensible.
For my self, working on stuff like e-commerce sites or deployment automation can be a bit pointless. Many of those jobs only existed because a particular client felt special and wanted something that was a better "fit" for their particular situation... Most of it is non-sense. Fortunately I've also be lucky enough to work on products that truly makes society better, strangely enough those jobs pay way less.
Well its hard to see the point of building a knowledge base that's entirely at the whims of a company and needs me to be online. I prefer to use something like Obsidian that I can control synching behavior.
I'd like to see the smug suckless crowd write anything resembling a modern 3D multiplayer video game today, from scratch, using OpenGL (oh, because Vulkan is 'bloat'—extremely ironic take, given Vulkan is closer to the metal than OGL), C, and their various collections of UNIXisms.
I'll bet they'll just dismiss video games as 'bloat' and mindless time-wasters, and 'you shouldn't play video games, just write code.'
I dislike this sort of dogmatic thinking. Use what works, use what is practical, use what is easy, use what is reasonably efficient and fast without being extremely complex. For me, oddly enough, this sits squarely in the 'sucks a lot' group of things.
I write my code in VS Code and Visual Studio on Windows, using CMake. I use C++ if I need native performance; otherwise, I use C#. I use LaTeX only if I am writing a complex paper or report which needs detailed typesetting, nice graphics, long bibliographies. Otherwise, I reach for Word.
I think XML is a great markup and serialisation tool, especially if one has a fully-conforming schema and code generator. JSON, YAML, TOML, etc. are all generally inferior to XML, by virtue of missing features that XML has. Proof by example: large, complex APIs (OpenGL, Vulkan, WinRT) are usually released in XML, upon which code generators may be built for different languages to generate projections in said languages. If these languages have reflection, one could even write the generators in the languages themselves.
I don't know why you think we would take OpenGL over Vulkan, the former is orders of magnitude worse than the latter in every respect except for hardware compatibility. I work in games, specifically doing engine development. For some metrics, our last game has sold ~400k copies on Steam + GOG over its 7 year lifetime. I am the only programmer currently in a codebase that has some hundreds of thousands of lines of highly idiosyncratic C++ code that uses OpenGL. I also am our only form of tech support with any ability to actually fix technical issues. "without being extremely complex" what an absurd statement.
I use the technology stack I do as a means to an end, and that end is not because I couldn't make a computer do something without the tower of shit I've got living on my desk. It's because I have to make money to live, and that means selling software to other people, so it should probably run on their computers. Most of the thinking that goes into my job isn't mathematics or theory. It's wrangling the absolute clusterfuck of a technology stack that consumers buy up by the millions and trying to hammer some kind of reason into it, ensuring that all the hundreds of moving parts of this massively complicated product run well on not just the computers of spoiled first worlders who think a 2060 is "low end", but on the tens of thousands of computers that run our games which are around 10 years old.
I would much rather live in an ivory tower and do everything from scratch and not have to think about making sure Ivan from Vladivostok isn't going to be shitting up the Steam forum because MSVC decided /O2 means "please reinterpret this code to run 10x slower than it did in your last minor version senpai" or the dozens of esoteric GPU issues I've had to solve over the years. Please. I would much rather be hand-rolling 3D rotation matrices than this shit.
> I'd like to see the smug suckless crowd write anything resembling a modern 3D multiplayer video game today
And they wouldn't. That's the point. I don't think it's a matter of "just don't play games" either. Games don't have to look like <insert pretty "modern" game here> in order to be fun. Look at Battlebit for a recent example of this. It's not a minimalist game, but it surely ain't maximalist.
> Use what works, use what is practical, use what is easy, use what is reasonably efficient and fast without being extremely complex.
All of these are either subjective or based on personal needs. I agree, you should use what works for you. As should the people who like minimalist software.
UNIX was cool for a while, being stuck in the past, trying to pretend modern computing is all about reviving the experience of using UNIX V6, alongside twm, not so much.
The game development example is quite good one, as to this day, most people on those communities don't really grasp the demoscene and game development culture.
I used Siemens NX daily and Mathematica at home. While such programs are certainly “bloated” they work well and provide an incredible amount of value. The communities around musl/suckless/cat-v have absolutely no answer to how they could possibly replicate such programs in their paradigm.
I kinda regret getting an m1 macbook pro last year. This seems like a much better machine for my purposes. :( Hoping framework will contusion updating this line by the time I need another laptop.
ArchiveBox can extract text from HTML (and possibly PDFs too). I think it can be configured to extract subtitles from YouTube videos as well. So it can do full text searches. Basically you could have your own, offline & curated search-engine.
You could run a full text search or search against an auto-generated summary. Or if you want to be fancy, use semantic search like in Retrieval Augmented Generation.