Yesterday I took my Java programming class on a field trip here in town to a company called OnXMaps. OnXMaps produces property line maps and chips for Garmin GPSs and apps for iOS and Android. The maps are primarily used by hunters. OnXMaps designs the maps, the software and flashes the chips. It is a fairly small company, maybe 30 people counting outside contractors. The building is the size of a medium house. The trip was absolutely fascinating. This was not like touring Microsoft or Google, both of which I have done, where you may meet a member of a team that writes a part of some software you may have heard the name of. Our guide was the chief engineering officer of the company. Lots of experience with programming, managing software projects, marketing, and a general broad field expert. We also sat down with the guy that is writing the iOS version of their software. The guy. The guy was about 25, was a CS graduate of Montana State University and was not a geek. What more could you ask for in the way of a speaker? Young, local and THE GUY. My class has a number of seniors who are not shy so there were lots of excellent questions. What language should we learn? Pick one. He knew eight and works primarily in Xcode, which he taught himself after getting this job. He suggested Java as a good base language to build others on. OnXMaps uses C#, Java, Python and Xcode depending on the platform and the purpose. He said he was not an expert in all of them but he could make himself one if he had to. Is a CS degree a good thing to have if you want to get a job like this? Absolutely, positively a must. His comment and our guide’s comment was that the degree gave you the underlying foundation needed to be a good programmer. It also taught you how to learn. Both had experience with self-taught programmers. They said the programmers were an expert in that one language but did not have the background needed to expand easily. Our guide made a very interesting comment when we started talking about schools. He said when considering a school to look at who hires the graduates and how many are hired directly out of the school on graduation. That is an excellent measure of how industry thinks of the quality of that school. Something I had not thought of. Luckily MSU is a heavily recruited school for CS. UM not so much.
I have got to find more industry based field trips. I could take them to Logisys where I worked for 6 months but that would only convince them to never work in the CS field. Logisys was Dilbert and Office Space all rolled into one. I know at least 10 people who worked for Logisys for less than one year.
I think it is critical for students to see an industry like this. My students are all thinking of computer fields for college and without really seeing what it can lead to they really do not know where they are going. Which makes me think a trip to Logisys would not be a bad idea. Be good or this could happen to you.