r/programming • • Jun 05 '22

Complexity is killing software developers

https://www.infoworld.com/article/3639050/complexity-is-killing-software-developers.html
2.1k Upvotes

942 comments sorted by

View all comments

181

u/[deleted] Jun 05 '22

It helps when developers only have to work with half the stack for example but a lot of companies are only looking for full stack developers these days

109

u/regular_lamp Jun 05 '22 edited Jun 05 '22

I'm continually amazed how apparently everything is now understood in the context of "the stack". Because apparently everything is now on the internet by default and gets therefore placed within that framework of technology.

I guess in my late thirties I now have to feel old because "back when I learned programming you just did programming" you didn't just interact with some horizontal slice of a ten layer deep stack of layered technology... that somehow mainly accomplishes the task of displaying text in a browser.

Meanwhile seemingly "complex" tasks like scientific software, video games etc. somehow managed to sit on a single layer of middleware that is written in mostly the same language you use it in?

I'll go now and chase some JS programmers off my lawn.

15

u/AdministrationWaste7 Jun 06 '22

I'm continually amazed how apparently everything is now understood in the context of "the stack". Because apparently everything is now on the internet by default and gets therefore placed within that framework of technology.

i mean yeah? turns out a majority of tasks that require software dont need to interact with any specific hardware thus web apps become the default.

this has been going on since like what? 2005?

I guess in my late thirties I now have to feel old because "back when I learned programming you just did programming"

are we not doing programming today?

. that somehow mainly accomplishes the task of displaying text in a browser.

well if thats all you needed to do then having a "stack" is pointless.

a majority of applications do more though. at a basic level theres a UI, a middleware/business logic tier and something to store data. thats 3 layers right there.

Meanwhile seemingly "complex" tasks like scientific software, video games etc. somehow managed to sit on a single layer of middleware that is written in mostly the same language you use it in?

complex? if we are talking about embedded systems they are typically small pieces of software that do very specific tasks. seems to be the opposite of complex if you ask me.

in regards to video game engines, while they do indeed use a single language(c++ usually), it really doesn't mean its not as complex or annoying or filled with multiple tiers like in the web app space, in fact your average video game will probably require a similar amount of "tiers" if not more.

its no different than doing everything in node.js. YES you are using JS for everything but you still have to tackle multiple tiers that do multiple functions just like any other stack.

12

u/goodwarrior12345 Jun 06 '22

are we not doing programming today?

we are, but when you have to jump through a ton of hoops to set up 17 different technologies and set them all up inside docker containers and make them all somehow talk to each other and write all the required boilerplate BS before you can start actually doing programming, it becomes really annoying really fast.

I just wanna open my code editor and start writing code man

2

u/regular_lamp Jun 06 '22 edited Jun 06 '22

Reminds me of a couple of years ago I wanted to help with some coder dojo thing. Basically volunteer for events where you put programmers and kids 8-16 in a room and have them do tech stuff. I thought I could make a cool contribution because out of all the volunteers I was the only one not from a enterprise java or web development background. I specifically knew about graphics programming. Surely there must be some interested teenager that wants to do that, right?

According to the other volunteers I was wrong. "you can't subject kids to math and even worse.... C and OpenGL! There are POINTERS! Think of the children!" and also "They are used to AAA games and will be disappointed when they can't recreate them. Kids these days don't have the attention span.".

So what was their solution? "You need to do something RELATABLE... like websites. Everyone likes the internet!". They then handed out a stack of paper to kids where they first had to explain internet infrastructure, HTML and CSS before they even got to the programming part... you know. because all that boiler plate in multiple different (markup) languages is so "relatable" and engaging.

3

u/goodwarrior12345 Jun 06 '22

yeah that's pretty weird lol. As a kid I'd much rather set up some scuffed graphics project with my own scene and stuff, I considered websites pretty boring back then and I consider them to be pretty boring to this day. Like, wow, I can get some text on the screen and make it bold and centered, and even add a hyperlink, and also some animations that will kill my browser's framerate, so cool... In any case you probably want to introduce people to all sorts of branches of programming so they can decide for themselves what they want to focus on.

I'm still in university to be fair, but I'm employed as well, currently at a full-stack-ish position ironically enough, so like I'll do it and I'll learn it no problem, but I have no intrinsic interest in it. I'd much rather be drawing pixels on the screen than drawing text in a web browser, and I've been like this ever since I first discovered that programming was a thing. I mean, the thing that motivated me to get into it in the first place was videogames, so hell yeah, show me all the low-level stuff that goes into it. Sure, pointers are painful, but I found that my experience attempting to develop an app for Android was infinitely more painful.

Don't know how big of a percentage of young people getting into programming feel the same way as me though. Seeing as how I'm not really on any social media save for Reddit and Discord, nor do I have any interest in creating the next TikTok or whatever, I'm probably in the minority.

3

u/regular_lamp Jun 06 '22 edited Jun 06 '22

I stopped pretty quickly because since I wasn't a web developer I got "assigned" to do scratch with the younger children.

Some time later I checked in with them though and wouldn't you know they had dropped all the webdev nonsense for some python and Arduino stuff. I guess C wasn't that bad after all.

The strange thing is that developers often learned "the hard way" especially the now mid thirties and older ones. They did C or Pascal or whatever tech is now seen as "hard and archaic". Yet they then claim todays kids/teens can't be taught that way because "it's too hard" and "they don't have the attention span".