There are a number of things that exist in the open source world without which I do no think I could do my Job. I am a Web Developer. I work on a range of projects using different systems, languages and processes. I work a lot with WordPress as well.
Many aspects of my work revolve around scanning logs, writing and reading code in a text editor and browsing the internet. I have my prefered programs for doing each of those tasks.
This is a set of articles that look at a lof of the open source projects that I rely on to do my job and do it effectively.
Software And Tool Choices
My job consists of 3 primary task types and I have my preference of what software to use for each of the tasks.
- Analysing log files.
- Reading and writing code.
- Browsing the internet.
Most of the time I opt for open source over closed and choose cross-platform options where available.
Browser Choice – Chrome/Firefox
As a browser I want to say I use a fully open software. I do not. I use Google Chrome primarily (Firefox secondary which is open source though. Half a point for that maybe???).
Chrome is based on the open source Chromium so it's origins are open. It may also still follow Chromium as upstream. I use Chromium on minimal virtual machines but not often.
There is tracking and closed systems built into Chrome which I make use of. Cloud syncing is useful for me.
Chrome is not fully open but it was forked from open software and for me the closed source parts are an acceptable drawback.
Plus it's the most popular browser choice from users. I need to see the web in the same way that most people see it.
Reading and Writing Code – Atom
Reading and writing code I do in Atom Editor. It's fully open, started internally at Github and is built by them and others to be the best open source editor it can be.
For anyone working in with code and do not need a special proprietary IDE (most people working with code) for a given purpose I highly recommend Atom. It's well maintained, constantly developed and improved based on the needs of developers using it.
Atom is built with a framework called Electron (again open, from Github) which helps compile and run JavaScript (Node) as desktop applications and allows building for desktop to be very akin to building for the web meaning transferable skills for developers.
If Atom didn't exist I would use Lime Text (OSS variant of Sublime Text) or Notepad++.
Scanning Logs – Terminal and BASH
I do a lot of work in the terminal. Often in several terminals at the same time. Working with them using CLI is actually an incredible way to multi-task and effectively monitor progress. Most of the time when on command line I'm using BASH syntax. Sometimes it's powerShell… let's avoid that conversation lol!
I use Ubuntu as my main dev machine. Ubuntu ships with terminals that run BASH. Most Linux OS run BASH as well so connection to another machines command line is familiar regardless of what machine.
Logs are usually files containing plain text. Many command line tools exist to read through text files. An incredibly useful tool is called grep
. It is used to search input for strings or regex matches.