Linux is Great For Coders

In my last post I stated that one of the things I like in Linux is that I can use the file manager as an FTP client. In this post I am going to discuss another thing I like about Linux. It provides all the tools I need for writing code.

Yes, you can find decent code writing software in any operating system. But for me, Linux makes not only getting that code writing software easier, it also provides decent code editors by default. By that I mean the text editor.

You all know what I’m talking about. Windows has one editor, the old notepad. It is decent enough for simple coding I guess, but it pales in comparison with what Linux offers out of the box. What Linux offers really depends on your distro and the desktop environment it is running, but usually it is either Kate or Gedit.

HTML writing with Gedit
HTML writing with Gedit

Kate is a powerhouse. It really is. There’s no comparing Kate with Notepad. Really, the issue with Kate is you have to configure it to suit you to be an efficient code editor. However, the code editor most will see in Linux is Gedit. Coming default with any Gnome-based distro, including the popular Ubuntu, Gedit is a simple but very functional code editor. It provides all of the tools you need to write code and supports plug-ins for more flexibility.

If Kate or Gedit aren’t your thing, you can always fire up the software store and install another code editor, or even a full blown IDE. But for a default, those two do the job and do it well. Add in the file manager FTP functionality, and you have a web programmer’s dream.

Advertisements

My Favorite Way to FTP

It should come as no surprise by now that I like using Linux. While I could go on and on about why I like using Linux, which I plan to do in a series of blog posts, the largest reason I like using Linux is because it makes my life so much easier as a web host.

“How does it do that?” I can hear you all asking. Simple, FTP. Yes I know that there are amazing FTP clients out there for Windows and Macs, such as the wonderful Filezilla. What Linux offers me though is seemless FTp integration. With Linux, using FTP is as simple as using a file manager.

Whether I’m using a KDE Plasma desktop or a GNOME-based desktop, I can simply start up the file manager, connect to my ftp server, and just manage files on my web server as if they were on my computer. Here’s an example of what I mean using Files (also known as Nautilus) in Ubunutu 16.04.

File Manager FTP fun
File Manager FTP fun

Here you can see me using the default file manager as my FTP client. I have two opened and snapped to the opposite sides of the screen. The window on the left, my files on my computer. The window on the right, FTP to my web server.

Using FTP in this way is super simple. All I need to do is drag and drop when I want to upload files to my server, or when I want to download a backup of files. I can rename, change permissions, and any other file management that you can do with a file manager, with my files on my server. It is super simple, super effective, and I love it.

Kensington Slimblade Button Mapping in Ubuntu

In an earlier post I talked about my wonderful Kensington Slimblade. In that post, I mentioned that I remapped one of the buttons to let me use the ball as a form of free scrolling.  What you may not know is that I am a Linux enthusiast, and right now the distro I am playing with is Ubuntu – though oftentimes I can be found using Arch or Antergos.

My Trackball, the Kensington Slimblade
My Trackball, the Kensington Slimblade

When I got my new slimblade trackball all hooked up, the first thing I looked for was for a way to remap the buttons. Usually this is done in a config file in Linux, but I was finding nothing on how to do so with the Slimblade. The only configuration guide I could fine was for the Logicteck Marble.

I managed to modify the config for the Logicteck Marble so that it works for the Slimblade. I am sharing it here so that anyone who needs it in the future can find this guide.

The first thing you need to do is to find where your distro stores the input device config file. In Ubuntu, it can be found here:

/usr/share/X11/xorg.conf.d/10-evdev.conf

Just open up that file as root or fakeroot with your favorite editor. In Ubuntu, you can type in:

sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf

Scroll to the bottom of the text file and paste this config file. Feel free to experiment with the different button layouts!


# - - - Kensington Slimblade Settings - - -
#
# The Kensington Slimblade buttons are mapped [A-D] from left to right:
# A (large); B (small) | C (small); D (large).
#
# Preferred options for right-handed usage:
# A = normal click [1]
# B = middle-click [2]
# C = middle-click [2]
# D = right-click [3]
# Hold button B while rolling trackball to emulate wheel-scrolling.
#
# Preferred options for left-handed usage:
# A = right-click [3]
# B = middle-click [2]
# C = middle-click [2]
# D = normal click [1]
# Hold button C while rolling trackball to emulate wheel-scrolling.

Section “InputClass”
Identifier “Kensington Slimblade Trackball”
MatchProduct “Kensington Slimblade Trackball”
MatchIsPointer “on”
MatchDevicePath “/dev/input/event*”
Driver “evdev”

# Physical button #s: A b D – – – – B C
# Option “ButtonMapping” “1 8 3 4 5 6 7 2 2” right-hand placement
# Option “ButtonMapping” “3 8 1 4 5 6 7 2 2” left-hand placement
# b = A & D
Option “ButtonMapping” “1 8 3 4 5 6 7 2 2”

# EmulateWheel: Use trackball as mouse wheel
# Factory Default: 8; Use 9 for right side small button
Option “EmulateWheel” “true”
Option “EmulateWheelButton” “8”

# EmulateWheelInertia: How far (in pixels) the pointer must move to
# generate button press/release events in wheel emulation mode.
# Factory Default: 50
Option “EmulateWheelInertia” “10”

# Axis Mapping: Enable vertical [ZAxis] and horizontal [XAxis] scrolling
Option “ZAxisMapping” “4 5”
# Option “XAxisMapping” “6 7”

# Emulate3Buttons: Required to interpret simultaneous press of two large
# buttons, A & D, as a seperate command, b.
# Factory Default: true
Option “Emulate3Buttons” “true”
EndSection

Once you have it in, save the file, log out, and log back in and the newly mapped buttons should work!

My New Slimblade Trackball

So, my wife so lovingly allows me to get a new Kensington Slimblade Trackball – as her early anniversary gift to me. Let me must start of by saying, I love this thing. I love trackballs already, and this is basically the Mercedes of trackballs.

slimblade-225x300

Just look at it, how beautiful!

See, there is the Slimblade trackball, right there, on my keyboard tray. It is a low profile trackball so that my hand can just rest on it without bending in some crazy position, with a large ball for greater control and precision.

“But why do you like trackballs so much,” I hear you ask. “Why not just use a mouse?”

Well, it is simple really – mice cause me pain. With a mouse I have to constantly pop advil. Using a mouse all day not only causes my wrists to hurt, but also causes neck pain and headaches. Since I use a computer A LOT, I figured I had better find other input devices that don’t cause me so much pain.

First, I switched to a ergonomic keyboard, the Microsoft Natural 4000 to be exact. That helped some. Now I could type for longer periods of time without fatigue. Which is good, because I tend to be exceptionally long-winded with my typing. But I needed to make another change. So I looked up online for input devices for sufferers of RSI (repetitive strain injury), and one of the most talked about ideas online was swapping out the mouse for a trackball.

I of course was skeptical. Weren’t trackballs outdated? I vaguely remembered them from the late 80’s to the early 90’s, but then the mouse went optical and so I sort of thought the trackball disappeared. But, it turns out I was wrong. Trackballs stayed around and advanced some too, though admittedly not as much as the mouse had. Trackballs now used optical and even lasers instead of rollers to track movement. I decided to try it out and picked me up a cheap Logicteck Trackman Marble from the local WalMart.

I fell in love with it. No longer was I in any pain mousing around on the computer. Yeah, it took about a week to get used to the new method, but once I was used to it, I was hooked. I decided to try a thumb-controlled trackball, but I didn’t like it too much, so I went back to the Marble.

Eventually the Marble started to wear out (did I mention it was cheap?), so I looked up some more trackballs and was pretty much convinced to get a Kensington Orbit Trackball with ScrollRing. This thing was very similar to the Marble, but with only 2 buttons (instead of 4 like the Marble). However, it had one thing the Marble didn’t have. A Scroll Ring. A scroll ring is basically like the scroll wheel you find on most modern mice, except it is a ring and not a wheel, and IMO, works better than the wheel.

trackball-comparison-2-300x225

The Slimblade and the Orbit, being best buds.

I have had the Orbit for a few years now, and it still works great. My only problem with it is that it has a high profile, causing wrist bend, and the small ball doesn’t provide very precise control. My lovely wife knew that I was dreaming for a larger, more comfortable trackball so last week she told me to go ahead and get one! Isn’t she wonderful!

I read lots and lots of reviews and decided upon the Slimblade. Its lower profile was the primary factor. It came in yesterday afternoon, and within moments I was in trackball heaven!

trackball-box-225x300

Typical Amazon, HUGE box for small product.

First of all, this ball is almost twice the size and weight as the Orbit. This larger ball gives a more solid feeling and allows me much greater control. I can move the cursor as fast as I want, or I can move it to the smallest amount. It is really hard to explain the difference in control in words, but let me tell you, I have greater control with the Slimblade than I ever had with a mouse.

The casing that the trackball is in also feels very premium to me, especially compared to the very plastic-y Orbit and Marble. It has a glossy finish that is very smooth, the base is heavy so it won’t move around, and true to its name, it is very slim.

trackball-comparison-300x225

Look at how much larger the red slimblade ball is than the blue orbit ball.

Unlike many reviews I had read, the buttons do not feel cheap or hard to click – they feel just right. If there was one complaint I had about the buttons was that I wish I could more easily tell which button my finger was over – they are all just part of the casing.  Even the USB cord feels and looks premium. You can tell that the Slimblade is Kensinton’s flagship device.

One thing I should point out is that the Slimblade does not have a scroll ring. It has four buttons, but no scroll ring. That is because the scrolling is built into the ball itself! You just twist the ball instead of roll it and it scrolls the page. I think this is a pretty neat feature. Still, I went ahead and mapped one of the buttons to let me use the ball for even faster scrolling.

Anyway, if you suffer from RSI, try using a trackball. If you love trackballs, try out a Slimblade. IMO, it is very much worth its cost.

My experience with Ubuntu 16.04 and Unity

I have been using Ubuntu  Linux  16.04  with the Unity Desktop for a week now, and figured I’d share my experience and thoughts.

screenshot-from-2016-03-23-13-01-27-768x432My desktop, Ubuntu 16.04 – Unity DE

UNITY
I love the layout – I always have though. In fact, I have always changed Gnome Shell or KDE to match the layout. The fact that I don’t have do anything to achieve that layout with unity is a win.

I love the HUD, very nice tool. KDE and Gnome Shell need something similar.

The Dash Menu is far better at finding programs than KDE and Gnome’s menus.

Buttons on the right take time to get used to, no big deal.

I would say needs typing integration with Pidgin and/or Empathy like Gnome Shell, but with all the clients killing interoperability with multi-clients, whats the point?

I prefer plasma applets to indicators, but only slightly.

I haven’t had to clear out SWAP yet. Usually I have to do this daily or every other day with KDE or GNOME Shell. Unity must be more resource efficient than those two. Interesting.

UBUNTU 16.04
Over all, nice and stable – though at start up I always get a message that something crashed but that crash has already been reported.

Still not a fan of PPA’s – I’d take the AUR over it anyday. But at least PPA’s is something, even though a huge majority of them don’t yet work with 16.04.

Gnome Software seems very buggy right now – more so than in other distros, but this is not a finished release so yeah.

Apt-Get is slow, and sometimes fails. Synaptic succeeds at updating the system when apt-get fails. Odd.

Love the fact that it is so easy to get my printer installed because… it is already installed. Love the true plug and play aspect of Ubuntu.

So easy to deal with restricted drivers, even drivers that I didn’t know existed on my computer.

Please, please put in an option to not display icons on the desktop. Had to delete things from desktop folder just to achieve the clean look I desire.

Files/Nautilus…. so underwhelming. Any better file managers out there with perfect unity integration?

OVERALL
Overall I have been pleasantly surprised with Ubuntu 16.04 and Unity. There are some issues, sure – but this is not a stable release yet. I have a feeling this is going to be a very awesome LTS once everything is ironed out. Still I’d encourage the Ubuntu people to consider replacing Files.

My favorite aspect of Ubuntu has been the plug and play nature of it. It just works, which is nice since I don’t have lots of time anymore to fix things and make things work.

I am also rather enjoying my time with Unity. Sometimes I have the itch to go back to KDE or play with Gnome Shell, but really I’d actually be loosing more than I’d gain by doing so. I can still use the KDE apps that I prefer just fine in Unity, and Unity fits my overall workflow nicely.

If I could have the Ubuntu ease of use with Unity on top of pacman with AUR support, I’d have the perfect distro for me. But for right now, Ubuntu 16.04 comes very close to perfect, so I think I’ll stick with it for a while longer.