My Java Problem

Most of my Computer Science books for the year use Java as a primary language. I prefer C variations and Python, but as much as I have tried to avoid it, I will be picking up Java as a learning language for algorithms.

I quickly realized that going through Sedgewick’s Algorithms 4th Edition is going much slower than anticipated because I’m having to translate all the code while learning into Python, C#, or C. I planned on translating my code to each language regardless, but it hampers the learning process. On top of this, Sedgewick uses his own Java libraries in his code that are provided with the online resources, which would be immensely helpful to have.

I’ve downloaded IntelliJ, which I’ve used before for other Java classes, onto my machines and plan on starting over with Sedgewick’s courses. I was only through Week 1 of the coursework, so we’ll see how this helps me get through.


This post is about my year-long study of Computer Science and Algorithms for 2017. To keep up with my progress, see my study plan on GitHub, and check out my initial blog post.

January: An Update + Cool News!

Hello, everyone! It’s been some time since my last update.

I was able to finish through The C Programming Language and Write Great Code: Volume One before the end of January.


The C Programming Language is by far the most highly recommended book for learning C, and is sometimes even referred to as required reading for any programmer. It’s a very simple, easy language, that lets it be used in very complex ways. It’s been around for a very long time, making it easy to find solutions and documentation on. I paired this book alongside some more modern courses on C and C++ from Pluralsight, which I also recommend highly. This language will be one of the languages I practice in my coding of algorithms this year, alongside C# and Python.


Write Great Code: Volume One is all about the internal workings of computer systems. Written in 2004, it’s a bit dated, but as a reference this is an amazing book. I’ll definitely be coming back to this time and again once I get to Linux and Assembly language programming.

I’m currently working through Algorightms 4th Edition by Sedgewick, and taking his accompanying Coursera course. It’s been a very dense dive into the basics of algorithms. The course only covers half of the book, and takes six weeks. I plan to try and push through it much quicker, however, finishing by the end of the month.

Alongside the learning I already have planned, I am now working with the programming team at my current job doing two large web-development projects. It’s exciting work and will speed along my readiness for a programming job. Since working on this heavily these past few weeks, I haven’t been posting much code on my GitHub, but plan to start picking that back up soon.

Hasn’t been much activity these past two weeks, due to current work projects.

If you want to follow along with my progress, check out my main blog post about this year’s learning journey here, or check out my GitHub.