tag:blogger.com,1999:blog-61988382009-12-18T08:48:41.050-08:00David Chappell's Blog :: OpinariHelping IT professionals understand, use, and make better decisions about enterprise software.David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.comBlogger118125tag:blogger.com,1999:blog-6198838.post-62789820353499077862009-12-01T08:13:00.000-08:002009-12-01T08:23:44.839-08:00Interviews from BerlinI spoke at TechEd Europe in Berlin last month, which was really a pleasure. While I was there, I sat down for two short interviews with Dutch IT students. Rather than asking me about technology, as people usually do, they wanted to talk mostly about the work I do: speaking and writing.<br /><br />As a result, the interview isn't at all technical, but they certainly asked some original questions. I enjoyed the conversation, and if you're interested, the two segments are <a href="http://www.youtube.com/watch?v=hkfFXjn7Yzk&NR=1">here </a>and <a href="http://www.youtube.com/watch?v=sXBkT3ARG98&NR=1">here</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-6278982035349907786?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-68104481822496073482009-11-03T09:18:00.000-08:002009-11-03T12:12:05.696-08:00An Interview on Cloud PlatformsIn London on my recent Azure speaking tour, I sat down with my friend David Gristwood from Microsoft for a conversation. We talked about a range of things, focusing mostly on what companies other than Microsoft offer in this space.<br /><br />It's hard to compare cloud platforms. They're all different in significant ways, and they all focus on their own set of problems. Despite this, I tried in this interview to give short summaries of my perspective on some of today's most visible options, including Amazon Web Services, Google AppEngine, and Force.com. If this sounds interesting, you can watch the interview <a href="http://channel9.msdn.com/posts/David+Gristwood/David-Chappell-in-conversation-about-Windows-Azure-and-the-cloud/">here</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-6810448182249607348?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-33254439503925685982009-10-27T18:52:00.000-07:002009-10-28T06:00:00.059-07:00The SharePoint 2010 Developer PlatformThe popularity of SharePoint continues to amaze me. It's a useful technology, so I'm not surprised that people like it. What I marvel at is how rapidly it's spread. Are there any Windows customers left who aren't using it in some way?<br /><br />SharePoint is a platform for building applications as well as an application itself, but its platform aspect hasn't gotten as much attention. At least in part, this is because the SharePoint development environment hasn't been as easy for .NET developers to use as it might have been.<br /><br />Yet a SharePoint app is fundamentally an ASP.NET app, so the two worlds have a good deal in common. With the 2010 release, Microsoft has put a significant amount of effort into making SharePoint a better development platform for creating what might otherwise be straight ASP.NET applications.<br /><br />If you're interested in this area, I've written a Microsoft-sponsored white paper titled <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=5184cb27-98d9-4cc0-bb0b-4b24d5b62db6">The SharePoint 2010 Developer Platform: An Introduction for ASP.NET Solution Architects</a>. The paper's goal is to provide a big-picture view of SharePoint as a platform for creating applications. It's clear to me that with the advent of SharePoint 2010, a significant number of applications that might have been built using plain ASP.NET will instead be built on SharePoint. If you're interested in why, you might find the paper useful.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-3325443950392568598?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com7tag:blogger.com,1999:blog-6198838.post-39376957783139392592009-10-01T04:23:00.000-07:002009-10-01T04:28:24.679-07:00Azure Speaking Tour: Asia DatesIt's taken a while to come together, but the Asian cities and dates for this tour are now firm. They are:<br /><ul><li>Tokyo: October 13-14</li><li>Singapore: October 19</li><li>Bangalore: October 21</li><li>Mumbai: October 23</li></ul>I'm really looking forward to returning to all of these cities.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-3937695778313939259?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com1tag:blogger.com,1999:blog-6198838.post-21461308390772521532009-09-20T16:15:00.000-07:002009-09-20T16:24:42.296-07:00Azure Speaking Tour: Europe DatesHere are the European cities and dates for my fall Windows Azure speaking tour:<br /><ul><li>London: October 6<br /></li><li>Munich: October 7<br /></li><li>Paris: October 8</li></ul>It's going to be a busy week.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-2146130839077252153?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-43450464147183882572009-09-14T17:43:00.000-07:002009-09-15T15:50:12.473-07:00Updating the Windows Azure StoryIf you're paying close attention, you already know this, but it's still worth pointing out that Microsoft has changed various aspects of what was called the Azure Services Platform. It's now known as the <em>Windows Azure platform</em>, and some pieces have been deleted, such as the Workflow part of .NET Services. For a current description, take a look at the updated version of my paper <a href="http://go.microsoft.com/fwlink/?LinkId=158011">Introducing the Windows Azure Platform </a>(formerly called <em>Introducing the Azure Services Platform</em>).<br /><br />Is this the end of changes in this technology? Probably not--there may well be more updates before it's generally available later this year. Still, if you care about cloud computing, keeping up with Microsoft's cloud platform isn't a bad thing to do.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-4345046414718388257?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com5tag:blogger.com,1999:blog-6198838.post-51452224814942057722009-09-13T19:20:00.000-07:002009-09-13T20:13:44.332-07:00Azure Speaking Tour: US DatesI'm spending most of the next couple of months on a Microsoft-sponsored speaking tour focused on the Windows Azure platform. The US cities and dates are:<br /><ul><li><a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032423712&Culture=en-US">Boston</a>: Sep. 18</li><li><a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032423715&Culture=en-US">Chicago</a>: Sep. 21</li><li><a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032423719&Culture=en-US">Reston</a>: Sep. 23</li><li><a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032423720&Culture=en-US">Dallas</a>: Sep. 28</li><li><a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032423815&Culture=en-US">Mountain View</a>: Oct. 29 </li></ul>Many of the events are invitation-only (and I don't control the invite list). Not all of them are, however, so if you're interested in Azure, I hope to see you there.<br /><br />During the first few weeks of October, I'll be speaking in Europe, Japan, and India. I'll post the cities and dates for these as soon as they're all firm.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-5145222481494205772?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com6tag:blogger.com,1999:blog-6198838.post-15638543703130494212009-08-14T12:18:00.000-07:002009-08-14T12:47:23.190-07:00Is SOA Failing? A 2008 InterviewI've avoided commenting much on the collapse of SOA. This is partly because I've been focused on other things, like cloud computing. It's also because I wanted to avoid colliding too much with the <a href="http://blogs.oracle.com/davidchappell/">Oracle David Chappell</a>, whose perspective on this issue has been somewhat different than mine. Plenty of people were out there making the points that I would have made, and so adding to the confusion didn't seem to have much value.<br /><br />Still, I've just run across <a href="http://www.informit.com/podcasts/episode.aspx?e=FEAE2CF1-D6D7-4A7D-904C-160B91C607A9">a video interview </a>that I recorded quite a while ago (June 2008). It's a conversation with my friend Ted Neward, and it's largely about why SOA doesn't work in most organizations. It's more than a year old, but I'd say the same things today.<br /><br />Somebody suggested to me that what "SOA" really stood for was "Suckered Once Again". This is a little harsh--there really is some value in these ideas. It's clear, though, that this value is nowhere near as large as we'd hoped.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-1563854370313049421?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com6tag:blogger.com,1999:blog-6198838.post-5262454765050086902009-07-20T13:41:00.000-07:002009-07-20T14:02:44.845-07:00New ITG Series Book: Understanding SCAOne of the things I do is act as series editor for Addison-Wesley's Independent Technology Guides. The latest book in this series, <a href="http://www.amazon.com/Understanding-Component-Architecture-Independent-Technology/dp/0321515080/ref=sr_1_1?ie=UTF8&s=books&qid=1248123089&sr=1-1">Understanding SCA (Service Component Architecture)</a>, has just been published. Written by Jim Marino and Michael Rowley, it's like all the other books in the ITG series: an intro to an important new area.<br /><br />We sometimes describe the series as containing the first book a developer should read and the only book that developer's manager needs to read. Toward this end, Understanding SCA provides a broad overview of the topic along with enough depth to give you a solid grasp of the basics.<br /><br />I continue to believe that SCA gets less attention than it should (including from the vendors that claim to support it). Perhaps the publication of Jim and Mike's book will help change this. SCA is unquestionably an interesting technology.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-526245476505008690?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-74505900388946438822009-07-14T15:16:00.000-07:002009-07-14T15:29:51.690-07:00Windows Azure and ISVs: A Guide for Decision MakersNew platforms, including Windows Azure, are successful only if people write applications for them. This implies that one of the most important audiences for Windows Azure--maybe the most important--is independent software vendors (ISVs). Just as ISVs have adapted to new platforms in the past, they now need to decide how to adapt to cloud platforms like Windows Azure.<br /><br />To help them sort through the options, I've written a Microsoft-sponsored paper (available <a href="http://download.microsoft.com/download/E/7/4/E74D55E6-D156-404F-B6C5-A53A9A4B1D42/Windows%20Azure%20for%20ISVs%20v1%2011--Chappell.pdf">here</a>) that's aimed at ISV decision makers. My goal in the paper is to explain how and why ISVs might use a cloud platform like Windows Azure, as well to illuminate some of the challenges.<br /><br />Using the cloud certainly isn't appropriate for every app and every ISV. Still, ignoring this new platform style strikes me as potentially suicidal. There's no way to avoid coming to grips with this emerging world.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-7450590038894643882?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com1tag:blogger.com,1999:blog-6198838.post-8537046734881207162009-07-01T12:33:00.000-07:002009-07-01T12:44:35.851-07:00Good BooksIn the last few months, I’ve run across lots of good technical books. Here are a few of my favorites:<br /><br />- <a href="http://www.amazon.com/RESTful-NET-Build-Consume-Services/dp/0596519206/ref=sr_1_1?ie=UTF8&s=books&qid=1245800039&sr=1-1">RESTful .NET</a>, by Jon Flanders. Like most former SOAPafarians, I’ve come to be a big believer in the value of REST. SOAP still has value, but a RESTful approach is better in plenty of situations. Microsoft’s WCF added explicit REST support a while ago, and Jon’s book is the best introduction I’ve seen to building RESTful services in .NET. Full disclosure: I wrote the foreword to this book, and I was really happy to do it. Jon is just great at what he does.<br /><br />- <a href="http://www.amazon.com/Programming-Entity-Framework-Julia-Lerman/dp/059652028X/ref=sr_1_1?ie=UTF8&s=books&qid=1245800087&sr=1-1">Programming Entity Framework</a>, by Julia Lerman. Any technology that attempts to provide an object/relational mapping seems to attract controversy, and the ADO.NET Entity Framework is no exception. Whatever your view of the technology, though, you need to get this book if you care at all about the area. Julie provides a very coherent high-level description, along with as much detail (nearly 800 pages) as you’re ever likely to need.<br /><br />- <a href="http://www.amazon.com/Microsoft%C2%AE-NET-Architecting-Applications-PRO-Developer/dp/073562609X/ref=sr_1_1?ie=UTF8&s=books&qid=1245800126&sr=1-1">Microsoft.NET: Architecting Applications for the Enterprise</a>, by Dino Esposito and Andrea Saltarello. Anybody who is or aspires to be a .NET architect should buy and read this book, right now. To my knowledge, there’s nothing else like it available, and it fills a gaping hole in the .NET world.<br /><br />- <a href="http://www.amazon.com/Things-Every-Software-Architect-Should/dp/059652269X/ref=sr_1_1?ie=UTF8&s=books&qid=1245800383&sr=1-1">97 Things Every Software Architect Should Know</a>, edited by Richard Monson-Haefel. I have an embarrassing fondness for books that are full of short, independent essays, especially when they’re on a topic I deeply care about. This book, written by dozens of different people, is a collection of maxims with supporting descriptions on the general theme of software architecture. Like me, you’ll probably disagree with many of them, but hey—that’s half the fun of reading a book like this.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-853704673488120716?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-37063723674746093102009-06-22T09:21:00.000-07:002009-06-22T09:31:40.750-07:00The Microsoft Application Platform: A PerspectiveI spoke at a Microsoft conference in Holland last month, and a video of one of the talks I gave is now online. Its title is <a href="http://channel9.msdn.com/posts/matthijs/David-Chappell-The-Microsoft-Application-Platform-A-perspective/"><em>The Microsoft Application Platform: A Perspective</em></a>, and it covers a potpourri of different things: the relationship between application platforms and business strategy, a simple model for thinking about application platforms today, a look at the on-premises and cloud platforms of various vendors using this model, and more.<br /><br />Now that I think about it, a better title for this session might have been <em>Things David Thinks are Interesting in the Application Platform World Today</em>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-3706372367474609310?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com5tag:blogger.com,1999:blog-6198838.post-5687604117837234912009-06-11T21:50:00.000-07:002009-06-11T22:16:51.692-07:00Perspectives on Application Lifecycle ManagementThe first of the four short papers I wrote recently on ALM, <a href="http://www.davidchappell.com/WhatIsALM--Chappell.pdf">What is Application Lifecycle Management?</a>, was published a few weeks ago. The other three are also now available. They are:<br /><ul><li><a href="http://www.davidchappell.com/ALMandBusinessStrategy--Chappell.pdf">Application Lifecycle Management and Business Strategy</a></li><br /><li><a href="http://www.davidchappell.com/ALMasABusinessProcess--Chappell.pdf">Application Lifecycle Management as a Business Process</a></li><br /><li><a href="http://www.davidchappell.com/ALMToolEvolution--Chappell.pdf">Tools for Team Development: Why Vendors are Finally Getting It Right</a></li></ul><p>All four were sponsored by Microsoft, but they're not about Microsoft technologies. Instead, they're intended to help IT decision makers think about ALM in a broad sense.</p><p>IT innovation is fundamental to creating new value in the world, and ALM is fundamental to IT innovation. Understanding this topic and getting good at it ought to be on the top of every IT organization's agenda.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-568760411783723491?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-81240232734858273362009-06-04T10:05:00.000-07:002009-06-04T12:01:11.110-07:00On Being IndependentIf you're interested in working as a technology consultant, either on your own or for a consulting firm, I strongly encourage you to pick up a copy of Aaron Erickson's book <em><a href="http://www.amazon.com/Nomadic-Developer-Technology-Consulting-Technologies/dp/0321606396/ref=sr_1_1?ie=UTF8&s=books&qid=1244141991&sr=1-1">The Nomadic Developer: Surviving and Thriving in the World of Technology Consulting</a></em>. It's a first-rate description of the consulting world, looked at from many different angles. Anybody who's even considering this career path ought to buy this book.<br /><br />The book's last chapter is a collection of short essays contributed by people who've made a career in consulting, including me. Addison-Wesley, the book's publisher, gave me permission to post my contribution. Called <em>On Being Independent</em>, it's available <a href="http://www.davidchappell.com/OnBeingIndependent--Chappell.pdf">here</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-8124023273485827336?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com1tag:blogger.com,1999:blog-6198838.post-59331884017070066122009-06-01T06:55:00.000-07:002009-06-01T07:03:57.857-07:00An Update to Introducing the Azure Services PlatformMicrosoft has made some important updates to various parts of the Azure Services Platform. Accordingly, I've updated the overview white paper I wrote on Azure last fall. The new version is available <a href="http://www.davidchappell.com/Azure_Services_Platform_v1.1--Chappell.pdf">here</a>.<br /><br />The biggest change is in SQL Data Services, which now will provide a standard relational datastore. This is really important, as the absence of relational storage was a gaping hole in the original announcement. It's great to see that Microsoft is fixing this.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-5933188401707006612?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com6tag:blogger.com,1999:blog-6198838.post-10551965461044272992009-05-19T15:49:00.001-07:002009-05-19T15:56:46.450-07:00An Update on Windows AzureI sat down with <a href="http://blogs.msdn.com/bobfamiliar/about.aspx">Bob Familiar </a>from Microsoft last week in Los Angeles to talk about Windows Azure and cloud computing in general. Bob's a smart guy (and a fellow musician), and I really enjoyed the conversation. If you're interested, the video of our discussion is <a href="http://www.msteched.com/online/view.aspx?tid=c26b8ed6-9645-4168-9a0e-0e4461be8226">here</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-1055196546104427299?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-2758094523569707592009-05-18T07:48:00.000-07:002009-05-18T09:01:04.820-07:00The Workflow WayWindows Workflow Foundation (commonly called just <em>WF</em>) is a useful technology. It's not so simple to understand and use, however, and so it's not a widely used choice among enterprise Windows developers today. A primary goal of WF's next release is to change this, making the technology more approachable and more popular. For this to happen, people need to understand what WF really offers.<br /><br />Toward this end, I've written a new introduction to WF. Called <a href="http://www.davidchappell.com/TheWorkflowWay--Chappell.pdf">The Workflow Way: Understanding Windows Workflow Foundation</a>, the paper's goal is to explain WF to mainstream Windows architects and developers in a straightforward way.<br /><br />To me, everybody who builds software on Windows ought to understand the basics of WF--it's a fundamental part of the application platform. And while workflow isn't always the right approach, it's sometimes just what you need.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-275809452356970759?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com8tag:blogger.com,1999:blog-6198838.post-16478948610342449532009-04-21T10:50:00.001-07:002009-04-21T11:26:59.614-07:00Categorizing Cloud Platforms: Beyond IaaS and PaaSThe most common way to categorize cloud platforms today is to split them into two chunks: Infrastructure as a Service (IaaS) and Platform as a Service (PaaS). This dichotomy is simple, which is good, and it's useful in some situations.<br /><br />Still, I've become convinced that the IaaS/PaaS distinction is too limited; it hides more than it reveals. The reality is that the cloud platform world has become significantly more complex since the IaaS/PaaS split was created. We need something that does a better job of helping people decide which cloud platform is right for them.<br /><br />A scenario-based approach can do this. By categorizing the kinds of applications we want to build on cloud platforms, then working out exactly what capabilities a cloud platform needs to support each of those application styles, we can better match our requirements with what the various platforms offer. The result isn't as simple as the IaaS/PaaS split, but at least in some cases, it's more useful.<br /><br />I'm planning to write a paper on this sometime soon. In the meantime, <a href="http://www.davidchappell.com/CloudPlatformsToday--APerspective--Chappell.pdf">here's the keynote presentation </a>I gave at a conference in Silicon Valley last week. Along with a few other things, this talk illustrates the scenarios I currently find most representative, then shows how the leading cloud platforms match with what each of those scenarios requires.<br /><br />My goal isn't to figure out which cloud platform is best--they all have pros and cons. Instead, the intent is to help people decide which platform makes the most sense for whatever they're trying to do.<br /><br />The scenarios I've chosen certainly aren't exhaustive--this is a work in progress. As always, comments are very welcome.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-1647894861034244953?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com2tag:blogger.com,1999:blog-6198838.post-9757454426248931892009-04-11T14:59:00.000-07:002009-04-16T16:17:35.430-07:00What is Application Lifecycle Management (ALM)?I've written a group of short articles on application lifecycle management, all of which will be published over the next few weeks. They were sponsored by Microsoft, but they're not focused on Microsoft technology or products. Instead, my goal was to help people think about ALM in what I believe is a more useful way.<br /><br />The first of these papers to appear is <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=b4765f41-a2c2-41e4-a1da-b35e1f502ef6">What is Application Lifecycle Management?</a> Its main argument is that ALM is much more than just the traditional software development lifecycle. As usual, I think that understanding the big picture--having the right context for what you're doing--is essential.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-975745442624893189?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-15352809811840943182009-04-07T11:36:00.000-07:002009-11-04T12:40:46.703-08:00SOAP vs. REST: Complements or Competitors?ESRI, a leading firm in geographic information systems (GIS) software, invited me to keynote their developer conference last month. I spoke about SOAP and REST, something that's relevant to most people building software today.<br /><br />ESRI has posted a slightly edited <a href="http://proceedings.esri.com/library/userconf/devsummit09/index.html">video of the talk</a>, along with a <a href="http://proceedings.esri.com/library/userconf/devsummit09/papers/keynote_chappell.pdf">PDF of the slides</a>. There's a bit of ESRI-specific content, but for the most part, the presentation is a general look at SOAP and REST.<br /><br />The talk runs for more than an hour, so here's the punchline: Exposing services RESTfully is a better choice in a majority of situations, especially over the Internet. SOAP and the WS-* technologies still have some role, however, particularly inside enterprises.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-1535280981184094318?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com18tag:blogger.com,1999:blog-6198838.post-26807471471650750012009-04-06T18:20:00.000-07:002009-04-06T21:30:14.207-07:00Conference: Shaping the New Age of Application DevelopmentSDForum, a Silicon Valley non-profit focused on technology, is sponsoring <a href="http://www.sdforum.org/index.cfm?fuseaction=Calendar.eventDetail&eventID=13388">a two-day conference on the future of application development</a>. The event is in Santa Clara, California on April 17-18, and big chunks of the agenda are focused on cloud computing.<br /><br />The first day's opening keynote is by Forrester's James Staten, one of the absolute best analysts in this area. I'm doing the keynote for the second day, talking about cloud platforms. If you have a couple of days to spare and you care about what's next in application development, I encourage you to take a look at this event.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-2680747147165075001?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com0tag:blogger.com,1999:blog-6198838.post-37769960637913302212009-03-21T07:54:00.000-07:002009-03-23T13:48:02.412-07:00Amazon Reserved Instances and Cloud Capacity PlanningAmazon's announcement of <a href="http://aws.amazon.com/ec2/#pricing">discounted pricing </a>for EC2 customers who make long-term commitments is welcome news. Cheaper is better.<br /><br />One way to look at this change is to see it solely as a price reduction, something focused on addressing customer concerns. But adding reservations also addresses Amazon's own concerns.<br /><br />Here's the issue: Customers want to see EC2 and similar public cloud platforms as an infinite pool of compute resources. Rather than building out your own data center to handle peak loads, you can instead count on your cloud provider always to have enough capacity. The providers themselves encourage this view, since it's one of their strongest economic arguments.<br /><br />But can a cloud platform really provide infinite compute resources? Of course not. Relying on a cloud provider for peak computing resources doesn't make the capacity planning problem go away: It just moves it out of your data center and into the cloud. And the people who run cloud data centers now face this problem in a big way. As more firms depend on them, they need to predict more accurately what their aggregate demand will be.<br /><br />With the original EC2 approach of VMs on demand, this is essentially impossible. While a cloud capacity planner might make some inferences based on previous demand, number of new customers, and other variables, accurately predicting the future is tough when anybody can request a bunch of new VMs with no warning.<br /><br />Reservations make it easier. By knowing more up front about a customer's likely usage, cloud platform planners can make better decisions. Since having too much capacity hurts the cloud provider's profits, while not having enough capacity at times of heavy demand is really bad for business, knowledge about future usage has enormous value.<br /><br />So yes, Amazon is lowering prices. At the same time, though, they're improving their own ability to make intelligent investments in their business.<br /><br />As the innovator, Amazon is once again defining our expectations about what a public cloud platform is and how it should be priced. Because reservations are so valuable to the people who run a cloud platform, expect the idea to spread.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-3776996063791330221?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com1tag:blogger.com,1999:blog-6198838.post-9419103276414054172009-03-19T11:36:00.000-07:002009-03-19T11:50:57.496-07:00Introducing Windows AzureMicrosoft's Azure Services Platform has various parts, but the one that's generated the most interest so far is Windows Azure. I've written an overview white paper on Windows Azure that's available <a href="http://download.microsoft.com/download/0/8/7/087A3AE1-2880-4452-88DD-09398D0A522A/Introducing_Windows_Azure.doc">here</a>.<br /><br />The paper overlaps some with my <a href="http://download.microsoft.com/download/e/4/3/e43bb484-3b52-4fa8-a9f9-ec60a32954bc/Azure_Services_Platform.pdf">earlier paper </a>on the entire Azure Services Platform. This one is focused entirely on Windows Azure, though, which lets me spend more time on things like the fabric. The paper also talks a bit about the recently announced changes to Windows Azure, such as support for unmanaged code. If you're interested in cloud platforms, you might find this overiew useful.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-941910327641405417?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com4tag:blogger.com,1999:blog-6198838.post-35588390264226553882009-03-14T21:15:00.000-07:002009-03-16T12:22:10.485-07:00The Most Important Profession in the World<p>The Wharton School of Business has created a list of the top 30 innovations in the last 30 years. The complete list is <a href="http://knowledge.wharton.upenn.edu/article.cfm?articleid=2163">here</a>, but here are the top ten: </p><ol><li>Internet, broadband, WWW (browser and HTML)</li><li>PC/laptop computers</li><li>Mobile phones</li><li>E-mail</li><li>DNA testing and sequencing/Human genome mapping</li><li>Magnetic Resonance Imaging (MRI)</li><li>Microprocessors</li><li>Fiber optics</li><li>Office software (spreadsheets, word processors)</li><li>Non-invasive laser/robotic surgery (laparoscopy)</li></ol><p>Notice what they all have in common? Every single one is dependent on software. Some of them, like email, are purely software. Some, like microprocessors, exist solely to run software. And the rest, like mobile phones and MRI, rely heavily on software.</p><p>Going deeper into the list doesn't change this. Innovation number 11 is open source software, 14 is GPS systems, 21 is graphical user interfaces, and number 23 is RFIDs. Almost every one of the 30 innovations relies on code in some way.</p><p>For anybody who works in software, the takeaway should be clear: <em>We work in the most important profession in the world</em>. </p><p>Innovations are what underlie growth in productivity--the ability to do more with less--and productivity growth is what raises everyone's standard of living. Quality improves too, through better medical technology and more. In the most literal sense, the work we do is the most important factor in making the world a better place.</p><p>Ever feel like you're just writing another app, just doing technical marketing for another faceless corporation, or just supporting another piece of meaningless code? Don't. Our efforts have been a primary force in improving the world for the last several decades, and this isn't about to stop. All of us who are engaged in software are in fact doing the same thing: We're creating the foundation for a better world.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-3558839026422655388?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com6tag:blogger.com,1999:blog-6198838.post-5726394689024134942009-02-27T23:33:00.000-08:002009-03-02T12:55:06.998-08:00Cloud Platform Storage: Relational vs. Scale-OutAll of today’s most visible cloud platforms provide a scalable storage mechanism. Google’s AppEngine has the Datastore, Amazon Web Services has SimpleDB, Microsoft’s Windows Azure has Tables, and Salesforce.com’s Force platform has an object store. All of them offer similar things: hierarchical rather than table-based storage, a straightforward schema-less approach, and a simple query language.<br /><br />But why? Why don’t these platforms just provide ordinary relational storage? While their hierarchical approach has some strengths—it’s simple and flexible—it also has a host of weaknesses. Here are some of the big ones:<br /><ul><li>Because they don’t provide ordinary tables, these storage technologies are harder for developers to understand and use. It also requires work to move data between familiar on-premises relational databases and hierarchical cloud datastores. For example, achieving good performance probably means organizing your data hierarchy to optimize for your app’s most common queries, something that differs from the usual relational approach.</li><li>None of them support standard SQL. This adds to the unfamiliarity, and it also means that useful things like joins and aggregates aren’t generally available. And each platform has its own query language, making life more difficult for developers and increasing platform lock-in.</li><li>The lack of standard relational data means that existing tools for working with that data, such as reporting services, can’t easily be used.</li><li>Because there’s no schema, programs will contain more errors. Rather than relying on the database to catch attempts to, say, store a string in an integer field, you’ll have to find these yourself.</li></ul><p>These are significant limitations, and they raise a big question: Why would anybody use these things? Why don’t the cloud platform vendors just give us relational storage with SQL rather than these limited approaches?</p><p>The reason is that nobody seems to know how to make a relational DBMS scale to hold really massive amounts of data. You certainly can make a relational system handle more and more data by running it on ever-larger machines, but it’s much harder to do this by replicating relational data across multiple machines. In other words, traditional relational databases scale <em>up</em>, but they’re hard to scale <em>out</em>.</p><p>One way to scale out with a relational DBMS is to divide your data across multiple instances of the DBMS. Maybe all customers whose names start with “A” are in one instance, all whose names start with “B” are in the next instance, and so on. This approach, sometimes referred to as <em>sharding</em>, can work. But it’s hard to administer, and think about what it gives up: You lose the familiar all-in-one relational world, you can’t do SQL queries across different instances (which means you lose joins and aggregates), you can’t easily use reporting tools across different instances, and you no longer have an automatically maintained common schema across your entire database. </p><p>Does this list of problems sound familiar? It should, since it mirrors what you lose with the hierarchical storage mechanisms provided by cloud platforms. These hierarchical stores are all focused on providing massively scalable storage, which means scale-out storage. Just like sharded databases, they trade off functionality for scalability.</p><p>Perhaps we’ll one day see cloud platforms offer scale-out storage that provides everything we now get in traditional relational databases. At the moment, however, the state of the art in scale-out storage seems to require giving up much of what we’re used to with SQL and relational databases. </p><p>So when should you use a cloud platform’s scale-out storage? In some cases, such as Google AppEngine, there’s no choice: All persistent data is kept in the Datastore. But other platforms have options. Amazon Web Services, for instance, offers both SimpleDB for scale-out storage and the ability to run a standard relational DBMS such as Oracle or SQL Server in a virtual machine. This latter option won’t scale as well, but it does give you a full relational system.</p><p>I’d argue that scale-out storage is so limited that it should be used only when your app requires enormous scalability. Giving up the advantages of relational databases makes sense only when the trade-off between functionality and scalability is worth it. So far, my sense is that not many cloud apps require this—using SimpleDB appears to be much less popular than running a relational database in a VM, for example. </p><p>Relational storage is a wonderful thing. It won’t always solve your problem, and so embracing the limitations of scale-out storage is sometimes necessary. But unless your cloud app needs massive scale, the relational option still makes plenty of sense.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6198838-572639468902413494?l=www.davidchappell.com%2Fblog%2Findex.php' alt='' /></div>David Chappellhttp://www.blogger.com/profile/05084689775809488566noreply@blogger.com5