Thu 31 Mar 2022

Discovering basic blocks

Code comes in lots of different forms, such as text, bytecode, and other data structures common in compilers—like control-flow graphs (CFGs). CFGs are commonly used in compiler internals for analysis and optimization, and in reverse engineering for lifting structure out of linear assembly code.

In this post, we will learn how to construct a CFG from a subset of CPython (3.6+) bytecode. We will also coincidentally be using Python (3.6+) as a programming language, but the concepts should be applicable to other bytecode and using other programming languages.

Source: Discovering basic blocks, an article by Max Bernstein.

Mac Setup for Web Development [2022]

This year (2022) I bought the new MacBook Pro after having used the MacBook Pro 2015 for the last years. This first month has been super exciting and I am up running working efficiently on my personal and professional web development projects as a freelance JavaScript developer. Here I want to share with you my Mac setup for web development that I have used.

Source: Mac Setup for Web Development [2022], an article by Robin Wieruch.