Goals for 2020



In terms of computer science, there are many things I want to learn. However, as I enter my final semester at college it's time for me to learn some things that will help in my job search. So, here are my learning goals for 2020:

  1. Swift
  2. Node.js
  3. Angular, React, or Vue
  4. Java Spring
  5. MongoDB
  6. Electron


Learning Swift has been something I've wanted to do for some time. I probably should have explored this much earlier, but my school only offers one class and it didn't fit in my schedule. Regardless, I am very much looking forward to learning this and maybe have my first app published on the App Store by the end of the year. This goal is definitely the one I am looking forward to the most. Not only because I've always wanted to write apps, but also because it doesn't involve web development. Don't get me wrong, I enjoy writing web technology, but nearly all my side projects last year were written for the web, and not native programming languages. I'm excited to start writing some software using only one programming language.


Node.js is an interesting goal because if it wasn't for GitHub, I would might not have ever heard of it. In almost every repository I checkout, I see the authors mention Node.js. I had never heard of it before, and after doing some quick google searches and reddit discussions, I figured out that it's a server side framework written in JavaScript. The part that really interests me is that it is a way to write the backend of a website without using php. Now I don't hate php at all, and I actually enjoy using it, but it is the only language I'm comfortable with using in my backend systems.

Angular, React, or Vue

My goal here is to learn one of the three most popular frontend JavaScript frameworks. As of December 2019, Angular, React, and Vue are the most popular JavaScript frameworks used in web development. These frameworks are everywhere, and after looking at several requirements for different job postings I can tell it would be beneficial for me to learn at least one of the three.

Now I don't understand the need in learning one of these frameworks. However, this comes from me not having a great understanding of what these frameworks do, and how they can be used to improve one's software. There definitely is a reason why they are so popular and used so much today. Now I just need to buckle down and figure it out for myself.

From the little research I've done, I am leaning on learning react first. This is because I have heard about React Redux. To be honest, I have no clue what that is, but it just sounds cool to me and I know that the Reddit ios app was written using redux. If I decide against this, my second pick will probably be angular, purely for the fact that it is the most popular framework used today.

Java Spring

Java Spring is a Java Framework. Once again, I have no idea what it does and why it is beneficial. My thoughts are that I know how to write alot of stuff using java, but I have no clue how one would use it to build a web application. That is why I want to learn it.


I want to challenge myself to learn a no sql type of database. This goal comes from pure curiosity.


Electron is an open source library developed by GitHub for building cross-platform desktop applications with HTML, CSS, and JavaScript. Alot of popular software is written in it suck as discord and atom. I know some people are not a fan of it, but I would like to be able to write desktop apps in a different language besides Java.

© 2024 by Ryan Rickgauer