With v1.0 MomentVille now launched, I was doing a bit of a postmortem on the process. I hope that this will help other new app developers judge how much time they might need to deploy a new app… I’d love to hear what others find for their breakdown in terms of percentages.
1 Month: Learning: First, before even starting, I needed to learn Ruby on Rails to sufficiently start (with no web dev background besides HTML with table layouts). I would estimate this took about 1 month. I did start developing the wedding website builder before feeling really comfortable with rails, but most of the time in the first month was just getting comfortable with rails and web app development. I also got a book on CSS (highly recommended for anyone who still considers using tables) and that was included in my learning time.
These are rough estimates, but I would roughly categorize my time for this app as follows:

~25% Prototype Development: Writing the core of the application.
~ 25% Code Adjusments:
- Code Refactoring: cleaning up hackish or silly things I did because I was just trying to get something working, or I didn’t know better.I think this should be down along the way, otherwise you end up with nasty bandaids everywhere.
- My Code Adjustments: making adjustments to my code so things were a little more friendly. Eg: making the polls more user friendly,
- Shared Code Adjustments: Adjusting shared code that I used to fit into my system. Eg: making the authentication code use email address as login id, update InPlaceRichEditor for undo edits when cancel is hit, etc…
~ 25% Cross Browser Testing
- Gosh, this was painful. I hope it gets easier over time. A lot of the testing I did was manual, because I was looking for visual inconsistencies which I couldn’t find a good way to test in Selenium. I wanted to make sure that the cursors were correct based on mouse position, and state of the app, etc… Ugh. Start testing on IE6 early. This was probably made more difficult by the fact that I have a large number of themes (styles) over which to test. More on this in a later post…
~ 13% Styles
- This is probably higher than most will be, since wedding websites on momentville can have any of a number of themes.
~ 12% Test Code
- Test Writing: Writing unit & functional tests in Rails is easy. You should start early. Honestly. Just force yourself to learn how. It’ll take a day, and save many more….
- Selenium Tests: Selenium is a great tool for UI testing. Rails testing is great for business logic, model verification etc, but you need to test what it is like to drive an app to, and Selenium is great for this.





