Being a junior developer in need of some money for new hardware, I have stumbled upon many of the freelancing websites, and really soon, I have gotten my first customer. Complete Project Management, CRM and simple accounting website for small business. As we have been discussing the terms, I have proposed GAE/Python/Bootstrap/NDB as that is something I am really familiar with, as I have been working on GAE projects for the past two years at my internship place. We discuss the pay, terms, non-disclosure and I offer my approach to the project (followed the path of what I learned closely).
I propose working on the backend first in three phases:
- Company/User System + Project management
- Analytic/Simple Accounting (intuit integration as he later added)
I followed up with a 2 week period of the UI developing and testing.
At first I have asked him, what are the functions you would like me to develop in all the three phases. His reply was that he doesn't have the time to prepare the document I asked him for, which I found ridiculous, and asked me to prepare one and he will edit it. Of course he never did edit. Okay, first sign of the client that doesn't have a clear picture of what he wants.
He bought a template and asked when do we start testing. So I deployed the app with just PM and Company/User login after two weeks, only to be told he cannot test on anything that is not that template. I made a replica of the theme, literally, as we cannot use the stuff that the actual theme does have (fancy inbox, calendar etc)
I told to myself whatever. The first approach I took was to create a base.html and base-nav.html and extend them in other templates, in order for the code and other stuff to be tested easily. I did made this via bootstrap. He repeated he cannot test on that.
Now I am struggling with an html page that is 4 thousand line long I have to trim to create a base.html I will extend in other templates, with all the ridiculous amounts of static files that are completely unorganized in the template files and with a boss that wants to test. He doesn't even know what he wants to test.
I have sent screenshots, deployed the app, chatted daily, but it just isn't enough to convince him we should be focusing on the backend instead of the frontend first.
It's like building a car - first he wants to built the outside parts and limit the engine, instead of first building the engine then adjusting the outside to it.
Do you have any tips on how to approach this and resolve it?