Moving from Windows 8.1. to Ubuntu. Picking Software Alternatives
Hey, what's up? Sorry for my absence again, had many tasks to do again, but hope now I'll be post on my blog weekly.
A lot of things happened since I wrote here last time. I stumbled upon the Mr. Robot series, which was a really exciting thing. It had so much influence that I finally dared to try a Linux based system as my main operating system and get rid of Windows. The moving process went surprisingly smoothly, and it took for me a couple of days to adapt, pick and install needed software. I wouldn't say that I felt a very big difference so far, but surely I will. At least, now I can give arrogant looks at ignorant Windows users and feel special and chosen because of using Linux like all those cool hackers :)
In this posts, I will briefly describe how I moved to Ubuntu, and what software pieces I installed for my daily development use.
Installing Ubuntu
So yes, to start with, I chose Ubuntu 14.04 LTS. It seemed like the most popular Linux distribution, so googling newbish issues is supposed to be much easier.
There are a lot of guides on how to install Ubuntu alongside with Windows on the web, and I’m not going to write another one. Honestly, I followed this one, and all the details you can find on the link.
Briefly, if you choose to follow, what you are going to do is:
- Get 2 flash USB drives, 4 or 8 Gb each.
- Make a backup of you Windows system on one of these drives
- Make a bootable Ubuntu USB drive from the other one
- Set up a separate drive for Ubuntu (so that is files are stored separated from the Window’s files, but you’ll still have them accessible)
- Install Ubuntu
- Install and set up Boot Repear–it will provide an OS selection screen every time you reboot.
All these steps took up to 3 hours for me, and eventually in the evening I got everything up and running.
After you get everything right as well, it might be a good idea to go through the system settings and configure them as you like. I recommend you to try a workspace function that is disabled by default. It allows you to work with four working screens simultaneously, switching between each with a key combination. Believe me, that’s just awesome.
Picking Development Tools
Ubuntu has its own Ubuntu Software Center for searching programs. Ubuntu Software Center is a sort of Android Market of Apple Store for Ubuntu, which seems to be around a long time before the mentioned application catalogs came to life. It’s the first place to look for a right piece of software before starting a search on the web.
Before running your first search, go to Edit–Software Sources, check all checkboxes on the Ubuntu Software and Other Software tabs, and relaunch the application. Without it, some of applications (such as Skype client) will not be discoverable.
1. IDE
On Windows, I used PhpStorm. Luckily, there’s also a Linux version. To install it, go to https://www.jetbrains.com/phpstorm/download/ and download the contents under the Linux tab. It seems like there’s no certain place for manually downloaded programs in Ubuntu. I created the ProgramFiles directory in my home directory, and unpacked PhpStorm in there. If you add the path to /bin to the PATH variable (in ~/.profile or any other place), you’ll be able to run PhpStorm from console. The PATH environment variable tells the system where it should look for software executables.
2. Browser
What would a web developer do without browser’s debugging toolset? Ubuntu has the Firefox Web Browser installed out of the box, and if you’re OK with it, simply get Firebug and you’re all set. For those, preferring Google Chrome, I recommend installing it from Ubuntu Software Center. Note that its name here is Chromium Web Browser, and “Google Chrome” request returns nothing.
3. Console and FTP Clients
As MobaXTerm replacement (or any other connection management tool you use), I was given an advise to use PAC Manager. As the description says, this program provides a graphical interface for setting up external connections, keeps credentials and connects to one of your remote servers just in one click.
PAC Manager does not seem to have a graphical client for working with files, so just in case I need to upload something manually, I installed FileZilla. It is reachable in the Software Center, so search for it. FileZilla works likewise its Window’s version and is more or less intuitive.
Picking IM clients on Ubuntu
1. Skype.
If you search for “skype” in Ubuntu Software Center, you’ll find Client for Skype VOIP and Instant Messaging Service. Unfortunately, it is the only way to use Skype on Ubuntu, so I had to install it. Window’s client feels and looks a way better.
2. ICQ, Jabber, XMPP
There are many messaging clients for Ubuntu. I chose Pidgin Internet Messenger–a clean and minimalistic thing (even the old, well-known QIP 2005 looks much more complicated). Pidgin supports ICQ, Yahoo, Facebook, IRC and XMPP servers, and it’s a pure pleasure to use it.
Another Useful Software
1. Image Editor
It is common to reference GIMP as a good alternative to Photoshop, and of course there is a Linux version of GIMP. I tried it and stayed rather unimpressed. Going to look for a way to use Photoshop instead.
2. Screenshots
I’m using Shutter as an alternative to Jing. It is not connected to a certain service, has a built-in image editor and allows uploading to several image hosting services, your Dropbox account or even to your own FTP server. The downside is that hot keys are not supported. However, if you need to get a quick screenshot of the active window or a part of the screen to be copied to your clipboard, use Alt-Printscreen and Shift-Printscreen respectively. A native screenshot picker here is surprisingly good.
3. Media
Built-in audio and video players seem good, at least to me. I tried another audio player from the Store, but it looked not that good, so I quickly removed it. Actually, I prefer streaming audio and video in browser, so these players are not used often. By the way, don’t forget to install Adobe Flash Player to be able to view those videos whose player is still using Flash.
It’s worth to be noted that Ubuntu comes with a bunch of useful software. For instance, Document Views is a really good things for reading PDFs–it not only provides a good GUI, but also memories the page a document was read last. On Windows, I used Google Chrome’s PDF reader, because another readers felt rather unsatisfying.
After a week of working on Ubuntu, I can sum things up as follows:
Advantages:
- Loading of Ubuntu takes less time than loading of Windows
- Working environment is close to production environment. It solved some issues of mine. A few days ago I had to debug and write complex Gulp tasks, running of which ended up with mysterious errors on Windows. On Ubuntu they work complexly well.
- It might be possible to run a web server without visualization. And it would work similarly to running OpenServer on Windows. Still, there’s Vagrant for Linux, and most probably I will be using it in order to not have running LAMP stack on my main machine.
Downsides:
- Fonts. After Windows, fonts look rather strange, and that’s a common opinion. I got used to them in a few days, though. Ubuntu Software Manager allows searching fonts as well, so you can expand your font library and improve the look of your applications in just a few minutes. For instance, Terminus fits good for PAC Manager’s terminals.
- Horrible Skype client. It’s just like that. Really.
- No Photoshop :(
Anyway, I’m happy that I finally made this move and became a proud Linux user. Now it’s time to learn some advanced console commands and work with shell like those guys in Mr. Robot. If you have doubts whether to switch to Ubuntu or not, just give it a try. You’re going to lose nothing but a few hours of your time, and can get back to Windows anytime. Thanks for reading and good luck with exploring new possibilities on whatever OS you prefer to use.