In Open Source I trust: Top 5 projects for daily use

There are days when I marvel at how far I’ve come since 2001 when the extent of my web experience was Front Page and basic html. In 2001 I met my boyfriend and he introduced me to the wonders of Open Source. Need a word processor or spreadsheet prograqm? Try OpenOffice. How about a graphic manipulation program, Gimp is just as good as Photoshop he’d say. I was sceptical and it took me a long time to “get it” but today as I open up VirtualBox once more to work on a client site with my favorite text editor Kate it dawned on me that the utilization of Open Source on a daily basis has crept into my routine and I’m loving it.  Excuse me while I fire up Amarok here and I’ll tell you about my top 5.

Although I use more than 5 Open Source projects in my daily routine the following are the ones that get the most use and the most attention.

VirtualBox – In February 2008 I wrote this post about my foray into desktop virtualization. Since then VirtualBox has become a mainstay on all my computers and laptops. I use VirtualBox everyday for the following tasks:

  • A sandbox for trying out Linux Distros before I install. Satisfies my curiousity about up&coming distros without having to wait around for hardware resources to be available. See DistroWatch for Linux/FreeBSD Distros to try
  • Testing out new versions of Operating Systems. I tested out Windows 7 last week in a VirtualBox on my laptop without having to build a new machine to install the OS.
  • Trying out new Open Source projects before we dedicate hardware resources (especially content management systems).
  • Installing a commercial application (closed source) like QuickBooks on a VirtualBox for testing (test compatibility with your OS on a test instance without breaking your base OS)
  • Installing and testing bug trackers, server maintenance and SaaS ready applications. Examples of applications we have tested in VirtualBox include Mantis, vtiger and Nagios.

I tried all the desktop virtualization options available and I found VirtualBox to be the easiest to use and I’m still using it a year later.

Plone – Plone is a Content Management System built on the Zope Application Framework. Written primarily in Python (with a little C thrown in for good measure) this project has grown in value as the community has grown in strength. Plone was my first real involvement with an Open Source project and the Plone community is what keeps me involved. It’s open, helpful, charitable idealogy keeps me hooked. I spent 70% of my day working on client sites developed with Plone.

Firefox – As a web developer whose primary focus is look&feel the web developer toolbar in Firefox has become invaluable to me. Firebug is essential to my daily tasks, I just couldn’t imagine trying to track down a css issue or a javascript issue without Firebug. Firefox has become my primary browser and the only time I open IE is to check a client site for cross browser issues. Although Google’s Chrome browser is much lighter I only use Chrome for non-work browsing because Firefox has so many great third-party tools that help me do my job everyday.

TweetDeck – I have used TweetDeck on both Windows and my Ubuntu box. I’ve tried quite a few of the Twitter clients and Tweet Deck is the easiest and has the prettiest interface. I find it extremely intuitive and it helps me to organize tweets. I’m looking forward to even more features and functionality as TweetDeck matures.

Ubuntu – Although we have been using Debian for years on our client servers (as well as virtualization) I wanted something on my desktop that was easy to use. Ubuntu with KDE (I install kde from source, but you can get KDE on Ubuntu by downloading Kubuntu) is a great combination.  You can make your desktop OS your own through customization. Ubuntu doesn’t use as many hardware resources as Windows and it’s free.  I’m not going to lie to you, I ran into some issues with the video card and some audio/speaker issues but there are forums and tons of tons of tutorials on troubleshooting Ubuntu. I work with Ubuntu everyday in some capacity and find it’s a quality distribution and easier to pick up than most of the other distributions.

So there you have it, my top 5 Open Source projects, VirtualBox, Plone, Firefox, TweetDeck and Ubuntu. Other projects that I use on a weekly basis, Gimp, Amarok and Open Office.

If you haven’t tried Linux yet, download VirtualBox onto your Windows (or Mac), grab an iso from DistroWatch and you should be only minutes away from experiencing the joys of Open Source!

Cloud Computing: Will mom&pop technology companies suffer?

I have been in the business of selling technology services since 2000. When I started my partner and I decided we would not go the way of $8.00 a month hosting providers. The customer support required would have wiped us out years ago.

I am in the process of redefining our services and have been following all the twittering about Rackspace and cloud computing. One of the companies I admire, Jazkarta, has moved to offering hosting through Amazon’s cloud services (EC2).  It’s an intriguing idea and I haven’t decided against it yet, but I tend to be conservative and want to be sure this really does make sense for us and is safe.

We looked at Google’s cloud offering along with Amazon a year ago and decided against it because it just seemed so new and rife with the potential to rack up a huge bill (kind of like Google’s AdWords and suddenly getting a gazillion clicks you have to pay for!). So we decided to wait and see. Now a year later cloud computing is attracting everyone from the service provider to the enterprise CIO looking to cut IT costs.

This worries me, not because I feel threatened as a provider of IT services, but because I’m not quite convinced that this is the “safest” or “best” solution for the enterprise. I can remember working with a hosting company that offered FreeBSD jails to clients (my client was already hosted there and needed Plone support). Everyone shared resources, clients basically received a directory on the filesystem and software (php,python, etc) was installed on the system for everyone to use. Worst experience ever, hosting vendor decided to upgrade Python on the server. I spent 3 days trying to get a hold of said vendor (didn’t return calls) and trying to get 2 sites that got taken down by this global upgrade back online. Those clients are now hosted with us in their own xen based virtual machine.

So one of the first things I did was put “downsides to cloud computing” in Google:

Voice of the Customer: Trend Spotting –  Cloud Computing

What are the downsides to cloud computing? Solutions may be subject to low availability, internet connections may be slow or servers may become infected (Google App Engine, a service for developers, was crippled for several hours last month, blaming the outage on a database server bug) . Solutions may be through multitenant or shared services, not an ideal solution for regulated businesses or hyper secure applications. In addition, application customization may be limited. Finally, if your data structure does not follow commonly accepted data practices, there may be compatibility issues between your data and the host data servers.

This may have improved and I suppose for applications that do not have “security” concerns, Cloud Computing can be an excellent way to manage IT services. As someone who deals with clients who are concerned about security this may not work.

Outsourcing IT has always been a hit-or-miss scenario and I think we need to take a step back before everyone jumps on board with the hope of “saving money”. Something that hasn’t been mentioned here is the human element of IT. Granted being able to scale resources and only use what needed is a great thing. At the same time it makes me nervous to allocate control to a cloud service with a third party that doesn’t know my clients and what they need.

I think cloud computing has it’s place but will it replace smaller IT companies that offer one-on-one support and consultation?

No.

Will it provide clients and providers with more options?

Absolutely.

Is it secure and scalable and free from the same potential issues as non-cloud hosting services?

Security, depends on the level you want. Scalable, yes it’s scalable but is it flexible? Cloud computing will introduce different issues than it’s non-cloud counterpart. Those remain to be seen.

I’m still not sold on Cloud Computing but it is definitely an interesting concept. I don’t think the mom&pop tech companies need worry, yet.

Ubuntu, baby

So I know I’m not the first and I most definitely won’t be the last to jump inside the Ubuntu “circle of love”.

My boyfriend warns me that Ubuntu may go the way of some other long-gone Linux Distro’s but I say, “pah, you pessimist!” and he just grunts and gives me that “you question my wisdom?” look over the top of his glasses. I on the other hand am very much a girlie (even at 44 years old) and I love pretty wallpapers and sexy themes and neato plasmoids that “do things”, like rotate pics of my kids or keep me updated on my twitter stream.

I don’t have enough experience to say one way or the other if Ubuntu has the staying power to outlast anything thrown at it. As a virtual noob, It looks like it to me. I’ve had a hell of a time letting go of Windows (I still have Windows on my office desktop and my hp tablet pc) I’m starting to lean more and more towards an all Ubuntu lifestyle (almost all, I like the ability to play a PC game on occasion). If *nix starts distributing PC Games for the mainstream you bet I’m dropping Windows.

I started the move to Ubuntu because after discovering Virtual Box over a year ago and installing Debian and Ubuntu on virtual machines on my system I started to use my *nix based virtual box more than my Windows host. I love to work on websites through sftp and using Kate Text Editor to work on css files (and Plone templates). Now I have Windows Vista in a virtual box on my Ubuntu Intrepid 8.10 machine, my Ubuntu machine is a week old. I haven’t needed my Windows Vista VM for a few days.
I’m getting really weird about it. Boyfriend calls it being “geeky” but last night I was up until 2am installing OpenOffice.org 3.0 and Amarok. I had broken the sound on my Ubuntu box, the boyfriend says it’s because I didn’t have any speakers connected (silly man, you weren’t there when I was on the floor plugging in one of many speaker sets I have hanging around, but ok, yes I didn’t have any speakers connected) I have sound on Ubuntu that’s all that matters. Next challenge is getting Flash working right, I can see stuff, but no sound on flash yet.

My goal here is to bring my Ubuntu install as close as possible to what I am used to but with the added stability and reduction in overall cost of a *nix based machine. My kids machines are next.

I’m a little disappointed in the “look” of OpenOffice. Shallow and selfish of me I’m sure but I can’t help but love the Mac “look” and the Windows Office “ribbon”. It appeals to my highly visual nature. I don’t like grey, partly because it reminds me of all the times my dad (a C programmer and database administrator for over 30 years) tried to get me interested in computers and programming. “hah, no way dad, I’m going to be an aaaactrrrress” (not a misspell there, that’s how you say it, with emphasis)

Flash forward 30 years, guess what I’m not 😛 I’m not a programmer and I’m not an actress 🙂 I’m a designer with a penchant for templating cms systems. Just shoot me now.

My foray into desktop virtualization

Our company has been providing virtual machines (VM’s) based on Xen for a couple years now. I’ve logged into client VM’s and rebooted Zope or worked on a skinning product for Plone on the filesystem. I’ve restarted VM’s and have an overall understanding of how they work. I didn’t realize how virtualization could help make me more productive in general.

I’m a MS Windows type person (makes my partner crazy sometimes as he is a die hard Linux geek) and I decided to upgrade to Vista on my work machine this past weekend. My partner kept insisting that I use Linux as my “base” and put Windows on “virtualBox” or “VMWare”. I didn’t like the idea because virtual machines for the desktop just seemed to run slower and I spend a LOT of time in Windows. So I fought it. I had let my partner create a dual boot for me with Kubuntu and WindowsXP about six months ago but the hassle of restarting my machine to boot into the other OS got to be too much, and guess what? I spent most of my time in Windows. I do all the project management, bookkeeping and Windows/IE testing for clients.. so I was constantly having to reboot back into Windows to test client sites or get invoices out.

I decided that I’d rather have Windows Vista as my base/core OS and create the following virtual machines:

  1. WindowsXP (I have a CiscoVPN client that I have to use to log in to a few of our clients intranets that does not play well with Vista),
  2. LiveCD VM (so I can test various Linux distros),
  3. A Vista VM so I can test applications (some apps just don’t play well with Vista at all..so this gives me the opportunity to try them out, configure them, and if they work, install them on my core OS.. otherwise I can just dump the VM and start over if I bork something)
  4. A Debian VM for testing Plone (so I don’t have to use our client server resources everytime I want to do some testing) – again if I bork something I can always dump and rebuild

I did some research and came up with three options for adding virtual machines to my Vista desktop:

Microsoft Virtual PC

VMWare

VirtualBox

All three products met my needs for creating virtual machines. They did what they said they did and none of them were hard to work with, I think beyond that it’s a matter of preference. Of the three packages VMWare’s interface is the most attractive. Both VMWare and VirtualBox have a better process for creating virtual machines than VirtualPC. VirtualPC uses an “add hardware” type wizard that isn’t as intuitive as both VMWare and VirtualBox (at least not when it comes to configuring your “machine” with resources). I tried downloading and using VirtualPC’s IE6 vpc for testing client sites and I could not get it to work. I would say that was probably my own fault but it was still a bit frustrating.

So I narrowed my choices down to VMWare and VirtualBox. It was a close tie, both are quality products and both had an intuitive configuration process for the GUI-dependent. It was a tough choice.

Envelope please….

And the winner is… VirtualBox

VirtualBox

I was really impressed with VirtualBox for a number of reasons. One being that they have downloads for numerous OS’s including OpenSolaris and OSX. I managed to setup all these VM’s on my Vista desktop without assistance from my geeky partner. I like pretty interfaces and ease-of-use above anything else.. and VirtualBox gave me both of these. I still have some tweaking to do (I don’t have that much RAM on my desktop .. little less than 3 gigs.. so I have to be careful) but I’m really enjoying creating these environments where I can play to my hearts content and have access to the legacy (XP), modern (Vista) and Open Source (Linux, Zope, Plone) technologies I deal with everyday.