Can an Old Programmer Learn New Tricks?

Bob Kelly
5 min readJan 18, 2023

--

The Old Programmer

I decided here at the beginning of 2023 to return to the software industry I had worked at for 25 years between 1985 and 2010. That’s a 13 year career gap. Is it practical to get back into the industry after such a long time and at age 58?

Obstacles to Re-entering the Software Industry

Two issues had kept me from attempting this return to the software indsutry earlier:

  1. Obsolescence of technical skills
  2. Potential age discrimination

I left in 2010 with skills in C++, SQL databases, and intimate knowledge of Windows desktop application development in MFC (Microsoft Foundation Classes). MFC, C++, and desktop application development were already aging technologies by 2010. I had stayed too long at my last company: it never quite succeeded and never quite went out of business. I didn’t have skills that were highly in demand at that point; although, we had a small web based section of our product line that taught me some C#, HTML, and CSS, but I wasn’t yet confident in web development. So I made the leap into the real estate industry (that’s a long story for another article).

Regarding age discrimination — discriminating against old job applicants — I had engaged in this myself at a young age. When interviewing an older applicant — and these were maybe in their 40’s — I would wonder, why does this guy want this job?, what went wrong with his career?, what’s wrong with him? We invariably chose a young applicant. Each team member ruled out the old ones independently.

Discovery of DevSlopes and an Epiphany

In early January 2023, I joined the full stack web developer program at DevSlopes.com. I realized two things in reviewing their marketing material:

  1. Large employers are no longer requiring computer science degrees
  2. In a world of freelance, online, work-at-home gig jobs, nobody needs to know how old you are

My degree back in 1985 came from a community college: an AA degree in Data Processing. We were being trained to write COBOL programs for banks or insurance companies — not very relevant to today. (As an aside: the verbosity of COBOL programs was supposed to make them self-documenting and enable secretaries to write computer programs.)

Failure of University Based Computer Science

Computer science departments at universities invariably grew out of the math departments — simply because it was the math professors who first took an interest in computers. These programs needed to weed out applicants in this hot field, so they larded on pre-requisites in math and physics. Except in some narrow circumstances, math has nothing to do with programming. The world would have been better off if computer science had grown out of the English department. Structuring a good English essay is much more analogous to programming than anything going on in mathematics.

Consequently, these computer science programs never adapted to the market and never grew to meet the strong demand for programmers. What do mathematics professors know about business? Employers reacted, first of all, by hiring foreigners through the H-1B visa program. It was far cheaper and quicker to hire a trained foreigner than to the train up a native citizen. Lately, alternative, online schools — like DevSlopes — have grown up to meet the hiring demand for web developers. Employers have caught on and have altered their hiring practices to favor recent experience and a portfolio of web projects.

DevSlopes Results So Far

At this time of writing, I am two weeks into the DevSlopes program, working at it 4 to 6 hours per day. So far I am very pleased about two things:

  1. The quality of DevSlopes material and its organization
  2. The relevance that some of my old skills still have

I’ll write a review of DevSlopes in a future article. Just suffice it to say that I am very pleased with the program and expect to complete it in 4 to 6 months.

Old Skills See a New Day

My skills that are still of relevance — sometimes to my surprise — include:

  1. The VI editor, which originated from the UNIX operating system. You have to use VI to understand what is so great about VI. Unfortunately, I wouldn’t recommend any newbie to attempt to learn it. It takes about two years to learn well. Once you get past that point, it is like riding a bicycle — you’ll never forget and your fingers will fly on their own. VI lets you edit a file without touching the mouse. You avoid constantly switching contexts between mouse and keyboard. It has a very rich set of commands for navigating and changing text and repeating complex actions that have no equivalent in mouse-based editors. It’s a pleasure to be using VI again.
  2. HTML/CSS — I had touched on these topics in my earlier career. I had at least a reading knowledge of them that gave me a head start.
  3. Javascript — I can see that coming up a great deal of the educational material will concern Javascript. I have written a little Javascript in the past, but it is also related to C++ and object-oriented languages in general, so it should be no problem reacquainting myself with it.
  4. SQL databases — My 25 year career concerned databases the entire time — even prior to the ascendancy of SQL (An aside: SQL means “structured query language”. It was designed as a verbose language that secretaries could use to retrieve information from databases. It’s a horrible hack to use programmatically, but the industry has perfected tools over time to make it efficient and easier to use.) Such skills as SQL syntax and factoring fields among database tables will still be relevant. I’ll be learning something called MongoDB — a product new to me, but still SQL based.
  5. Debugging and testing — I always worked for small companies where we programmers did our own testing. Debugging is the process of narrowing down programming errors in the most efficient way possible.

Pro Debugging Tips

I’ll give you two pro debugging tips right here:

  1. Your problem is not original. Somebody has struggled with the same problem before. Google it. The trick then is to hit upon the right way to phrase the question. Think about how other people would have asked it.
  2. If you beat your head against a wall for multiple hours, stop and take a break. The solution will often come to you at the oddest moments: five minutes after you shut down the computer, while eating lunch, or in the shower the next morning.

Conclusion: Don’t Put the Old Programmers Out to Pasture

I would encourage old programmers — I expect there are more of you out there — to get back into the software industry. You will find like I did that some of your skills have relevance. There are also soft skills of work ethic, organization, and reliability that may be lacking in younger workers. The opportunities to work at home on flexible schedules beat anything we had at the time I left the industry. Affordable online training programs for programming have proliferated like never before.

Stay tuned! I expect this to be the first of a series as I work my way through DevSlopes and rebrand myself as a Full Stack Web Developer.

--

--