More Noise?

January 30, 2007

Last week Mike Vizdos wrote an article at Implementing that had me scratching my head a little. In this article Mike was arguing that Silence is a symptom of poor communication, and that when team members have conversations over messenger, those that would gain collateral information from the conversation would be shut out from such juicy bits.

One of my colleagues once walked into a room with a new team. When he told me about it, he said something along the lines of, “It was so quiet you could hear the waterfall.”

Think about that last statement for a moment. I’ll stick around.

Welcome back. Good thought break? Hope so.

When *I* hear this statement, I realize a team is probably not working to its full potential.

While not the Uber scrum master Mike is, I don’t think he understands the psychologies of programmers to realize that ambient conversations are going to murder their performance and concentration. When I initiate a conversation with a person over IM that is in the same office, it gives them the ability to multi-task and not be thrown off their process completely.

I’d basicly equate this to trying to program with the TV on. Some of us can do it, some of us can’t, but nobody is as productive with it on, as with it off.

A lot of the rules of Scrum are really important, transparency between client and team, team and scrum master, team and team are super important, but were not the Borg. And there are only so many hits performance can take in the name of transparency before Scrum starts to become a hindrance.

Long live IM!


Javascript Singleton Part II

January 27, 2007

So I wrote that Singleton post a few weeks ago, and what it really turned into is how to initialize Static Properties. Though calling it a Singleton post really makes you look kind of silly, since its a piss poor example of that.

Here is the Class Diagram from Wikipedia for the Singleton Pattern


To break that down, we have a Public Instance Function that retrieves the singleton instance, and a private constructor so the object can only create itself.

In the example I gave earlier, you can’t have a private constructor, and you can still call the public constructor again after the singleton has been defined. I was really excited to see that the new Prototype 1.5 library that was released (maybe the old one too, I’m just starting to get into it) contains some classes such as the Position class that have no public constructor, and are available without having to construct them initally.

How did they do this I wondered. A quick dig into the library shows that Prototype just uses the inline object syntax, which makes the Position class just an object instance, which of course has no constructor.

var Position = { “Methods” : function() { /* */ } }

I really like this a lot better, and I’ll probably be utilizing it a bit more in the library for our companies product. I’d love to see more libraries out there that you can include and you would get these specialized functional classes. Prototype’s Position is really helpful, what else could we want?

Programming, Diet and you.

January 13, 2007

So like many, I have a New Years resolution to get healthier this year. Being a programmer who sits on his butt all day and my only joy (other then my glorious job!) is a social hour with good food and great company. I can’t state enough how much fun it is to wander down to the International District during lunch to get some authentic Japanese food. But, now I have to put all that in the past, this year I’m eating to live, not living to eat. Here are my plans.

  1. Bring food into the office.
    Besides saving a butt-load of money, this allow me to continue to work uninterrupted during the middle of the day.
  2. Small Portions
    I’m looking to be able to take breaks every other hour, and eat a little something. The most important thing I can do is to avoid that one large meal at 12, and to constantly have my system processing. I don’t want long breaks either, getting my food, some water sitting down, and eating should take 10 minutes, at which point I would imagine being back to work.
  3. Nothing Complex
    The more attention I have to pay to something, the less attention I can pay to something else. Or of course, the less likely I am to do it, which is even worse. So what I’m looking for this year, is a simple solution that I can just throw together, and don’t have to plan to far in advance for. I’m definitely looking to avoid spending all night cooking, even if it is one night a week for the whole week.

So with that in mind, here is a breakdown of a typical day and the meals I expect.

  • Light breakfast
  • Lunch – Every 3 hours
    • Protein
    • 3-4 Slices of Turkey/Ham from the Deli
    • Cottage Cheese
    • Leftovers from some meal I had earlier
    • Carb
    • Fruit, Salad, or Yogurt
    • Healthy Fats
    • Walnuts
  • Constantly throughout the day
    • Water
    • Snacking on Walnuts
    • Green tea

I’m adding walnuts to my diet because it was on this list of superfoods I read. The hardest part of this, is saying no to my co-workers when they want to go out. I kinda feel bad, its not that I don’t want to, I just have terrible discipline when it comes to saying no to a menu.

On top of this, I’m going to keep doing my usually extra curricular activities after work, which include Karate, Soccer, Flag Football, Softball, and Running with my Girlfriend.

How do you deal with eating healthy while being a programmer? Got any suggestions, please share.

Script signatures

January 8, 2007

If you view enough of my Javascript, you’ll notice, I like to comment my code a little differently then the other developers at our company.

My main purpose of doing this is to track comments that just I make. I also want to be sure that I did or did not perform any working a certain area. Or to just make comments to myself. I’ve seen comments like, // Edited by Bill Gates 10-20-2003: I fixed a bug here, and yes those serve the same purpose, they are even more descriptive, but they how many of you do that currently? Source control will tell me when a changed occurred and who fixed it, I’m mainly worried about my own train of thought, and notes.

Here are the signatures I use.

//— Generic comments.

//# Todo comments

I don’t have a signature for /* */ style comments, and the Todo comments are for NON crucial todo tasks only. A good old / / TODO: still is king for those.

For those of you with no Imagination, here are some for you guys to pick from.

//> Whats this supposed to do?

//\\ My little house here says, this code rules!

//oo I just infinitely commented my code!

//=D Smile! This code just took a picture of you!

If you adopt a comment signature, post!, share!

Javascript Singleton using static properties

January 8, 2007

This blog has moved. You can read this post here.

What I’m reading

January 1, 2007

Its my New Years weekend vacation and I’m reading reading these juicy programming articles. Beware, full of naughty goodness.

AJAX Patterns – All about AJAX, quite helpfull.

43 Folders Wiki – Productivity wiki for the software development field.

Reflector Addins – Code Generation, Code Coverage, Code Graphs, man look at them all.

The Peoples Toolbox – Usefull tools for developers

0Rand 1, 0Rand 2 – Two great articles by this guy, Article 1, debuging with Reflector and Visual Studio, debug lower level components you don’t have source code for. Article two, debunking my statements that us developers need offices to be more productive.

WPF versus WPF/E – Interesting comparison with some sample code.

The Dojo Toolkit in Practice – Intro to Dojo

Superfoods everyone needs – Eat healthy!