Why did I start this blog?: See here.
What is “I built his cage” from?: It is a quote from the seminal cut-scene of the greatest computer game of all time: Doom 3
(it’s about to go down)
What does “MoffDub” mean?: MOFW = Man Of Few Words = nickname my seventh grade history teacher gave me. Ironically, I am now starting a blog.
Education: M.S. in Computer Science, B.S. in Computer Science, Minor in Math expected next month. University shall remain unnamed to protect this blog from becoming a diatribe against said university.
Current machine specs:
University-issued HP Compaq nx7000
Pentium M processor
512 MB RAM
60 GB HD
Still works after a motherboard replacement
Tax-return-purchased HP Compaq dv6253
Intel Core 2 Duo processor
2 GB RAM
Dual boots Vista and OpenSUSE
120 GB HD
Vista has its problems, but I haven’t run into a fatal problem yet. I don’t nearly use the OpenSUSE partition as much as I should
Databases: SQL Server, MySQL, MS Access
Employment: about a year and a half of software development co-ops, a year of part-time, and starting in July, full time -
- Large medical company (NJ, summer 2004): first half I worked as a code documentation monkey, second half was spent on trivial-yet-interesting feature additions. Codebase was in C++/MFC.
- Large shipping company (NY, spring 2005, winter 2005): learned what a database was, then used Microsoft Access + VBA to create “reporting applications”. Most projects were small in scope (limited to less than 10 users). Looking back, some of the potentially large projects failed due to my ignorance of their scope and lack of engineering knowledge.
- Same large shipping company ( spring 2007 to spring 2008 ): this stint at the same company was as a part-time one-man software engineering wrecking crew. I was infinitely wiser, and it paid off because I was given The Project: a system to be used by 400 people in 200 locations. Written in VB.NET using DDD so the business guys could understand it.
Since I was there from the sketches on the back of the napkins to post-deployment feature additions, I consider this to be my formative experience in software engineering. The Project will be the primary initial focus of this blog. It was a concept at this company for years, and already weathered one failed implementation attempt.
- Financial company (NJ, summer 2006): nothing much to say here. Typical first-release EJB project. I tested and added features. They weren’t expecting to have a co-op working for them so I had a lot of down time.
- Avionics company (NJ, spring 2007): dealt with C/C++ in embedded systems. It was pretty interesting and provided some engineering lessons on how to deal with closed-source COTS.
- Large financial company (PA, July 2008 to present): I was told during the interviews that I’d be dealing with Java Server Faces
Cities: San Diego, CA born and raised, Hoboken, NJ / Manhattan for college, next month West Chester, PA / Philadelphia, PA.
Shows: Seinfeld, Frasier, Family Guy, The Office, Everybody Loves Raymond, The Apprentice
Preferred music type: Rap
Movies: Mission To Mars, Red Planet, Office Space, I Robot, I Am Legend, The Truman Show, Wedding Crashers, Men In Black, Night At The Roxbury
Philosophical movements: conservatism, existentialism
Software influences: Eric Evans, Martin Fowler, Jimmy Nilsson, Fred Brooks, Dijkstra
Physical activities: Tang Soo Do for 15 years, racquetball, squash, tennis
Book that changed the way I think about software: Domain Driven Design by Eric Evans
Book I’m reading right now: Applying Domain Driven Design and Patterns: With Examples in C# and .NET by Jimmy Nilsson
Favorite Programming Quotes:
“The programmer, who needs clarity, who must talk all day to a machine that demands declarations, hunkers down into a low-grade annoyance. It is here that the stereotype of the programmer, sitting in a dim room, growling from behind Coke cans, has its origins. The disorder of the desk, the floor; the yellow Post-It notes everywhere; the whiteboards covered with scrawl: all this is the outward manifestation of the messiness of human thought. The messiness cannot go into the program; it piles up around the programmer.“ (Ellen Ullman)
“YOU are the Coding Horror. The minute you realize that, you’ve crossed the threshold from being an amateur software developer into the realm of the professionals. Half of being a good, competent software developer is realizing that you’re going to make tons of mistakes. You will be your own worst enemy almost all the time. It’s a lifestyle. You’re living it right now. You, me, all of us. The problems start with us. We’re all coding horrors.“ (Jeff Atwood)
“Mostly, when you see programmers, they aren’t doing anything. One of the attractive things about programmers is that you cannot tell whether or not they are working simply by looking at them. Very often they’re sitting there seemingly drinking coffee and gossiping, or just staring into space. What the programmer is trying to do is get a handle on all the individual and unrelated ideas that are scampering around in his head.“ (Charles M Strauss)
All very true.