Monthly Archive:: June 2016

Warren slams tech companies for anticompetitive practices

Warren had different beefs with Google, Apple and Amazon, but the common thread was that she accused each one of using its powerful platform to "lock out smaller guys and newer guys," including some that compete with Google, Apple and Amazon.

Google, she said, uses "its dominant search engine to harm rivals of its Google Plus user review feature;" Apple "has placed conditions on its rivals that make it difficult for them to offer competitive streaming services" that compete with Apple Music; and Amazon "uses its position as the dominant bookseller to steer consumers to books published by Amazon to the detriment of other publishers."

"Google, Apple and Amazon have created disruptive technologies that changed the world, and ... they deserve to be highly profitable and successful," Warren said. "But the opportunity to compete must remain open for new entrants and smaller competitors that want their chance to change the world again."

Before we start, I strongly urge you to watch Warren's actual speech, instead of just reading the linked article. Warren explains clearly why the extreme consolidation and monopolisation in all manner of sectors in America is absolutely terrible for consumers, killing competition, dampening innovation, and maintaining high prices.

Obviously, this entire speech is music to my ears. Warren is the obvious - and effectively inevitable - VP pick for Democratic nominee Hillary Clinton, meaning that if she were to beat the Republican nominee come November, the United States will have a Europe-style democratic socialist as vice-president. Obviously, this has the monopolistic US companies and their corporate cheerleaders shaking in their boots.

Thanks to the unexpectedly successful Sanders campaign, Clinton is effectively forced to pick Sanders' friend and ideological compeer as her VP, directly threatening the free ride these companies have been getting for decades since the Reagan years, perpetuated by both Republicans and Democrats ever since. It won't be immediate - the VP position is more of a mindshare podium than one of policy-making - but it represents a huge shift in how the United States government and its politics treat the business world.

There's a reason Tim Cook is raising money for Paul Ryan.

Google is actively breaking my Android workflow

Speaking of software sucks, take a look at this screenshot of Chrome for Android. Do you notice something out of the ordinary? While you look, let me give you a little history.

Way back when Android Lollipop was released, Google introduced a feature called "merge tabs and apps" and enabled it by default for all Lollipop users. Basically, what it did was turn individual Chrome tabs into application windows in Android's application switcher. If you have an understanding of how Android works, this makes perfect sense; this turns tabs into full citizens of the Android application and intents workflow.

Starting with - I think? - Android Marshmallow, Google turned the feature off, but kept it as an option in Google Chrome, so that those of us that liked it could turn it back on. Obviously, this was the first thing I always turned on when setting up any new Android device; it just makes sense from an Android perspective. It smooths out the workflow, and makes sure that tab management becomes a thing of the past; they are discarded just like other Android applications.

Sadly, starting with Chrome 51, released a few weeks ago, the Android or Chrome or whatever team decided to remove the option altogether. The release notes stated:

When Android Lollipop was released last year, we moved Chrome tabs to live alongside apps in Android’s Overview app switcher. Our goal was to make it easier for you to switch between your open apps and websites. However, we heard from many of you that you could not find the tabs you created. This was especially difficult on phones that do not have a dedicated Overview button. While considering how to make Chrome work better for everyone, we brought the tab switcher back into Chrome so you can find your Chrome tabs in a single place. Look for a new way to manage your open tabs in coming releases.

This single change has thoroughly ruined the way I use my phone. I now have upwards of 60 - and growing - "open" tabs, because the Chrome team wants me to manually keep track of and close every individual tab that gets opened while using Twitter, Facebook, WhatsApp, and other applications. I now have to keep track of not only running applications in the switcher, but also open tabs in the tab switcher, the latter of which can only be opened with a button in Chrome all the way at the top of my ginormous Nexus 6P display. The tab switcher itself, meanwhile, is a finicky clusterfuck of imprecise swipes and physics nonsense, making it all incredibly frustrating to use.

Update: this paragraph was added later as clarification. In addition, if you tapped on a link in, say, Fenix (Twitter) and read the website in the tab and then pressed back, said tab was automatically closed. This automatic closing of tabs with the back button does not happen with the inferior new method, hence the asinine clutter build-up.

Trying to switch to a specific tab I may have opened earlier in the day is an exercise in frustration now, since instead of just opening the application switcher and finding it a few swipes up (I don't use many applications), I now have to first find Chrome or launch it from my homescreen, find the tab switcher button all the way at the top, count to ten as I try to use the asinine tab switcher, and then hope I can find it somewhere among the more than 60 - and growing - "open" tabs and UI input lag caused by having to render all these tabs in that weird 3D space.

As someone who keeps track of world news, things like UEFA Euro 2016, technology news, and so on, all throughout the day, I end up with countless interesting tabs that get opened on Twitter, other social media, instant messenger, and so on. The Chrome team has actively decided to break my workflow, and there's no way for me to get it back - probably just because instead of looking at the how or why, they just looked at their precious, precious user data, and called it a day.

Looking to the future, with (freeform) windowing coming to Android, the change makes even less sense. Having tabs as part of the regular application switcher surely makes sense from a multitasking and multiwindow perspective, automatically giving Android users the ability to have multiple tabs side-by-side, in a way that is consistent with using other applications side-by-side. How are they going to implement this now? Will Android users have to deal with multiple Chrome windows, each with their own tab switcher? Where do tabs of closed windows go? What madness is this?

I find solace in that I'm not alone. Countless friends have expressed their hatred for the removal of merge tabs and apps (I've seen some of my programmer friends with well north of 100 "open" tabs), and the Chrome for Android reviews in the Play Store are riddled with angry one-star reviews. Google's forums, too, are filled with angry users. I'm hoping the angry comments and one-star reviews will make the Chrome team reconsider and bring back the option to merge tabs and apps, the Only True Android Wayâ„¢ to manage tabs.

I'm sure tons of people here will consider this whining, but imagine if you're a programmer, and someone randomly took away your ability to insert tabs, forcing you to use spaces instead (or vice versa). That twitch you feel? That's us right now, every time we use Android.

For the first time in my life, I actually rated an application on an application store. Guess how many "stars" (why is it always stars?) I gave to Chrome for Android.

Microsoft restores function of ‘X’ button on window

Microsoft officials said late on June 27 that the new update experience -- with clearer "upgrade now, schedule a time, or decline the free offer" - will start rolling out this week. Microsoft will also revert to making clicking on the red X at the corner of the Windows 10 update box dismiss the update, rather than initiate it, as it has done for the past several weeks.

If you had told me only a few months ago that Microsoft would be putting out a press statement extolling how it made sure that the close button on a window frame actually closed the window instead of initiating something crappy people don't want, I'd have called you crazy.

Why do we let software makers get away with producing crap? Why does software suck so much?

Microsoft draws flak for pushing Windows 10 on PC users

A few days after Microsoft released Windows 10 to the public last year, Teri Goldstein's computer started trying to download and install the new operating system.

The update, which she says she didn't authorize, failed. Instead, the computer she uses to run her Sausalito, Calif., travel-agency business slowed to a crawl. It would crash, she says, and be unusable for days at a time.

"I had never heard of Windows 10," Goldstein said. "Nobody ever asked me if I wanted to update."

When outreach to Microsoft's customer support didn’t fix the issue, Goldstein took the software giant to court, seeking compensation for lost wages and the cost of a new computer.

She won. Last month, Microsoft dropped an appeal and Goldstein collected a $10,000 judgment from the company.

We accept so much crap from software makers, so it feels good if someone manages to get back at them for the terrible quality of software in general.

Announcing .NET Core 1.0

We are excited to announce the release of .NET Core 1.0, ASP.NET Core 1.0 and Entity Framework 1.0, available on Windows, OS X and Linux! .NET Core is a cross-platform, open source, and modular .NET platform for creating modern web apps, microservices, libraries and console applications.

This release includes the .NET Core runtime, libraries and tools and the ASP.NET Core libraries. We are also releasing Visual Studio and Visual Studio Code extensions that enable you to create .NET Core projects. You can get started at https://dot.net/core. Read the release notes for detailed release information.

Dolphin 5.0 released

The long awaited Dolphin 5.0 release is finally here! After nearly a year of bug-hunting and handling the release process, everything has come together for our biggest release yet! The three previous releases followed a very distinct pattern: sacrifice performance, hacks, and features in exchange for higher accuracy. As such, Dolphin 3.0, 3.5, and 4.0 progressively grew slower. But thanks to the cleanups put forward throughout those releases, Dolphin 5.0 is the fastest Dolphin has ever been! By removing all of those hacks and outdated features while cleaning up the codebase, Dolphin has reached a new level of efficiency, powered by a revitalized dynamic recompiler. On the GPU side, OpenGL and D3D11 have seen tons of optimizations and accuracy improvements, and have been joined by a brand new D3D12 backend for huge performance gains. If there's a CPU or GPU extension that can make Dolphin faster, we take advantage of it.

Dolphin is an incredibly impressive project - not just from a technological standpoint, but also from an organisation one. They post regular, detailed development updates, have in-depth release notes that are still entirely readable for laypersons such as myself, and you always learn a ton of new stuff following the project's progress.

A great example of how to run a project like this. Don't forget to check out the release video with tons of side-by-side examples of the long list of improvements.

macOS Sierra developer preview: different name, same ol’ Mac

It's tempting to read the "macOS" rebranding as some grand statement about the Mac, but, truth be told, "Sierra" is more indicative of what we're getting. The name comes from a mountain range that encompasses Yosemite and El Capitan rather than moving away from them. It's another year of building on Yosemite's foundation, another year of incremental change, and another year of over-saturated mountain wallpapers.

Like El Capitan before it, Sierra focuses on a few marquee features, a couple of under-the-hood changes, a smattering of smaller tweaks, and one or two signposts pointing toward future development. It's the next release of OS X, new name or not. And we've spent a week with the first developer beta to dig into some of the new features ahead of the public beta in July and the public release in the fall.

Insights into the developer preview.

Huawei is working on its own mobile OS

Huawei, the world's third-largest smartphone manufacturer, is reportedly developing its own mobile OS. Phones made by the Chinese manufacturer currently run on the company's Android skin, EMUI, but according to a report from The Information Huawei is building an alternative OS in case its relationship with Google sours.

The company reportedly has a team working on the mobile OS in Scandinavia, with the engineers including ex-Nokia employees. But although Huawei isn't the only Android phone maker exploring alternatives (Samsung has its own Linux-based Tizen OS, although that's mainly been deployed in IoT devices so far), sources speaking to The Information say the company's operating system "isn't far along."

That ship has sailed. It's probably in Fiji by now.

‘Gruber misses the point completely about Lightning headphones’

After Nilay Patel's strong piece and John Gruber's meager response, here's another one by Steve Streza:

John can argue all he wants that this is all somehow in the best interest of customers by virtue of it being great business for Apple, but it simply isn’t true. It also won’t be a hill that many customers will die on at the point of sale. People will not buy into Lightning headphones, they will put up with it. This transition will be painful and difficult because of just how thoroughly entrenched the current solution is, how little the new solution offers, and how many complications it adds for customers. Nilay is correct, it is user-hostile, and it is stupid.

But hey, it’s great for Apple.

I have very little to add here, other than dongle, and a plea: can somebody finally give me a valid reason for removing the 3.5mm jack? I've heard nonsense about waterproofing (can be done just fine with 3.5mm jack), battery life (negligible, unlikely because of the location of the assembly, entirely and utterly eclipsed by making the battery like 0.5mm thicker), cost (...seriously? That's the best you can do?), or thinness (oh come on, the iPhone 6S is 7.1mm thick - it will take a miracle for the iPhone 7 or even 8 or 9 to be thinner than 3.5mm).

Anyone?

As far as I can tell, there are only downsides.

Taking the headphone jack off phones is user-hostile and stupid

Another day, another rumor that Apple is going to ditch the headphone jack on the next iPhone in favor of sending out audio over Lightning. Or another phone beats Apple to the punch by ditching the headphone jack in favor of passing out audio over USB-C. What exciting times for phones! We're so out of ideas that actively making them shittier and more user-hostile is the only innovation left.

Tell us how you really feel, Nilay.

Needless to say - fully agreed. Removing the headphone jack is dumb.

The Xerox Star

Speaking of the Xerox Alto - let's move on a few years and talk about the Xerox Star, its successor and, like the Alto, one of the most influential computers ever made. There's this great demo up on YouTube, where some of its creators walk you through the basics of using the Xerox Star, from basic filing, down to the included virtual keyboard which could display any keyboard layout you wanted - including things like Japanese or a math panel.

I love watching videos of the Xerox Star in action, because it shows you just how little the basic concepts of the graphical user interfaces we use every day - OS X/Windows or iOS/Android or whatever - have changed since the '70s, when Xerox invented all the basic parts of it. Of course, it has been refined over the decades, but the basic structure and most important elements have changed little.

Like still relying on shoehorning a timesharing punchcard mainframe operating system onto a phone, we still rely on the same old Xerox concepts of icons and windows and dialogs on our phones as well. Hardware has progressed at an incredibly pace - we have watches tons more powerful than 100 Xerox Stars combined - but software, including UI, has not kept up.

We should have better by now.

APFS in detail

Apple announced a new file system that will make its way into all of its OS variants (macOS, tvOS, iOS, watchOS) in the coming years. Media coverage to this point has been mostly breathless elongations of Apple’s developer documentation. With a dearth of detail I decided to attend the presentation and Q&A with the APFS team at WWDC. Dominic Giampaolo and Eric Tamura, two members of the APFS team, gave an overview to a packed room; along with other members of the team, they patiently answered questions later in the day. With those data points and some first hand usage I wanted to provide an overview and analysis both as a user of Apple-ecosystem products and as a long-time operating system and file system developer.

An incredibly detailed look at Apple's new filesystem, APFS.

Xerox Alto: restoring the legendary 1970s GUI computer

Alan Kay recently loaned his 1970's Xerox Alto to Y Combinator and I'm helping with the restoration of this legendary system. The Alto was the first computer designed around a graphical user interface and introduced Ethernet and the laser printer to the world. The Alto also was one of the first object-oriented systems, supporting the Mesa and Smalltalk languages. The Alto was truly revolutionary when it came out in 1973, designed by computer pioneer Chuck Thacker.

This is just great. All-around great. No possible way to snark, be cynical, blame it on Android updates or iOS walled gardens - just plain old great. Be sure to watch the introductory video, and definitely don't forget part one of the restoration, with more sure to follow.

Goosebumps the entire time. I would give a lot to be in that room.

What is differential privacy?

To make a long story short, it sounds like Apple is going to be collecting a lot more data from your phone. They're mainly doing this to make their services better, not to collect individual users' usage habits. To guarantee this, Apple intends to apply sophisticated statistical techniques to ensure that this aggregate data - the statistical functions it computes over all your information - don't leak your individual contributions. In principle this sounds pretty good. But of course, the devil is always in the details.

While we don't have those details, this seems like a good time to at least talk a bit about what Differential Privacy is, how it can be achieved, and what it could mean for Apple - and for your iPhone.

“Android’s 10ms problem solved”

Our testing, technical analyses and audio latency measurement database of more than 4,238 different Android models/builds shows that Google has been making great progress in order to solve the Android round-trip audio latency problem, however progress seems to be slowing as the current media server internals are not likely to be hacked much further unless fundamental changes should happen. To date, we have seen no improvements with Android N with regards to audio latency.

We receive emails from all around the world, almost on a daily basis, where developers beg us for a solution to Android Audio's 10 ms Problem. Which is why we're proud to announce a solution to Android Audio 10ms Problem, which you can install and demo today.

Few regular users will ever care, but for those users that do need low audio latency for music/audio creation applications, this is a godsend.

ARM announces Mali Egil video processor

Earlier this month we took a look at ARM’s new Mali-G71 GPU. Based on the company's equally new Bifrost architecture, Mali-G71 marks a significant architectural change for the Mali family, incorporating a modern thread level parallelism (TLP) centric execution design. The Mali GPU is in turn the heart of ARM’s graphics product stack - what ARM calls their Mali Multimedia Suite - but in practice it is not a complete graphics and display solution on its own.

As part of their IP development process and to allow SoC integrators to mix and match different blocks, the Mali GPU is only the compute/rendering portion of the graphics stack; the display controller and video encode/decode processor are separate. Splitting up these blocks in this fashion gives ARM's customers some additional flexibility, allowing something like Mali-G71 to be mixed with other existing controllers (be it ARM or otherwise), but at the same time these parts aren't wholly divorced within ARM. Even though they’re separate products, ARM likes to update all of the parts of their graphics stack in relative lockstep. To that end, with the Mali GPU core update behind them, this week ARM is announcing an updated video processor, codenamed Egil, to replace the current Mali-V550 processor.

AnandTech takes a first look at what's coming.

Qt 5.7 released

I'm very happy to announce that Qt 5.7 is now available. It's been only 3 months since we released Qt 5.6, so one might expect a rather small release with Qt 5.7. But apart from the usual bug fixes and performance improvements, we have managed to add a whole bunch of new things to this release.

ZFS: Apple’s new filesystem that wasn’t

At that same WWDC Apple announced Time Machine, a product that would record file system versions through time for backup and recovery. How were they doing this? We were energized by the idea that there might be another piece of adopted Solaris technology. When we launched Solaris 10, DTrace shared the marquee with ZFS, a new filesystem that was to become the standard against which other filesystems are compared. Key among the many features of ZFS were snapshots that made it simple to capture the state of a filesystem, send the changes around, recover data, etc. Time Machine looked for all the world like a GUI on ZFS (indeed the GUI that we had imagined but knew to be well beyond the capabilities of Sun).

Of course Time Machine had nothing to do with ZFS. After the keynote we rushed to an Apple engineer we knew. With shame in his voice he admitted that it was really just a bunch of hard links to directories. For those who don’t know a symlink from a symtab this is the moral equivalent of using newspaper as insulation: it's fine until the completely anticipated calamity destroys everything you hold dear.

So there was no ZFS in Mac OS X, at least not yet.

Somewhat related: the history of Microsoft's WinFS.