In 2020 I made a more conscious effort to expand my knowledge outside of my field of Embedded programming and the C language. I also started this website inspirezone.tech which allowed me to practice writing and learn about web related tools and concepts.
To reflect on what I’ve done throughout the year, here are 20 things I learned in 2020. This also includes things I improved on or started during the year. These are either related to programming directly or are tools, technologies and other miscellaneous things which I felt help me grow myself during 2020.
I recommend you also reflect on your learnings every once in a while. So you can analyse how much you’ve done throughout a set period of time and how well you’ve met your personal targets!
Although this is more of a personal reflective exercise, I hope it will help inspire some of you. You may use any of the items on this list to set targets for yourself in the coming year.
Here are the 20 things I learned in 2020 in no particular order…
1. Improving python skills
I coded in python a lot more this year and as a result have grown my knowledge of the language. See some of my python related blog posts:
2. Web scraping
I discovered the power of web scraping and I’ve now written several scripts on this. The prospects of what one can automate with web scraping are countless… I will definitely be making a lot more web scraping scripts. Here are some that I’ve done so far:
3. Website hosting, domains and related terms
I started the website inspirezone.tech which enabled me to learn all about domain names, hosting and all other things involved in the process of making a website.
I built my site using WordPress, the world’s most popular CMS (Content Management System) platform. This site exists because I had to learn how to use WordPress!
SEO (Search Engine Optimisation) is all about using techniques that makes it easier for search engines to find your web based content. SEO is a term I only discovered this year but I now follow basic principles guided by the WordPress plugin Rank Math to improve my sites SEO.
6. GitHub platform
Although I had experience with source code management platforms, I did not have much experience using GitHub in particular. This year I started using GitHub consistently and have discovered how powerful it is as a platform, especially for open source projects. The community of open source developers on GitHub is incredible!
See some of my related blog posts on open source:
7. GitHub API
I delved into API development and wrote a python program that uses the GitHub API. I also wrote a blog post on the application.
8. GitHub actions workflows
Yet another GitHub related learning I feel is worth its own heading! That’s because GitHub actions workflows is an extremely powerful feature of GitHub allowing you to automate how you organise and test changes to your repositories.
I use GitHub actions on the Inpsirezone GitHub repos to automate a few basic checks when someone submits a pull request. This has got me interested in seeing how CI/CD can be used to even further simply the process of maintaining repos I look after because automation rocks!!
9. Expanding knowledge of git
Forking and pull requests is something I rarely did because of the nature of my previous programming projects. But now that I’m involved in GitHub a lot more and with open source, it’s something that I’m now comfortable with.
I also used the git command line a lot more this year when I previously relied on git client apps. This has improved my understanding of git.
10. Open source contributing
Made my first open source contributions this year mainly thanks to Hacktoberfest. I wrote a post on why every developer should get involved with Hacktoberfest.
11. Open source repository maintenance
I became an open source maintainer as I host the projects found on the Inspirezone GitHub repos. I also wrote a post on The essential checklist for every open source repository maintainer.
I started writing proper README files and other documentation files for every repository I create. This allowed me to learn more markdown syntax.
13. Godot game engine
I made my first video game using the Godot engine. You can see and download the game on my itch.io page (Warning: It’s no blockbuster 😉 )
I’m looking forward to growing my skills in video game development with Godot or other game engines and excited to explore this further next year!
See my post on Making my first game in under a week using Godot engine (you can do it too!).
Decided to finally give the most popular code editor a chance and haven’t looked back since.
A skill I have lots to improve on but this blog exists so I can consider myself a blogger now!
16. Tutorial style blog posts
I wrote several posts that guide others on how to achieve something with a programming language, tool or platform. Again, lots to improve on in the future.
17. Using Canva
I use Canva to put together the illustrations found on my site. I’m no artist but I’ve greatly enjoyed exploring my creative side and couldn’t have done it if Canva wasn’t such a great and simple tool to use!
18. 9 Rules for Debugging
I read the book “The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems” by David J.Agans.
This was a great read and I need to work on applying these 9 rules in practice. A blog post reviewing this book coming soon.. I’m targeting to read a lot more programming related books next year.
19. Linux Crontab
Crontab is an extremely useful utility to schedule the time and frequency of running a command or scripts. I use this to schedule scripts I want to run periodically.
See my tutorial post on how to use crontab.
20. Building static websites
Although I focused on learning WordPress this year I also want to learn how to code websites using web development frameworks. At present it’s something I’m still very new to and look forward to seeing how much I learn in 2021.
This is a personal list of 20 things I learned in 2020. I look forward to continuing the learning process in 2021!
Why don’t you form your own list of things you learned this year? If you have a list, share them in the comments below.