The Ditch Microsoft Office for Mac Challenge

I am going to take a quick break from WordPress related topics to discuss a new challenge I have set for myself in hopes of proving that it would be possible for my employer to ditch Microsoft Office in favor of an OpenOffice alternative. It’s easy to say that OpenOffice can replace Microsoft Office, but it’s quite another thing to prove it and be able to back up your claims. So for those of you who have thought about it, but don’t have the time to do a full suite of testing yourself, I hope you might find this useful.

The Challenge:

  1. Stop using the following Microsoft office products: Microsoft Word, Excel, and PowerPoint.
  2. Any suitable alternative(s) to Microsoft Office must be cross-platform compatible (i.e. Mac and Windows).
  3. Share and collaborate transparently with other people who may be using Microsoft Office products.
  4. Alternative(s) must be free or significantly less than a license of Microsoft office.
  5. Alternative(s) must be stable enough and user-friendly enough for end-user adoption.

I started my challenge on February 2nd after doing an analysis that would cost between $10,000 and $15,000 per year for upgrades and new licenses of Microsoft Office 2010. Let’s face it, times are tough and that’s not an insignificant amount of money. I’m a big believer in dogfooding, so I figured before I can recommend ditching Microsoft Office I would need to try it out myself for a while. So the 1st thing I did was go to OpenOffice.org and download the latest version for Mac.

It started out very promising. Files opened without incident and it looked pretty sharp. I was even able to quickly set my computer to open files associated with Microsoft Office with the new OpenOffice.  But things took a significant turn for the worse once I had to start working on files that I share with other people using Microsoft Office. In fact, the OpenOffice version of Excel, Calc, crashed between 15 to 20 times working on just one file that I received from our finance department. Not only did it crash repeatedly, but OpenOffice has this rather annoying file recovery Wizard that pops up every time it crashes. In principle, this seems like a good idea, but of those 15 to 20 crashes the wizard only recovered the file once or twice without crashing again; and only one of those recoveries that succeeded actually had the correct version of the file (without any lost work). Keep in mind, I wasn’t doing anything particularly challenging with the given spreadsheet. At one point it crashed 4 times in a row while I tried to change the highlight color of a few cells. I gave up.

To be honest, I thought my challenge was going to be over before it even started, but on the advice of a few friends I did some additional searching for some better Mac alternatives. I was able to find two other options, LibreOffice and NeoOffice. I eventually settled on NeoOffice for the simple fact that it appeared to be the most Mac specific port of OpenOffice. The newest version even incorporates many of the new the features of Mac OS X Lion, including full-screen, versions, and resume.  To my knowledge, the latest version of Microsoft Office does not even support those things.

The latest version of NeoOffice requires a donation for the download. I figured that as long as my testing went well I would be more than happy to spend $10 for the download, but for the time being I decided to stick with the free version, 3.2.1.

So far, after about a week of testing, I am blown away by the quality of NeoOffice. I was able to work on the finance spreadsheet with ease and send it back to the Microsoft Excel user who was none the wiser. I was even able to share a word document that needed comments with “track changes”. While I was unable to find the track changes menu or option, it automatically began tracking changes without any intervention on my part, which I considered to be fantastic!

So far, my only gripe with any version of OpenOffice is that they don’t seem to support .xlsx, docx, or .pptx saving. In other words, it’s no problem to open those file types, but they can only be saved back into the older Microsoft Office formats. While not a major issue for me, it could be a problem in certain environments.

I would love to hear from other people who have tried the same thing or are currently struggling with the same problem. If you have any tips or tricks, please share them in the comments. I will report back in the coming weeks with my additional findings. I’m also hoping to do some testing on the Windows side, but I’m not as concerned with the stability of OpenOffice on Windows as I am with the Mac.

How to sync files between computers without passwords

These instructions can be used to securely and automatically rsync files between 2 computers (Linux or Mac) either on your local network or even across the Internet using certificates/keys instead of passwords. Syncing files between 2 computers without using passwords is really not as difficult as it may seem, trust me!

The instructions below are combination of how-to guides I have found online and my own personal experience setting up syncing between computers.  This guide is written from the perspective of using Ubuntu Linux, but the majority of the commands would be the same on any flavor of Linux or even Mac OS X.

In this scenario I reference two computers:

Server A: This server is the remote host (the one that will be receiving files)

Server B: This server is the connecting host (the one that will be sending files).

Goal:

Automatically back up/rsync a folder from one Web server to the other every 10 min. securely but without passwords.

Step 1: Generate SSH Keys

  • Login to Server B (connecting host) as root
  • cd /home/%user% or cd /home
  • On connecting host (Server B), Generate keys:

ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
The key fingerprint is:
c1:17:3a:1d:d6:b7:ea:a1:d8:d7:38:91:76:02:d8:86 root@serverb.domain.com

Step 2: Create User on Server A

  • Login to Server A (remote host)
  • Create user on remote host: useradd %user%

Step 3: Copy Key Pair to Server A

  • Copy Key pair to home folder of user you just created From Server B (connecting) to remote host Server A (remote)

scp /root/.ssh/id_dsa* root@servera.domain.com:/home/%user%

Step 4: Install Keys/Certificate

Login as rsync user on Server A (remote) (**Hint: This is the user you created in Step 2**)

cd /home/%user%
su %user%
if [ ! -d .ssh ]; then mkdir .ssh ; chmod 700 .ssh ; fi
$ mv id_dsa.pub .ssh/
$ cd .ssh/
$ if [ ! -f authorized_keys ]; then touch authorized_keys ; chmod 600 authorized_keys ; fi
$ cat id_dsa.pub >> authorized_keys
$ cat authorized_keys

**Hint:  The last command in step 4 should list the authorized keys for that user.

Run ssh@%user%@servera.domain.com command from Server B (connecting). If it doesn't ask for a password, it worked!

Step 5: Install Rsync

Install rsync on source computer.  Instructions below are for Ubuntu.

apt-get install rsync

RSync Dry run

rsync -vzrtn -e ssh --delete %user%@servera.domain.com:sync_directory/ /path/to/other/directory/

**Hint:  Be sure that you are running rsync 3.07 or later. These options “- vzrtn” are what worked for me, but depending on what you need you may want to change them. Also keep in mind that the “- n” option is only for a dry run and should be removed when creating your script below in step 6.**

Step 6: Create Script and Cron Job

nano /bin/rsync.sh

Add rsync command. Be sure script is all on one line.

rsync -vzrt -e ssh --delete %user%@servera.domain.com:sync_directory/ /path/to/other/directory/

Step 7: Create Cron job

crontab-e

0,10,20,30,40,50 * * * * /bin/rsync.sh #Description…

The schedule above will run every 10 minutes.  There are lots of great articles online for how to modify Cron tab schedules to meet your needs.

Search 1Password with Google Chrome’s 1Password Extension

1Password is one of the Apps on my Mac that I use the most. 1Password can create strong, unique passwords for you, remember them, and restore them, all directly in your web browser. It come bundled with extensions for all the major browsers. Recently I have started using Google Chrome for Mac more and more. I happened to discover a new feature that I had no idea existed and decided to do a quick post to share it.

If you want to find a website login in 1Password you have to unlock it an then start searching for where you want to go.

Some browsers like Safari have a keyboard shortcut ( option + command + \ ) to bring up the quick search called Go & Fill Login. Safari’s version looks like this:

Until just recently I had no idea you could do something like this in Chrome, with Chrome it is actually even easier. All you have to do is start to type 1password in the browser bar area. This will start the quick search for 1password right from their. You will have to unlock 1password before you can use this feature. It looks like this and is just awesome.

If you don’t already use 1Password I highly recommend it. 1Password has certainly made my life easier, you can even sync it between multiple computers using DropBox.

Get 1Password
How to install 1Password browser extensions: http://blog.agile.ws/1518190697/
Get DropBox

How to Split Your Mac Hard Drive into 2 Partitions

If you’re like me, then you’re probably trying to figure out how to install OS X Lion on your Mac. The first requirement is that you have an extra partition on your Mac. Follow the instructions below to add a new partition to your Mac on the fly without formatting anything.

**WARNING: It should go without saying, but just in case, you should ABSOLUTELY TAKE A BACKUP before attempting any of the steps below.**

1. List Disks

Open the Terminal App and list your available disks by running:

diskutil list

Output:

Apple_HFS Macintosh HD            249.7 GB   disk0s2

2. Find Disk Identifier

The one you will split is probably called “Macintosh HD”, as shown above, although there will be 3 entries if you have a single partition. Each disk will have a disk identifier. Mine is disk0s2.

3. Check Min/Max Disk Size

Query your disk to find it’s min and max sizes by running this command and replacing “disk0s2” with your disk identifier:

diskutil resizevolume disk0s2 limits

Output:

For device disk0s2 Macintosh HD:
Current size:  249.7 GB (249715376128
Minimum size:  122.5 GB (122549932032 Bytes)
Maximum size:  249.7 GB (249715376128 Bytes)

4. Split your Boot Disc

Split your disk and make sure you don’t set your boot disk to less than the minimum. This can be run as many times as you want until you run out of space. In other words, if you want 3 disks instead of two split the disk again using the disk identifier of the newly created disk.

I want to make my boot disk 200GB and my Second (Lion) partition take up the rest of the space, about 50GB:

diskutil resizevolume disk0s2 200GB JHFS+ Lion 48G

The command causes the second partition to use the rest of the space on the disk, so just make sure that you specify a number, 48GB, that is less than the total available disk space after the split.

5. Dealing with Errors.

If you get an error like this then you should boot off your Mac’s startup disk, Open Disk Utility and click Repair Disk. Then re-run the command. You can even run it from terminal while booted off the install disc.

Started partitioning on disk0s2 Macintosh HD Verifying diskError: -9915: 
Could not modify partition map because filesystem verification failed

7. Now when I run diskutil list I see a new drive:

2:                  Apple_HFS Macintosh HD            200.0 GB   disk0s2
3:                  Apple_HFS Lion                     49.6 GB    disk0s3

8. If you have access to Mac OS X Lion you can now use this partition to install it.