<p>Hello everyone, I'm was just wondering how often Linux systems are used in industry. Not just for software engineers but for other kinds as well. I ask this because my cousin is a Field Engineer with a BS in MechE, and about a week ago he had to learn Linux at a moment's notice b/c the system he is working with runs on it. Any answers are appreciated.</p>
<p>First of all, what does “learn Linux” mean? Modern Linux systems are very user-friendly, and KDE is, IMO and in the opinion of many others, a better and more user-friendly GUI environment than Windows’ and Macs’. You almost never <em>have</em> to use a command-line interface if you don’t want to. I run Mageia and I can point and click my way through pretty much everything I need to do: install software, drivers, run programs, change system settings, etc.</p>
<p>The big exception to that is software development, I regularly use the CLI when programming on Linux. If “learning Linux” means learning how to write programs that run on Linux then it depends on what you mean, but if you just mean using the OS and maybe some command line stuff and system administration stuff, that’s not hard and can be learned quickly.</p>
<p>Linux and UNIX are used a lot in industry. They are used less often in cases where a desktop or laptop computer is used for office work, for that Windows with Excel, Word, PowerPoint, etc. are still king, although many budget-constrained governments world-wide have switched to Linux and free office software for officing.</p>
<p>In any given organization you may find a variety of OSes being used. Let’s take a company like Sony. The receptionists, managers, and assorted office people probably use Windows, the engineers likely use Windows, Mac, and Linux on their own laptops and desktops while there may be both Windows and Linux networks for the engineers to log onto (from the same systems). Linux is HUGE in the server/mainframe business so the IT people, the people who run the machines that host the business’s networks and web sites, see Linux a lot.</p>
<p>Take a company like Pixar. Probably all Mac and Linux there, Mac and Linux for creating art and programming in-house software, Linux for the rendering farms, Macs for the sound and editing people.</p>
<p>Take a power company. Probably Linux or some form of non-Mac UNIX or VMS running the infrastructure, with engineers working on both Windows and Linux.</p>
<p>Long story short, you are likely to see certain OSes in domains where those OSes have strengths. For example, Window’s big strength is the huge level of software support on the laptop and desktop level for officing (among others), so people in offices tend to use Windows exclusively. Linux’s big strength is scalability (you can put it on supercomputers or on mobile phones and toasters) and stability (if you are running a nuclear power plant you need software that doesn’t crash or freeze up all the time like Windows does) and speed, so you see it in lots of places, from game consoles to mainframes to mobile phones (Android is a Linux-based OS) and also on servers and anywhere that serious performance is needed. Mac is well supported in art/design/sound/editing software.</p>
<p>Our entertainment products run some variety of Linux or another. We develop on VMware virtual workstations running some variety of Ubuntu. Once every few weeks the Image Dude comes up with a new VM image, we download, and are all set. All the tools we use, utilities, config, etc are baked into the image by Image Dude. Zero productivity loss (Image Dude is very popular).</p>
<p>Some of us use Eclipse, and some tough it out with Emacs or VIM. Board Support Dude provides the hardware interfaces all baked in (he’s friend of Image Dude). We configure our source to run either on the host (i.e. native x86 Ubuntu) or the real thing. Any important configs are added by LTIB Dude. Finally, important operating system calls like messaging are done via libraries from Hardware Abstraction Layer Dude.</p>
<p>I’ve programmed a bunch of OS’s for real time (Windows CE, QNX, eCOS, Linux, and others) and Linux is post-fraternity-party-stupor-haze-easy-to-program. By the time the four Dudes are done, all we have is TONS of portable application software to write, but at that point it is as easy as writing Linux C++ code, totally trivial. </p>
<p>One comment about nukular power plants and they like. Many run QNX, as it is pretty solid. A bit of a pain to use but solid. Good stuff. </p>
<p>We run Linux on VM’s because we need the PC’s to run Office type applications, and also instrumentation software to talk to our products. Industrial Design runs Mac’s.</p>
<p>To clarify when I say “learn Linux”, I meant Bash scripting and other systems tasks.</p>
<p>For a moment you had us worried it depends on the expertise the person already has. If he/she knows basic scripting on Windows or similar, it’s simple enough. Couple weeks for basic stuff. The problem is that on Linux, scripts are used to ‘glue together’ many different programs so that a script may call program A, which calls B, which does something then calls C, etc. And in order to fix things you need to know A, B, and C.</p>
<p>Wild guess, a few weeks to get comfortable, months to get good at it, years to do the real esoteric stuff.</p>
<p>I’m under the impression that most recent engineering grads would have had exposure to Linux. (DS has dual boot, often uses Linux.) It will be interesting to read feedback.</p>
<p>@HyperionOmega</p>
<p>It will be helpful to know what application is used.</p>
<p>I will take a guess. Most computing grids or batch systems use shell script as part of submission script. They all have roots in Unix/Linux. It is also easier to administer in headless configuration. Those are some reasons reasons Linux is common in this configuration. It is cheaper. You can easily see the difference when you compare the cloud provider pricing. It adds up when you talk about large number. Many of us who need to work on Linux just use a Mac. They are pretty much interchangeable.</p>
<p>@HyperionOmega,</p>
<p>Linux is used quite extensively for a variety of purposes. You should probably go to aws.amazon.com and read through the various whitepapers, case studies, etc. to see how it is used. As far as Linux shells and scripting is concerned, Linux sysadmins use them quite extensively. Various others use them on an as-needed basis, such as when they need to automate tasks.</p>