Skip to content

Commit a4edb6d

Browse files
committed
Add Buy vs. Build section
1 parent 0514802 commit a4edb6d

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

README.md

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
22
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
3-
# Table of Contents
3+
## Table of Contents
44

55
- [Professional Programming - about this list](#professional-programming---about-this-list)
66
- [Principles](#principles)
@@ -25,6 +25,7 @@
2525
- [Beyond software engineering & random](#beyond-software-engineering--random)
2626
- [Biases](#biases)
2727
- [Business](#business)
28+
- [Buy vs. Build](#buy-vs-build)
2829
- [Cache](#cache)
2930
- [Career growth](#career-growth)
3031
- [Choosing your next/first opportunity](#choosing-your-nextfirst-opportunity)
@@ -114,6 +115,7 @@
114115
- [Resiliency](#resiliency)
115116
- [Search](#search)
116117
- [Security](#security)
118+
- [Research papers](#research-papers)
117119
- [Shell (command line)](#shell-command-line)
118120
- [SQL](#sql)
119121
- [State](#state)
@@ -501,6 +503,14 @@ Biases don't only apply to hiring. For instance, the fundamental attribution bia
501503
- [The 4 biggest problems with homemade billing systems](https://www.getlago.com/blog/the-4-biggest-problems-with-homemade-billing-systems)
502504
- [🦑 The 14 pains of building your own billing system](https://arnon.dk/the-14-pains-of-billing/)
503505

506+
### Buy vs. Build
507+
508+
- [Choose Boring Technology](https://boringtechnology.club/)
509+
- [Build vs. Buy](https://entropicthoughts.com/build-vs-buy)
510+
- The reason we want to buy as much as possible is that an organisation has a limited capacity for expertise, so we don’t want to have to become experts on things that don’t make up a competitive advantage.
511+
- [Platform Engineering: Build vs Buy](https://kanenarraway.com/posts/platform-engineering-build-vs-buy/)
512+
- If someone tells me they can build something cheaper than a vendor, I’m immediately skeptical because I don’t think most people can accurately forecast the actual cost of maintenance in the long term.
513+
504514
### Cache
505515

506516
- [Caching challenges and strategies](https://aws.amazon.com/builders-library/caching-challenges-and-strategies/), Amazon Builders Library
@@ -869,7 +879,7 @@ Articles:
869879
- Three decades on, microkernel-based GNU Hurd is still in development, and monolithic Linux is everywhere
870880
- "Reduce cognitive load by limiting the number of choices." (Rob Pike)
871881
- The same rule applies to all sorts of numeric statuses (in the database or wherever) - prefer self-describing strings.
872-
- With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody.
882+
- With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody. ([Hyrum's Law](https://www.hyrumslaw.com/))
873883
- DDD is about problem space, not about solution space.
874884
- Familiarity is not the same as simplicity
875885
- The more mental models there are to learn, the longer it takes for a new developer to deliver value.
@@ -1638,8 +1648,6 @@ JavaScript is such a pervasive language that it's almost required learning.
16381648

16391649
### Reading
16401650

1641-
- [Papers we love](https://github.com/papers-we-love/papers-we-love): papers from the computer science community to read and discuss. Can be a good source of inspiration of solving your design problems.
1642-
- [The morning paper](https://blog.acolyer.org/): one CS research paper explained every morning.
16431651
- [The Complete Guide to Effective Reading](https://maartenvandoorn.nl/reading-guide/)
16441652
- [The benefits of note-taking by hand](https://www.bbc.com/worklife/article/20200910-the-benefits-of-note-taking-by-hand)
16451653
- [The Art of Reading More Effectively and Efficiently](https://aliabdaal.com/read-more-effectively/)
@@ -1667,6 +1675,8 @@ JavaScript is such a pervasive language that it's almost required learning.
16671675
- A reusable component should be tried out in three different applications before it will be sufficiently general to accept into a reuse library.
16681676
- [Refactor vs. Rewrite](https://remesh.blog/refactor-vs-rewrite-7b260e80277a)
16691677
- [Tripping over the potholes in too many libraries](https://blog.carlmjohnson.net/post/2020/avoid-dependencies/)
1678+
- [Build It Yourself](https://lucumr.pocoo.org/2025/1/24/build-it-yourself/)
1679+
- It's 2025 and it's faster for me to have ChatGPT or Cursor whip up a dependency free implementation of these common functions, than it is for me to start figuring out a dependency.
16701680

16711681
### Regex
16721682

@@ -1781,6 +1791,7 @@ Articles:
17811791
- 🏙 [High Reliability Infrastructure migrations](https://speakerdeck.com/jvns/high-reliability-infrastructure-migrations), Julia Evans.
17821792
- [Appendix F: Personal Observations on the Reliability of the Shuttle](https://www.refsmmat.com/files/reflections.pdf), Richard Feynman
17831793
- [Lessons learned from two decades of Site Reliability Engineering](https://sre.google/resources/practices-and-processes/twenty-years-of-sre-lessons-learned/)
1794+
- [Service Reliability Mathematics](https://addyosmani.com/blog/service-reliability/), Addy Osmani
17841795

17851796
Resources:
17861797

@@ -1830,6 +1841,7 @@ Resources:
18301841
- [Learnings from 5 years of tech startup code audits](https://kenkantzer.com/learnings-from-5-years-of-tech-startup-code-audits/)
18311842
- [API Tokens: A Tedious Survey](https://fly.io/blog/api-tokens-a-tedious-survey/): don't use JWT.
18321843
- [The Six Dumbest Ideas in Computer Security](http://ranum.com/security/computer_security/editorials/dumb/index.html)
1844+
- [How to Say "No" Well](https://ramimac.me/saying-no)
18331845

18341846
Training for developers:
18351847

@@ -1845,6 +1857,12 @@ List of resources:
18451857
- 🧰 [Starting Up Security](https://scrty.io/)
18461858
- 🧰 [decalage2/awesome-security-hardening](https://github.com/decalage2/awesome-security-hardening): security hardening guides, tools and other resources
18471859

1860+
### Research papers
1861+
1862+
- [Papers we love](https://github.com/papers-we-love/papers-we-love): papers from the computer science community to read and discuss. Can be a good source of inspiration of solving your design problems.
1863+
- [The morning paper](https://blog.acolyer.org/): one CS research paper explained every morning.
1864+
- [The 7 Most Influential Papers in Computer Science History](https://terriblesoftware.org/2025/01/22/the-7-most-influential-papers-in-computer-science-history/)
1865+
18481866
### Shell (command line)
18491867

18501868
- [The case for bash](https://www.neversaw.us/2021/04/02/the-case-for-bash/)
@@ -2035,7 +2053,6 @@ End-to-end tests:
20352053
- [DevDocs API Documentation](https://devdocs.io/): a repository for multiple API docs (see also [Dash for macOS](https://kapeli.com/dash)).
20362054
- [DevChecklist](https://devchecklists.com/): a collaborative space for sharing checklists that help ensure software quality
20372055
- 🧰 [Free for developers](https://free-for.dev/#/): list of free tiers for developments tools and services
2038-
- [Choose Boring Technology](https://boringtechnology.club/)
20392056
- [Ask HN: Best dev tool pitches of all time?](https://news.ycombinator.com/item?id=31782200)
20402057
- [A list of /uses pages detailing developer setups, gear, software and configs](https://uses.tech/)
20412058

0 commit comments

Comments
 (0)