After having pursued the WASI standard of WebAssembly for some time, I’m looking at ways to develop software that need a novel refresh. In the past I’ve seen how older programming languages shove too much load onto the developer to simply not create bugs.
What’s Been Done up to Now
Newer languages like Rust and some of its spin-offs help this by improving the strictness of the parser to disallow the most vile offenders as far as data races and other nasty bugs from even compiling in the first place. It’s even progressing in ways that machines can automate some of their own development. Intellisense helped the development community by auto-generating common names to stop typographical errors.
C++ has been added onto so much in the past 20 years that it’s almost a legacy code in its own right but there are other languages being written that use C++20 or newer as a backend language to avoid all the old things that are deprecated such as CppFront, a 2.0 version of C++ syntax. Carbon is a C++ replacement that uses much of the same infrastructure as Clang.
Are there other novel things that can be done?
Haiku’s Place in the Industry
Stack and Tile are useful ways to avoid having to reinvent common tabbed-editor and IDE styles for dealing with user-interface issues. This is a good start. Many complex things can be reduced to simple things with this type of novelty.
Metadata in the filesystem with database queries are also a good novelty. My first Mac Mini ran MacOS alright but the search indexing auto-generated by its filesystem caused my boot drive to be a tight squeeze on an 80 GB hard drive at the time (over a decade ago now) but I seldom needed to use spotlight to find things on that drive! My external hard drive with all of my documents on it was NTFS formatted and never did fill up. It wasn’t indexed for searching but I found my stuff fine as it was. When I got sick of software not working on Snow Leopard any more I installed Linux rather than Lion (the highest support level for my hardware) and found my 80 GB hard drive worked just fine without the indexed filesystem and was less than half-full after a complete Linux install. MacOS didn’t have the same type of novelty that I was looking for.
Both of these two features are novel but not insurmountably so. This ultimately leads me to my title question: Are there any wheels that need to be redesigned differently to be more useful?