Review: Zenoss 4/5

Have been runnning Zenoss for over a full year, here is my verdict:

Product (4/5):
  • Monitors hundreds of nodes running of a not to beefy vm.
  • Easily extendable.
  • Smooth upgrades. (Not automatic but well documented.)
  • User interface is sometimes a little hard to understand. Not bad for a product the size of Zenoss but not perfect either.
Documentation (4/5):
  • Lots of official documentation freely available covering most of what one needs to know.
  • Forums were migrated to Jive a couple of years ago leaving lots of broken links.
Community (5/5):
  • Nice and helpful community.
  • Lots of contributed plugins a.k.a. ZenPacks. Examples 
    • Hardware health status on HP servers
    • Oracle databases
    • vmware ESX and ESXi

I did a lot of reading up front before implementing Zenoss and considered 
  • Zabbix,
  • Hyperic,
  • OpenNMS, 
  • Nagios 
 before making the decision. I personally liked both Zabbix and OpenNMS and have heard good things about the but Nagios/Icinga and Hyperic but chose Zenoss because of 
  • agent-less architecture 
  • hp hardware monitoring almost out-of-the-box
  • snmp trap handling.
I recently asked myself  if I'd use Zenoss again and the answer is: Yes, at least if I have to monitor hardware.

However keep in mind that a full implementation might easily take weeks even for a skilled sysadmin, depending on the size of the monitored network, the status of the network (is snmp enabled? Who has to approve it? etc.)


Review: Flexiglass 5/5

If you are a Mac user that have spent any time on recent desktop Linux, chances are you will be missing Compiz-like window management.

(On a side note: Even Windows converts may be missing some niceties such as double click to maximize, or resize by any corner or window edge that wasn't added until Lion.)

I bought a Flexiglass license a couple of months ago and I love it. Flexiglass offers:
  • Move a window using alt + two fingers (think alt-dragging in gnome/kde)
  • Resize using alt + three fingers (Mac OS X > 10.7 can't resize a window by dragging any corner/border) 
  • Real maximize by right clicking the plus button (Make a window fill the screen, instead of leaving to the window manager to guess how much space it needs. )
  • Real close by two finger clicking the cross button. (Actually closes the application instead of closing the window and leaving the application running.)
  • Shortcuts for resize/move to specified postitions. Nice for when you want a howto and a terminal side by side.
I have a Divvy-license from before but after I started using Flexiglass I don't need it anymore as Flexiglass offers all I used Divvy for and more.

Below are some screenshots from the settings to show the configurability of Flexiglass:

Basic settings for Move and Resize. The settings are customizable for both mouse and trackpad and Flexiglass automatiaclly changes profile when you attach or remove a mouse. Nice!
The exceptions list: I don't need it but I figure graphical artists might need to be able to use the mouse together with modifier keys in some applications without activating Flexiglass.

I thought I'd use the "Real Zoom" and the "Real Close" features a lot, but as it turns out I end up double clicking in the window title bar to maximize it instead. On the other hand I use the Quick Layout Shortcuts a lot for example to tile up two shells at the right of the screen and the documentation on the left

Autostart? Yes!


Do those stylesheets really need to be in the page body?

I once worked on a medium size enterprise software project that felt very sluggish and slow. I was new to the technology stack, new to anything but small web applications and I figured it just wasn't possible to get that particular stack any faster.

As the project went on features were added, more optimizations were added by expensive consultants,  a few performance regressions were weeded out but the app was still as sluggish as ever until one day the ux designer came and asked if there was any reason the consultants needed the stylesheet in the page body instead of in the head.

There wasn't, and at the next deploy the app was suddenly a whole lot faster and smoother. So much for the cruft of StringBuilder for every string concatenation. So much for higly efficient log statements, each spanning three lines, applied liberally across the whole codebase.

From that day on I became a little more pragmatic, a little less uninformed regarding that particular stack, the expensive consultants that happend to know it and optimizations for web applications.

Disclaimer: Of course, I'm not saying you should ditch StringBuilder and stop checking if debugIsEnabled() in thight loops, but in the average controller code in the average enterprise web project I guess they won't matter much.


Review: repositoryhosting.com 5/5

I've been using repositoryhosting.com since late august last year, and it seems like now is a about time to write a very small review.

The good stuff:
  • Your choice of version control system:
    • Git
    • Mercurial
    • Subversion
  • Filestore with WebDAV included
  • Trac
    Included plugins, selectable on a project by project basis:
    • Agilo
    • Timing and Estimation
    • Discussion Forum
    • Batch Modify Tickets
    • Custom Roadmap
    • Download Releases
    • Markdown Macro
    • Spam Blocker
    • Table of Contents Macro
    • Ticket Importer
    • Wiki Backlinks Macro
    • Workflow Editor
    • Wysiwyg Editor
  • Support for incoming mail
  • Easy backups, both 
    • hosted and
    • easily downloadable (means no lock in)
  • User-friendly frontend lets you easily
    • create new repos, 
    • add users, 
    • administer permissions
    • everything else you need to do
  • Unlimited users
  • Unlimited projects
  • The price
    • 2GB for 6$/month
    • 1$/month/additional GBs
I use it for a couple of my spare time projects and I also have a kind of GTD task list in there.

The option to create tickets by mail is also really great. I guess almost every busy person has a couple of use cases for a working automatic mail-to-task-interface.

If you have read everything  carefully so far, you'll see that there is no list of bad stuff. The reason is I haven't found anything yet. (The closest thing I can come up with is if they will manage to stay in business at this price, when everyone else needs to charge more.)  I've only used it for 6 months though, so I might have missed something.


    RewriteBase takes one argument

    Staying in Denver, CO, away from my family, and far from the development databases at work I decided I had time to work on a pet project of mine.

    Knowing there will be a few hours on airports and in the plane on my way home I decided to get the project running correctly on my laptop before I continued work.

    Then I ran into this:

    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, you@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Log file:

    [Sun Jan 09 14:16:56 2011] [alert] [client ::1] /Users/Sites/web/.htaccess: RewriteBase takes one argument, the base URL of the per-directory context

    After browsing through the first two pages of google results withouth finding anything useful I suddenly realized maybe the config files doesn't accept comments at the end of the lines. Turns out to be true. See http://httpd.apache.org/docs/1.3/configuring.html#syntax