Categories
Applications Using Linux Your Choice

Linux and MS Word Documents

I’m going to discuss something that’s a tad awkward.

It’s a call to improve on the Office Suite software available for Linux.  Is this really something worth writing about? It is, and I’ll tell you why.  After nearly 3 years at the same job, I find myself in a position shared by many—seeking work in a struggling economy.

The first thing I did was find a recent electronic copy of my resume.  Good news!  The most recent version just needed a little touching up.  Since I don’t own Microsoft Office software, updating an MS Word doc should be simple using Open Office dot org, yes?? Supposedly Open Office does the job for Word Documents.  Well, in my case…No.  Abysmally, failingly, No. Broke almost all formatting of the original document.  Caused me two to three times the work just to get it back to a ‘normal-looking’ state.  Mind you my resume was not heavily formatted to begin with.

But what about the FONTS?

Yes, fonts are a big deal when saving the document.  For resumes, it’s important to use a highly-readable font and keep the font size nice as well.  Chances are the resume will be scanned (for keywords) and also printed, faxed, and emailed to users of various Operating Systems.  Keeping the font as generic as possible will help.  Using exotic fonts that only come with Mac will not.  To make my text documents play nice, I installed the msttcorefonts (Microsoft TrueType Core Fonts) package.  This package will let you use fonts commonly found on the MS Windows Platform.

Ok, so is Open Office a total waste?

No, it is not.  I happen to like the Spreadsheet implementation.  For basic spreadsheets, it works great.  I have not tried to edit any MS Excel sheets with embedded macros (yet).  This is (from what I’ve heard) is the tricky part where Open Office has to do a lot of extra work to try and match all the macro languages and formulas—and on that—I’ll give them some leeway.

Your resume broke in OO.org; Can’t you use another app?

Usually, the answer to this question (when put to a Linux user) is yes.  With open source linux there are usually a plethora of substitutes available to try out.  However, when it comes to professional documents, it “just has to work” as the cliche goes.  I tried some text document office-suite alternatives.  First I tried Abiword.  Abiword also broke the formatting and made it’s own arbitrary decisions on font rendering, even though I had the correct MSTTCOREFONT installed (in this case, “Times New Roman”).  So, with the correct Font installed, it didn’t matter.  Document got very messed up.  Other alternatives include purchasing a licensed CD of MS Office and to make it work in Linux, Crossover Office (by Codeweavers), which I would consider purchasing.  MS Office (however) is not high on my list of things to buy.

Abiword is not a bad program.  I’ve written college term papers with it.  This was a start-to-finish document saved as *.doc as opposed to a document created in MS Windows.  I would just like to see Linux have the ability to inter-operate with .doc files that have a table as part of their layout.  I’ve used and recommended Open Office both on the Linux and the MS Windows platform and it usually works great.  Maybe I expected too much out of it?  Maybe tables in an MS Word Doc are not consistently imported into Open Office.

Although I like the idea of the Open Document Format, it’s not something I can count on for across-the-board compatibility with the business world.  This is critical.  If an employer can’t open your resume because it’s in .odt format and their version of MS Word is earlier than 2007, they will simply discard your resume.  They will not bother to read a file they can’t open.  It’s also possible that the .odt file format will make someone (not in the know) uneasy.  They are expecting a .doc file, so to keep yourself “in the game” it’s probably best to send them a .doc file for a resume.

Summary: how can we overcome these limitations?

Use whichever word processor program you want to (as long as it can save as MS Word format *doc).  Send your document to a friend or family member that has the “real” Microsoft Word on their computer and let them open, view, and print your document.  If it looks good, and prints as you expect, then you’re all set.  If not, then try another program or possibly take some time to reformat your document.

What did I wind up doing?

My final solution was to create the resume in iWorks for MAC (as I now use a macbook dual-booted with Linux).  Even if you’re writing your resume on MAC, remember fonts.  The Times New Roman font is recommended as the “generic” font most widely used for this purpose.  Do you have to use it?  No, you don’t.  Just remember the person receiving your resume will need to have the font on his/her computer or else your resume runs the risk of breaking while they see it or print it.  Not a good idea.  Resumes are typically given very little attention to start with as they are quickly scanned.  If a resumeI know Linux users typically do not lean towards conformity, but this is one time when it will work to your advantage.

For the Linux side of the computer, I rebuilt the resume, not relying on tables for formatting in cases where you want to “right-align” dates on the job.  This I felt was a safer “universal approach” and this version became my “default” resume version for better performance on as many platforms as possible.

I put the dates on their own line and right-aligned that line. But again, I was trying to get this done in short time to aid in job-hunting.  What works for you may be something altogether different.  Good Luck

Categories
Applications Command Line (CLI) Introduction Your Choice

Favorite CLI Linux Apps: Intro

We’re talking about the Linux command line…again.  Don’t worry, I won’t bore you (hopefully). If you’re still on this page, I commend you.

Remember, a Linux user should never feel forced to use the terminal or “console”, but knowing how to use it will help you get the most out of Linux.  The speed, simplicity, and the consistency are what drive me to use it nearly every time I’m at a Linux Desktop.

Ok, here’s a list of programs that are typically not in a distro by default.  These programs are intentionally run from a terminal prompt.

Categories
Applications Command Line (CLI) Your Choice

Favorite Linux CLI Apps: Emacs

Emacs text editor (also known as emacs21-nox*)

[*The GNU Emacs editor without X support] is not usually part of a distro install—but it should be.  When you need to quickly edit a text or config file, a shell command can open the file, let you save changes, and then return you to the shell prompt.  Default console-based text editors (pre installed) are vi or nano.  I’ve tried them both.  I like emacs better.  At the time of writing, Synaptic in Crunchbang Linux 9.04 shows the console emacs as “emacs21-nox”

There are split camps and heavy debates as to which is better.  Just google  “vi vs emacs”.  It is useless for me to jump on the debate bandwagon.  Just know that they are similar, but operate differently.  Both edit and save text in a console/terminal.  Both offer no formatting or styling like a GUI word processor.  However, vi is a “modal editor” meaning that you switch back and forth between “insert mode” (for typing) and “command mode” (to issue file, search, or text-related commands.  Emacs is all one mode, where keystroke combos invoke commands.

Forget the evangelism or the “he said/she said bull$h1t”.  Try them both and see what you like.  You can always uninstall an unwanted application program with Synaptic.

Categories
Applications Command Line (CLI) Web Development

Favorite CLI Linux Apps: php5cli

php5cli runs PHP commands in a shell

PHP is a scripting language used on many websites.  It allows a page to do “dynamic” things (such as changing a page’s appearance based on user input, time or date, etc.)

One of the things I do wtih php5cli (or php in the shell) is check a PHP script for errors.  This saves you the trouble of running your PHP-based web page in a browser (which may have bad side effects).  ??Bad side effects?? Sure, what if your page is supposed to overwrite a file, and then hits an error.  It may erase a perfectly-good file.  Ok, enough gloom and doom talk.  Let’s say you wanted to check “myPHPscript.php” for errors. Run the following command in a shell to check it for errors before it runs/executes.  The option is a lowercase L (l) not a digit.

php -l myPHPscript.php

Another good use of PHP in a terminal is to generate HTML code.  There’s a certain frustration in coding up an entire web site, and then needing to go back and make a change across all your pages.  A time (and headache) saver is to let PHP do the “heavy lifting” for you.  What does this mean?

Basically, you set up a series of instructions for a script to follow.  Then, based on your needs, you make the script “write” different output based on a variable whose value may change.  Sometimes this involves changing the size of table cells, but it could apply to writing an entire series of web pages.  It comes in way handy when you’re looping over database results (and deciding to print the 2nd line of an address to the page).

In summary, when you’d have to change the same attribute in many, many places, and change them a few times, manually finding the attribute (for example a web link), you don’t have to manually (not mention “tediously”) hunt for the item(s) you want to change.  Install php5cli with Synaptic (or other) package manager. This installs any needed dependencies.

Categories
Command Line (CLI) Your Choice

Favorite CLI Apps: Imagemagick

Imagemagick

Imagemagick is an awesome command-line based image manipulation tool.

[Paraphrased from the imagemagick manual:]

ImageMagick®, is a software suite to create, edit, and compose bitmap images. It can  read,  convert  and  write  images in a variety of formats. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform  images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bezier curves.  ImageMagick  includes a number of command-line utilities for manipulating images. Most of you are probably accustom to editing images one at a time with a graphical user interface (GUI) with such programs  as gimp or Photoshop. However, a GUI is not always convenient. Suppose you want to process an image dynamically or you want to apply  the  same  operations  to  many images  or  repeat  a  specific  operation at different times to the same or different image. For these types of operations, the command-line image processing utility is appropriate.

To install imagemagick, use Synaptic, or issue the following command in a terminal

sudo aptitude install imagemagick

Visit my post on using Imagemagick to perform the same process on multiple images.

There are many examples on the imagemagick website.

Categories
Applications Command Line (CLI) Using Linux Your Choice

Favorite CLI Linux Apps: Guake

Guake and Yakuake are drop-down terminal shells

Guake, or (if it’s a K Desktop Environment) Yakuake are “drop-down terminal shells” that appear when you press a button (usually F12).

If you usually open a terminal with every log in to your Linux desktop, there’s a more convenient (not to mention laaazy) way.  Simply tell the OS to run Guake after your user’s successful login. In Openbox, you’d add it to your autostart.sh file

The Guake terminal will notify you that it has started, and then auto-hides itself until you “un-hide it” by pressing the F12 key.  When you’re done with your current command-line stuff, simply press F12 again and Guake gets out of your way.

Categories
Applications Command Line (CLI) Using Linux Your Choice

Favorite CLI Linux Apps: Lynx

Lynx is a text-only web browser that runs in the shell.

Lynx is useful tool for those times when you want to extract only the web links from a web page.  Install lynx using the Synaptic (or other) package manager.

To view the hyperlinks of a given web page (google.com in this example), issue the command

lynx -dump http://www.google.com

It can also behave in a similar way to wget when you want to view the HTML source code of a web page.  The command to view the HTML source code is

lynx -source http://www.example.com

Click the following link to view a post where we collected links to mp3 files to build an unattended download list for the wget command.  Another feature of Lynx is that it allows you to view your pages as a web crawler/robot such as googlebot might see them.

Categories
Applications Introduction Your Choice

Favorite Linux Apps: Intro

So far, we’ve been talking about using the command line to download files or make some repetitive work simpler.  We’ve also seen how to upgrade a Firefox Web browser in Ubuntu.

Today we’ll discuss general “tools” that a Linux user might need on a daily basis.  Most of these tools are (believe it/not) GUI applications.  You can lose time by slogging through a CLI solution only to learn you could have gotten the job done quicker with a GUI app.  But when the GUI app is clumsy or lacks a reliable batch process—I consider command line solutions.

So, with that, here are some tools/apps that I install to my Linux desktops.  Since I prefer Debian-based package management, GUI installs will reference “Synaptic” while command line install instructions will be “aptitude”.

Categories
Applications Your Choice

Favorite Linux Apps: Audio & Video

This one’s up to you.  There are so many to pick from, just check Synaptic.

Digital Audio Playback

For an iTunes-style program, try AMAROK, and for simple playback of audio files without hearing the audible “gap” between song cuts, try Aqualung.

Audio Editing

I have used Audacity for simple stereo-file (non-multitrack) audio editing.  It got the job done, but arguably, there are better tools available for semi-pro recording on a Linux system.

Digital Video/Media Playback

VLC is a reliable application that can play many multimedia formats.  VLC sometimes comes standard with a distro.

Video Editing

I haven’t done much video editing, but so far I’ve tried Kino and I found it really easy to use.

Categories
Applications Using Linux Web Development Your Choice

Favorite Linux Apps: Web Coding

Linux Gui Applications for Website Design/Development

If you’ve got a site to develop or design, it’s easy to set up a working web server based environment in Linux. As stated in another post, you will need an IDE-style text editor (or at the very least you’ll need an editor that lets you keep several files open at the same time).

Run your pages using a web server such as Apache

While there are a few ways to do this, installing XAMPP for Linux by Apache Friends is simple.  It is free, well-documented, and you can set up a website very quickly.  By default, the web server is not started at boot time, (which to me is a plus) and starting/restarting can be controlled by issuing a command at the terminal.  XAMPP comes with MySQL and PHP 5, so it gives you just about everything you need to develop/create dynamic, database-driven web pages with the ability to reuse code (via PHP “include” directives).

Check your work in a few browsers to ensure consistency

If you’re running Linux it may seem a daunting task to evaluate your site’s appearance in Mac OS-X or Microsoft Windows.  Daunting yes, but you can come close.  Safari in Mac OS-X uses the “webkit” layout engine and you can view your pages in the konqueror web browser as a poor-man’s substitute.  It’s not perfect, but it’s close.  Mozilla firefox uses the Gecko layout engine so it won’t show you know how a site looks in Internet Explorer for Windows.  Firefox has a browser plugin called “IE Tabs” but I’m not sure if this reasonably captures the look and behaviour of the native IE.  Be sure to browse the Firefox Web Development add-ons page.