Sunday, March 9, 2014

Have You Checked the Network?

Finally.

It's taken 20+ years, but I'm finally seeing some of my undergrad studies in action in the real world.

Well, that's not entirely correct. I use the programming, analysis and process oriented skills pretty much every day. But I've never applied the actual course material. Really, how often do you look at Eigen vectors, Cauchy-Reimann equations, Fourier series or planetary life-cycle modeling as an infrastructure consultant in the IT world? Yep, never.

So... I majored in math (by choice). The astrophysics minor was a fluke. I wanted to minor in English but the College of Arts & Sciences policies said otherwise. I was required to minor in a related field so I took some classes I thought would be beneficial and figured on getting physics. The astronomy classes were literally for fun (and to hang out with my very geeky friends) with no expectation that they would be "useful" towards my degree. But before I graduated they were reevaluated and renumbered. I didn't know I had the split Astronomy/Physics minor until just before graduation when I completed by degree check paperwork. Turns out I did become a rocket scientist after all :) I digress: back to the topic at hand.

One of my core classes was discrete mathematics in computer science. We covered logic, proofs, theories, etc. The instructor tried to make it interesting and relevant, which was difficult with a room full of bored undergrads with other endeavors on their minds (in my case, Z's Pizza & beer with friends, followed by more cold beer at Gentle Bens). I don't recall much of the "computer science" portion as we never used a computer in class, which was a bit strange. The infrastructure on campus was fairly robust for the time period. Open labs were all over and students had access to GAS, VMS and other systems for research, class projects, email and even surfing. Quite a contrast to the outside where only a small percentage of the population had "real" internet access from home (everything was pretty much dial-up and AOL was king). So with a small bit of knowledge about computer communications, etc., the ideas behind networks and connectedness started to make a bit of sense when we covered network & graph theory. At the time is seemed limited to computer networks and not much else.

Now on the other hand... Wow, what a change. With the vast amounts of data available, low-cost high-throughput computing (including distributed architectures), all the knowledge I brain-dumped years ago is actually useful. Social networking analysis, pathogen transmission and a myriad of other fields of study are relying heavily on the mathematics describing networks and providing models for prediction.

Very cool. Almost makes me want to go back to school in the math department... Well, maybe not.

So, as part of the course we've been provided the opportunity to do some of our own network analysis without needing to grind through the math. Good thing; I can't remember how to do any of the calculations. And, yes, it's pretty cool stuff. Being able to install a small software package, download a data set and start displaying relevant information in a short time (a couple of hours) without having to understand the mechanics under the covers is for lack of a better term, liberating. Much like the web analytics we did earlier in the session, the tools available for network analysis provide even a novice powerful information that can be used for making informed decisions. These can be as simple as figuring out who to contact for leads on sales or jobs or figuring out who is the key player responsible for dissemination of bad information.

Looking forward to experimenting with the tools some more to see what other nuggets of information can be found...