We run Linux, we send HTTP request all day long when doing web development. So this issue, we take a step back and deep dive into cool stuff about memory, about network, thread
The original Linux 1.0 kernel ran fine on a PC with 4MB memory. Of that the kernel used a small fraction. Later versions weren’t as modest in memory requirements. The paper has an overview of the various memory allocators in Linux and describes some of their problems.
It’s hard to replica success. But it’s hard to replica failure too, as long as we knew what the failures are.
Ethernet rules everything around us, a large proportion of our systems communicate to each other with ethernet somewhere in the line. And the fast pace race to the bottom for embedded systems means that almost all network equipment is smart to some degree these days
Sometimes you just want to know how fast your code can go, without benchmarking it. Sometimes you have benchmarked it and want to know how close you are to the maximum speed. Often you just need to know what the current limiting factor is, to guide your optimization decisions.
How do you design good abstractions? By using abstractions that already exist. Not only can a good abstraction shield you from having to understand all the details in a big system, but if you are familiar with the abstraction, you may be able to quickly get up to speed. But how do you create one?
This is a series of training courses about writing distributed systems in Go and Rust. It is maintained by PingCAP for training and/or evaluating students, new employees, and new contributors to TiDB and TiKV. As such, the courses focus on subjects relevant to those projects. They are though appropriate for all Go and Rust programmers — they do not require any knowledge of or interest in either TiDB or TiKV
Green threads, userland threads, goroutines or fibers, they have many names but for simplicity’s sake I’ll refer to them all as green threads from now on. In this article we explore how they work by implementing a very simple example where we create our own green threads in 200 lines of Rust code. We’ll be explaining everything along the way so our main focus here is to understand them and learn how they work by using simple, but working example. It’s fine if you are curios and don’t know Rust, it’s just 200 lines anyway.
The challenge: in the fewest resources possible, render meaningful text. 1) How small can a font really go? 2) How many bytes of memory would you need (to store it and run it?) 3) How much code would it take to express it?
Superhelpful for us, developer to have some guide when coming to design and display tabular data since we tend to use table a lot in many web app. Also checkout Making Tables Responsive With Minimal CSS.
If you are a front-end dev probably you know this well but if you are a backend dev dabble into CSS for your side project, then this is a great overview on how to better harness the built-in algorithms that power browsers and CSS
Rust port of LuceneRust
High performance datastore for time series and tick dataPython
an authentication and account management framework for Rack applications(not Rails specific but any Rack)Ruby
a fast web crawling & scraping framework with 1000 rpsGo
A key note at Ruby Kaigi on tips of why other systems are faster. It’s applied to anything: try to do less, allocate less, delay any computation, make advance features an opt-in…
A great overview on how AWS build their PostgreSQL RDS.
An analytics platform that makes easy to create custom analytics services
Time Machine style backup with rsync.
Kubernetes Native Policy Management allow you to decide what to do with k8s resources
Build and run tiny vms from Dockerfiles. Small and sleek.
An open source object storage server with Amazon S3 compatible API
Better Dev Link