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

From the sounds of it facebook has a really, really big ball of highly coupled code.


Not necessarily.

In the open-source world, when you want to change an API, you have to either add the change as a new API (leaving the existing API intact) or break backward compatibility and maintain parallel versions, gradually migrating users off of the old version.

Both of these options are a huge pain, and have a direct cost (larger API surface or parallel maintenance/migration efforts). When your entire repo and all callers are in the same code-base, you have a much more attractive option: change the API and all callers in a single changelist. You've now cleaned up your API without incurring any of the costs of the two open-source options.

This is why it can be nice, even if you have a bunch of nicely structured components, to have all code in a single repository.


Sounds like PHP.

Oh wait, it is.


Not really relevant.


While it may not be, I do find it an every day battle to keep my PHP wel 'styled'. Sure, PHP is the first language I learnt, and I do use a framework, but sometimes a long method is easier in the short run than writing good model functions. And I have models, but mostly for the ORM and they're all completely interconnected. PHP makes me lazy, fast


That's pretty much the same in any language - if you don't have the discipline to keep your code in a good state in one, why would you suddenly gain that discipline in another?


It's for this type of thinking that I've been looking at Rails recently.


If downvoting me, I would appreciate at least if you explain yourself :)


Funny.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

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

Search: