Hacker Newsnew | past | comments | ask | show | jobs | submit | fabrizioc1's commentslogin

What I think might be useful is something like the Rust borrow checker but it would be a currency ownership checker which would check for currency ownership at compile time.


That doesn't really apply here. The code and runtime is correct as in: no coins were generated or disappeared, nobody directly reassigned coins, etc. This was simply a logic error - the code followed the legal/known path all the time. Rust can be great for many things, but it can't tell you "this code does not do what you think you wanted".


Try "thinking machine" instead. They do look amazing.


There is the other side of "NIH syndrome".

In order to "save development time" and implement "best practices" a company decides to use an "out of the shelf" package from a big name vendor (IBM, Oracle, Microsoft, etc) and customize it to their needs. Some initial customization is done and some shortcuts are taken to make the project go live.

Fast forward a couple of years. The custom code added by the company complicates upgrade paths and vendor support. The business demands more and more functionality which the package does not support "out of the box".

The customization initially implemented turns out to have been technical debt in disguise. They bypassed the recommended usage of the package or platform which resulted in performance problems. Eventually they end up having to re-work everything "the right way" in order to get vendor support or fix the performance problems.

This is specially prevalent in corporate IT departments in large corporations.

Moral of the story is that "off the shelf" platforms are not a silver bullet. If you don't understand the platform and the business requirements you will have problems later on.

I don't know how many times I've fixed performance problems of "off the shelf" packages by simply writing code which replaces the OOB code with a couple of SQL queries/stored procedures and only does what the business needs, bypassing features which the customer does not need in the present.


There will always be problems and headaches with off the shelf software, but the thing is that even with all of this you may still save over building it yourself. I worked for years on a Siebel implementation, and even with these issues it was worlds better than the previous incarnation which we had built in house.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: