The Web Is Changing And So Are We
Thursday, June 9, 2011 Comments (6)
Today, we would like to share some pretty big news! The blog has been silent for a couple months and that may lead some to believe we have been idle, but on the contrary, we have been working hard designing and developing the next generation invoicing app!
As you may know, we released version 2.0 in December 2010 and we've continued to push out regular updates with new features and improvements ever since. We have not, however, released the new API. The reason for this is because we have been preparing it for inclusion in version 3.0.
For a while now there has been an alternative way of developing web apps. More and more apps are moving over to the client-side. This is where the web browser itself takes care of the hard-work and gives the app the snappy feel you expect from a native desktop app. This also reduces content duplication and means less pressure on the server and it provides better control of the app's state. We truly believe this is the future of web apps and with today's modern browsers there's really no reason to wait any longer. Therefore, we are pleased to announce that the next major version of The Invoice Machine will be a single page application built with Backbone.js and CoffeeScript!
We're switching to Ruby on Rails!
With version 3.0 we are also leaving PHP and moving over to Ruby and Rails. While you probably won't notice (or care) about this change it has speed up our development flow dramatically and, most important of all, it has brought back the fun in coding! One other reason we're switching to Ruby on Rails is because it's so extremely suited for an application like The Invoice Machine. Many of the functions we previously had to write on our own are already a part of the framework which means less time required for testing and debugging.
While some think it's crazy to rewrite an app in a new language when that time could be spent adding new features, we are confident we've made the right decision. We are in it for the long run and want a platform that's stable, organized, scalable and easy for a new developer to pick-up on. It will make it a lot easier and faster for us to push out new features and improvements in the future. Ruby On Rails also gives you an API with almost no additional coding. Version 3.0's API will be fully RESTFUL and JSON-based.
An improved user-experience!
While the current version of The Invoice Machine has probably one of the cleanest and easiest to use user experiences, it is actually 3 years old it and starting to feel quite rusty. We did a minor refreshment of the user-interface with version 2.0 but focused mostly on the back-end and it's new features. Version 3.0 will however come with a brand-new user-experience! We won't take away what's good with the current interface and workflow, but we will improve upon it and make it even better and snappier. You can also except some sweet new eye-candy!
Once you login you'll able to navigate and access all your data without a single browser refresh. It depends heavily on hash based segments similar to how Twitter and Flow do it. All data is received in JSON format and rendered by the client. If you're using a modern web browser, the experience will have an incredible increase in speed and usability. We've also taking full advantage of CSS3 and HTML5. While you'll get the most out of it with a modern web browser (such as Safari, Chrome or Firefox) it will still be functional in older browsers.
What to expect from version 3.0 feature-wise?
Version 3.0 not only comes with a new front-end, it comes with a lot of new features and improvements. These include:
- You and your clients will be able to comment and attach files to your invoices and estimates.
- A new Activity Feed where you can track all events for your account.
- The Items section is back in a new form called "Packages" which are ordered group of items.
- The Recurring feature has been improved and you'll be able to chose when on the day the recurring invoices should be delivered.
- New search functionality which will enable you to search, filter and sort your data.
- A new status called "Viewed" will indicate if the client has viewed the online version of the invoice or estimate.
- Plus a lot more!
What if I like the current version as it is?
Don't worry, there wont be a dramatic change in the way you manage and create your invoices and all your data will remain intact. We will also keep version 2.0 online and actively updated for a while after version 3.0 is released. In other words, you won't be forced to upgrade to version 3.0 when it is released, you can make the switch when you are ready.
When will it be released?
We have set an internal dead-line but it's still a little early to announce it. While the specific release date is subject to change you can except it be sometime in the coming months. As always, we take as much time as possible to make sure it's robust and polished.
That's it for now. Be sure to follow us on Twitter for the latest news and upcoming teasers! We're super thrilled to show you what we're working on. Thanks for your continued support in making The Invoice Machine one of the most popular invoicing apps!