michaelnygard.com
  • How to become an "architect"
    Posted on January 28, 2007

    Over at The Server Side, there's a discussion about how to become an "architect".  Though TSS comments often turn into a cesspool, I couldn't resist adding my own two cents. I should also add that the title "architect" is vastly overused.  It's tossed around like a job grade on the technical ladder: associate developer, developer, senior developer, architect.  If you talk to a consulting firm, it goes more like: senior consultant (1 - 2 years experience), architect (3 - 5 years experience), senior technical architect (5+ years experience).

    Continue Reading »
  • Planning to Support Operations
    Posted on January 14, 2007

    In 2005, I was on a team doing application development for a system that would be deployed to 600 locations. About half of those locations would not have network connections. We knew right away that deploying our application would be key, particularly since it is a "rich-client" application. (What we used to call a "fat client", before they became cool again.) Deployment had to be done by store associates, not IT.

    Continue Reading »
  • "Us" and "Them"
    Posted on January 2, 2007

    As a consultant, I've joined a lot of projects, usually not right when the team is forming. Over the years, I've developed a few heuristics that tell me a lot about the psychological health of the team. Who lunches together? When someone says "whole team meeting," who is invited? Listen for the "us and them" language. How inclusive is the "us" and who is relegated to "them?" These simple observations speak volumes about the perception of the development team.

    Continue Reading »
  • Inviting Domestic Disaster
    Posted on December 26, 2006

    We had a minor domestic disaster this morning. It's not unusual. With four children, there's always some kind of crisis. Today, I followed a trail of water along the floor to my youngest daughter. She was shaking her "sippy cup" upside down, depositing a full cup of water on the carpet... and on my new digital grand piano. Since the entire purpose of the "sippy cup" is to contain the water, not to spread it around this house, this was perplexing.

    Continue Reading »
  • Book Completed
    Posted on December 13, 2006

    I'm thrilled to report that my book is now out of my hands and into the hands of copy editors and layout artists. It's been a long trip. At the beginning, I had no idea just how much work was needed to write an entire book. I started this project 18 months ago, with a sample chapter, a table of contents, and a proposal. That was a few hundred pages, three titles, and a thousand hours ago.

    Continue Reading »
  • Reflexivity and Introspection
    Posted on October 7, 2006

    A fascinating niche of programming languages consists of those languages which are constructed in themselves. For instance, Squeak is a Smalltalk whose interpreter is written in Squeak. Likewise, the best language for writing a LISP interpreter turns out to be LISP itself. (That one is more like nesting than bootstrapping, but it's closely related.) I think Ruby has enough introspection to be built the same way. Recently, a friend clued me in to PyPy, a Python interpreter written in Python.

    Continue Reading »
  • Education as mental immune system
    Posted on September 25, 2006

    Education and intelligence act like a memetic immune system. For instance, anyone with knowledge of chemistry understands that "binary liquid explosives" are a movie plot, not a security threat. On the other hand, lacking education, TSA officials told a woman in front of me to throw away her Dairy Queen ice cream cones before she could board the plane. Ice cream. How in the hell is anyone supposed to blow up a plane with ice cream?

    Continue Reading »
  • Expressiveness, revisited
    Posted on May 5, 2006

    I previously mused about the expressiveness of Ruby compared to Java. Dion Stewart pointed me toward F-Script, an interpreted, Smalltalk-like scripting language for Mac OS X and Cocoa. In F-Script, invoking a method on every object in an array is built-in syntax. Assuming that updates is an array containing objects that understand the preProcess and postProcess messages. updates preProcess updates postProcess That's it. Iterating over the elements of the collection is automatic.

    Continue Reading »
  • Inviting Disaster
    Posted on January 11, 2006

    I'm reading a fabulous book called "Inviting Disaster", by James R. Chiles. He discusses hundreds of engineering and mechanical disasters. Most of them caused serious loss of life. There are several common themes: 1. Enormously complex systems that react in sometimes unpredictable ways 2. Inadequate testing, training, or preparedness for failures -- particularly for multiple concurrent failures 3. A chain of events leading to the "system fracture". Usually exacerbated by human error 4.

    Continue Reading »
  • New Interview Question
    Posted on December 26, 2005

    So many frameworks... so much alphabet soup on the resumes. Anyone that ever reads The Server Side or Monster.com knows exactly which boxes to hit when they're writing a resume. The recruiters telegraph their needs a mile away. (Usually because they couldn't care less about the differences or similarities between Struts, JSF, WebWork, etc.) As long as the candidate knows how to spell Spring and Hibernate, they'll get submitted to the "preferred vendor" system.

    Continue Reading »
back to top

Page 22 of 26

« Newer | Older »



Powered by Hugo, based on the Er theme.
Copyright (c) 2002 - 2026 Michael T. Nygard