15

Despite common sense, I think technology is not making our lives easier. It's just build chaos on top of chaos.

Take server-side programming for instance.

First you have to find someone to host your thing, or a PaaS provider. Then you have to figure out how much RAM and storage you need, which OS you're going to use. And then there's Docker (which will run on top of a VM on AWS or GCP anyway, making even less sense). And then there's the server technology: nginx, Apache (and many many more; if, that is, you're using a server at all). And then there are firewalls, proxies, SSL. And then you go back to the start, because you have to check if your hosting provider will support the OS or Docker or your server. (I smell infinite recursion here.)

Each of these moving parts come with their own can of worms in terms of configuration and security. A whole bible to read if you want to have the slightest clue about what you're doing.

And then there's the programming language to use and its accompanying frameworks. Can they replace the server technology? Should you? Will they conflict with each other and open yet another backdoor into your system? Is it supported by your hosting provider? (Did I mention an infinite recursion somewhere?)

And then there's the database. Does it have a port to the language/framework of your choosing? Why does it expose an web interface? Is it supposed to replace your server? And why are its security features optional again? (Just so I have to test both the insecure and the secure environments?)

And you haven't written a single line of code yet, mind you.

Comments
  • 1
    Oh and there's another infinite recursion: how will I know how much RAM I need? I haven't written the bloody app, have I? Let alone profile it!
  • 1
    Complex but interesting. Don't underestimate how long a project will take. Detailed project plan with deliverables, milestones and proper resources helps.

    Polar opposite fun side project may be setting up a Raspberry Pi 3 pocket server running a web site.
  • 0
    One other thing - I find the fragmented mobile native dev environments to be annoying.
  • 0
    Yes! On the client side of things, it's the same!

    You have Chrome (and all its versions), Firefox (and all its versions), Safari, all their mobile counterparts... Then you have native iOS (and its libraries), native Android, Xamarin, phonegap and its descendants, ruby motion...

    People seem to enjoy complicating things, don't they?
Add Comment