One of the less appealing aspects of the twice-yearly Windows 10 feature updates is that they're slow to install and, for most of the installation process, your PC is out of commission, doing nothing more than displaying a progress indicator.

Thanks to a new upgrade process, the next update—expected to be released in April—should result in substantially less downtime. The install process is split into two portions: the "online" portion, during which your PC is still usable, and the "offline" portion after the reboot, during which your PC is a spinning percentage counter.

Microsoft estimates that the Creators Update, released almost a year ago, would take about 82 minutes on average during the offline phase. Improvements made in the Fall Creators Update cut that to about 51 minutes, and the next update (which still hasn't actually been blessed with an official name) will cut this further still, to just 30 minutes.

At GDC, Microsoft announced a new feature for DirectX 12: DirectX Raytracing (DXR). The new API offers hardware-accelerated raytracing to DirectX applications, ushering in a new era of games with more realistic lighting, shadows, and materials. One day, this technology could enable the kinds of photorealistic imagery that we've become accustomed to in Hollywood blockbusters.

Whatever GPU you have, whether it be Nvidia's monstrous $3,000 Titan V or the little integrated thing in your $35 Raspberry Pi, the basic principles are the same; indeed, while many aspects of GPUs have changed since 3D accelerators first emerged in the 1990s, they've all been based on a common principle: rasterization.

Here’s how things are done today

A 3D scene is made up of several elements: there are the 3D models, built from triangles with textures applied to each triangle; there are lights, illuminating the objects; and there's a viewport or camera, looking at the scene from a particular position. Essentially, in rasterization, the camera represents a raster pixel grid (hence, rasterization). For each triangle in the scene, the rasterization engine determines if the triangle overlaps each pixel. If it does, that triangle's color is applied to the pixel. The rasterization engine works from the furthermost triangles and moves closer to the camera, so if one triangle obscures another, the pixel will be colored first by the back triangle, then by the one in front of it.

This was due to the particularly invasive nature of the Meltdown fix: Microsoft found that certain antivirus products manipulated Windows' kernel memory in unsupported ways that would crash systems with the Meltdown fix applied. The registry entry was a way for antivirus software to positively affirm that it was compatible with the Meltdown fix; if that entry was absent, Windows assumed that incompatible antivirus software was installed and hence did not apply the security fix.

This put systems without any antivirus software at all in a strange position: they too lack the registry entries, so they'd be passed over for fixes, even though they don't, in fact, have any incompatible antivirus software.

According to a newly unsealed court filing, women at Microsoft who work in technical jobs filed 238 internal complaints pertaining to gender discrimination or sexual harassment from 2010 through 2016. The new document was first reported Monday evening by Reuters.

The figures were revealed as part of a proposed class-action lawsuit originally filed in 2015 (Moussouris v. Microsoft). The female plaintiffs argue that the company’s internal rating system discriminates against women and disfavors professional advancement for women.

Microsoft's switch to using Git as the version control system for Windows' development has resulted in many challenges. Git wasn't really built for a 300GB repository with 3.5 million files, and the engineering effort to make Git scale in this way continues.

But in adopting and developing what the company is calling One Engineering System (1ES), the Windows and Devices Group (WDG) has adopted more than just Git; the group has also adopted Visual Studio Team Services (VSTS), the company's source control, item tracking, integration and testing system, and with VSTS a more integrated, devops style approach to developing. Git is an important part of this but far from the whole story. Microsoft wrote today about some of its experiences using VSTS, including some of the problems the scale of the operation has caused.

The adoption of VSTS features and devops practices isn't uniform across WDG. Continuous integration and continuous delivery make sense for some parts of WDG—online services are an obvious example, and even some of the apps in the Microsoft Store could qualify—but they're less applicable to the core Windows operating system itself. Nonetheless, the company has worked to standardize practices that are common to every component.

Last month, leaked documents revealed that Microsoft would be making Windows 10 S, the restricted version of Windows 10 that can only run applications installed from the Microsoft Store, a mode of Windows rather than a separate version. That change is now official, and Joe Belfiore, corporate vice president for Windows, has provided further details on how S Mode will work in the future. It will be available to all desktop versions of Windows, and removing the 10 S restrictions will be free for all.

Currently, Windows 10 S is treated as a distinct Windows variant. Functionally, it's a specially pre-configured version of Windows 10 Pro, using existing Windows features to restrict it to only being able to use Store apps and to block certain built-in programs such as the command-line and PowerShell. Because of this close similarity to Windows 10 Pro, Microsoft has offered an upgrade from 10 S to 10 Pro for those who want to lift the restrictions. On some systems this upgrade has been offered for free (albeit only for a promotional period); on others, it's a $50 upgrade.

With the next major Windows Update, this is changing. Instead of a distinct Windows 10 S version, there will instead be an S Mode for Windows. This mode will apply all the same restrictions as 10 S, but it'll now be an option for all the Windows versions: not just Pro, but now also Home and Enterprise. Moreover, as a mode, removing the S restrictions will now be free, regardless of which version of Windows it's applied to.

Microsoft is busy prepping developers for the next big Windows 10 update, version 1803, and it is putting the focus on machine learning. Due in March or April this year, the new version will include a new machine-learning framework for using machine-learning models in Windows applications.

Until now, much of the machine-learning focus we've seen across the entire computer industry has been on cloud systems. Data sets are processed to build models, and these models can be used to recognize patterns. For example, an industrial system visually inspecting manufactured items for defects would train its model by processing images of known working and known defective items. The machine-learning system would learn what the good objects and bad objects look like and build a model. This model could then be used to examine images of newly made items, and it could then classify them as either likely working or likely defective.

The cloud focus has existed because building the models generally requires large data sets and substantial computing power. However, running the model to use it to classify data is much less demanding. That's not to say that it's necessarily trivial—running models against live video, for example, can still require multiple GPUs to perform acceptably—but it tends to be "PC scale" rather than "cloud scale."

The Surface Pro with LTE is set to become more widely available. Initially positioned and sold as a business-oriented device, Microsoft today opened the device up to consumers, with preorders starting today.

While business users have been able to buy the systems since last December, anyone preordering today still has a wait in store: the devices won't be shipping until May 1. Microsoft has two versions of the LTE device available to businesses; for $1,149, you get a Core i5 7300U, 4GB RAM, and 128GB storage, and for $1,449 you get the same processor with 8GB RAM and 256GB storage. In both cases, this is a $150 premium over the non-LTE versions. Currently, only the more expensive of the two appears to be available to preorder, though we would expect the other to materialize at some point. As with every Surface Pro, if you want a Type Cover keyboard or a Surface Pen, you'll have to pay extra.

We wouldn't expect to see much variety beyond these two configurations, however. In particular, there won't be an i7 version. The space where the modem would be contains a fan in the i7 units, so there simply isn't any room for LTE. And this means that the processors are still seventh generation—that is, dual-core, four-thread Kaby Lake chips instead of the four-core, eight-thread eighth-generation parts that are now current.

Enlarge/ The LLVM dragon logo, in honor of the dragon book. (credit: Apple)

Google's Chrome browser is now built using the Clang compiler on Windows. Previously built using the Microsoft C++ compiler, Google is now using the same compiler for Windows, macOS, Linux, and Android, and the switch makes Chrome arguably the first major software project to use Clang on Windows.

Chrome on macOS and Linux has long been built using the Clang compiler and the LLVM toolchain. The open source compiler is the compiler of choice on macOS, making it the natural option there, and it's also a first-class choice for Linux; though the venerable GCC is still the primary compiler choice on Linux, by using Clang instead, Google ensured that it has only one set of compiler quirks and oddities to work with rather than two.

But Chrome on Windows has instead used Microsoft's Visual C++ compiler. The Visual C++ compiler is the best-supported, most widely used compiler on Windows and, critically, is the compiler with the best support for Windows' wide range of debugging and diagnostic tools. The Visual Studio debugger is widely loved by the C++ community, and other tools, such as the WinDbg debugger (often used for analyzing crash dumps), are core parts of the Windows developer experience.

Cortana is coming to the Outlook email and calendar app for iOS and Android, according to The Verge. The publication cites sources "familiar with Microsoft's Outlook plans."

Microsoft is reportedly testing a feature internally that would allow users to verbally ask the virtual assistant Cortana to read their emails to them in both iOS and Android. This would be particularly useful for commuters who depend on Outlook for their email and who want to get caught up while driving into work.

Google Assistant does not offer similar functionality with Outlook. Siri, Apple's own digital assistant built into iOS, already does this, but not with the Outlook app. In most cases, you must use Apple's own Mail app to access these kinds of features.

]]>https://arstechnica.com/?p=1268031Teams, Microsoft’s Slack competitor, is about to become a whole lot more competitivehttp://feeds.arstechnica.com/~r/arstechnica/microsoft/~3/h0i4mJR5I34/
Wed, 28 Feb 2018 23:03:25 +0000https://arstechnica.com/?p=1267521

Enlarge/ Teams looks good, but it's unfortunate that its chat is quite bulky in a vertical direction. (credit: Microsoft)

Microsoft's IRC-like, Slack-like collaboration tool Teams looks likely to pick up a couple of key features that will make it much more competitive.

The first of these is guest access. Currently on Teams, every person within a chat room must have an account in an organization's Azure Active Directory. This makes working with outside collaborators awkward, as many of these may not have, and may not want, such an account. Guest access was announced last September, which would allow organizations to create Teams accounts using any email address rather than specifically requiring an Azure AD account; the feature is finally being rolled out next week. Organizations will have to explicitly enable it for their systems, but once they do, their Teams instance will support guest accounts.

The second big feature is freemium pricing. Slack has made great inroads by enticing organizations to use it for free, and once they're hooked, getting them to pay for longer history and richer features. Teams is currently tied to Office 365; even with the guest access feature, there must be at least one paid Office 365 account to create an instance. However, it looks like this is set to change, and perhaps sooner rather than later. Brad Sams at Petri reported on signs that Microsoft is going to offer a freemium version, with a basic product available for free and paid upgrades to access further features. Indications are that freemium users will need a Microsoft Account to use the service, though what other restrictions will be applied is as yet unknown.

On Tuesday morning, the nine justices of the Supreme Court put a legal theory from Microsoft to the test—that the company should not be forced to hand over data held abroad to the American government, even when served with a valid court order.

During oral arguments, the Department of Justice, by contrast, urged the court to compel Microsoft to hand over the data. The DOJ said that allowing Microsoft to refuse the order is tantamount to encouraging companies to keep particularly sensitive data overseas as a way to evade authorities.

Two liberal justices, Sonia Sotomayor and Ruth Bader Ginsburg, who have recently ruled on the side of privacy in the past, questioned whether the court should be stepping in. They said that the onus should be on Congress to regulate appropriately.

Microsoft released the first version of its quantum development kit and a new quantum computing programming language Q# last December. Today, the company has released an update that adds support for quantum development on macOS and Linux. Both the Q# language, and the company's quantum simulator, will run on these platforms in addition to Windows.

The new release of the simulator is much faster than the first release, with the company saying that it runs four to five times faster, especially on simulations with 20 or more qubits.

The quantum libraries and samples are now available under an open source license—the source to these was previously merely shared—enabling others to modify and extend them. Interoperability with existing libraries is also being improved: Microsoft is working on integrating Python support. On Windows, today's release includes a preview of the Python integration, which allows Q# programs to call Python code and vice versa.

One swallow doesn't make a summer, but the rollout of version 1709 suggests that Microsoft has found its rhythm for these updates. In response to a range of annoying problems around the deployment of version 1607, the company was very conservative with the release of version 1703. Microsoft uses a phased rollout scheme, initially pushing each update only to systems with hardware configurations known to be compatible and then expanding its availability to cover a greater and greater proportion of the Windows install base.

Version 1703 was only installed on around 75 percent of Windows 10 PCs when 1709 was released. 1709 has already passed that level, and we're still some weeks away from the release of 1803. Microsoft hasn't yet announced when that version will be released, but based on the releases of 1709 and 1703, we'd be very surprised to see it before around mid-April. The new version also doesn't yet have a name; we've hoped that Microsoft would just stick with version numbers (as the year-month version numbers are easy to understand and compare), but so far the company hasn't said anything on the matter.

LAS VEGAS—In just over four years as head of Xbox and executive vice president of gaming at Microsoft, Phil Spencer has overseen some tough times for the gaming brand. But he says one of the most difficult lessons he has learned in that time came after a company-hosted Game Developers Conference party that featured scantily clad women dancing on podiums.

That "unequivocally wrong, unequivocally sexist, unequivocally intolerable choice" led to justifiable public backlash, Spencer recalled at a keynote speech at the DICE Summit in Las Vegas this morning, which Ars attended. But, he said, the "internal backlash at my own company was almost harsher." Instead of sidestepping responsibility, Spencer said he "absorbed the hit" as a leader and used it as an opportunity to "bet on what we stood for... we don't tolerate any employee or partner that enables or offends others... we stand for inclusivity."

Doing better

This sort of internal cultural transformation has been a deliberate focus for Microsoft since Satya Nadella became the company's third-ever CEO roughly four years ago, Spencer said. That company-wide "reboot" was especially necessary in the Xbox group, which Spencer admits was in a "world of pain" since "we hadn't done our best work with the announce[ment] of the Xbox One. The product we built wasn't meeting the expectations of our customers, market share was taking a nosedive, and it was painful to read all the headlines."

Always Connected Windows 10 PCs that use Qualcomm's Snapdragon 835 ARM processors will work on all four major US networks, the chip company has announced today, with T-Mobile and AT&T joining the previously announced Sprint and Verizon.

In total, 14 different network operators across 10 countries have pledged to support the new generation of ARM-powered Windows 10 laptops and tablets. Qualcomm adds that some of those network operators will also be selling the systems, though it has not specified which will be doing so.

As spotted by Paul Thurrott, Microsoft briefly published a document that enumerated the major differences between Windows 10 for ARM processors and Windows 10 for x86 chips. Though the document has now been removed, a cached copy is still available, and the original source is still found on Microsoft's documentation GitHub repository.

Many of the differences are predictable consequences of the different architecture. Windows 10 for ARM is a 64-bit ARM operating system. It can natively run both 32-bit and 64-bit ARM applications (though the SDK for the latter is currently, and temporarily, incomplete). As such, drivers for the operating system need to be 64-bit ARM drivers; existing 32- and 64-bit x86 drivers won't work.

This isn't a surprise; 64-bit x86 Windows can't use 32-bit drivers, either, even though 64-bit Windows can generally run 32-bit applications without even requiring any kind of emulation. This will mean that ARM Windows has limited hardware support relative to x86. It will also pose a problem for some games that use drivers for their copy protection.

Microsoft's first x86 PC, then known as the Surface with Windows 8 Pro, hit the market five years ago. The first version was a little strange—a bit too big for a tablet, a bit too small for a laptop—but with its third iteration, the Surface Pro 3, Microsoft's hardware hit its stride. From its first version, the device was an x86 tablet with an integrated kickstand and a detachable keyboard, but the third version changed the screen resolution to 12 inches with a 3:2 aspect ratio (up from 10.6 inches and 16:9) and used a kickstand that could be set to any position from about 20 degrees to 150 degrees.

This third version of Surface Pro spawned a number of copycats from companies like Samsung, Dell, and HP, and arguably it made Microsoft's concept—the laptop-like tablet—a permanent fixture of the PC landscape.

To celebrate this fifth anniversary, Microsoft is offering $200 off two configurations of the current model Surface Pro. The Core i5 with 128GB SSD and 4GB RAM is available for $799, and the Core i5 with 256GB SSD and 8GB RAM is $1,099.

Microsoft is offering a compiler-level change for Spectre. The "Spectre" label actually covers two different attacks. The one that Microsoft's compiler is addressing, known as "variant 1," concerns checking the size of an array: before accessing the Nth element of an array, code should check that the array has at least N elements in it. Programmers using languages like C and C++ often have to write these checks explicitly. Other languages, like JavaScript and Java, perform them automatically. Either way, the test has to be done; attempts to access array members that don't exist are a whole class of bugs all on their own.