Take a look at Khoi Vinhs brilliant article If It Looks Like a Cow, Swims Like a Dolphin and Quacks Like a Duck, It Must Be Enterprise Software:
Enterprise software, it can hardly be debated, is pretty bad stuff. The high-dollar applications that businesses use to run their internal operations.
If you work at a big company and you’ve ever had to do something that should be simple, like file an expense report, make changes to your salary withholdings — or, heck, if you’ve ever tried to apply for a job at a big company — then you’ve probably encountered these confounding user experiences. And you probably cursed out loud.
This is partly because enterprise software rarely gets critiqued the way even a US$30 piece of shareware will. It doesn’t benefit from the rigor of a wide and varied base of users, many of whom will freely offer merciless feedback, goading and demanding it to be better with each new release. Shielded away from the bright scrutiny of the consumer marketplace and beholden only to a relatively small coterie of information technology managers who are concerned primarily with stability, security and the continual justification of their jobs and staffs, enterprise software answers to few actual users. Given that hothouse environment, it’s only natural that the result is often very strange.
Fantastic! We all know software like this and most of us are probably forced to use such applications every day at work. It might be an internal application or a client that forces you to use one of their internal systems.
Creating your own, better user interface
At RailsConf, I was talking about a way to overcome those bindings to other systems. We made a Ruby on Rails plugin and showed how you could use it to wrap an existing legacy application and create a shiny, usable front-end on top of the legacy system.
- Khoi Vinh: If It Looks Like a Cow, Swims Like a Dolphin and Quacks Like a Duck, It Must Be Enterprise Software
- Justaddwater: Busy Preparing RailsConf Presentation
- Reform plugin website (where you can download presentation, submit bugs, checkout code, add documentation)