Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Reverse-engineering is inherently an inductive process, whereby you have to make educated guesses as to what the model is, iteratively.

Samba is a great example of how this is necessarily an imperfect model, and definitely not an optimal process:

- https://news.ycombinator.com/item?id=488089

Development as theory-building is intended as a metaphor to understand the impact of the collaborative mental model that is created as part of any complex system, and the losses incurred when this mechanism is not appreciated.



Having worked on reverse engineering complicated proprietary network protocols (but not for a long time), this is true to an extent. The “mental model” developed may not match the original authors in the exact way intended, but a working model can be constructed none the less.

We were often able to make better models than the assumed original authors (at least the software that used said protocols was much more performant due to better packing algorithms), so I’m unconvinced that reverse engineering puts you in a worse state.

Fully agree that the cost of reverse engineering is large, requires exceptionally skilled people, and no company should ever willingly put itself in the position where it becomes necessary for their own software.




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

Search: