Auditing Rust Crypto: The First Hours
The Latest News from Research at Kudelski Security
The Latest News from Research at Kudelski Security
Oprogramowanie dla banków, ubezpieczycieli i firm leasingowych: procesy kredytowe, obsługa polis, bankowość mobilna i dane. 20+ lat, 500+ projektów.
A collection of examples of how to use Common Lisp
I’m pleased to report that Hyperscan, the regular expression matcher that ate my life from 2008 through 2018, finally has a paper (pdf) – it’s being presented this week at NSDI &#…
When Apple introduced Bitcode and made it mandatory on watchOS and tvOS, they kinda hand-waved away questions about why it existed, with nebulous claims about it being useful to tune-up binaries by utilizing the latest compiler improvements.
Web Assembly is written in an s-expression syntax (wast) and then needs to be translated down to binary encoded wasm. Below is a gist of wast that imports the stdlib.print function taking a memory location offset and a length, as well as importing a block of memory from the controlling runtime. We then store the…
Approaching the world of concurrency, one step at a time.
The vchan protocol is used to stream data between virtual machines on a Xen host without needing any locks. It is largely undocumented. The TLA …
Reverse engineering an unfamiliar data file could be described as the bootstrapping of understanding. In many ways the process resembles the scientific method, only applied to human-made, abstract objects instead of the natural world. You begin by gathering data, and then you use that information to put forth one or…
I learned to program with BASIC back when I was twelve. I would write elaborate programs and run them. Invariably, they would surprise me by failing to do what I expect. I would struggle for a time, but I'd eventually give up and just accept that whatever "bugs" I had created were there to stay. … Continue reading I…
Very roughly speaking, functional programming (“FP”) and object-oriented programming (“OOP”) have similar levels of expressive power and similar abilities to encapsulate programs into smaller parts that can be combined and recombined.
Building progressive and performant sites with React
Why managing configuration has become so complex and how data configuration languages like CUE offer a path forward.
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
On March 26, 2019, a malicious version of the popular bootstrap-sass package, that has been downloaded a total of 28 million times to date, was published to the official RubyGems repository.
Addendum: I've added a few additional tips for conference papers chairs, papers committee members, and papers sorters .
A little while ago I was doing some research into the state-of-the-art for approximating subsurface scattering effects in real-time (mainly for skin rendering), and I had taken a bunch of loose notes to help me keep all of the details straight. I thought it might be useful to turn those notes into a full blog post, in…
As discussed in Pattern Matching and Recursion , a well-known programming puzzle is to write a function that determines whether a string of parentheses is “balanced,” i.e. each opening parenthesis has a corresponding closing parenthesis, and the parentheses are properly nested.
UPDATE 4: My original MSDN blog content, minus the comments, has been archived publicly on the MSDN site; thanks again to Scott and Dan and everyone else who made this happen. Why minus the comment…
Today, we’re excited to introduce repository templates to make boilerplate code management and distribution a first-class citizen on GitHub.
Previously I've worked on a collaborative tool, which worked like Google Docs. This project was called crepl . Because I stopped paying for hosting of its server, that project is now offline. That made me consider: what if a collaborative editor wouldn't need a server?
The async/await idiom is becoming increasingly popular. The first widely used language to include it was C#, and it has now spread into Jav...
micro:bit emulation support is available from QEMU 4.0 onwards and can be used for low-level software testing and development. Unlike existing micro:bit simulators, QEMU performs full-system emulation and actually runs the same ARM code as the real hardware. This blog post explains what full-system emulation means and…