A dark force threatens Alpha, a vast metropolis and home to species
from a thousand planets. Special operatives Valerian and Laureline
must race to identify the marauding menace and safeguard not just
Alpha, but the future of the universe.
Following a discussion with a colleague about how “necessary” jQuery
is now-days, considering how far ES6 has come, I decided to conduct
a small experiment: I would clone a live, functioning JS module and
replace as much jQuery as possible (ideally all) with vanilla ES6.
This article summarizes some lower level aspect of how GPU
executes. Although GPU programming is not that complicated when
compared to CPU, it also doesn’t match to what hardware is doing
exactly. The reason is that we can’t just program GPU without some
API, which is an abstraction over its inner workings. Since few
years now, we have modern explicit APIs like DirectX 12 or Vulkan,
which shrunken the gap to what is happening with hardware. Yet there
still are few low-level bits (pun intended) that are worth
"Functional, free and secure by default", OpenBSD remains a crucial
yet largely unacknowledged player in the open source field. This
talk aims to highlight the project's signature security features and
development practices -- razor sharp focus on correct and secure
code coupled with continuing code audit -- as well as the project's
role as source of innovation in security practices and 'upstream'
source for numerous widely used components such as OpenSSH, PF,
LibreSSL and others.
Since last June, we noticed the database on GitLab.com would
mysteriously stall for minutes, which would lead to users seeing 500
errors during this time. Through a painstaking investigation over
several weeks, we finally uncovered the cause of this: initiating a
subtransaction via the SAVEPOINT SQL
while a long transaction is in progress can wreak havoc on database
replicas. Thus launched a race, which we recently completed, to
eliminate all SAVEPOINT queries from our code. Here's what
happened, how we discovered the problem, and what we did to fix it.
After years of (on and off) discussion1, I am elated to be able to present Org’s new native citation syntax. Org has grown a thoroughly designed, modular, capable citation system. At last you can refer to Org for all your attribution needs. Special thanks must go to Nicolas Goaziou for leading the charge, John Kitchin for paving the way with the org-ref package, Bruce D’Arcus for driving a lot of careful consideration of design decisions and starting to document some of the details — and the many other denizens of the mailing list who have contributed to the discussion over the years.
András Simonyi’s also deserves a special mention for his work
creating the Elisp CSL library Citeproc.el, which while not
directly included in Org is crucial to providing robust CSL support,
and integrates with oc-csl.el.
I have a confession to make: I don’t know how to use Awk. Or at
least I didn’t know how to use it before I started writing this
article. I would hear people mention Awk and how often they used it,
and I was pretty certain I was missing out on some minor superpower.
On occasion, you need to take something apart and put it back
together to fully understand it. I’m sure many of the people reading
this article will have been one of those kids. Kids who took a
screwdriver to something, just to see whats inside it. It’s a
thrill, but its a whole different skill to put it back together.
The working machine on the outside obscures a network of patterns,
patches, and workarounds in its internals. Programmers are used to
working on the guts of a system and manipulating the ugly-inner
workings to get it to follow some simple instructions.
This experiment was no different. I wanted to see if I could write a
CPython Extension in 100% assembly.
I was recently building a Slack bot in Haskell. The core of the
Slack integration was a never-ending loop that read messages from a
web socket and performed actions based on the message. But how
should I go about looping forever in Haskell?
Until recently, Faktory only
supported the x86_64 platform. With the rise of the Apple Silicon
chip and AWS Graviton, it was obvious that I would need to roll out
ARM64 support soon. This week I spent several days fighting Docker’s
support for multi-platform images and wanted to document what I
The purpose of this document is to explain how to write practical
makefiles for your everyday hacks and projects. I want to
illustrate, how easy it is to use make for building your programs,
and doing so, dispel the notion that resorting to big clunky
graphical IDEs, or makefile generators such as autotools or cmake,
is the way to focus on your code faster.
Every so often someone bemoans the space
that can arise due to Haskell’s laziness. A frequently touted remedy
is to make data stricter by turning on BangPatterns, by defining
data structures with explicitly strict fields, or by creating
implicitly strict fields with the StrictData extension. Each of
these approaches leaves something to be desired. In this article
I’ll explain how the approaches work, what they leave to be desired,
and a suggest a reasonably general alternative. The alternative
seems lightweight enough for Haskell programmers to adopt when they
define strict data structures.
My favorite of these over the past several years has been Shoichi
Kaji’s cpm, mainly because
it’s blazingly fast. As an example, the documentation
cites an installation
of Plack, the Perl web application
toolkit, as taking three times as long using cpanm versus
cpm. Both use the same
Menlo core code but cpm
achieves its speed by breaking down dependencies into individual
streams, installing modules in parallel, and synchronizing the
necessary worker processes.
Here’s my collection of 15 of the most common mistakes and
issues people will run into when writing applications and services
that use libcurl. I’ve also done recorded presentations on this
topic that you can watch if you prefer that medium.
The Seven Satrapies have collapsed into four - and those are falling
before the White King's armies.
Gavin Guille, ex-emperor, ex-Prism, ex-galley slave, formerly the
one man who might have averted war, is now lost, broken and trapped
in a prison crafted by his own magical genius. But Gavin has no
magic at all.
Worse, in this prison, he may not be alone.
Who will fight to prevent a tainted empire from becoming something
In the evening I started in The Blood
Mirror, book 4 of the
Lightbringer series by Brent Weeks.