news
Programming Leftovers
-
Daniel Fichtinger ☛ kaklang devlog 1
For the past little while, I’ve been working on a project called Kaklang. This is the first in a series of development logs and musings on the topic. I hope you find them insightful and/or entertaining.
-
Simon Willison ☛ jordanhubbard/nanolang
Plenty of people have mused about what a new programming language specifically designed to be used by LLMs might look like. Jordan Hubbard (co-founder of FreeBSD, with serious stints at Apple and NVIDIA) just released exactly that.
-
Shayon Mukherjee ☛ Software engineering when machine writes the code
In 1968, a group of computer scientists gathered at a NATO conference in Garmisch, Germany, and coined the term “software crisis.” The problem they identified wasn’t that computers were bad or unreliable. It was that computers had become too powerful for the existing methods of programming to handle. Edsger Dijkstra later put it memorably: “As long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computers, programming has become an equally gigantic problem.”
-
Haskell For All ☛ Haskell for all: Type-safe eval in Grace
This post is about a Grace programming language feature that is both cursed and blessed: type-safe eval. This feature is cursed because (like any eval) it can potentially promote untrusted input into code, but also blessed because it's type-safe and it's the foundation for two other language features: [...]
-
Discernible Inc ☛ 3 Counterproductive Communication Patterns Holding Back Security Researchers
After years of working with bug bounty programs and independent security researchers across web2 and web3, I've seen a pattern of communication practices that repeatedly undermine otherwise productive interactions. Even the most talented researchers can sabotage their own efforts through ineffective communication.
Here are three of the most common communication mistakes I see researchers make during the vulnerability disclosure process. I'll also walk through how addressing these issues can lead to better outcomes for everyone.
-
Onur Sahin ☛ Understanding C++ Ownership System
I recently started using C++ at my $DAY_JOB and, along with that, decided to study C++ again. I think writing down your understanding is the best way to learn a topic. One part I find that is hard to understand in C++ is how the object ownership model works because it's not a single concept but a collection of a couple of smaller concepts. By ownership I mean creating and destroying objects, giving references to an object, and transferring ownership of an object. There is no one guide that covers everything.
These concepts are very important to write and read modern C++ (though I doubt if C++11 is still considered "modern"). Even if you just want to write C with Classes-style C++, you will probably use standard containers like std::vector, which requires an understanding of C++ ownership related features such as RAII, references, and move semantics to use it properly. Without knowing those, you simply can't have the correct memory model for C++, resulting in buggy programs full of undefined behaviors and inefficient programs due to unnecessary copying. By knowing these concepts, you can both avoid introducing bugs due to lack of understanding and reason about programs better.
This writing is my understanding of C++ ownership model. I think it can be useful to you if you have a basic level understanding of C++ and you want to learn more, or you are familiar with C++ but never learned the concepts and terminology formally.
-
[Old] David R MacIver ☛ How to find things (an intro to binary search)
As probably most of you are aware, I’m actually a software developer. I don’t talk about it here much1, as this is mostly a newsletter about the rest of my interests, but I’ve been experimenting with writing about whatever I feel like writing about, and today I feel like writing about binary search.
-
Rlang ☛ Introducing distionary for Building and Probing Distributions
After passing through rOpenSci peer review, the distionary package is now newly available on CRAN.
-
Education
-
Manuel Matuzović ☛ My favourite front-end and web development conferences
As someone who enjoys attending conferences, I thought it might be helpful to share a list of my favourite front-end and web development conferences.
-
-
Games
-
Godot Engine ☛ Release candidate: Godot 4.6 RC 2
One last round of testing, again!
-
-
Python
-
Dan Langille ☛ Migrating my hosts from Python 3.11 to Python 3.12
This post probably won’t help you much. It is mostly just me saving stuff I may want to refer to later.
Also, this post covers only the initial hosts. It is the first step.
-
-
Shell/Bash/Zsh/Ksh
-
Aashvik ☛ an ssg written in shell
Earlier last year, I made this website into a JS single-page application that used two GitHub repos and did regex crimes while praying JavaScript and cross-origin resource-sharing were enabled, and it worked the way a shopping cart with two wheels still rolls downhill…
So, after a few months of making and breaking different static site generators and website layouts, I’ve replaced it with a POSIX shell script (with an optional comrak dependency for markdown), because I enjoy cobbling HTML together and don’t want big JS frameworks for my small and simple site.
This is not a reusable SSG, but more of a very site-specific build script, but…
-