Grad School, Spring 2009

As I am approaching the half-way point in my first semester of grad school, I thought I would jot down my impressions of the classes I am taking...

CS525 Advanced Database Organization

The semester long goal is to learn how to create a basic database engine in C/C++. After working in Ruby for the past couple years, going back to C++ was a kick in the head... Segmentation Faults and Bus Errors, pointer scope issues, lack of built in regular expression support... it took some time getting reacquainted. The class consists of three projects. The first project involved getting the system up and running: query processing and parsing, implementing a buffer manager using least-recently used replacement strategy, and implementing a storage manager that worked with 48-byte blocks. The second project was just announced and will add on B+ Tree indexing. Definitely a class worth taking to understand how and why databases work.

CS536 Science of Programming

This course focuses on reasoning about programs in a formally with rigid syntax and semantics. Basically, transform programs into a mathematical formula using propositional and predicate logic and correctness triples to ensure the program does what it says it will.

CS549 Cryptology and Network Security

So far, this class is a LOT of math. Number theory and modular arithmetic. We are starting to get into the history of cryptology, with mono- and poly-alphabetic ciphers, mechanical rotors, etc, the stuff I'm really interested in. Soon we will get into the details on why current methods work from message authentication to hash functions and secret sharing. Our programming project for this class is to implement either the RSA or DSA digital signature algorithm.

CS586 Software System Architecture

This class focuses on using high-level design pattern to better understand and analyze a system on a higher level of abstraction. Most of the class thus far has been on object-oriented programming and design talking about the observer pattern, state pattern, adapter pattern, etc. We have just begun talking about architectural patterns, starting off with one I am very familiar with, the MVC (Model-View-Controller) pattern.

So, that's what I'm taking this semester. I've been trying to be a better student than I was as an undergrad, going to and paying attention in all of my classes and trying not to procrastinate until the last minute. This mainly involves leaving my laptop turned off during class :-)

Costa Rica (22-26 March 2006)

We had a wonderful time in Costa Rica. The Tortuga Island cruise was great! We got to go snorkeling and see sea snakes, sea stars, and all sorts of colorful fish. The island was lined with palm trees up and down the coast and we got to enjoy lunch with a live band. Hotel Villa Calatas was unbelievable! The food was great, their private rocky beach was full of life (hundreds of crabs, snails, and little fish), and the amphitheater had the most amazing view of the country. Although we didn't get to go up to Arenal Volcano, we did get to walk over the remains of the 1992 eruption and see lava rocks skidding down the side of the volcano glowing red and throwing up debris. We did not get to spend that much time at the Tabacon Hot Springs Resort and Spa, but sharing the hot springs with iguanas and other little lizards on the morning of our departure was a thrilling experience. I can't wait to go back!

If you want to look through all of the photos we took in Costa Rica at your own pace, take a look at my Costa Rica Photo Album.

Going to Grad School at IIT

Starting next week, I will be a full time graduate student at IIT! I'm going back to school to get my Professional Master's in Computer Science with a Specialization in Software Engineering. An unfortunate turn of events at work kinda forced me to figure out the next step in my left. After a lot of thought, the best option for me at this time is going back to school. I want to thank all of the people who have helped me get into school: Scott, Jeff, and Terry for writing letters of recommendation and Pam, Terry, and Steph for reviewing my professional statement. Thanks to my family and friends for their support as I figured out what to do next.

For anyone who cares to see it and as a reminder to myself, here is my professional statement:

Since graduating with honors from IIT's Computer Science department in December 2005, I have spent the last three years practicing what I've learned as a quality assurance engineer, web developer, and software engineer. In order to further my professional development career, I would like to continue my education with a specialization in software engineering.

The use of computers and electronics to augment learning in fast-paced, high-performance activities is an area I would like to pioneer. As a recently licensed skydiver, I have seen first-hand the need for such technology to insure the safety of beginners and can envision future professionals using training software to increase their performance potential. By applying my computer science knowledge to my extracurricular activities and starting a company to develop specialized training software, I believe I can make my greatest contribution to the communities of which I am a part.

When it comes to computer science and programming, I have always had a curious nature. During my undergraduate career I made it a priority to expose myself to as many topics in computer science as I could. From intelligent text analysis and network performance to information security, I was involved in a number of cutting-edge classes that have since found their way into the standard computer science curriculum. Since graduating, I have continued to satisfy my intellectual curiosity through conferences, books, and training seminars. My work in the ever-changing web development environment during the past few years exemplifies my desire to learn by having required me to keep up-to-date with relevant innovations and practices in the field. The collaborative environments I have worked in have not only given me the opportunity to gain new insight into the technological advancements in the field, but to teach and mentor others as well.

I will always see myself as a student of technology, whether in the classroom or in my profession. Attaining a technical lead position in a high-tech startup company is the next goal I have set for myself. Becoming a technical lead in the software industry requires a passion for learning and the confidence to execute challenging decisions. That confidence comes from experience in the field as well as an understanding of the theory and principles underlying each option. With a focus on results and adaptability, the problem solving and continued education environment of a startup company is an area in which I feel I can excel.

With IIT's professional master's program, the education that I receive will go a long way in helping me achieve both my short term and long term career goals.

Recipe: Oreo Balls

While we were up in Minnesota for Christmas, Steph's sister Megan made Oreo Balls for a family Christmas party. They were delicious! So good, that Steph and I attempted to make our own. After a couple of tries to melt chocolate, they came out well.

The recipe for Oreo balls is pretty basic, here is how we made ours:

Ingredients

  • 1 package of Oreo
  • 1 (8 oz) package of Cream Cheese
  • 1 package of Milk Chocolate Chips
  • 1 package of White Chocolate Chips
  • 1 tsp of Vegetable Oil

Directions

  1. In a mixing bowl, crush the package of Oreo until you can't stand it anymore. Ideally, there should be no big chunks.
  2. Slowly mix in the package of cream cheese.
  3. Roll chunks of Oreo mix into balls, cool for 1 hour.
  4. Slowly melt 3/4 package of chocolate in the microwave. Microwave on medium power for 30 second intervals, stirring between each interval. When most of the chocolate begins to melt, add about 1 tsp of vegetable oil to thin out the chocolate. Dunk half of the Oreo balls you made into the chocolate, covering them completely. Set aside to cool, and repeat with the other package of chocolate and the other half of your Oreo balls.
  5. Melt the remaining chocolate in the microwave and drizzle over Oreo balls.
  6. Chill and enjoy! Goes great with a nice tall glass of milk :-)

New Year's In Arizona

Stephanie and I had a good time in Arizona for New Year's. We arrived in Arizona on New Year's Eve leaving a cold and snowy Chicago behind. We spent New Year's Eve at my parents' house with some of their friends, drinking and playing board games. The Winter Classic in hockey this year was held in my home town at Wrigley Field, unfortunately the Chicago Blackhawks couldn't pull off a victory. My sister and her family came into Arizona on Friday. After they arrived, we spent the day climbing Lookout Mountain and while the rest of my family went to see ZooLights at the Phoenix Zoo, Steph and I took Peanut home and watched Burn After Reading. On Saturday night, we had a tattoo party at my parents' house. I went first, getting a skydiving tattoo (an 8-way Vertical Mixed Star) around my ankle; my dad got a logo of the Chicago Cubs on the side of his leg; and Stephanie finished off the night with a cluster of stars from her shoulder down to her side. On our last day in town, we headed south to Eloy to go to Skydive Arizona (and SkyVenture Arizona). Unfortunately, Sunday turned out to be the only day when it was rainy with a sky-full of clouds. Due to the weather, I was out a skydive, and SkyVenture was completely booked for the day, so the trip was a bust. We ended up heading over to a bowling alley and playing a few games before hopping a midnight flight back to Chicago. Overall, it was a good trip. It was nice to see my family again, and even though I missed out on a skydive, I did get my seventh tattoo, so all is well.