Archives

Archives / 2008 / July
  • Agile Development: Warning Signs

    Alok Srivastava has an excellent post discussing agile development and areas that can put agile projects at risk. I'm currently doing clean up on an agile project gone south, and I wholeheartedly agree that the issues he points out should be warning signs if you are considering agile development. That's not to say that agile is bad by any means, just that you should think carefully before you make the jump, especially if your project will have the issues Alok mentions:

  • Making the Possible Impossible

    Have you ever gone to a restraunt with a menu that was just too big? Every once and a while I wind up at a place with a huge menu and it takes forever to choose what kind of food I'm going to eat. That's not a problem when I go to a steak house. When I go to a steak house, I know exactly what I want. A rib-eye medium well with a side of mashed potatoes. Removing options always makes it easier to choose the right thing.

  • NServiceBus = Fail?

    Finally had a chance to dig into the NServiceBus code. My thoughts are here if you care (I'm sure Udi will respond with his thoughts, so comment there instead of here if you think I'm off base):

  • My First Microsoft Interview

    I'm happy in my present situation, but working at Microsoft has always been in the back of my mind. So, when a recruiter for the Business Solutions division tracked me down, I was certainly going to find out more. The project sounded interesting enough, so when he asked if he could take it to the next level and ask some technical questions I said, "why not?" The questions he asked basically ranged from basic stuff everyone should know to basic stuff anyone who got a CS degree should know. I've been writing code just about every day for the past 15 or so years, starting with ASM. When I started out, I had an 8086 Zenith laptop with a CGA monitor that couldn't really do much of anything else. I actually wrote programs for quite some time inside the command line debugger until I managed to find some cheap assembler program at a local computer swapmeet. As a kid, I spent so much time programming that my mom would ground me from the computer, not from going out. My first first fight was with my programming buddy that "stole" my code and changed my copyright with a hex editor (Yeah, I learned that software piracy was a bitch before I could drive). Later, I got a bigger machine and moved on to C and then C++ and did a ton of work with the STL since those were still the days when Windows was still a DOS program :). These days, I write code literally from the time I wake up at 5:30 AM till I sleep (which usually results in far less than 8 hours of sleep). It's not that I have to. I just really enjoy it. I'll hit the clubs or go out on the town every once and a while, but most nights I'd rather be coding. But... I didn't get a CS degree. To the dismay of my teachers who all had their own ideas of what I should do, I was actually going to get a Theology Degree... I never could kick the programming habit though and ended up dropping out after two years to start a consulting company.

  • Protocol Buffers: Google vs. XML

    "Google (or at least some part of it) has now weighed in on the whole XML discussion with the recent release of their "Protocol Buffers" implementation, and, quite naturally, the debates have begun, with all the carefully-weighed logic, respectful discourse, and reasoned analysis that we've come to expect and enjoy from this industry.

  • Events are your Friend

    "Imagine trying to build a desktop application without events. How would you make a button click do what you want? One way would be to open the Button source code and add the code directly.  That has approach has obvious problems, not the least of which is that the behavior of the button click will vary from button to button..."

  • iPhone SDK

    Been playing a bit with the iPhone SDK lately. Fortunately, I bought a MacBook Pro a few months ago (with default boot to Vista since I rarely ever boot into OS X). If I could pick one word to describe the experience it would be "different." The whole Apple/Jobs culture even leaks into the developer platform. They really couldn't just pick a name like "Object" for example as the base class for various objects. Instead, they had to make it NSObject. Why the NS? It stands for Next-Step--which, as you may know, is the OS that Jobs worked on during his time away from Apple. On top of that, you can't just write an application for the iPhone. You have to get on a waiting list and be approved first. That takes about 6 months or so, after which you still don't have any promise that your app can get loaded on any iPhones. After you finish your app, you then have to submit it to Apple, who decides whether or not they want it on their iPhones. That's a hell of a lot of work to do before getting a yes / no answer (not to mention that even if you do get the app in the store, a cut of every sale goes to Apple).

  • Indisposable: WCF Gotcha #1

    When you have the code behind the service ready to go, you deploy it to the server of your choice and are ready to call the service. At this point, you will most likely do one of two things to consume the service: Create a ChannelFactory and reuse your interface, or use the "Add Service Reference..." option inside Visual Studio. Either way you go, you will almost certainly get the next part wrong... even if you know your shit when it comes to the rest of the .NET framework... [1]

  • iServiceOriented.com

    I'm starting up a new blog / website over at www.iserviceoriented.com. If you are considering transitioning over to a service oriented architecture, I'll help you make the jump. I don't have an ESB to sell or a product to muddy up the conversation with, just some practical advice to get you started.