I've seen that commercial for the Nokia Lumia 900 smartphone a few times now, and noticed something interesting about it: Nowhere in the ad are the names "Microsoft" or "Windows" mentioned. That's odd, of course, since the Lumia runs Microsoft's Windows Phone 7 OS.
This lack of identification differentiates it from the Top Dogs, Android and iPhone. Their commercials explicitly promote the OS, in Android's case, and Apple, in iPhone's case. Not so for the Lumia. It's a bold choice by both companies -- Nokia and Microsoft -- and says a lot about the smartphone market.
What it says to me is that "consumers don't think Microsoft can build cool phones, so we'll drop that name." Rather than fight this perception, Microsoft and Nokia have decided to live with it, fair or not. Smart move: with the built-in bias against Microsoft in the phone realm, it makes sense to conform to this belief and work around it, rather than try to alter it by saying "Hey, look, Microsoft is hip after all!" That would only reinforce the negative stereotype that Microsoft is a stodgy, boring company that makes great spreadsheets and desktop OSes, and should leave the cool stuff to others. It would look insecure and defensive, like Microsoft is trying too hard. That's not a winning strategy.
Nokia, on the other hand, has a reputation for building phones that folks want. Yeah, it hasn't happened yet in the smartphone arena, but there is a long, positive history there; many of those seeing the commercials have owned Nokia phones in the past. Because of that, the desire to try the new Nokia smartphone -- the one that looks so different from the iPhone and Android -- could be strong; stronger than telling a potential buyer "Look at the new Windows phone," and fighting the anti-Microsoft (at least when it comes to phones) feelings that may be stirred up.
So these commercials are highlighting the Lumia's strengths -- an appealing OS look and feel, and a company famous for selling phones -- while minimizing its weaknesses by eliminating any negative associations consumers might toward Microsoft and Windows when it comes to phones. In this case, Microsoft sees the value in fading into the background. Its brand recognition in the smartphone market may suffer, but I imagine the tradeoff will be well worth it if sales take off.
Will the stealth marketing campaign work? That's another question entirely. Certainly, both companies have to be nervous about Nokia's Q1 2012 losses. But we're right at the beginning of this phone push, and I'm much more bullish on Windows Phone's prospects than some others. With Microsoft's effective new efforts to promote its phones at the point of sale, and a nod to the reality that its name could be a drag on those sales (after all, you never say "The Microsoft Xbox", do you?), a little more time may be just what's needed.
Posted by Keith Ward on 05/07/2012 at 3:00 PM6 comments
Things appear to be changing with Windows Phone at the most important current level: sales awareness (I say current level because the most important factor, of course, is building a great product. That mission has been accomplished.) This is great news for Microsoft.
Here's the background: I live in a rural area of Maryland, the kind of slow-pace-of-life backwater that takes time for technology to filter down to. I buy my phones from a local AT&T dealer, so it's a store I know well. I've been checking on the store's Windows Phone collection ever since the first one was released. What I've found in the past is the same kind of thing you read about in other reports: almost no Windows Phones; relegated to a corner in the back; salespeople with little knowledge, who look at you strangely when you ask about Windows Phones. In other words, nothing to interest a potential customer.
Microsoft has worked hard recently to change that; especially so in its partnership with Nokia to introduce the flagship Lumia 900 and better train the frontline sales folks. But how soon would those changes show up here in the sticks? The answer: Now.
I visited the store last Friday. First, and maybe most importantly, was the location of the Windows Phone display: it was at the front of the store, rather than in the back. Yup, even in front of the Android section (iPhones were on the opposite wall). There were three Lumia 900s on display, and one HTC (a Titan, if memory serves).
Next up: I called over a sales rep and asked him about Windows Phone. He was very knowledgeable about its strengths and weaknesses. He didn't immediately try to steer me toward an iPhone or Android, as happened in the past.
And he discussed the phone in depth, which included details like the integration of Microsoft Office (and Office 365. Yes! The Cloud!) and Xbox and Exchange. In other words, he knew what the phone was and for whom it would be a good fit.
More than that, he had a Lumia 900 attached to his side, and showed it to me. I think this is a subtle, but powerful selling point: if a mobile device sales pro was using it, it must have some redeeming value. It's like knowing what kind of toothpaste your dentist uses: he should know what works well, right?
We talked for at least 10 minutes about various aspects related to the phone, and I used my knowledge to grill him on some of the finer points that the ordinary customer might not; things like quality of apps and the app ecosystem, tethering possibilities, and so on. He answered these questions beautifully, demonstrating a full grasp of Windows Phone. The training he'd had was obvious, and adding to that his real-world knowledge from using it day-to-day made for a compelling presentation.
I came away impressed with this salesperson, but even more by the job that Microsoft is now doing in getting Windows Phones in the hands of customers. Really, what the phone needs is simply a chance to compete with the Google and Apple duopoly. If my experience is any indication, the playing field is substantially more level than it was even three months ago. People will be able to judge Windows Phone on its merits -- or lack thereof -- and make informed decisions not based on hype or perception, but on the reality of whether or not the phone meets their needs.
At least this way, if Windows Phone ultimately fails, it'll be based more on real factors, rather than spin and perceived "coolness". But my sense is that it won't fail, and is poised to finally start making some inroads.
Posted by Keith Ward on 05/01/2012 at 9:56 AM16 comments
Working in Microsoft programming languages puts you in good company, according to an organization that tracks such things.
In the last year, C# overtook C++ as the third-most popular language in use right now, says the TIOBE Programming Community Index, and other Microsoft-created languages are either holding steady or gaining in popularity. The index, which is generated monthly, shows Java and C holding steady in the top two spots, as they have for years. Tiobe calls itself a company that specializes in assessing and tracking software.
Visual Basic has held steady in seventh place over the past year, while VB.NET has seen a jump from 22nd place overall to 16th place in the same timeframe. The Top 10:
| 1 |
Java |
| 2 |
C |
| 3 |
C# |
| 4 |
C++ |
| 5 |
Objective-C |
| 6 |
PHP |
| 7 |
Visual Basic |
| 8 |
JavaScript |
| 9 |
Python |
| 10 |
Perl |
The biggest riser, not surprisingly, was Objective-C, as Apple's iPhone and iPad threaten to take over the world. JavaScript was the other top-10 language to see a large bump; this shouldn't be surprising either, given the explosion of mobile computing. In the top-20, Python, Ruby and Ada suffered the biggest drops. All these numbers are relative, however; given the fragmentation of this space, a small increase or decrease in popularity can have a substantial impact on rankings.
What does it all mean to the .NET developer? Not much, probably; this information, to me, is more interesting than significant. It is good news for Microsoft that its army of developers continue to soldier on, and don't appear to be jumping ship. With Windows 8 driving the increasing importance of C++ and JavaScript inside Visual Studio 11, I'll be curious to see the trends in those languages a year from now.
Posted by Keith Ward on 03/16/2012 at 7:54 AM6 comments
Promoting software development education is something I'm keenly interested in; it seems in some ways that young people are getting less, rather than more, interested in learning how to program. It's a shame, because opportunies are exploding, and it's hard to think of a more recession-proof career.
The good news is that it's getting easier all the time to learn how to code. The resources available are getting better than ever, and I love to highlight them and recommend to others that they do the same.
The one I stumbled across recently was Codecademy. Just for fun, I've gone through a number of the lessons, so I can see for myself how well the courses are put together. Thus far, I'm extremely impressed. The key is that it's very, very easy to get into. You start coding immediately, rather than learning about the history of the language, frameworks and other details that might get in the way of getting your hands dirty. Heck, you don't even learn about adding <script> tags; the entire focus is on writing JavaScript.
I found the lessons easy to follow and didn't spot errors. They build in proper sequential order, and the explanations are clear, if a bit brief on detail. For instance, "for" loops are given a very brief description, and I wonder if total newbies might get a bit stymied. On the whole, though, I think most folks with a little persistence will be able to get through the exercises. Each multi-part lesson also has projects to apply what's learned, and a lab window to build your own JavaScript programs. It's very well done.
On the other hand, things on Codecademy seem to be stagnating a bit, which concerns me. According to the best information I can find, the Website went live last August, with a JavaScript course. The site promises that courses are also coming in Ruby and Python; thus far, however, they're still not available. I've also found some 404 errors. That shouldn't be a big deal; all sites have a few of those -- except that the site is pretty small, and shouldn't be that difficult to maintain. The blog is also not updated frequently.
But for what it offers right now -- JavaScript learning, absolutely free -- Codecademy does very well, and should be an early stop on the road for any non-programmer wanting to learn how to write good JavaScript code.
What are some of your favorite JavaScript resources? Let me know via email or in the comments.
Posted by Keith Ward on 03/15/2012 at 7:23 AM1 comments
We're all excited, and rightly so, over the release of the Visual Studio 11 beta. (See our March cover story for more on VS11's powerful new features). But that's really only part of the story. The next-generation .NET Framework -- version 4.5 -- is out in beta, too. I think in all the hype and hoopla over VS11 and the Windows 8 Consumer Preview, the news about .NET has been mostly lost. That's a shame.
.NET 4.5 is pretty exciting in its own right, and has its own subset of tools for building Metro-style apps: the .NET APIs for Metro-style apps. Microsoft has a very nice guide in its Dev Center for understanding the differences between developing for Metro apps and traditional Windows apps, including one biggie: the difference in namespaces.
Beyond Metro, there are a host of other upgrades as well. Some of the more prominent ones include:
- Background just-in-time (JIT) compilation, to improve application performance on multi-core processor machines
- New features for the Managed Extensibility Framework (MEF), including support for generic types and multiple scopes
- New asynchronous features for C# and Visual Basic which add a task-based model for performing asynchronous operations
- More HTML5 and JavaScript support
- Big upgrades to WPF, including better data validation and a new Ribbon control
- Similar enhancements to WCF and WF
In reality, the list of changes is much to large to summarize here. Suffice it to say, though, that the .NET Framework has improvements for every Microsoft developer, whether or not you work on traditional apps or develop on ASP.NET, Windows Phone or other mobile devices. Once you get over your thrill at the huge changes in VS11, spend some time with .NET Framework 4.5. You may find yourself just as excited.
Posted by Keith Ward on 03/01/2012 at 7:37 AM0 comments
Dr. James McCaffrey is a busy guy. To begin with, he works for Volt Information Sciences Inc., where he manages technical training for software engineers working at Microsoft headquarters. He's also a contributing editor to MSDN Magazine, writing the monthly "Test Run" column. In addition, Dr. McCaffrey is a speaker at the upcoming VSLive event in Las Vegas. His discussion had the coolest title, which I wanted to dig into a little further. He also has decades of development experience, so I thought it would be a good time to ask him a few questions about development, Visual Studio 11 and more. We had an email chat, and here's what he had to say.
Your "Chalk Talk" has the most intriguing title at VSLive ("Particle Swarm Optimization"). Can you tell us what that will cover?
JM: Particle Swarm Optimization is an artificial intelligence technique that models the behavior of groups such as a swarm of insects. PSO can be used to find the solution to a numerical optimization problem in situations where there is no effective traditional technique.
How can understanding this topic help a typical developer?
Particle Swarm Optimization is particularly useful when trying to harvest meaningful information from huge data sets such as log files. Also, many developers find PSO just interesting in its own right -- sort of geek entertainment (in a good way).
What are some products you've helped Microsoft develop?
I am very proud of the work I contributed to early versions of Internet Explorer. Even though the Internet was primitive at that time, we knew we were working on technology that would help change the world. I'm currently doing some work at Microsoft Research that has the potential to be just as important.
What do you like best about software development? Least?
The one aspect of software development I like the most is that it involves constant learning; new problems and new technologies for solving these problems emerge continuously. I can honestly say there aren't many things about software development I don't like. Even testing and debugging are enjoyable in a way.
Have you had a chance to play around with Visual Studio 11? If so, what are your initial thoughts on it?
I took a first look at VS11 just this week. I'm amazed at how many new things there are in the tool itself and the Framework 4.5. I'm particularly interested in seeing how VS11 enables developing applications in the Cloud through Windows Azure. My first impression is that VS11 will make developing Cloud apps much easier than it is now.
You taught programming for many years. What would you say was the hardest thing for your students to grasp?
It may sound trite or obvious, but when I was teaching, pointers seemed to be the make-or-break topic for freshman CompSci students. Students who really grasped pointers were able to master all the more advanced topics.
What do you feel is the greatest value of VSLive?
At VSLive, I love getting the chance to learn about all kinds of interesting new Microsoft technologies, and I enjoy the opportunity to chat with the speakers and attendees from all parts of the US (and other countries too). When I go back to work after VSLive, I feel re-energized and can often immediately apply some of the things I learned to my work.
Posted by Keith Ward on 02/25/2012 at 8:40 PM2 comments
Want a free Windows Phone? If you're a West Coast-based developer writing apps for that platform, you're in luck. Microsoft's Daniel Egan has a limited supply that he's giving away, according to his blog.
So, what do you do if you're a Midwesterner, Southerner or non-Leftie? Egan says it may take some more work to get your phone, but you may still be able to score one of the devices. If you just want the phone and aren't directly interested in building apps for it, you won't get one, Egan says.
This is more evidence of Microsoft's intense push to grow the app ecosystem around Windows Phone, which is likely to determine the phone's ultimate success. And it's smart; I'm a big fan of Windows Phone, and also want iPhone and Android to have some real competition (disclaimer: I do not own a Windows Phone, but I've used several).
But you can only get one, as they say, while supplies last.
Posted by Keith Ward on 02/22/2012 at 9:31 AM6 comments
Telerik recently released its "Platform Guidance for Microsoft.NET", and it's worth a read. It's a short-form, condensed guide to the six types of applications that most .NET developers build, and advice on which .NET technologies are the best fits for each type of app.
What I like about it is that it's an easy read (always appreciated for those of us with lots to do), and there's very little "...and here's how Telerik's award-winning products can help you" markitecture in it. In fact, there are only a few references to the company in the document itself, so it doesn't read like a product brochure. The advice is spot-on, and although somewhat basic, still worth your time.
A few nuggets of interest that I pulled out of it:
- The guide lists Silverlight as the top choice for building line-of-business apps, but adds a warning:
"Microsoft has slowed its investment in evolving the Silverlight platform. When evaluating Silverlight, extra care should be made to ensure the platform as it exists today meets the requirements of a project."
It's comforting to hear that Silverlight is still a recommended technology, even if it does come with a caveat.
- WPF is still the choice for rich, beefy, custom Windows apps. But it wasn't recommended for any of the other five scenarios.
- For mobile sites, Telerik recommends ASP.NET MVC and HTML5. In other words, HTML5 has you surrounded; assimilate or die.
Note that Windows 8, still in pre-beta when the document was published, didn't get any recommendations; Telerik said it will update the document in time to reflect that.
Posted by Keith Ward on 02/21/2012 at 12:45 PM1 comments
At Visual Studio Magazine, we're big proponents of unit testing as a means of writing better, more efficient code. Yes, that can come under the heading of "Duh!", as in "Duh, Ward, that ain't exactly breaking news, is it?"
True though that may be, it's my suspicion (based solely on anecdotal evidence, it must be pointed out) that many, many developers don't do it as a regular practice. I'd suspect the reasons are fear of the unknown, or the inertia we all experience when it comes to changing our routines.
But if you're not doing unit testing, you're seriously slowing down your productivity. That's according to some numbers that came across my desk (OK, monitor) in a press release from Typemock, which makes unit testing products. According to Typemock,
Over 50% of the largest European banks and over 35% of global leading financial institutions consider unit testing critical
Now, aside from the spin that will naturally be applied to those figures, they're still pretty significant. And it backs up what we've been saying for years now -- that unit testing saves time, which of course saves money. How much time? Well, the release estimates a 70-80 percent reduction in debugging time. Again, I'm not sure that most developers are seeing quite that level of time savings, but maybe some of you are. I'd love it if you unit testers would give me some feedback related to this: how much time do you save over your non-unit-testing days?
I wonder if the new emphasis on time-to-market that's been spurred by the explosion of mobile development is leading to a similar uptake in unit testing; I suspect it's having a large impact in that realm. Again, let me know.
If you're not using unit testing, I'd also be interested in hearing why.
Posted by Keith Ward on 02/07/2012 at 7:34 AM7 comments
"...there will be no MIX 2012." And with that, Tim O’Brien, Microsoft's general manager for developer & platform evangelism, let the air out of the balloon for many of the devs who look forward to MIX like no other conference.
O'Brien listed a number of reasons for killing off MIX after a very successful five-year run: that Web development shouldn't be seen as a separate undertaking from standard Windows development; that developers, reporters, analysts and tech bloggers were confused about which event to attend; and lastly, that Microsoft's army of software engineers have too many other duties to take time out and prepare for a conference.
I'm sure all the reasons have some degree of validity. But, frankly, even adding all of them up doesn't warrant cancelling a show, in my opinion. All the problems could be overcome.
As to the first reason: I don't know why breaking out Web development as a separate conference means Microsoft has somehow muddled the message. If you're an ASP.NET developer, this was probably your No. 1 show to attend, given its focus. This is a bad thing how, exactly? And does this mean Microsoft would not consider, for example, a show focused solely on mobile development with Windows 8/Metro? Couldn't one use exactly the same argument?
As to the confusion among the masses, I'm not sure Microsoft is giving its audience enough credit. I believe we're all big boys, and can figure out for ourselves which shows have the most value. Choice is good; and the more choice in conferences, the better. The ones I didn't think were for me, I didn't go to.
Finally, the time it takes away from engineering: It would be my guess (and it's *only* a guess) that this is the primary reason for the cancellation. There may have been lots squeaks from the engineering wheels, necessitating the grease. If that's the case, I'm a bit surprised Microsoft didn't order its engineers to cut back on other shows instead, and keep MIX in the, uh, mix. And, of course, those engineers still have to prepare for TechEd, BUILD (if it continues under that brand), and other shows. Why is it different for MIX?
But MIX has (whoops, had) value beyond just the technical knowledge it imparted: it was part of Microsoft's brand, got consistently strong press coverage, and helped raise the profile in an area of weakness for the company. In many ways, Microsoft is still seen to some degree as a legacy company that makes heavy software for desktops and servers. MIX was more of a cutting-edge conference in my mind, more forward-looking in its topic coverage. And it could easily have transformed into a Web/mobile dev show.
In the end, though, MIX is gone, just like PDC before it. The BUILD conference last year was a huge success; maybe that picks up the mantle. But I can't say I'm not a little disappointed, and saddened, to see the end of a great show.
Am I off base here? Will you miss MIX, or do you feel it was time for it to go? Let me know via email or in the comments below.
Posted by Keith Ward on 01/25/2012 at 9:49 AM0 comments
Well, if Windows 8 doesn't
take off on tablets, it won't be for lack of effort on Microsoft's part. Redmond is doing everything it can to entice developers to write software for the new OS, set to hit beta
next February.
I've already reported on the Marketplace Test Kit, which will let you know if your app conforms to the Windows Store before you ever submit it. Now, in another effort to one-up Apple and Google (but primarily Apple, I suspect), Microsoft is going right for the throat, offering devs a bigger slice of the income pie. In this blog, the company says that once your app hits $25,000 in revenues, you'll get 80 percent, rather than 70 percent, of the profits from then until eternity.
That could result in a windfall if your Windows 8 app is the next Angry Birds. Of course, it's well known that most apps aren't huge money-makers for shops; I wrote about that a few months ago for a sister site. Still, it's better than what you get from Apple or Google, which offer a flat 70/30 split, and it might convince some developers to at least give it a try.
Microsoft is also holding a "first apps" contest for Metro-style apps. The eight winners will have the first apps in the Windows Store when it goes live, and get some other nice prizes. There's only a month to submit your app, so get cracking if you have an idea.
In short, Microsoft is being really creative in its ways to lure developers to at least consider the benefits of Windows 8. And judging from what I saw at the BUILD conference in September, lots of you will be at least trying it out.
Posted by Keith Ward on 12/08/2011 at 9:22 AM0 comments
It's clear that brand loyalty still rules among developers. Appcelerator and IDC published the results of a
survey that shows a sharp upswing in interest for Windows Phone 7 app development, and ties that surge to the Microsoft/Nokia partnership.
The press release spells it out:
"Windows Phone 7 separated from the pack to become the clear number 3 mobile OS this quarter. The OS climbed 8 points to 38% of respondents saying they are “very interested” in the platform -- the highest ever for Microsoft."
"Highest ever for Microsoft" -- think the folks in Redmond are excited to see that? Those figures push Microsoft into the No. 3 mobile OS category in terms of developer interest, behind iPhone and Android. The loser here? BlackBerry, to no one's surprise, which continues to edge toward the cliff like the German tank in "Indiana Jones and the Last Crusade". If you're a RIM developer, it might be time to start examining your options.
In the meantime, the Nokia deal appears to be everything Microsoft had hoped for, and more. The survey reports that the spike in Windows Phone 7 interest is directly due to the Nokia marriage, with 48 percent calling it the primary motivating factor. Those are startling numbers. When the deal was announced, it appeared to be a risk for both companies at the time; and, in fact, it was. Nokia essentially gave up on Symbian at that moment, while Microsoft teamed up with a phone maker that was going nowhere fast, with no compelling offerings in the smartphone market.
It now looks, at least initially, that a move some saw as desparate may bear abundant fruit. For Microsoft-focused developers, the takeaway is that building apps for Windows Phone 7 is now a safer bet. You know how it works: more apps for a smartphone generally leads to a more popular phone, which leads to more apps, which leads to...
Posted by Keith Ward on 11/14/2011 at 11:03 AM0 comments