A bunch of things I find myself repeatedly referring to in various discussions!
- Two meanings of systems programming
- Systems programmers can have nice things
-
https://robert.ocallahan.org/2016/08/random-thoughts-on-rust-cratesio-and.html
- Goals and priorities for C++
-
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2137r0.html
- Boundaries
- Plugin diagram
-
https://www.tedinski.com/2018/01/30/the-one-ring-problem-abstraction-and-power.html
- Data, ADT, Object
-
https://www.tedinski.com/2018/02/27/the-expression-problem.html
- John Carmack on inlined code
-
http://number-none.com/blow/john_carmack_on_inlined_code.html
- A few billion lines of code later
-
https://cacm.acm.org/magazines/2010/2/69354-a-few-billion-lines-of-code-later/abstract
- Simple testing can prevent most critical failures
-
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
- The Error Model
- Talks that changed the way I think about programming
-
http://www.opowell.com/post/talks-that-changed-the-way-i-think-about-programming/
- Why rewriting hotspots in a faster language doesn’t work
-
https://code.visualstudio.com/blogs/2018/03/23/text-buffer-reimplementation
- Programming people
- Python spends almost all of its time in the C runtime
- Rider architecture
-
https://www.codemag.com/Article/1811091/Building-a-.NET-IDE-with-JetBrains-Rider
- System programming values
- Midlayer mistake
- Technology from the past come to save the future from itself
- Not Rocket Science Rule
- Why C++ Sails When the Vasa Sank
- Composition of Unsafe
-
https://smallcultfollowing.com/babysteps/blog/2016/10/02/observational-equivalence-and-unsafe-code/
- In Rust, Ordinary Vectors are Values
-
http://smallcultfollowing.com/babysteps/blog/2018/02/01/in-rust-ordinary-vectors-are-values/
- Implementing Swift Generics
- Generics Dilemma
- A Catalogue of Optimizing Transformations
-
https://www.clear.rice.edu/comp512/Lectures/Papers/1971-allen-catalog.pdf
- Static Program Analysis
- Accurate mental model for Rust’s reference types
-
https://docs.rs/dtolnay/0.0.9/dtolnay/macro._02__reference_types.html
- Don’t write bugs
-
https://www.teamten.com/lawrence/programming/dont-write-bugs.html
- Don’t use
_
patterns - What Is The Minimal Set Of Optimizations Needed For Zero-Cost Abstraction?
-
https://robert.ocallahan.org/2020/08/what-is-minimal-set-of-optimizations.html
- Expect Tests
-
https://blog.janestreet.com/using-ascii-waveforms-to-test-hardware-designs/
- What Every C Programmer Should Know About UB
-
https://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html
- Build a Mountain
- Precise Profiling via rdpmc
- JSONMutexDB
- Swift Is Undecidable
-
https://forums.swift.org/t/swift-type-checking-is-undecidable/39024
- Don Syme of F# on typeclasses
-
https://github.com/fsharp/fslang-suggestions/issues/243#issuecomment-916079347
- Outlined Containers
-
https://github.com/rust-lang/rust/pull/60470#issuecomment-489136965
- Your ABI is Probably Wrong
- Limits to Growth
- Subprocess Gotchas
-
https://github.com/oconnor663/duct.py/blob/0764961a8c799873a9375d4100ae9ddbee624594/gotchas.md
- The Unix process API is unreliable and unsafe
- Distributed Systems via remote syscalls
- Latency Numbers
- Moderation
- Interfaces Belong With Users
-
https://neugierig.org/software/blog/2019/11/interface-pattern.html
- Structured Concurrency
-
https://vorpus.org/blog/notes-on-structured-concurrency-or-go-statement-considered-harmful/
- Typographic Size on The Web
-
https://fonts.google.com/knowledge/using_type/the_complications_of_typographic_size
- Snapshot Testing
- Post IntelliJ