3 ms·
That's partially my point. Unfortunately, it seems to me that with modern tools, libraries, OSes (Yak Shaving is actually one consequence of those) it's extreme
by beyondcompute 12y ago
That's partially my point. Unfortunately, it seems to me that with modern tools, libraries, OSes (Yak Shaving is actually one consequence of those) it's extremely costly to actually finish something of genuine robustness and quality. As I was telling to my friend once, at university we made database-centric applications using Delphi in under an hour and how much does the simple (couple screens, HTTP request, couple buttons wiring them) iOS application cost now? About a $1000?
And do you feel that people mostly building not what they want or what would enrich the community but what their tools allow them? Why after release of golang everyone started to develop data-storages with it? Does world need 100 more database systems (while few of currently existing properly support ACID)? Why people not building next-generation GUI tools with go? Because it does not easily allow it (it would be too cumbersome/costly).
- balabaster 12y agoIndeed. 90% of the time, the reason it's so costly to get anything done in industry isn't the developer's technical ability to get the job done, it's operational constraints: build pipeline, ops, company policy, communications breakdowns. If you can remove most of those impedances by only doing 20% of the work and still making 80% of the return on your investment, there's little reason to sink budgets into the other 80% of the work. It might seem wasteful when you look at something and see optimizations left here and there, optimizations that are a cake walk to the average developer, but the optimization doesn't always save/make as much as it costs to implement/deliver. Even though the 15 lines of code seems simple and you can knock it up in a prototype in 6 minutes... that 6 minutes of your effort then needs to have tests written for each workflow, it needs to go through a Product Owner who needs to assign acceptance criteria, it needs to go through a QA test plan, it needs to get through acceptance testing and hopefully you've got a battery of tests that means it doesn't need to go through regression testing... and then assuming you've got CI/CD in place, it initiates the deployment pipeline and makes it to production without any major headaches. So you see, the optimization even though simple on your own project, and may not appear to "cost" much - certainly not in terms of technology actually has a massive amount of "hidden" costs - which is why it takes large corporations so long to deliver anything.