Jan 10, 2022
“Made up my mind, make a new start - going to California with an aching in my heart”
Happy new year everyone! This blog post will be about the last year, 2021, and also about my plans for 2022.
I had been programming before, but in Bash (😂). Although shell scripting and actual programming are very different, I believe that my experience with shell scripting had helped me learn programming a lot.
I remember when I first learned Swift in 2018, which was before I learned to write shell scripts, I was really struggling to grasp the basic ideas of programming. But after I came back to programming after having written shell scripts, everything seemed much less difficult.
In December 2020, I decided to quit my old, boring job and focus on learning Go.
This was when I was comfortable with Go, but still wanted to try new languages. I tried Python, Rust, Javascript. I ended up hating Python, liking Javascript, and loving Go.
I have to admit I was still too dumb to learn Rust during this period, although the concept of helpful compiler and Rust trade-off decisions really grew on me.
Personally, I believe Rust will be BIG. It is a modern C, and much safer.
My first software that actually has real world use, gfc, was first written during this period.
📜
I also managed to get my full-stack Javascript certification from Thai Programmer Association. I finished this course in ~5 months, and the final project for the course was DoggoVac
After having learned both front-end and back-end, I realized I hated front-end and would hate to write any, so I began focusing more on topics relating to back-end like JWT authentication, REST API HTTP servers, and of course databases (both SQL and NoSQL).
After feeling confident about my skills as a junior back-end developer who learned all of these within 10 months, I tried emailing countless companies to apply for software development jobs.
Only one replied. And it was Cleverse, a Thai startup well known in Thailand for its talented young developers. And now I’m working as Cleverse back-end software engineer, perhaps the first one in the dev team to write back-end code without a proper college degree.
After working for Cleverse, I have learned a lot of programming best practices, and have since been incorporating those good designs into my own code. You can see on my GitHub page that I have been heavily refactoring FnGoBot and gfc during this period.
gfc - a simple, stupid CLI file/console encryption/decryption tool using AES-256 GCM, AES-256 CTR, and RSA OAEP SHA256. It can output raw ciphertext, or hex/base64 formated ciphertext. Likewise, its ciphertext input can be either raw, hex, or base64.
FnGoBot - a simple, stupid Telegram chatbot for financial securities. This project helped me learn development planning, good and modular design..
DoggoVac - a full-stack simple, stupid canine and feline vaccination tracker for small vet businesses, with both back-end and front-end written in Javascript. Try it on doggovac.artnoi.com Warning: The code is not very pleasant to look at. It works well though - my family currently use our private instance to store out pets’ vaccination data.
19 - a global COVID-19 tracker with data from OWID. It is front-end only and is currently hosted on 19.artnoi.com.
csc - a simple, stupid file checksum utility. It currently supports MD5, SHA1, and SHA256 hash algorithms.
I want to be able to write gfc in Rust this year.
I’m quite conservative when it comes to my servers. I don’t use containers or orchestration at all. This is very different from real world production servers. So if I want to pursue my career in backend software development, I need to learn more about tools like Docker, Kubernetes, and Google Cloud.
A handful of my close friends have asked me to help them with their programming. I’m quite confident that if the friends actually put in their efforts, they all can get what I got.
I noticed that, after 7 years of smoking weed non-stop, my EQ has dropped significantly. I can’t regulate my urges well enough for a 25-year-old man. I’m still working on how should I approach this.
2022 is MY year! And I will make it happen!
“Standing on the hill in my mountains of dreams, telling myself it’s not as hard, hard, hard as it seems”