I have just realized that this blog may be read by people who are not current or former students of Madison College/MATC, so I am at this point going to give a brief overview of the curriculum to put some of my posts in perspective.
There are two Computer Programming degrees at MATC. They both fundamentally have the same curriculum, it is just more difficult to eliminate a program than it is to create one, so for all intents and purposes, there is one Computer Programming degree.
This is a four semester degree. There are some general educational classes required, like an English and a math. There is some study of databases and query languages plus an overview of web development with HTML and XML.
After this there are several languages offered and they are each three semesters long. When I began in 2010, there were three languages: Java, PHP, and VB.Net. Each of these had an introductory to that language, an advanced class in the language, and a class on some subset of the language. Java had Enterprise Java for it’s final class, VB.Net had ASP.Net.
In Fall 2012, MATC began offering a Mobile Development degree in place of one of the two programs I mentioned at the beginning of the post. MATC had offered iPhone development as a post-graduate elective and certificate, but these proved so overwhelmingly popular that they were brought in as an option for the degree program.
The first semester for the iOS class begins with “Introduction to C and Objective-C”. It then progresses to the “Intro to” and “Advanced” iOS classes. Android is also offered as an intro and an advanced after first taking the introductory Java class.
For the iOS classes we are using the Big Nerd Ranch books. For the Objective-C class we used the Big Nerd Ranch book about C and Objective-C. Right now, for this class and the advanced class, we will work through their iOS development book.
For the Introduction to Java class last semester we used Head First Java. This semester we are using the teacher’s slides and directly utilizing the Java API.
I have taken every single introductory programming class currently offered during the time I was here. I kept having issues that caused me to either drop the advanced version of a language or not progress past the intro.
This is the first semester I anticipate completing the second semester of three of at least one language. I am focusing on Advanced Java and Intro to iOS.
This is some background if I talk about what came before and what will come after. I am approximately a third of the way through my various language tracks and I am going to attempt to find employment for iOS.
Madison has a very large Java community due to organizations like American Family. It also has a large VB.Net community. I am learning Java as a back-up in case iOS does not work out.
So this is just a quick overview of the curriculum and my place on its path.