Archive

Posts Tagged ‘Microsoft’

Go-Kart Racing at Work

March 11th, 2010

Last week we went racing go-karts for work, because, you know, go-kart racing is what makes great software teams great.

We went to FastKarts in Salt Lake City.  Well, West Valley, actually.  When we got there, we sprinted inside the building as fast as possible, because we were in West Valley and didn’t want to get mugged, or killed in a drive-by shooting, or something.  Once we got inside, there it was, hanging from the ceiling:  A sweet 250cc liquid-cooled race-ready shifter kart.  Something that looked like this.  I couldn’t wait to get in.

Race-ready shifter kart. Image courtesy autoblog.com.

Oddly, this was not the kind of kart we were allowed to drive.  Instead, we were allowed to race some little 5 hp jobs.  They’ll do maybe 40 mph if you have enough of a run, but they aren’t exactly fast.

Still, it was a dang good time.  More than that, in fact.  I have wanted to race go-karts for years, so this was literally a dream come true for me.

Some of the rules that I got a kick out of:

  • No Bumping. Surely you cannot expect 15 people to hop into a racing kart, even a 5 hp racing kart, for the first time, tell them to race each other, and not have anyone bump into anyone else.  I tried really hard not to hit people, but sometimes I just could not help it.
  • Watch for the caution lights. When I am racing down the straightaway trying to outbrake someone into the corner, the last thing on my mind is to look to see if the caution lights are flashing.

Watching the enforcement of these rules was an interesting study in human behavior.  Here you have a bunch of skilled professionals from Microsoft reserving the kart racing facility for 90 minutes.  Running the facility are, um, people with perhaps less education, shall I say.  They sure seemed to enjoy the power trip every time someone would break the rules and they had an opportunity to really yell at the highly skilled white-collar professionals and put us in our place.  Surely they don’t realize how transparent this is.

Despite this it was great fun.  In my first race, I started somewhere around tenth or twelfth.  I got a good jump on everyone when the green flag waved, though, and I passed two cars before the first turn.  By the end of the 20 minute race I had passed all but two people.

Obviously, my excellent racing skill that was manifesting itself was due to countless hours of playing Project Gotham and Forza Motorsport, as well as years and years of detailed study of racing events both live and televised.  I did not have the fastest time, but obviously that was because I was coming through traffic the entire race.

Obviously.

So when it came to my second race, I didn’t worry much about getting the same kart.  They are all pretty much the same anyway.  For some reason, nobody wanted to be in the first kart, so I took that one.  Trying to lap the field would prove to be a good challenge.

At the start I totally set everyone up by bunching them up at the final corner, then speeding away to take the green flag with a clear lead.  This lasted about 1 lap, when people started passing me.

I was simply not going as fast as before.  There wasn’t much I could do about it.  I spent the rest of the race working on my lines, trying to carry more speed through corners and working on higher exit speeds.  This was great fun, but there wasn’t much I could do to keep people from passing.  I ended up about fifth or so.

When I got out of the kart, they showed the fastest lap times.  My lap times were about 2 seconds per lap slower than they had been before.

Obviously, my prior stellar performance pretty much had everything to do with the kart and nothing to do with me.

Still, it was great, fantastic fun.  My arms pumped up, and my mouth was dry from improper mouth-breathing, and I had bruises on my shoulders and ribs where the four-point harness had pulled because I cinched it so tight.

And I haven’t been able to stop thinking of it since.

See, I have this dream of my life as a young, retired multi-millionaire.  In this dream I have a nice sized chunk of land.  And on that land is a well-maintained, awesome shifter kart track.  And next to that track is a little shop where I build and tune shifter karts, just because I can.

And since we went racing for work, this dream has made a major resurgence into my consciousness.  Someday…

matt Cars ,

What Makes A Great Videogame

March 5th, 2010

The game Forza Motorsport 2 took a step towards greatness tonight when it helped me answer that question you and I have both been wondering about our whole lives:  What would it be like to drive a 700HP blown Aston Martin V12 Vanquish in a demolition derby?

Answering difficult questions is one of the main things that great video games do.

As far as I’m concerned, a great video game is supposed to allow you to make virtual people do things that you would never do personally in real life.  By this I don’t just mean “fight aliens” either.  I also mean things like “fight aliens using only a chainsaw.”  Fighting aliens using only a chainsaw is not a recommended activity for a living person, because the aliens are likely to shoot you with too many fireballs before you can get close enough to saw them.  But I think it is a great thing for a virtual person to do.

Some people disagree with this assertion.  They want video games to resemble actual life.  These are the kind of people who do not have a real life and so they obtain a Second Life.  They grade games based on how “realistic” they are.

Not me.  The point of playing a video game is to escape reality, not create more reality.  The point of playing a video game is to answer difficult questions, the kind that cannot be answered in reality.

Here are some very key questions that, thanks to video games, we have the answers to:

  • Is it possible to obtain victory in a military conflict without actually harvesting any vespene gas or training any combat units?
    • Answer:  Yes — at least if you are a Protoss.  Simply build a forge and then overwhelm the enemy with a plethora of photon cannons.  (StarCraft)
  • What do you do when a new neighbor moves in next door, paints the entire house black, and goes about the neighborhood wearing a black fisherman’s poncho and sporting a handheld fish hook, looking eerily exactly like the villain in “I Know What You Did Last Summer”?
    • Answer:  You walk over, greet him, and invite yourself inside.  (The Sims)
  • What happens when you run into oncoming traffic in a firetruck going around 80 mph?
    • Answer:  Most cars go flying out of your way.  (Grand Theft Auto 3)
  • Can Chad Reed win Glen Helen on my KX 250?
    • Answer:  Yes; in fact, he has done so in convincing fashion many times, despite some pretty wicked crashes.  (Motocross Madness 2)
  • What is the shortest possible street circuit of any consequence that you can have in London?
    • Answer:  Start in front of the National Gallery.  Drive as fast as you can around Trafalgar Square, back in front of the National Gallery again.  This circuit is known as “Tinier Tim.”  (Project Gotham Racing 3)

I’ve said before, and reaffirm here, that some characteristics of good computer games are to a) allow user generated content and b) allow you to play the game in an alternate way.  These traits, along with c) CHEAT CODES, are very helpful if a video game is going to help answer difficult questions.  As examples, consider the Project Gotham Racing series.  PGR3 includes a track editor.  PGR4 does not.  So, despite having many more tracks and cars, PGR4 will never attain the level of excellentness that PGR3 has attained.  And consider The Sims, an otherwise horrible game.  But it is possible to create neighborhoods with rich coeds and mass murderers and really pathetically poor people, and then run their lives in evil, twisted, masochistic ways.  And Sim Survivor, don’t forget!  Finally, let’s not underestimate the significance of the phrase “give us a tank” to the success of Grand Theft Auto 3!

Forza Motorsport 2 is a driving simulator, and it seems pretty intent on achieving a high degree of realism.  This isn’t exactly a sin, but why would I be interested in driving a Ford Focus in a simulation?  Driving a Ford Focus cannot possibly be fun in real life; how could it be fun in virtual life?

This is a major drawback, until you start winning and earning credits.  Suddenly, you can do some fun things, like buy a virtual car that looks exactly like your real 2003 Nissan 350Z, but then add every upgrade so now your Z is a 215mph race car.

Or you can answer the question that’s been plaguing you for ages, “What would it be like to drive a 700HP blown Aston Martin V12 Vanquish in a demolition derby?”  Since, admirably, Forza Motorsport 2 allows you to drive backwards (unlike some ultra-lame racing games), you can easily answer this question for yourself.

(If you are confused, “backwards” means “around the track in the opposite direction”, which is something that is obviously awesome, not “driving in reverse”, which is something that is only arguably awesome.)

True, it lacks cheat codes and user-generated content.  I’m not allowed to really excellent things, like drive my car into the grandstands (all possible in Motocross Madness 2).  So Forza Motorsport 2 may never achieve true greatness.  But the ability to drive backwards is definitely a step in the right direction.

matt Humor , , , ,

USF1 Concerns

February 13th, 2010

Like you, I also am really stressed out and concerned about USF1.

Here we are, one month away from the first Grand Prix of the year in Bahrain.  It should be a really awesome season, with four new teams and Michael Schumacher back on the grid.  And I’ve been waiting for the past two years for this year because of the announced USF1 team.

But I’m worried now.  Worried, because we’re only a month away from the season opener, and USF1 still only has one driver.  The only other team in this position is Campos F1; everyone else has both drivers in place.  And seemingly every other team has unveiled their 2010 car, but USF1 has not.

It makes me wonder if they are having trouble finding sponsors.  This should not be a problem.  I can think of some great American companies with a global presence that could be great sponsors.  My employer, Microsoft, immediately comes to mind (Steve, that’s your cue).  But hey, if not Microsoft, what about Google?  Or Budweiser?  Or Wells Fargo?  Or Novell?

Haha!  Just kinda got carried away there!

Anyway, having provided an obviously excellent solution to the financial problem (Microsoft), I’ll now suggest a solution to the driver problem:

Me.

I volunteer.  I will do it.

In fact, USF1, give me the job and I’ll drop everything and be in Charlotte within 24 hours.  I’d happily take a one-year contract for, say $1M.  This is probably a lot less than you would have to pay anyone else.  I have lots of driving experience; for example, I drive to work and back every day.  And I also have played lots of racing games, like Need For Speed and Project Gotham.

Don’t thank me.  This is what I’m good at:  solving problems.  Just say the word and consider it done.

matt Sports , ,

Handling Feedback

January 31st, 2010

One of the big things that attracted me to Microsoft is what I’d heard about their culture.  During my interview loop, the interviewers explained to me what Microsoft does to try to build the careers of each person that works there.  And I think it is fairly common knowledge that at Microsoft the communication is direct, clear, and open.  Not disrespectful, mind you, or at least it isn’t supposed to be.  But if your managers — or even your peers, for that matter — think you’ve made a mistake, or that your approach is wrong, or that you aren’t being effective enough, they will question and challenge you.  And you’re expected to do the same, even with your managers.

It’s very refreshing, especially in a social culture that is so different.  I don’t know if it is a Utah thing or a Mormon thing, but in most groups around here people don’t communicate this way.  Companies I’ve worked for in the past usually pretended to care about my opinion but didn’t, or really weren’t interested in what I had to say.  Or they would openly make it clear that they actively believed that my opinion was worthless.  I yearned for a place that valued every opinion, and I found it at Microsoft.  I love that.

It’s not all roses, though.

Hearing feedback about how to improve at your job isn’t too hard to take.  That’s just stuff like a suggestion about a design pattern that will help you solve a problem you’re facing, or someone pointing out to you that your implementation is not threadsafe and suggesting how to address it.  Even when the feedback urges you a little out of your comfort zone, for example to confront someone about a concern, it isn’t that bad.

It’s much harder when the feedback you get is telling you that you have to change something that is just a part of who you are.

The first type of feedback doesn’t even have to do with you personally.  It’s just coaching on how you do your job.  You aren’t your job (or at least you shouldn’t be).  The second type of feedback might have a little to do with you, but it is more about encouraging you to improve on something you already want to improve on anyway.

The last type is the type I got last week.  I won’t go into any details on it, but the general summary of it is this:  ”There’s a handful of character flaws, inherent in your personality, that you need to overcome in order to move forward in your career.”

Or to rephrase:  I was good enough as I am now to get my current position, but I’m not good enough as I am now to move ahead.

Truth is, we all need to learn to take feedback like that.  It’s all about becoming the best version of ourselves.  Nobody on this earth is perfect, so we all have things to improve on.  But when it isn’t your skillset or your approach but your lifelong self that isn’t good enough, wow.  I’m gonna have to dig deep to learn to deal with that.

matt Rants ,

Novell Finally Kicks Jaffe Out

December 22nd, 2009

Last week Novell announced that they are finally getting rid of their CTO, Jeff Jaffe.  It’s buried in the press release, but if you look hard enough you’ll find it.

It’s really too bad, because this press release really did not do much in the way of raising Novell’s stock price.  It must be because the news of Jaffe’s departure is buried.  If Novell had made a press release just about that, stock would surely have gone up.

As far as Novell goes, things can only get better.  I heard people were literally cheering in the hallways when they heard the news.  No, I’m not making that up.

Understand, I don’t have anything against Jaffe personally, so this isn’t meant as a personal attack.  I really don’t want to get too critical of people, generally.  But the fact that Jeff Jaffe was a CXO-level professional says a lot about what is wrong with corporate America in general, and Novell in particular.  He was very well compensated because he was expected to lead the company, but instead people at Novell wonder what he even got paid anything for at all.  If you had worked at Novell, you would know what I mean.

In a technical company like Novell, the CTO, if you have one, is expected to provide the technical leadership.  What products should we be focusing on?  What company strengths are we going to leverage?  Who is our target market and our customer?  What is our go-to-market strategy?  What is our partnering and third-party-developer strategy?  You’d expect a CTO to be intimately aware of all this stuff, and providing clear, consistent, and frequent direction to his engineering core to help bring about a technical vision that will win in the market place.

Jaffe’s strategy, on the other hand, was to completely disappear.

In fact, the only time I can ever remember him saying anything at all was just after he’d held a two-week-long brainstorming session with a bunch of his distinguished engineers.  I knew they were doing it, because it was going on in a conference room on my floor at Novell, right by the bathrooms and the elevators.

Presumably, the purpose of this session was to get the Novell brain trust together and answer questions like these to come up with a competitive strategy.  Of course, I wasn’t in the meetings, but the accounts I heard were a bit different from what I’d expected.  Apparently Jaffe went into the meetings with an idea of what the strategy was.  The first week was spent with the distinguished engineers trying to help him see that his strategy was not going to work.  Towards the end of that week they collectively gave up, and spent the second week trying to figure out how to not make his strategy sound so ridiculous.

A few days after the meetings, he announced his strategy in a company-wide conference call.  Basically the strategy was this:

  • The open source community is full of people who like to develop software and give it away for free.  They just like to work on interesting projects.
  • We like to make money on software and we have lots of great ideas.
  • Thus, perfect synergy.  We will give the open source community ideas of software to create that will make us money.  Since they have nothing better to do, the open source community will gladly make this software for us.  Then our engineers will add a few key features, tie pretty bows around it, and sell it.

This same day I received an offer to work for Mozy.  It was pretty clear that Jaffe’s strategy was a joke.  Embarrassing, even.  I remember thinking, “Things are never going to change around here if this is the best strategy our CTO can come up with.”

I was pretty discouraged about it.  It is hard to work for management that doesn’t instill confidence.  It is really surprising to me that a person could make the kind of salary he made with the kind of title he had and still do such a lousy job of leading.  How in the world did he ever get the job in the first place?

After the call, I walked to the office of a teammate to vent about it.  I told him, “I know in the past I’ve joked about some of the decisions different people in our upper management team have made, and I’ve quipped, ‘I could do their job better than that!’  Of course, we both know that I was kidding.  But this time, I’m completely serious when I say this:  I could do the CTO job better than Jeff Jaffe.  I know I could.”

My friend said, “Yes, I know.”

When I was at Novell, this happened fairly often.  Employees regularly felt very discouraged, disheartened, and demotivated because of executive management.  I figured that was pretty much just the way companies worked, and that it happened like that everywhere.

Which is why I marveled at this fact, when Jaffe left.  I contemplated how I’d felt that way, and realized that I’ve never once felt that way about my management chain at Microsoft.  On the contrary, I find that I am continually amazed at the level of professionalism, attention to detail, quality of decision-making, and overall caring about the company that I find in my management chain.

I thought perhaps it’s just because I’m new, so I mentioned this to a guy on my team who’s been with Microsoft for over ten years.  He said, “Pretty much, that is how I’ve always felt about my management chain too.”

Novell breaks my heart.  I wanted so badly for Novell to succeed while I was there, and I still want good things for Novell.  I know many great people who work there.  Novell’s problem has never been in the individual contributors; it’s been with the company leadership.

So getting rid of Jaffe can only be a step forward.  It may be too little, too late, but it’s worth a try.

matt Business , , ,

How I Blew Out My Knee Upgrading To Windows 7

November 16th, 2009

I hobbled in to work today, because I injured my knee over the weekend.

I work with this guy, let’s call him Newsom, who really doesn’t have a lot of patience for my sense of humor.  This is kind of fun for me.  So when I limped into my morning meeting, Newsom asked, “What’d you do?”

“I injured my knee this weekend,” I said.

“How?”

“I blew out my knee upgrading my computer to Windows 7.”

Of course this made Newsom mad because he thought I was trying to be funny.  But actually, I wasn’t lying.  Of course, I was trying to be funny; I’m always trying to be funny.  But I really did hurt my knee upgrading my home computer to Windows 7.

You surely remember me blogging before about building my home PC, so of course you remember how I built it with two 750 GB 7200 RPM drives.  I used one of these drives for the OS and programs and the other for data.  Well, about a month ago I got a corrupt registry file that I fixed, caused by a bad sector on the disk.

As you know, getting a bad disk sector is like having someone move into your neighborhood who puts up Halloween lights.  It starts out as just the one, but before long everyone is doing it, and now the whole neighborhood is ruined.

So, knowing that I was going to be upgrading to Windows 7 soon, I bought a new 320 GB 7200 RPM drive to replace my bad disk but set it aside until the upgrade day came.

Which was last Saturday.  So I pulled the PC out from under the desk, sat down on the ground, and proceeded to pull the old hard drive out and put the new one in, and then I started the install.

It started up fine, but after a bit it said that it couldn’t use my ASUS DVD drive because it didn’t have the correct driver for it.  Upgrading the firmware didn’t help, and ASUS didn’t offer any newer drivers.

Honestly, that thing never worked right anyway.  So we headed down to Best Buy to get a new one.

I walked quickly through Best Buy and found me a nice HP DVD writer drive.  As a bonus, it’s a SATA drive, not IDE, which is excellent since I had two open SATA slots.  And it said it worked with Vista, which gave me confidence it would also work well for Windows 7.  So I picked that one up.

I noticed walking around Best Buy that I was feeling a bit of a popping sensation in my knee every time I flexed it.

When I got home, I sat down on the floor again and opened the PC to install the new drive.  I started the install again and everything went fine.  But when I went to stand up, I felt a very intense, sharp, burning pain in my knee, and it has been like that ever since.

I’ve given this a lot of thought, and I now realize quite clearly:  This is ASUS’s fault.  Some might claim this is Microsoft’s fault.  I’ve thought about this, though, and I know quite clearly that it is not Microsoft’s fault.  This is primarily because I work there.  And of course, it isn’t my fault.  I mean, seriously!

Yeah, ASUS is to blame.

(By the way, the Windows 7 install went without a hitch after that.  And, coming from a fan of Linux and Mac desktops, I have to say that Windows 7 is really excellent.)

UPDATE:  Diagnosis is complex tear in right medial meniscus plus partially torn medial collateral ligament.  Surgery to come.

matt Technology , , ,

Three Months at Microsoft

October 15th, 2009

Last week marked three months that I’ve been working at Microsoft.

As I’ve discussed before, making the decision to leave Mozy for Microsoft was not an easy one.  Let’s face it:  I’m not exactly a spritely youth anymore.  I’ve worked at a lot of different companies — and when I say “different,” I also mean, “different from each other:”  Small companies you’ve never heard of (Spillman Technologies), large companies you’ve surely heard of (IBM), companies whose politics continue to keep them from succeeding (Novell), companies who manage to succeed in spite of the politics (Mozy), and companies that just frankly exist only as dark, ghostly nightmares in the frightening nether regions of my mind (Enterasys Networks).  Yet as different as these places are from each other, one thing mostly remains the same:  the process of creating software is the same everywhere.

So that makes a decision to leave hard.  Since the process of creating software is the same everywhere, it is the intangibles that end up mattering, such as whether you like your boss, whether you get a nice computer or monitor, how comfortable your chair is, etc.  When you consider leaving, you wonder what unidentified intangibles you’ll be giving up and what you’ll be getting, and whether you will feel like this was a good trade a year later.

Leaving Novell for Mozy was like this for me.  I got many, but not all, of the intangibles I expected when I went to Mozy.  I gave up all of the intangibles I expected I’d give up from Novell, like five weeks of paid vacation and a beautiful window office on the 7th floor looking directly north to Mount Timpanogos.  Some things at Mozy ended up being worse than I expected, e.g. the 5% pay cut last spring.  Of course, I do realize that it is not Mozy’s fault that I didn’t get all the intangibles I expected; I set that expectation, not them; I failed to assess the situation accurately.

Nonetheless, as I contemplated leaving Mozy for Microsoft, I thought about this.  “Well, software engineering is the same everywhere.  So since the in-and-out of the job function is mostly the same, I wonder what intangibles I’m gaining and what I’m giving up?”

Well, I failed to assess the situation accurately again.  I made one key error:  Software engineering is NOT the same everywhere.

In particular, it is not the same at Microsoft.  At Microsoft, software engineering is more… uh… yeah:  more.

More better.

Have you ever worked for Microsoft?  If you haven’t, you don’t know anything about us.  I know you think you do.  You don’t.

Never in my career have I ever worked in any organization that took software engineering as seriously as Microsoft does.  I was very surprised to see how seriously we consider things like security and software quality.  I’m aware of the reputation Microsoft has received over the years for bugs and security issues.  Maybe things are different now, or maybe that whole thing was just a function of being the world’s largest, most powerful, and most widely used software company.  At any rate, I can tell you from personal experience that security and quality are very important here — important enough that we will delay shipment if we don’t feel like it meets our standards.  While this may seem obvious, I’ve never seen this commitment to quality permeate throughout an organization like it does here.

It has been incredibly refreshing to see a company take software engineering as seriously as I do.  I love that I’m free to require explanation or justification from my management when I don’t understand something.  I love that I’m supported in insisting on perfection in software design, code, and process to the degree that I can help us deliver it.  I love that people can communicate with me honestly and openly without worrying about my feelings, and that I can do the same with them, because, unlike some places I’ve worked, there is an undercurrent of trust and mutual respect between me and all of my peers wherein we know and believe that, despite having different opinions, we are each talented and capable professionals with the best interests of the company at heart.  I love being surrounded by incredible talent that makes me feel both humbled to be a part of the group and inspired to improve myself every day.  I love working for a company where, instead of feeling like my career has topped out and has nowhere else to go, I feel I have broad, wide-open vistas of learning and advancement just laying before my feet; opportunities sitting before me just waiting for me to seize them.

I had no idea a software company could be that much better than what I’d experienced in the past.  It is really awesome.  It may not be for everybody.  Not all software engineers care enough about delivering quality software that they will do whatever it takes — write unit tests, participate in code reviews, follow rigorous and time-consuming processes, be a small fish in a big pond — in order to do it.  But if you care about delivering quality software, like I do, I must say I highly recommend us.

After only three months I find myself saying something I never thought I’d say:  I love working at Microsoft.  I really do.  Intending absolutely no negative to any other company I’ve worked for (with the exception of Enterasys Networks, I have fond memories of great talent, great people, and great product deliveries at every company), working at Microsoft is unlike anything else I’ve ever experienced.

matt Programming , , , , ,

The Truth About Novell Forge

September 30th, 2009

I got an interesting e-mail the other day from Novell:

Please Note: You have been sent this email because you are listed as an administrator of one or more Novell Forge projects.

When Novell Forge was first launched Novell recognized the need for a site dedicated to providing hosting services to a growing number of software development projects, many supporting our open source initiatives. Novell Forge quickly grew and was soon providing these service to nearly 1000 such projects. Demand for new projects has all but disappeared during the past two years while a number of additional project hosting options have begun that can provide a similar set of services to those of Novell Forge.

Now that there are many other options, Novell can turn its focus to other areas and pass the project hosting responsibilities to these other dedicated hosting sites. Novell will be decommissioning the Novell Forge system on December 15, 2009.

This is interesting to me because it is not entirely true.  I should know, because without me there would never have been a Novell Forge.

It’s a bold statement, I know.  It’s one I’m happy to explain.

I came to Novell from IBM in 2000.  It didn’t take long to realize that Novell’s developer story and strategy, or rather the complete lack thereof, was (and still is) a significant weakness in their overall execution.  People buy a computer operating system in large part because of the applications that they can run on it; if a business wants to run a CRM system, they’ll want to be sure that whatever platform they buy will run a CRM suite that is acceptable to them.  This is why having a strong developer strategy is crucial to platform providers, and almost everyone seems to understand this.  Novell certainly should; NetWare owned the x86 server market in the 80’s and early 90’s until Microsoft entered that market.  Initially, the Microsoft offering was not necessarily better than NetWare in terms of stability or performance, but Microsoft definitely outgunned Novell when it came to applications.  It was so much easier to create applications for Microsoft’s platform that their supported portfolio dwarfed Novell’s, and that was a significant key to dethroning Novell’s dominant position in the x86 server market in the mid 90’s.

Anyway, when I came to Novell and learned this, I thought that probably Novell’s Developer Services organization just didn’t know what to do (a mistaken analysis, I later learned) and if I worked there I could probably fix everything.  I was pretty young, arrogant, and naive then.  But in 2002 I was presented an opportunity to work in Developer Services and I took it.

One of the first things I was asked to do was to provide support to customers programming to eDirectory.  I decided to try to learn more about how to do this the same way our third-party developers would, by using the resources that were available online.  I found what appeared to be our authoritative how-to-program-to-eDirectory tutorial, got most of the way through my sample app, and got stuck.  Finally I started asking questions.  I quickly learned that everything I’d been doing was wrong; the authoritative documentation was incorrect.  It used an out-of-date and deprecated API and was no longer considered best practice.  It was some two or three years out of date, but hadn’t been changed yet because changing the documentation was just too painful.

I felt this situation was unacceptable.  We needed the freedom to create an abundance of rich and helpful developer content and to have it published and updated freely and frequently.  We needed to be able to do this without going through drawn-out and tedious approval processes and staging phases for even minor edits.  We needed to be able to continuously deliver not only whitepapers but tutorials and sample applications.  I felt that what was needed was a complete overhaul of Novell’s developer site, converting it into a web application where administrators (Novell Developer Services employees) could update the content and have complete control over what information was being provided to our developer community.

I discussed this with a colleague and my manager, and then we called a formal meeting to discuss this proposal.  I think there were four Developer Services employees in the room.  As we discussed the reasons to do this, other advantages surfaced.  A key issue was that, in Novell’s then-existing developer forums, many Novell developers were already contributing to solving each other’s problems, including answering each other’s questions and even sharing code, from small snippets to complete applications.  We realized that instead of top-down support flowing from company to customer, what our customers really preferred was community support with Novell as an active participant.  As we discussed this, one of my colleagues suggested that instead of writing the web app I suggested, we should do a project hosting site, like SourceForge.  Such a site would allow us to participate as a community with our users to exchange sample code, documentation, tutorials, and other content.  Novell Forge was born.

As we began to socialize the idea, we found out that a separate group within Novell had been tasked with creating a project hosting site for internal company use.  When we both became aware of each other’s goals, the synergies were obvious and it seemed apparent that we should try to coordinate our efforts.  Interestingly, we had human resources to give to the project but lacked funding for capital expenses; the other group had capital expense budget but lacked human resources.  Ultimately we agreed that, as my team developed the Novell Forge solution, we would also develop an internal-use version of the site to meet the goals of this team; in exchange, they would help us to get the hardware we needed to host Novell Forge.

Around the time Novell Forge was launched and completed, a number of people involved directly or indirectly from that team claimed credit for having launched Novell Forge.  Some of them were quite handsomely rewarded by the company, presumably at least in part due to their claimed credit for the site.  Others still claim in public that they are responsible for the site even though they had absolutely nothing to do with the conceptualization, proposal, approval, or implementation.

Meanwhile, those of us who did come up with the idea, who did make the business case and get the approval and deliver the site, well, we pretty much had to settle for a brief pat on the back from Novell.  Or did we even get that?  Anyway.

Novell Forge, despite its pretty lame name and humble beginnings, was actually quite well received by the press.  It earned kudos for Novell from Dave Kearns of NetworkWorld, which was not exactly easy to come by.  And as Novell tried to reinvent itself with an open source focus, purchasing such open source companies as Ximian and SUSE Linux, the existence of Novell Forge was frequently cited as evidence that Novell was serious about an open source strategy (example).  Interest in the site grew quickly and it soon hosted over 1000 external projects, as stated in the e-mail I quoted above.  My team was excited about the traction the site was gaining.  We had many, many ideas for how to grow the site and make it an even more useful tool for software developers.  We had more work to do than time to do it, and it was neat to feel like what we were doing had an impact to Novell.

Even though Novell didn’t seem to care about it.

Oddly, in spite of what my team thought was a pretty obvious success, we could not get approval for funding to continue to promote the site.  The team was gradually reduced in size, again and again.  When people would leave, their vacancies would languish unfilled until that position was eventually lost.  The team was instructed to not develop the site but instead to work on undefined new work in other undefined areas, wasting many person-years of development effort.  The community could sense Novell’s lack of investment and they lost interest.  Novell Forge became a laughing stock.  It was used as evidence of what a company does when they “just don’t get” open source, when it was ironically used as evidence of Novell’s good faith not too long before.

Things finally came to the point where there was only one employee assigned to maintain the site, along with other unrelated duties (I, and the rest of the team, had by now been reassigned to different projects).  Novell Forge was completely unsupported by Novell’s IT group, leaving instead the support of the site to this one individual.  I recall an occasion where the site went down over the weekend and was out for a couple of days.  It was obvious that the site was in demand, because users made Novell aware of the outage quite quickly.  However, Novell was not willing to pay for 24/7 support for the site, so instead of being brought back online right away, the site was down for the entire weekend until that resource came in to work the next Monday.  My manager brought this to the attention of our team with the insistence that we address it.  He stated that from that point on, that one employee would be the primary off-hours maintenance person for the site, and I would be the backup.

I then asked if Novell was going to start reimbursing me for my cell phone bill.  He said no.  I asked if they were going to buy me an additional cell phone, pay that bill, and also pay me extra to carry that additional phone.  He said no.  He said they would just list my personal cell number in the emergency contact list, and would call it if there were an emergency.  I stated that in that case I maintained the right to not answer.  He stated that I would have to answer, that it was my assignment.  I claimed that Novell could not require me to answer my personal cell phone if I’m the one paying the bill.  I then reminded him that in Novell’s support organization, at least at that time, people that were expected to respond 24/7 had their cell phone bill paid by Novell, were paid an additional amount to be on call, and were paid an additional amount if they actually took a call and worked that call during off hours.  I said, “If the site is important to Novell, that is what Novell should do.  If the site is important, it should be important enough that Novell is willing to pay in order to maintain uptime and keep our customers satisfied.”

Novell was not willing to pay.

I shortly moved on to a different team within Novell, and the other guy left the company altogether.  I’m not sure who has been maintaining the site since then.

What Novell chooses to do with their money and their human resources is their business.  This isn’t meant as a criticism; I don’t claim to have the right experience to criticize their decision to strangle Novell Forge to death.  This is simply meant as a statement of fact, and the facts are pretty clear:

  • You get what you pay for.
  • Novell did not pay for Novell Forge by giving due reward and recognition to those who truly brought this idea to the company.
  • Novell did not pay for Novell Forge by feeding its success with additional funding, promotion, and development.
  • Novell did not pay for Novell Forge by giving it the kind of support and maintenance that its customers expected.
  • The customers of Novell Forge were initially enthusiastic, but grew to sense the lack of commitment by the company and thus stopped participating.
  • Novell Forge died as a result.

Novell Forge may be planned for decommission this December, but it died years ago.  And don’t think you can fool me, Novell.  Novell Forge did not die because of lack of interest by the user community.  Novell Forge died because you did not care about it.  Whether that was a good decision or not is not for me to decide, but please, Novell, at least be honest with your community.  We did not kill Novell Forge — you did.

UPDATE:  Dan Reese, a member of my team back then, corroborated this in his blog.

matt Rants , , , , , , , ,

Microsoft UDC – We Do Everything

September 11th, 2009

Last Thursday, 9/3/09, was the grand opening of Microsoft’s Utah Development Center (UDC) at Thanksgiving Point in Lehi, where I work.  We’ve been working here since the beginning of August, so this was more like the “official” grand opening and not the “technical” grand opening when we are first allowed to enter the building without wearing hard hats.

Microsoft invited Senator Orrin Hatch to attend the grand opening.  In the spirit of full disclosure many of you who have read this blog for a while know that at times I have exercised my constitutional right to express my opinion on Senator Hatch on this blog before; he does represent my state after all.  However, since he attended as a guest of my employer, I’ll keep that out of it for now, and express a sincere thanks to him for making our grand opening a special event for us.

Brad Anderson, the Corporate VP over UDC, was also here, as were other business dignitaries from Utah and some news folk.  He demoed to Senator Hatch the Microsoft Surface that we borrowed from Redmond for a few days just for this occasion.

Brad_Demos_Surface_to_Sen_Hatch

Brad Anderson tells Senator Hatch about Microsoft Surface (Photo Courtesy Andy Hodgkinson, reused by permission)

Then Senator Hatch picked up a plastic guitar, quickly formed a band, and began shredding to Guitar Hero World Tour.

Hatch_Anderson_and_Cespedes_Guitar_Hero

Utah's Newest Band - Senator Hatch and the Important People (Photo Courtesy Andy Hodgkinson, reused by permission)

(They are not very good.)

About this time is when the press conference began. All us employee-types were ushered into the foyer for a photo. You know how when you are trying to do something important, you distract your little kids by giving them something else to do? And how you might even say to your eldest child, “Can you go entertain them while I get this done?” That is pretty much what happened. They sent Senator Hatch in there to keep us from coming back in and ruining the press conference.

The_MSFT_UDC_Gang_with_Grandpa_Hatch

Microsoft UDC People, and Senator Hatch. Yes, I'm in this photo - I'm the incredibly handsome one. (Photo Courtesy Andy Hodgkinson, reused by permission)

I know, it looks like a family photo.

Later, we found out that apparently Brad explained to the press that here in UDC we work on “virtualization technology, which is one of the hottest areas in the tech industry today.” This is pretty accurate.

Unfortunately for KSL News, who picked up the story, they don’t really understand what “virtualization” is.  So when they graciously ran the news story, they made it sound like both the XBox 360 and the Surface are developed here in Utah.  And the Deseret News article made it sound like a lot of the key features of upcoming Windows 7 were developed here in Utah also.

I came to work very excited the next day.  I was excited to see how much we’d gotten done in just one month; I had no idea.  Alas, I found that the news folk were misled.  We are still working on enterprise desktop virtualization, just like we always have.  I had to resign myself to the fact that our team is simply freakin’ awesome, not unbelievably freakin’ awesome.  Oh well.

matt Technology , , ,

The Baseball Game Rule

July 31st, 2009

One of my rules is that when I go on a business trip, I am required to go to a major-league baseball game if the following conditions are true:

  • The city I’m visiting has a major-league baseball team
  • It is baseball season
  • The home team is playing at home when I am there

This is a bit odd because I don’t really follow baseball otherwise. And this rule doesn’t necessarily apply to other sports. Sorry. I can’t do anything about it, or even explain it. It is just a rule.

I’m not really complaining, either. It’s a good rule. I’ve seen the Mets, the A’s, and the Giants (twice) play so far. Even though I don’t follow baseball, it is pretty fun to go to cheer for the home team and watch the local fans get smashed. And watch the baseball game.

Anyway, this week I’ve been in Seattle for Microsoft’s TechReady conference, and all of the conditions were met, which meant I was compelled to go see the Mariners play the Blue Jays on Tuesday. Safeco Field is located in a slummy part of Seattle, but the stadium itself is pretty nice.

Safeco Field Exterior

Safeco Field Outside - The Slummy Part

Safeco Field Interior

Safeco Field Inside - The Nice Part.

I had a great seat.

At the start of the game, they played the US national anthem, presumably to honor all great Americans like Edward Van Halen and Ben Spies. Then they played the Canadian national anthem, again presumably to honor all the great Canadians (i.e. Rush). I found out later it is because the mascot for the other team is a Canadian Blue Jay, not an American one. But it was still confusing why they had their own national anthem. Someone explained it is because they are a different country. What the…! When did Canada secede from the US?

Ah well.

When you go to a baseball game, one of the traditions is to pay atrocious prices for awful food. This is part of the rule. Strictly speaking, you should buy a hot dog, garlic fries, and an “ice cold” (thus falsely advertised) beer, unless you don’t drink alcohol, which I don’t, in which case you get a pass. I must publicly admit I had chicken strips instead of the hot dog. I felt unpatriotic. But I just could not bring myself to eat that thing.

It was a pretty exciting game. Ichiro Suzuki singlehandedly won the game for the Mariners. Here is a picture of Mr. Ichiro just before he hit the winning RBI.

Ichiro At Bat

Ichiro At Bat - The Sum of the Mariners Offense

Actually, that is a lie. It is a picture of Mr. Ichiro just before he got a hit a different time. But it is almost true that he won the game mostly by himself. He got on base three times and scored each time, I think, as well as made some great defensive plays. But the best was at the end – both teams went into the 9th tied, but in the bottom of the inning the Mariners managed to load the bases, and when Ichiro got up to bat, he cooly hit a single, driving in the winning run.

Given the excellent food, the excellent atmosphere, and the excellent entertainment both on and off the field, no wonder it is our national pastime.

matt Sports , , ,