OVERSING UPDATE
I’m pretty much working around the clock. I write a little in the morning and then respond a few times during the day, but largely I”m working on the software from waking until sleeping.
It took me most of October and part of November to get my health back, but I spend the down time doing a lot of research and planning the effort. Lets keep in mind that I was pretty out of my head at the time, but work is work and I got it done.
What we discovered during the summer is that the app was too hard for us to update and maintain. This was somewhat intentional because I was trying to get to beta before the investment market cooled in the fall of ’15. But what we heard from investors is that we needed 50k of revenue before they would take on an enterprise product of this scale. What we also heard from Analysts is that to dominate the market we needed the accounting features that I had cut. What we heard from early beta sites was that it was still in late alpha stage. (which is true). But what I discovered when going through the code for my customer, was that it was overly dependent upon a series of factors: the speed of jquery/ractive (even if it was very well coded), mixing front and back end code, a terribly overdependence upon google datatables, a terribly unmaintainable use of callbacks to construct response objects, some serious abuses of memory, and a problematic implementation of accounting transactions.
Now you might think this is serious but as someone who worked on Microsoft commercial products, and as someone who has worked almost exclusively with enterprise scale software (oh…. and games of course), I just view this as the normal shaking out of a rapidly prototyped and iteratively developed beta product.
Now the fault here is mine because I had engineered my life to allow me to work on philosophy and the product at the same time, and to slowly hand over responsibility to the ukrainian development team so that I could return to the states, and start building the company from there. But these technical issues were larger than i’d planned for, and the team was frankly not as strong as i had thought (they led me to believe), and so I had not kept my nose in the code.
My view was that it would take me 90 days to fix the existing code, or it would take me an unknown number of months to do some substantial upgrading. But that if I wanted to take the product to market at low cost and get 50K of initial business, and attract the investors that I want (and I do know who they are), I had the opportunity to stay in the states and get that done, and nearly eliminate my cash burn.
So, during November I moved the back end to the most recent Laravel version just because if I was going to do a substantial change, I felt it was better to get it over with. Then I added the backend features that we needed to simplify what I’d found in our beta customers this summer. These are things that make debugging, adding or changing features easier.
Then I spent (far too long) traveling to Seattle to settle some affairs, and returning in time for christmas. Then Starting the week after christmas I began spikes for the front end. And since then I’ve been converting the front end to much, much, simpler code, that is much much faster. i’m also using the design we came up with this summer so that I get a little higher contrast experience with the default theme.
When I’ve finished that work – which I really don’t know how long it will take me, i’ll connect the functionality one service at a time. This reduces our backend to a pure API, without any UI services. The real reason this app is hard to debug is that lack of separation.
The resulting apis will be:
0) oversing.com (marketing site)
1) app.oversing.com, (application)
2) api.oversing.com, (data api)
3) search.api.oversing.com (full text/file repo api)
And then I just have a few new entities to add that complete the accounting system.
Now I am not sure what this sounds like to everyone, but what it means is that I don’t have to do much application logic other than the modifications to permissions and the accounting system. So most of the work is what you’d normally do when upgrading an enterprise application to a new major release.
And honestly, I love doing it.
We’ll get there. Probably about the time the investment market adapts to the shock of the past two years.
Curt
Source date (UTC): 2017-02-19 14:59:00 UTC
Leave a Reply