Rockford Lhotka

 Tuesday, August 27, 2013

The news is atwitter with Ballmer’s impending departure from Microsoft. I’ve read analysis from technical, business, financial, and investor perspectives. Some seems good, a lot seems like just noise.

I am personally rather ambivalent about his departure. I’ve met Ballmer, and even “opened” for him at a fairly large speaking event in Detroit (back when Detroit was reasonably vibrant). He is a very intense, focused, and intelligent man. Pretty much what you’d expect from the CEO of a megacorp.

(yes, I’m a hard-core cyberpunk fan, and if “megacorp” doesn’t apply to Microsoft, then it doesn’t apply to anyone!)

The reason I’m ambivalent has less to do with Ballmer than Microsoft itself. I think Microsoft has gotten itself into such a predicament (undoubtedly in part due to Ballmer’s leadership) that anyone stepping into the CEO role will have a major uphill climb. Of course they have a lot of great raw material to work with, because Microsoft is loaded with extremely smart and dedicated technologists, but they’ll also have such massive issues to overcome that it’ll be really challenging.

The way I look at it is this (keeping in mind that I’m an outsider with nearly 20 years of “insider” status – so I’ve had a great/close viewpoint from outside the company to watch things unfold, but I’ve never been an employee, so I’ve never actually been in the belly of the beast):

Microsoft is not a monolith. In fact, its culture breeds internal competition at a personal, departmental, product, and division level. It is really like a whole bunch of companies that are sometimes allied and sometimes bitter competitors with each other.

When BillG was active in the company he conducted what were infamously known as “BillG reviews”. I remember friends sweating as they prepped for these events, because their product or initiative or idea would live or die based on such a review. As a result of these reviews, a lot of stuff did die – or at least got merged into other products/initiatives. When BillG left these reviews stopped – or at least changed.

The thing is, Bill (who I’ve also met) is amazingly smart and focused, and always seemed to have some idea of everything that was going on across the whole company – at a pretty technical level. Perhaps that was illusion, but I don’t think so. I think he is really that smart, and was really that tuned into what was going on, not in small part because he reviewed everything at one time or another.

These “BillG reviews” provided a failsafe, or level of regulation, against wholesale internal competition within Microsoft. Once they stopped there was nothing to prevent everyone from pursuing their own goals, driven by their personal, departmental, and division motivations (largely staying employed, getting raises, getting bonuses, and doing cool work).

(please note, I’m not judging these motivations – we all share them – or if you don’t want to keep your job and make more money, etc. then you are an odd duck)

As a result we ended up with silly things like multiple new data access frameworks being released all in a year. I strongly believe that BillG would have killed all but one via his review process. But in the absence of any global oversight, we ended up with a confusing array of publically released data access frameworks. What a mess!!

The thing to keep in mind is that developing multiple solutions to a problem is deep in Microsoft’s DNA/culture. It has always worked that way. What was new after the BillG reviews stopped is that nobody prevented the previously-internal chaos from becoming public chaos. Chaos we all have to deal with as developers or consumers.

Ballmer is a sharp guy, but he’s no BillG. He doesn’t have the technical chops for it. Obviously Ray Ozzie didn’t either – or if he had the technical chops, he didn’t have the organizational power. Either way, he wasn’t what many of us hoped he’d be.

Will the next CEO have technical chops? I expect not. And that’s OK, as long as they figure out some way to tame the wild beast that is the individual/departmental/product/division sub-companies that comprise Microsoft. One way or another somebody or something needs to harness that internal innovation and energy, pruning the duplicate bits, and focusing effort toward some unified technical vision.

Personally I feel really bad for a lot of my friends and colleagues who’ve had to work in the chaos over the past many years. Perhaps they haven’t had to sweat out the prep for a “BillG review”, but they must have seen how the uncoordinated chaos was working against the overall interests of their company…

So Ballmer leaving makes me neither happy nor sad. He merely administrated over this chaos for a few years, and was perhaps a good cheerleader. The real question is whether his replacement will be another administrator, or a marketing wonk, or the puppet of investors – or perhaps we’ll get lucky and it will be someone who (if not a deep technologist themselves) understands the core of Microsoft – the power and depth of its technical resources, and the desperate need to focus those resources on a reasonably common goal.

Tuesday, August 27, 2013 4:54:17 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Sunday, August 11, 2013

Hello everyone.

I try to keep this blog mostly professional, with only occasional forays into more personal topics. This is one of those forays.

A little over two weeks ago I was speaking at a Windows 8 user group in the Twin Cities. Like most user groups they had pizza, and i ate a couple pieces.

About half-way through my talk i had _horrible_ heartburn. A searing sensation from the center of my chest up into my throat. And I got dizzy and a little short of breath. To the point that I apologized to the attendees and did the rest of my talk from a seated position. I though it was heartburn.

Following the user group I picked up some Tums (heartburn medication) and chewed a few tablets as i drove home. These had no impact, nor did a couple similar meds my wife gave me when I got home.

I couldn’t sleep. Between the discomfort and the worry about what was going on, I just couldn’t sleep.

Why worry? Well, just a couple weeks prior to this point, Jeffrey McManus (a fellow speaker and colleague) passed away in the night due to a heart attack. And he was two years younger than me. So this idea of a heart attack was pretty fresh in my mind, and I knew that the symptoms for a heart attack and heartburn were similar.

So I got online and started doing some research to find out the differences. It turns out there are NO MEANINGFUL DIFFERENCES. If you have heartburn that doesn’t respond to antacid or anti-gas meds, you should assume you are having a heart attack.

As a result my wife drove me to the ER, where they admitted me right away of course. They don’t mess around with chest pain.

Interestingly enough, after a bunch of tests they found no indication of a heart attack, but also no indication of heartburn. In other words, no immediate cause of my pain and discomfort. They gave me the choice to go home or remain in the hospital for some further tests the next day – mostly what’s called a stress test where they have you run on a treadmill while monitoring your heart.

My wife opted for me to stay. I _probably_ would have stayed anyway, but she was clear that in her mind this wasn’t optional (have I said I have the most amazing wife?).

A few hours later they said they wanted to a CT scan. One of the techs that does the stress test noticed that one of my blood tests wasn’t quite normal, and thought it would be worth doing a scan before the stress test. This turns out to have been a life-saving call.

The CT scan revealed something called an ascending aortic aneurism with dissection: http://en.wikipedia.org/wiki/Aortic_dissection

In the majority of cases this condition is identified post-mortem. I was extremely fortunate that it was discovered while I was still around, before the aneurism burst.

Everything changed at this point. As in they wouldn’t let me sit up, they immediately put me on a regimen to radically reduce my blood pressure, and they started checking with all hospitals in the Twin Cities to find the first available heart surgeon. The level of intensity was a _lot_ higher than it has been.

I think fortunately the next surgeon was in my hospital. The other primary possibility was in another excellent heart hospital, so that would have been fine, but this way I didn’t need to be transported across the city.

I woke up somewhere around 8 hours later. Or I should say that my first memory of waking up was around 8 hours later, as I apparently “was awake” after perhaps 5 hours and my family was there with me, but I have no recollection of that time.

I was in the hospital for another week before they sent me home, and even then my memories are a bit hazy due to the pain meds.

So here I am after about 1.5 weeks of being home and I’m on a lot less pain meds, so my mind is at least reasonably clear. I have another 10 weeks of healing before I can resume all normal activities, though just 4-6 before I can do things like go back to work full time.

I apologize to the LA .NET User Group and VS Live Redmond attendees who’d hoped to see me, but as you can tell I really had no choice but to cancel my appearances at those events. I do expect to be at Modern Apps Live and VS Live in Orlando in mid-November.

The primary things I’ve learned from this whole thing include:

  • You can’t easily tell the difference between heartburn and actual heart issues, so if antacids don’t work, error on the side of caution
  • I have the most amazing family and friends, who’ve been incredibly supportive, and continue to be supportive as i heal
  • My coworkers at Magenic are wonderful, and have ensured that I have no stress or worry about anything work-related, in addition to being broadly supportive through goodwill and kind thoughts
  • The online/professional communities to which I belong (CSLA .NET, various Microsoft communities, Regional Director, MVP, and others) have also been extremely supportive, and I truly appreciate the outpouring of goodwill

Some other observations:

  • I hate sleeping on my back – I always have disliked it, but after being confined to that option for a couple weeks I feel comfortable using the word ‘hate’
  • Hospital food is actually pretty good when you haven’t eaten anything for days
  • I am _shocked_ by how weak something like this can make a person – to the point that something simple like taking a shower is a major undertaking that takes a lot of planning and requires a long nap afterword

On the other hand, the fact that I’m here to make these observations and to write this blog post makes it all worthwhile.

I wanted to write this post for a couple reasons.

First, to thank everyone who has been and continues to be so supportive as I recover.

Second, to let colleagues and followers in my various communities know why I went dark so suddenly, and why things like CSLA releases might take longer than normal.

Third, to share my actual medical experiences in the hopes that even one person someday goes to the ER when they have “heartburn”. In my case I was sensitized to this issue due to the recent death of a colleague, and I’d prefer to have as few other people suffer that fate as possible.

Sunday, August 11, 2013 3:07:31 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Tuesday, July 9, 2013

A lot of people, including myself, felt (feel?) deeply betrayed by Microsoft’s rather abrupt dismissal of what some of us thought was the best client-side dev platform they’ve ever come up with: Silverlight.

Perhaps even more people are worried about the future of WPF in the face of Microsoft’s obvious focus on the new Windows Runtime (WinRT) at the expense of the Desktop (Win32) technologies such as Windows Forms and WPF.

I’m a little more sanguine about this than many people.

I never really bought into the idea of Silverlight as a cross-platform technology. I know, I know, Microsoft made it work on some flavors of OS X. But they didn’t take it to Linux or Android, and Apple blocked them from ever going to the iPad or iPhone. And honestly, you have to follow the money. Companies don’t exist to do good, they exist to make money, and Microsoft didn’t charge for Silverlight and so only stood to lose money by enabling us to build apps that ran on non-Windows devices just as well as Windows devices.

(as an aside, this is why I never get too upset when Google drops yet another free service – the way I look at it is that I’m exploiting the hell out of Google’s free stuff as long as they have it, and when they decide to drop a free service I just have to start paying for something I should have been paying for the entire time (but didn’t have to thanks to Google’s amazing “business” model)).

I did buy into the idea of Silverlight as a much safer and easier-to-deploy way of building Windows smart client apps. So to me the truly sad part about Silverlight going away is that it pushed us back toward creating apps that aren’t as safe (out of the sandbox), and that are slightly harder to deploy (ClickOnce).

Perhaps I’m unusual, but I really do buy into the idea that smart client apps don’t need the ability to reformat people’s hard drives, or alter system files, or snoop through my personal documents without my knowledge. In other words, the full client-side .NET/WPF/Windows Forms/Win32 technology stack just isn’t necessary for 99% of the apps I want to build and/or run, and after a few decades of dealing with viruses and malware and other bad stuff, I’m about ready to be done with it!

So here we site, with Silverlight in maintenance mode so Microsoft will keep it running on their platforms for another decade, but without any real assurance that it will continue to work on the Mac. And frankly I don’t really care, because I always thought the Mac was a lark.

To me where we are is simple:

  • Microsoft is treating all of Win32/.NET on the client as legacy, so Windows Forms, WPF, and Silverlight are in the exact same boat
    • They are all stable (essentially unchanging) into the foreseeable future
    • They are all good/viable Win32/Desktop client technologies
    • They will ultimately fade away
  • Microsoft is putting all their energy/money into rapidly bringing WinRT up to speed
    • Being a fan of “follow the money”, I expect that we’ll all eventually move to WinRT
    • WinRT 8.1 shows some good XAML/C# improvements over 8.0, demonstrating Microsoft’s commitment to making this a viable platform
    • WinRT still has a fundamentally flawed deployment/licensing model for business apps, and until they fix this WinRT is pretty much useless for business
    • WinRT still lags in XAML features behind Silverlight 5, but it is catching up
    • WinRT (like Silverlight) will hopefully never do everything WPF does, because then we’d be back to the same malware hell-hole we’re in with Win32

In short, for everyone wishing and hoping for Microsoft to put more energy/money into WPF (or even more far-fetched into Silverlight) I think the answer is that THEY ARE – but they are doing it via WinRT, by eventually providing a viable XAML/C# platform for business development on Windows that escapes the baggage of legacy Win32/.NET/Desktop.

We just need to do two things

  1. Be patient, because WinRT is a v1 technology and will take a little time to mature
    1. Something I’m not worried about, because most businesses are just now getting to Win7 and won’t go to Win8 for a couple more years, so there’s some time for Microsoft to get their act together
  2. Keep the pressure on Microsoft to bring WinRT to the level we need
    1. In terms of licensing/deployment models
    2. In terms of technology capabilities

Let’s face it. Either Microsoft (with us pushing/prodding/helping) provides a viable WinRT platform for us in the future, or we’d better all start learning JavaScript and/or Objective C…

Tuesday, July 9, 2013 10:58:43 AM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Monday, July 1, 2013

After having a couple days to collect my thoughts regarding last week’s Build 2013 conference I want to share some of my observations.

First, I left Build happier with Microsoft than I’ve been for a couple years. Not necessarily due to any single thing or announcement, but rather because of the broader thematic reality that Microsoft really is listening (if perhaps grudgingly in some cases) to their customers. And the display of truly amazing, cool, and sexy laptops and tablets running Windows 8 was really something! I was almost literally drooling over some of the machines on display!

Now to summarize some of my thoughts.

The bad:

  1. They didn’t add support for Silverlight in the WinRT browser (not that anyone really thought they would).
  2. They didn’t fix (or even discuss) the nasty business licensing cost issues around side-loading, meaning most businesses will still find WinRT unpalatable as a development target.

The good:

  1. The changes in Windows 8.1 to provide some accommodations for people who are attached to the Start button are quite nice. To be honest, I was pretty skeptical that these changes were just silliness, but having used 8.1 Preview for a few days now I’m sold on my own positive emotional reaction to having the wallpaper the same on the desktop and start screen (though I’m still not booting to desktop, nor do I plan to do so).
  2. The Windows 8.1 changes that bring the start screen experience more in line with Windows Phone are even nicer. The new item selection gesture (tap and hold) and the fact that new apps don’t automatically appear on the start screen (only on the “app apps” screen) are just like the phone, and make the system easier to deal with overall.
  3. The updates to WinRT XAML are extremely welcome – especially around data binding – these are changes I’ll use in CSLA .NET right away.
  4. The added WinRT API capabilities demonstrate Microsoft’s commitment to rapidly maturing what amounts to a Version 1 technology as rapidly as possible.
  5. The fact that Azure had no big announcements, because they’ve been continually releasing their new stuff as it becomes available is wonderful! In fact, this whole “faster release cadence” concept from Windows, Azure, and Visual Studio is (imo) a welcome change, because it means that the overall .NET and Microsoft platform will be far more competitive by being more agile.
  6. There was a serious emphasis on XAML, and most of the JavaScript content was web-focused, not WinRT-focused – and I think this is good because it reflects the reality of the Microsoft developer community. Most of us are .NET/XAML developers and if we’re going to shift to WinRT someday in the future it’ll be via .NET/XAML. For my part, if I’m forced to abandon .NET for JavaScript I’ll learn general JavaScript, not some Microsoft-specific variation or library – but if I see a viable future for .NET in the WinRT world, then I’ll continue to invest in .NET – and this conference was a start on Microsoft’s part toward rebuilding a little trust in the future of .NET.
  7. The new 8” tablet form factor is way nicer than I’d expected. I had a Kindle Fire and ultimately gave it to my son because I already have an eInk Kindle and couldn’t see a good use for the Fire. But an 8” Win8 tablet is a whole different matter, because it runs the Kindle app and it runs Office and WinRT apps so it is immediately useful. The small screen means amazing battery life and light weight, and the ATOM processor means it runs Win32 and WinRT apps – I’m really enjoying this new Acer device!

The neutral:

  1. As I tweeted last week the one recurring bit of feedback I heard from people was disappointment in the lack of WPF announcements or content. I’m not overly concerned about that, because I view Windows Forms, Silverlight, and WPF as all being the same – they are all in maintenance mode and Microsoft is just keeping them running. The same unprecedented stability enjoyed by Windows Forms developers for the past 8 years is now the reality for WPF too. Sure, this might be a little boring to be on an unchanging platform, but the productivity is hard to beat!!
  2. Related to the lack of WPF content I want to suggest a different interpretation. WinRT with .NET/XAML is (imo) the “future of WPF”. What we really need to see is WinRT XAML continuing to rapidly evolve such that it becomes a natural progression to move from WPF/Silverlight to WinRT at some point in the future. I am encouraged by what was presented at Build in terms of the evolution of WinRT XAML, and if that continues I think we’ll find that moving to WinRT will become pretty attractive at some future time.
  3. There was some content on the use of WinRT to create business apps, and that content was welcome. If-and-when Microsoft does fix the side-loading licensing issues so WinRT becomes viable for business use it is nice to know that some serious thought has gone into design and development of business apps on the new platform.

In conclusion, the overall vibe at the conference was positive. Attendees were, from what I could see, enjoying the conference, the content, and the technology. Moreover, I think Microsoft has taken a first small step toward rebuilding their relationship with (what was once) the Microsoft developer community (not that Azure ever lost this rapport, but the Windows client sure did). If they continue to build and foster this rapport I think they can win back some confidence that there’s a future for .NET and/or Windows on the client.

Monday, July 1, 2013 4:14:12 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Thursday, May 23, 2013

OK5KOutside of my professional life in computing, one of the many things I’m involved with is the Eden Prairie Optimists.

(I know this blog has a global reach, but I also know a lot of people in and around the Twin Cities read it, and this post is mostly for you)

The Optimist organization is focused on helping our youth grow up to be good citizens and successful people. To that end the many chapters around the world help organize and/or fund many different youth oriented programs.

Our particular chapter funds local anti-drug and alcohol programs in the schools, organizes an annual fishing derby for kids, helps fund children’s cancer research, teaches firearms safety classes, holds oratorical and essay contests for youth, and several other programs each year.

We just wrapped up the spring firearms training class, and plan to hold another in late summer.

In June we’ll send all the crossing guards (kids) from Eden Prairie schools to an amusement park to thank them for their service to the community.

June will also see our annual fishing contest, where we get kids and their parents (and sometimes grandparents and others) outside in a nice city park to see who can catch the biggest fish. You haven’t lived until you’ve seen the excitement on the face of 5 or 6 year old who just caught their first fish ever!

July 4 is the date for our annual OK 5K run/walk. This is one of our primary fundraising events, raising the money that allows us to provide these services and programs to the community. Even better, this is a great family event that is open to all ages. We’ve had little kids walk the route, and a WWII veteran run it. This year we’re honored that the City of Eden Prairie asked us to include our event as part of their overall series of events for the July 4 week, and I expect the event to be bigger and better than ever!

Later in the year we’ll sponsor the Halloween on the Mall event so kids have a safe, fun, and warm place to trick or treat. My kids always went around the neighborhood in the dark, their costumes hidden beneath coats to keep them warm. These days kids can show off their costumes in the warmth of the mall, without the risk of cars racing down the streets.

And we’ll fund next year’s drug and alcohol awareness programs, student achievement awards, and organize our annual essay and oratorical contests.

Although a lot of people look at all these things and wonder how someone like me, who has kids now, has time to be involved. My answer is simple: I include my kids. What’s the point of a youth focused organization that does youth focused events if you don’t include your own kids? Both of my boys have been involved in a lot of the Optimist activities – either as participants or as contributors. Personally I hope that this grounding in civic activities stays with them through their lives so they become involved in something similar as adults. I know my interest in civic involvement flows from my father and the ways he got me involved when I was a youth.

Thursday, May 23, 2013 9:41:20 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Monday, May 6, 2013

Mary Jo reports that Windows 8 sales are roughly on par with Windows 7 sales. Which is good news for Windows 8, because Microsoft said (at the time) that Windows 7 was the fastest selling OS to that point.

She also points out that actual usage of Win8 isn’t terribly high at this point – which isn’t at all surprising (see my blog post on if Windows 8 is a success).

The real value of the numbers just provided by Microsoft is that they are an apples to apples comparison between Win7 and Win8, and that they demonstrate that Win8 is following roughly the same track as Win7 in terms of production and sales.

That’s good news, given that Win7 is (by nearly any measure) extremely successful, and is considered by many people to be the best OS Microsoft has released. Windows 8 on an x86 machine can basically be viewed as a faster version of Windows 7, plus the ability to run WinRT apps, and so I pretty much think of Windows 8 as a slight improvement over the already excellent Windows 7.

As Mary Jo notes, we don’t know if the 100 million figure includes Windows RT. At this point I’m not sure if that really matters – at least not from a business app dev perspective. Windows RT can only run WinRT (Windows Runtime) apps, and the WinRT dev platform is too new and immature to risk targeting it when building large enterprise apps (not to mention the side-loading cost issues).

At this point most organizations appear to be building new smart client apps using WPF, and of course they continue to maintain a great many Windows Forms apps. The strength of Windows 8, as I see it, is that it remains an extremely relevant and potent business app platform via its desktop mode, which runs Win32/.NET apps at least as well as its predecessor.

If Microsoft resolves the side-loading cost issues so licensing and deployment becomes reasonable for small, medium, and large organizations I do think WinRT has a reasonable shot at being the successor to Win32/.NET for business developers. In another version or two it should stabilize and mature to the point that it is pretty comparable to WPF, and thus is attractive and useful to C#/XAML developers. That’ll probably take a couple years, which is also the timeframe that corporate IT groups will probably be willing to consider upgrading from Windows 7 to Windows 8.

In summary: good Windows 8 sales today means that betting on WPF for smart client development should be pretty safe, and will hopefully have a decent migration path to WinRT in 2-3 years.

Monday, May 6, 2013 10:30:54 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Thursday, May 2, 2013

This question keeps floating around the Internet, and I thought I’d give my viewpoint.

Obviously I have no more intel on sales numbers than anyone else (which means pretty much nothing). So anything anyone says at this point is pretty much speculation, and that includes me too.

So rather than speculate uselessly, let me provide a bit of narrative.

Almost nobody buys operating systems. This is a truth that has existed since the dawn of the concept of an operating system. Operating systems exist as an abstraction over the hardware that allow developers to build applications without having to deal with the low-level details of interacting with hardware.

Of course over the past couple decades “operating system” has come to include a lot of things. At a minimum these days people expect the OS to include drivers for every type of device ever invented (or to be invented), a nice user interface, and a set of pre-installed “first party” apps. None of that stuff actually is the OS, but most people view it as part and parcel.

Even so, very few people buy an OS. They buy a device (computer, ultrabook, tablet, phone) because the device enables them to do something useful. More precisely the device allows them to run software (apps) that do something useful.

(I’ll freely admit that I’m biased. As a software developer, I do tend to see software as the most important part of this whole picture. And I think I’m correct, because if you give anyone a device and tell them they can’t install any software on that device I can pretty much guarantee you that they won’t be able to use the device for much of anything.)

I’d also suggest that there are two broad categories of “person” in this discussion.

There are regular individuals like you and me. We buy devices ourselves, investing hundreds or thousands of dollars so we can do things like access the Internet, write letters, manage home budgets, send email, play games, etc. Our motivations in buying a device are to gain access to the apps that allow us to do those things we consider worthwhile in life – whatever that might be for each of us. And yes, people like me also get joy out of the device itself because we’re geeks, but most people just see these things as extremely useful tools or toys.

There are organizations (which are also apparently “people” thanks to Citizens United). They buy devices for their employees so the employees can do things that provide productivity and value to the organization. Some organizations are OK with employees using those devices for personal reasons, others aren’t. In almost no case does an organization buy devices other than because an employee needs the device to perform important aspects of their job.

I keep running into people who think there’s no difference between these scenarios. And maybe I’m a little slow, but I really struggle to see how organizations are going to start buying (and supporting) devices outside the scope of enabling employees to be productive. Nor do I see how dock workers, administrative assistants, lab technicians, and other employees are going to start purchasing devices for the intent of using them at work. Actual human people buy devices to make their personal lives better, not because they intend on using them as an alternative for a work-supplied device.

(In other words BYOD is pretty much bunk – but that’s another blog post.)

To judge the success of Windows 8 then, one must evaluate it in the context of people buying devices for their own use, and organizations buying devices for their employee’s use.

 

From what I’ve seen there is some resistance on the part of people in terms of buying Windows 8. On the tablet side of things there aren’t a lot of apps, and people buy these devices for apps, not the device itself. On the ultrabook, laptop, and desktop side of things people buy a PC because they want to run PC software – all of which runs on Windows 7 just fine, so there’s no obvious reason to go to Windows 8. But there is an obvious reason not to go to Windows 8: everyone knows it is different, and people fear change.

So if I’m a regular person looking to buy a tablet, I’ll probably gravitate toward the tablet with the most apps – hence an iPad or perhaps a Kindle Fire. And if I’m a regular person looking for personal productivity with Office, CAD software, or gaming, I’ll be perfectly happy with Windows 7 (or even Vista) as long as my current computer keeps working.

Please note that I am personally not a regular person in this context. I’m a geek, and thus have been running Windows 8 since long before it was released. But I have sat in restaurants and overheard conversations about Windows 8 by random people – conversations that lead me to be pretty confident that my previous paragraph is correct.

None of this says that people won’t slowly adopt Windows 8 as their existing computers need replacing, because they probably will. And as more people actually start using Windows 8 and tell their friends and neighbors that it really isn’t that scary, then the fear of change will fade. And with any luck the number of apps available for WinRT will grow relatively fast so people will consider buying Windows 8 tablets because they feel confident those devices have good and useful apps.

Does this mean Windows 8 is a success or failure? I don’t know. We are in uncharted territory to some degree, because today’s computers (with their i3, i5 and i7 processors) are essentially identical in performance to computers from three years ago. For the first time in recent memory (and perhaps ever) computers have stopped getting faster, eliminating one of the primary reasons why people would buy a new computer. Now the only reason to buy a new computer is a complete failure of your existing computer, and computers often last a very long time…

In other words, Windows 8 adoption in the personal space might be slower than in the past (we don’t really know). But if it is, I strongly suspect one major factor has less to do with Windows 8 than the reality that few people are motivated to spend hundreds of dollars to buy a computer that isn’t any faster than the one they already have.

 

On the organizational side of things the dynamic is entirely different. Organizations try to minimize the number of device types, operating systems, and operating system versions because it is extremely expensive to support more than one. Organizations use “apps” (applications, or enterprise software) that is required for the organization to function. When those apps fail the business loses money by the second – often many thousands of dollars per second. Upgrading from Windows X to Windows Y is never done without extensive testing to ensure those important apps work on the new operating system version. And such upgrades are done according to an orchestrated plan that minimizes the time the organization is forced to support both versions.

This is nothing new. This is the reality of enterprise computing that has existed for as long as I can recall (thus dating back well more than 2 decades).

Strangely, I’ve had people argue that this dynamic is no longer true. That organizations are now going to adopt BYOD, even though that directly means supporting numerous devices, operating systems, and operating system versions all at the same time. I’m not sure what these people are smoking, nor am I sure I want to try it because I think whatever they’ve smoked caused some brain damage. But I could be wrong – perhaps organizations are ready to radically increase their IT support costs in order to allow employees to use random hardware devices and operating systems? Or perhaps there is no increased cost to IT because (as one person told me) it will now be the employee’s responsibility to ensure they have a working device at all times – thus all IT support costs will be born by the end users. Something I’m sure will thrill the minimum wage workers in the warehouses who’ll apparently now have to buy and support computers they’d never have purchased before?!?

Back in the world of the sane, what is actually happening is that a great many (most?) organizations are just now migrating from Windows 2000 or Windows XP to Windows 7. This is because those older operating systems are off support, or will be off support in April 2014. No more bug fixes. No more security patches. Nothing. I truly pity any poor souls left on XP a year from now.

This migration from XP to 7 is not cheap. It is not only an IT issue in terms of upgrading hardware, drivers, and operating system installs. It usually also means updating or replacing ancient enterprise software that was written in VB6 or PowerBuilder or other technologies that haven’t been current for many years.

As a result, almost no organizations even have Windows 8 on their radar at all. Virtually nobody is planning for a Windows 8 migration, because they are just now getting to Windows 7. In fact, my informal polling while speaking at conferences around the world is that nobody expects to move to Windows 8 until 3+ years from now.

Does this mean Windows 8 is a failure? Of course not. Remember, these organizations are just now moving from XP to 7. Windows 7 was released in 2009, and only eclipsed XP in 2012 in terms of installs.

Following that time schedule, we won’t know of Windows 8 is a success or failure until around 3 years from now: in 2015.

 

In summary, is Windows 8 a success or failure? I can’t say. Nor can anyone else, even though a lot of people (including myself) speculate about it quite a lot Smile

The space to watch is the personal/individual computing space, because that’ll move somewhat faster than the organizational space.

Like every previous version of Windows, we won’t know the success or failure of this version until 3+ years after its launch, because enterprises always move at a stately (if not glacial) pace.

Thursday, May 2, 2013 10:39:31 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Wednesday, April 10, 2013

I was recently confronted by an odd bit of reality, about which I thought I’d vent a little.

I am the creator and owner of a widely used open source project (CSLA .NET) that has (in one form or another) been around since 1996. If you want an example of an open source project with longevity, CSLA .NET ranks right up there.

And CSLA is “true” open source, in that it uses a liberal and non-viral license, and there’s no commercial option (a lot of OSS projects use a viral license as a “poison pill” to drive any real use of the project to a paid commercial license that isn’t free as in beer or speech).

Recently at a conference I and some colleagues were presenting on some development techniques and patterns, and the code makes use of several open source projects – including CSLA.

Oddly this was a source of blow-back from some in the audience, who thought the talk was “overly commercial”.

Apparently talking about other people’s free open source products are fine, but if you talk about your own then that’s commercial?

And for that matter, how can it be commercial if you are talking about software that is free as in beer and speech? If anything, FOSS is anti-commercial by its very definition…

It would seem, by this ‘logic’, that the primary experts on any given OSS project should not talk about their project, but should instead talk about tools they might use, but don’t actually create or build.

In other words, people attending conferences should never get the best or most direct insight into any OSS product, because presentations by the people who create that product would be somehow “too commercial” if they talk about the stuff they’ve built.

So much for learning about Linux from Linux developers, or jquery from jquery developers, etc.

Obviously that’s all pretty dumb, and similarly I suspect the majority of the people at this conference (or any conference) don’t feel this way and do want the highest quality information they can get.

I think the real issue here is that some reasonable number of people just don’t understand open source.

A lot of people (especially in the Microsoft dev space) have never knowingly used open source – living entirely within the realm of products provided by Microsoft and component vendors.

(whether these people have actually used open source is another matter – and odds are they have unwittingly used things like jquery, ASP.NET, Entity Framework, MVVM Light, Subversion, git, etc.)

I only bother blogging about this because over the past couple years it has become virtually impossible to create any modern app without the use of some open source products.

I can’t imagine anyone building a modern web site or page without some OSS products. Much less a web app that’ll be based almost entirely on OSS products.

Similarly, it is hard to imagine building a XAML app without the use of at least one OSS MVVM framework.

And the same is true with unit testing, mocking, etc.

In short, the best tools available today are probably open source, and if you aren’t using them then you are depriving yourself and your employer of the best options out there.

What this means imo, is that people who think talking about your own open source product is “too commercial” had better grow up and get a clue pretty fast, or they’ll be finding everything to be too commercial…

Wednesday, April 10, 2013 12:04:39 PM (Central Standard Time, UTC-06:00)  #    Disclaimer