At Ibuildings we highly value the principle of 'using the right tool for the job'. Of course: our own business framework ATK and our CMS WDE get our special attention, but we don't want to close our eyes for other open source frameworks or content management systems that are out there. Each of them excel at their own special field of expertise and it's just that what makes them suitable for the job at hand (or not).
Occasionally clients have special wishes and demand other means of development than we usually provide. Requests may vary from implementing a design made by a third party (
with all its possible hassle), to prescribing the framework or environment they want us to use for large applications. This may seem a bit odd, but usually there are valid reasons, for example:
- they are already accustomed to its administration interface
- they have libraries readily available for those frameworks
- they fear that certain approaches may cause performance issues
An example of a website we made in a rather unusual environment is the
Tina website. This was developed entirely on
Wordpress, as the client was accustomed to its administration interface. As you may or may not know: Wordpress is not much more than a blogging tool for web publishing. Consider this to be Wordpress on steroids: with numerous custom plugins and special themes to suit the clients' needs.
One of the latest projects we've started on was requested to be built using
CodeIgniter. CI is a very intuitive MVC framework, suitable for all tasks but particularly strong and lightweight for frontend development. Having previous experiences with CI, I was thrilled and excited about this one. The framework is easy to use, easy to learn and very strong and flexible. Building forms is probably the biggest downside to CodeIgniter, making it less suitable for backend programming.
Rapyd (which is built on top of CI) came to the rescue, providing a solid interface for form handling and data presentation. Our own business framework ATK would have been a good backend alternative too.
Having to adapt to open source software and tools may be a pain, a challenge or a blessing. Which of these applies highly depends on technical limitations and the thoroughness of user guides. However, for us as developers it's valuable to learn different environments and understand the philosophy behind them, in order to built even better applications in the future.