Ever since Nadella took over at Microsoft, such news items are becoming more and more frequent. Ten years ago, my first reaction at such a headline would have been to check my calendar if it's April 1st.
Microsoft has come a long way from the company that everybody loved to hate. IMHO, they still have a long way ahead of them, but it's nice to see they seem to be serious about it.
With Ballmer at the helm, I had the impression he didn't really know how to handle the rise of mobile devices and cloud services. Nadella seems determined to really change Microsoft from the old Windows-and-Office monopoly to something new.
By design, Nadella is getting credit by design for 'overnight changes' many years in the making. Windows 10 reflects the strategic decisions embodied in Vista. Ballmer owned enough stock that along with Gates' backing Microsoft could produce a largely incompatible new version of the Windows OS and Wall Street could like it or lump it. Gates and Ballmer have been divesting Microsoft shares and the new company is beholden to the "What did you do this quarter?" analyst's mindset. Before he left, Ballmer set the course and ensured there was a tick tock product development cycle.
Ballmer wasn't an idiot. It's not as if he didn't see the changing landscape. He left the company in a position to shape the future.
Indeed, Nadella is an opensource guy that had the chance to grow during Ballmer. While Microsoft (during Ballmer) had a slow change (going more opensource) from the bottom-to-top, there has been a faster change now from top-to-bottom. I remember Scott Hanselman, Scott Guthrie and Phil Haack (now at Github) during Ballmer as opensource contributors.
Ballmer allowed opensource during his leadership, but employees would be more "targetted" when it's not the right direction and it hasn't has "intermediate"/"fast" results... It's a much slower progress.
I believe Nadella has a lot of thanks for the change that Microsoft made before he stepped up and "received" the fame. There was a short release afterwards of his stepup with a Office version for iOS and Android, you just don't do that within the month.
Some things he did within the first 12 months:
- Bought Nokia ( they already worked very together closely, this was probably been going on for years )
- Office for iOS and Android ( was created during Ballmer, but probably got approval during Nadella)
- Opensource .Net ( opensource started with Asp.Net MVC 2, which wasn't an all-in though, i think of it as a "test" internally)
- Cloudobile - connecting mobile with the cloud ;) ( this is definatly more Nadella's style, coming from Azure)
But it isn't all "that good", a lot of people have been layed off ( approx. 18.000 ). While Ballmer's approach is very "profitable" and "evil", i do believe that Nadella's approach is more in the line of "more penetration", "cheaper prices" ( free version of Office eg.), being more open... It does come at a cost ( i hope no one blames me for mentioning this ). I do suppose those 18.000 people where mostly freelancers, but i'm not sure.
The layoffs come at a cost to the people who lost the jobs, not as much as a cost to Nadella or Microsoft. In fact, layoffs are usually a positive for the company. Of course, I'd also argue that in the longterm, layoffs are a positive for most of the people laid off.
I have been laid off. In the end it was positive for me.
I left a job where I facilitated meetings to discuss major incidents and tracked action items and wrote long form reports. I decided to use this opportunity to instead move to a job I really loved where being laid off sounded far less likely.
I became a software developer. Finally took charge to do something professionally that I'd done for a couple decades as a hobbyist. Huge positive. Completely the right move. Never would have happened if I hadn't been laid off.
That said, I recognize it's not a positive for everyone in that position.
It sounds like you just needed the right motivation to improve your quality of life. I think that is called "tough love" and it doesn't always work for everyone. But I'm glad to hear that you turned what is usually a negative into such a positive!
Nadella did have a few softballs lined up for him, but they were likely no more than a few years old. Don't overestimate what can be done in two years, but don't underestimate what can be done in three. Let's not paint Ballmer as an Ozymandias, though, secretly architecting the salvation of the company for 10 years while on the face it looked like they were teetering toward annihilation.
You're right, he wasn't an idiot; he was a well-educated and successful executive that made strategic decisions informed by 80's and 90's business thought and practice. Half a decade earlier he'd have done wonders. But in emerging technology markets those decisions cost Microsoft its industry superpower status.
In tablets, mobile that cost Microsoft early market dominance and possibly locked the company out of future hopes at regaining their title.
In Web servers, numbers from Netcraft[1] last summer showed that since Windows Server 2008 essentially what had been a healthy uptick turned disastrous for Microsoft's share of active web properties (half way down the page), and over the last 15 years a steady decline in Microsoft's market share in traffic volume handled.
"Microsoft’s most recent growth in hostnames since mid-2013 has, for the most part, been caused by a large number of Chinese linkfarms (泛站群). The sites in question provide advertising for gambling sites, online product listings, and normally make use of affiliate schemes. Yet they are hosted in the USA, on generic TLDs such as .com and .net to bypass China’s TLD and internet content provider (ICP) license requirements. Unusually, each linkfarm makes use of a reasonably large number of domains and IP addresses, presumably making them harder for search engines to evade. This would normally be cost prohibitive for this kind of activity, however hosting and domain packages can be found advertised on auction sites specifically for this purpose, with packages of (random/unspecified) .com domains available for as little as ¥17 (~ £2 / $3) each, guaranteed to remain yours for at least a month. It is not clear why IIS has been chosen for these sites, however it does have a considerably higher market share (for all of our metrics) in China compared to worldwide - for example 59% of domains hosted in China use IIS compared to just 29% worldwide."
Your comment is spot on. People don't look under the covers to realize this kind of change simply cannot happen over night or "because there is a new captain."
More specifically, your "By design" start is common in these kinds of managed transitions: you want the new leader to come in with tail wind.
> Windows 10 reflects the strategic decisions embodied in Vista
Hope you mean "embodied in Windows 8". I still remember the day I replaced my Vista PC with one running Windows 7, and wondering why the OS was booting so fast. I doubt "Vista" was strategic in any way, more incompetent management, but would agree "Windows 8" had strategic considerations behind it.
Vista broke with DOS and 16bit code. It elevated security. It required better hardware. It moved x64 toward the mainstream. The architecture of the OS was brought forward a decade.
Tick.
Windows 7 was a refinement of Vista.
Tock.
Windows 8 was a new interface and a step toward multi platform, e.g. ARM.
Tick.
Windows 10 is a full on multiplatform assault.
Tock.
Running a big company is nontrivial. Microsoft's management has never been incompetent. The company has always been very profitable.
Vista popularized 64-bit Windows, and 16-bit WoW (responsible for running 16 bit Windows programs) never made it to 64-bit Windows. This was true for the earlier Windows XP 64-bit, and it has been true for every 64-bit Windows that followed. So there's always been some confusion on this point, but note: 16-bit WoW exists even today on 32-bit versions of Windows 8. Today you have to enable it explicitly, but it is available.
Also, the NT-based versions of Windows never included DOS. They were never "with" DOS such that they'd need to "break with" DOS. The last Windows that included a version of DOS was Windows ME. The last Windows that included a version of DOS which anyone ever willingly used was Windows 98.
> Windows 10 is a full on multiplatform assault.
It's a pretty modest number of platforms compared to all those supported by NT in the late nineties. Although it will probably end up running on a lot more devices...
Vista had some big changes in it, but shipped with lots of issues and had horrible driver support at the beginning. A while back I set up a laptop for aged relative with Vista plus all the service packs and fixes, and it was really fast and smooth. Very surprising.
When Vista shipped, the problem with drivers was that many manufacturers chose not to update drivers for most legacy hardware to the new, more secure driver model. The other standard complaint was with its security popups. Part of that was rough edges on the user experience design, part was just that people weren't used to thinking about security on their machines...that's changed over the past few years. And of course a lot of the complaints were because Vista was a change.
Also it's not that system was throwing UAC prompts on users, applications did. Ever since XP there were rules around what files go where, how installers should behave, etc. but people chose to ignore them (because they could). When Vista started enforcing certain things, elevation dialogs happened. What made MS in the days past (app ecosystem) broke it when quality started to matter.
Yes. People who are quick to criticize Ballmer and praise Nadella do not realize that even though Ballmer was mostly into cruise control he indeed let people like Nadella lead other important efforts. None of these products seem like "overnight changes".
The problem that Ballmer made in Windows 8 and Windows RT was in making the GUI for desktops and mobile devices the same.
Steve Jobs on the other hand already learned in 2002 that the desktop GUI won't work on a mobile device and set out to create a new GUI for mobile devices that led to the iPhone and iPad that was different from the Macintosh GUI. I think Steve Jobs saw the Windows XP based tablets that Microsoft made and their Windows CE smart phones that basically used the desktop GUI and how it just didn't work out.
Microsoft has almost always bet everything on the new Windows version. It doesn't always work out for the best. Some companies still use Windows XP because their business software breaks in Vista and above because of API changes. Microsoft no longer supports XP, but it is still in use around the world.
I think it is more problematic than that. It takes only a few minutes of using Windows 8 on a desktop to realise it was a terrible idea. Like when you right click and the context menu appears at the bottom of the screen. They clearly haven't tried that with a mouse on a 4k monitor.
They reversed most of these moronic design decisions in 8.1 and the 10 preview, but they kept some (hopefully they will be fixed before they release). Like instead of having notifications (like "An update is available", "Restart is needed") appearing discretely at the bottom right of the screen they now take up the entire screen. Since Vista they should know better than their customers are trying to use their OS to do things, to work. Customers are not fascinated with the system and having the system interrupting them all the time is a terrible idea.
Evaluating a user interface in a few minutes makes sense for things which will be used for a few minutes...and for journalists in need of sensational headlines under deadlines. An operating system is complex and used over a long period of time. Using Windows 8 meant I had to learn something. It took a day or two to become effective. A few months to become more effective than I had been under Windows 7, and a while before I really started to get it.
That effort made learning xmonad a breeze because I accepted the idea that I would have to spend time paying the dumb tax. It turned out to be only a morning.
I don't need more than a few seconds to find that the contextual menu at the bottom of the screen was absurd. Being frustrated with it means I would try to avoid using it, go around that problem. The solution Microsoft advocated for desktop: use keyboard shortcuts!
I do not dispute that keyboard shortcuts are faster than any mouse based UI. And I am sure that you became more proficient having to go around the Win 8 hassles using the keyboard. However if the UI can only be practical if a user learns by heart all sorts of commands and shortcuts, then it is a massive failure, it defeats the very purpose of a UI, particularly a UI targeted at consumers.
Consumers are not the primary target for Windows. Never has been. Microsoft is primarily a B2B company. That's why they have long support cycles. That's why they make Excel. That's why they make Visual Studio...and languages and frameworks and SQL Server and Windows Server and Exchange etc etc.
Picking tools based on first impressions, is in my opinion, a suboptimal strategy. YMMV.
They are getting cornered into a corporate environment. But they used to dominate the consumer market, and windows 8 was precisely designed to reconquer this lost market share.
> It took a day or two to become effective. A few months to become more effective than I had been under Windows 7, and a while before I really started to get it.
I've been using Win8 for about 1 hour/day for the last few months. The flips between Metro and Desktop still drive me crazy. You might have learned to accept that, or to avoid those flips, but this schizoid mode of operation comes with unneeded cognitive overload for desktop work, even if you did master it.
The thing is, Win8 was optimized for Microsoft's benefit, not yours. Win8.1 gave up some of those things, because (a) it didn't provide the benefit it was optimized for -- windows phone acceptance, and (b) it did alienate a significant portion of the userbase that clang hard to their Win7.
"Using 8 meant you had to learn something", yes. But for what purpose?
My wife and I share a laptop that runs Windows 8.1 Pro. In order to help her use it I had to install a program called Classic Start Menu that brought back the Start Menu. She could not figure out the Modern UI screen.
There used to be a book on Windows Annoyances that told how to deal with them. The most annoying thing about Windows 8/8.1 is the Windows Update and having to restart the OS in order to update and not knowing how long it is going to take and watching the "Updating 12 of 64" with the dots in a circle loop and not being able to do anything with your computer while that happens. If only Windows Update could run in the background and not need to restart the computer or if it does restart the computer it can estimate how much time is remaining of the updates.
I think that it's much more reasonable to assume that he was talking defensively, as he actually did see the enormous threat of ios. He sounds like a scared man there.
I'm not sure what they're getting at with the "Microsoft is building its own hardware, just like Apple." jab. Microsoft has had a hardware division since 1982!
I must agree with even though I don't want to. Microsoft seems to legitimately changing its behavior.
Personally, I still want more. An open source editor would have been nice. Many good text editors are open source Vim, Emacs, Atom, Notepad++ entering this area with less community seems like an unneeded difficulty.
Architecturally, Visual Studio Code combines the best of web, native, and language-specific technologies. Using the GitHub Electron Shell, Code combines web technologies such as JavaScript and Node.js with the speed and flexibility of native apps. Code uses a newer, faster version of the same industrial-strength HTML-based editor that has powered the “Monaco” cloud editor, Internet Explorer's F12 Tools, and other projects. And Code uses a tools service architecture that enables it to use many of the same technologies that power Visual Studio, including Roslyn for .NET, TypeScript, the Visual Studio debugging engine, and more. In future previews, as we continue to evolve and refine this architecture, Visual Studio Code will include a public extensibility model that lets developers build and use plug-ins, and richly customize their edit-build-debug experience.
Fair point. I wanted to clarify the difference since "built on Atom" has a different meaning to me than "using the GitHub Electron shell". The first sounds like an extension to Atom and the second sounds like a whole new app.
They started work on this before the Atom Shell was "Electron" and speaking to the team in Zurich before this was unveiled (about 3 months ago) they mentioned this was built on top of Atoms foundations. There is an Atom binary inside the package app and this is where my comment came from (:
It seems this is the predecessor: Visual Studio Online (2013): http://weblogs.asp.net/jongalloway/a-quick-look-at-the-new-v... (scroll down half way to see the screenshots and videos) So the idea and technology behind it predates Satya Nadella CEO appointment by at least 3 months.
You just have to look at the amount of money they sunk into R&D in the last 15 years, which is public data. Nobody spends that sort of cash to simply develop simple iterative versions of established products (which Windows and Office have been ever since XP, really) or one random new gizmo (Kinect).
Have a look at the list of projects here http://research.microsoft.com/en-us/ and see how many are probably going to be profitable in the next couple of decades. It's actually pretty amazing how much research Microsoft fund that seems unrelated to any of their current product lines.
I think MS Research would be a pretty amazing place to work.
MSR really is an incredible place to work, but also impossibly hard to get in. It's akin to getting a fully tenured professorship at a top-tier computer science program. Back when I was in graduate school, MSR dominated every other computer science research department in the number of SIGGRAPH papers they published each year. And that's just in graphics.
If i remember correctly, Haskell is being developed in MS RD. At least they have hired the main Haskell dev, and I think he was involved in the F# dev work, including ideas from Haskell. IThis was commented on in a talk with the Erlang and Haskell devs.
I've never worked there but I know people who did. And anyone who follows MS Research can read between the lines. No direct experience here though so I'm the wrong person to write it up.
And exactly that "not so tiny" editor is the big part of Visual Studio Code. And it is not trivial at all - it's a very complex component to get right. The editor component comes from Switzerland and is called "monaco" and one of the main reasons why the "TypeScript" language exists and why ES6 looks as it looks today.
Agreed on the crappiness of the web stack for this application. But WPF isn't necessarily better. Case in point: a Bible study program where one's choice of video card actually mattered, at least in 2009 (see http://community.logos.com/forums/t/6200.aspx). BTW, I only know about that specific example because my brother is a preacher.
I think a better foundation for a cross-platform editor/IDE would be SWT, the Standard Widget Toolkit from Eclipse, perhaps ported to .NET.
I think that SWT proves that for some criteria, particularly nativeness and accessibility, it is possible to do better than the web stack while covering all major desktop platforms.
Do the IntelliJ skin and components have any advantages over Eclipse's SWT in your opinion? My understanding is that Swing is much heavier. In fact, SWT was originally designed for Java 2 Micro Edition [1].
WPF is, by far, the most pleasant and flexible thick client, windowing system out there. XAML is a bit verbose, but the binding capabilities combined with an open source MVVM framework like Caliburn allow you to build extremely flexible UIs.
WPF also abstracts control behavior away from presentation and allows you to easily and quickly extend the base set of controls to do whatever you want to.
After building multiple thick client applications using VB6, MFC, Swign, Winforms and WPF, WPF exceeds all of these, by far, in flexibility and maintainability.
This makes sense , Microsoft does not support C for user space development , and Qt/C++ is good way to push C out from user space development in all platform's .
If it supports any form of semantic completion (i.e. Intellisense) , that would be a reason. I'm still not sure from reading the article if that's the case, though.
Ballmer was good at sales but horrible at running a company. He was perfect before the internet came to be and before the rise of mobile devices. Ballmer, is in fact, what sunk Microsoft for a better part of a decade or more.
Nadella is doing MS good. For one, he understands market dynamics better than Ballmer did and is willing to gamble. As a C# developer of 10 years, this is the first time Microsoft actually "spiced up" their product line. Offering up robust tooling like Visual Studio Community (which is just a free version of Professional) shows me Microsoft is committed to the platform. Now, with Visual Studio Code, it will make my work better since I'm 99% on a Mac these days. The next few months will be interesting. :)
> Open source is not available to commercial companies. The way the license is written, if you use any open-source software, you have to make the rest of your software open source. If the government wants to put something in the public domain, it should. Linux is not in the public domain. Linux is a cancer that attaches itself in an intellectual property sense to everything it touches. That's the way that the license works.
Is he wrong about the GPL? It actually does what he is talking about by design. Every company which uses GPL code is very careful about how they do so. A lot won't touch GPLv3 because of the newer restrictions. AGPL as well.
Yes, even if he was talking about the GPL when he said "open source software", he would be wrong. (And if he meant the GPL, he would be wrong in using the general term "open source software" in referring to it, even if his statements were accurate for the GPL.)
> It actually does what he is talking about by design.
No it doesn't. He says "if you use any open-source software, you have to make the rest of your software open source." You can use GPL software without making your other software GPL. You can distribute GPL software without making your other software GPL. You can distribute GPL software without making other software you distribute together with the GPL software GPL, too, in some cases.
> Every company which uses GPL code is very careful about how they do so.
Many of them also produce a lot of non-GPL software. Which demonstrates that the "all your other software" claim is false.
He directly referenced Linux which is famously under GPLv2. You can argue with this wording if you like, but his observation is spot on and it's obvious to those are not unduly biased that he was speaking about the GPL and the licenses that were similar to it.
> He directly referenced Linux which is famously under GPLv2.
Sure, he used it as an example, but he also explicitly made a generality about open source software, not the GPLv2. In any case, what he said was wrong about Linux, wrong about the GPL (including GPLv2), and wrong about open source software, so arguing over which of those he was talking about is a sideshow.
> You can argue with this wording if you like, but his observation is spot on
No, its absolutely, completely false. You can use -- or even distribute -- "open source software" (or GPL software, or Linux specifically) without "all your other software" being required to become open source.
By use it is pretty obvious he meant incorporate it as part of their products (ex. utilize a GPL library). Microsoft is a software development shop after all.
It seems to me like he was purposefully taking a hard political stance on a nuanced issue in order to drive people who are uninformed or unsure about these things into his own company's pen. It has nothing to do with linux, GPL, or any technicality, and everything to do with perceptions, executive policy, and business culture.
What I think is "obvious to those who are not unduly biased" is that he was cherrypicking the most extreme example (the restrictive GPL license, which is not used by most open source software[1]), and then trying to use that to spraypaint FUD over the (much) broader open source concept as a whole.
"Open source is not available to commercial companies" is about as factually incorrect as any statement in the English language can aspire to be.
" Craig Mundie remarked, "This viral aspect of the GPL poses a threat to the intellectual property of any organization making use of it."[35] In another context, Steve Ballmer declared that code released under GPL is useless to the commercial sector (since it can only be used if the resulting surrounding code becomes GPL), describing it thus as "a cancer that attaches itself in an intellectual property sense to everything it touches"."
It seems even the Wiki editors believe he was speaking about the GPL.
If any of that FUD were true, how do you explain that Microsoft has been shipping the "Subsystem for UNIX-based Applications" add-on for Windows Server for a decade, while Ballmer was CEO?
It includes GPL-licensed programs such as GCC and GDB; shouldn't Microsoft have released the source code of Windows Server by now if these statements weren't anything but FUD?
That was 2001. There was no SAS loophole to exploit. If you desired to sell software, you had to ship it. In a box. The GPL was as viable for businesses back then as the AGPL is today.
> That was 2001. There was no SAS loophole to exploit. If you desired to sell software, you had to ship it.
People have been selling access to remotely hosted services since long before 2001 (since before the web, the FSF/GPL, or even the internet or even ARPAnet existed.)
The thing now referred to as "SaaS" has been a thing a lot longer than the name "Software-as-a-Service" or the acronym "SaaS" to refer to the concept has existed.
"After a year and a half of public consultation, thousands of comments, and four drafts, version 3 of the GNU General Public License (GPLv3) was finally published on June 29, 2007."
He is right about GPL. But there is a loop hole behind it, which all the open source companies use it. If the software is behind a web UI it does not need to be released back as a open source. Thats how all other big companies like Google, Facebook does not need to open source their source code back.
> Ballmer was good at sales but horrible at running a company
From Wikipedia:
Under Ballmer's tenure as CEO, Microsoft's annual revenue surged from $25 billion to $70 billion, while its net income increased 215 percent to $23 billion
May all companies suffer equally incompetent CEOs.
No doubt Microsoft under ballmer launched quite a few failed products, but they've maintained their monopolies and have made record profits in the process.
Tim Cook's too busy with Jonathan Ive and Angela Ahrendts, turning Apple into a luxury goods company, to even know what just hit him.
Slowly but surely the best developers are going to leave the Mac platform leaving only consulting body-shops and corporates on iOS. Developing for the Mac and iOS is miserable. It wasn't always that way, but it is now.
Developers* are sick of proprietary stacks, from the language (Swift), to the APIs (Cocoa/CoreX/iOS), to the conditions attached (iCloud SDK only available for Mac Apps sold through the Mac Store), to the penny-pinching (pay your $99 fee and 30% even though we're raising $billion in debt to buy-back shares and hand out dividends because we're too tight-fisted to repatriate overseas funds and pay taxes on it) to the still broken XCode which only runs on a Mac, which must run Yosemite which feels like a Fisher-Price toy rather than a workstation for developers.
*Well, ok, I'm sick of it, but I'm sure a few people reading this are feeling the same way.
Do you have anything to back that up? Personally, I feel developing for Apple platforms has never been better. Companies are still, for the most part, launching on iOS first and I don't know who the developers you're talking about are, but there are a hell of a lot of great developers still in the platform: Panic, OmniGroup, etc.
As for your comment on the 30% fee, that's industry standard and few serious developers complain. The $99 fee is nothing compared to the amount of time it takes to build and design a quality app.
Panic and OmniGroup were big 10 years ago. The fact that nobody has appeared on the scene, innovated and become a name that you or I can quote is quite telling. Where is the new blood? I personally know many long-time Mac developers who have sold their products to others to maintain, or have quietly slipped away and let sales slide.
The 30% fee is not an industry standard that was debated and researched and rationalized. It's an abitrary number picked out by Apple first and then followed by others in order to maximize income from the work of third-party developers who are forced to pay or quit the platform. It's a de facto standard imposed by the platform gatekeepers. Calling it an "industry standard" sounds like it's an ISO recommendation :-)
There is no reason at all to charge a $99 fee to developers given the vast income generated from the 30% and the overall health of the company. This is nickle'n'diming developers. Some people claim that "Apple Developer" is a cost-center, an independently run business silo that must generate a profit to justify its existence, that it's not a charity... i say no. It contributes to the overall well-being of Apple Inc as a whole, just like human resources and research and development does, it helps contributes to the overall profits of the company, so when we look at the company's overall financial health, in my mind, there is no doubt that developers are being taken for a ride because...
...they have nowhere else to go because their Apple centric skill-set is not transferable to other platforms.
You are generalizing too much. Panic big 10 years ago? Coda came out in 2007, and it was pretty big for a while. So omnigroup is no longer a thing? They are alive and kicking. I agree that they both had faced problems with the Apple Sandboxing scheme, but I guess they'll overcome those issues (even by being out of the App Store).
What about Sketch, AgileBits, Alfred?
I know many long time devs who are still doing it and haven't sold their products to others to maintain... And I also happen know -lots- of new Mac/iOS devs.
Nothing to say about the 30%, it's just a pathetic argument, people have pointed it out already.
There is a reason to charge a $99 fee. There's also a reason to force a user to put a credit card to create an App Store Account, there's a reason to request a CC to create an Amazon account too. And $99 bucks is literally nothing, check MSDN and Visual Studio (https://www.visualstudio.com/en-us/products/how-to-buy-vs.as...).
About 'Apple Centric Skill-set' not being transferable to other platforms? Sorry, but... are you f'ing kidding me?
If you learn -any- framework, made by anyone at all, in-depth (not just copy pasting code here and there), you'll get skills that are transferable to other development environments. I've learned a ton of C/C++ and even some Assembly by doing iOS, I've also dealt with several scripting languages in the process.
If you're a real Engineer, and you really learn and understand a framework (Apple's or not) it should contribute to your growth.
Coda? Coda is just Panic's new thing. They used to make the main file transfer application on Mac, Transmit, which was originally developed for classic Mac OS.
My point was that they were already stuggling to retain mindshare when Coda was released. They went from being a well-known fish in a small pond to being an average fish in a great lake, so their relative importance has certainly been declining from ten years ago.
It's an "arbitrary" number in the sense that it is the revers of the previous industry standard in the mobile space which was 70/30 in favor of the Carrier. Often times developers would get less than %30 of the revenue for their products. And they had many more hoops to jump thru to get to the market, could only even get a meeting to try and get on mobile devices if they were already a large company, and had to work with terrible SDKs, etc.
Apple democratized and revolutionized that entire industry, providing a level playing field where I can compete with Omni, and we both have the same hoops to jump thru and get the same deal. We both get a much better deal than before.
The $99 fee covers the cost of administering the developer program. This program is hugely popular, and is already overrun with people who just want to get access to early versions of iOS before they are released publicly. Even with the $99 fee. It's a very low fee so that anyone serious can afford it, but high enough to keep out the problematic people who would abuse the service and overwhelm Apple's developer support resources.
Seriously, I find it kinda curious that you're complaining about $99 as if it's some big barrier.
The idea that an "Apple centric skill-set is not transferrable to other platforms" is pretty darn silly. I mean, sure, if you learn to program using Cocoa you will be frustrated and annoyed at how terrible certain other platforms are to develop for.
But these days only HR people seem to think that programmers can only learn one langage and that experienced in one language is not useful in other languages or using other frameworks. Are you an HR person? Because that perspective is not one I would expect from any software developer.
The Internet democratized the entire software industry by allowing developers to sell direct to customers. You would no longer have to beg CompUSA to carry your boxed software in store. Before the rise of the App Stores, you could use Kagi or eSellerate to sell your software for 8-12%, or you could use PayPal, WorldPay, 2Checkout for 2-4%. Things are even cheaper and easier now with Braintree, Stripe, etc.
Apple charges 30% because they can, just like how CompUSA could charge whatever they wanted and make you pay for boxing and associated costs, because the software you spent a year writing cannot be sold anywhere else except on their platform. And if you want to sell by yourself on the Mac, without using the Mac App Store, you are a second class citizen because certain APIs like the iCloud SDK are not available to you.
If the $99 is a nominal amount, why even charge it? Why $99 and not $49? Or $199? Again, it's a number they came up with which they felt a certain demographic, let's say teenage programmers could afford, or younger kids could get their parents to pay for. I'm open to better reasons if you have one.
Being experienced in many languages does not make one a good programmer. You can be the jack of all trades and master of none. You think someone can just pick up C++ in a few weeks and become an "expert"? It takes years to become proficient in not only a single language but it's associated tooling and ecosystem.
I have no doubt that there are many developers out there who have spent years of effort learning Apple's proprietary stack and are now regretting it and kicking themselves because a decade has passed and Apple, as a friend to developers, has regressed and gone backwards.
Finally, Cocoa is a nice enough API, but have you ever had a problem and then tried to resolve it? Good luck going to the sign-in Apple developer forums where everyone shouts "ssh, we can't talk about it, it's under NDA" or having to file a bug report on Radar where nobody even responds and when they do it's to say it's a duplicate bug filing or, or opening a DTS incident and having the person say "Yep, it's a bug on our end, not sure when it will be fixed, in the mean time try a workaround". How is this better than having an open roadmap with discussion in public forums regarding language/SDK features, bugs, fixes etc?
Apple could not care less about that $99 fee. It is 100% immaterial to them beyond the function that it is attempting to server - act as a minimum bar of entry to the developer program.
Exactly my point - the $99 isn't a financial barrier, but, your average user isn't going to pay it each year, so it creates a minimum barrier between "Users" and "Developers" to provide Apple with some insight into how many developers they have.
Advance access to IOS kind of messed that up, (at lot of people paid the developer fee to access the next operating system) which is why application to the WWDC lottery is probably a better estimate of developer count.
It doesn't need to be a recent mac, I'm running Yosemite on a 9 year old Mac Pro. I think you can pick one up on eBay for under $400 if you look carefully.
If I'm not mistaken those guys appeared on the scene back in 2006/2007. They showed off Pixelmator at WWDC and it went down pretty well but that's still their only product, apart from an iOS version.
I guess another way to look at it is this: If you had an idea for a desktop app today, would you decide to write for Mac first using a proprietary language Swift and proprietary SDKs like CoreData or would you pick C# and .NET so the bulk of your code could be re-used on both desktop and mobile, and you could bind to native toolkits for the UI?
Supergiant Games (Bastion and Transistor) and Squad (Kerbal Space Program), to name a couple. And all the StackExchange sites are made on ASP.NET, if you want to count that too.
And hell, they've even had worse than that. They went through a pretty horrible thing with Apple shortly after iOS 8 came out, over an extension they made.
The last 12 months have been pretty horrible for them in terms of their relations with Apple. Sure they're toughing it out because it's not like they have other revenue sources, but those experiences have jolted them into finally considering moving beyond being just a Mac/iOS shop. So they're not a very good example of "all is well in Apple developer land".
I agree with the feeling. I'm very frustrated that Swift has not been open sourced into LLVM. Apple is in a position to take the wind out of Microsofts sails, but it feels that they're more focused on profits than on what their developers are asking for.
thank you for pointing out the money part, I share the same sentiment as you do on this.
I've been itching for someone to stick it to Apple since they're really being tight with money in some places (annual developer fee as you mentioned), and wasting it on share repurchases.
It's time for someone to really compress Apple's margins.
So you're complaining about the $99 fee for an Apple developer license, but not complaining about needing to buy either the $1,200 or the $6,000 Visual Studio license required to develop commercial software? Oh, and you want InstallShield? And MSDN? And a better widget library, like DevExpress? Am I taking crazy pills?! The situation is hardly comparable. For a SMALL team in a corporation, even with Select and discounts, this is an enormous expense.
And developing native Windows applications with Microsoft's tools is still just as proprietary as anything on the OS X platform. The recent open-sourcing of the .NET web stack means nothing in this regard. Unless you're telling me that there's an open source C# compiler that can do the job now?
I'm a couple weeks away from paying the Apple license, and starting to write my first iOS app, so I may not know all the costs and foibles of Apple development yet. I'm open to the fact that I may be ignorant of needing some basic things, like on Windows, to REALLY get the job done.
My standpoint is that by developing on someones platform, I am doing them a favor. I'm happy for them to not roll out the red carpet, but there better not be a bouncer checking me at the door, either.
If I have to sign up to used your SDK (unreal, unity), I'll just use something else.
We'll know in a decade. It's too soon to tell whether Microsoft has something up it's sleeve. (The open source stuff is always a version behind Microsoft's latest, maybe?)
I've watched Microsoft since the 1980s. One year is way too soon for me to believe that they've changed their stripes. In particular, it's way too soon for me to want to tie myself to their platform.
Because their tech stack is pretty good from developer experience point of view. Good in the sense developer speed is good, as in speed in developing new features, understanding the code and debugging. There are not "tons" of good industrial strength free/opensource alternatives to .net stack. There are, but I've not seen one that would be of better quality. In ways Visual Studio is the gold standard of developer experience (unless one goes shell and makefiles all the way but that's... a different demographic I suppose).
At moment they only open-sourced core that only useful for running backends on non-Windows platforms which is useless on Mac as nobody run servers on it.
Once their open source .Net would get most of Windows version features there may be some use for it with same drawbacks like you have with Java for example.
.NET Core is available on Linux, FreeBSD, and Mac, so you can use it for servers on Linux.[1] A lot of developers (such as myself) use Macs for their development machines, so it's very useful to have the same framework/runtime for both Mac and Linux.
It is now just a month shy of 20 years since that letter was written.
And what did Microsoft do? They bought a browser and gave it away for free, cutting off Netscape at the knees, til the company folded and become the Mozilla Foundation.
They poured billions and billions of dollars into online initiatives from the Microsoft Network to Bing, including buying dozens and dozens of companies.
None of those were big successes. None of those have been a "tidal wave" of innovation, or success, or money. At least that I can see. Internet Explorer became dominant, but mainly due to bundling and that has gone away. IIS was a popular web server for a long time and people have written web sites using microsoft technology, but .net which is just a renamed MFC, isn't really much more used outside the same types of shops that used it before 1995. Yes, the mono project brought it to linux and made C# a more viable language, but that wasn't Microsoft's doing.
Maybe I'm missing something. Xbox and Xbox online are huge money sinks that I don't know if MSFT is ever going to recover the money from. The stock has been flat during that period while google, amazon and apple have been going like gangbusters. (And given the level of monetary inflation over the past 15 years flat means down.) Yes, it did boom during the bubble but that was %100 windows and office from the boom in companies putting computers on everyone's desk. And yes, it's grown the past couple of years after being flat from 2001-2011. But that's not a result of the 1995 "initiative".
Microsoft, like Apple, unfortunately for both, doesn't quite get the internet. It doesn't get mobile (unlike Apple).
The new CEO might change this, I don't know.
But the "internet tidal wave" happened pretty much completely without microsoft.
For the record, I worked for the company near the time of this letter, lived in Seattle during most of the intervening years and have been watching Microsoft closely for about 25 years.
I can't agree with this. MFC was a thin C++ encapsulation of the Windows API. It was a reasonably successful technology but was unloved largely because it was so thin - it didn't try to fix the ugly mess beneath and so left developers wrestling a large smelly octopus. .Net was more of a clean room attempt to provide developers with a clean, sane, consistent API built on a new virtual machine based architecture complete with a shiny new language (C#, basically Java++).
I originally went from Borland C++ Builder to .Net 1.1, the move from one IDE to the other felt very familiar, going from MFC to .Net was nothing like this.
Yes. Microsoft hired Anders Hejlsberg (Turbo Pascal and Delphi) to architect their C# / .Net development tools. So you observed a distinct family relationship there. But MFC is a different beast entirely.
"MFC was introduced in 1992 with Microsoft's C/C++ 7.0 compiler for use with 16-bit versions of Windows as an extremely thin object-oriented C++ wrapper for the Windows API."
Thinness is probably in the eye of the beholder, but as one of the many MFC victims back in the day, I found using MFC to be endlessly frustrating because it added a layer of complexity and pain to Win32 programming without giving me anything I really wanted back in compensation - you still needed to work directly with arcane Win32 mechanisms to do simple things, like, change the background color of a window for example. Admittedly there was some (less thin) Document/View model stuff thrown in there, but the impression I got was that this was an afterthought bolted on the side.
In contrast, Qt and wxWidgets for example are toolkits that are designed to make a programmer's life easier by providing a genuinely convenient abstraction of a Windowed GUI.
My perception on MFC is that it was neither thin, nor particularly well thought out. It felt like something Microsoft started developing for internal use and that they decided to turn it into a product for developers, with all sort of idiosyncratic oddities that make perfect sense when you are Microsoft and none to anyone else.
What they did was bundle internet connectivity in with the every windows PC. Sounds ridiculous even mentioning it, right?
Back then you couldn't connect to the internet without installing third party tools, usually from an ISP on a disc. You had to install a browser, you couldn't embed hyperlinks in documents, there was no built-in way to get an email client..etcetcetc.
The original memo was not about building developer tools for the internet, but on taking a stand-alone operating system and shipping it with networking and hyperlinks and forming partnerships with ISPs and on and on.
But those tools were hard for laypeople to use in 1995. Sure, Windows now had a web browser and email program but you still needed an ISP and the email client was confusing to setup. Hell, their own Microsoft Network service was hard to figure out; one phone number to connect to the proprietary service and a different one for the Web (which never connected for me).
It was much simpler for users to put in the AOL disk and stay inside their walled garden - both conceptually and technically easier for laypeople.
Your points may be true, but the point is they went from potentially letting AOL own all their customers to regaining the initiative. Prior to the strategy change, it would have been simple for AOL to maintain a steel grip on those customers and harvest all the value from them.
Just because Microsoft went on to dominate the desktop market and win the browser war doesn't mean it was inevitable.
.NET is a renamed MFC? I stopped reading afterwards. You are completely clueless about .NET, aren't you? Do you think that Java and the JVM are just "rebranded" Delphi as well?
The push to open source started under Ballmer and has been gaining momentum the past few years. You saw some of the very early open source work debut when Scott Guthrie open sourced ASP.NET MVC 2 in 2010.
He (Guthrie) blogged a few times about evangelizing open source in Microsoft, and given today's news, he gained quite a bit of traction over the years. It also helped that ASP.NET MVC is a pretty sold web framework too.
I was at Microsoft when Nadella took over Azure but I left before he became CEO.
While it's true that Microsoft was taking steps to open source products under Ballmer, it was despite him, not because of him. There was an incredible amount of red tape, dragging of heels and internal fear uncertainty and doubt. Even internal only projects to synchronize open source practices among divisions were an uphill battle. If anybody deserves credit for Microsoft's open source efforts at that time, it's Sam Ramji who should get the credit, not Ballmer.
From the outside, Microsoft under Nadella has all the stops removed. This all lines up with a quote that I heard from Nadella 3rd hand: "We [Microsoft] can either push the 'One Microsoft' vision, or we can make money."
There's ASP.Net and there's ASP.Net MVC. They're very different beasts, even though the latter is/was built upon the former. ASP.Net probably is on the way out, but MVC is not.
WebForms and MVC and WebAPI were different stacks that ran on top of asp.net to deliver different functionality. WebForms is the old school stuff and was great at what it did (which was replicate the winforms ability so desktop developers could rapidly create webapps) and serves millions of businesses today.
WebForms is still being supported but now finally seems to be removed from future roadmap. MVC and WebAPI have been combined together now. The latest stack is ASP.NET MVC 6 running on top of ASP.NET 5 running on top of .NET framework 4.6
My take is that in the most central sense,
what Nadella and Microsoft are doing
with the code editor, .NET, their free
IDE, etc. is following a standard,
powerful, old script:
If have something popular, e.g., .NET,
then make it open and promote it as a
standard. Then come out with enhancements
every few months.
Part of the script is what Ballmer
once said in his uniquely understated
way -- "Developers! Developers!
Developers!"
Then initially many
developers will adopt and use the
standard because it's open and, thus,
close to
universal, at least pretty
good, and free.
Then, later, as Microsoft
makes improvements each few
months, it will be next to
impossible for anyone else to
make a fork that is competitive
so that Microsoft will, then,
continue to own the standard.
Or, if a developer wants some new
feature X, then they will likely
just wait for the next version of the
standard and hope.
So, thusly owning the standard,
Microsoft controls
a major part of computing which
can be very powerful for Microsoft
and a farm where only Microsoft
plows, seeds, and harvests.
E.g., nearly all the developers
would be on .NET, etc., but
Microsoft and only Microsoft knows
where the .NET standard will be
in version n + 1, n + 2, ... out
several years into the future.
Then the rest of Microsoft can
start development now that
exploits the standard, say,
two years from now while everyone
else has to wait two years
even to start. Bingo. Presto.
The parts of Microsoft that
exploit the standard get a
two year head start.
Or, maybe at one time a computer
company, say, HAL, designed, manufactured,
and sold hardware, operating system
software, middle ware software,
and applications software. Then
they had hardware enhancements
right along, say, each year or so.
Well, the hardware specification
about had to be in the manual
Principles of Operation and, thus,
essentially open. So, some
plug compatible manufacturer, say, GA,
could get the manual and build
a cheaper version of the hardware.
Well, the HAL software people knew
what good, new functionality was
coming to their hardware some years
before GA or
anyone else did and could have
a head start of those years.
One heck of an advantage.
Net, thusly owning an open
standard can be very valuable.
> Net, thusly owning an open standard can be very valuable.
Microsoft would like that more developers are locked in to their dotNet languages. And they try to influence the development of the next Javascript version (ES6 & ES7) by showcasing C# syntax ideas in their TypeScript language which then influenced ES6 - which is heavily used in Sharepoint/Office-Server365, Visual Studio Code/Online, etc.
Don't get me wrong, Google, Adobe, Oracle, Mozilla, Opera, etc are trying to influence the Javascript/ES6&7 development - everyone with different business cases behind them. But Microsoft is well know for what the parent poster wrote, and several newer evil things like the locked EFI on new PCs (instead of the open BIOS) that make it hard to install anything but Windows are still there, more there https://news.ycombinator.com/item?id=9459890 .
MS realized that the closed source, only running on Win32 platform battle is lost. Their only chance to get a grip of the future if they open up and go for supporting multiple platforms like Java did.
"Microsoft has come a long way from the company that everybody loved to hate"
Although, during the last few years, MS seemed to be the company that everyone ignored. But there is still a lot of built up animus against MS, due to their past business practices.
Yes, I observe that they are taking good steps and that this is clearly a positive change, but I am too old, it has been too many years, and I can't imagine that I will ever really be able to trust them.
Perhaps a younger generation can get some value out of their products, though, which would be nice for all the people who work there.
Nadela makes some good changes. Let's see if it will continue into abolishing MS historic crooked practices like vendor lock-in, standards hijacking and patents abuse. When Nadela will do that, I'll agree that MS has really seriously changed for the better.
Sorry to nick pick but the following download statement is "not optimal":
When this tool crashes, we automatically collect crash
dumps so we can figure out what went wrong. If you don’t
want to send your crash dumps to Microsoft, don't install
this tool.
So no check box to deactivate this phone-home feature that used to be standard in Microsoft products like Visual Studio, Office and Windows. That's a regression. (Source - bottom grey text: https://code.visualstudio.com//#alt-downloads )
Edit: there is only a small "preview" symbol on the top left, beside that no text or screenshot mentions it: https://code.visualstudio.com/
Visual Code is a brand new tool, and we only use the telemetry to help improve product quality, and better understand how our tool and features are being used so we can know how to improve VSCode. By the time we exit Preview, we will provide a way to opt out of this reporting.
Whats in the crash info? Because even the name of the file or any memory content means I can't use it because it might leak company secrets (e.g product names).
Somewhere at MS: "I told you this scheme would work! We finally got their product name. Send word to our team to begin immediately." rubbing hands together
"This is the Monaco editor component from Erich Gamma's group out of Zurich. It was originally written in JavaScript but gradually rewritten in TypeScript. When Anders speaks about teams within Microsoft building large TypeScript systems, this is one he is talking about" as one comment mentioned on a related article "It's also used in VisualStudio and IE11's new F12 tools.":
http://www.hanselman.com/blog/ARichNewJavaScriptCodeEditorSp...
"Code uses a newer, faster version of the same industrial-strength HTML-based editor that has powered the “Monaco” cloud editor, Internet Explorer's F12 Tools, and other projects.": https://code.visualstudio.com/Docs
Look at the VSCode-linux-x64.zip in dir "\resources\app\server\" there is a "monaco.impl.js". It's the "monaco" editor component that comes from Switzerland that is also used in Visual Studio Online.
But for those who care about their privacy, IMO its approaching the problem from the wrong angle if you're trying to get some developer to change their code to respect your privacy. Its their code. They can do what they want.
We as users should have protections from them attempting to submit information we don't want leaked. To me the solution is better perimeter monitoring and filtering.
While not practical in many situations I would highly recommend filtering all outbound traffic using a new firewall that supports such features (Sophos UTM for one, PfSense for another). Its the only way to know for sure those requests don't get out even when there is a disable option.
You're suggesting that the same guy, who told his own kids "no you can't have an iPhone, iPod or iPad, you have to use a windows/zune/whatever device", and then after leaving Microsoft, bought a basketball team, and told them they could no longer use their existing Apple products, would have OK'd the release of a cross platform development tool...
Ballmer was CEO for over 14 years, during which very little of this happened. While some of this was obviously being worked on under him, I find it hard to buy the idea that Ballmer did all the work and Nadella just swooped in and took the credit.
They may have been under development during Ballmer's time, but it's hard to believe that they would've seen the light of day under Ballmer's leadership. And if Ballmer released any open sourced products, I get the feeling that there would be major strings attached. And it would have a switch and bait sort of feel to it. Kind of like Oracle with Java and other technologies from Sun.
The fact is, Nadella has made open source a lot more palatable from Microsoft.
Fun thing that nobody seems to mention is that a lot of "Visual Studio Code" is actually based on opensource. It's a atom shell app using omnisharp as server... Here some relative links where it's based upon:
I think it's funny that MS uses 3rd party opensource for building a editor that supports Visual Basic (and other languages of course).. According to me, Roslyn does the intellisense (it's opensource now) and CoreCLR is the RyuJIT-compiler (also recently opensourced).
I suppose the Asp.Net 5 framework is perfect for beginning with this ( grunt, bower, ...). Debugging currently works with Mono 4.0.1 and node, soon all of them will be supported because of CoreCLR (source: https://twitter.com/shanselman/status/593454392851845120 ). .Net has a lot of nice things to offer ( odata, f#, entity framework, typescript), i'd be happy to see them getting more traction :)
Yeah, well, Atom is based on https://github.com/atom/electron and so is Microsoft Visual Code ;) . I thought it was better then Brackets ( Adobe) also, but that's another discussion :p
Given Microsofts recent endeavors, I also have very little doubts that the editor will be open sourced once it's released. I think keeping something closed source in beta like this is a good way to force Devs to objectively evaluate the product, as opposed to having immediate presumptions purely based on it's technologies.
Cross platform developers tools by Microsoft! Great news! MS has some of the best developer tools out there. In my opinion, the only downside has been the dependency on the Windows platform. As a developer, I feel much more comfortable in a Unix environment.
This move was unthinkable a decade ago. I'm very glad to see MS moving in this direction. Just because of this announcement I want to start playing with TypeScript and C# again.
This move was very thinkable a decade ago. Even two decades. In fact, a good example from 1995:
From Wikipedia: The strategy and phrase "embrace, extend and extinguish", was first introduced in the United States v. Microsoft antitrust trial when the vice president of Intel, Steven McGeady, testified[8] that Microsoft vice president Paul Maritz used the phrase in a 1995 meeting with Intel to describe Microsoft's strategy toward Netscape, Java, and the Internet.
It seems Microsoft has influenced JavaScript/ES v6 with their TypeScript intermediate language lead by Anders Hejlsberg. Given the vast TypeScript code based that MS wrote for SharePoint 365, Visual Studio Online/Code, etc. it seems more than logical. But, read on:
BRENDAN [Eich (JavaScript creator)]: Again, TypeScript is
smart because it’s embracing and extending. Let’s hope
Microsoft doesn’t try to extinguish. That’s the third E.
JAMISON: [Laughs]
BRENDAN: I don’t think they will. I think they actually
bought into JavaScript at some level. And I’ve talked to
people like Anders Hejlsberg about this.
But Brendan Eich answered to my thread by replying to a parent:
ES6 and the Harmony agenda influenced TypeScript. Where
TS went its own way on things like open modules, MS has
promised to track the Ecma standard versions ASAP.
In particular, TS classes were purely an extension to
ES6's design, while ES6 was not frozen. There was not
feedback the other way, at least not phrased in terms of
TS -- the MS folks on TC39 had to make more generalized
arguments for changing the draft ES6 spec.
Maybe after more people know about Visual Studio Code some others share the "German angst" about their common business tactics a bit too. I would prefer if they don't turn JavaScript into C# Trojan horse style. Hopefully things have changed since Satya Nadella took over.
Even when Microsoft 'Embraced and Extended' Java, it was only on the Windows platform. It was not cross-platform. The whole point of that methodology wasn't to make sure that everyone was using Microsoft-flavoured Java, but to make sure that everyone was using Microsoft-flavoured Java on the Microsoft Windows platform.
Cross-platform didn't mean much in 1995. Which other platform was there at the time? Apple was dead in the water. Red Hat had just come into existence. Netscape Navigator 1.0 had just shipped in December 1994.
The fact that Java was device-agnostic due to the JVM is something that Microsoft viewed as a threat. Bill Gates saw Netscape as a threat with their plugin system because of the idea that the OS would just be a shell to the browser which would run programs via plugins. This one of the reasons that they wanted to destroy the Internet. They feared that it would make Windows irrelevant.
"Write once, run everywhere" is a threat to a company whose entire business model is based on "everywhere" being owned by them.
Arguably windows didn't have the hold it does now in 1995... in 1995, DR-DOS/Desqview and other UIs were prominent, and OS/2 was more popular as a desktop than Linux has ever been (as a ratio), not sure about OSX today. That also doesn't count Apple's penetration at the time which really wasn't as insignificant as you make it out to be.
A lot of that changed starting with Windows 95. Though, it's really 1998 that MS practices in terms of embrace/extend/extinguish was at their top.
I finished my school in 1993. None of the computer science teaching was on PC. I have used mainly sun but also HP, next and VAX computers. PC were only used for word and excel.
The school was lending special network card for the few pupils (less than 10 among 400) who had linux on their PC. The common network card (we had network plug in our rooms) was not supported by linux.
Even if linux was not mainstream, Cross-platform had already a meaning at that time and djgpp was well known to run programs on dos (for example caml-light, the ancestor of ocaml).
I'm not sure what the reference to Netscape Navigator is supposed to mean, but I find interesting that 2.02 (released in 1996) was available on all these platforms:
> Windows3.1
> Windows95/NT
> Macintosh
> BSD
> Linux
> SunOS
> Solaris
> HP-UX
> OSF/1
> Irix
> AIX
> OS/2
> OpenVMS VAX
> OpenVMS Alpha
That's very much debatable. As a particular counterpoint, Apple hardware had a pretty significant market share among educational deployments. There were quite a few schools that were Mac-only even as late as the early/mid 2000s, let alone in the 90's.
Now granted, a big reason why that changed was because all the homes and businesses used Windows (or some specialized Unix like Solaris or IRIX), so the education market eventually shifted to the Windows world, but that happened quite a bit after the 90's.
Everybody talked about thin clients and Java as an OS at that time, there was a massive Java hype going. The things Microsoft struck preempively against largely never materialized thanks to super-crappy broadband (if it even existed) and lousy early Java performance (there are dozens of Java office suites, browsers etc that never got traction or was canned before release thanks to general unmarketability).
I think i should have used "Excitement" instead. On your point, my enthusiasm grown with the more I learn as I see more potential that I would not have given my previous lack of knowledge.
Wow. I seriously don't know what to think anymore. What is their end game? Which platform are they hoping to become / remain dominant in?
Don't get me wrong---I'm as happy as the next guy about this. VS is the only tolerable language-dedicated IDE, if they take 25% of their VS engineering mantra to this it will be better than almost anything else.
But where does it end? I am clearly so not in touch with my inner mba. I just cannot even think of how what they are planning in the long run, here.
What's going on? Have they lost their minds? Is there a secret master plan? How realistic could that be? Is this the red giant to their eventual white dwarf?
What I took from it is that Microsoft used to make all their money from Windows and Office, but now the company is looking to transition towards being a service company rather than a product company. As a service-oriented company, restricting developers towards a single platform doesn't really help them, so ultimately it's in Microsoft's best interest to get .NET out there as much as possible so that people will want to choose their services.
I won't admit to "getting it", but what I gather is that Microsoft want .NET to be a valid choice for everyone.
I think it's apparent that Microsoft has admitted the reality that the operating system just doesn't matter any more - and you're not going to make money there.
So it's all about services, and Azure is one of the sources of those services.
Getting it is easy. Even with very good support for .Net (C#, F# mostly) in Mono, actually developing, deploying and maintaining an application outside of Windows with VS is problematic by comparison. In the past I wrote a couple of web based applications in .Net that could readily deploy to Linux. Even then, deploying to Windows was so less cumbersome than getting mod-mono working we decided it was worth the cost of Windows Web Server (or whatever the 2003 version was called).
At this point, they want to do this with Azure services. Which is very easy to work against with very rich tools in .Net. They're extending this development ability to other platforms, so that hopefully people will choose to use .Net even if targeting other platforms in the hope that people will choose to deploy to Azure over other cloud providers in much the same way that I chose to deploy to windows a decade ago.
This doesn't even count migrations of existing applications, which may well be better off on Azure (in windows) with new systems under Linux. The past two years, I've spent supporting Windows applications where a next generation was moving to Linux (node/iojs). Right now I'm doing this against Azure.
Being pragmatic, I'm even using Azure Storage (queues, tables and blob) for migration data, which means I don't have to setup/configure/manage a bunch of servers to do these tasks. Setting up RabbitMQ isn't hard, but there's time involved. Setting up C* isn't hard either, but if the data is transitional (using azure tables to hold data exported from the old system, and queues to trigger import into the new), it doesn't make sense to configure my own server. After using these services, I may use them more deeply, I'm already using Azure Tables for my configuration settings even, so I don't have to maintain an etcd/consul cluster.
All of this said... while I am mindful of getting locked in, and do have a strategy for breaking out, and my core application data won't be in azure services... actually using them makes me consider using them more.
From my own experience, what they are doing is a legitimate strategy and far better than how they approached it early on, and may still be. I stopped attending .Net conferences/meetings about 4-5 years ago because they were turning into Azure sales presentations more than development presentations in general. This is also the same time node.js started to become a viable contender, and I started using it for web project client files (js merge/min, less etc).
My hypothesis is that winning over developers to use their platform will eventually result in more Azure users. I get the feeling Azure will be their one of their next cash cows, and this is one of the steps in enabling that.
Azure users and native app developers on the Windows Store.
With the free W10 upgrades for 7/8 users and a 30% cut of Windows Store sales, they stand to make some money. But they have to get developers back on their side first, otherwise the store stays dominated by garbage.
But aren't Store apps essentially built on the Win32 API? I remember an article basically saying '.NET didn't win' for that development. I could be recalling wrong, and I'm sure there are wrappers and such, but still...
Most of the WinAPI is abstracted out for Store apps as most will be using either .Net or JavaScript for their applications, with the latter essentially being extended/embedded web applications iirc.
I haven't paid much attention to native apps either desktop or mobile. I've built my career understanding distributed systems/communications flows and web based fromt ends... To me most of that is a better experience than what little attempts I've made at front end platform development.
The current crop of store apps are in a more limited API. But as of today, MS is also going to be selling traditional Win32 apps shipped in a sandbox that allows for clean install/uninstall. Demo showed Photoshop Elements.
They're also supporting Objective-C now, with VS slupring up Xcode projects. Did not expect that one.
Interestingly, owning the market in developer tools and programming languages is how Microsoft got their start in the 70s/very early 80s. Not only is this strategy a reasonable one (at least to my uneducated outside opinion), it's starting to look exactly like the one they had before MS-DOS (and that eventually worked out OK for them, though it is still much less certain that Azure or something like it can play the role of DOS in this story).
Whatever it is, I'm not sure I've actually been excited about what Microsoft is doing since Windows 2000, and that's starting to change.
I actually tried it for about a half hour, and so far like it a lot... I don't know if/what plugins will become available. I do like that the side menu makes it much easier to show/hide the file directory view (which is indispensable imho). Also, the git integration seems very nice, I haven't tried it as I'm editing via a samba share to a nix machine and don't want to screw up the file permissions.
A couple nitpicks...
* There doesn't seem to be a way to set the file encoding... can I assume that files will always be saved in UTF8 w/o BOM?
* There doesn't seem to be a way to set line endings... can I assume that files will always be saved with unix (lf) line endings? By extension, will this fix windows line endings, or mixed to LF line endings?
* It would be really nice if there was an integrated command prompt, similar to cloud9's, that could be shown/hidden. Configurable to use a given shell (in windows, I'd prefer a git-bash prompt).
All in all, really nice work, and this may well replace sublimetext everywhere for me. I don't use any of the more advanced plugins with sublime, and I actually like the VSC editor's UI more. They seem to have burrowed the hotkeys from sublimetext.
Windows is becoming irrelevant, Microsoft Office is being supplanted by Google Docs being both free and 'good enough', and worst of all, Microsoft completely missed the boat on mobile.
The Microsoft of old would have died out eventually. What we are seeing is not something you see often - a behemoth of a company doing a 'pivot'.
What would you do remain relevant in the face of the majority of the internet services not going anywhere near Microsoft for material income?
You're completely lost in your Silicon Valley mindset. Most of the western world still shows up to work and uses Office on Windows. Even in tech, I've seen non-technical workers request PC's just so they can use "real" Office. Office for Mac doesn't cut it. And while it might be good enough for you, it's not for many people who rely on Word, Office, and PowerPoint for work. Oh, and Google Docs is hardly free in the office.
I'm not saying this would happen tomorrow. Microsoft has enough inertia to fire all their developers and just sell the current version of Windows and Office for a long time. Hell, some 30% of computer users in China still use Windows XP.
After a few generations raised on smartphones and tablets without any Microsoft apps, Microsoft Office would just be a curiosity their parents used, like Corel Draw or dBase.
Fortunately Microsoft has taken note; there's rumor of Android Office apps, and the latest version of the Surface tablet is quite popular.
Microsoft, and in particular, Office is still going strong, but the stranglehold it had in the 90's is gone.
--
Google may want businesses to pay, but going to docs.google.com and using your personal email address works just fine - much to the chagrin of IT departments everywhere.
Still he has a point. Kids will toy around with Google Docs but when push comes to shove when they're hired by PWC or Deloitte, Microsoft Office is where it's at.
Google Docs doesn't hold a candle against it while LibreOffice can barely sneeze in front of it.
I am very far from the valley, but we have mostly phased office out in favor of google docs. It turns out that easy sharing is the killer feature and that google docs really is good enough which will obviously differ based on what you do.
What non-technical users request won't matter, they will ask for whatever they are familiar with and complain if any icon is moved just slightly.
> Microsoft Office is being supplanted by Google Docs being both free and 'good enough'
I like Google Docs as much as the next guy or girl, but I find this hard to believe when we had to end a meeting several minutes into it when the Google Doc displayed an http-500-style error when trying to load a spreadsheet.
If you know what you're doing with Office/use the advanced features there is just no comparison. Office is the Emacs of the business world. But I suppose most people could get on well enough with Google Docs.
This is especially true with Excel and Access (and to a limited extent PowerPoint). It's insane how much business logic can (and often does) live inside some random Excel spreadsheet.
Word mail merges are actually a fully featured templating system. On top of the whole thing being scriptable. But I think this is less "discoverable" than Excel.
> The number from a few years ago showed college freshmen using Macs by 70%.
In the US, perhaps. Where I study, I can count the number of people owning MacBooks on my fingers. They're still way too overpriced/lacking in hardware compared to PCs at the same market rates.
Except the home desktop is a dying (or dead) breed - and many people will either have OSX laptops at home, or no traditional computer at all, only phones and tablets... They could choose Office 365 to some extent, but they could just as easily choose gApps.
Pivoting to becoming more service oriented. Azure/Office365 are their next generation core. Azure as a development target, which pragmatically makes sense as companies with Windows services/apps move to the cloud. And Office365 in the same vein. Not to mention them extending office to other platforms, which combined with Office365 (email) makes a lot of sense.
All of that said, outlook integration to office365 is actually worse as a mail client than it had been in the past with self-hosted Exchange. Counts don't update properly when you "delete all" from a folder, and even then it's inconsistent. I know it's to allow for better scale/resource control on the servers but it's still very annoying to say the least.
Actually it is... it's not too different from what it always was. In the past, it was about businesses running "Back Office" versions of servers in the office. Because NAS boxes are now a good enough option in small businesses, and many are moving their hosting into more prominent cloud services, they are positioning Azure to be the platform of choice for windows based services and applications. They've got Office365 to handle the mail server duties people lost moving away from back office. As a small business you no longer need to self-host anything (other than maybe a local NAS box).
I hate sounding like an advertisement for MS, but it really isn't THAT much of a pivot. More adapting to keep those parts of income that used to come from server licenses now as services. Not even mentioning Azure as a target, which is probably the best bet for keeping legacy apps running while transitioning/refactor/rewrite to new generations.
It's a good question, and the only answer I have is that when the old binary fortresses crumble you have to do something to stay relevant, and hope business opportunity will be found. I developed almost exclusively on Windows for almost twenty years, and then one day I looked at the cost of a universal MSDN sub and thought: this is getting nuts. So this is a great development, imo, because MS tools rock. I have been working in Ubuntu now for over three years, and in that time I haven't missed very much, but I have missed Visual Studio.
It's pretty simple, Visual Studio Code, the .NET Core runtime for Os X/Linux, ASP.NET 5 and TypeSript are only useful to do Web dev. With Azure they provide the best cloud to run those web app. So they don't lose any VS customer that do software dev, not lose much web dev VS customer on windows because the full VS will always be better and they provide tools for every web developer on other platforms in their area of expertise : development with code completion tools. It's a pretty smart strategy I think.
It could be as simple as them realizing "hey, that thing we've been doing for the last fifteen years hasn't really been working. So maybe we should try doing the opposite."
It seems like if MS just doubled down on Windows and Office they'd be in trouble if/when those stopped being so profitable and there are certainly reasons to think they're going to lose ground there (especially with consumer markets, but with business markets too).
This is decent strategy if the end game is eco-system around Microsoft technologies, not just windows but their whole offerings including Azure, IoT etc.
Microsoft is a software company , so i would guess their end game is not services or hardware but software. Anyone got any ideas how they plan to dominate the software world and make money out of it? They 've just gained a ton of new fans though, that's for sure.
Based on complete guess work - They seem to be moving up the chain by building and selling services on top of existing platforms. e.g. Azure on top of databases, Third party apps on outlook etc. Not sure what they intend to build on top of windows...
Yeah the real test will be, is this thing supported 5 years from now? There's a nice history of projects like Silverlight that get a lot of buzz and love early on but languish and are killed a few years later when management and priorities change.
Management in particular. It's unfortunate that new personnel always feel the need to push their own vision rather than the previous guy's, often just for the sake of it.
This is what worries me. What if we all start using these tools and then new management comes in (or if it was the plan all along) and poisons the well.
Keep in mind that this time they are not just giving away stuff "free as in beer" they are also giving it away not under AGPL, not under GPL, not under LGPL but under a MIT License which is one of the most permissive licenses out there.
Contrast this to Oracle/Java. Or about any other huge corporation.
Using a permissive license is the strategy that makes the most sense when your primary goal is proliferation over developer community. Thus, it's nothing surprising.
The Visual Studio Code shell is built on GitHub's Electron Shell, but the editor is a new and improved version of our own Monaco editor, which we use on Azure Websites, Visual Studio Online, and a number of other web sites, and in the F12 Tools in Internet Explorer.
It'll be interesting to see what the performance is like, since this has been a recurring problem with web-tech based applications (especially editors like Atom and Brackets).
Actually seems to work better than Atom or Brackets so far... I found both to be intolerable pretty quickly... this, I'll be continuing with for a couple days, I like the UI better than sublimetext so far.
I don't really understand the sentiment that you have expressed in your aside. If they deliver an interesting and/or useful product, why not reward them with credit?
removed it... I just don't like when I sound like a company shill. In this case imho the editor itself actually runs than my trials with brackets and atom... The startup time is actually tolerable, and the editing seems to work a little better too. A few days will determine if I go back to sublime again.
I just tried a 100MB C++ file; it opened in 2 seconds, and navigated very fast. No syntax highlighting, however a 20MB C++ file did receive syntax highlighting in the background (took around 30 seconds to reach the bottom), with navigation still 100% fast and responsive.
Right now, this thing blows the Atom editor out of the water in terms of performance. For plugins and breadth of available functionality, Atom is miles ahead of course.
this thing blows the Atom editor out of the water in terms of performance
Idem for Sublime Text. Loading large files on Windows is a total disaster with ST. Which is a shame, it's a great editor on all fronts except loading of large (as in > couple of MB) files which is just something I happen to do quite a lot.
I believe Atom are already writing a new backend for their text buffer backend, but that part of the code is unrelated to what VSCode uses. I imagine the very fact that VSCode exists and performs so well will be enough to finally make that work a top priority for the Atom team, but we'll see.
The description says it's lightweight, but on my machine it uses over 200 MB of RAM with no files open, and appears to be a Chromium-based thing, much like Atom (as others pointed out, it's based on Electron). Meanwhile, Sublime Text is using less than 100 MB of RAM with dozens of files open, some of them quite big. Visual Studio tends to use less memory than this, too. If "the language services [Microsoft] built for Visual Studio Code [are going to] be available in other editors as well", then I will definitely pass on this one (and this, assuming I ever get interested in developing in .NET again).
On second thought, for now this looks nothing more than a marketing trick, very well pulled off.
On my machine with no files open it's at ~80-85MB RAM, VS2012 is at 500MB with nothing open. Not sure why 200MB is of any consequence unless you're in a third world country. 8GB of RAM is ~$50.
This is interesting. I only tested it on Linux, just opened it again and it's definitely using over 150 MB of RAM, across five threads. This may mean it uses more memory on Linux than on Windows. 20 MB looks definitely lightweight, and it may be an interesting alternative to Sublime and Notepad++ which is what I use on Windows.
After opening a few files it's up to 100-150MB, so not as lightweight as I originally thought. That doesn't affect its responsiveness, though, and I have plenty of free memory.
Yes, and while we're add it, can it really be hard to add syntax highlighting? Now let's all keep adding one small feature until we've specified a fully-featured editor.
tldr; light weight Visual Studio for OSX/Windows/Linux with support for dozens of languages, intellisense (autocomplete), refactoring, debugging (yes, real debugging), git integration and it is free
As a developer I will mind if it's not fast though, or if it does not behave like other native apps. The fact that it uses more memory is not a fact that stands alone either. The reason it uses more memory is because it has to do more. Because it has to do more, it's always going to be slower.
So far on Fedora 21, VSCode is a slow and buggy experience. Atom was never as good as any of the native dev tools that I've used IMO. As a matter of fact, I can't think of one application developed with web tech that performs as well as it's native counterpart.
Surprisingly, VS Code handles large files quite well.
Just tested it on my Mac opening an uncompressed ember.js (~1.5MB). The file loads instantly and syntax highlighting is done in less than 1 sec. Movement and editing are very responsive.
On the other hand, when I open ember.js on Atom, it takes more than 10 sec to load and syntax highlight, and moving & editing take .2 ~ .3 sec to complete.
I've been using it with an ember cli app on OS X for a couple weeks (had pre release access). It's pretty nice some kinks here and there specifically with my tmp folder being giant. But for being what it is now its pretty awesome.
Handles builds and debugging too although it'll take some setup depending on your project type.
They basically took the vs Monaco online browser editor which was already awesome and put it on atom shell/electron for everyone to be able to use natively. Definitely a smart move. Compared to paying $70 for sublime it's a really good deal.
Sorry guys but there is an issue with our load balancer which is being worked on right now. In the meantime you can find us here: https://vscode-westeu.azurewebsites.net/
Keep in mind, this is only a preview, and they're working hard to get all those languages to IntelliSense/Refactoring level. And once their extensibility framework is finalized, you can add support for whatever language you want.
When most companies say free they mean free of charge, if they want to say open source they say open source, because that’s the term the world understands. Basically only the FSF uses free to mean Free Software.
Yeah, I know, that’s my point. The distinction is the reason companies don’t like to use confusing terms: “free” has only one meaning for them in the context of software.
> "Free software" and "open source software" are two terms for the same thing: software released under licenses that guarantee a certain, specific set of freedoms.
> “Free software” means software that respects users' freedom and community. Roughly, it means that the users have the freedom to run, copy, distribute, study, change and improve the software. Thus, “free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech,” not as in “free beer”. We sometimes call it “libre software” to show we do not mean it is gratis.
Many companies use "open source" or simply "open" in a way that isn't compatible with the open source definition. This is known as open washing. A good, non-Microsoft example is Epic Games and Unreal Tournament 4. They talk a lot about being "open", but the source code and assets are all proprietary.
Visual Studio Code is already built on top of a number of open source projects we've created or are contributing to, including the Roslyn compiler and language tools, OmniSharp, Typescript, and GitHub Electron. We are still in an early stage and we're evolving our architecture - and we'll look at what we open source, and how we do it, as part of that.
It's free as in beer only. Please do not use it if you care about software freedom, and urge Microsoft to respect you by releasing the source code under a free license.
Not sure why this comment is getting a down vote, this is a very important issue. I understand a lot of startups get money from Microsoft, and a lot more use their products, but that doesn't make this less of an issue.
Down votes for pointing this out? Must be Microsoft employees or partners. Wish HN had a way of filtering votes given the source domain. I have the karma, but the chilling effect on new users could be nontrivial.
Looks like it's just free as in beer for now. Who knows what will happen a few months/years from now when it doesn't have a huge userbase and Microsoft isn't interested in continuing to support it alone.
Yeah, and while I appreciate their efforts... I find their documentation on their Azure clients for node.js too sparse and inconsistent. It can definitely be better, at least now I can look through their codebase to get what I need.
Will your customers mind if the following data is sent to Microsoft when you're working on-site?
Usage data. We collect information about how you interact with our products and services. This includes information about how you use the products and services, such as the features you use, the web pages you visit, and the search terms you enter. It includes information about the device you use with the services, including IP address, device identifiers, regional and language settings, and information about the network, operating system, browser or other software you use to connect to the services. And it also includes information about the performance of the product or service and any errors or problems you experience with them. In order to create a richer picture of your product usage, we will correlate usage data across other Microsoft services, like Visual Studio Online.
What's most impressive to me is the number of open source projects used to build it. In my old org at Microsoft it would have taken months to get approval for that many projects. It took us THREE WEEKS to get approval to use Google Mock for C++.
When I left Microsoft about a year ago I had the thought that it would be a cool company to work for again in about 3 years. They really seem to be taking some steps in the right direction.
AADSTS50020: User account 'me@captnemo.in' from external identity provider 'live.com' is not supported for application 'caf83767-0da8-454f-ae8d-77f63deaf359'. The account needs to be added as an external user in the tenant. Please sign out and sign in again with an Azure Active Directory user account.
I'm guessing only proper microsoft accounts are allowed? (@outlook.com, @live.com etc). I understand it might not be live yet, but I don't get the "unavailable yet" error.
>Visual Studio for Mac is a breath of fresh air for those of us who use Unity on a daily basis. Please oh please get it tightly integrated, similar to UnityVS for Windows.
>The day I can dump MonoDevelop and Xamarin for good would be better than my last 10 birthday presents combined - and they were pretty sweet!
With a brief attempt, it's surely not ready to replace sublime for me. No package support, doesn't even come close to replacing fuzzy file matching (and the current file opening doesn't work over osx fuse). Not to say I don't welcome the attempt to replace Sublime, it just can't compete yet.
It does appear to load large code bases a lot snappier than Atom, and at least they got panel resizing working unlike Atom (which is still a hilarious thing not to have in Atom).
Edit: Atom seems to actually support dragging to resize panels in a recent update. Late coming but definitely welcome.
"The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to provide services and improve our products and services. For this pre-release version, users cannot opt out of data collection. Some features in the software may enable collection of data from users of applications you develop using the software."
I haven't looked through their code, but Atom (which used atom-shell, now electron) actually embeds google analytics in the editor. It uploads commands and file extensions.
Great. I'm a confirmed UNIX geek and I'll be the first to say MS has always excelled at developer tools, and I'd be happy to be able to use them on Linux. (BSD is probably a pipe dream, but this is a decent start.)
If Electron (formerly atom-shell) have a BSD build/target working, it wouldn't be too hard for MS to support it... if the open-source their work on this, it'll be easier.
You're missing the point. It is in many ways better than Visual Studio because it's lightweight editor with a lot of the good stuff like a debugger, intellisense, refactoring, code navigation, etc.
This caters to people who want good cross-platform tools without all of the Visual Studio bloat.
How is it "deceptive" exactly? It uses the same language service (roslyn and typescript etc.) with Visual Studio; it has VS signature features like "peek", "find references" etc. Maybe the debugger is not powerful enough now, but it is just a preview version anyways.
I am sure I must be missing something. It is a text editor, feels sublime-y. But it doesn't seem to be even a smaller cousing to Visual Studio, so the name is confusing.
It seems to be geared towards JS/Html. If so, we already have plenty of tools for that.
Some of my friends remind me that they use emacs already and don't need this one by Microsoft. Others say they use Sublime Text instead.
I used Visual Studio in the late 1990's and got used to the GUI IDE. I did a lot of work in Classic Visual BASIC before the Dotnet era.
I see they are open sourcing the CoreCLR and now Visual Studio Core. I gave the Linux version a quick look over, extracted the zip file to a directory and ran the ./Core program. It loads quick enough, most likely because there isn't much there.
I have to remember that this is the Post-Microsoft era, and Microsoft has to reinvent itself in order to survive. Microsoft knows the Hacker and Startup community uses OSX and Linux, and many have migrated away from Windows. Microsoft knows they like open source projects, so Microsoft open sourced Visual Studio and CoreCLR to have them ported to Linux, *BSD Unix, and Mac OSX.
Why Microsoft never made a version of Visual Studio for Linux or OSX is beyond me. We got Mono for a while, but it was always behind the Windows version. There was DotGNU but I lost track of where they were at.
If anyone is wondering how Microsoft earns money from open source projects, they will always sell books on it and also certification for it. Like Xamarian they can always buy out the company that forks it and makes a better version of it that is cross platform.
Cross platform .Net doesn't include a cross platform UI environment... though cross-platform WPF would be pretty awesome (not sure how much effort to extend on their efforts for silverlight would go).
Oh yeah. They even have preview badge on the home page. I was just thinking they could have stated it little bit politely. Something sort of, if you are not comfortable sharing the logs then wait for 1.0. blah..
But who cares :-). Many are downloading and I have it too!
The performances are already better than Atom, it can open 30MB XML files and 3MB easily. The syntax coloration is async, the code completion also and doesn't stop the editor and very sleek. But I already knew it was atom fault, Ace Cloud9 and even Code Mirror could open big files.
Super impressed with its performance: it opens up & scrolls smoothly through a ~40M text file just fine. Memory usage is quite high though, but that's expected with an Electron-based app.
Wow, I just ran it, and it says "If you don't have an existing project, we suggest using Yeoman to scaffold out a new one." Craziness! And very cool. Congrats to the Yeoman team.
Actually, no it isn't. The runtime is based on Electron (formerly Atom Shell). But the code editor has been entirely built by MS and been used on their Azure console.
For some reason this reminds me of how it was impossible for Nintendo to publish a SEGA game. Growing up as a die-hard Nintendo fan the thought of Sonic The Hedgehog appearing next to Mario was insane. Now days, I have a Nintendo Wii with about 5 games that feature Sonic, and one that features Sonic and Mario. SEGA has pretty much been reduced to a mobile publisher with questionable product decisions. Nintendo is slowly going down that route, though the DS and their strong IP keeps them alive.
They have a long way to go, I'm baffled as to why this got 1020+ up-votes. They knew they've been losing the OS and development tools battles to Apple and open-source for 10 years now and now skinning an open-source editor is going to change that overnight? They first need to catch up and then surpass the competition. They have a monumental mountain to climb to just even be anything like what they once were.
Cross platform IDEs for C++ like Qt Creator and JetBrains Clion already made huge progress over the past years.
There's a good chance that we'll see the emergence of a high quality reusable open source C++ language service component for editors over the next three years or so. Google in particular seems to be putting a lot effort into Clang, LLDB, Kythe and other developer tools. Facebook is also working on a web-based IDE and presumably has interest in good C++ support. Modules in C++17 (which Microsoft intends to adopt quickly) will probably make things easier.
If you haven't already, check out srclib, an open-source cross-language cross-editor code analysis library designed to support things like editor plugins: https://srclib.org/. I'm one of the creators and would love to hear your thoughts.
Not directly connected to VS Code launch, but rather to the New Microsoft phenomenon:
It is high time the MS offer a FUSE-like userspace filesystem for Windows (possibly, by purchasing Eldos). Along with package management (which is now addressed in Windows 10), this is one of the biggest holes in Windows armor.
Sure, there's no BSD support. Which puts it at what, 95% of machines in the wild can run it? This is very much cross-platform. Unless you're into BeOS, then yeah, you're out of luck.
Some time ago I had read a blog post I don't remember where which said that all this credit that Google and Apple are getting for innovating cellphones and tablets, Bill Gates had envisoned all in MS a long time ago, but Ballmer or their management after that didn't focus on them, I had seen a windows phone way way before I had seen a tablet or a phone by apple.
It is nice to see MS changing their strategy, earlier they were all closed up to the boot, now they are opening up, but the only thing about Visual studio is that their Intellisense is completely different than Eclipse's auto complete :D
Never thought I'd say this ... but I'm beginning to like Microsoft again ... (not entirely sure this tiger can change it's stripes - but), all I can say is "Welcome to the the FOSS side!
Wow, I just opened a Clojure project and the code is color hilited and things like auto-indentation work. I need to find the documentation on with programming languages are supported.
There's a lot more info on it in its documentation here: https://code.visualstudio.com/docs Looks interesting, but I don't really see much that differentiates it from Atom, Sublime, Brackets, etc. Also the language support is kinda barebones--no syntax highlighting for Go or Rust? Only intellisense for Javascript and web stuff? Debugging only for Node.js?
Interestingly, Atom is already available on MS, OSX, and linux today. They need to make it competitive and updated with the current Atom to be popular. On the other hand, this gives Atom some good competition and impetus to improvement, and I already like Atom.
A quick look at the docs and it doesn't yet support extensibility/plugins, though they say in the FAQ that they are working out a plan for that. Right now there is an external task runner that exposes the file name of the current buffer and some other data.
I look forward to seeing what they do on the plugin front. And hopefully they will be able to upstream performance changes to Electron and Atom and hopefully more.
Competition in the editor + dev tools space is always good.
This is definitely a big and newsworthy announcement from MS Build. And one of the few times that linux was given any respect as a platform. I think it still remains to be seen as to how serious MS is about real cross-platform products and work, but it's a great step. If they make their cross platform products roughly equal, not like that mono crap, then I would consider that to be a real effort by MS.
In this case, I think they are re-using Electron as a wrapper for their editor combined with some of their existing efforts for a web based VS editor. In this case, I'd suspect they'll flush this out to be much closer to what VS offers as cross platform. I see a LOT of developers using macbooks, and fewer booting up windows to edit VS projects anymore.
This is to stay relevant and that effort won't change... of course they are a company and may not offer a lot of energy if there isn't uptake. My limited use of the new editor is actually a pretty positive so far. I'm going to give it a try for a week, already I like the UX more than sublimetext.
It almost feels as though the "Developers! Developers! Developers!" Ballmer mantra is back! [0]
Microsoft has realized that it can't afford to lose anymore developer mindshare and it's creating some really spectacular results. This is a Microsoft I can be excited about!
Neat. I am all for equivalent look&feel and work flow across different OS's. One thing that strikes me as strange, this looks very similar to Qt Creator[1].
As some members of the development team are reading here:
Text rendering on Win8.1 with 4k screen and 175% scaling is slightly blurry compared to normal Visual Studio. Is that known and are there any plans to improve on that? I remembered similar issues with Atom before :(
Otherwise it looks great for a first release! Looking forward to how it evolves.
Microsoft expects to make an increasing portion of their revenue from Azure PAAS. Visual Studio has a button to deploy to Azure. Amazon has nothing like an IDE and language/runtime to compare with this.
Even the Economist had an article last week about how the EU countries lament their lack of platform prowess.
They should just rename it "Code", visual studio inevitably brings memories of "bad M$". This is going to be a good trojan horse to lure developers into the microsoft platforms now with windows 10 and all, esp. as OSX developers are getting tired working with 80s technologies.
Does anyone know how to turn on automatic suggestions for non-supported languages? Syntax highlighting works great for Ruby (not officially supported), and good suggestions appear with "Ctrl-Space", but not automatically. Haven't had much luck with the settings JSON.
Anyone have a complete list of languages with "non-support"? I was a little underwhelmed with the official list, but Ruby was one of my wants there. What else does it highlight that's not on the official page?
This is a good move if they're hoping to entice Eclipse users on *nix to migrate from the JVM ecosystem to CLR.
Deploying Windows programs on FreeBSD is one thing but if they want to grow their developer base, they need to target programmers who don't run VS on Windows.
Or you could just type __directory, wait for the squiggly to show up and press ctrl-. => there is a code action there that will download the node.d.ts and add a /// reference for you
Is there someone else thinking of installing Visual Studio and the full stack required to develop .NET but is a bit scared of filling their system with many GB of stuff that is probably not immediately necessary and installing services that will probably not be of use anytime soon, slowing their machine down and making it not as "versatile" anymore as they would like it to stay?
Of the times I installed VS in past, just to toy with it, I remember that after installing it I immediately had many ram eager services loading at startup and had a dozen items more in "installed applications" and whatnot which were all strictly interconnected making always hard to find - in case you wanted to remove the full thing - if you managed to do it fully.
..what version of VS would you suggest to install anyway?
Resharper probably isn't going to run on here. Resharper has definitely been a requirement in the past, but Jetbrains seems to be slow to embrace Rosylen, which is clearly the future on .NET. It's not at all clear to be how long they're going to remain in their dominant position.
I wonder why they didn't allow to work on network folders. It looks like all files must be local, otherwise it can open the folder and list files in sidebar but can not open individual files.
It may be cool. It may even work. It's still a Microsoft product and for that reason alone I won't touch it.
They've been shit-talking Linux/UNIX for 20+ years and screwing us over in uncountable ways for even longer. They may be changing, but I, for one, will never trust them due to their history.
Would be nice if you fixed your login so you could get to the download. Still the same old Microsoft. Seriously can't you just have a simple link to download? Tsk tsk, should've hired me for that I'd position
I'm not sure if you saw, but you can keep it and do the same things as well in the future.
"Microsoft says the language services it built for Visual Studio Code will be available in other editors as well, including Sublime Text, Vi and Atom."
> "Microsoft says the language services it built for Visual Studio Code will be available in other editors as well, including Sublime Text, Vi and Atom."
I just heard about OmniSharp the other day and had some trouble getting it to properly work. But now that this has been announced I may just switch to that.
I still love Sublime and will use that for all other non-.NET/C# purposes.
I'm a pretty heavy user of IntelliJ but would never ever uninstall or not use Sublime Text, its like comparing apples to oranges. Any decent developer would know when to use either to be more productive.
Haha I had a similar first thought. I hope its as extensible as some of the competition, I'm sure it won't come ready out of the box for some things I find fun.
This was posted 10 minutes ago and you commented 5 minutes ago. Given I tried to download it and it failed with some weird error message on their site (not to mention registration walls suck) the logical conclusion is that you are not serious about your comment. That then begs the question why you would post such a comment. Looking at your submission history, one could easily assume you work for Microsoft.
If that is the case, I would suggest you guys grow a brain and remove the registration wall. It's 2015.
Their comment wasn't based on using it but simply based on "Visual Studio on something other than Windows" more than likely.
Registration walls are only a bad idea when you care that a product reaches as far as possible. Given "Visual Studio on OSX/Linux" is going to drive humongous amounts of interest the extra metadata they get from the registration wall is worth annoying a few people.
On a side note several people have said that it is likely not available yet.
My first thought at seeing this announcement was also that I would be uninstalling Sublime on my Mac. I'm not a Microsoft employee. And give MS time, they just announced it, available "later today". No need to assume a lack of brains.
Microsoft is a shameless company. They used to attack Linux, GNU and GPL. Now, suddenly they want to be friends with Linux. Why? It has everything to do with money. Today windows is getting less relevant day by day. So, microsoft is trying to put their into Linux and Mac.
Shameless? They are a listed company. Listed companies have one goal: to make money. They will do whatever they think will make them the most money in the end.
"(if this link isn’t live yet, give it a few more minutes and then try again)."
It's literally right after the link. What did you expect? It's a breaking story, the product was just announced and in the conference it was announced as available later today.
Personally I'd expect a "not live" link to fail to load, or be 404, or put up a "coming soon" page, or something. If I get a login page that indicates "live" to me.
More than a year ago I skipped the page that asked me to enable the two-factor authentication, as I didn't want to give Microsoft my phone number. One day I found myself completely locked out of my account. Long story short, I've never been able to access my email account again, since that day. The instructions to unblock the account [1], say, I shit you not:
If I try to enter my number, I get an unspecified error and I'm still locked out. Obviously. But not to worry, the page says:
>"If you can’t unblock your account with the security code and changing your password, customer support can still help you get your account back. To contact customer support, you’ll need to sign in to your account, and fill out an online form."
...
I really don't know what kind of brain-dead monkeys they put in charge of these things. And while it's hard to believe that a functioning human being could ever come up with such a bullet-proof procedure to unblock an account blocked for "security reasons", what really baffles me is that this has been going on for almost two years. This should give you an idea of how much Microsoft cares about their consumer products.
So, consider yourself lucky to have gone past the login, which, apparently, isn't something to take for granted with Microsoft.
https://account.live.com/resetpassword.aspx doesnt seem to require my password. I was able to select "I know my password, but can't log in" then chose "I don't have any of these" at which point I was given a form to fill out to have a CS rep contact me.
Give it a try, it might give you access to your account again.
It's what I did at the time, and I did it again now, but it doesn't work. I can change password as many times as I want, but the account is still blocked for no reason.
So you didn't get to the big contact form? Did you select the same things I did? I just tried it again on another account, and got the same page as before.
It is a bit strange that Microsoft keeps wanting me to log in for things like this. I'm not sure.
If any Microsoft engineers happen to be scanning this thread, it correctly redirected me to our organizations login page for me to use my standard credentials, but failed after with a generic Bad Request error.
An area that Micro$oft seems to ignoring is their device as in Barcode scanners that are still stuck on .Net 3.5 and VS 2008. Its matter of time before Andriod steals this and drives more developers to Java/Google.
Yeah, if only I could use lamdas in my barcode scanner... Perhaps what you're ignoring is that MS doesn't see much growth for themselves in the embedded market and, therefore, doesn't see a reason to invest there.
Microsoft has come a long way from the company that everybody loved to hate. IMHO, they still have a long way ahead of them, but it's nice to see they seem to be serious about it.
With Ballmer at the helm, I had the impression he didn't really know how to handle the rise of mobile devices and cloud services. Nadella seems determined to really change Microsoft from the old Windows-and-Office monopoly to something new.