Archive for the ‘Tools’ Category

A New Year’s gift for the easily distracted

I have a confession to make. It’s the New Year, and it’s time for resolutions, and perhaps for being a bit honest with yourself, so I feel among friends making this assertion:

I am easily distracted.

It’s true.  And just between you and me, the Internet is not helping.

Look at Twitter, overflowing with real-time data streams full of people who are way more interesting than me, doing all kinds of fabulous things at the rate of one every three seconds.

Look at aggregation services like Reddit and Digg, and RSS, which brings me more interesting content in a day than I could possibly consume in a week.

Underneath all of it is the Web itself, pages and pages of interesting stuff which is fundamentally NOT WORK. As Paul Graham says, it’s like somebody snuck a TV onto my desk when I wasn’t looking.

So, in an effort to trick myself into completing tasks, and avoiding a spacewalk off into the unrelated, I decided to browse websites on how to become productive. (This is, in itself, unproductive, I know, but one has to start somewhere)

In my travels, I came across this inspired productivity hack from 43 Folders: 10 + 2. It’s based on the notion that you can do 10 minutes of anything. Just 10 minutes. You can do that, right?

The way it works is that you start yourself a  timer, do those 10 minutes of, you know, your job, and then you can take a 2 minute break to do anything you want. Catch up with the tweetstream. Read your RSS. Heaven forbid, you could even go outside, or stretch. Then after those 2 minutes, you return to the task at hand, or if you like, pick another task that you’ve been avoiding and do that for 10 minutes.

Here’s where all those numbers add up — if you follow this method for an hour, you’ll have done 50 minutes of productive work, and spent 10 minutes being distracted. If you’re like me, you’ll find that this compares pretty favourably with an hour spent without the timer.

I couldn’t find a good Windows timer to help with this hack, so I made one for us – you can download it here. It’s a no-frills Windows only timer, that counts to 10 minutes, plays a dinky sound, then counts to 2 minutes, and then starts again. It’s pretty light on features, but if you find you need it to do something extra, let me know — I might be able to update it.

If I’m not too busy completing all my productive work this year, of course. :)

Using the Right Tool for the Job

One day your boss walks into your office. With a sheepish expression on his face, he says, “Um…yeah. We’d like you to dig a hole to China. Here’s your spoon.”

What do you do when your company-provided tools aren't up to the job?

What do you do when your company-provided tools aren't up to the job?

What do you do next? Do you take the spoon and start digging, trusting that the boss knows what he’s doing? Or do you explain that the tool just isn’t up to the task?

If you work in a large organization, you face this choice every day. The tools provided by the IT department are usually of the one-size-fits-all variety. But specialized tasks require specialized tools.

When did the Information Technology department become the Impeding Technology department?

In a misguided attempt to cut costs, many organizations have settled for a standardized office suite and cookie-cutter intranet portal. But if your company trades in information and is staffed with knowledge workers, IT is saving money at the expense of productivity — your productivity.

You were hired for your skills and expertise. If your company forces you to use sub-standard tools, you can’t be effective in your role.

But there are signs that the tide is starting to turn. The Wall Street Journal says it’s time to let knowledge workers pick their tools. More and more companies allow their employees to use tools that operate outside the corporate firewall. And we think there’s hope for desktop and mobile devices as well.

It’s not what you know…

…It’s how many friends you have. Any self respecting Facebook user knows that, right?

And what’s better than collecting loads of friends? Collecting loads of social networks, that’s what.

In the wake of the Microsoft/Facebook story comes Google OpenSocial (launching this week) – a unified accessible interface to a whole collection of information from Orkut, Salesforce, LinkedIn, Ning, Hi5, Plaxo, Friendster, Viadeo and Oracle. (Details from TechCrunch)

The idea being that Google ties all of this related infomation together, and allows developers to create widget style applications that work across multiple social networks, without having to learn a whole new markup language. (OpenSocial uses standard HTML and javascript, unlike the Facebook API).

It’s going to be interesting to see exactly what can be done with this tool – assuming that the host networks will have the final say as to what can and what can’t be built on their platform. More than 7000 Facebook applications have been built since Facebook opened it’s API. (Most of those applications are really silly.)

The fact that at least two of the OpenSocial host networks (SalesForce and LinkedIn) are veritable goldmines of enterprise worthy information should be of note to anyone working on Enterprise 2.0 solutions. (like um.. us!)

And in the middle of it all, Google controls all the data and the network (in a non-evil way, of course…)

This “Everyone Else vs Facebook” approach reminds me a bit of Microsoft’s catchup play for developers in the early 90’s with .NET – “It’s every other language vs Java”.

That one didn’t work out exactly as Microsoft had planned, but it wasn’t exactly a failure – .NET and Java are both alive and well. I suspect something similar will happen here. Assuming that OpenSocial has legs, it seems safe to assume that developers would much rather target multiple platforms than one.

Does this mean they are going to have to standardize (or at least consolidate) identity across multiple hosts? Now that would be really something…

N-Complete

Gordon and I jokingly call infovark an “N-complete” enterprise. We do this for two reasons.

  1. We’re nerds. We think about math stuff like np-complete problems for fun.
  2. We use most of the open source N* tools available today in our software development process. We’re nerds.

This means NUnit, NCover, NDoc, and NAnt. For the non-nerdy, these are frameworks that help developers manage unit tests, determine code coverage for said unit tests, document our code, and automate our build process. We bring all the tools together using SharpDevelop. (Though I do miss Microsoft’s Visual Studio a bit.)

Why use all of these tools? As a small software development shop, the most important thing for us is to manage our time properly. As Joel on Software pointed out, multitasking developers face context switching costs. Revisiting our code after the fact to write automated test cases or add documentation is a huge time-wasting exercise. It’s much better to do these things while we’re down in the weeds, working with the bits and bytes. Having the N* suite running within our IDE makes us much more productive.

We think being our own testers and tech writers gives us better quality code as well. After all, the person writing the code is best equipped to describe what it does and the most likely ways it could break. It makes sense to do these tasks ourselves as long as we can minimize the switching costs.

Our thanks to all the open source developers that worked on these tools. We wouldn’t get far without you. And thanks as well to the FxCop team, whose code security tool is a real godsend. (But couldn’t you guys have named it N-something?)