Monday, May 28, 2012

Of hate for unity and gnome 3 desktops

I love Unity! Believe me or don't, Unity was one of the main reasons why I chose Ubuntu as my new OS. I found it to be simple to a fault, and I liked the way it made almost complete omission of menu navigation. In windows, I had my favorite applications pinned to the start menu because I dislike having a cluttered desktop, but although this helped me keep things clean, it also meant I had to click the start button, and sort through a menu containing many things other than my favorite programs. Ubuntu has a dedicated “launcher” designed for this specific purpose, so in Ubuntu, once I pin a particular program to Launcher, its only a simple matter of clicking on its icon to get it started. I hardly ever use the lenses, since Unity makes sorting through menus nearly obsolete. Only if I'm looking for some obscure software which name I can't remember, or if I can't remember what it does, or what the icon even looks like, will I then search manually through all the “installed software” menu. Know this however, if this has happened five times, since I started using Ubuntu, it may be too many; no exaggeration. What does happen often instead, is a search by keyword. I read, not long ago in some guy's blog that one of the reasons he hated Unity so much was that it took him about five minutes to find Terminal in the Applications lens; I also saw a video on youtube, where this other guy complains about not being able to find an app, all the while his cursor hovers right under the search box. I almost wanted to post a comment saying: “Dude, type in the box for sanity's sake! Whatever program youre looking for will turn up in less than a second flat!” But I know any comment contradicting high convictions will only serve to elevate them, so I don't waste myself with such endeavors (comments where disabled anyway). Still, I would like to share with those who would first listen and consider all things well, before reaching any kind of conclusion, that the part of Unity which makes menu navigation mostly unnecessary is in fact the search function in the Unity Dash. When I first installed Ubuntu, one of the first things I wanted to know, was if it came with any type of photo editing software. Since searching through the whole, installed software list seemed a bit daunting, I instinctively gave search a try, and seeing how only Shotwell Photo Manager turned up, I went and installed Gimp. Truth be told, I did play with everything for a good while, to see where everything was and how things worked, but I took to Unity right away.

Researching the reasons why people hate Unity has turned up few useful answers. Most of the time what I found people complaining about was Unity not being Gnome2, and while this is understandably a valid reason from a personal standpoint, I hardly think that any one thing should be hated for not being something else. I also think that to condemn any system; saying it is flawed, because you stubbornly refuse to use it properly, is grossly unfair. Taking more than a few seconds to find any application in Unity should only happen if you have no idea what you are looking for, but if you know that the Ubuntu command line interface is called “Terminal” then type terminal in the search box. Even if you don't know the name, but you know what the program is used for, you can find it. For example, typing the word “command” (as in command line interface) will also bring up terminal. Likewise, typing the words “photo” or “image” will summon icons for Gimp, Inkscape and any other related software. Unity is still in a very early stage of its development and so is gnome3 they both have a long way to go before everything settles down as far as its usability. Lets be fair, Unity is far from perfect, but I believe that in the near future, menu navigation as we know it will become extinct. The only way to move forward is to embrace the future with any blessings or shortcomings it may bring. Let go of the past, let go of the old, and lets move on to new things. The amount of data that computers can store today is astronomical. How will terabytes of data be managed by the average user? My old Windows system has so many programs installed that its very difficult to find anything, and it being Windows XP means I don't have a search function like Windows 7. Just imagine if there where no search engines for the Internet and instead we had to rely on some kind of menu to find anything. Does that sound feasible? So what's happening as far as I can tell, is that the world of the personal computer is finally letting go of the old, “linear” way of accessing data and catching up with the world of “hypermedia” and the Internet, which by the way, is nothing new. So if you're going to raise your fist in protest about something, do it for the right reasons, and learn to give possibility half a fighting chance before you precipitate in your judgement, in order to make those reason valid.

Now, speaking of valid reasons, there are some very valid reasons to complain about Unity and Ubuntu in general. The launcher bar. I like it, but it does have some annoying traits. It's cool that it hides itself when a window bumps into it, but its irritatingly eager to pop back out as soon as the mouse pointer comes anywhere near the vicinity of the left side of the screen. This counter-productive behavior constantly gets in your way. The launcher will “jump” on to of any icons or pallets found on the left edge of programs like Inkscape or the vertical ruler in Gimp when you're trying to pull out a new guide, which is probably the reason why you have the option to either enable or disable the auto hide feature in Ubuntu 12.04 Lts. Another trait I find terribly distasteful, is the fact that the developers felt it necessary to epoxy the darn thing to the left of the screen. Come on, even Windows 98 let you move the task bar around (which I often did). I find this rigidity a bit perverse, but not necessarily counter-productive, as I prefer task bars and such standing vertically along the monitor's edge when using a wide screen ratio; I just like them to be on the right side. But these factors are just annoyances more than anything, and while there are many such things in Ubuntu, the real issues would be less than apparent to those who would complain about the trivial ones. Developers are having real problems with certain compatibilities, like programs not running or crashing. Even messing with Compiz can tear down the Unity desktop since it relies heavily on certain Compiz configurations. Upgrading from one version of Ubuntu to another can easily decimate your installation and I hate that the package manager is almost always, at least, one build behind with the available software. There are many more things, but these have more to do with the OS itself than Unity, and besides, such instabilities have been known to plague other operating systems. The truth for me is that most of us won't face certain issues, because they are, by nature, more likely to happen to advanced users. Nothing is perfect in the world of mortal men, but I think the benefits far out-weight any lurking evils in my case.

We should voice our concerns, and if we either like or dislike something, we should let it be known. I believe this is not only our right, moreover, its our duty. Modern technology has enabled us to transmit our ideas beyond any recognizable boundaries, but as we convey our thoughts through these vehicles, we should also do our best to use them responsibly. One can be assertive without being offensive. I say this because I want to make clear, that although I'm defending my choice of OS, I in no way intend to criticize or scold anyone for what they chose to be their preference. Use what works I often say. Maybe you use Windows at home, but a Mac may be more appropriate for the tasks at the office. They're only operating systems, lets face it. Besides, I'm sure no one reading this would change his or her name If I switched to Arch Linux.

Thursday, May 17, 2012

Ubuntu's Sticky Tablet Stylus

Since I recently had to reinstall Ubuntu 11.10 some of the inherent problems of the operating system have resurfaced. Most have been corrected through updates, but some remain, which are persistent to the point of recurring in version 12.04 Lts. Among these, an issue most relevant to digital artists is the usability of a digitizing tablet such as my old wacom 6x8. As any digital artist will probably tell you, freehand painting with a mouse simply doesn't offer an intuitive way of applying your creativity to the digital canvas. Thus, tablet functionality is essential for any operating system hoping to appeal to digital artists; particularly to those who do commercial work like myself.

The good news is, that Ubuntu now offers tablet support from the start and even features a nice configuration utility that works through the graphic user interface. No need for command line input.

The bad news is that this utility is very limited in terms of what you can actually configure, unlike the windows driver which allows configuration for just about every input feature the tablet has. Another problem that arises in some cases (as in my case) is one where the tablet pen “sticks”, meaning when you press the tip against the tablet surface the “click” event will remain active even after the pen's tip has been lifted away from the tablet. If you click an icon and drag it to another place on the desktop with your pen for example, you will continue to drag the icon around even after no contact between the pen and the tablet remains, and you have to move the pen really far away from the tablet for it to release. This is an intensely irritating issue and one that renders your wonderful and expensive tablet completely useless.

One thing I've come to like about Ubuntu, and Linux in general is that it being open source means just about any problem that arises can be resolved. The better part of it is that this particular debacle is quite easy to fix.

I won't go into unnecessary details about how the driver works or its history, simply because it's something I don't fully understand yet, but please note that it is an independent driver created by some really kind people from the Linux community and like most software of its kind, its under constant development, so expect it to get better as time passes.

Okay, all we have to do to fix this problem is make some small alterations to a configuration file. This is all we have to do, but to do it, we first need to identify the tablet hardware in our system and then bypass some of Ubuntu's security features so it allows us to edit the configuration file. We'll take it one step at a time.

First lets locate the file we need to edit. The file path is: [/usr/share/X11/xorg.conf.d/50-wacom.conf] (without the brackets). This means the file's name is 50-wacom.conf and /usr/share/X11/xorg.conf.d is the directory or the series of folders where the file is found. Once the file is located you can double click on it and it should open in “Gedit”. Gedit is ubuntu's default text editor. What you should see, is a lot of text divided in small groups or “sections”. These contain instructions on how the tablet hardware is recognized and what the system should do with it. What we have to do now is edit some of the entries present and create some new ones. Do notice however, that any changes we do to the file at this point become null because the save function has been disabled. This is because you need administrative privileges to do so. So lets back up a bit so we can remediate this.

Now, advanced users, please bear with me, since I'm writing this with the absolute beginner in mind.

Do not be afraid, we are going to use the command line interface, aka: “Terminal”. Either click the “Dash” icon and type “terminal” in the search bar to look it up or press “ctrl alt T” on your keyboard to bring it up. Remember, the ominous plain purple box now staring at you is your friend, so don't freak out. We'll only be using a couple of simple commands in order to see how your system identifies your tablet. Now type: [lsusb] (without the brackets) and press enter. A list of all USB devices currently connected to your computer will appear. Look for a line that describes your tablet, such as: [Bus 004 Device 002: ID 056a:0042 Wacom Co., Ltd Intuos2 6x8]. All we need is the last part (Intuos2 6x8 in my case), which describes the particular model in use. Keep Terminal open, since we'll need its information to alter the 50-wacom.conf file a bit later.

At this point we'll again locate the 50-wacom.conf file in:/usr/share/X11/xorg.conf.d/, but we'll do it a little different now. What we are going to do before we access the file is temporarily elevate our user privileges to “super user” or “root” as it is often called. For this we'll call again on our trusted purple friend: “Terminal”. Without closing the prior Terminal window, lets open a new one; it'll make it easier for you, trust me.

In the new terminal window we will use two commands. The first one is called [sudo], this the part that will grant you permission to edit the file; it “elevates” your user status to “super user” or “system administrator” without the need to log in as “root”, which could potentially harm your system. The second one will be [nautilus]. This is the part that will let you locate the file itself. Nautilus is the “window system” Ubuntu uses to find and manage files. Similar to “windows explorer” on windows. The [nautilus] command simply invokes a window in which to find and view the file we're looking for, but because it'll be preceded by the sudo command, this window will allow you temporary “root” access thus removing the security limitations we faced when we previously accessed the file. In other words, we'll be able to edit 50-wacom.conf and save any changes permanently. A word of caution however, opening this window is like opening pandora's box. We will use it to fix the issue at hand specifically, but should you fiddle with the wrong things here, there will be breakage, you will cripple your system, and you will pay the price, so do what you have to do and then quickly close the darn thing.

Type [sudo nautilus] and press enter. Terminal will then ask you for a password, this should be the same password you use to log into your user account. The password won't appear as you type; not even little asterisks, so just type away and press enter. A bunch of information we don't care about will appear in Terminal and finally the magic super window opens. Now find the file and before you do anything to it, copy it, and paste the copy in a safe place as a backup, just in case. Now that the file is backed up, open the original and you will see the save function is now available in Gedit. These are the things we have to change:

The last section under the comment line: [# N-Trig Duosense Electromagnetic Digitizer] has three parameters that have to be changed. The first one is [Identifier "Wacom N-Trig class"]; the parameter has to be changed so it reflects the tablet information found on the first Terminal window we opened. Once the change is made, the line should read something like: [Identifier "Intuos2 6x8"]. The next lines reads: [MatchProduct "HID 1b96:0001|N-Trig Pen"]. Now do the same as in the previous line; all you're doing is replacing the generic information between the quotation marks with the specific data you found about your tablet in the first Terminal window. The line should now read similarly to: [MatchProduct "Intuos2 6x8"]. Remember, the parameter [“Intuos2 6x8”] is only an example, you have to use the information Terminal returned to you after you used the [lsusb] command. The next line only needs changing if you are having the same problem I was having, where both stylus buttons would have the same function regardless of how I configured them in the Ubuntu graphical configuration utility. If such is your case, then all you have to do, is go to the line: [Option "Button2" "3"] and add the word “Button” before the “3” so it looks like this: [Option "Button2" "Button3"]. This made my pen buttons act again like two separate inputs, rather than a single one. Finally, the last step is to add a new line right under [Option "Button2" "Button3"], which will tell the system when it should release the pen tip's click event. The line should be similar to this: [Option "Threshold" "150"]. The number can be basically any value, but anywhere from 175 to 150 seems to work fine in my case.

All that remains now is to save the changes. After that we can close Gedit. Terminal windows are closed by typing [exit] and pressing enter in each one; this will close the special Nautilus window as well. Now just log out of Ubuntu and log back in (no need to restart) and your tablet should work properly.
I hope this has been helpful to some extent and that you've learned a thing or two. I love Linux and I hope this post helps everyone who reads it love Linux too. I also hope this can remind those a bit shy about giving Linux a try that the only thing one should fear is fear itself.

For more information check out:
The linux wacom project
The official Nautilus page

Thursday, May 3, 2012

Stepping into the box outside the box

Decisions are the motor force for a life rich with fulfillment. Life without choice stagnates and degrades into a stalemate between our dreams and our fears. A single decision can be the turning point where a lifetime wrought with loss and pain can lead a new path toward great wealth in happiness. To follow a prefabricated design for your life like a mindless drone as you embrace a false sense of security, or to cast all caution to the wind seeking the more adventurous alternative of defining your own path, defying the conventional truths the world has unconsciously subscribed to, can all be dependent on a single moment of choice.

Most choices aren't at all so grave, but I had reached a turning point and though I hadn't come to fully understand all present possibilities, I at least understood that to remain where I was wasn't an option. Windows had become too unstable and it was getting increasingly difficult to have any work done. It's a mystery inherent to the windows operating system. It will slow down over time regardless of how much you work against it's inevitability.

But what other alternatives did I have on hand? All salvaging options had been exhausted: mc afee, northon, avast, spybot, malwarebytes, etc.. Defrag and registry cleaning had become all but null. It was obvious, I had to remove myself from the issue entirely. I had to either buy a new system or replace my operating system. The later seemed more economical. After looking at the price tag on the many different versions of the same OS software however, I realized a fresh install of windows seven would cost me almost as much as a new cheap notebook would, and it'd be even more restrictive than my current version already was. Besides, the new version inevitably inherits many of the old one's flaws while creating some problems of it's own. Plus, I didn't have enough money in any case. One of the many free operating systems had to be the answer.

Free software ranks high on my favorite things list. Most free software is great in my experience, but I have been very careful. There are indeed some very bad apples out there, you've been warned. But free software for word processing and spreadsheets is one thing, a whole operating system for free is another. Can they really be equal in quality and functionality to some of the other GNU jewels I had grown so dependent on? It's something I had been considering for several years past, but it never reached critical status on the list of things that I should be moved from the back of my head to the front. However, if invention's mother is necessity, then choice is most certainly it's sibling.

Among contenders like freebsd and solaris, linux quickly climbed to victory, but as I tried to go deeper and understand linux a bit better, I'm confronted by the realization that linux isn't an OS specifically, rather linux is more like a really good foundation upon which many great operating systems are built.

So choice leads inexorably to choice. Would you prefer mint or cinnamon? Linux comes in many OS flavors, even the kernel itself has different ones! So when I finally decide linux is the one, is when I have to again ask, which linux? A question that boils all my previous ramblings in this post down to a single word: Ubuntu.

The solution to my great conundrum had been answered, but I suppose as you're reading this, the logical question you must be asking yourself at this time would be the the good old why? Simple, the main reason being that its one of the easiest linux “distributions” to transition to for long time windows users like myself. More secondary reasons would be perhaps, how sleek and sexy I found the working environment to be or how quick and lightweight all the interactions with the system seemed. Other reasons arose as I actually started playing around with the OS, as ubuntu boots up so fast on my system that I don't even care for standby mode anymore, and the fact that all the GNU apps I use are native to linux and run many times faster than on windows don't hurt me none. Also, it allows you to bend the rules of the OS and trully make it your own. Despite being a newbie I've already done some minor changes to the system to make it more personal. True, you can break it, if you jump in the deep end too quickly, but the same can be said of any other OS, but with windows you can never have this level of sheer coolness. Just lookup “cool linux effects” on youtube and you'll see what I mean.

So to conclude, change is a good thing, it leads to adventure and discovery; antonyms of boredom, and the better sources of inspiration for any artist. It can solve problems and even prevent rust, so dare to try something different for once, you might be pleasantly surprised!