“..Dont respect me. Just act like a human. Dont say things you would not say to a person face to face in front of others…”That bugged me a little, as in the end, he was right It was uncalled for from my end. I tell people from time to time that one of the biggest things I disliked inside Microsoft was the bullying behavior that took place. I found the overall behavior of watching someone verbally and emotionally beat others down to be a toxic thing to witness and is why I believe good ideas never rise to the top – yet – here I am via this blog doing the very thing I cannot stand to someone with whom I have a disagreement with in strategy & execution. I mean I teach my own son that this behaviors not acceptable yet here I am doing it. (Shameful). There is no need for me to call him names via blog posts and it is probably a good reminder for me that despite my strong disagreements with Steve’s choices in the manner of .NET community in the end he does have one positive thing that I am in firm agreement with – consolidation of the brands. Windows 8 and so on may or may not be a success and we can pick over the bones all we want but we all mist collectively admit that the first time in the history of Microsoft (that I can remember) the branding and product teams do show outward signs of alignment (which is rare). That all being said, I submit my humble and firm apology to Mr Sinofsky for any remarks or Photoshop doctoring of images and will not continue this behavior. Scott Out.
Question. If we all say WPF, is dead, wont that hurt its present day adoption?Answer. Yes. Definitely and I have personally been at the bruising end of that conversation. There is no doubt that if we the .NET community declare WPF end of life we in turn let Microsoft get away with their bad decision making (in truth my bad decision making as its former Product Manager) and lastly we shoot ourselves in the foot for future XAML friendly work. Having said that, declaring it dead is important short-term loss but potentially long term gain and I will explain why. Mobility platform adoption is at critical crossroads. Today companies worldwide are under a lot of pressure to discuss what their software offerings in and around web + mobility are likely to be. That is to say, the sales pipelines are handing feedback up stream that ask the question in around “when are we going to be mobile” (not in a literal sense but conceptually). If we today continue to prop up WPF as a “good enough” technology bet knowing Microsoft has abandoned any further support then we are placing the entire .NET community at risk of alternative development. This is to say that most developers who are bored with .NET or do not’ care will not be fussed either way and probably would embrace this all the more. Developers who do enjoy sitting inside Visual Studio and dare I say, Expression Blend might find this a troublesome thought to contemplate. The fact of the matter is .NET development is successful given its tooling story and .NET framework often gets you in and out of the development workload quite fast (I am a former Java/ActionScript developer, so I am not saying this a pure .NET whore). If we ignore the Windows 8 and Windows Phone 8 proposition in favor of high fiving WPF, well we are placing our short-term bets on desktop development here and now whilst leaving the whole mobility continuance exposed to iOS or Android development. This in turn can have a knock on effect, whereby developers in the .NET space are given a choice of either doubling down on HTML5, up/down-skilling in iOS or Android development practices or worse being outsourced to specialist teams who have prior experience in the alternative(s). WPF has no mobility story other than a remote desktop application on an iPad touching a desktop built in WPF (messy and clumsy). I see the whole Windows 8 proposition as a mess; do not get me wrong Microsoft have done us all no favors with their UI choice(s), developer relations nightmare and lastly internal bickering and constant wave after wave of aggressive behavior. It is time the company either started to fire some executives or regroup and come up with a better strategy than the one(s) they have now. Until such time, it in the end it has been left up to Architects worldwide who have influence to provide clarity around what the Microsoft mobility offerings look like and help position new projects towards this in a calm manner. I am not saying this will happen overnight it will probably take 1-2 years to push the business community into the Microsoft Windows-only mobility space. If we also can carefully, correct Microsoft messaging that WPF is dead whilst at the same time Windows 8 is the next version of WPF (current source code, tooling and skill reuse), you stand a greater chance of success than you do by choosing to downplay its state. The trick is to go beyond Microsoft’s weak guidance today that “Silverlight & WPF aren’t dead, XAML/C# are alive!” as if that was the answer to the question. It clearly needs to be expanded on further and teased out in careful threads on what that actually means. It’s not about XAML/C# it’s about “can I keep my existing work on Windows 8” first and foremost. If they can answer that question with clear and definitive guidance the whole WPF is dead becomes less of a bad taste. If they cannot answer that, then look to the blogger left or right of you and pray they understand Microsoft better than they themselves as its coming down to the ye olde “influencer takes all” position. Ubiquity seems to always be a sticking point with Microsoft. The fact that WPF right now has probably one of the best ubiquity stories that would make Silverlight at its peak salivate with envy still goes largely unnoticed. It has to do with Microsoft’s lack of marketing & evangelism around this but in reality you could knock out a WPF application and reach more audiences than most other languages. Think about that, how many Windows machines are there worldwide, specifically when it comes to Business customers (less consumer). Now what has always been the sticking point about making applications in HTML vs. Windows? Answer – cross platform. Having cross-platform has always been most sort after request and the main core reason why WPF adoption has often been parked in the “maybe next time” bay. The amount of times at Microsoft when I was in the Product Management team we faced this issue we would often just retreat to Silverlight as an answer hoping that would get deals across the line where possible (hence Silverlight got all the investment and WPF didn’t). The reality is Microsoft is a Windows only company and for a while, Silverlight and its x-platform strategies distracted us all, but ultimately that is what killed it. Microsoft cannot as a company afford any more to be semi-agnostic; they are losing so much market share right now it is ridiculous. They now have to regroup (Windows 8 product lines) and go back to their tired playbook of “Windows Only or bus” (it’s the only trick Sinofsky knows). If Microsoft cannot position WPF as a viable solution to real problems and instead are bowled over with weak answers to the cross-platform perception then what are we all doing? Do you keep fighting the lonely fight or do you regroup and rally behind the one thing that actually might get you out of this discussion a bit more cleanly via the Windows 8 pitch. Tooling is tapering off. I do not see Visual Studio 2012+ and Blend+ continuing much more in investment around Windows 7 + WPF. We all saw this happen with WinForms and it is not as if they will cut and run with these two, they just will not spend too much time on the problems that are faced with tooling for WPF. WPF is likely to still have internal investment so long as Expression Blend and Visual Studio continue to pull from its code base how that spills over to the public though is an open question (that will not yield answers). It is in Microsoft best interest to turn a cold shoulder here on WPF (despite its internal adoption) publically in order to get everyone shifted over to Windows 8 in a more timely manner. If they let WPF linger or keep feeding it backwards compatibility then it turn becomes what Windows XP has been to Windows 7 or Internet Explorer 6 to Internet Explorer 9 … a legacy you just can’t kill off no matter how much you promise “new” is better.
Question. Ok, so you are saying let’s all announce WPF is dead and long live Windows 8?Answer. Yes. Before you grab your stones and start throwing my way, it comes back to the key driving principle behind why that is. Do you optimize for a short-term gain and in turn leave the mobility and future platform battle to the alternatives or do you instead promote its end of life but do one better than Microsoft themselves by outlining what the transition will look like over the next two years. What I mean to say is, do not just say, “its dead, end of story”. Instead, say, “It’s dead as long as Windows 7 isn’t alive. The future of WPF however is tied-up in Windows 8, so if we want to get more into mobility then we have a transition moment here. We can continue to keep existing code that we have written and transport it across primarily. Secondly, we can also retain our developers skill sets that we have invested today given the tooling and languages are still intact (with minor and major modifications throughout). It sux and I am facing the same issue right now. As I sit here and type this on my Office 13 Preview via my Windows 8 Install, I am doing so under duress. Do I like Windows 8? I don’t like the UI, sorry I think Metro is a form of mass design retardation in full flight but on the flipside I can live with it provided I get a UX platform that I can do more with. I will trade my dislike for Windows 8 upfront if it can let me create a vision of what I think the software industry should do with its out of date workflows & problem solving. I’ve waited 15 years+ for a descent UX platform to come along, I sat through VRML, DHTML, Flash, Flex, WPF, Silverlight and now this hell spawn known as Windows 8. I worked as an outsider and insider on all of the above and I’ll be damned if I’ll give up now because some bald headed napoleon complex ass-hat decides “He’s got Steve Jobs beat”.
Question. You are still putting developer’s jobs on the line.Answer. Yeah I probably am. I am not proud of that fact and when I was part of a team that funded Silverlight & WPF we actively choose to ignore WPF in favor of Silverlight. It was a calculated bet at the time but clearly, the result is we have two products facing a slow death march in favor of a reboot to a solution we almost had at the start. Let me unpick that further. When I first joined Microsoft, we were fighting to get WPF into the hands of .NET developers worldwide. We needed to move everyone from Windows XP over to Windows Vista and in a timely fashion. Microsoft spent millions pushing the agenda alongside getting Office Open XML blessed as a standard (given it would help influence adoption). The whole thing was a mess and as a result Silverlight was born if anything as a way to buy some time around what to do in terms of solving cross-browser and cross-platform related issues (with a keen eye on mobility). Silverlight did its job initially but in the end, the chaos that flowed from those days to today still is haunting us all. My point is that by talking openly about the technology platforms the way I have, I am looking to cut through the political and chaos that is before us today. I am looking to instead help others diagnose the problem aloud as in order to solve a problem you first have to admit you have one. WPF is dead. Ok. Now what. Do you go HTML5? Probably yes, but do you honestly think WPF being alive or dead have influence to this discussion – more to the point do you think this blog is going to send companies racing for HTML5 now? I would say if a decision is to go down the HTML5 path that thought was planted well before I arrived there. Do you invest in iOS or Android? Again, go for it watch the dollars you were going to spend on HTML5 and WPF escalate given its not only foreign development practices to your existing .NET space but you probably will have to absorb the time to up skill or hiring of specialist teams to do the work (India outsourcing can only buy you so much). If this blog is the catalyst to a WPF team getting the termination letters then you were cooked well before I arrived I’m just the 1000th cut.
Q. Is WPF Dead?A. Yes and No. Yes WPF as you see it before you is end of life that is to say no more code will be written for the “platform” given Windows 7 and Windows 8 have different DNA going forward. No as in when we decided to move everything over to leaner Windows 8 platform we had to put both Silverlight and WPF on a diet in order to get Mobility parity / compatibility in check. The Upside is we’ve fixed some of the UI rendering issues that have plagued you in the past; the down side is we’ve had to sacrifice features here and there in the process.
Q. If I make an Application today in WPF it won’t work in Windows 8 tomorrow.A. Not correct. Expression Blend uses WPF still in Windows 8, so in a way you’re covered as long as VS2012 and Blend continue to take their cue from the previous XAML Rendering that has been in place since Windows 7. There are certain things you can’t do in Windows 8 going forward though, that is to say new features won’t work in both Windows 7 and Windows 8 for obvious reasons. If they aren’t obvious then …stop coding now.
Q. Do I have to learn HTML5 or C++ in Windows 8 now?A. No. The neat trick here is that we took the body of work found in Silverlight and made it handle the rendering of XAML. Now we didn’t take it as-is we again had to scale it back and use it as a starting point for a reboot of WPF/Silverlight to ensure two things happen going forward. The first is that we have WPF/Silverlight parity issues resolved in terms of performance and developer centric API changes whilst at the same time we had to find a way to make Steve Sinofsky believe that Silverlight was killed off. The last point wasn’t a technical issue it was more of a political one and so in order to help give him the illusion of Silverlight’s death we renamed a few namespaces and adjusted a few features here and there to give the appearance of “new” on the “old”.
Q. Why did you change so much in Windows 8 to confuse us all on old vs. new?A. We had to find a way to put Internet Explorer back into the hands of the masses in a more aggressive manner. In order to facilitate this internal metric we needed to also scale back Silverlight’s popularity given when you think about its future roadmap and Internet Explorer the two will end up competing with one another. Having Internet Explorer start taking over the HTML5 discussion would also help us win hearts and minds with the non-.NET crowd which would then help boost our internal metrics around Linux, Php, Apache and MySQL/Oracle compete (that has often plagued us for many a fiscal year). Once we’ve placed Internet Explorer onto many devices worldwide we will then ask developers to fork their beloved HTML5 in a way that lets them access Windows 8 further. This in turn will help us regain the lost dominance we once had before all of our Internet Explorer staff left the company to work for Google Chrome. Additionally, it will help us with our many year attempts at attracting more developers to our Windows Server & Tooling business units. Now to answer your actual question it’s important to know the previous strategy for Internet Explorer as now the problem we face both internally and externally is how we are going to balance Internet Explorer’s future with XAML given the old “Silverlight” concept was directly competing with this strategy. In short we had to make it feel there was a lot of change in the room and decided that letting you believe that what’s really happened is that WPF & Silverlight were merged as one and that Silverlight 5 wasn’t the last release as really Windows 8 is Silverlight 6 Desktop. Letting you believe that would keep you preoccupied with that branch of thought where what we need you to do is come back to the Internet Explorer way of thinking – there is no plugin only a browser.
Q. So… you saying Windows 8 is really Silverlight 6?A. Yeah in concept yes. Technically no, but if you take a step back from our bad messaging, public relation screw-ups and lastly our idiotic executive we pretty much did what you asked – we fixed WPF and Silverlight parity & performance and we made it also work on both desktop and mobile. I give you Windows 8.
Q. Well ..why didn’t you just say that? Why did you scare us with C++ or HTML5 rhetoric?A. I have no answer suffice to say there was lots of infighting going on and I don’t see Soma and Sinofsky sharing a beer or two at a BBQ in the near future unless the bottle was broken and one has the other pinned down with a desire to kill..
Q. You said mobility and parity are you saying Windows 8 is compatible with Windows Phone?A. Yes. Windows Phone 7 was kind of a hold our place in the line while we figure out what to do next release. It was badly marketed and in the end we were too late to enter the market – not to mention we weren’t ready to talk about the work we were doing with Windows 8. Now that we’ve finally hit reset on Windows Phone via our 8.0 releases we’ve now found a way to put the XAML rendering we have in Windows 8 onto the phone. Well to be fair we really kept Silverlight’s DNA alive in both which has now let us enable you to write applications on both platforms via our new upgraded API’s and tooling (again to give the appearance of new). This is in part why you can’t use Windows Phone 8 code on Windows Phone 7.x compatible devices, Additionally you would see how we swapped the two out and start to guess what really happened during the Soma vs. Sinofsky fight.
Q. I don’t think that’s technically correct.. if you look at Windows Phone 7 and then look at…A. I’ma let you finish by stating that the phone may not have changed radically but Windows did that is to say if you were going to drag Silverlight’s work into the new Windows 8 whilst releasing Windows Phone 7 previously then which of the two do you change? The phone or operating system? – Answer is you do both but incrementally.
Q. Hang on so all of Windows 8 is now Silverlight? That doesn’t make sense..A. No. Windows 8 core is, (as the messaging and PowerPoint decks say,) new. Now the XAML piece that bolts on top of that core is what I’d call “Silverlight 6” that is it’s all the work that has been done on WPF/Silverlight since their birth converging as one.
Platform Adoption - Use Case.Garnter’s VP recently came out and stated that 80% of businesses by 2013 will be outfitting staff essentially with an iPad like device. It’s a pretty bold stat and you have to remember that Gartner get paid to come up with research by companies that need the said research to abstract their sales pitch from bised to unbiased opinion - that being said - it’s not unreasonable to believe what he stated. Picking up a mobile device like an iPad at first seems like it’s a toy, or unnessary for variety of industries as they will never replace a desktop device. An assumption like this will be short lived in most large companies that are weighing up their platform decision making. Firstly concept of an iPad in the hands of an after hours worker is more valuable than a laptop. The main reason is they are carrying the device around with them and are more likely to whip it out during a dinner with friends than a laptop or slate (excuse me while I take out my laptop, no continue talking vs let me look at this device that almost to the untrained eye gives you the appearance i’m checking the bill for our dinner folder thingy). The worker opens the device, performs some quick “at a glance” review of the data within their company, see’s no urgent issues and continues to go about their evening. Having First response reactions are highly valuable and will be the likely first candidate for mobility in most verticals. It’s more to do with the psychology of the device than its possibilities that is to say you could shift a lot of your desktop solutions onto an iPad-like experience but it won't’ happen until organisations wrap their heads around Security and how they plan to break up their current desktop experience(s) into more finite pieces. Security will be the biggest sticking point initially and UX Technology adoption aside, it comes back to the fear that if a user were to leave the said device at a dinner table then people can shut down a factory or steal intellectual property from a company faster than if they were on say a laptop (yes it's retarded but you know there’s a Security jackass in some IT Division scaring the kids with just that scenario and getting traction). A company will in turn dip their toes in the water, they’ll use Frist Response workflow / process as a way to see if this whole Mobile thing has legs from an investment standpoint and technical adoption acid test.
Platform Adoption - Windows 8 Hijack.Having forked browser discussions or worse having forked staffing of development teams is about as interesting to a large company right now as letting users have free access to an iPad without a SOE lock down. The reality is right now any adoption bet a company makes is likely to be repaved post Windows 8 sales begin as weird as that sounds? If you look at Windows 8 today you’ll see the Google Chrome Logo color scheme spread out into a bunch of Boxes that are basically fluff for the consumer. A few people out there will get all excited about the Metro - err..Modern UI - style experience(s). Companies who have a solid bet on .NET however will be keeping a very close eye on how you can hijack the consumer experiences to suit their agenda(s). Just like in the Original XBOX or Kinect release in which Microsoft had expected the market do X in turn users ended doing mods/hacks to use it for their own needs. A company facing a mobility crisis as the one they are facing today will see past the mickey mouse Windows 8 UI layer and instead hijack it for their own needs. Giving users the ability to wet their appetite with .NET level code on Win8 devices will be enough to hold the door open in the potential “if we don’t build a mobile/web story our competitors and/or customers will kill us” door closing campaigns. That in itself is an interesting thought to let fester, what if Windows 8 saves the Enterprise from having to decide on HTML5/Android/iOS? What if the .NET kids simply keep pumping out a WPF like solution but on a device. Wait, I just looked around and it occurred to me. It’s already happening only downside is they need a way to kill off the Windows 8 AppStore experience and revert back to a “my app will be all you need for this new Surface hardware you have in front of you”. Windows 8 will have a yearly upgrade path, there will be a subscription model that works like it did with OSX Lion and if you combine both Apple payment ideas with Silverlight’s deployment model you have a fairly good enoug Windows 8 story that will keep Business occupied long enough for the merging of Windows Server 2008 and Windows Enterprise Customer Client Thingy story. I’d wager that if business does uptake on Windows 8 they will force Microsoft into a reactive situation where they’ll likely have to sacrifice features set for consumers only and instead opt for Enterprise (which is where they will make their unit sales through the most).
It’s not their fault, it was the company that is giving them the legal eye’s fault.Yeah you could throw the company in question who would argue Metro is their trademark under a bus here. You could do it easily enough with the right amount of PR spin, but, anyone who’s been a Product Manager for more than five minutes in Microsoft would be able to tell you swiftly that you never ever ever name something in Microsoft without LCA running trademark searches against it. Exhibit A - Silverlight’s Out of Browser. When we came up with the feature of offline Silverlight / Desktop usage (aka the feature that would later kill Silverlight) we agonised for weeks over what to call it. We tried out names like “RIA Desktop” and a whole bunch of left field names that had no real meaning. Each time we posted a probable name for the feature we had LCA verify we wouldn’t get sued over it (given the US is a sue happy legal system). Unfortunately the ass hats in the Microsoft Marketing team(s) didn’t get the memo that most if not all Junior Product Manager(s) get when they first join - You don’t name a puppy unless LCA approves it. Either LCA screwed up here or it was Microsoft Marketing (I somehow think it’s the later).
Where to from here, how do you undo a brand?Given its a fairly fresh and clearly abused name it may stand a chance of being deleted from the minds of millions of .NET developers worldwide. I doubt it will get a high five for its replacement name though, as “Windows-style” kind of looks like the default case in a long list of good idea switch statements, but none the less “Windows Style” it is. I feel however for people like the MetroTwit team who have worked quite hard to claw their way above all the other twitter client clones to establish a unique brand. I guess Long and his team will need to hatch out a plan around “WinTwit” or something along those lines if they wish to comply with Microsoft’s “oops” moment. In closing Microsoft has yet again screwed up and like all its previous screw-ups its left yet again up to the community to dig in deep, sigh and cleanup after the company’s amateur developer relations). At some point with all those billions Microsoft has been making they will actually hire someone with Marketing experience but point in case they hired me as a Product Manager for the company and I had none! That thought will fester.
Specialised TeamsCubicles of tomorrow aren’t going to be housed with team members who can write and design for multiple devices at the same time. They will be broken into specialised teams and the more and more business(s) begin to consolidate their branding into the device market(s) the more they will look to simplifying their product portfolios and brands. A team of .NET developers who write HTML and WPF client(s) will most likely need to include an iPhone/iPad, Android/Blackberry team(s) who mirror their offering. Companies will aggressively recruit and look for people who are agnostic in one or mediums but realistically given the complexity involved in all the current UX Platform(s) it just isn’t feasible to find that many people on the market waiting for a job call.
Browser ForkingHaving a specialised team isn’t restricted to proprietary solutions, it will also factor into a more traditional medium of HTML development and design. As strange as this may sound to hear, the idea that HTML5 will bring the industry into a global position of unanimous parity of it’s implimentation amongst all browsers is simply not correct. The only browser that i’d argue has a vested interest in remaining pure would be Google Chrome and that’ simply because having the entire globe of online consumers still accessing HTML work’s to the search engine and advertising model of Google. Having a browser fork in API and extend beyond HTML/JS works to Apple, Google and Microsoft’s favor as well. In fact, I’d argue Microsoft are banking on the ye olde embrace / extend model it’s had in the past (with great success).
Diverse a Product PortfolioOnce companies have audited and forecasted what their internal current development team models will look like for the next 2-3 fiscals, they in turn will need to reflect on which bets to place in which markets that are dictated by their choice of development. It will depend on their choice but even then they still need to figure out how they can leverage an iPhone more than they can an Android (or substitute your own technology bet here). For every device you target brings a variety of constraints and expectations that you need to meet prior to even beginning development. Diversity in choice will ultimately have an impact on a companies brand and consistency model in how they want to broadcast their personality to their respective users. If you target an iPhone for example you have a pretty prescriptive UI design to leverage so it pays to run with it and not against it, given it will reduce your time to market cost(s). Same applies with Android and especially with Windows Phone. Problem with prescribed design isn’t its ability to convey a uniform user experience with an end user it’s core issue is the reduction of being able to stand out amongst your consumer(s). If you spend more you can overcome the prescribed approach but in doing so you also need to ensure you can leap beyond the baseline of expected behavior.
Metro-style could winoutPrescribed user interface design in turn will slowly become more and more weaponised in a way to again have a single designer rule many device(s). If you can invest in a smaller group of design professionals who have custodianship of a brand and the personality that comes with it, you in turn can reduce your costs on having less investment on design and more on engineering. A company may prefer the model of having a centralised design team that works with 3-4 device teams as a way of offsetting cost’s associated with multi-targeting. Metro-style design in turn plays a comfortable role as Android and Windows Phone 7 pretty much lend themselves well to this vision of the way design should be. iPhone/iPad however goes in the opposite way that is to say the composition found within these devices are much more detailed and focused in around theming the experience as much as it’s about enabling an input driven experience. The design(s) to date using metro oppose the idea of having real-world objects embedded into the 2D design composition (less turning knobs, wooden textures etc). The cost for design here is hugely decreased as a result meaning in reality a design team need only wireframe the composition of what they want a particular screen to look like, layer in color and ensure it adhere’s to some basic principles that relate to consistency, minimalism and lastly shape driven pictography / typography (pattern recognition 101). Having a metro-style solution going forward can work on all device(s) and whilst it may go against the iPhone/iPad design grain, it can still sit within and more to the point it would reduce a brand’s chance of inconsitency and personaltiy (closer to the one design on all belief).
Designers did this to themselvesCompanies like Microsoft, Adobe, Google and even Apple have reacted to a problem that was created by designer(s). The problem started the day when designer’s went against the developer grain, that is they forked off onto their own technology stack which was designed for them (Apple). In forking their work flow away from mainstream development this in turn created a workflow issue and in turn fueled companies like Microsoft to invest in a lot of tactical decisions around how to solve this said problem (WPF, Silverlight etc). The forking also gave way to a different approach whereby companies like Adobe began to also invest not just in a x-platform tooling but also for a while there in a x-platform delivery that works with the said tools that designer(s) had grown to love (Flex, Flash). Once Apple had also moved to an Intel chipset this in turn gave away to what I would call the “Apple Developer” generation where over time more and more of a developer centric foundation was being build to which a series of tools could also now target the designer(s) (amongst other creative professionals). Design for the better part still remained in its own cut-off from the rest area and the more and more developer communities that didn’t have a dependency on Windows began to emerge, the more they instead crossed the divide and began to work on Apple with their designer sister & brother(s). The developer defection to Apple created a huge amount of issues and problem(s) from within Microsoft as now they are facing a massive problem around having developers target Windows but also ensuring there are the right amount of designer(s) ready to support such developers. The more applications being built on Windows the more they sell Windows is the simplified formula. Google also now posed an issue whereby they have no real dog in the fight, that is to say Apple or Windows it didn’t matter provided you targeted HTML and helped fuel their Advertising & Search revenue streams of tomorrow. I won’t go further into the various competitive back and forth that has gone on suffice to say at the heart of this entire issue around choice lies the designer. The illusive designer who often costs a lot and produces what will soon become the main differentiator in a companies offering - user experience.
Function is no longer important form isAs the industry reacts to the competitive changes that are ongoing, much like a teenage boy does around the time of puberty - design in will start to become the focal point of such change. A designer will feel suddenly more wanted, targeted and will be taunted and attracted with some quite lucrative offers. Developers will also see this and start or have began to shift career gears and start looking into ways of becoming a designer. Some will fail whilst others will discover a suppressed design gene within lurking and waiting to be unleashed. The designer will however become the leader of the pack, so used to being the one at the back or considered replaceable, they in turn will now become the most sort after as in turn what is replaceable is engineering (the market optimised for function instead of form for over 20years). Here in lies the issue, the designer isn’t really equipped to decide the outcome of a generation of computing, they will always prefer to take the right amount of time to do the right job in a way that adhere’s to their internal principles around how the world should look.
Winter's not coming, a Fork isA designer today hasn’t gone down in price or time to market, the time it takes to produce a design still takes just as much time and effort as it did last year and the year before that. It however got a little more complicated as the canvas now comes in not just a 1024x768 screen (or there abouts) it now comes in a whole host of screen sizes and operating system level imposed limitations. Once the corporations that fork their design teams figure this out, styles like the metro-style will begin to emerge as they in turn can bypass the designer if in some fairly competent hands. As in reality the importance of User Experience Principles has become weaponised with the more specialised teams making their work public for all to borrow/steal. Don’t be suprised if a team in the near future had a designer but now doesn’t and solutions that look like Microsoft Metro were being produced. Google and Microsoft have began and in parts Adobe’s tooling also adhere’s to this as well. Having real world objects in 2D design isn’t a bad or limiting thing, it’s an ongoing design evolution around trialing & erroring deeper design beyond flat monochrome wireframes that have or haven’t been colored in. Don’t knock it as the alternative isn’t as deep in its composition.
If I could get paid for each time I’ve been asked which UX technology/platform should one bet on in order to produce the next generation of software in day to day business – I’d be quite well paid!
I don’t have an answer, and what’s really sad about that is that I should have a few answers not just a single one.
Today, you’re spoiled for a choice of technologies to help you produce some user experience namely for mobility. Since the introduction of the iPhone and iPad it’s arguably put something we’ve all kind of known into the mainstream hands, which is “experience matters”. Businesses are now keen to ensure that the next piece of software they produce works like it would on an iPad or iPhone (the amount of times I’ve been given a brief that uses that as its baseline for success is almost 90%+).
Why the issue in selecting today then? Well let’s look at the brands in question.
You cannot disagree that Apple’s influence on the UX discussion has been quite loud and obvious. Almost all phones and tablet devices have pretty much copied the entire existence of their products to the point where even though they hadn’t invented some of the ideas, they now look as if they did. Having said that, Apple still is a prescribed existence in that in order to play on their hardware you have to develop & design to their standards. You also have a limited amount of agility in order to take the device and slot it into various enterprise/industry verticals (mining, finance etc).
Distributing your solutions via a closed private cloud like existence can be done with iPad/iPhones but its still a bit messy in deployment. Furthermore inside almost all large organizations your cubicles of developers don’t have “Objective-C” in their resumes.
Whilst it has become the baseline for what a device driven UI should look like in the eyes of most business and technical decision makers, it’s still got a lot of latency and turbulence around its software development life cycle (i.e. it’s fast become a specialist skill not so much as a mainstream one).
Google / Android.
Google have managed to hold strong with their device platform story, that is to say their entire development and design pipeline isn’t that bad. Having said that I’ve seen, heard and been in enough meetings to see it being instantly rejected and it has to do with versioning and security as the core reasons for rejection (right or wrong).
Furthermore Java development at its core isn’t something you see go hand in hand with design focused teams, so again you have this issue with as stated by Apple around specialist skills vs. mainstream skills mixed with some market acceptance issues.
Just read my blog for a few pages you’ll see a theme emerge. Microsoft had a few ideas around what the UX space should look like, they put some bets on the table around these ideas, they got some semi-successful acceptance worldwide on these ideas but now they’ve kind of hit reset on the said ideas, taking two steps back and pissed the developer base off in the process.
To summarize, Microsoft has a whole new round of trust issues around long-term decision making, their tooling is good enough to build large enterprise applications with and lastly they still have a healthy developer base that have mainstream skills in C# & XAML.
The downside is their entire strategy around what you should or shouldn’t do going forward is out of control and requires a focused mind to unravel.
What I would say though is that Windows 7 is likely to be around and in a healthy state over the next 3-5 years and I think the hardware market will still look into ways in how to socket Windows 7 as their native OS when possible (for business, not so much for consumers). Given Windows 8 Surface is making their own hardware it could also be a negative for Microsoft, so whilst the only real option for hardware makers is to adopt Windows 7 or other, this in turn puts a long-term question mark around whether or not Silverlight or WPF should be something you double down on?
I often praise Adobe more than I have in the past as despite how close they came to overtaking HTML as rich media technology platform, they have managed to regroup nicely around being focused on tooling.
Given the turbulence above this company may solve the problem through tooling so it could even abstract the decision making process around which is the next bet by simply saying “it doesn’t matter, just use Adobe XTool”.
It’s still a long way off before that idea is realized, but none the less Adobe Flex / Flash aren’t something one should ignore outright. It still has some legs and although its clear Adobe Flash and iOS will never meet, they do meet however on Android and potentially Microsoft Windows device(s).
Despite Silverlight’s attempt to knock Adobe Flash out of the decision process if anything Silverlight’s demise has strengthens the runtime’s position further.
That’s all argumentative, so who’d you pick?
There the above working summaries overall and it really comes back to the question of making a decision. A decision like this is important and still necessary as when you start making architectural bets for the life of your next industrial grade solution, you need to line up how you’re going to present your connectivity to its vast user base.
Walking into a meeting and saying “all of the above” won’t fly, walking in and holding the posture of “right tool, right job” mantra also may make you feel like you’re a software mountain sage it does little for productizing ideas/solutions to a customer base who have a variety of IT environment(s) that are looking to your company as a lifeline to making the said decision.
Bottom line is someone somewhere has to be the one that says let’s go with “X, because…”
If I was asked today which one I’d pick out of the lot, given I’ve worked in all the above.
My bet for enterprise would be WPF for one simple reason – Windows 7.
Microsoft spent all of last year praising how successful Windows 7 was in terms of sales, record profits and so on. What I got from all that bravado was that whilst Windows 7 was stomping on Windows XP wind pipe, it also was replacing the old problem with a new. That is it won’t be something in which gets deleted from Enterprise machines that cubicle workers and field agents use today anytime soon.
That for me has a much further and greater ubiquity story than most either realize or choose to acknowledge.
iPads are definitely something that may get some traction going further in large business but ultimately it’s such a specialized decision that I think having those devices do anything outside of a HTML app in its first generation of solutions in the enterprise is something that I’d say isn’t a worthwhile bet (it’s still in pioneering mode).
WPF and WinForms will still have a much longer usage than most will also care to agree outloud but I think once Silverlights engines get shut down more and more the retreat position for most will be back to WPF whilst they wait for the whole WinRT story to stabilize.
Adopting WPF today gives you also some healthy amount of skills to target WinRT later on, but it also gets you into a position where there is a likely chance of some additional changes / upgrades should the WinRT vision fall flat (Which I’m thinking it may very well).
That’s what I’d say out loud, as I’d say this based simply on your HR recruitment potential, tooling story and lastly ubiquity related decisions that are made in organizations where little patience is given to solutions built in HTML of the past.
My opinion has now been noted, so what would you bet on and why?
I’m not looking to pick a fight, I do however have some basic questions around what Success vs Fail looks like for an average Wp7 Developer. That is to say, I’ve worked in a few Wp7 App/Game teams in the past two years and I’ve not seen these folks talk up their revenue or commercial success.
Having recently just finished the first beta of an upcoming game, I’m now spending majority of my effort trying to settle on a price and revenue model that will accompany it. I’m also thinking about what my marketing spend should be and where etc.
My research into finding answers to questions around market size, target audience and lastly what a safe price tag should be has come up quite empty . I’ve asked various Windows Phone 7 community “experts” to which I’ve gotten blank responses or some minor links to a blog post from indie developers talking up their Ad Revenue stream(s).
I’ve also asked some Microsoft staffers internally who don’t mind giving me a leak or two of information and they too came back with answers like “come to think of it, I haven’t seen anything internally either. Just lots of adoption metrics but not actual hard revenue related data”.
This now begs the question, which is despite the market share of Windows Phone 7 what exactly does success and fail look like for those looking to target the device?
60 minutes in Australia last Sunday ran a similar interview with iPhone developer(s) and they had a guy from Brisbane on who’s made around $10million off his game(s). Ok, much larger audience but at the same time iPhone marketplace is quite a competitive and saturated user base to target, so to make $10million isn’t an easy thing but at the same time that’s a carrot we can all jump at.
Looking at the various launches / keynotes around Windows Phone, I’ve also not seen someone on stage that has come from a position of “until Windows Phone 7, I was homeless but now, I drive a Ferrari and I have two hot girlfriends” style success.
Ad Revenue is the success metric.
If I cast my browser searches on the interwebz, the likely response to the above questions is simply ad revenue. To me that’s great, it’s I guess a profitable approach but for me I’d rather not make my creation into a digital NASCAR whereby I’m hocking Viagra in-game. Instead, I’d like to either enable in-game purchasing (Windows Phone 8) and/or once-off purchase with additional seasons/expansion packs later (should the audience feel that the game is rewarding enough to invest in).
Today, there is no actual capability for in-game purchasing (ie buy gems/gemstones etc) so you have to rely on your initial once-off purchase. You also are encouraged to provide a trial version of your creation as well, so again, not sure that’s a great revenue model for developer(s) but at the same time it’s a great thing for consumers.
Metrics you can count on.
This probably boils down to bankable metrics that Microsoft is quite cagey in giving specifics around. I doubt anyone will get a clear and concise answer here around what the adoption vs active user metrics are on any given quarter with regards to the Phone(s). If that were to occur I think Nokia’s price would drop and most likely impact on Microsoft’s fumbling share price as well.
That’s of course a pity though, as being a developer you want to size your market, figure out what your potential financially looks like and given we can’t get those specific metrics from Microsoft (in a consistent manner, they do drips and drabs of random stats but they rely on a lot of external inference to size collectively) then the alternative is to come up with another position.
Create a Dust Cloud.
I’ve already committed to the creation of my game, it’s done (almost). I’m ready to hit the launch button and try my luck so right now, I’m a candidate for easy convincing given I already took the leap of faith a month ago. I need confidence that my energy and time wasn’t just a complete waste of time, I want something to hang my hat on and mirror or expand upon around success for the Windows Phone 7 market place.
I want to look at someone’s success, learn from it and expand on it in the hope I can generate my own Windows Phone 7 after glow.
Microsoft simply needs to create what I call a “dust cloud” in that just like in many war novels whereby the horses on the horizon have created such a vast dust cloud that the attacking army looks and sounds a lot bigger/worse than it actually is. Microsoft needs to create a similar affect, that is to bring a few success stories out into the light and shower them in marketing love, followed by infomercial like stories of “Look, he was poor, but now he’s worth $10million USD!!!”
Given there is no in-game purchasing today and yes it appears Windows Phone 8 will fix this, it’s clear to see why a lot of the iPhone game developer(s) haven’t likely ported their success over to the marketplace (Excluding Microsoft investing in this companies via seed funding to do so). That’s a problem and was always one that I think would become a negative for reasons to invest in Windows Phone 7 marketplace. It’s fixed though, well soon to be so I’ll not dwell to much on that one.
Not seeing success around Windows Phone 7 and more importantly getting hints or glimpses of what a commercial reality / viability of spending your time making for the device(s) to me is something that is either really bad or one of the best kept secrets that has the worst reasons for doing so.
I hopefully assume there is a revenue model beyond just ad impressions for Windows Phone 7 marketplace success, I want to see or read a story or two on an indie game developer making their annual wage and more on a single game’s success. I want to see part two of the movie “Indie Game: The Movie” whereby instead of following the success of an XBOX game developer we see the tablet/mobile phone developer.
I genuinely want to believe there’s gold in these Microsoft hills. Show me the money!