Windows 10 can run reworked Android and iOS apps

Microsoft is revealing its plans to get mobile apps on Windows 10 today. While the company has been investigating emulating Android apps, it has settled on a different solution, or set of solutions, that will allow developers to bring their existing code to Windows 10.

iOS and Android developers will be able to port their apps and games directly to Windows universal apps, and Microsoft is enabling this with two new software development kits. On the Android side, Microsoft is enabling developers to use Java and C++ code on Windows 10, and for iOS developers they’ll be able to take advantage of their existing Objective C code. "We want to enable developers to leverage their current code and current skills to start building those Windows applications in the Store, and to be able to extend those applications," explained Microsoft’s Terry Myerson during an interview with The Verge this morning.


The idea is simple, get apps on Windows 10 without the need for developers to rebuild them fully for Windows. While it sounds simple, the actual process will be a little more complicated than just pushing a few buttons to recompile apps. "Initially it will be analogous to what Amazon offers," notes Myerson, referring to the Android work Microsoft is doing. "If they’re using some Google API… we have created Microsoft replacements for those APIs." Microsoft’s pitch to developers is to bring their code across without many changes, and then eventually leverage the capabilities of Windows like Cortana, Xbox Live, Holograms, Live Tiles, and more. Microsoft has been testing its new tools with some key developers like King, the maker of Candy Crush Saga, to get games ported across to Windows. Candy Crush Saga as it exists today on Windows Phone has been converted from iOS code using Microsoft’s tools without many modifications.

During Microsoft’s planning for bringing iOS and Android apps to Windows, Myerson admits it wasn’t always an obvious choice to have both. "At times we’ve thought, let's just do iOS," Myerson explains. "But when we think of Windows we really think of everyone on the planet. There’s countries where iOS devices aren’t available." Supporting both Android and iOS developers allows Microsoft to capture everyone who is developing for mobile platforms right now, even if most companies still continue to target iOS first and port their apps to Android at the same time or shortly afterward. By supporting iOS developers, Microsoft wants to be third in line for these ported apps, and that’s a better situation than it faces today.

Alongside the iOS and Android SDKs, Microsoft is also revealing ways for websites and Windows desktop apps to make their way over to Windows universal apps. Microsoft has created a way for websites to run inside a Windows universal app, and use system services like notifications and in-app purchases. This should allow website owners to easily create web apps without much effort, and list those apps in the Windows Store. It’s not the best alternative to a native app for a lot of scenarios, but for simple websites it offers up a new way to create an app without its developers having to learn new code languages. Microsoft is also looking toward existing Windows desktop app developers with Windows 10. Developers will be able to leverage their .NET and Win32 work and bring this to Windows universal apps. "Sixteen million .NET and Win32 apps are still being used every month on Windows 7 and Windows 8," explains Myerson, so it’s clear Microsoft needs to get these into Windows 10.

Microsoft is using some of its HyperV work to virtualize these existing desktop apps on Windows 10. Adobe is one particular test case where Microsoft has been working closely with the firm to package its apps ready for Windows 10. Adobe Photoshop Elements is coming to the Windows Store as a universal app, using this virtualization technology. Performance is key for many desktop apps, so it will be interesting to see if Microsoft has managed to maintain a fluid app experience with this virtualization.

Collectively, Microsoft is referring to these four new SDKs as bridges or ramps to get developers interested in Windows 10. It’s a key moment for the company to really win back developers and prove that Windows is still relevant in a world that continues to be dominated by Android and iOS. The aim, as Myerson puts it, is to get Windows 10 on 1 billion devices within the next two to three years. That’s a big goal, and the company will need the support of developers and apps to help it get there.

These SDKs will generate questions among Microsoft’s core development community, especially those who invested heavily in the company’s Metro-style design and the unique features of Windows apps in the past. The end result for consumers is, hopefully, more apps, but for developers it’s a question of whether to simply port their existing iOS and Android work across and leave it at that, or extend those apps to use Windows features or even some design elements. "We want to structure the platform so it’s not an all or nothing," says Myerson. "If you use everything together it’s beautiful, but that’s not required to get started."

Microsoft still has the tricky mix of ported apps to contend with, and that could result in an app store similar to Amazon's, or even one where developers still aren't interested in porting. This is just the beginning, and Windows universal apps, while promising, still face a rocky and uncertain future.

Visual Studio 2015 RC Available Now

Microsoft announced the Release Candidate (RC) version of Visual Studio 2015. The Release Candidate version is very close to the final public release version.

Microsoft is now targeting every developer and every app by opening up its one of the best software development IDE, Visual Studi0 2015 to all for free, minus enterprise developers.

At Build, Microsoft announced a free version of Visual Studio IDE named Visual Studio Code for developers that supports development on Windows, Mac OS X, or Linux.

Visual Studio Community and Visual Studio Code, both are free.

Visual Studio Community

Visual Studio Community is a full-featured and extensible tool for developers building non-enterprise Web, Windows Desktop, and cross-platform iOS, Android, and Windows apps. This free version of the product is usually for open source projects, academic research, training, education and small professional teams.

Visual Studio Code

Visual Studio Code currently PREVIEW edition is free to build applications for any platform including Linux, Mac OSX, and Windows. Key features of Visual Studio Code include the following:

  • First-class support for building ASP.NET 5 and Node.js applications
  • A lightweight, fast, keyboard-centric tool
  • Support for all programming languages
  • Intelligent code authoring, understanding, and navigation help you be productive
  • Integrated debugging and Git support right at your fingertips

Visual Studio Professional and Enterprise

These two editions are for professional and enterprise developers. These products allow end-to-end solution for development teams to build enterprise level applications including team management, issue tracking, version control, documentation, load testing, powerful advanced Intellisense and IntelliTest capabilities, deployment, code map and several other features to make complex application developers lives easier.

Check out more details about Visual Studio Enterprise 2015 here > 

Microsoft Announces ManifoldJS

John Shewchuk, Technical Fellow and CTO, Microsoft Developer Platform, announced a new technology called ManifoldJS, which is an open source JavaScript library for creating hosted apps across Android, iOS and Windows.

ManifoldJS takes simple meta-data about your site and uses that to generate native "hosted" apps for Android, ChromeOS, FirefoxOS, iOS, and Windows.

Generate your App Manifest here>> 
Documentation available here>>

More JavaScript 

asm.js, a strict subset of JavaScript usable as a low-level, efficient target language for compilers.
Vorlon.js, a remote debugging and testing tool for JavaScript that helps you remotely load inspect, test and debug JavaScript code, running on any device with a Web browser only. Download and learn more about this tool here>>

Windows + Android?

Microsoft will most likely announce this week that it will enable customers to run Android apps on their Windows 10 phones, tablets and PCs. The timing ostensibly makes sense, as the software giant’s Build conference, held this week in San Francisco, targets developers. But I wonder what message this change will send to developers and users, especially at a time when the company is also pushing a universal app strategy centered on Windows.

Note: Yes, Microsoft has been working on getting Android apps running on at least Windows Phone for quite some time. But I do not know if the firm will announce such a thing at Build. (Indeed, I openly question the timing.) Like many of you, i’m passionate about this stuff and fear the impact of such a move. That’s all this is: me expressing my fear of such a feature for end users. –Paul

If true, this is the opposite of what I wanted and expected. Indeed, when Microsoft first started talking up the notion of universal apps that would run across its various platforms—Windows, Windows Phone, Xbox One, Internet of Things embedded devices, Surface Hub, and HoloLens—I opined that truly “universal” apps would in fact also run on competing devices as well. At the time, I figured this would mean Android primary, since that platform is open and Microsoft has already starting building support for Android into Visual Studio. (iOS is a harder nut to crack because Apple locks down the platform.)

Letting universal apps run on Android would open up the market to Windows-focused developers and let me leverage their existing skills and knowledge. It makes sense. And I still expect to see this happen, if not in the current generation of universal apps, then in the future.

But letting Android apps run on Windows is another thing entirely. Indeed, it is the literal opposite of opening up universal apps to Android. And I question the logic of this strategy.

For users, the ability to run Android apps seems like a win. After all, the single biggest knock against Windows/Windows Phone is the lack of native apps. So a Windows Phone or Windows tablet user could fill in the gaps with that crucial handful of apps that simply don’t exist on the platform. Problem solved, right?

Not exactly. And not if this is about letting end users arbitrarily run any Android app on Windows Phone. When it comes time to upgrade, why would anyone choose a Windows Phone at that point? (A problem exacerbated by Microsoft’s focus on low-end Windows Phone handsets). Instead, most will simply choose Android, since they are now comfortable with those apps, and for the many advantages that Android has over Windows Phone generally. This is, in another words, only a short-term fix, one that will evolve into an inevitable exodus of users.

For developers who have invested a lifetime of learning and mastering Microsoft’s platforms, Android compatibility is a slap in the face. This sends the message that they have wasted their time and that it’s time to move on to a more successful platform since, after all, the apps you create for Android will now work on Android and Windows/Windows Phone. This completely usurps the presumed value of universal apps, which I assume Microsoft will also spend a lot of time promoting this week. It will not sit well with the developers who go to Build.

For Windows, the effect is similar. We’ve already sat through a Windows 8 generation of three years in which customers and developers ignored the latest (Metro/Modern) app platform in droves and the only popular Windows applications—besides Chrome and iTunes, which are in a way their own platforms too—were utilities that made Windows 8 look and work more like Windows 7. I was already on the fence about the efficacy of universal apps making Windows relevant again. But the ability to run Android apps simply means people will do so. On Windows. And that Windows becomes less relevant as a result. It’s just a launcher for Android apps and those few legacy desktop/Win32 applications some of us still need.

I started using, writing about, and advocating Windows 20 years ago because Windows was, at the time, personal computing. There was Windows and then there was almost nothing else. Today, of course, the personal computing market is split between popular mobile platforms like iOS and Android, web apps, and Windows. And Windows is the smallest platform of the three in many ways, or soon will be. The ability to run Android apps on Windows—this utter capitulation—is not a “win” or a positive development, assuming it’s happening as it sounds. It’s a defeat, an avoidable suicide. And it makes Windows even less important than it already was. To me. To you. To the world.

And that’s too bad. One of the things I still really like about Windows 10 is the renewed emphasis on desktop computing. This is my background, and my greatest love still when it comes to technology. I’m looking forward to reexamining PC-related topics this year that I’ve not spent time on in years. But it’s increasingly clear that the traditional PC market going forward will be much like the workstation market of 20 years ago: a niche market of users with high-end needs like content creation. I’m actually OK with that, I guess. But it’s less mainstream too. And this is going to be a difficult transition, one that, I think, will be sped up by this ability to run Android apps on Windows.

Why Visual Studio Code?

Visual Studio Code provides developers with a new choice of developer tool that combines the simplicity and streamlined experience of a code editor with the best of what developers need for their core code-edit-debug cycle. Visual Studio Code is the first code editor, and first cross-platform development tool - supporting OSX, Linux, and Windows - in the Visual Studio family.

At its heart, Visual Studio Code features a powerful, fast code editor great for day-to-day use. The Preview release of Code already has many of the features developers need in a code and text editor, including navigation, keyboard support with customizable bindings, syntax highlighting, bracket matching, auto indentation, and snippets, with support for dozens of languages.

For serious coding, developers often need to work with code as more than just text. Visual Studio Code includes built-in support for always-on IntelliSense code completion, richer semantic code understanding and navigation, and code refactoring. In the Preview, Code includes enriched built-in support for ASP.NET 5 development with C#, and Node.js development with TypeScript and JavaScript, powered by the same underlying technologies that drive Visual Studio. Code includes great tooling for web technologies such as HTML, CSS, LESS, SASS, and JSON. Code also integrates with package managers and repositories, and builds and other common tasks to make everyday workflows faster. And Code understands Git, and delivers great Git workflows and source diffs integrated with the editor.

But developers don't spend all their time just writing code: they go back and forth between coding and debugging. Debugging is the most popular feature in Visual Studio, and often the one feature from an IDE that developers want in a leaner coding experience. Visual Studio Code includes a streamlined, integrated debugging experience, with support for Node.js debugging in the Preview, and more to come later.

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.

We are, of course, still very early with Visual Studio Code. If you prefer a code editor-centric development tool, or are building cross-platform web and cloud applications, we invite you to try out the Visual Studio Code Preview, and let us know what you think!

Next Steps

Read on to find out about:

  • Code Basics - a quick orientation of VSCode
  • Editing Evolved - from code colorization & multi-cursor to IntelliSense
  • Debugging - OK time for the really fun stuff - break, step, watch

Microsoft announces Microsoft Edge

Today at Build 2015 in San Francisco, Microsoft announced its new Web browser called Microsoft Edge. This is the browser formerly known as Project Spartan.

Microsoft Edge, the new default browser will ship on all Windows 10 devices including PCs, tablets, smartphones, and Microsoft’s own tablet, Surface.

Microsoft Edge is the all-new Windows 10 browser built to give you a better web experience. Write directly on webpages and share your mark-ups with others. Read online articles free of distraction or use the offline reading feature for greater convenience. Microsoft Edge is the new browser that works the way you do.