Keeping Up: My Current Favorite Resources
Tuesday, December 31, 2013
The central challenge in our profession is keeping up with technology change. Whatever your job, wherever you are in your career, you need to learn lots of new things every year. If you don't, your career is guaranteed to be suboptimal (and probably short).
Along with following the right people on Twitter and reading the trade press, I've come to depend on two subscription services:
- Safari Books Online: For about the cost of one technical book a month, I now have access to an enormous library of current titles on pretty much every subject. Technical blog posts are useful, but for really understanding something, nothing beats a good book. Everybody in IT should subscribe to this service--it's just great.
- Pluralsight: Live training seminars can be wonderful and inspiring, but they're also expensive and time consuming. Web-based training has taken over much of this market, and Pluralsight appears to be the leader. Their audio-over-slides style is simple and works well, and their library is large and growing. I'm especially impressed with how rapidly they get courses posted on hot new topics. And like Safari, their monthly subscription fee for individuals is about the same as buying one book a month, something that all of us should be doing anyway. I've done a couple of courses for Pluralsight, so I get the service for free, but even if this weren't true, I'd happily be a paying subscriber.
Along with these, I'm always looking for new ways to keep up. What are your favorite ways to stay current? Feel free to let me know in the comments.
Understanding NoSQL Technologies on Windows Azure
Monday, November 25, 2013
The NoSQL wave began in the cloud, and so you'd expect cloud platforms--including Windows Azure--to support these technologies. To help people understand the Windows Azure NoSQL options, I've written a Microsoft-sponsored white paper that surveys the topic.
Understanding NoSQL Technologies on Windows Azure
looks at both the native options, such as Windows Azure Tables, and the open source databases that can run in Windows Azure VMs, e.g., MongoDB. The paper focuses on what these technologies are and why you'd use them, rather than how to use them, and the goal is to help you understand and make better choices about using NoSQL databases on Windows Azure.
It's a Cloud World: Are Hosters Doomed?
Tuesday, November 12, 2013
Flying around Europe this fall, I met a lot of worried hosters. In the cloud computing era, what kind of future does a relatively small local hoster have? Given that they're now competing against behemoths like Amazon Web Services and Windows Azure, do they even have a future?
Hosters definitely have a future, but it's different from their present in some ways. Here are some of their challenges:
- Cloud platform providers like Microsoft and Amazon can offer lower prices. While this isn't always true today, it will be in a few years as the cutthroat competition between these giants continues to force prices down. Most hosters won't have anything like the scale and automation of the big cloud providers, and so hosters' higher costs are likely to require them to charge higher prices.
- Some cloud platform providers, such as Microsoft, have relationships with customers that a typical hoster can only dream of. A Microsoft salesperson with a Windows Azure quota is a fierce competitor for a small hoster.
But hosters will survive--they also have some advantages. These advantages include:
- In-country datacenters. Even though regulations that constrain data to remain within a single country's borders are likely to be loosened, this will take time (and it may never happen for some kinds of data). For an organization that wants to outsource its computing infrastructure, this reality constrains them to use a hoster datacenter within their national borders. Large as they are, the big cloud vendors will never have datacenters in every country.
- The ability to offer customized services. Cloud platform vendors provide massive, automated, low-cost computing platforms. To do this, they rely on consistency--they don't do much customization. Local hosters, by contrast, rely on personalized service. They can potentially do anything the customer wants, including providing both physical and virtual machines, installing custom hardware, and more.
- Better SLAs, at least for some customers. I don't mean that hosters will be more reliable--they probably won't be--but they can offer SLAs that provide compensation for business losses. SLAs from the big cloud platform vendors just give you discounts for downtime--they're about pricing, not promises. For some customers, this can be attractive.
- The potential for better support. Especially in smaller countries, local hosters can offer things like support in the local language. The overall relationship with customers might be more personal, too, with the potential for long-term relationships with the people who run the hosters. Big cloud platforms may be cheap, but they also tend to be remote and impersonal.
Should hosters welcome the rise of global-scale cloud platforms? Probably not--they're strong competitors in some parts of their business. But are the countless local hosters scattered across the world doomed? No. They have some advantages that the big guys don't. Even in a cloud world, hosters have a significant role to play.
Visiting Central and Eastern Europe
Thursday, October 17, 2013
I leave Saturday for a speaking tour in central and eastern Europe. I'm talking about cloud computing with systems integrators and IT leaders, and I'm also participating in a few conferences. If you're in the area and interested, I hope to see you there.
The cities and dates are:
A Great Source for Information about Software Quality
Tuesday, September 24, 2013
Software quality is a fundamentally important topic, one that I've written about some
. I was recently clued in to the Pacific Northwest Software Quality Conference
. I've never participated in this event (which is a shame--it looks really good), but I'm deeply impressed by the breadth and depth of the papers and presentations in their archives
If you're interested in this area, I encourage you to take a look.
Notes from CloudBeat 2013
Monday, September 16, 2013
I participate in quite a few cloud conferences, and CloudBeat is always one of the most interesting. CloudBeat 2013
was no exception. It's sponsored by VentureBeat
, and so there's a Silicon Valley startup vibe mixed with a few big, established vendors.
This year's theme was "The Cloud Grows Up", which was perfect for where things are today. A few thoughts from the event:
- In the past, when people at cloud conferences wanted to refer to public cloud platforms in general, they'd say "Amazon". At this event, many speakers said "Amazon or Azure". With its Valley roots, CloudBeat is anything but Microsoft-friendly (the audience sported almost exclusively Macs and iPads), but Windows Azure is clearly getting more mindshare, even here. In public cloud platforms for enterprises, I think we're headed for a two-horse race.
- Multiple vendors talked about being open, letting their customers avoid lock in. This left me wondering: Do these vendors think that enterprise IT leaders (the target audience for these claims) still fall for this? Surely their customers have all figured out that whatever a vendor says, it always wants to lock you in to its products. This isn't evil--it's a rational (even essential) business strategy. And while many IT leaders wish things were otherwise, everybody understands that they're not. So why do the vendor marketing people keep singing this old song? How gullible do they think their customers really are?
- There was lots of OpenStack love at the event. But OpenStack is the cloud generation's attempt to create a multi-vendor standard supported by multiple competing vendors. We've seen this movie many times, and we know how it usually ends: One or two vendors end up with a viable business using a customized version of the technology, often riding the "open" hype to make sales. If you're HP or IBM, both of whom came in dead last in Gartner's most recent IaaS Magic Quadrant (and both quite visible at this event), this strategy is probably your best shot at success. But customers are wise to claims of openness (see above), and so it's a challenging road to walk.
Gartner's 2013 MQ for Public Cloud IaaS: Catching Up With Reality
Thursday, September 05, 2013
I love Gartner's Magic Quadrants. They do a great job of summarizing lots of useful information in a clear, simple way. (I also love the Gartner Hype Cycle for the same reason.) And for anybody interested in the cloud, the latest MQ for Public Cloud IaaS
is essential reading.
But Gartner analysts are people, just like you and me. They have feelings and histories that influence their perspective. Looking at the 2013 IaaS MQ reminded me of this.
To get some perspective, here's the 2012 Magic Quadrant for public cloud IaaS:
Amazon Web Services is out in front, as it should be, but there are four other vendors in the Leaders quadrant.
Here's the 2013 MQ for public cloud IaaS, published just ten months later:
AWS is now way ahead, almost alone in the leaders quadrant. What's happened here?
One possibility is that AWS really has made that much progress in ten months, leaving its competitors in the dust. Another is that its competitors, including the former leaders, have stood still, letting Amazon widen its lead. But is it likely that either (or both) of these things were large enough to warrant such a big change in only ten months? No.
What's more likely is that Gartner's perception has caught up with reality. The 2012 MQ always bothered me--it just didn't reflect my experience. I spend much of my time in the cloud world, whether speaking at conferences or talking with enterprise IT leaders or working with cloud vendors. Everybody in this world knows that Amazon is the IaaS leader--there's no question. Yet even at the end of 2012, asking people who was second in IaaS usually produced a blank stare. Nobody else was even close.
While companies like Terremark, Savvis, CSC, and Dimension Data are fine organizations, they're primarily offering VMware-based enterprise cloud solutions. If you believe that the future likely belongs to what Gartner calls "best-effort" clouds (as I do), these companies (which mainly offer what Gartner calls "reliable" clouds) are barely in the same market as Amazon. And their public cloud market share in late 2012 was massively smaller than Amazon's, as it is today.
So why did Gartner put all of them in the 2012 Leaders quadrant? First, it was less clear then that enterprises would take to best-effort clouds. The reliable clouds provided by these other vendors looked like they might be a better choice. Just as important, for a group of Gartner analysts coming to the cloud from the virtualization market, VMware-based solutions were bound to look attractive. It's what everybody already had, and it was what the analysts knew.
Given all of this, I'd suggest that the Gartner 2013 MQ doesn't reflect change in AWS as much as it does change in Gartner's understanding of the market. It's the 2012 MQ that was off the mark; the 2013 version comes closer to reality.
A few more thoughts:
- Microsoft finally released its public cloud IaaS support in mid-2013, so it appears in the 2013 MQ for the first time. And Gartner got the positioning right: Windows Azure IaaS belongs in the Visionary quadrant today. The Ability to Execute axis is usually Microsoft's strength in an MQ, however, and since Gartner seems to think that the company's IaaS vision is strong, I'd be surprised if Microsoft doesn't move into the Leaders quadrant in the next iteration. With best-effort clouds for the enterprise, I expect to see a two-horse race between AWS and Windows Azure.
- The positioning of HP and IBM in the 2013 quadrant is nothing short of shocking. Anybody who believes that Gartner MQs reflect some kind of pay-to-play arrangement, that big vendors effectively buy their way into the Leaders quadrant, should pay close attention. I admire the analysts' courage in showing their honest opinions about a couple of very large Gartner clients.
- Google isn't included in this MQ because its public cloud IaaS offering, Google Compute Engine, is still in beta. If GCE one day leaves beta, my guess is that Gartner will fit it into the Niche Players quadrant. The reason for this is simple: GCE supports only Linux, and for Gartner's enterprise clients, not having Windows is a non-starter for many mainstream scenarios.
Cloud SLAs: Pricing, Not Promises
Saturday, August 31, 2013
Both Amazon Web Services and Windows Azure offer service level agreements for VM availability. The numbers are pretty good, too: 99.95% for both EC2 and Windows Azure Virtual Machines. Most people I talk with look at these numbers and assume that the cloud providers are promising this level of availability. The truth, though, is somewhat different. These cloud SLAs are really about pricing, not promises.
What happens if either AWS or Windows Azure fails to meet their published SLA? The answer is that you get credits--discounts--on the money you spent on the service that month. At most, they'll take your bill for the month down to zero.
When I give talks about public cloud platforms, one of the most common questions I get is whether the cloud vendor will agree to pay penalties that actually make up for business losses when failures occur. For the big players, the answer (publicly, at least) is no. They'll just give you discounts on the cloud services you bought that month.
Some cloud service providers even offer 100% SLAs, a number that's awfully hard to maintain. It looks great in ads, though, and since failing to meet it occasionally just means giving customers a discount, why not claim it?
So are SLAs meaningless? No. Even though the big cloud providers aren't really making promises about availability, they are putting their reputations on the line. Over time, any cloud vendor that doesn't meet its published SLAs will have a hard time attracting and keeping customers. This gives them a strong incentive to hit their published targets.
Still, don't be confused. These SLAs are discounting mechanisms, not guaranteed service levels. They're about pricing, not promises.
The World's Most Dangerous Technology
Tuesday, July 30, 2013
What is the world's most dangerous technology? Is it, say, nuclear weapons? Or maybe bio-engineered food?
No. The world's most dangerous technology is Windows Update.
Think about it. Every Patch Tuesday, Microsoft puts whatever code it wants
directly into your operating system. While many organizations test updates to make sure they don't break anything, how many check to make sure that an update doesn't steal sensitive data off your disk? Pretty much nobody.
Suppose the government of North Korea announced tomorrow that they'd acquired all of the assets of the Microsoft Corporation. What would we do? The answer is clear: We'd all turn off Windows Update immediately. We would never trust Kim Jong-un with this power. Yet we do trust Microsoft, mostly without even thinking about it.
Remember this the next time an enterprise IT leader tells you that he or she will never trust public cloud platforms. The level of trust that enterprises already have in Microsoft far exceeds what Windows Azure or another cloud platform asks of them.
Why do we trust Windows Update? Two reasons: It provides real benefits, and it's proven to be trustworthy over time. As long as these same two things are true of public cloud platforms--and they are so far--we'll also learn to trust them.
We're not there yet, but the day when trusting a public cloud platform is as unremarkable as trusting Windows Update is coming.
Notes from Microsoft Build 2013
Sunday, June 30, 2013
Microsoft's Build conference, the renamed Professional Developer's Conference (PDC), is always interesting. Last week's event left me with a bunch of thoughts:
- The level of change we're seeing right now is extraordinary. Both servers and clients are changing at the same time: On-premises datacenters are moving to cloud platforms, while phones and tablets have become important clients alongside desktops and laptops. (This isn't the post-PC era--desktops and laptops will matter for a long time to come--but it certainly is the PC+ era.) It's hard to think of another time in our industry's history when so much was happening at once. It's a great time to be in this profession, isn't it?
- The era of big-bang conference announcements is waning. There wasn't much new here, largely because of the nature of the world today. Rather than a bunch of big changes announced once every couple of years, new things are announced every few months. The move to a cloud/mobile world makes it possible to update software more often, and so the vendors are doing it. Apple still manages to pull off the Big Reveal periodically, but every other vendor seems to be moving away from this.
Windows 8 is a long game. The right metric isn't success (however it's measured) in the next three months--it's the next three years. Windows on clients will be a fundamentally important technology for a long time to come, and so what Microsoft does here really matters. Given the magnitude of the change, though, it's going to take everybody a while to work out how that change should look, which is what's driving the updates in Windows 8.1 and the rapidly morphing form factors of Windows 8 devices. We're sure to see more change before things settle down.
One more interesting point: The attendees at Build were pretty evenly spread across all ages. There was plenty of gray hair, but a good chunk of attendees were in their
twenties and thirties. Given the global university norms that
bias most new graduates toward Linux, this is a good sign for the broad Microsoft ecosystem.
One More Time: What is PaaS?
Wednesday, May 01, 2013
Defining Platform as a Service is hard. I've written about this previously
, but as cloud platforms advance, it's getting even harder. Going forward, it's possible that the idea of PaaS will become so blurry, so loosely defined, that it loses its value as a technology category.
Look at what Amazon Web Services offers today, for instance. EC2 provides basic Infrastructure as a Service. (In fact, an accurate way to define IaaS is to say that it's what EC2 does.) AWS Elastic Beanstalk provides a service that most people would categorize as PaaS. But AWS also provides options in between these two. CloudFormation lets you define and manage groups of resources together, such as virtual machines, databases, and queues. Another AWS service, OpsWorks, provides a more powerful way to group and manage resources, including the ability to specify behaviors using Chef.
Is OpsWorks PaaS? Is CloudFormation PaaS? There's no clear answer to these questions, since there's no real definition of PaaS. Amazon calls OpsWorks a DevOps solution, latching onto a more current buzzword than PaaS, but how is DevOps different from PaaS? PaaS fans have sometimes categorized it as "NoOps", one step further down the line from DevOps, but again, these categories aren't well-defined.
Whatever they're called, both OpsWorks and CloudFormation provide useful services that build on top of IaaS, making life easier for people who build, deploy, and manage applications. This is exactly what PaaS does, although the details vary across different offerings.
So what is PaaS? The honest answer is that nobody knows. And when nobody knows what a term means, that term's value is bound to shrink.
Talking about ALM in Africa and the Middle East
Thursday, April 18, 2013
I'm giving presentations on application lifecycle management next week in some interesting places. The cities and dates are:.
- April 22: Riyadh, Saudi Arabia
- April 24: Johannesburg, South Africa
- April 26: Istanbul, Turkey
The events are all for IT leaders, and as is perhaps too common these days, pretty much all of them are invitation-only. Still, if you're in any of these cities and interested in a broad view of ALM and its impact on the business, I hope to see you there.
And you don't want to see my travel schedule for this trip; speaking in these three cities in five days requires a whole lot of flying.
Keynote Videos from TechDays
Saturday, March 23, 2013
Earlier this month, I gave a couple of keynotes at Microsoft TechDays in The Hague. One is aimed at developers, and the second is meant primarily for IT infrastructure people. Videos of both have been posted, so here are descriptions and links for the two talks.
Whether we like it or not, it’s becoming a devices and
services world. Traditional applications still matter, of course, and they will
for a long time to come. But new applications often have to support phones and
tablets, and many can benefit from running their server logic in the public
cloud. In this keynote presentation, David Chappell walks through the world
of modern applications, focusing on three things: clients, including Windows 8;
services, such as applications built on Windows Azure; and how the development
process is changing to support this new world. The goal is to give you a broad
perspective on what’s next in application development in the Windows world.
(The video begins with an introduction in Dutch by the Managing Director of Microsoft Holland. My part starts around 14:30.)
What is a private cloud? How is it different from a public
cloud? And why should you care? In this keynote presentation, David Chappell
gives a perspective on these questions. Using examples from Windows Server
2012, System Center 2012, and Windows Azure, he explains the similar
technology that underlies both cloud types. He also shows why the different
benefits that private and public clouds provide will lead most organizations to
use both of them. The goal is to provide a big-picture view of the changes that
cloud computing is bringing to just about every datacenter.
(This video also begins with a Dutch introduction. I come on around 7:00.)
March Speaking Schedule
Monday, March 04, 2013
I'm visiting some interesting places this month, giving talks about cloud computing, modern application development, and related topics. Many of the events are invitation-only, but not all, so I'll post the links I have.
The cities and dates are:
Why Cloud Computing Splits Enterprise and ISV Developers
Monday, February 04, 2013
Up to now, building custom enterprise applications for
in-house use was much the same as building packaged applications that were sold
to enterprises. Whether a developer worked for an insurance company or an
independent software vendor (ISV), her skills could be similar. Moving
between the two often didn’t require much retraining.
Increasingly, though, that’s no longer true. Developers who
work for ISVs now need different skills than developers who create custom
applications for enterprise users. And the change is caused by cloud computing.
In the pre-cloud era, applications built by both enterprises
and ISVs were designed to serve users at a single organization, either the
enterprise itself or a customer of the ISV. Accordingly, those applications
were built to be moderately scalable and to run on servers inside
the organization’s datacenter.
For enterprise developers, the rise of the public cloud doesn’t fundamentally change
this. True, custom applications used by the organization's employees might run their server
logic on a public cloud platform, such as Windows Azure or Amazon Web Services,
but the target user population remains the same. Because of this, the
application’s scalability and reliability requirements are also the same.
For ISVs, however, cloud computing has given rise to
Software as a Service (SaaS). A SaaS application serves users at many customer organizations
from a centralized instance of the software, which means it must be much more
scalable than a traditional enterprise application. Since it serves so many users, the
application must also be more reliable—a failure affects everybody, not just
the users at a single customer. And handling many customers means that the
application must be multi-tenant, able to separate data and more for all of the
organizations that use it.
Building this kind of scalable, reliable, multi-tenant
application is significantly more challenging than building traditional
single-tenant software. As a result, enterprise
software developers won’t typically create applications like this. Why waste
the effort? But the ISV world is shifting rapidly to SaaS, which means that ISV
developers do need to face this challenge. The result is that enterprise developers
and ISV developers need different skill sets today because they need to build different
kinds of applications.
As technologies get more diverse, the people who work with
those technologies must get more specialized. The split
between enterprise and ISV developers, rooted in the rise of SaaS, is just one
more example of this general principle.
An Interview About the Cloud
Tuesday, January 22, 2013
I sat down with my friend David Gristwood in London recently to talk about Windows Azure, creating SaaS applications, how enterprises use public clouds, and other related topics. I've known David for many years--we once visited Petra in Jordan together, a really cool place--and it's always a pleasure to talk with him.
The video's lighting leaves a bit to be desired, but if you're following this area, the content might be interesting to you. The interview is here