Leveraging Model Driven Development
Achieving efficiency in the software development process is one of the key motivators every team should strive for. Efficiency can be measured in a variety of ways. The most obvious measurements are cost, project timeline, and the feature set that can be implemented given the first two. In a sense, it boils down to the old project triangle (remember: pick any two of the criteria).
In essence, there is a trade-off between quality, timeline, and cost. For example, reducing the timeline at equal costs reduces quality just as implementing at a faster pace reduces quality. Yet I argue that the triangle approach is not necessarily valid anymore. Traditional development processes have clearly shown that just enhancing the timeline on a project to put special care into the design does not actually lead to higher quality software – quite the contrary.
Yet more dimensions are at play. The number of defects (“bugs”) found in a particular software directly translate into cost and time, especially when found late in development cycle, creating a dependency between testing quality, time, and cost. Inefficient software design increases the cost of introducing new functionality as requirements change and a lack of refactoring capabilities sooner or later lead to the need for a full re-development. The problems are amplified when the software spans multiple independent subsystems, which is often the case in modern web architectures which span across content management systems, web services, search engines, commerce engines, custom web applications, etc.
Agile development methodologies have tackled many of these problems in great detail through test-driven development (TDD) and time-boxed iterative release cycles. This article discusses a number of tactics you can deploy in addition to what you find in your agile toolkit: To speed up development and tackle complex problems with smaller teams in less time leveraging the key ideas of Model-Driven-Development (MDD).
Read more
Crap, my company might be for up grabs (updated)
According to the Media Bistro:
Avenue A|Razorfish could be up for sale by Microsoft, a spy tells us, possibly to WPP. From the beginning of the relationship, AA|RF has been an odd fit for Microsoft, and based on a few strong indicators, we surmise a sell off before too long.
When you’re spending $6 billion to pick up a company like Redmond, it makes sense to get as much for your money as possible. That seems to be what Microsoft was thinking when they kept AA|RF — but a year later the agency is broadening its horizons, expanding services to “a media and entertainment consulting practice with 200 staffers in New York, L.A. and San Francisco,” according to Silicon Alley Insider.
More after the jump.
Internally, many believe that Microsoft never planned to keep the agency within its roster. For starters, we’ve learned that AA|RF employees haven’t been switched to Microsoft benefits.
Also, the new SF offices are “oddly configured to fit WPP standards, a radical change from the fun, bigger spaces of the old AA/RF office.” I guess you’d have to work at WPP to know exactly what that means — but it sounds as though AA|RF has been told to keep it in its pants if it wants to marry a nice girl one day.
One final oddity, SF based employees were told not to order “new business cards printed with the new office address until future notice.”
Update: I think this is a total joke. They’re enabling the Microsoft key card access in our building next Tuesday :) And, of course, Microsoft has actually upheld their promise to keep us at “arms-length”, i.e. still use whatever technology we see fit for exceeding the client’s needs.
Interacting with Holograms
We’ve had a multi-touch Surface device at work for a while now and built a few neat prototypes with it. But this multi-touch emm multi-grab hologram looks way cooler. The demonstration shows a man interacting with holographic images projected before him, moving them around and resizing them. It’s only sort of like the Minority Report display, which used hand movements to control elements on a screen.
Impact of Green Computing
I found an interesting article linked off of Slashdot. As an technology architect I’m very familiar with load balancing strategies and round-robins, but I’ve admittedly never thought about the impact of the load balancing strategy onto power consumption.
It’s very obvious though, by evenly distributing load across servers you end up with many servers with medium load. By assigning more load to an active cluster of servers, a smaller set of stand-by servers could shut down into power saving mode.
That also gives a new meaning to the unfortunate “let’s throw more hardware at it” mentality. Next time remember to bring up carbon emissions when trying to sell a client on spending a little more time on code optimization.
Anyhow, check out the whitepaper right here.
New @Work Section
I finally uploaded a more detailed, more fun version of my resume, the @work section of this new site.
