Sunday, March 23, 2014

The rise of Linux

The Downfall of Windows (xP)

So I just read (or re-read) some news about ISS laptops being changed to Linux last year (2013) as Windows XP nears its EOL in April this year with no more security or technical updates. With Windows 8 being hard to use and the UI being unfamiliar, that's prompted me to write this post instead of sneaking it in a section within another post like I normally do =P
By the way, all those Windows XP users, it's a great time to switch to Ubuntu 14.04 LTS, since Win 8 users will have to familiarise themselves with a new UI anyway. WinXP/7 users would probably want to use Kubuntu/Xubuntu to have a familiar desktop environment (you can set the UI up to be almost exactly like Win XP/7). You want LTS versions because they're supported for 5 years, although you're free to upgrade to different versions anytime when they're out. (LTS versions happen every 2 years, and non-LTS versions are supported for 9 months now, instead of 18 months previously.)

The adoption of Linux in the world

So why use Linux anyway?
  • It's free - as in financially and in the sense of free speech. You can freely modify and customise it to suit your needs and use it however you like!
  • It's stable and reliable - updates and patches happen quickly as it's open sourced, and won't fall into the traps of things like the Mac OS/iOS SSL bug. Security by obscurity is wrong in an OS context.
  • It's efficient - My Linux (Kubuntu 12.04) is pretty fast and does things faster than my Windows 7 HP 64bit, even with KDE, which is a relatively intense DE compared with things like XFCE and GNOME/forks.

In Science:

Used by people and places like:
Experiment Platforms
-MSL (Curiosity Rover)
-ISS (probably almost everything since the move to Linux on desktop laptops).

Linux in Space

United Space Alliance, a NASA contractor that supports the laptops on the ISS used the Linux Foundation to train their devs to migrate and port apps over to Linux.
Apparently they have over 140 laptops with 80 online at any time; they chose Debian 6, it being Google's choice of distribution too. They also have Scientific Linux and RHEL/CentOS on some computers already on the ISS. Robonaut R2 uses it and the ISS has used it since Linux started, but rarely on the desktop PCs.
We migrated key functions from Windows to Linux because we needed an operating system that was stable and reliable — one that would give us in-house control. So if we needed to patch, adjust, or adapt, we could.
ZING! Apparently they have faced a few random crashes (probably BSODs lol) and in 2008 had some virus infect the ISS LAN.

Consumer Devices:

Android (kernels are being merged, and hopefully completely in a few years)
Tesla Model S

So why is adoption important at all? I think it's especially important in gaming where the catch 22 can clearly be seen - 'everyone' uses Windows to game, so game devs only build for Windows and so 'everyone' has to use Windows to game. So when devs have this alternate option instead of being locked into Windows (and perhaps DirectX), they can build for it and the Linux gaming community can back them and get rid of this catch 22 problem. Things like the humble bundle clearly show the Linux community is ready to throw money at devs who make games for Linux.

In Gaming:

Wow, GDC 2014 just prompted announcements of Linux support everywhere!
And look, someone else did a great article about the rise of Linux gaming! =)
While Phoronix downplays (or is disappointed by) the interest in Linux at GDC, it's a great improvement, from having 0 Linux announcements at GDC to having a Linux presence with SteamOS, CRYENGINE, AMD, etc. Valve's SteamOS and Steam for Linux official release announcements were only last year, so AAA devs haven't had time to announce and demo Linux games at GDC yet - but we've already seen heaps of indies get onboard. Like a Phoronix forum user said:
We have gone from "it would be cool to have a game on Linux" to "omg the next-gen CryEngine with its OpenGL 4.3 renderer might not be perfectly ported".
Game Engines: Unity,
Unreal (announced 19/3!),
CRYENGINE (dev tools, CrySDK coming to Linux),
Source & Source 2,
Leadwerks (and the editor/IDE is on Linux thru Kickstarter too!)

Game Publishers: Steam On Linux (on a sidenote, Valve wants to move from Greenlight to a more easy self-publishing system where any dev can post something),
Desura, (announced 18/3) 

SteamOS, Ouya/Android, Oculus Rift

Games & Devs: Steam Library Catalogue, Upcoming games on Steam,
Devs liking OpenGL and freedom of Linux and hating Windows restrictions.
Recent announcements of games on the PC usually announce on Linux in addition to Windows.
GabeN also said devs like Linux! =)

Valve: check out these awesome vids at Steam Dev Days 2014 (where there are a whole lot more Linux and VR related stuff including):
Getting started on Linux (incl Myth-busting),
Valve seriously supporting and working on moving to OpenGL exclusively,
Modern OpenGL reducing Driver Overhead (by nVidia which looks like their portion of the GDC talk below).

Vendors: nVidia, AMD, Intel @ GDC "Approaching Zero Driver Overhead", nVidia sponsored video posted in the future. There'll probably be more news from them with the GPU tech conference in the next few days as well.
AMD plans to open-source kernel space driver support, while keeping user-space binaries for their Catalyst driver (so they can keep their "secret-sauce" optimisations away from prying eyes of nVidia). AMD roadmap/info summary from GDC here; I'm not feeling as much love as I was hoping, but tbh I mostly just care about GFX performance and that means high performing nVidia drivers, even if they're binary blobs. 

On a related note, check out all the awesome vids from Steam Dev Days (click for PDFs, etc.)! They have at least 4 talks related to Linux and OpenGL (including debugging hehe)!

Updated: 24/3 to include links to latest Phoronix wrap-up articles. 

No comments:

Post a Comment