Why Agile Toolkit is best choice for Business Web Software?
It’s been 4 years since I showed up for M50 Enterprise Program (Government program helping start-ups in Ireland) dressed in jeans and t-shirt. I had an idea for on-line project and I wanted to pursue my goal. My belief was that if I write a great software and make it look good, people would certainly start using it. Sometimes it turns out to be like that, but it rather an exception that a rule.
Back then my idea failed, however I have learned two important things about software development:
- Research is very important. Talk with potential clients of what they want before putting your effort into making it.
- Find a shortest path to your goal. Make things work first, then make them work good.
By sticking to those two rules you can avoid spending time on something unnecessary, failing a project or even go bankrupt. Let’s see in more details how to achieve those goals in practice with help of Agile Toolkit.
Good for Business™
Efficiency — ability to convert time into added business value. If you are working on a software or planning to make a software, ask yourself the question: are all features really necessary? What are most popular features and which can be left out from your first release?
It is always a good exercise to talk with your potential buyers, rank features by demand and by approximate time required to build them. There are few things however which you won’t be able to cross-out:
Making The Interface
Any Web application regardless of it’s purpose will have to interact with user. Due to big diversity in user interfaces across different websites, there are no single standard on how web application must behave. For the last several years web software have been competing by providing a fancier interface. The most popular mistake which is done by many companies is that they think of the Interface as a selling point. The job #1 of the interface is to “not get into way of user”.
A consistent and simple interface is vital for web software, but there is no point to spend and customize it if your budget is tight. Yet many web services do exactly this — they come up with a completely new user interface built from the ground zero.
We believe, that you must have the choice. Either take a default User Interface bundled with Agile Toolkit or make your own user experience based on Agile Toolkit. Using default interface probably is a good choice if you are short on time. Make your own interface if you are really good at it and are paid for doing it.
Interface is important and Agile Toolkit gives your code an interface you can use right out of the box.
I have talked with Ruby on Rails developers and Zend developers who have been one month into learning those frameworks. They have grasped many low-level concepts and were yet to put them into use in some future projects. Any advanced frameworks would have deep internals with a lot of advanced things, however does a regular developer, who just wants to start using the framework, need to know about those?
As it turns out – very few. In our approach of building Agile Toolkit, we figured a way how to make the code look very simple on the outside. By establishing a simple and basic paradigms and building on top of them we can have a tool both sufficiently simple for beginners and sufficiently sophisticated for senior developers.
Sometimes learning the right things are better then learning more things. With Agile Toolkit you do exactly that.
There is a time in any projects lifecycle when some of the functionality need to go away or be replaced by a different functionality. Changes in business logic puts a strain on project core structure. If project is not developed flexibly, then after a couple of change-requests it would crumble and you risk to end up with in-efficient code which is too difficult to maintain and too disorganized to re-factor.
By using Models in Agile Toolkit you can ensure that your project is ready for growth. However unlike other frameworks developing with Models in Agile Toolkit is actually faster than developing without them. The first prototype you are building as a proof of concept which you put together in 10 days for your investors can be flexibly enhanced and transformed into a heavy business software after 1 year of development.
The current land-scape of PHP world consists of add-ons and libraries. Installing Add-on in a system such as Drupal or WordPress is a matter of extracting ZIP file into the right place. They come with the interface but are often too messy for developers to change or extend them. Each add-on is independent and aims to pursue a single goal. Libraries (or gems) are meant for developers and come with no UI at all. Those would come as a class or as a set of functions which similarly is self-sufficient and has no dependencies, but does not offer any out-of-the-box functionality.
Both models make it really difficult for any commercially-focused add-ons to take off.
In our further plans we see the ability of our developers to sell their add-ons or distribute them as an open-source through our portal. We believe that good developers deserve to be paid and reasonable-priced commercial software is just as important as open-source option.
When you plan your finances and get them approved by your investors, it’s important to have all the ends tight. Often investors would rather spend more on a product which comes with support then spending on a open-source product which comes with no warranty. As you think of which license to pick for your product, pay attention to “AS-IS” label. Even if you get lucky with one open-source product, you might be not so lucky with other and you might end up hiring expensive developer to tweak the system for your needs or fix bugs in the software.
As a person knowing your risks, purchasing commercial license for Agile Toolkit often is cheaper then adopting no-warranty software package.
A successful platform must suit your goals. If you are building a data-processing software or desktop software, Agile Toolkit is not a very good choice. If all you need is a CMS site or eCommerce solution with default features, you might be better off with some existing solutions.
Agile Toolkit is for development of your unique Web Software. If you are looking to grow your own intellectual property, if you are looking to do things differently or if you are willing to build a platform where you charge money and even if you want to automate some of the Data Flow using open standards and Web — Agile Toolkit is a good way to go.
You might want to look into other frameworks but always think about your own time being equivalent of monetary investment. If you need 1 month to learn a free framework then 1 month to build user interface — your solution is more expensive if you would have paid for license and support then developed your software in 2 weeks using bundled user interface.