Category: development

  • Tips for Young Developers

    This has been a crazy week. I’m tech leading a huge project with a crazy hard deadline, and to be perfectly honest, most of the stuff I’ve tech lead, while large projects, have had fairly small teams and dealt with systems I knew inside and out (it was all in the AOL Search days). This is a pretty large team, and we have to deal with systems I’ve never even heard of before. What does all this mean? It means that I haven’t worked less than a 12 hour day this week, and one day, I actually worked a 20 hour day.\
    In the midst of the 20 hour day, I realized that we have a bunch of new folks on the team, and I came up with a list of some of the hard non-technical lessons it took failing a couple (OK, several) times to learn. These are painful lessons, and I figured I would do my best to save them the trouble. The whole e-mail got a little maudlin at the end (I think I sent it in hour 18 of the 20 hour marathon), but I figured the list might be worth sharing with the world. Enjoy. I’d love to hear your tips for surviving in development (web or otherwise) too, because I know this isn’t all of them.

    1. If the process is slowing you down and isn’t helping you, throw it out. (one small condition here… under normal circumstances, reasonable process is a good thing. under a crunch, process should be curtailed where possible)
    2. If you’re stuck, scream until someone comes to help. And if that person can’t help you, scream until you get the help you need.
    3. If you get stuck, start screaming early. We don’t have time to spin our wheels. It’s most likely not your fault that you’re stuck. Asking questions earlier is better than asking questions after it’s already too late. Also, ask questions until it makes sense. If you don’t get it, it’s probably because the person explaining is doing something wrong. Make them explain it till they get it right.
    4. If you don’t know, don’t guess. Disinformation is poison, and confusion leads to bad decisions. There’s nothing wrong with telling someone that you’ll get back to them when you know the answer.
    5. If you commit to a date, don’t miss it. If you think you might miss it, tell everyone and tell them as soon as you think you’ll miss the date.
    6. Over-communicate. I’d rather get more mail and know what’s going on with everything than have no idea and have to track people down. Scrum is a good start… oh yeah… think about what you’re going to say at scrum before you get there. Write it down and bring it with you, and then take notes if you think of something else.
    7. Get out of your chair and go talk to people, or pick up the phone. E-mail and IM are great, but you can resolve stuff face to face faster, even if you’re shy.\
      I know, you’d think that this stuff is pretty self-evident – but it’s not. Geeks are proud. We don’t like admitting we don’t know the answers, and most of us don’t like asking for help. If you have a geek in your life, you know this. It’s something we have to get over. It takes time – be patient with us.\
      Got more? What else belongs on the list?
  • Slow Recovery

    I’m slowly getting better. I’m still congested, but at least I’m off the steroids. I’ve still got the awesome horse decongestants and I still sound pretty bad. But, at least I feel well enough to go to work and actually contribute.\
    Today, I did a favor for my old manager and did training for some of his new folks. We talked about standards-based development, markup, CSS and DOM scripting. It was fun going through the old presentations again, but it was obvious to me how rusty I am with the whole teaching thing. There was a time last year when I had those presentations down and could go through them and the explanations were all practiced and came out fluidly. Today, not so much. I blame the congestion and the drugs… but I’m just out of practice. It was still fun, even though now I’ve almost completely lost my voice.\
    This weekend is all about recovery… soup, sleep, stupid movies and football. Oh yeah, and I updated the blogroll today. It’s much bigger than it was before, and is still an export of my feeds from NetNewsWire (minus all the Flickr feeds, wikis, work and my stuff). So, it’s actually a pretty decent representation of what I follow.

  • Mashup University Videos Online

    The videos from Mashup Camp are online now. Mine’s near the bottom of the page. You can hear me fly through the demo and hear my jet-lagged explanation of microformats. Good times.

  • Highlights in an Otherwise Disappointing Day

    I’ve been sick all week. It finally got bad enough that I went to the doctor today and… I’ve got bronchitis. Hooray! I’ve got steroids and an industrial-strength decongestant to try to get the gunk out of my chest. I’ve been exhausted and in pain all week. I’m still exhausted and still in pain (it’s amazing how painful coughing gets after a while). The one bright spot? I got to drive my car to the doctor’s office, and it was great.\
    The only other bright spot was that Jen finally has her own laptop, and she’s running linux! It’s a swanky used IBM ThinkPad T40 from Ombligo. It’s now running Ubuntu and she’s happily surfing, e-mailing and playing with background images. The install was painfully easy. The only weird part was getting the wi-fi working, and getting it to stay working after a reboot. But, even after fixing that, the total install, install updates, install missing software (RSS reader, Thunderbird, blog client) and fixing the wi-fi took about an hour (off and on between coughing fits and naps).\
    Gotta look for the little bright spots.

  • Dreams

    You know something is wrong when you can’t get to sleep because you can’t stop thinking about work, and then when you do sleep, you have nightmares about work that wake you up. Just saying… something’s wrong when that happens.\
    Oops: I upgraded to the new version of Movable Type last night and forgot to rename the comments script. It’s fixed now, so comments should work (not saying you’d want to leave a comment, but if you did, they work now).

  • On Modules and Widgets

    I got a couple comments on yesterday’s post about ModuleT and widgets. I don’t post often (another vote against splitting my personal blog, I guess), but all the details about AIM Pages, our microformat or other thoughts on widgets will be over on the Alpha Blog. That’s where Joe, Shawn and I talk about module stuff. We’ve been so busy lately that we haven’t posted as much as we should, but there’s a lot to talk about, so keep your eyes peeled for news.

  • To Fork or Not to Fork

    I’ve been working on a new blog and I keep running into the same question, so I figure I’ll pose it to you, my loyal readers (umm, I think, I actually have no idea who reads my blog and I’m OK with that). Should I start a new blog for just technical nerdy web bits or keep everything together? I’ve been itching to write longer articles on topics and I feel limited by the current layout (which I love for entirely different reasons and don’t see changing in the near future). A long article about CSS doesn’t really fit in half a page.\
    What do you think? Should I start a new blog or just tweak this one? Do you read this blog because you’re my friend and we know each other in “meatspace”, or for some other reason?

  • E-Mail Management Tip: Unread Messages Smart Mailbox

    I get a lot of mail. When things are humming, on the order of two hundred to three hundred a day. It’s a little slower now because a lot of people are on vacation, but not much. How to deal with all of it? It’s not easy, and it takes a lot of time, especially if I miss a day.\
    Since I started using Apple Mail (Mail.app for those in the know), I’ve fallen in love with Smart Mailboxes. On top of the 30-40 filters I have to shunt messages into appropriate folders based on listserv or project, I have a couple smart mailboxes, the most important being Unread Messages. I created a new Smart Mailbox with a couple parameters: Message is Unread, and not in my outbox (or various other AOL IMAP folders I don’t care about like “Spam”).\
    Having a single place for all my unread mail that collapses to empty when I’m done, and is sorted by thread, has saved me all kinds of time. I can quickly scan threads, making sure I only respond to the last message (or sometimes only read the last thread because it should have the whole conversation in it) and can take care of things right then, or flag them for later (that’s another smart box).\
    It makes mail more like reading feeds, which makes me happy, and might make you happy too.

  • Keeping Track of the Big Idea

    I was playing around with my Dreamhost control panel recently and noticed that there was a new one-click install for activeCollab. Being the curious sort that I am, I figured, “I’ve got unlimited domains, and practically unlimited disk space, what’s one more?” and installed it. It’s great. It’s still pre-1.0, but there are enough features, and it’s so well designed, that it’s very usable. I’ve started using it to keep track of the side project so when I’m bored and need something to tinker with, I can tinker towards something instead of just watching TV.\
    Today, I added all the stuff Jen wants to do to the house (not surprisingly, that list is a lot bigger). I now get what all the GTD‘ers are talking about. It makes me feel a whole lot better seeing everything in sections, with proposed due dates and milestones. It now doesn’t seem impossible. There’s a lot to do, but with my handy-dandy copy of Home Improvement for Dummies, I think I can do a lot of it myself.\
    So, if you have Dreamhost, give it a shot the one-click way. If you don’t, go download it and give it a shot (umm, you should be fairly comfortable installing things on your webserver and setting up databases… if not, go get a Dreamhost account – can you tell I like Dreamhost?).\
    If you don’t have an account and want one, if you enter the promo code lawver_dreamhost when you sign up, you’ll get a 10% discount on any of the level one or two accounts. Why? Because I love Dreamhost and I think you will too.\
    Yes, I know this post feels kind of spammy, but both things are really cool, and they both make me happy.

  • Wading Through The Inbox Sea

    The final tally was 1,100 unread e-mails this morning. I’m a quarter of the way through, and it’s kind of shocking how many of them are completely useless and not worth reading.