A few years back I inherited a brand new web application. It was commissioned by a desperate company looking to speed up its work flow, they wanted to be more efficient and deliver proposals worthy of the product they were selling. The assumptions behind this application were of being versatile, fast and comprehensive; it was supposed to be developed in a .net environment based on the new MVC framework (cutting edge at the time) with the latest bells and whistles, but instead…
When I was first exposed to the app, what I noticed were the eternal post-back times and URLs with .aspx extensions, which means it wasn’t a MVC app. Ding, dong…alarm… nothing looks like the assumptions!!! At the same time I kept on hearing frustrating remarks coming from the company employees: “…come on! Load it already! I need to make a call! I need to send this proposal!…..” and so on.
So I started diving into the source codes and there it was, an old fashioned Web Form application with any possible little logic handled by the server. Things like input a quantity on a line item in an invoice and wait for the server to calculate the total to then add the item to the invoice item list and finally save the invoice. All clicks were post-backs — a nightmare!
An overall rewrite was needed but budget and timeline did not allow it, with very little resources and the need to speed up all processes A.S.A.P., I had to compromise and try to transition the app page-by-page, section by section and module by module, where possible.
This process (still ongoing today), despite being quite challenging, turned out to be full of interesting topic of discussion for any developer in the process of transitioning from a legacy application to something more modern (I know….what is “modern” today in our field? …. new frameworks and cutting edge trends are already old the moment they hit the market….). Therefore, I decided to document as much as possible in this blog. And so emaquest.net is born, a Chronicle of an evolution, a developer quest.
I hope you’ll enjoy…