Developer interest in Windows 8 is stagnant, new line of worry for Microsoft
thenextweb.com
thenextweb.com
I am in this very situation, with an app with has dozens of millions of users on Windows (and millions daily).
The first reason is the most important. WinRT requires a lot of rewrites of your code. (and the rationale behind some limitation are often political), and Microsoft is not helping or making it easy for you Notably for networking and multimedia.
Networking: everyone uses the BSD sockets, Win32, Linux, OSX, iOS, Android, Symbian, Bada, etc... And you cannot use them on WinRT. There is a very high chance that your code or one of your library uses it, of course. But the bad part is that Microsoft does not make easy with a wrapper exposing WinSock-like API based on their new API. Not even a wrapper than does 80% of the needs.
Multimedia and Games: your videogame that works with a C++ engine and OpenGL ES for casual games that works on iOS, Android, Bada,... does not work under WinRT, because OpenGL is not allowed... And I don't even speak about Video acceleration.
Yes, they need to do a massive change in their APIs, but helping the transition would have been a good idea...
So yes, writing yet another Twitter client is easy on WinRT, for more complex applications, well, it is way too hard and difficult to do it this fast.
Decoding does not do system calls, except for hardware decoding, so no worry.
File input is worrying because of the sandbox, but should be doable with some work.
But networking is a nightmare. 20 libraries are using WinSock2 (including some codecs like FLAC), plus libVLC's core. Sure HTTP access is fine, but RTP, RTSP, FTP, HTTPS, multicast UDP are weirder beasts...
To add it to the pain, VLC is a mostly C99 project, but C99 is too new a standard for Microsoft to implement it :)
Considering the last time MS released a C compiler I can fully believe it.
GCC has recently migrated to C++ and CLang is developed in C++.
So Microsoft reasoning is that C89 is good enough for them, and you are free to buy a compiler from another vendor if you really want to use C99.
Good luck with it – I’m sure you know it’s one of the Killer Apps on any platform.
Hah, better than that, Herb Stutter explicitly stated they don't give a flying fuck about C99: http://herbsutter.com/2012/05/03/reader-qa-what-about-vc-and...
> If you really need [...] features in C95/C99/C11 that are not part of ISO C++[, use] a different compiler
Wow. That's pretty ridiculous. So DirectX is allowed?
OK if you're a triple A studio with a cross-platform engine. Show stopper for most other devs.
DirectX11 with 2 compatible modes (D3D9 and D3D10)
Contrary to popular belief by many geeks, game consoles do not support OpenGL as well. When they do, like the PS3, is a kind of subset that most studios avoid using anyway, and prefer to make use of the lower level APIs.
I read in a lot of places recently (this year) that XNA is 'dead' (search Google for instance). Is this true? What replaces it?
If you want to see what's possible you can check them out:
1) Adlib: http://apps.microsoft.com/webpdp/en-US/app/adlib/9cc0809e-b0...
2) Petunk http://apps.microsoft.com/webpdp/en-US/app/petunk/c03ecbca-4...
You can also read a great deal more about the process as well as watch me convert a game live here: http://www.reddit.com/r/windows8/comments/10g4r2/check_out_m...
Re: networking, you are of course right. At the same time, I can sympathize with Microsoft's decision to abandon Winsock. Cross-platform use of BSD sockets is mired in a deplorable mess of #defines and '90s incompatibilities. For new code, the non-blocking WinRT API is a million times better -- the question is, what can Microsoft do to make porting easier?
That is not a reason to not code and offer a code wrapper for BSD-sockets-like API based on WinRT sockets.
Of course, no need to cover 100% of the API and they could use lots of warnings to force developers to slow transition.
What I find mind-blowing, though, is that Intel's new architecture Haswell which will come out mid 2013, and is supposed to be even more GPU-oriented than previous chips, will only support OpenGL 3.2, which will be 4 years old by the time the chip launches (some sources say OpenGL 4.0 - still 3 years old though)...and yet it will support DirectX 11.1. I find that incredibly disappointing.
I guess Intel just doesn't care about OpenGL. I'm not sure how they are supposed to make us believe that they are serious about entering the mobile market with that kind of attitude towards OpenGL.
They've publicly stated that the hardware is OpenGL 4 capable. (Google it.)
Bingo. Microsoft was never very fond of the idea of people porting Windows apps to other platforms. If people develop portable apps that run everywhere, the network effects achieved by having OEMs bundling Windows on every PC are neutralized.
(Note, i'm actually a little excited about the Surface tablet as a potential device that crosses the chasm between full tablet and laptop. But I don't have very many apps that I use now on my iPad.)
EDIT: Also, I don't know much about any game development SDK engines that abstract devs from these proprietary libraries and runtimes...however I think they must exist?
I have a Transformer Prime (#2, Transformer Infinity is the newest one) and the keyboard dock. Android apps/games, plus terminal, VNC, etc for doing real work.
And Android 4.0 looks more like Windows 7 than Windows 8 does (black "taskbar" on the bottom with clock and notifications on the right, home button, back button, and app switcher button on the left, and the 'desktop' can have icons and widgets).
Oh, the irony. If you actually look at those #ifdefs, the vast majority of them are #ifdef __WIN32__ - because Microsoft didn't really care about compatibility when they first adopted BSD code. Compared to Unix/Windows, the differences between BSD and Linux are almost nonexistent.
A lot of us haven't even gotten far enough to figure that out. Microsoft just switched us all over to a new UI toolkit (Windows Presentation Foundation) with the release of .NET 3 five or so years ago. We've invested a lot of time and money into getting up to speed with this new technology. And now we're already being asked to migrate away from it and onto yet another Next Big Thing.
Meanwhile, Microsoft zinged its mobile developers (the very ones they're so desperate to court) even harder by deciding that the new mobile platform they brought out only two years ago would not be compatible with the new mobile platform they're bringing out now.
It was twelve years ago this month that Steve Ballmer did his famous monkey dance while repeatedly shouting "Developers!" and apparently slipping into some sort of fugue state. Well, it turns out that all those developers he wanted to make such a big deal of saying are such a big deal? They're are all kind of pissed off and disgruntled right now.
WinRT 1.0 is basically a subset of Silverlight with a few specific controls thrown in.
That reminds me: WPF is not even a superset of Silverlight; There's functionality I need in Silverlight (regarding media codecs) which is not available in WPF, and my only way to get it is to instantiate a browser, run a silverlight app inside, and somehow bridge it all underneath in my app.
Pure madness.
You can still write WPF apps for Windows 8, of course, but they won't be Metro apps, they won't run on ARM tablets and, significantly for the current conversation, they won't be allowed in the Windows app store.
[1] by which, I don't mean they are remotely in danger of being dethroned. Just that they can't dictate application standards anymore, because most activity happens on the web.
Using it to put developers within your own ecosystem off-balance is an antipattern.
Bingo! Talked about disrespecting your developers/users by changing the rules of the GUI every couple of years. Only the hardcore fans, pioneers and draftees are jumping into Windows 8. (The rest of us are keeping it locked up in virtual machines.) There's enough work in the Windows development universe, a developer can ignore Metro till it grows up or decent third party tools come out. For f--ks sake, Redmond, I've got real apps, (both web and desktop) to write.
And for a long time, it made everyone happy - because jumping on the new thing kept you employable, and actually shipping working products mattered less.
Microsoft did not change its ways. The world did.
As anyone noticed how many MacOS X APIs have been deprecated since the early days?
Or the API changes in Android?
Every corporation plays this game, as you point out.
I still remember the early COM days, where the only API was C based, and COM was called OLE.
That is why you have to import android.support.* versus android.app. Which forces you to have some form of preprocessing in the Java code.
Plus the API for the action bar is still missing from the support library.
The API changing game is another problem - it does not allow you to use existing application with newer system. As far as I know, this does not happen on Android (for now).
Except that the old widget sets never die. Xt, Athena, Motif, Lesstif, Tcl, gtk, Qt. Even swing and related tools if you include Java.
And so ... they're still in use. While significant new apps may not be getting developed with these tools, plenty of old ones are maintained, and the toolkits are largely serviceable -- they may be used if desired.
They actually provide a bit of useful visual feedback (if you're versed in Linux/Unix history), in that the style and design of an application gives you some idea of how it's going to work and what its quirks may be.
Consistency? We've heard of it.
edit: typo
Still, if you want I can post all the Linux kernel ABI changes.
The changes done in Apache during the 1.x to 2.x transition.
Or many other examples, as they are quite easy to find.
Nice to bend the reality to fill into your argumentation.
I've written Linux device drivers. They're easy to write, and API changes are not a concern at all.
private as "private/internal API" nothing to do with secret.
> I've written Linux device drivers. They're easy to write, and API changes are not a concern at all.
The whole point is that it changes! So it is ok for Linux to change the Kernel ABI, but for companies not?!
New platform, new kits. Same as any other company.
WP7 apps will run on WP8 without any modifications or even without anything needing to be done by the developers.
>Well, it turns out that all those developers he wanted to make such a big deal of saying are such a big deal? They're are all kind of pissed off and disgruntled right now.
Citation needed and content farms like TNW who will "print" anything to drive clicks don't count.
I know it's hip on HN to rag on Microsoft, but cmon, two thousand apps for a platform that is a month away from release(only available to MSDN users right now) and everyone is predicting doomsday? Perhaps developers are making use of the last month to further enhance apps before submitting them?
In contrast, Microsoft will just go and kill whole platforms from time to time (e.g Visual Basic) rendering useless years of experience building deep understanding of a platform.
If a vendor who only supplies a single product decides to torpedo the APIs that you rely on, they create an easy opportunity for you to switch to another vendor entirely. Whereas historically Microsoft could wreak havoc upon an entire development platform (Visual Basic) knowing that probably all you'll be able to do about it is huff and puff around a bit on the Internet. After all you couldn't jump ship on Windows development - all your customers were Windows users, or your entire IT department was built around Windows, or your corporate intranet is all dependent on IE6, or whatever.
Take this game bundled with Windows 95. ftp://ftp.microsoft.com/deskapps/games/public/AAS/Hover.exe
It runs even on Windows 8. Upgrading from Windows 1.0 to Windows 7.
http://www.youtube.com/watch?v=vPnehDhGa14
As I said in another comment, I still see some ASP and Visual Basic usage even after all these years, those applications are still supported in Windows 8 and Windows Server 2012. Microsoft stopped making new versions because it wanted to move on to better technology. Want to take a poll on HN about what developers think of Visual Basic and Classic ASP? A case of damned if they do, damned if they don't.
"Classic" VB was the PHP of the client/server era: ugly, reasonably capable, and everywhere.
Imagine the screams you would be hearing across the Internet if the PHP core devs all decided en masse to go work on something else, and PHP was under a closed, proprietary license so nobody could fork it, and you get a sense for what it was like when Microsoft killed VB.
Of course if you're doing anything interesting then it's probably a nightmare.. but the vast majority of applications aren't doing anything interesting, so Win RT is great for them.
Almost every Metro style application demo I've seen is some variant of a "social" app. Do they really think that the millions of windows developers all suddenly started working on social apps?
Every one of the pivots that they have made in the past few years has been in reaction to some external threat and the developers are in the crossfire. Windows developers are too weary to be excited about yet another wide ranging change.
1. The Windows app store is Metro only.
2. Developers as well as normal users are actively looking for ways to avoid having to interact with Metro.
Developers have zero interest in personally using Metro, so they have less of an incentive to port their apps. Other desktop users will also not like being thrown into metro just to use a one-off application, maybe unless it's a game, so they'll continue looking for the desktop version of an app.
The whole ecosystem is really a buzzkill for me.
They allow Desktop Apps as well.
Microsoft muddied the waters a bit with this word that they aren't even allowed to use anymore. It's variously been used to describe a set of design principles, a UI development toolkit, and a particular subset of Windows software that is designed to run well on tablets and is put together using the aforementioned design principles and framework.
Windows App store apps are Metro-only under one of those three definitions: The framework that we're now supposed to call WinRT.
Which is, of course, not at all the same thing as Windows RT.
No, they don't have to be. The Windows 8 app store on non-Windows RT devices will have links to desktop apps.
http://www.computerworld.com/s/article/9227907/Microsoft_tip...
HN comments on Microsoft related stories(only negative ones i.e, the positive ones are usually flagged to death even if they rarely get on the front page) sometimes remind me of the blind leading the blind. Some people who don't even use or follow Microsoft technologies are the first to vote up such stories and then comment snarkingly in the comments about things that they seem to have no clue about .
Well, the app store can link to desktop apps.
The reason is the same that the OS X app store is heavily sandboxed. Microsoft does not want to distribute via its store BonziBuddy type borderline adware/spyware/bloatware/toolbars with always running processes and services and icons in the system tray. It's a pain to enforce on Desktop apps. Contrast that with WinRT apps which are totally self contained and sandboxed except for integrating via Charms.
>2. Developers as well as normal users are actively looking for ways to avoid having to interact with Metro.
That may be true to some extent, but developers seem to be catching on. Jeff Atwood is upbeat: http://www.codinghorror.com/blog/2012/07/betting-the-company...
Two thousand apps without even the OS really launching or the Surface being released is nothing to sneeze at.
I think the real differentiator will be how well the Windows RT and Windows 8 touch enabled laptops will sell over the holidays. If they sell well, developers and apps won't be far behind.
Catch 22. They won't sell well until there are lots of working & useful apps.
It hasn't been officially launched yet: how many normal users have spent more than a few minutes with it?
Personally after playing with it for a few weeks I really like it. I've just started developing for it too (being an iOS developer for the last 4 years) and within a few days I am up to speed.
>> "2. Developers as well as normal users are actively looking for ways to avoid having to interact with Metro."
I think this is good. It forces developers to have to learn the new API's. If they didn't do this people would continue to build desktop apps (largely because people are lazy and it's easier to continue working with what you know) and the best apps wouldn't turn metro. Nudging developers to go metro means that when Windows 9 comes around they can get rid of the stupid split (metro/desktop) interface.
Steam has less than 2,000 apps, and no-one would say that it feels empty.
The Mac app store launched with only 1,000 apps.
I don't think that the number of apps is particularly important as long as the quality stuff is there - can anyone who has used it comment?
Seriously I'm a fan of Windows Phone 7.5 and own a handset with lots of apps installed but it doesn't scale up to the desktop at all.
Not a single existing Windows user is going to bother with this crap - it'll end up going to way desktop gadgets went except you can't turn it off any more.
In Windows 8 you have to either check "Allow all trusted applications to install" in the Group Policy settings in Win Pro/Enterprise, or change a registry setting. This means users will have to go out of their way to install anything beyond what the App Store provides. Well, at least the option is still available.
Steam is an app store for games. Games purchases are impulse driven. When buying from Steam, you either go for a big title that you know you'll find on Steam or you go searching for something that triggers your interest.
On the other hand a large part of discovery on a regular app store is search-driven by actual needs of users that want to accomplish something very specific. Like, just the other day I searched for a way to view/manage my Picasa-stored photos on my iPad.
The number of apps is important for one because this means the app store doesn't solve many specific problems users are having and because Microsoft is known to have a big developer ecosystem since forever (building platforms is what they do best) - and so this lack of enthusiasm reflects badly on them and on Windows 8.
This only applies to WinRT apps. You can still install whatever desktop apps you want. So if you want to install Picasa, you can do it just like you would on Windows 7.
You must not have used Mountain Lion. By default it won't let you run unsigned apps. You can turn that off in System Preferences under Security & Privacy, but would casual users know how to do that?
>In Windows 8 you have to either check "Allow all trusted applications to install" in the Group Policy settings in Win Pro/Enterprise, or change a registry setting. This means users will have to go out of their way to install anything beyond what the App Store provides. Well, at least the option is still available.
Err what? To my understanding, what you said is exactly opposite, OS X has those restrictions and Windows 8 doesn't. Do you have a reference that Windows 8 restricts third party desktop apps by default?
Once the WinRT tablets get into peoples hands the call for RT-specific apps will increase.
Plus, the WinRT dev environment really isn't as fully baked as we've grown accustomed to in the Windows world. So many things just simply don't exist at this point. I've been looking at building a Javascript-based WinRT project - one of the suggested app build paths suggested by MS and discovered that there is no touch-and-drag support built in yet. You can roll your own using JS-events but .... really, things like that dampen the enthusiasm.
Most iOS apps weren't developed before the iPhone was released. They were developed as a result of somebody getting an iPhone or an iPad, thinking "Why can't I do X with this?" and then building an app.
Another incompatible API is just more shit to deal with.
They are not happy.
I'm not either as I have to support these guys.
Not one dev saw that coming with those APIs? I don't believe it. Microsoft in the 2000s has been all about throwing APIs against the wall and then deprecating them. Anyone who has been around Microsoft knew this was a risk with Silverlight.
I think the real reason these particular devs got burned is because is because Windows today is like Mac before MacOS X: it's all about incompatibility with the rest of the world, "doing it better", crap like that. MVPs are happy to go along with it and adopt these technologies because they can keep their position of being important in the ecosystem. It's like Apple fans in the 90s. WPF, Silverlight, EF, all this stuff is akin to Apple's OpenDoc, or Dylan, or even Newton. It's shiny technology in an incompatible vacuum.
On the topic of the Windows app store. When Apple made iOS, they took components of MacOS X as the foundation of iOS. But when they released the Mac App Store, they didn't force developers on MacOS X develop to the iOS API. That's what Microsoft is trying to do here. Develop with RT or Metro or GTFO. Pure idiocy. The next step is predictable: Microsoft will have to step in like they have on WP7 and they'll start offering to pay for other people's development costs to do the port. I'd be surprised if they haven't already started offering that.
Did I miss anything important? Honest question - I'd like to prepare the phone as good as possible, it is her first smartphone. Perhaps some kind of news reader, but personally I don't use them, wouldn't know what news sources to set up.
"We need 1000s of apps" is just something Apple marketing has installed in our brains.
If Windows 8 comes with a decent browser, calendar and email app, they are good to go.
As for desktop PCs - I think only few people are still interested in creating desktop apps? Not counting games.
I've owned an Android device for a year or two and I can say that I have under 30 apps installed on the thing from the app store (and probably 5 of those are superfluous, I'm just too lazy to get rid of them). Yet, it has all the functionality I require. As nice as it is to have thousands upon thousands to choose from, honestly I think fewer can be better in some cases, especially from a consumer's perspective: http://www.nytimes.com/2010/02/27/your-money/27shortcuts.htm... Based on that article (I know it's NYT but it cites a good source or two), fewer apps might even result in more purchases overall.
And Windows exists as the 800 lb gorilla on the desktop for two big reasons:
1. massive numbers of legacy enterprise apps with mind-boggling levels of customization. (e.g. plugins, forms, scripts, macros, etc)
2. games
Making life easy for developers in updating/supporting those apps on new versions of Windows has been a huge part of maintaining their dominance. If Microsoft makes an upgrade even nearly as difficult as porting to a brand new platform, they're making a huge gamble that developers won't hedge toward cross-platform solutions and web apps.
Which, while great for consumers, would be disastrous for Microsoft.
Also I think the professional companies will simply hire people to port their apps to every platform, no matter how painful it is. Some indie games might be missed, but even then - if they are successful, they probably make enough money to pay for a port.
Sometimes users need specific apps that are otherwise interchangeable. Kindle, for Kindle owners. Kobo For Kobo Owners. Gmail for Gmail people. Viber for friends of viber users. Whatsapp. LotusMessenger. Skype. Expensify for people who use expensify. You don't want your Mum to have to tell her friends to use Skype instead of LotusMessenger because her tablet doesn't have LotusMessenger, especially if she already uses it on her laptop or phone.
Raw numbers implicitly assume that the ratio of crap/important is the same across platforms. You could use the number of apps X each app's userbase to get the idea. The platforms are probably look more level if you look at numbers like that.
It's more critical now that people already have smartphones and they'll probably want the 5-10 apps they use to work on whatever tablet they buy.
Öffi also does Dublin, btw (in beta, though).
You said yourself that the lanyrd app is useless (haven't tried it).
I get your point, but I still wonder how many of those apps are really necessary.
I'm sure there is a large percentage of apps that are completely useless or interchangeable for most users. But, at 2000 there are probably plenty of useful (to some people) apps missing where the appstore has dozens.
The app the made me get apps was a chess clock.
I'm actively looking for better alternatives now. Barring that I'll have to hunt down older versions of Skype..
Said every Mac user in the 90s (myself included).
I know a lot of people who don't play games on their phones.
Absolutely not, and I don't get the fascination with app number counts. I often hear people say "I got a new phone, what apps should I get?" Well, what problem do you need to solve? "Oh I just want more apps" is what they usually say. Then everyone wonders why their battery only lasts 7 hours.
I haven't looked in the Windows 8 store, but as long as it's not 2000 complete garbage apps like the pages and pages of ones you sift through on Play, I don't see the issue.
How many other people want a Campfire client on WP? Maybe a few thousand. For how many people is the lack of a decent one a deal-breaker? Maybe in the tens. But for me, it's a deal-breaker. Now swap Campfire for some other app ...
And that's why the breadth of the App Store is important.
- Screen Filter
- games/books/drawing apps/learning apps for your kids
- games for yourself
- music apps: cbc music, rdio & tunein radio for me
- off line reader: pocket or similar
- weather app
- justpictures. A flickr/picasa/facebook/many more picture viewing app. Provides notifications when people have uploaded new pictures, which is its killer feature.
- mx player
- aldiko/fbreader for reading books outside of the kindle walled garden
- atm locater app
- qrcode scanner, which is mostly used for installing apps from outside the store
- good calculator (droid48 for me)
- connectbot (ssh)
- good alarm app (double twist for me)
- skype, voip app (I use Bria)
- shared grocery lists: our groceries. indispensable.
- todo app (i use got to do)
gimmicky apps that are worth installing if you have lots of room: (granted, I paid 10cents for much of these)
- star chart
- sound hound or similar
- flight track
- camera app a la instagram (camera zoom fx, paper camera)
And that's just what's on my front screen. There are more, but most could be easily uninstalled.
p.s. how do you format lists on HN?
I admit the one thing I miss is good games for my kid (toddler age). It seems most serious publishers tried the iPad first for such things, Android is lacking behind.
Not a concern for my mum atm, though.
Discovery of apps is actually a real problem for me. I don't have the time to follow app review blogs.
I think Google Goggles also does QR Codes. Not sure if Connect is also an offline reader? I ended up being too lazy to mark articles for later reading, so I just keep some ebooks on the phone for boring situations without internet.
"Unfortunately, it's never the same 20%. Everybody uses a different set of features."
-- Joel Spolsky http://www.joelonsoftware.com/articles/fog0000000020.html
Otherwise by that logic every software should tend towards infinite feature count.
Classic example of 80/20 rule.
I say this after having the first iPhone, the GS, and the 4.
Sorry for disagree but between the other two (Android and WinRT) WinRT is fairly far away from iOS. Not mentioning that is way more comfortable to work on VS rather than Xcode.
It's a shame because many people including me could at least port some of their apps. An additional 99$/year for the Windows 8 store simply isn't worth it. If there's one major reason why the interest is so low then it's probably it.
I am definately going to stick with Windows Phone for the time being since it's been a great experience and the release of WP8 will bring some needed attention.
* I can't write my own JIT compiler because of a lack of VirtualAlloc() and VirtualProtect() functions
* I don't have access to some other lowlevel functions not available in WinRT that exist in WinAPI
* I am forced to use Microsoft's App Store to provide my Metro applications
I am not in the slightest interested in writing applications for WinRT.
See http://www.freelists.org/post/luajit/FYI-No-JIT-on-Windows-8... for explanations to the first point.
Just use the tools the platform offers, instead of using the same hammer everywhere.
The Javascript engine used for Metro applications (Chakra) also uses these API calls, so even Microsoft is (obviously) not able to relinquish using these API calls for writing a JIT compiler.
So: I really only want to use the tools the platform offers - but in the same way Microsoft does; not in the limited way that Microsoft forces outside developers.
While these API not be in the "modern" SDK, the system calls behind them still work just fine. (They have to: otherwise, malloc wouldn't work.)
You can walk ntdll's export table manually and find NtProtectVirtualMemory and friends.
Also, SYSENTER is a thing.
Also this is a tools question too: It's harder to make an app for two versions of Windows than it is to make an app for Windows and something else. The tools just don't make it easy to write conditional code.
[1] http://www.macstories.net/stories/four-years-of-app-store-de...
http://weblogs.asp.net/fbouma/archive/2012/09/12/the-windows...
The process looks completely messed up and will likely turn off many Windows developers (like myself).
If I remember correctly the iPhone launched with no app store. I realize the author's point, but it's offered as fact with little to back it.
Another report of this story on another tech news site did point out that developers may be aiming their releases for the date when Win 8 is generally available. So we may see an increase in the rate of releases as that date approaches. This is just speculation, just like the story, but at least it brings some balance to the argument.
Or they could all be junk, and Windows Store is doomed.
The numbers don't mean much.
Not everyone is going to put their applications on there straight away - how many put it onto the MacOS Store straight away (though there was A LOT of hype around the mac store).
Mobile application numbers don't really compare to desktop apps, noone really needs a fart app on their PC.
It's not about having the "top 10 apps". It's about having "all the apps you could ever need". And if there are 2000 apps, it most likely doesn't mean that it contains "all the apps you'll ever need". And which platform would you go with? One that has and will have all the apps you'll need or one that has "2000 apps"?
Second, the 2000 is absolutely certain not to cover the long tail. The 2 dozen applications you use are not the half a dozen applications I use. Those car engine bluetooth+OBD monitors and bike repair apps are definitely not in the 2000 pool. Not to mention the variety of games out there.
2000 is a really crappy number of apps to have.
So it depends which these 2000 are - if 100 of them are good,polished and they cover wide spectrum of needed functionality its more than enough.
The real problem is the lockdown of the system.
Why should developers launch now instead of polishing their apps and launching at RTM?
I think this is much ado about nothing, once the platform launches and people start buying laptops with touchscreens and tablets, the number of apps will also go up.