8 ms·
A question for those of you who work with Microsoft frameworks. Why do you believe in any technology that MS gives you? How is it these people have any credibil
by neilk 15y ago
A question for those of you who work with Microsoft frameworks. Why do you believe in any technology that MS gives you? How is it these people have any credibility left?
Their technologies are invariably doomed to obsolesence within about 2-3 years of their introduction. Those that the web doesn't make obsolete are eventually thrown under the bus by Microsoft themselves in about the same time frame.
- pcj 15y agoSilverlight was released in 2007 and as rumored lets say Windows 8 probably comes around next year or so - it still managed to provide an alternative to flash for all these years (at least for certain kinds of RIA). If HTML5 becomes a standard, isn't that a good thing that Microsoft is supporting it completely? Besides that, folks can continue to leverage their XAML (for UI) and C#/VB skills for building even new Metro style apps.
- three14 15y agoBut they do keep your software running on newer versions of Windows years after Windows has moved on, so long as you kept to the API as documented. Also, it's hard to say that Apple or desktop Linux is fundamentally different, except that the schedule of changing everything might be slightly longer.
- gaius 15y agoLet's see what Linus himself has to say about desktop Linux: http://www.theregister.co.uk/2011/08/05/linus_slams_gnome_three/ http://www.theregister.co.uk/2011/08/05/linus_slams_gnome_th...
- rbanffy 15y agoI agree Gnome Shell is less than perfect, but, hey, I can still use Gnome 2 if I want. More to the point, he can use it.
- namdnay 15y agoThe Windows SDK begs to differ
- d4nt 15y agoSo long as there are businesses willing to invest in the latest Microsoft blessed framework there will be a community of people willing to learn them and sell their skills to those companies. For me, the real question is, why are business still willing to make investments in the latest Microsoft blessed framework? Actually, I think since Longhorn there are signs that businesses are a bit more sceptical about these bold technology announcements from Microsoft. They used be able to pretty much control the weather but these days they have a hard time getting people to use things like Silverlight, WPF or XNA. Their dominance is still strong in the enterprise though. SharePoint does not deserve the market share it has. But business are hooked on using the Microsoft tool for whatever it is they want to do. Need an intranet? Well Gartner says we need an enterprise CMS... so we'll hire our preferred Microsoft Gold Partner and give them a budget of 200k to build us a clustered SQL Server environment on which we can run some load balanced SharePoint app servers, all for a two step content approval workflow and a few thousand hits per day. Everyone in that process is too busy making a living to question the "we'll just buy whatever Microsoft has for X" assumption.
- three14 15y ago"Why are business still willing to make investments in the latest Microsoft blessed framework?" For me, the real question is why are they willing to make bad investments in technology. SharePoint is designed to make it easy to set up a cluster. One of our clients has thousands of users on a single SharePoint front end, because there's "something wrong" with their load balancer. So they don't even do round-robin DNS. Surprise - it's slow! In other words, they don't even have the ability to run SharePoint well, and you want them to put something together themselves? The SharePoint admin is already outsourced, so it seems like they don't even have the ability to identify quality outsourcing. How are they supposed to figure out a better solution?
- Random_Person 15y agoPlease tell me you didn't sell this to your client. Every single day I have to deal with vendors pushing bad technology on the Department of Education because they are trying to make a buck. In cases like this, it is not the businesses fault. They saw something they thought was cool, some vendor told them "sure, we can do that" and a few hundred-thousand later, guess what... it doesn't work.
- peterhunt 15y agoneilk -- I am a Linux guy. I love Python, Emacs and open-source and I hate working within the Microsoft developer ecosystem. With that said, the .NET VM is light-years ahead of anything that anyone else is doing. And they're investing in dynamic languages and tooling for those languages. And they build stuff like F#, which is awesome. Even C# rescues ex-Java people by giving them lambda expressions and local type inference. This is something that should be celebrated, like Java's garbage collection of yesteryear. So yeah, they have a lot of political issues and their mainstream development community sucks, but make no mistake: Microsoft has some phenomenal technology.
- kamaal 15y agoMicrosoft has some phenomenal technology. It sure does, but Microsoft doesn't build technology to sell that technology/tools/programming ecosystem. They build it so that users can buy their OS on which those apps can run. The more people build using their tools more OS licenses they can sell.In other words the technology is a bait through which users can be fished to buy their OS. This is a totally different thing when compared to Python/Perl other open source tools which have dedicated teams whose primary job is to build and share them to serve mutual interests. When you find companies dropping a particular technology for something else, its just that they figure out a better bait to catch more fish.
- InclinedPlane 15y agoThat used to be true, but it's not any more. If the division that makes VS, .Net, et al were spunoff into its own company it would a: have billion dollar revenues and b: be profitable in its own right.
- kamaal 15y agoIf... Well that's what its all about, Those programming tools aren't what MS's core business its all about. Their core business is all about Windows OS and Office software. The reason they are feeling the heat now is the computing paradigm has changed very quickly for them to adopt. More and more computing is going to happen on the mobile devices and users will be looking at those devices to access network by some means and do rest of the stuff on the servers. Like search, games other apps. Microsoft's core revenue comes from selling an operating system. They are not very comfortable with the idea that Software can be given away for free or a lesser prices just to sell hardware or pull traffic to your servers to sell ads. Whereas the momentum is very rapidly shifting to later paradigm. That is why bing is so crucial, even if they have to run it under loss currently. They want some search backend, to be available when their mobile OS comes to full force in the market. Because then, they will fight a tough price war selling their OS, they will have to depend on the Google model. Microsoft is no more a technology tools company (because of SQL server,C# etc) than google is because of BigTable, Go! etc. Although they can sell them as their primary buisiness, but that's not what they are meant for.
- colinm 15y agoI don't think it is that bad, sure frameworks come and go, but the fundamentals are still the same. I've been using C# for ~8 years and XAML for ~4. Will still be using them in Win8 for years to come. And the title says Silverlight has been abandoned, but the same skills have been built right into Win8. You should be able to port any SL apps across WinRT reasonably quickly. What has been killed is any notion of XAML being cross platform, but lets face it how many Mac owners wanted/needed to install SL?
- roel_v 15y agoHave you ever tried to run a piece of software that hasn't been maintained for 2-3 years on an up-to-date Linux distribution? I've tried dozens of times over the years, and in only a handful (the most simple ones, i.e. with only dependencies on the most basic libraries) that has ever worked. On the other hand, I've taken applications written for Windows 95 and compiled them unmodified on OS's 15 years older. That said, those who invested heavily in Winforms in 2001 and/or XAML in 2005 are now of course getting shafted - again. And I'm not defending this treadmill that MS keeps people on - it could be a lot more stable. But compared to the alternatives, it actually is quite stable for those who don't always live on the bleeding edge.
- rodh257 15y agoWhat technologies are you talking about in particular? I have been working with Microsoft technologies for 6 years or so, so by your estimation I should have had to relearn everything twice now, but I'm still able to write things with C#, Winforms, ASP.NET etc just as I was 6 years ago. Keep in mind the headline is sensationalist, the article itself says that Silverlight code is easily run as an actual Metro application. It's just to get it in the browser, you'll need to switch to 'full' desktop mode.
- colin_jack 15y ago> Keep in mind the headline is sensationalist, the article > itself says that Silverlight code is easily run as an > actual Metro application. It's just to get it in the > browser, you'll need to switch to 'full' desktop mode. My understanding was there was a conversion involved. If so I'm skeptical it'll be as easy, especially if you have a non-trivial application using a variety of existing libraries/frameworks.
- yummybear 15y agoI've worked with .NET/ASP.NET for the last 10 years. It's been remarkably stable.
- markokocic 15y agoI agree with your sentiment about MS technologies. However, Microsoft is not the only one playing with the developers. Just take a look at Google and their API deprecations of API and game rule changes for Appengine.
- rbanffy 15y agoVendor lock-in is a bitch.
- runjake 15y ago"Vendor" lock-in is everywhere, for the most part. Yeah, if I didn't like something Linux, Apache, GNOME, etc were doing, I could fork the source and go my own way, but is that realistic for even 99% of the people out there? No. I'll still have to venture off and find an alternative or just deal with it.
- rbanffy 15y ago> I could fork the source and go my own way Or go nowhere, if you think the software does whatever you need. When you have lock-in, it's always the vendor's decision and if you don't like where it's going, you have no choice. When you have open-source, the decision whether you continue with the product or find an alternative is yours - you are free to do whatever you want.
- neilk 15y agoYeah -- but I think the business world still treats Google with skepticism, as well they should.
- gaius 15y agoWhy do you believe in any technology that MS gives you? The Open Source community has never abandoned any technology? Really? For most people, most of the time, "you have the source code, maintain it yourself" is no more feasible than "start a company and buy that product from MS". Their technologies are invariably doomed to obsolesence within about 2-3 years of their introduction That, quite simply, is FUD.
- rbanffy 15y ago> The Open Source community has never abandoned any technology? It's an apples to oranges comparison. It doesn't matter if Silverlight is popular (it's not). Microsoft decided it would not continue developing and that's it. OTOH, Oracle may try as hard as they want to terminate MySQL. That won't work. We already have Maria and Drizzle to take its place. Second example: Zope v2. When Zope Corp decided to invest their resources on Zope v3, the community that relied on Zope v2 (people who maintain Plone, ERP5, Zenoss and others) continued to evolve Zope v2, sometimes backporting and bridging between it and Zope v3. Zope v2 is still alive and well and, IMHO, kicks ass. The only way to kill an open-source project is not to use it. When nobody does, it's dead. And even then, with the source code available, it can be brought back to life as soon as someone wants it.
- CWuestefeld 15y agoIt's an apples to oranges comparison. Right back at you. On the one hand, you're saying that once MS stops actively developing a product, it's over. But on the other hand, you say that anybody can pick up any old open source software that they're interested in? Why isn't the same logic true for the MS platform? I mean, my copy of the .Net4 installer is just fine. Even if MS decided that the .Net would no longer be developed, what's stopping me from using what's already out there?
- rbanffy 15y ago> Why isn't the same logic true for the MS platform? Because they won't publish the source code of discontinued technologies so that others can continue their development. > my copy of the .Net4 installer is just fine. Even if MS decided that the .Net would no longer be developed, what's stopping me from using what's already out there? I see you confuse being available (as in "I kept a copy around") with being alive and actively developed. You can't continue to evolve Windows 95 by yourself. That's not true with each and every open-source product or project out there. BTW, try running your .NET 1.0 installer on an ARM-based Windows 8 machine and tell me if it works.
- stonemetal 15y ago.net was obsoleted in 2005? DirectX was obsoleted in 1997? Microsoft like any other company kills under performing products, fortunately they usually replace them with something better. When managed direct X got the ax it was replaced with XNA. when VB got the ax it was replaced with .net. Sometimes you have to admit something was a bad idea, kill it and do better next time.
- masklinn 15y agoI think the issue people have is that in the last decade (roughly), Microsoft has been releasing technological stacks in great fanfare, promoting them as the be-end end-all of everything and killing them on a 2~3 years cycle. WebForms, WPF, Silverlight, MDX, DWM/Aero seem deprecated by Metro, ... and I remember about a billion data-access frameworks which got the ax every 6 months or so. XNA survives for now (it's barely 4 years old, still has the time to die), but that might be because it's part of the XDK (will it survive the transition to MS's next console?), but apart from .Net itself there's little which endured, and the more these technologies were initially heralded as saviors the earlier they got shitcanned.
- kenjackson 15y agoAs a person who works with MS frameworks let me answer you. First, despite your proclamation I've almost never felt left behind by Microsoft. Even as someone who has done WPF/Silverlight work, I actually find Windows8 and WinRT deeply comforting. It uses the languages I know. The main difference is it adds some new namespaces for me to use. I think people not familiar with WPF/SL think that those who know it now are left with a dead skill set, but the reality is that everything you know about it is still applicable. There are few technologies that MS has deprecated that I haven't generally been in violent agreement with. In fact, sitting here I can't think of any. There are several that I think they should have never introduced, but I find it hard to be upset with a company that tries things, some of which I think aren't necessarily the best, and moves on. I'm not sure if this "no plug-ins" idea is the best, from an end user perspective, but as a developer I'm perfectly happy with it. I've already started writing some Silverlight... I mean Xaml WinRT apps for Win8.
- statictype 15y agoTheir developer tools are really good. They have a reasonably language-neutral platform in .NET (which, contrary to what you say, has been healthy for - what - a decade now?). Our company's codebase is written in C#. Some domain specific language parsers were implemented using F# (with Fparsec) and the framework can be extended using IronPython. At some points, we have IronPython code being called from F# code built on a framework written in C#. And it works without specifically having to handle it. Visual Studio's debugger can seamless step between code written in C# and F#. There are lots of things I miss about Unix dev tools but the Microsoft technology stack is not an unreasonable choice to make.
- neilk 15y agoYou have a good point. I should have been more precise; I was talking more about the tippy top of their stack, that is, whatever app framework or tool is this week's answer to some relatively simple question, like how to retrieve results from a DB and display them on a web page, or how to display some relatively advanced interface on that page. As an outsider (the last time I developed on a Windows platform was 2001) I feel like I see different acronyms all the time in the Windows app-building world, each with a lifetime of about three years. If I'm in a bookstore, the cover of the latest Windows related magazines always seems to be about some dramatically new way to do some relatively boring thing, and how you should abandon everything you're doing and use this stuff instead. But perhaps it is not fair to judge the entire MS platform by these more frothy aspects.
- pragmatic 15y agoHello nielk and welcome to the software industry. Microsoft (like any other major software vendor) has popular products and not so popular products. The popular ones survive, the unpopular ones don't die off, they end up still being supported just not in such a way. See MSFT's data access libaries, you ado, ado.net, entity framework, linq to sql and zeus knows what else now. You also have COM+. While it's an overcomplicated mess, and not as popular as it once was, it's still supported.
- nathanwdavis 15y ago
- pragmatic 15y agoMicrosoft bends over backward for ummm backwards compatibility. With some work, old DOS and early Windows games _still run_ on a modern OS. Who else does that?
- evilduck 15y agoLinux? DOSbox and Wine can be less hassle in many cases.
- recoiledsnake 15y agoYou'd only ask such a question if you get your tech-related news from HN, which is overwhelmingly anti-MS with sensationalist articles getting on top. If you're actually working with MS technologies, you would know what you stated is very very wrong.
- gecko 15y agoI think you're looking at it wrong. Let me walk you through what I see/saw as someone who's been an active Linux, Windows, and Mac user since about 1996. In 1993, I'd write a Windows 3.1 app with Win16, a Mac app with the Mac Toolbox, and a Linux app with one of Athena, Xlib, or (I don't remember if this was around at the time) Motif. In 1996, I would have made some trivial modifications to my Win16 app to make a Win32 app for Windows NT or 95 (and Microsoft made this a lot easier with things like message crackers and typedefs); my Mac app would need a recompile to target PowerPC, but otherwise be fine; and my Linux app still requires no changes either. So far, so good. By 2001, my Windows app still works perfectly. It'll look dated unless I make some changes to the manifest to indicate that I'm ready for the new common controls, but this is pretty straightforward to do; it's not a big rewrite. I can start heavily using COM without rewriting my whole code-base. My Mac app will have required a port to Carbon--significantly more work than the Win16 to Win32 migration, but not horrible, and my app's now native for the upcoming OS X. But Linux? Wow. I mean, I guess I can keep running my app--it executes--but no one uses Athena, no use uses raw Xlib. I really need to port to Gtk+ 1.2 or Qt 2.0 if I want to look anything vaguely close to acceptable. And this is a major rewrite for me to undertake; they look very little like their predecessors. Yes, the toolkits are open-source, and yes, they still work, but let's be real here: I need to rewrite. Let's move forward to 2005. My Win32 app still works, without changes. Granted, I might want to start using the nascent .NET, but Managed C++ and COM interop makes that pretty easy to accomplish piecemeal. On the Mac side, the writing's getting on the wall that Carbon's going to die, so I'm going to want to start porting to Cocoa, and that amounts to basically a full rewrite. I'm also going to want to start porting my app to Intel. And on the Linux side, I've got to move to Gtk+ 2.0 or Qt 4.0. And that's again a big deal. If you weren't using Gtk+ or Qt back then, you should know that it was (at least in my opinion) a relatively large amount of work to upgrade. Not a full rewrite, mind you, but Qt redid piles of classes, methods, and hierarchy, and Gtk+ introduced glib, reworked signalling, themes, and tons else I'm forgetting. It was a lot of work. Jump to 2010. My Win32 app fucking still works. Managed C++ is really mature right now. And if I wrote C# or VB or anything in WinForms, it'll also still work, and it can use COM objects I export from my old C++ app, and expose COM objects to my old C++ app. My Mac app, rewritten in Cocoa, still works fine, as long as I ported it to Intel, too; otherwise, users can't easily run it without installing Rosetta, an automated, if separate, install. I'm also going to be seriously thinking about trying to get it also running on Cocoa Touch for the i* devices, which have a radically different GUI toolkit. On the Linux side, the GUI of my app should still be in fairly good shape, although G-d help me if I did anything involving sound or 3D effects, since that API's gone through many wholesale changes in the last few years. And if I didn't write plain Qt and Gtk, but instead using GNOME and KDE, then...wow. I've had a lot of pain. I went through to KDE 4, which was a huge deal. Now, we're leaving out that, in the 2005-2010 timeframe, Microsoft introduced WPF and Silverlight. So let's assume, in addition to my old C++ app that still works, I've now also got a few Silverlight and WPF apps I've written. Now it's 2011. What happens on these three platforms? On the Mac side, I'm in the same place: I need to be really thinking about Cocoa Touch, but my existing Cocoa app still works fine. If I didn't port to Intel, my app is dead, but that wasn't hard, so let's assume I did it. On the Linux side, having gone through the KDE 4 transition, I'm now dealing with the GNOME 3 and/or Ubuntu-being-a-weirdo transition. On the Windows side, in Windows 8, my old app still runs. My Silverlight apps and my WinForms apps and my WPF apps still run. The bad news is that they run in the legacy Windows desktop. So now, what has to happen to fix that? My C++ app's GUI is fucked. Total rewrite. Really total, even worse than the Gtk+ 1.2 to 2.0 transition. WinForms, too. They're not coming to Metro. But my Silverlight and WPF apps? Are you serious? It's very little work to get these running on Metro. Metro uses XAML really heavily, and has a very Silverlight-like view of the .NET libraries, actually. Most of the changes I'm going to make are mechanical and look-and-feel. This isn't trivial, but it's at worst a lot easier (IMHO) than the movement from Gtk 1.2 to 2.0 or Qt 3 to 4. So you know what? At the end of the day, Microsoft looks really good to me. Great binary backwards compatibility, and really good toolkit compatibility. They've given me a really clean migration path from Silverlight/WPF to Metro that does most definitively not require a full rewrite. This is better than both other platforms listed above. Me? I'll take it.
- pseale 15y agoA lot of us are indeed skeptical. MS has a history of doing focused marketing. The ongoing BUILD conference is currently marketing Win8/WinRT. A past push that sticks out to me most is the "3 pillars of Longhorn (Vista)". The vast majority of "the 3 pillars (WPF/WCF/WinFS/InfoCard)" are now useless. We should all remember Vista/Longhorn as something that had an equal amount of marketing, but failed horribly. Anyone remember the Windows Vista UI Guidelines? A search box and back button in every application? The sidebar? Have a graphic designer design your application's UI in XAML (oops, they're still trying to push that one)? Maybe Windows 8's new stuff won't fail, but we can't tell at this point. This is also the same thing I say about Windows Phone, Azure and even something as heavily supported as the Entity Framework. You just never know when funding will be cut or if the product will die. For me, with all this in mind, I do the bare minimum just-in-time learning to keep up with the day job, especially as it comes to frameworks and new product pushes. Fundamentals such as OO concepts or any kind of universal, timeless concepts, I'll study. But I won't bother with buying the newest WinRT book when it comes out because hey, why bother. Even if I do study up on one of these topics, I'll do it knowing that the platform may die at any moment. I'm sure WebOS folk or niche phone developers (Symbian OS?) know the feeling. The vast majority of .NET developers effectively do the same regarding learning Microsoft frameworks, only they're more quiet or less honest about how little proactive studying they do, and usually won't own up to the truth. All .NET developers are 'behind the curve', at least as the curve is re-defined every new marketing push.
- jroseattle 15y agoMostly because nothing of what you just mentioned actually plays out as true. Hell, getting MS to give up on things is harder than the obsolescence nonsense you mention.