DEV Community

Muhammadreza Haghiri
Muhammadreza Haghiri

Posted on

What I've learned in 2020, as a developer.

Although 2020 was like an alien attack to humanity from the beginning, it also had a lot of good opportunities for learning and experiencing new stuff. I know most of us experience loss of the loved ones, disease, economic disaster and the world almost survived possibilities of war and bigger and deadlier plagues.

Fortunately, the world went that bad and nothing horrible happened besides the pandemic. So we could chill in our homes and learn new stuff. In this post, I will tell you what I've learned in 2020 and those can be the stuff you'll be learning in 2021!

2020 vs. Iron Man

Getting better at Ruby and Rails

Although I started learning Ruby in 2014, but I really needed to get better at the topic. Why? because it is fun. Despite the lack of documentation on deployment and maintenance, Rails is awesome. I always had the bottleneck of deploying and maintaining my projects, so I learned those as well.

How? you may ask, I should say it was a very painful way to learn. It was mostly reverse engineering of what other projects like Mastodon did.

Finally, I made a few projects using RoR in 2020. I may make a huge one in 2021 as well, but I still doubt about doing that.

Learning Docker

Docker is awesome. It's really good to learn Docker and use it to manage, develop and deploy projects. Although I have a lot to learn, I added to my knowledge of Docker in 2020 and I won't regret that!

Flutter

Mobile app development was never my call. But Flutter did change my mind. How? Because it is really simple and the result is amazing.

I always had a strong guard against React Native, why? firstly because it's a javascript library and secondly, because it's not really native despite the name.

In flutter on the other hand, things work differently. It's still not that native, but has stronger bindings to the native libraries. It also uses Dart as the programming language, which has a similar syntax to javascript (at least to me, it looks like JS).

Flutter made me learn a bit of mobile app development and I have an overview of the process now.

A.I.

I made it a bigger(?) section 'cause I worked on different aspects of Artificial Intelligence. I'll explain what I've learned!

Image recognition/Identification

Not Hotdog

Remember that episode from season 4 of HBO's show Silicon Valley? The character Jian Yang, designed an application called SeeFood. What that app did was simply say something is or is not a hotdog.

I learned the theory behind the app, and I also implemented a simple version of that as well. I think I need to learn about the whole thing a bit more, because it's really cool!

Voice assistant

MCU (stands for Marvel Cinematic Universe) has a lot of ideas for you, if you seriously want to create super hero stuff.

There's the current-time representation of Edwin Jarvis, who served Howard Stark and later Tony Stark in the comic books as J.A.R.V.I.S, which is a smart assistant.

Re-watching the whole franchise, gave me the idea of re-making it. I made my own personal assistant and I also called it Jarvis as well (but later I realized Jarvis is one of the most used names for assistants so I need a better name!). I added machine learning to my assistant and now it works very well!

Django Reinhardt

And last, but not the least : Django and Django ReST framework

After years of playing with Python, I did a lot with that amazing language. Besides A.I, I also started learning DRF. Why? Because it can help me find a job easier. I actually did not spend a lot of time on that, but I'm sure I can make a really big project in DRF. And I may do it in weeks.

What should I do for 2021?

I don't really know. I may learn PHP as well, I may learn React or Vue, there are always a lot of ways. For now, just have happy and nice holidays!

Top comments (1)

Collapse
 
mhhashemian profile image
M-H Hashemian

That was awesome!
You really have knack for writing! Good job!