Towards a Solid Developer Portfolio in 2024

My initial steps on a journey to suck less as a developer

Why Do I Code?

I feel that until and unless I invest the time to sit down and sort through my motives for wanting to become a 10x programmer or at least an effective one, I am going to be perpetually stuck in a rut going nowhere slowly.

I have been a self-taught web developer (although I had been a professional mainframe programmer before that) for a while now but I admittedly don't have much to show for it. That has got to change.

What is a Developer Portfolio?

A portfolio generally is used to showcase a person's best work. It is designed to provide evidence of depth, versatility and skill.

A developer's portfolio is no different. It contains the developer's best software projects.

Portfolios are often but not exclusively used as tools for job hunting. They are usually hosted on portfolio websites where developers introduce themselves and provide snapshots of what their projects are and what they do.

However, software developers also have a favourite platform to share their code; this platform serves as a special-purpose portfolio website of sort. It is called GitHub.

Here's my GitHub profile contributions for this year:

I have exactly 0 contributions. Zip, zilch, nada.

There are reasons for this and other years' drought though. But they are neither here nor there.

I had a busy year this year, don't get me wrong. In fact I marvel at how much I pushed myself to achieve my goals. But moving on to the new year, I just can't help but to get weighed down by this sad state of affairs - yet another year with nothing to show!

New Year's Goals

In order to rescue myself from my dissatisfaction, I have decided to design a solid developer portfolio for the new year not only to showcase my skills but to learn new and valuable skills.

I don't want to go into exact details as to what will be in my portfolio but it certainly won't be to-do lists, calculators, weather apps or anything of that nature.

It also won't be generic chatbots, Uber/Twitter/Instagram clones, ecommerce applications, etc.

First and foremost, my projects are going to be specific to my interests, covering such topics as food, chess, travel, digital painting, podcasts, football, movies, personal finance, writing and so on.

I would like to be a regular user of my projects to solve problems that I have. My problems include managing my studies, managing my movie script storylines and research, living within my means and managing my personal finance situation, etc.

And then they will cover specific technologies such as machine learning, RSS, mapping technology, PGN (Portable Game Notation), APIs, HTML Canvas, and many more.

And then infrastructure such as GitHub Actions, AWS, Firebase and Vercel.

And then technology stacks/languages such as JavaScript, Node, PHP, Laravel, Python, Flask, Express, React, Mongo, MySQL, TailwindCSS, NextJS, Flutter/Dart, etc.

It's a lot!

To recap my projects must fall within the cross-section of the following categories: interests, problems, technologies, infrastructure and tech stacks.

Managing The Workload

I plan to start and most importantly finish a project a month starting from February onwards. Unfortunately, January is already taken up with other commitments. Next year promises to be another action packed year. So probably a portfolio of 6 to 9 projects will be quite the achievement.

So my projects have to be manageable, that's really important. In addition to sharing the code publicly, I plan also to launch a demo website per project.

Why Building Publicly is Important

There are a number of benefits to building software out in the public. For me, the foremost one is building a ready-made userbase for a product from day one. Others are building accountability. Next, "teaching is the best way to learn". And of course, the important one for escaping low self-confidence is showing off the your skills with solid evidence.

Looking Ahead

In conclusion, I pray that the journey ahead in 2024 is a successful one and by this time next year, God willing, I would have escaped "tutorial hell", "impostor syndrome" and will be well on my way to becoming a "10x programmer" and have a lovely and solid developer portfolio to boot.