Skip to content

Commit

Permalink
feat: major rework
Browse files Browse the repository at this point in the history
This wiki is now going to be hosted using a custom rust
app on fly.io. This commit moves stuff around to accommodate
for that.
  • Loading branch information
matoous committed Mar 4, 2024
1 parent 655b117 commit 80f0d11
Show file tree
Hide file tree
Showing 49 changed files with 731 additions and 39 deletions.
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,8 @@
# [Wiki](https://matousdzivjak.gitbook.io/personal/)

👋 Welcome to my personal Wiki/Knowledge base. Originally hosted
on [Notion](https://www.notion.so/), currently moved to [GitHub](https://github.com/matoous/wiki)
and hosted on [Gitbook]( https://www.gitbook.com/).

This Wiki is heavily inspired by [this one](https://wiki.nikitavoloboev.xyz/)
by [ Nikita Voloboev ](https://nikitavoloboev.xyz/) and I strongly recommend
you take a look at it as I still find it incomprehensible how much information,
links and most importantly knowledge can one collect over the time.
👋 Welcome to my personal Wiki/Knowledge base.

This Wiki is heavily inspired by [this one](https://wiki.nikitavoloboev.xyz/) by [Nikita Voloboev](https://nikitavoloboev.xyz/) and I strongly recommend you take a look at it as I still find it incomprehensible how much information, links and most importantly knowledge can one collect over the time.

Small disclaimer before you hop in: my technical writing skills are still severely lacking, please excuse that while I work on it.

Expand Down
23 changes: 13 additions & 10 deletions computer_science/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,17 @@
- allow filtering, sorting, and pagination
- version api with path prefixes
- [Cats](https://github.com/Endava/cats) - CATS is a REST API Fuzzer and negative testing tool for OpenAPI endpoints. CATS automatically generates, runs and reports tests with minimum configuration and no coding effort. Tests are self-healing and do not require maintenance.
- [API design showcase: OpenAI](https://brandur.org/fragments/openai-api)
- [Idempotency keys @ Crunchy](https://brandur.org/fragments/idempotency-keys-crunchy)
- [API design showcase: OpenAI](https://brandur.org/fragments/openai-api) #api
- [Idempotency keys @ Crunchy](https://brandur.org/fragments/idempotency-keys-crunchy) #api
- also [Simple internal idempotency by ID](https://brandur.org/fragments/simple-internal-idempotency)
- [HTTP API design: 204 "No content" mildly harmful](https://brandur.org/fragments/http-api-204s)
- [Evolving API Pagination at Slack](https://slack.engineering/evolving-api-pagination-at-slack/)
- [How Did REST Come To Mean The Opposite of REST?](https://htmx.org/essays/how-did-rest-come-to-mean-the-opposite-of-rest/)
- [The Bezos API Mandate: Amazon’s Manifesto For Externalization](https://nordicapis.com/the-bezos-api-mandate-amazons-manifesto-for-externalization/)
- [EasySDK](https://easysdk.xyz/upload) - generate SDKs for your OpenAPI specs
- [Best practices for using webhooks](https://stripe.com/docs/webhooks/best-practices)
- [How to and how not to design REST APIs](https://github.com/stickfigure/blog/wiki/How-to-%28and-how-not-to%29-design-REST-APIs)
- [Advice for Operating a Public-Facing API](https://jcs.org/2023/07/12/api)
- [HTTP API design: 204 "No content" mildly harmful](https://brandur.org/fragments/http-api-204s) #api
- [Evolving API Pagination at Slack](https://slack.engineering/evolving-api-pagination-at-slack/) #api #pagination
- [How Did REST Come To Mean The Opposite of REST?](https://htmx.org/essays/how-did-rest-come-to-mean-the-opposite-of-rest/) #api
- [The Bezos API Mandate: Amazon’s Manifesto For Externalization](https://nordicapis.com/the-bezos-api-mandate-amazons-manifesto-for-externalization/) #api
- [EasySDK](https://easysdk.xyz/upload) - generate SDKs for your OpenAPI specs #apis #sdk
- [Best practices for using webhooks](https://stripe.com/docs/webhooks/best-practices) #webhooks #api #events
- [How to and how not to design REST APIs](https://github.com/stickfigure/blog/wiki/How-to-%28and-how-not-to%29-design-REST-APIs) #api
- [Advice for Operating a Public-Facing API](https://jcs.org/2023/07/12/api) #api
- [Give me /events, not webhooks](https://blog.sequin.io/events-not-webhooks/) #webhooks #api #events
- [Considerations for event APIs (versus webhooks)](https://brandur.org/fragments/events-api) #webhooks #api #events
- [API Design Style Guides, Guidelines and Best Practices](https://stoplight-site.webflow.io/api-style-guides-guidelines-and-best-practices)
2 changes: 2 additions & 0 deletions computer_science/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,5 @@
- [The different types of events in event-driven systems](https://blog.frankdejonge.nl/the-different-types-of-events-in-event-driven-systems/)
- [Demystifying software architecture patterns](https://www.thoughtworks.com/insights/blog/architecture/demystify-software-architecture-patterns)
- [10 Design Patterns Explained in 10 Minutes](https://www.youtube.com/watch?v=tv-_1er1mWI) (video)
- [Event Sourcing](https://martinfowler.com/eaaDev/EventSourcing.html) #architecture #event-driven
- [Command Query Responsibility Segregation (CQRS)](https://martinfowler.com/bliki/CQRS.html)
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Programs and tools provide many features that can speed things up but first one
- [Awesome Console Services](https://github.com/chubin/awesome-console-services)
- [icanhaz](https://major.io/icanhazip-com-faq/)

# Links
# Resources

- [docopt](http://docopt.org/) - Command-line interface description language
- [Text processing in the shell](https://blog.balthazar-rouberol.com/text-processing-in-the-shell)
Expand Down
5 changes: 5 additions & 0 deletions computer_science/data_structures.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,8 @@

- [An Interactive Intro to CRDTs](https://jakelazaroff.com/words/an-interactive-intro-to-crdts/) - CRDT = Conflict-free Replicated Data Type
- [PruningRadixTrie](https://github.com/wolfgarbe/PruningRadixTrie)
- [cola: a text CRDT for real-time collaborative editing](https://nomad.foo/blog/cola) - leightweight CRDT implemention in rust for plain text documents.
- [Collaborative Editing in ProseMirror](https://marijnhaverbeke.nl/blog/collaborative-editing.html)
- [CRDTs Turned Inside Out](https://interjectedfuture.com/crdts-turned-inside-out/) #crdt #text-editing
- [Ink and Switch](https://www.inkandswitch.com) - Articles on collaborative peer-to-peer editing #crdt #text-editing
- [how the append-only btree works](https://www.bzero.se/ldapd/btree.html)
2 changes: 1 addition & 1 deletion computer_science/databases/databases.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@
- [Real-World Engineering Challenges #6: Migrations ](https://newsletter.pragmaticengineer.com/p/real-world-engineering-challenges)
- [From Postgres to Amazon DynamoDB](https://www.instacart.com/company/how-its-made/from-postgres-to-amazon-dynamodb-%EF%BF%BC/)
- [How Discord Stores Trillions of Messages](https://discord.com/blog/how-discord-stores-trillions-of-messages)

- [Database Fundamentals](https://tontinton.com/posts/database-fundementals/) #databases
5 changes: 4 additions & 1 deletion computer_science/event systems.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@
## Resources

- [Illustrated guide to Apache Kafka](https://www.gentlydownthe.stream)

- [Scaling Shopify's BFCM Live Map: An Apache Flink Redesign](https://shopify.engineering/bfcm-live-map-2021-apache-flink-redesign)
- [Using Server Sent Events to Simplify Real-time Streaming at Scale](https://shopify.engineering/server-sent-events-data-streaming)
- [How Shopify Scaled their Black Friday Live Dashboard](https://blog.quastor.org/p/shopify-scaled-dashboards-black-friday)
- [Event-Driven Architecture Fundamentals and Common Pitfalls (and How to Avoid Them)](https://hookdeck.com/blog/event-driven-architectrure-fundamentals-pitfalls)
53 changes: 53 additions & 0 deletions computer_science/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Computer Science

## Dictionary

- [YAGNI](https://wiki.c2.com/?YouArentGonnaNeedIt) - You Aren't Gonna Need It

## Books

* [Computer Science Readings](https://github.com/erikgrinaker/readings)
* [A list of computer-science readings I recommend](https://github.com/amilajack/reading) - _by Amila Welihinda_
* [Ask HN: What book to read to get a footing in CS theory?](https://news.ycombinator.com/item?id=20729252)
* [Ask HN: What are the most fundamental books on computer science?](https://news.ycombinator.com/item?id=21311302)

## Services

- [Koyeb](https://www.koyeb.com)
- [AsciiFlow](https://asciiflow.com/#/) - ASCII art for semantic code commenting

## Resources

- [Foundations of Computer Science](http://infolab.stanford.edu/~ullman/focs.html)
- [A Self-Learning, Modern Computer Science Curriculum](https://functionalcs.github.io/curriculum/#org71f231a)
- [cs-books/influential-cs-books](https://github.com/cs-books/influential-cs-books#readme)
- [ossu/computer-science](https://github.com/ossu/computer-science#readme)
- [Teach Yourself Computer Science](https://teachyourselfcs.com/)
- [yngz/cs-roadmap](https://github.com/yngz/cs-roadmap#readme)
- [Curated Self Study Guide for Computer Science and DevOps/SRE/SysAdmin](https://sharjeelsayed.github.io/selfupgradeitprof.txt)
- [Computer Science from the Bottom Up](https://www.bottomupcs.com/)
- [Foundational knowledge for programmers](https://github.com/err0r500/foundational-knowledge-for-programmers)
- [Mathematics and computer science](notion://www.notion.so/matousdz/cr.yp.to/djb.html) _by D. J. Bernstein_
- [Computer Sciencewithout a computer](https://csunplugged.org/en/)
- [Best Paper Awards in Computer Science](https://jeffhuang.com/best_paper_awards/)
- [More challenging projects every programmer should try](https://web.eecs.utk.edu/~azh/blog/morechallengingprojects.html)
- [base cs](https://medium.com/basecs) - *Exploring the basics of computer science, every Monday, for a year.*
- [Falsehoods CS Students (Still) Believe Upon Graduating](https://www.netmeister.org/blog/cs-falsehoods.html)
- [The Missing Semester of Your CS Education](https://missing.csail.mit.edu/)
- [the morning paper](https://blog.acolyer.org/) - *a random walk through Computer Science research, by Adrian Colyer*
- [Nature Computational Science](https://www.nature.com/natcomputsci)
- [The Cursed Computer Iceberg Meme](https://suricrasia.online/iceberg/), ([HN](https://news.ycombinator.com/item?id=26766722))
- [Use Google like a pro](https://markodenic.com/use-google-like-a-pro/)
- search inside single website: `site:freecodecamp.org`
- search for certain filetype: `filetype:pdf`
- search for timeframe: `before:2020 after:2016`
- also: [Google Search Operators: The Complete List (42 Advanced Operators)](https://ahrefs.com/blog/google-advanced-search-operators/)
- [keybr.com](https://www.keybr.com/) - leatn to type faster
- [Testing Distributed Systems](https://asatarin.github.io/testing-distributed-systems/)
- [Nanos](https://github.com/nanovms/nanos/) - A kernel designed to run one and only one application in a virtualized environment
- [System Design Resources](https://github.com/InterviewReady/system-design-resources)
- [Fallacies of Distributed Systems](https://architecturenotes.co/fallacies-of-distributed-systems/)
- the network is reliable - you need logic for re-transmission
- [Falsehoods Programmers Believe About Names](https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/)
- [What does an idle CPU do?](https://manybutfinite.com/post/what-does-an-idle-cpu-do/)

5 changes: 5 additions & 0 deletions computer_science/infrastructure/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Infrastructure

## Resources

- [Pkl](https://pkl-lang.org/index.html) - Type-safe configuration language from apple
1 change: 0 additions & 1 deletion computer_science/infrastructure/infrastructure.md

This file was deleted.

10 changes: 5 additions & 5 deletions computer_science/languages/golang.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@

## Resources

- [**Go Style Guide**](https://google.github.io/styleguide/go/index)
- [**Go Style Decisions**](https://google.github.io/styleguide/go/decisions)
- [**Go Style Best Practices**](https://google.github.io/styleguide/go/best-practices)
- [**Go Code Review Comments**](https://github.com/golang/go/wiki/CodeReviewComments)
- [**Effective Go**](https://golang.org/doc/effective_go)
- **[Go Style Guide](https://google.github.io/styleguide/go/index)**
- **[Go Style Decisions](https://google.github.io/styleguide/go/decisions)**
- **[Go Style Best Practices](https://google.github.io/styleguide/go/best-practices)**
- **[Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments)**
- **[Effective Go](https://golang.org/doc/effective_go)**
- [Darker Corners of Go - Rytis Biel](https://rytisbiel.com/2021/03/06/darker-corners-of-go/)
- [Gotchas in the Go Network Packages Defaults](https://martin.baillie.id/wrote/gotchas-in-the-go-network-packages-defaults)
- [Type Aliases vs Type Definitions in GO](https://alehatsman.com/posts/golang_type_declaration_abuse.html)
Expand Down
File renamed without changes.
9 changes: 9 additions & 0 deletions computer_science/languages/javascript/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Javascript

## Resources

- [What the heck is the event loop anyway?](https://www.youtube.com/watch?v=8aGhZQkoFbQ)

## Libraries

- [TanStack](https://tanstack.com/) - Headless, type-safe, & powerful utilities for State Management, Routing, Data Visualization, Charts, Tables, and more. #javascript #ui
6 changes: 4 additions & 2 deletions computer_science/languages/rust.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

## Resources

- [**Welcome to Comprehensive Rust 🦀**](https://google.github.io/comprehensive-rust/)
- [The Rust Programming Language](https://doc.rust-lang.org/book/)
- [Awesome Rust](https://github.com/rust-unofficial/awesome-rust)
- [Rust by Example](https://doc.rust-lang.org/rust-by-example)
Expand Down Expand Up @@ -34,7 +35,6 @@
- [Running JavaScript in Rust with Deno](https://austinpoor.com/blog/js-in-rs)
- [Iterating on Testing in Rust](https://epage.github.io/blog/2023/06/iterating-on-test/) #rust #testing
- [Rust fact vs. fiction: 5 Insights from Google's Rust journey in 2022](https://opensource.googleblog.com/2023/06/rust-fact-vs-fiction-5-insights-from-googles-rust-journey-2022.html)
- [Welcome to Comprehensive Rust 🦀](https://google.github.io/comprehensive-rust/)
- [Async Rust: What is a runtime? Here is how tokio works under the hood](https://kerkour.com/rust-async-await-what-is-a-runtime)
- [Effective Rust](https://www.lurklurk.org/effective-rust/)
- [More than you've ever wanted to know about errors in Rust](https://www.shuttle.rs/blog/2022/06/30/error-handling)
Expand All @@ -52,7 +52,7 @@
- [valeriansaliou/sonic](https://github.com/valeriansaliou/sonic) - Fast, lightweight & schema-less search backend. An alternative to Elasticsearch that runs on a few MBs of RAM.
- [wasmer](https://github.com/wasmerio/wasmer)
- [anki](https://github.com/ankitects/anki) - spaced repetition cards GUI
- [Tantivy](https://github.com/quickwit-oss/tantivy)
- [Tantivy](https://github.com/quickwit-oss/tantivy) - Tantivy is a full-text search engine library inspired by Apache Lucene and written in Rust .
- [RisingLight](https://github.com/risinglightdb/risinglight) - An OLAP database system for educational purpose.
- [Yew](https://yew.rs/) - Yew is a modern Rust framework for creating multi-threaded front-end web apps using WebAssembly.
- [Sea ORM](https://github.com/SeaQL/sea-orm) - async ORM package
Expand All @@ -63,6 +63,8 @@
- [rust-sitter](https://github.com/hydro-project/rust-sitter) - Use Tree Sitter to parse your own languages in Rust
- [pagefine](https://pagefind.app/) ([CloudCannon/pagefind](https://github.com/CloudCannon/pagefind)) - Pagefind is a fully static search library that aims to perform well on large sites, while using as little of your users’ bandwidth as possible, and without hosting any infrastructure.
- [Shader Art using WebGPU](https://github.com/pythops/shader-art-rs)
- [Cola](https://github.com/nomad/cola) A text CRDT for real-time collaborative editing #crdt #text-editing
- [Loro](https://github.com/loro-dev/loro) - Reimagine state management with CRDTs. Enhance your app with seamless collaboration and effortless time-travel features #crdt #text-editing

## Game Dev

Expand Down
File renamed without changes.
5 changes: 5 additions & 0 deletions computer_science/machine_learning/llm.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# LLMs

## Resources

- [LLM Visualization](https://bbycroft.net/llm)
1 change: 1 addition & 0 deletions computer_science/observability.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@
- [SLO burn rate alert calculator](https://burnrate.netlify.app/)
- [Monitoring is a Pain](https://matduggan.com/were-all-doing-metrics-wrong/)
- [Monitoring Distributed Systems](https://sre.google/sre-book/monitoring-distributed-systems/)
- [Canonical Log Lines](https://stripe.com/blog/canonical-log-lines)
4 changes: 2 additions & 2 deletions computer_science/operating_systems/operating_systems.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@

## Resources

- [I built Linux from scratch](https://thesloth.me/posts/5/)
- [The Linux Kernel Module Programming Guide](https://sysprog21.github.io/lkmpg/)
- [I built Linux from scratch](https://thesloth.me/posts/5/) #operating-system #from-scratch #linux
- [The Linux Kernel Module Programming Guide](https://sysprog21.github.io/lkmpg/) - [Illumnos](https://www.illumos.org) - a Unix operating system which provides next-generation features for downstream distributions, including advanced system debugging, next generation filesystem, networking, and virtualization options. Used by [oxide](https://oxide.computer/) #operating-system
File renamed without changes.
Loading

0 comments on commit 80f0d11

Please sign in to comment.