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

> I’d like you to elaborate on how an app with no external dependencies has the same line or vulnerabilities that an app which pulls literal thousands of external dependencies.

Because it is not vetted. These dependencies are run through multiple checking tools day by day. You will get automated alerts for dependencies, which you can then easily patch. There is an entire industry behind checking for vulnerabilities in public libraries. The best incentive for something is and has always been money.

You have neither of this if you roll your own entirely.

> I know it’s common in software engineering to rely on others to be your security, but this has proven to be a terrible idea so many times by now.

This is a false equivalency. Log4j was found, publicly discussed and was subsequently patched.



That depends a lot on how complex, large and critical your app is. And on the skills of the builder and the maintainer.

The surface attack is considerably reduced if you do not rely on a large list of dependencies. Moreover, you do manage to know _better_ the ins and outs of each bit of your system (because you wrote it, and the whole surface has been walked on at least once).

Unless you are of a specific interest to an attacker, not relying on external dependencies makes you less detectable as your app may not behave as scanner expect it to.

It's a bit like comparing going on a trip by walking with one person you know well or with 100 people: you still get to make the trip, but, the delays, the risks, the provisions, the contingencies, the consequences of an incident are not really in the same scope.

But for any large project involving more than 4/5 people, perhaps relying on no external dependencies may be a bit complex to manage in the long run.


> Moreover, you do manage to know _better_ the ins and outs of each bit of your system (because you wrote it, and the whole surface has been walked on at least once).

This only holds if you work only for yourself.

> Unless you are of a specific interest to an attacker, not relying on external dependencies makes you less detectable as your app may not behave as scanner expect it to.

Another argument can be made that you're investing too much valuable time into things that have been solved before - and likely better than a single person could manage.

> But for any large project involving more than 4/5 people, perhaps relying on no external dependencies may be a bit complex to manage in the long run.

In my experience, this is true for any one project with more than one (1) developer, even if the developer might change in the future. Any junior front end developer can be productive in a years old angular project. They might not be in a custom dependencyless project.




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

Search: