Reinvention

Reinvention

What does reinvention mean? Wiktionary (currently) says of “reinvent”:

1. To invent again something that has already been invented.
2. To adapt into a different form; to give a new style or image to.

I’m not attempting to reinvent something that’s already been invented. (Although relatively few software developers can claim to have done something that’s never been done before.)

So that leaves adapting into a different form: I’m reinventing myself as a web developer.

But first, a little background…

The Past

I started out as a professional software engineer back in 1998. Nearly two decades later, that pretty much puts me in the ‘experienced’ category of software developers.

Most of those nearly two decades has involved language X. I’m purposely not revealing what language X is, because it’s not important (*). What is important, is what my future holds.

(*) Of course, the real language X is important. It’s been around for a while, and certainly isn’t going anywhere. My goal here isn’t to offend anyone.

Now, after two decades of language X, you begin to realise that even though you write software for different domains, you’re effectively doing the same things every day. Things become too easy and unchallenging. You’re not learning anything any more. You begin to crave change.

The Future

So I see my future in web development. Not mobile application development. Not desktop application development. Not games. Not hardware.

Web development. The development of websites and browser-based applications.

At a base level, that’s technologies including C#, ASP.NET Core, JavaScript, HTML, CSS. Why these? I’m mainly a Windows developer, but have also developed cross-platform software that runs on Linux too (roughly a 90-10 split). I’ve a fair amount of experience with C# (not for websites), but until recently relatively little experience with the others.

Why?

The Internet continues to grow and evolve. I don’t have any figures – call me lazy! – but that’s an undeniable fact. Every day, more and more communities come online, more and more people gain access to the internet. It’s everywhere, and like it or not, it can pervade our every waking hour.

I’ve dabbled in the development of websites in the past. I’ve created a few simple websites, either using static pages or basic dynamic pages using CGI to process PayPal payments.

But they’ve been side projects. Not part of my main paying job, which has been desktop and server application development using – mostly – language X.

And after nearly two decades I’m ready to move on from language X, and learn new languages, technologies, and methodologies. I’ve already begun this journey, I’ve taken more than a few steps on the long road ahead. I’ve learnt a huge amount already, and I’ve realised that it’s well worth sharing this information. After all, after nearly two decades of software development I’m well-positioned to separate the “wheat from the chaff”, because the internet’s full of misinformation and, frankly, bad information.

So I’m going to share my learning and my¬† experiences with the internet as I transition into web development.

I’m reinventing myself. And I hope my journey inspires others out there.