New
The latest blog posts to take off on Hacker News. 1,508 posts.
Streaming: a skill gap?
It's not just for big data
Writing Safe Shell Scripts (2019)
This page was migrated from the old website and has not been manually reviewed, or is here for historical purposes. We make no guarantees that the content is up-to-date or reflects SIPB's current views. Contact sipb-www@mit.edu if anything is broken or you have other questions or feedback.
Writing a RISC-V OS in Rust: System Calls
System calls are a way for unprivileged, user applications to request services from the kernel. In the RISC-V architecture, we invoke the call using the ecall instruction. This will cause the CPU to halt what it's doing, elevate privilege modes, and then jump to whatever function handler is stored in the mtvec…
TypeScript’s quirks: How inconsistencies make the language more complex
Asana engineers are TypeScript fans, and we’ve learned a lot about where TypeScript shines and struggles. Here are 3 of our favorite TypeScript surprises.
Libc++'s Implementation of std::string
I. Introduction
The Rust Compilation Model Calamity
Learn about the benefits of TiDB and the TiDB Cloud solutions from PingCAP. Read our latest post "The Rust Compilation Model Calamity" here.
A Pythonista's Review of Haskell
A Python developer's honest review of Haskell: the type system, tooling, learning curve, and practical tradeoffs.
Standardizing OpenAI’s deep learning framework on PyTorch
We are standardizing OpenAI’s deep learning framework on PyTorch.
The Rise of SQL-Based Data Modeling
The resurgence of SQL-based data modeling is a something we should all be interested in. Here's why it's important.
Pandas 1.0
These are the changes in pandas 1.0.0. See Release notes for a full changelog including other versions of pandas.
Alpine makes Python Docker builds slower, and images larger
Alpine Linux is often recommended as a smaller, faster Docker base image. But if you’re using Python, it will slow down your build and make your image larger.
Building all of our new mobile apps using React Native
After years of native mobile development, we’ve decided to build all of our new mobile apps using React Native. As I’ll explain, that decision doesn’t come lightly.
Proposals for Go 1.15
For Go 1.15, we propose three minor language cleanup changes.
Automating receipt processing with deep learning
In this article, I cover the theory behind receipt digitization and implement an end-to-end pipeline using OpenCV and Tesseract. I also review a few important papers that do Receipt Digitization using Deep Learning.
Why numbering should start at zero (1982)
To denote the subsequence of natural numbers 2, 3, ..., 12 without the pernicious three dots, four conventions are open to us
The Shapes of Code
Expressive code in C++
Qt Offering Changes 2020
New low-cost option for small businesses, Qt account requirement for installation and long-term support only for commercial licensees
Hacking on Clang is surprisingly easy
Date: 2020-01-27 Git: https://gitlab.com/mort96/blog/blob/published/content/00000-home/00012-clang-compiler-hacking.md
Elixir v1.10
Elixir v1.10 is out with standard library, compiler, and releases improvements.
Distri: 20x faster initramfs (initrd) from scratch
In case you are not yet familiar with why an initramfs (or initrd, or initial ramdisk) is typically used when starting Linux, let me quote the wikipedia definition: “[…] initrd is a scheme for loading a temporary root file system into memory, which may be used as part of the Linux startup process […] to make…
The Infinite Loop That Wasn't
Once upon a time there was a game for the GBA by the name of Hello Kitty Collection: Miracle Fashion Maker. It was a cutesy game based on the famous Sanrio Hello Kitty franchise, developed by Access. But hidden beneath the surface of the seemingly innocuous title was an insidious problem. Somehow, this simple game…
Ambitions for a Unix Shell
As discussed in the January blog roadmap , I want to concretely describe a reduced Oil language , and see if we can get it "done" in 2020.