Archive
2025
- So, is coding dead?
- LLMs don't need your secret tokens (but MCP servers hand them over anyway)
- Apps shouldn’t let users enter OpenSSL cipher-suite strings
- Building a smarter chatbot - Why you need FAQ-links + RAG (and why everyone else gets it wrong)
- How to enable post-quantum key exchange and AEGIS in Nginx
- A simple tweak to make static shared keys suck less
- Options for full disk encryption on Linux
- Why your pull request might not be merged
2024
2023
- The best WebAssembly runtime may be no runtime at all
- LLVM performance improvements for WebAssembly
- Performance of WebAssembly runtimes in 2023
2021
2019
- Stop using ridiculously low DNS TTLs
- Go is the new Ruby
- Updated WebAssembly benchmark using libsodium
- CI is awesome. CD makes me uncomfortable.
- DNSCrypt - how expired certificates became a thing of the past
- Benchmarking WebAssembly using libsodium
- Compiling C to WebAssembly using clang/LLVM and WASI.
2018
- WebAssembly doesn’t make unsafe languages safe (yet)
- On user authentication
- Building a parental control system from scratch
2017
2016
2015
2014
2013
- Taking down botnets is not ineffective
- Getting prepared for the next Cryptolocker DGA
- Security and privacy issues of edns-client-subnet
- Learn from marketing/sales people.
2012
- On dnscache poisoning and how SipHash can help
- mod_pagespeed as a proxy for your phone
- On the distribution of DNS TTLs
- Akamai vs public DNS servers
2011
- DNS records and TTL - how long does a second actually last?
- Programmatically changing network configuration on OSX
- Redis as a recommendation engine
- Pagination and HTTP caching
- Thoughts on PHP sessions
2010
- Back and forward buttons considered harmful
- What happens during the AppStore review process?
- Using Pincaster for autocompletion
- A transparent, client-side fragment cache.
- Goodbye Mephisto, Hello Jekyll
- How the way you deploy code can ruin performance
- Choosing a NoSQL data store according to your data set.
2009
- Twonav for iPhone is now available
- Application-controlled browser cache using local storage.
- Is Twitter a blog killer?
- Enter webhooks
- Elliptics Network 2.5.0 has been released
- PHP-FPM might get merged into PHP
- Stealing your browser history without Javascript
- Bayon, a fast clustering tool
- Yet some more good presentations
- Embracing events
- ICANN to open up the TLD namespace
- A sneak peek at the Google IO conference
- UCARP 1.5.1
- Hardening MacOSX against the Java vulnerability
- New benchmarks of Elliptics Network published
- Slides and videos from MWRC2009
- Pinba: a real-time statistics server for PHP
- A critical vulnerability in IE8
- MurmurHash: now in 64-bits flavor
- Pure-FTPd 1.0.22 has been released
- Beyond horizontal scalability
- A critical one-shot remote Linux kernel vulnerability
- Ubuntu Jaunty: made on MacOSX with Photoshop
- Online file converter that really rocks
- Running a Realtime Stats Service on MySQL
- A presentation about Q4M
- Natural Docs: yet another documentation generator
- MapReduce vs DBMS for large-scale data analysis
- Cloudkit, Hypertable, HyperRecord
- Ruby on Google App Engine
- An overview of modern SQL-free databases
- 10 Reasons why PHP is Still Better than Ruby
- Messages queues evaluated for Second Life
- MacRuby, soon based upon the LLVM infrastructure
- An introduction to RestMS
- A complete search engine in 200 lines
- A killer template system in pure Javascript
- Security assessment of the TCP protocol
- Ruby 1.9.1 is released
- An introduction to Tokyo products
- High Availability of Web Server Using UCarp
- QuickPwn annoyed by iTunes
2008
- CloudKit: RESTful versioned storage of JSON data
- Signals and slots in Javascript
- Scientists extract images directly from brain
- PHP-FPM 0.5.10 has been released
- A MySQL UDF for top N sort
- Google's browser security handbook
- 0MQ 0.4 has been released, now under LGPL
- Running native code on the web
- PHP 5.2.8 is out
- New version of Ruby Enterprise Edition released
- Fix iTerm crash in multi-user mode
- Easily download the files of a web site
- Bypassing face-recognition systems
- An iPhone temperature app using... crickets as sensors
- A YARV to LLVM compiler
- Need an emergency DNS cache?
- Don't upgrade to PHP 5.2.7 now
- Speed up page loading on your iPhone
- OpenBSD-current is slow!
- How to flush the resolver cache on OSX
- Recent security flaws you might care about
- Yet another fast CSS3 selector implementation
- What's the fastest in-memory associative arrays library?
- Big life secret: how I manage my money
- Source Wars, an overview of OpenBSD 4.4 by its coders
- A zero-knowledge password authentication method
- Yes, 6 x 9 = 42
- GEMA is now open source
- Online version of OpenOffice.org 3
- C++ backend for haXe and AS3->haXe converter
- Don't forget that clickjacking is still with us
- Ruby off Rails
- Optimize your Firefox SQLite databases
- Matthew Dillon's NYCBSDCon 2008 slides
- A messy list of worthy software, part #1
- How to avoid IE CSS hacks using conditional classnames
- An unofficial Prototype and Scriptaculous Wiki
- A lookup at Google's data centers
- Closing the users browser connection whilst keeping your php script running
- Prototype 1.6.0.3 has been released
- Using libpuzzle in order to find the cue point of a video
- Extensions for the prototype.js library
- Multiple vendor ftpd - Cross-site request forgery
- Lesser-known PHP vulnerabilities
- The IP address assignments map
- Pacman in Javascript
- Nostalgia
- A Ruby VM in Javascript
- Hans Reiser history, by DittoBox
- First Google Chrome vulnerability disclosed
- OSBF-Lua is still the best spam filter in the world
- A DragonflyBSD live DVD
- An actual solution to the current weakness of the DNS protocol
- DNS servers still vulnerable after patching
- Solaris remote root exploit
- Details for Kaminsky DNS vulnerability leaked
- Another OpenSSH-portable vulnerability?
- A simple, powerful and fast mail delivery agent
- Linux is dying
- BSD is dying
- Cross-subdomain AJAX made simple
- A presentation of the HAMMER filesystem
- RAID0 vs RAID1 benchmark
- Persistent storage without cookies
- Avoid pie charts
- Let extensions run with new Firefox versions
- A library for lockless and transaction-capable hash tables
- XMLHttpRequest browser bugs and and implementation with sniffing capabilities
- Opera doesn't load some sites
- Fast sinus and cosinus approximation
- MySQL gets Maria, yet another storage engine
- Microsoft to buy Yahoo
- Thin: a fast and simple Ruby web server
- MonetDB / X100, a revolution in the database world
- UCARP 1.4 has been released
- Tokyo Tyrant : a network layer for Tokyo Cabinet
2007
- Next Internet Explorer to pass the Acid 2 test ?
- Easily embed PHP within C++
- Ruby on Rails 2 is out!
- Bob Jenkins super fast hash for PHP
- VMWare Server 2 beta is now available
- Highly scalable architectures : lessons learned at Qcon 2007
- Optimizing require_once with xend
- Java 6 has been ported to MacOS X
- Improving MyISAM read/write concurrency
- PHP 5.2.5 + Suhosin + FastCGI = unstable trio
- Tokyo Cabinet, Mikio did it again
- JumboMem: expand your memory at will
- Liste de tous les codes postaux et communes de France, avec géolocalisation
- Update your DNS cache servers
- Internet Explorer memory leaks
- Rest in peace, Jun-Ichiro Hagino Itojun
- Stop 1970 programming
- A nice alternative to osCommerce
- Optimizing MyISAM tables with a pair of disks
- A wonderful project-management tool
- Off-by-one in OpenSSL
- OpenBSD 4.2 song and lyrics are online
- Hot news in the Ruby on Rails world
- Swiftiply: boost your framework-driven web applications
- Pixelmator 1.0 is available
- Vulncheck updated
- New project: the puzzle library
- PHP : notes about integers
- ChironFS, filesystem redundancy made simple
- Pure Javaâ¢, Pure Evil⢠Popups
- Why PHP is a mess
- UCARP 1.3 is out
- Playing with Ruby 1.8, Ruby 1.9 and PHP
- OpenBSD is now running on Xbox
- Emacs 22 is out!
- OpenOffice.Org for OSX
- EyeOS 1.0 has been released
- An age is not a duration
- New TLB shootdown code in OpenBSD
- Gentoo 2007.0 is there!
- MaxKeepAliveRequests: keep it high
- Cunninlynguists: f*cking good sh*t
- PHP 5.2.2 has been released
- STF scheduler for OpenBSD
- Easily create config files for Nginx from YAML files
- Google releases patches that enhance the manageability and reliability of MySQL
- Excel as an exchange format is a nightmare for developpers
- Enable IPv6 and kill the internet
- OpenBSD is being ported to the Xbox
- PHP and its horrible hash/array mixup
- Mozilla Thunderbird 2 is there!
- lighttpd 1.4.15 has been released
- OpenBSD finally got UFS2
- Myths of XHTML and why HTML is probably the way to go
- OpenBSD 4.1 song and lyrics now available
- Submitting a form without changing the window's content
- Internet Explorer and multiple connections to same the web server
- Backslashes in SQL strings are illegal
- PHP WebDAV extension 1.1 released
- YouGetIt : the next big thing?
- Rage against free Broadcom drivers
- Moderating bulletin boards with text classifiers
- Timing a process out
- Preventing cross-domains scripting attacks
- No more 2D acceleration for free operating systems?
- MySQL 5.0.37 for OpenBSD
- 800x600 is not dead
- LSI Megaraid cards and slow write performance
- Sniffing Bluetooth with common hardware
- PHP with FastCGI on OpenBSD
- Skyrock Blog launched
- MySQL proxy and MySQL tricks
- Metasploit 3.0 has been released
- Gettext and accents in po templates
- Translating HTML templates
- DSPAM 3.8.0 unofficial release
- Patch for the OpenBSD mbuf issue has been updated
- Insono: linear auditive protections
- A security hole in the OpenBSD IPv6 stack
- OpenBSD 4.1 is available for preorders
- MySQL and persistent user variables
- OS counters are harmful
- A fast web browser for OSX
- Why are lightweight markup languages so heavy?
- PHP and multipart PUT data
- Announcing the PHP WebDAV extension
- phpinfo() XSS vulnerability
- 00F.Net is back