Categories
Uncategorized

N00b Boyfriend

What happens when a girl from a l33t family brings a n00b boy home to meet her parents?

This article also appears in The Adventures of Accordion Guy in the 21st Century.

Categories
Uncategorized

Old IBM Ad: “150 Extra Engineers!”

Alternate titles for this ad: 150 Receding Hairlines! 150 Giant Foreheads!

IBM "Electronic Calculator" ad: "150 Extra Engineers"

Click to see at full size.

Here’s the text of the ad:

150 Extra Engineers

An IBM Electronic Calculator speeds through thousands of intricate computations so quickly that on many complex problems it’s like having 150 EXTRA Engineers.

No longer must valuable engineering personnel…now in critical shortage…spend priceless creative time at routine repetitive figuring.

Thousands of IBM Electronic Business Machines…vital to our nation’s defense…are at work for science, industry and the armed forces, in laboratories, factories and offices, helping to meet urgent demands for greater production.

Categories
Uncategorized

SharePoint: An Opportunity in the Econopocalypse

Diagram showing what SharePoint does: Document management, calendars, surveys and voting, committees and chapters, tasks and projects, intranet/extranet and collaborationSharePoint has always been a tricky thing to describe, but the opening paragraphs from a recent article in the New York Times, Microsoft’s SharePoint Thrives in the Recession, does a pretty decent job:

Hang around at Microsoft’s Redmond, Wash., headquarters for five or ten minutes and someone dressed in khaki pants and a blue shirt is bound to tell you about the wonders of SharePoint — one of the company’s most successful and increasingly controversial lines of software.

Think of SharePoint as the jack-of-all-trades in the business software realm. Companies use it to create Web sites and then manage content for those sites. It can help workers collaborate on projects and documents. And it has a variety of corporate search and business intelligence tools too.

Microsoft wraps all of this software up into a package and sells the bundle at a reasonable price. In fact, the total cost of the bundle often comes in below what specialist companies would charge for a single application in, say, the business intelligence or corporate search fields.

SharePoint development seems to be a field rich with opportunity. The Ignite Your Career webcasts that Microsoft Canada had earlier this year suggested that SharePoint developers are in demand. Close to home, I know Toronto-based developers working on SharePoint projects for Bank of Montreal. The New York Times article reports that Ferrari, Viacom and Starbucks use it for a number of tasks, including the creation of their public-facing websites. Friends of mine in Ottawa report that the Canadian federal government makes heavy use of it. A recent article in O’Reilly Radar bears the title Want A Job? Learn SharePoint, Says Gary Blatt; it reports that the U.S. federal government is chock full of SharePoint projects and not enough developers.

Like Office, SharePoint has grown from a collection of productivity applications into a full-fledged platform, and where there’s a platform on which business and governments run, especially a platform whose purpose is to let people work collaboratively, there’s a developer opportunity. Over the next little while, I’m going to post articles about SharePoint and developing for it, using my connections within both The Empire and the developer community (such as my friends at ObjectSharp) to get more information.

If you’re planning on attending TechDays 2009, Microsoft Canada’s cross-country tour of seven cities in which we talk about getting the most out of the Microsoft Platform and sharpening your skills, you might want to check out the session titled Developing and Consuming Services for SharePoint. Here’s it’s abstract:

The world gets more service-oriented every day, and with that comes the demand to integrate all kinds of services, including those from SharePoint. This session introduces SharePoint as a developer platform and provides an overview of how you can build and deploy custom services with it. The focus will be on developing ASP.NET and Windows Communication Foundation services for SharePoint as well as building a Silverlight client to consume them.

Watch this space for more articles about SharePoint and SharePoint development!

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

Silicon Alley Insider on the King of the Apple Geeks

Screenshot of the "Daing Fireball" blog Silicon Alley Insider states the obvious – at least it’s obvious to Macintosh fans: John Gruber is King of the Apple Geeks.

On the off chance that you hadn’t heard of John before, he’s the one-man force behind Daring Fireball, one of the must-read sites for fans, followers – and yes, even evangelists for the competition — of Apple. He’s been writing the blog since the summer of 2002 and over time has acquired a legion of readers that includes higher-ups at Apple, Inc. His recent article about how Ninjawords, an iPhone dictionary and the latest app to get rejected by Apple’s Kafkaesque approval process was not just spot-on; it also got linked to by a large number of influential tech sites and managed to garner a response from Apple senior VP Phil Schiller, which he published as a follow-up article.

As with any site created by an Apple True Believer, Daring Fireball devotes a number of electrons to taking on The Empire, the most recent set being Microsoft’s Long, Slow Decline, a long but interesting (and also much-linked-to) article on the company’s current state and the challenges it faces. Whereas  lesser, more rabid fanboys — Daniel Eran Dilger of Roughly Drafted, I’m lookin’ right at you – would’ve been content to prematurely dance on the company’s grave, John enumerates the company’s missteps with solid reasoning and soberly (well, mostly soberly – hey, I’m not going to deny him his little bit of glee on behalf of his team). Even when he’s pummelling the organization for whom I work, I have to credit him for going beyond mere tribalism and penning some of the best-thought-out tech articles on the web today.

Why do I read him?

  • For starters, he’s good. I’m working on becoming one of the web’s best writers, and it pays to learn from the pros.
  • It’s also partly out of habit; I was a Mac user prior to my hire as a Microsoft Developer Evangelist.
  • It’s also my job. I do both Microsoft and its customers a disservice by not looking (and learning) outside Microsoft’s walls, especially since I was hired for my outsider’s perspective.
  • It helps me with my job. His blog is practically a laundry list of things I need to focus on.

Here’s a question for which I can’t easily come up with an answer: is there a Jon Gruber analogue in the Windows world? If not an analogue, any close approximations? Let me know in the comments.

Categories
Uncategorized

Lessons from an Air Pump

This article also appears in Canadian Developer Connection.

The Incident

I live in Toronto’s High Park neighbourhood, which puts me at that magical distance where biking downtown takes a half-hour, about as long as public transit. If weather isn’t downright terrible and I don’t have too much to carry – say, laptop, change of clothes and even an accordion — I tend to take my bike.

Cycling is much easier with a pair of properly-inflated tires, so I often make use of the air pump at the gas station near my house:

air_pump_1

Gas stations used to give you air for free, but these days, you have to pay to use an air pump – presumably to cover the cost of their upkeep. At the gas station near my house, a dollar gets you enough time to inflate all the tires on a car, which is plenty of time for a bike’s tires. You can use either a loonie (that’s “dollar coin” to you readers outside Canada) or four quarters.

Take a look at  the coin slots for the air pump at the gas station near my house:

air_pump_2

Although the left and right coin slots are identical in size and appearance, they are for different types of coins:

  • The left slot is marked “dollar coin” and is for loonies (that’s “dollar coins” to you non-Canadian readers) only.
  • The right slot is marked “4 quarters” and is for quarters only.

It’s the worst combination of usability factors: identical slots that serve different purposes.

I reached into my pocket and pulled out some quarters. Without thinking, I put quarter in the dollar coin slot, realizing my mistake a little too late. The machine accepted the coin and didn’t route it to the “coin return” compartment. In fact, the machine didn’t even have a coin return compartment.

I wondered what would happen if I put three more quarters in the dollar coin slot. After all, the sticker might be wrong.. It wasn’t – I put in the remaining quarters and the air pump remained off. Luckily, I had four more quarters. I put those in the quarter slot and the machine came to life, providing compressed air for my tires.

Out of principle, I went to the gas station attendant and asked for the dollar I’d lost to the air pump back. He was resistant at first, but as soon as I said “Geez, you guys are a rip-off. I should post that on Twitter,” he quickly capitulated and reimbursed me.

The Lessons

Because I am in the business of talking about software development and design, I was inspired to turn the experience into a blog article (eight years of blogging will do that). I took photos of the air pump and derived two lessons.

Lesson One: Interface Matters!

If two things expect different input, they should appear different. The coin slots on the air pump are the same size. Although the sticker on the machine has markings that say that the left slot is for loonies and the right slot is for quarters, those markings are almost identical. Possible solutions include:

  • Differently-sized coin slots: a larger slot for loonies, a smaller slot for quarters. Older coin-operated machines made use of these:

old_school_coin_slot

  • A new sticker, perhaps with some colour coding to make it very clear that each coin slot expects very different kinds of coins. 

    new_coin_slot_sticker

Be forgiving of user mistakes:

  • Both slots should accept either loonies or quarters. This solution is even better than differently-size coin slots or a new sticker. The constraint that one slot is for loonies and the other for quarters is a convenience for the manufacturer, not the user. Go the extra mile – after all, coin recognition technology isn’t anything new or hard to get.

    Most coin-operated machines that provide more than one coin slot, such as videogames and pinball machines at arcades, don’t “care” which one you use. Either coin slot will do, as long as you provide enough coins:

    arcade_coin_slot

  • There should be a coin return slot. The current design simply takes your money and doesn’t let you cancel the transaction.

Simplify! Once you put in a coin slot that accepts loonies and quarters, there’s no need for a second coin slot – a single one will do.

The lesson of “interface matters” doesn’t just apply to user interface; they’re just as applicable to application interfaces, from method signatures to whole APIs. It pays to be clear and comprehensible.

Lesson Two: Social Software Matters (at least to some people)

The second lesson? Never underestimate the power of social networking software. The gas station attendant wouldn’t budge, but I saw him constantly checking his smartphone and guessed that he might be into Twitter.

Categories
Uncategorized

Windows 7 Developer Resources

Screenshot of the Windows 7 Training Kit

Over at Canadian Developer Connection, my friend and co-evangelist John Bristowe has an article on Develeoper Resources for Getting Started with Windows 7 RTM.

Categories
Uncategorized

My Question About the Twitter/Facebook DDOSing

Matt Damon as Jason Bourne

When I read that Twitter and Facebook were attacked for the sake of targeting one guy, my first thought was “Who is this guy, Jason Bourne?”