Marking this as “off topic” though it may be somewhat relevant.
I’ve been programming for over 40 years and using Xojo (REALbasic) for over 22.
Software development has changed a lot during this time, and the pace of change shows no signs of slowing down, in my opinion.
Some of the notable trends:
- open source
- virtual machines, virtual OS’s and containerization
- the rise of the web: HTML/JavaScript everywhere (e.g. the Electron phenomenon)
- SAAS (software as a service)
Simple question with two parts:
- where do you want software development to be in 10 years?
- where do you actually think it will be?
My ideas:
-
I really hope that we eventually get to a unitary machine, OS, and programming language. As I get older, I find dealing with all these layers in the software “stack” to be such a pain - similar (but different) syntaxes, capabilities, etc. I’m sure many of the Xojo using crowd are here because Xojo makes a valiant effort at smoothing over these OS differences. I would love for there to be a single CPU, with a single OS, and if not a single language and library, at least a clearly dominant one that would always work.
-
I’m not hopeful we’ll end up there though - the trend I’m seeing is ever increasing complexity in an attempt to reduce complexity. I’m not sure that’s feasible. As an example, the other day I tried to install a self-hosted version of https://www.discourse.org (the forum software we are reading now). On the positive side, the online instrucdtions were great, and it actually worked. On the negative side, this involved (A) buying a virtual server, (B) installing a Linux variant on it, and (C) using the discourse installer, which I believe installs a (D) docker container and (E) runs Discourse which itself uses (F) Ruby on (G) Rails.
Whew!
All I know is that felt like there were about 600 layers of emulation or abstraction going on, and a million lines of fast-scrolling status messages during the installation. If it breaks, I know I’m screwed and would likely be unable to fix it.
This is probably a good reason many are moving towards SAAS.
This gives me serious consideration to staying with my existing forum software (Vanilla.org) which for all its problems, at least is a set of PHP files running under Apache, which is only 2 layers (give or take) and I might have a chance of understanding it.