A Journey in Software Development

Hello, this is JY. I have been trying to write something, or anything at all, about programming many times in the past, but failed the equal number of times. I don't know if there would be any difference this time. Naturally, there must be some reasons or excuses, valid or not, but I also know nobody would care. Thus I won't bother to bring them up, except for one of the main reasons below, as it is relevant to what I plan to write on this site. Please bear with me.

I am a software developer. At some point in time I want to write about software development in general, just like the other guys on the web. Of course one immediate question to ask is: what am I going to write? Am I going to be good at it? Let's say deciding what to write is not the main obstacle that prevents me from acting – I'd like to focus on writing materials that can help beginners navigate the complex software development landscape, as it has been the pain in the neck for me for a very long time. I might not write better than others next to me, but I hope to fill some gaps here and there, which might be helpful for potential readers now or in the future.

Still, making proper decisions, or rather educated guesses, is indeed the main reason that held me back. For example, to get started, where do I publish my work? It seems not a big deal for many people, but certainly not for me. If I decide to use one of the on-line platforms such as Blogger, Medium, etc., which is better for my case? What will be the consequences? I guess I need to spend some time digging, while likely would result in a compilation of pros and cons, and some advices saying I need to choose what's best for me. I guess I am not going to write articles about how to choose blogging platforms, until I gain sufficient experience using them.

On the other hand, if for some reasons I decide to host the site myself, which set of tools/platforms to use? I need to do more digging, evaluating among open-source tools such as WordPress, Ghost, or static site generators such as Jekyll, Ghost, VitePress, etc. Each option has a number of sub-decisions to make, and the outcome depends greatly on my personal experience and the environmental constraints I have.

Did I mention I am a software developer, with kind of severe NIH syndrome? I did spend quite some time building blogging websites using different stacks, such as Django with SQLite, Express.js with MongoDB, React with REST API, etc. Not to mention the variety of UI and styling frameworks. What technologies and frameworks people use lately? I guess I should do more digging, with the feeling that I will get excited somewhere very quickly, and may delve into something that is less relevant a few years later.

These are just some typical tips of the iceberg people face with if they want to enter the world of software development. Even though I am a little overwhelmed, I still want to get started right now with so many unknown ahead. Otherwise, I am not going to write anything any time soon.

So here you have it. I chose to self-host the site, using Ghost with almost zero customization. I have already made some trade offs reaching this initial decision. For the record, let me put down the initial look and feel of this site below, as I want to start blogging as soon as possible, before getting familiar with the Ghost ecosystem.

My goal is to document my journey in software development, in a way that is helpful to beginners. I picture this site as a mixture of blog posts and knowledge base – although the posts are arranged chronologically and randomly, the content of a post is subject to change if it contains misinformation or deserves more expansion. In other words, if it seems to you that I publish posts prematurely too often, please be patient. I will try and come back to revise them without mercy later, since I see each post as a valuable asset, and may be referenced from or replicated in other sites of mine.

Thank you for your patience, and come back next time 😃.