The Amazing Colossal Lifelong Learning Ketchup

Taking inspiration from some guy who decided to do a self learning journey through the entire MIT CS undergrad education in 1 year, I’m curious how I stand after spending 1 year doing something in the same spirit.  There was quite a bit of overlap of my own undergrad education and that of the MIT CS undergrad, so let’s see how I would stack up if I were to attempt the MIT CS 1 Year Learning Challenge.  

8.01: Physics I – Classical Mechanics – COMPLETED @ UIUC

18.01: Single Variable Calculus – COMPLETED in High School

18.02: Multi-Variable Calculus – COMPLETED in High School

8.02: Physics II – Electromagnetism – COMPLETED @ UIUC

6.01: Introduction to EE and CS I – COMPLETED @ UIUC

5.111: Principles of Chemical Science – COMPLETED @ UIUC (I will count this as Orgo)

7.012: Introduction to Biology – COMPLETED @ UIUC (I will count my microbiology)

18.03: Differential Equations – COMPLETED @ UIUC

6.02: Introduction to EE and CS II – COMPLETED @ UIUC

6.042J: Mathematics for Computer Science – TBD 

6.006: Introduction to Algorithms – COMPLETED with Coursera

18.06: Linear Algebra – TBD with Coursera

6.041: Probabilistic Systems Analysis – TBD

6.002: Circuits and Electronics – COMPLETED @ UIUC

6.046J: Design and Analysis of Algorithms – COMPLETED with Coursera

6.034: Artificial Intelligence – TBD with EDX

6.003: Signals and Systems – COMPLETED @ UIUC

6.004: Computation Structures – TBD

24.241: Logic I – COMPLETED with Coursera

14.01: Principles of Microeconomics – TBD?

6.033: Computer Systems Engineering – COMPLETED @ UIUC & futher on Coursera

6.013: Electromagnetics and Applications – COMPLETED @ UIUC (I will count Power Circuits towards this goal)

14.02: Principles of Macroeconomics – TBD?

24.242: Logic II – TBD

6.011: Intro to Comm., Control and Signals – COMPLETED @ UIUC

24.244: Modal Logic – TBD

14.20: Industrial Organization – TBD

14.23: Government Regulation of Industry – TBD?

14.48J: Economics of Education – TBD?

6.005: Elements of Software Construction – TBD

6.801: Machine Vision – TBD

6.837: Computer Graphics – TBD

COSC 545: Theory of Computation – TBD

I’m not sure I’d actually want to complete the rest of this course list!  I’m very glad I am not forced to jump through these hoops.

I count Coursera curriculum as part of some hypothetical uber undergrad curriculum based on the level of rigor of the coursework.  Comparatively, the Coursera (Edx, etc) coverage will go far beyond that of any single undergrad major in breadth and sometimes in depth, without going into the details of research and papercraft!  

Mirroring the MIT Challenge FAQ, my Endless Coursera Et All Challenge FAQ.

Here’s my progress after one year.

Completed Fall 2011 

  • Intro to C Programming – UW Online * CS61A – UC Berkeley (Part 1/3)
  • Relational Databases – Stanford (no samples) Completed Spring 2012 

Completed Spring 2011

  • Software Engineering for Saas in Ruby on Rails – UC Berkeley 
  • Natural Language Processing – Stanford (1/4)
  • Design and Analysis of Algorithms I Part 1 – Stanford
  • Udacity CS101 – Building a Search Engine
  • Game Theory – Stanford 
  • CS61A – UC Berkeley (Part 2/3)

Completed Summer 2012 

  • Algorithms I – Princeton 
  •  Networked Life – UPenn Completed Fall 2012

Completed Fall 2012

  • Statistics One – Princeton
  • Computing for Data Analysis – John Hopkins 
  • Introduction to mathematical thinking – Stanford – Lectures only
  • Web Intelligence – IIT  

Currently In Progress Fall 2012 

  • Functional Programming Principles in Scala – EPFL 
  • EDX CS188 – Berkeley 
  • Mathematical Biostatistics Bootcamp – John Hopkins
  • Computational Investing – Gtech 
  • CS61A – Berkeley (Part 3/3)

What rules am I following?
Coursera is definitely easier to delineate completion as it was designed to be taken in a self-study format.  However, I am also supplementing with EDX, Udacity, Berkeley, and any other online material that is sufficiently polished to cowboy on.  

Unless specified, I am doing all the following for “Class Completion”:
  • Watch all posted lectures
  • Do all in lecture quizzes
  • Do all assigned quizzes and homeworks
  • Do all non-optional programming assignments
  • Do all programming projects as long as they have some sort of unit tests or test cases written so that I can quickly measure my progress. 
  • Attempt to complete course within the time constraint that the class is in session or sooner

Because I hate exams, I generally do not do them unless it’s a math class.  Generally these online classes will automatically grant certificates based on achieving at least a 70% in the class, so I do not have to do that measurement myself.  I do aim for a score that I would be happy with if this were my GPA though.

Why do this?

I am not sadistic. I just feel like this is actually the path of least resistance to gaining knowledge.  I believe failing and trying again and sometimes taking longer than others is part of the learning process.  If I don’t complete a class within time constraints, I continue until I finish.  In the normal time-constrained world, that would be counted as failure — end of story.  I am doing this as part of an exploratory process that can only be simulated if I were to stay in college for decades.  

Is there No Failure?

Sometimes I have encountered classes I just cannot stomach or I just can’t seem to make any headway into.  Those I will abandon readily but with great sadness! 

What’s Next?

There’s quite a few more Courseras on my list in my bigger list of things I’d like to achieve personally. 
  • Go back and review some Calculus and Linear Algebra with the upcoming Courseras
  • Learn more Chinese with
  • With the undergrad curriculum as a guideline, use Coursera to further that as well as for my own exploratory desires
  • Start and finish a personal project
  • Get to 300K on!
  • Work on my colossal reading list, see also the Amazing Colossal Science Fiction Ketchup

GitHubbing and Coursera

Yay, I finally caved and bought my subscription to GitHub. I'm still not sure what the true benefit of it is, besides being able to finally get some private repos.

I'm nearing the end of the Computing for Data Analysis class by John Hopkins University and the Statistics One class by Princeton. ??Both have been a very neat crash course on R programming for me. ??I definitely need to brush up more on my statistics and probability. ??So I'm also following the Biostatistics Bootcamp Coursera also offered from John Hopkins. ??All this math has resurfaced painful memories of college and how shabby my math fundamentals are. ??I think I will likely be brushing up on those as well, as soon as they are Coursera'd.

I have some vague notion that I need to learn more math and review all my forgotten ECE maths these days. ??I want to finally have a solid understanding of eigenvectors and matrix algebra and be able to fluidly move around those constructs in some math software package. ??I'd also like to get much better at conceptualizing massive data in my mind. ??I think I'm moving at the speed of molasses towards these personal flags.

Somehow, learning math still seems more attainable than making a simple video game or some little pet project. I'm hoping that very soon I'll do something so that I might claim I have it as a hobby. ??I'm using the projects from Berkeley's CS188 on EDX and CS61A as inspiration. ??Feeling rather burnt out tonight though and haven't made much progress there. ??I don't know if I rather crunch hospital data more because it's easier or if I just like data crunching.

Greatest hits

  • 1,524 hits