Yesterday I found an incredible website that is called MIT Open Courseware.
I discovered a lot of stuff I was missing in my university especially in Computer Science discipline. I couldn’t say that I learned something brand new, but I definitely understand a lot of things in programming much deeper and better now.
If only I knew about this course seven years ago… Back to the school years, computer science was something I was self-learning: there was no internet and getting to the Russian Competitive Programming boot camp was hard. I remember that my first competitive programming success came suddenly when I started to try to write problems solution plan on a piece of paper designing the algorithm. I remember that we had Visual Basic 6 in the school without even having MSDN so some people outside of it were wondering why I was writing some internal functions from scratch — but I didn’t simply even know of them because of lack of internet, books and/or education. Even taking that in account, I got ranked 1st on the city level and 3rd on regional programming competition :) That was funny.
You know, a lot of programmers talking that “X is better than Y because…”. One Senior guy at my work told me “Good programmer can program everything on anything”. And I heard exactly the same phrase in that course, and I definitely agree with it. With all the modern languages we started to only learn what we can do easy using them, forgetting the fundamentals.