Finding Software Bugs Using Symbolic Execution
Internet home of Raimondas Sasnauskas. Stories of my journey.
The latest blog posts to take off on Hacker News. 1,508 posts.
Internet home of Raimondas Sasnauskas. Stories of my journey.
Interactive C++ for Data Science In our previous blog post “Interactive C++ with Cling” we mentioned that exploratory programming is an effective way to reduce the complexity of the problem. This post will discuss some applications of Cling developed to support data science researchers.
PCjs offers a variety of online machine emulators written in JavaScript. Run DOS, Windows, OS/2 and other vintage PC applications in a web browser on your desktop computer, iPhone, or iPad. An assortment of microcomputers, minicomputers, terminals, programmable calculators, and arcade machines are also available…
Exploring the computational complexity of chess. Code snippets in Python so you can do the same.
A community and blog for embedded software makers
TL;DR: CPS-conversion and defunctionalization can help you to come up with a constant-stack algorithm.
Before we get into Horcruxing, here's a quick prologue on online security hygiene. You can skip to the Horcruxing section if it seems redundant. 1. Longer…
A few months back I gave a talk in which I shared a list of my personal engineering axioms – things that, over the years, I've come to think of as generally true and useful to have in mind when writing code, building things, and working with others.
There’s a well-known quote by author Michael Pollan: “Eat food. Not too much. Mostly plants.” I like it because it doesn’t attempt to be dogmatic: it encapsulates some basic guiding principles that get you 90% of the way there 90% of the time. Wikipedia describes the book the quote is from (emphasis mine):
JSON is everywhere you look these days. The `jq` tool makes it easy to slice, dice, and transform JSON from the command line. It can be hard to map the official manual to real-world applications, so let's look at some practical examples of `jq` and its cousins that handle YAML & HTML!
Ben Nadel explains why his team has been hard at work merging "microservices" back into the "monolith". His team is not anti-microservices. And, in fact, both the expanding and the contracting of serv
This blog site has been archived. Go to react.dev/blog to see the recent posts. 2020 has been a long year. As it comes to an end we wanted to share a special Holiday Update on our research into zero-bundle-size React Server Components. To introduce React Server Components, we have prepared a talk and a demo. If you…
About two years ago, I wrote a quite complicated diff tool in Clojure. It was complicated enough that I struggled to fit the algorithm in my head and the inputs were large enough that I had to make some efforts to improve performance.
We are pleased to announce the release of Ruby 3.0.0-rc1.
Deepen your understanding of AES implementation using golang.
Building a simple neural net in Java.
Lock-free programming is a challenge, not just because of the complexity of the task itself, but because of how difficult it can be to penetrate the subject in the first place. I …
While exploring D recently, I remembered a game I played while at university 15 years ago. For a long time, I couldn’t remember the name at all, only that it was from a Japanese developer. After some search wrangling, I finally managed to find the name of the game: Torus Trooper!
A little over a month after releasing Bevy 0.3, and thanks to 66 contributors, 178 pull requests, and our generous sponsors, I'm happy to announce the…
At Shopify, we’re keeping the flexibility of untrusted Partner code, but executing it on our own infrastructure with WebAssembly.
In commemoration of the 40th anniversary of the release of Smalltalk-80, the Computer History Museum is proud to announce a collaboration with Dan Ingalls to preserve and host the “Smalltalk Zoo.”
Realtime rendering and videogame programming mostly, but I love computer science and visuals in all their forms. This is a notepad of my ideas.
DRY, or Don't Repeat Yourself is frequently touted as a principle of software development. "Copy-pasta" is the derisive term applied to a violation of it, tying together the concept of copying code and pasta as description of software development bad practices (see also spaghetti code ).
A look at how we identify and address bugs
Git has a reputation for being confusing. Users stumble over terminology and phrasing that misguides their expectations. This is most apparent in commands that “rewrite history” such as git cherry-pick or git rebase. In my experience,…