This Linux Life
- How Linux Happened
- 1969, Ken Thompson and Dennis Ritchie from AT&T Bell Laboratories created UNIX in C. Proprietary, redistribution was restricted, not free.
- 1983, Richard Stallman started the GNU project with the goal of creating a free UNIX-like operating system. The OS failed, but tools like the GNU Compiler Collection (GNU GCC) made Linux possible. Stallman is referred to as the father of the Free Software Movement and is author of the GNU General Public License (GPL).
- 1987, MINIX was created by a Professor named Andrew S. Tanenbaum to accompany his textbook, Operating Systems: Design and Implementation and it worked on PCs. The source code was available, but modifications were prohibited and redistribution was restricted.
- 1991, Linus Torvalds wanted a UNIX OS for PC, so he used MINIX and the GNU C compiler to build what would become Linux. He announced his project in a Usenet posting to the "comp.os.minix" newsgroup in August 1991.
- Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat.
I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)
PS. Yes – it's free of any minix code and has a multi-threaded fs.
- Come To Jesus
- 1980's. Standalone PC applications on MSDOS. Database applications packages like dBase iii from Ashton-Tate, Clipper and Paradox from Borland. Turbo Pascal was the application language of the day and WordStar was the bomb!
- 1993. Internet services included Gopher, WAIS and Web Pages. Internet Development was on UNIX. My desktop OS was UnixWare and my server was an IBM AIX/6000. Mosaic browser was on the cover of PC Week in June of that year and things went nuts.
- 1995. Web Development starts migrating to the PC and to Linux. I was doing web development on Linux-based Red Hat. Most coding done in PHP and Perl. miniSQL was on the back end.
- 1996. Microsoft gets into the game with Active Server Pages (server-side scripting language patterned after BASIC), releases IIS web server, a development IDE called InterDev, buys the codebase of Sybase SQL Server to become MS SQL Server and we've got ourselves a ball game!
- 2012. Crossroads
- Mind-blowing number of opportunities for developers outside of the Microsoft stack
- Tech is change, but change according to Microsoft? Anyone looking for a COM+ expert?
- All In with Open Source
- $10,000 MSFT in 1999 = $10,000 MSFT in 2012
- Then This Happened
- This Developer's Linux Life
- This Everyday Linux Life
- Linux is the Freedom to Choose
- Many Linux Distributions, all sharing the same Linux Kernel with a collection of software in the form of packages based on the distribution's package management system.
- Three Primary Distributions [simple] [nuts version]
- Top Linux Distributions
Ubuntu is probably the most well-known Linux distribution. Development of Ubuntu is led by Canonical Ltd., a company owned by South African entrepreneur Mark Shuttleworth. Canonical generates revenue through the sale of technical support and other services related to Ubuntu.
Ubuntu is based on Debian. It offers releases every six months, with a LTS release with 5 year support every two years. Canonical is currently working on expanding the Ubuntu distribution to run on smartphones and tablets.
- Linux Mint
Mint is a Linux distribution built on top of Ubuntu. It uses Ubuntu’s software repositories, so the same packages are available on both. This distribution has its own identity, with more traditional Cinnamon or MATE desktop versions rather than Ubuntu's Unity Desktop.
Debian is an operating system composed only of free, open-source software. The Debian project has been operating since 1993. It’s known for moving much more slowly with new releases than distributions like Ubuntu or Linux Mint, but uses a "rolling release" model not requiring reloading the OS.
- CentOS / Red Hat Enterprise Linux
- openSUSE / SUSE Linux Enterprise
- Arch Linux
Arch Linux is more old school than many of the other Linux distributions here. It’s designed to be flexible, lightweight, minimal, and to “Keep it Simple.” That means Arch dispenses with all of the GUI stuff so you can configure your system and install the software you like.
- Elementary OS
- Package Manager Differences
- Software packages are available online in repositories stored on various servers around the world
- Debian (Ubuntu, Mint, Elementary) - Advanced Packaging Tool (APT). Works with .deb files
- Red Hat (Fedora, Mandriva, etc.) - YellowDog Updater, Modified (YUM). Works with .rpm files (Red Hat Package Manager)
- Slackware and Arch - Command Line, baby!
- APT [pic] [pic] [pic]
- Other Components That Define a Linux Distribution
- The Grub boot loader
- The Kernel
- Daemons, or background processes, often starting as part of the boot process
- Shell command processor interface (bash, csh, ziki, etc) and shell utilities (cp, ls, etc.) from the GNU Core Utilities package
- X.org Graphical Window Server which interfaces with your video card, monitor, mouse, and other devices. X.org is the graphical system that desktop environments and toolkits can build on top of. Wayland is being developed by several X.Org developers as a prospective replacement for X. Canonical, the company behind Ubuntu, took Wayland and created Mir for better portability to mobile devices. One Ubuntu across platforms.
- Desktop Environments. Ubuntu includes the Unity desktop environment, Fedora includes GNOME, Kubuntu includes KDE, and Mint generally includes Cinnamon or MATE. Desktop environments are what we see and include their own utilities and file managers. GNOME and Unity include the Nautilus file manager developed as a part of GNOME, whereas KDE includes the Dolphin file manager developed as a part of the KDE project. Linux Mint includes Nemo with its Cinnamon desktop.
- A quick look at the top Desktop Environments
- KDE Plasma 5
KDE is the oldest of the mainstream Linux desktops, beginning in 1996 as the first effort to make a graphical Linux desktop. KDE also has its own application family, but while you couldn't in the past, today you can run KDE apps on other desktops and vice versa. Warning: you'll be downloading a ton of support libraries. Distributions with KDE releases include Arch Linux, KaOS Kubuntu, or openSUSE.
- GNOME 3.12
GNOME is the other major desktop interface, started as a reaction against KDE. While GNOME 2 was very popular, many people including Linus Torvolds really hated GNOME 3. So there were two major forks of GNOME 2, Cinnamon and MATE. GNOME, now at version 3.12, has corrected many of the things people didn't like and has been gaining back some of its fans. Distributions with GNOME releases include Arch Linux, Fedora, and Ubuntu GNOME.
- Cinnamon 2.0
Cinnamon started as a GNOME fork, but it's become much more. The best way to try Cinnamon is with Linux Mint.
Cinnamon 2.0 was released on 10 October 2013 and while still built on GNOME technologies and uses GTK+, it uses its own core libraries no longer requiring GNOME itself to be installed.
GTK+ (previously GIMP Toolkit, sometimes incorrectly referred to as the GNOME Toolkit) is a cross-platform widget toolkit for creating graphical user interfaces.
- MATE 1.8
Like Cinnamon, MATE began as a fork of GNOME 2.x. The main differences between Cinnamon and MATE are under the hood. MATE is designed to work with lower-end hardware than Cinnamon. This makes it a better choice if you're using an older PC. Good distributions on which to try MATE are Arch Linux and Linux Mint MATE Edition.
- Unity 7
A lot of people hate Unity, Ubuntu's GNOME 3 fork. Some people dislike Unity because it is Canonical's intended interface for not just desktops, but for tablets and smartphones as well. Canonical is working on a single interface for multiple devices. "Beautiful but squirrelly."
- And then there's theming and icon packages
- Linux Limitations
- Potential video and other proprietary driver issues. One PC "boots ugly, but real pretty when it loads." Consider MS engagement with PC manufacturers, or if you ever loaded Windows fresh on an unbundled PC...
- Laptop battery life SUCKS
- UEFI and Secure Boot, though becoming less of an issue
- Silverlight (Netflix) and potential Codec issues
- Can't backup your iPhone or use iTunes
- Getting Started With Linux
- Chose a friendly version of Linux to start -- Ubuntu, Linux Mint, ElementaryOS
- Download the ISO to your PC and burn to a DVD or USB Drive
- Installation is quick and easy. Install ALONG SIDE of your existing Windows operating system
- If your PC/Laptop has UEFI Secure Boot you may want to disable it, though modern distributions like Linux Mint and Ubuntu should be fully UEFI compatible.
- Always install Windows first. Linux plays well with other OS's. Windows? Helllll no.