Career in Linux It’s time now to get into the requisites for building a career in Linux.
The other night, a good question popped out of my head — How many of the geek teenagers wish to work on closed source technology today? It’s been pretty ubiquitous for the computer freaks to turn to Linux/OSS, for that matter. This may not be a good sign for the closed source community and people who love closed source technologies. But that is how the perception is getting transformed amongst the engineering graduates.
However, before changing gears, it’s necessary to know what’s needed off you to build a career in Linux. It’s much more than a mere resistance against Microsoft technology and a hatred for Bill Gates; which I would say is not required at all! Remember, you may excel in one of the domains without criticizing the other one.
Considering a lot of tools which need to be cited for this cause, we’ll complete the entire article in 2 parts.
Here you go;
Apache: The world’s most widely used web-server, known for it’s open source architecture. It is often termed as Apache HyperText Transfer Protocol (HTTP) server program. Apache is one of the primal requirements to build a good CMS or likewise, in an Open Source industry. If not much, you need to learn the basics. Most Linux related jobs would ask you to have a hands-on over the apache administration.
Apt-get tool: It is a command-line tool to handle packages, often known to be a user’s weapon to get hold of other tools using the APT library. Although, used mainly on Debian based systems, apt-get is cross-platform with various front ends built for it. Apt-get is one of the simplest tool to use and one should still be familiar with its working and syntax on command line.
BASH Shell: Bash (Bourne again shell) is a sh-compatible command language interpreter which executes commands from the standard input or a file. It incorporates cool features from the Korn and C shells(ksh and csh) too. It is fairly necessary for you to know how to program in Bash. One can save a lot of time and energy by writing down a little bash script to automate a task on the command line.
Iptables: If you’re hitting for a Linux administrator, or someone on similar lines, you need to master this. Iptables is used to install, manage and inspect the tables in the IP packet filter rules within the Linux kernel. With iptables you have the ability to create firewall rules on your Linux computer to allow/restrict access through each network interface. You should be capable enough to list the IP rules, filter a range of IPs and add/remove the rules to the table.
MySQL: If you remember one of our previous articles on LAMP, MySQL should appear to be an obvious entry here too! It is a simple SQL database with GNU readline capabilities which supports interactive and non-interactive use.While it is used interactively, the query results are presented as an ASCII-table. For a non-interactive use, as in a filter, the results are tab-separated. However, the output format can easily be altered using command options.
To work on Linux domain, it would be very possible for you work on Linux-Apache-MySQL-PHP, aka LAMP. Hence, you need to be familiar with a MySQL server.
SSH and OpenSSH: SSH/OpenSSH client is a tool/program for logging onto a remote machine to executing commands over it. You might have to use a lot of SSH while working on a Linux network. Some of the basic requirements are – connecting to a server using SSH and setting up a key-based authentication for SSH.
If you’re looking forward to start up a small business enterprise, investment happens to be a key concern. How much, how less and where exactly; these are the preliminary encounters.
Open source software has a lot of options for the business world, alongside the home user bandwagon. Apart from the other generic features, Open Source Software at times have a greater degree of customization as compared to their proprietary counterparts. This very fact is pretty evident with the fact that several large companies like — Google, Amazon, Yahoo, et al run their servers on Linux, again an Open Source OS.
The idea behind this article is not to force start you to follow the Open Source path, but to make you look at the same as an alternative before you shell out a few hundred or thousand dollars for a close source and non-free product which does pretty much the same as it’s Open Source and free alternative.
Before we move on, I would like to clear out that free software and Open Source Software are two different entities, though they often come as a bundle!
Today, we shall have a look at a few Open Source Software which may just help you kick start your business.
The first need shall be to have a robust, secure and customizable operating system, both for the server(s) and the workstation(s). There are a lot of options available when it comes to Linux. Have a look at them at one of our previous posts – Which Linux distro is right for you?
I would recommend Fedora for free, or RedHat, if you can pay a bit for a great enterprise support. They have a cutting edge robustness and come with a lot of applications like OpenOffice, Firefox, Thunderbird, etc. as pre-loaded, catering your major necessities.
The next big thing is an office suite which shall help you with word processing, spreadsheets, presentation, databases, vector drawing, mathematical formulas, etc. OpenOffice is the best of all under this segment.
You’ll be looking for a good Instant Messaging client for your Internet chat and of course a good Email application for your official mail domain.
Evolution is one of the best email clients available as free and Open Source. It provides you with an integrated email, an address book and calender to mark your appointments/schedules.
Thunderbird is a another cool desktop email client from Mozilla. It supports great customization, easy search, and enhanced security and privacy measures that keeps your information safe.
Jabber is the best known open source instant messenger. Apart from generic chat features, it gives you the ability to have VoIP conversations and transfer files.
They shall help your work get easier than otherwise.
Tomboy is one tool which I love a lot! It makes taking and tracking notes pretty easily. It can help people at work while looking for websites, emails or a few striking ideas during the day as they may jot them down by using Tomboy notes. One push and the Tomboy pops out!
Desktop search helps you find a document/email/note/music or a calender entry in a jiffy! Beagle is one such desktop search application which may help people at work. Thus making a disorganized desktop belong to an organized executive!
Though not always, but you might need to burn some DVD’s once in a while to backup your data. K3B shall help your business with an easy and free way to burn those disks.
Thinking of an sharing your desktop remotely? I know that’s a much desired feature in today’s connected world. RDesktop is a popular remote desktop client. It lets you share information remotely, or access your own workstation while being away from the office. What more, it can help interface Linux with desktops that are still running Windows!
PDF’s, you’ll need to read them every now and then! Evince provides an open source alternative to the propriety softwares, allowing you to view documents in a wide variety of formats in a much lighter and quicker way.
Imaging and Design
Depending on the kind of work you’re involved with, you might need to edit a few images at times.
GIMP is the Photoshop of open source world, though it is not as feature rich and friendly as Photoshop. Though it lacks some of the more advanced productivity tools found in Photoshop, but comes without the frills or a heavy price tag!
Inkscape is a great open source program for vector drawing, with its capabilities comparable to those of Illustrator or CorelDraw.
Once you look up to have an organized data flow in office, you need a Content Management System. We shall look for some good options under this segment.
Joomla! is an open source content management software (CMS), that allows easily upload and creation a variety of web pages. Features include page caching, RSS feeds, blogs, polls, website search, news flashes, making it a great tool for entrepreneurs doing business on the web.
Exponent is a good solution for the technologically challenged entrepreneurs. One can make great websites using Exponent. You don’t need to code web pages or manage site navigation directly. Instead, you can create a web page as you would see it on the web by typing, editing and rearranging the options in a window.
WordPress! I can not miss this. One tool that has changed the way people look into the web. A robust, neat and fast growing CMS built on php, which again is an Open Source scripting language. The kind of support WordPress has, both official and unofficial is matchless.
Network and Server Management
When we talk about communication within an office, we need to look at the network management. Let’s figure it out the open source way!
Asterisk is a PBX (Private Branch eXchange) software that can facilitates an easily and cheaply control of the telephone system in your office. It works with both VoIP telephony as well as generic telephone systems with the addition of some inexpensive hardware. It has some great features which you might get on heavy shelling of cash, otherwise.
Zabbix Zabbix lets you easily monitor and track the status of network services, servers, and other network based hardware. If your business needs to track and report status on network systems, Zabbix’s easy-to-use mapping and graphing visualizations shall by no means disappoint you.
Apache supports a large number of web servers, worldwide, in an open source fashion. It provides some of the most widely used and stable HTTP servers available . It supports a lot of features including virtual hosting, SSL and TSL support, custom log files, proxy module, etc. It can be used as a secure server for web pages or to safely share files across the Internet.
GnuCash helps you keep track of your finances easily and efficiently. This free tool allows you to track bank accounts, stocks, income and expenses with a lot of features to create reports, make calculations, schedule transactions, etc.
SureInvoice facilitates an easy system for creating and managing invoices. You will find it useful in time entry, automated invoice generation, customer self-service, etc.
These were a few inevitable tools for your office from the Open Source world. I would like to repeat that OSS is an alternative to the propriety softwares, you may not necessarily stick to them or follow an OSS regime.
Free BeerWe love free beer as much as we love free softwares.
Most of us admire free beer and free softwares? The former might not be true for all, but I’m sure you all would agree to the software thing! Has it not been true, more than 60% of the internet users would have not been hitting the websites offering cracks and serials (and they would have not mushroomed to an such an extent. Thanks to Google’s Adsense!)
But what if you are a proud owner of a software — be it an application software, a system software or a game that’s free, and may even be registered to you? This was the idea which created the first impression about Free and Open Source Softwares (FOSS) into the minds of the developers around the world who were busy working great, but under the slavery of softwares which were of closed source and high acquisition cost.
FOSS has risen to great prominence. Briefly, Open Source Softwares and Free Softwares are programs whose licenses give users the freedom to run the program for an indefinite time period, to study and modify the program, and to redistribute copies of either the original or modified program (without having to pay royalties to previous developers).
Open source is inevitable as it gives control to the customer. Bugs are more quickly discovered and fixed. And when a customer doesn’t like how a vendor is serving him, he can choose another without overhauling his infrastructure. No more monopolies. No more technology lock-in.
What exactly happens with the closed source softwares?
In the proprietary closed source model, the entire development cycle evolves within a single company. Programmers write code, hide it behind binaries and charge the customers to use the software. Thereafter, they add fee for the after-sales support — to fix the software if and when it breaks. No one ever gets to know how bad the software really is!
Taking about Open source, we talk about a large, Internet-connected, worldwide community which backs up the entire project. It involves geeks, students, working-from-home engineers and entrepreneurs, tech savvy moms, and anyone you can think of!
To have an idea of how has the fan following for FOSS increased, look at the graph below. Apache’s Tomcat leads the way. Yes, it’s yet another FOSS!
Why Open Source?
This is what RedHat has to say on this;
All software is written with source code. With open source software, the code is protected by a special license that ensures everyone has access to that code. That means no one company can fully own it. Freedom means choice. Choice means power.
The entrepreneurs may still rely on paid products and services but the geeks, students and dare-to-do computer professionals are definitely eying on FOSS. It is like a revolution in the field of computing that people have started to believe in sharing information rather than conserving it or hiding it from the world. This concept has led to a movement — to attain new heights and achieve new goals, which were previously overshadowed due to the reign of closed source softwares.
Talking about the developers and would-be-developers, the platform and support for tools and framework is a key concern guiding them to decide an Operating System. Now-a-days, A new web server infrastructure — LAMP is the cynosure of all eyes.
The acronym LAMP (Linux, Apache, MySQl, PHP/Perl/Python) refers to a solution stack of software, usually FOSS, which is used to run dynamic websites or servers. The well-defined tools of LAMP web development exist in nearly every Linux distribution. They include: