Just like you can't imagine a time without the internet, without coffee on every street corner and without this little black box in your pocket connecting you to people, events and things around the world, many new programmers don't know what it was like in the past to write code for a living.
Picture the following, if you can. No copy and pasting code, giant laptops with 2-3 hour battery lives, 56k modems and less coffee than we have today. That about sums up coding in the mid to late 90's and early 2000's. Having gone through that period of time has given me one thing for sure. And that is total gratitude and appreciation for where we are today with technology. Massive online databases with free learning materials, laptops that are weighing in closer to 1lb with 10+ hours of battery, Gigabit speed internet and coffee on every single corner of most streets are not only commonplace, but they are expected.
10 years ago you couldn't even copy and paste code if your job depended on it. For one, if you were in college, it really wasn't allowed. The whole stigma of "cheating" was prevalent and many professors wanted unique code from every single student. There are only so many ways that you can create an object representing a car. Nowadays, Googling and searching for online answers is not only accepted, but it is also a skill and it is even taught to most folks getting into coding. Research is research and I for one research as much as I can on the daily to make my job easier and to produce better quality content.
If you were working professionally back then, and Stack Overflow wasn't around yet, you had a few options in aiding to help you find solutions. Most were not free. That's right. Think of StackOverflow, but if you wanted that sweet answer, you had to dish out cold hard cash. You only got to read the first few sentences for free. And you paid it, because deadlines. I am not against this business model at all. I totally understand that any new invention requires substantial funding up front before the technology is stable enough that it can free. But it was annoying.
The only catch here was that you had to be working on a programming language that had documentation. These days it is a given that each programming language has its own website along with hundreds of pages of documentation. Not the case back then.
My first professional programming language was the X++ language which was solely used when working with Axapta. And if you have no idea what any of those words are, then you are not alone as no one did at the time. Axapta was a foreign ERP system used by a few bold American companies. They were since acquired by Microsoft, which has done a fine job of improving the software and restructuring the framework to run on C#. Back to Axapta.
If you wanted to generate a dropdown menu, you essentially had to guess what you thought that a dropdown menu would be represented as in code and then run it. Once any of an infinite amount of words worked, you quickly wrote it down and passed it to the next programmer in the queue.
Each and every discovery was tear-filled as programmers could finally do their job and move on to the next form. There were also a few online resources available, though written in various languages none of which was English. And Google translate was not a thing just yet back then.
While this may sound painful and tedious (because it was), it is also a reminder of how most things come to life. People go out and explore and take notes for months and years before they are able to correlate patterns and bring back useful knowledge. In the short time that I worked for this company, we managed to build out a full suite of software for marketing and sales teams using this process. It may not be pretty, and it may have induced various health issues due to stress, but we got the job done.
Code editors weren't colorful, intellisense had not been invented yet and web standards were still coming into their own. The internet was a very low resolution cyber-noir world full of pop-up windows and bright colorful flashes of light aiming to get your attention. And behind each one of those pop-up windows, sat a programmer that had to come up with its implementation. It's odd to think about these days, as we navigate through HTTPS networks while looking at the highest resolution images that seem to load instantly, without a pop-up in sight, on our super high resolution displays.
It's not perfect, by any means. We still have many roadblocks to overcome in order to get to a more sustainable and bright future in technology. For one, we must learn how to handle the amount of media content being presented to us on an hourly basis. Posts that take our attention today are no different than pop-up windows of the past. And we still have a very fractured coding eco-system, with hundreds of programming languages and even more frameworks coming out daily also asking for our attention.
If progression is a given (and it is), then we have to assume that our current state of technology is still in its early stages as well. That we have not yet seen the true potential of this control of electrical currents and of lights and photons. People worry about software learning to write other software and pushing its way into the job market. But this assumes that we are stuck in our old ways and will never learn anything new during the course of our lives, which is highly unlikely.