Yeah… it has been frustrating being asked to do large amounts of work for free, for the benefit of a company which has a history of ignoring the code license and delivering products which do not live up to expectations. Remember the S42?
The company has been trying to improve though, to make things right with the community. And, as of yesterday, they asked to hire me for the MT18. So I’ll probably add a MT18 build target for Anduril and make sure it works correctly.
Exactly. Busy busy busy, and these projects don’t usually pay well so I have to prioritize other things.
I haven’t attempted to track anything like that, but the sloccount
tool can produce rough estimates of how much it would cost to develop arbitrary code at a traditional software company like IBM or Microsoft. This includes both the salary paid to the developers and the other overhead in the company.
So I’m curious. Let’s see what sloccount says…
> bzr branch trunk test
> cd test/ToyKeeper
> sloccount .
...
Development Effort Estimate, Person-Years (Person-Months) = 3.51 (42.11)
(Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05))
Schedule Estimate, Years (Months) = 0.86 (10.36)
(Basic COCOMO model, Months = 2.5 * (person-months**0.38))
Estimated Average Number of Developers (Effort/Schedule) = 4.07
Total Estimated Cost to Develop = $ 474,063
(average salary = $56,286/year, overhead = 2.40).
So, after factoring the overhead ratio of 2.40, that works out to:
- $197,526.25 salary for the developer
- $276,536.75 corporate overhead
It estimated about 3.51 person-years to develop. I’ve been doing it in my free time for about 4.5 years. So it’s probably not too far off. However, there just isn’t that much money in flashlights. The estimated total cost is probably almost as high as the total revenue of all lights sold with my code so far… so even in an ideal scenario where I got literally all profits, I’d only get a fraction of sloccount’s number.
I have not been saying it works perfectly. I have been saying it needs the correct compile options and calibration. I have also been saying it is important to understand how PID works, and understand how to work with source code. And saying that companies need to talk to me directly if they want my help.
On a related note, your pogo pin flashing adapter design should make it a lot easier to do thermal testing on real hardware. I should have one of those soon, and I plan to make good use of it. Maybe I won’t even have to build a simulator… though I’d still prefer to to use a simulator so I can get more precise results faster. Then I could run a whole test suite in a couple minutes instead of having to wait for batteries to charge between tests.