Tag: #programming
- A proposal for visual pure functional programming
- A proof that the Halting problem is undecidable, using JavaScript and examples
- Your syntax highlighter is wrong
- Documentation black holes: things we write that don’t get read
- How to write a ‘hello world’ serverless WebRTC app
- How do I use
execve
in C? - Sentence wrap
- GLSL varying variables
- Generated normal-mapped ripples
- Drawing a cube in WebGL
- Game of Life implemented with a fragment shader
- Giant Game of Life
- Web Push API in Firefox
- Group chat with end-to-end encryption
- The Three Ts of Time, Thought and Typing: measuring cost on the web
- Forward secrecy with hash ratchets
- WebGL shading: both diffuse and specular
- Hashing a string with the Web Cryptography API
- Signing a string with HMAC using the Web Crypto API
- Symmetric encryption with the Web Cryptography API
- Asymmetric encryption with the Web Cryptography API
- What are promises in JavaScript?
- How do I release a PHP Composer package?
- A JavaScript Promises implementation
- How PHP and Composer find your code
- DNS resolution procedure
- Diff views in GitHub-Flavored Markdown
- UNIX
free
:used
does not mean what you think it means - What is ASN.1?
- The sorry state of OpenSSL usability
- An encrypted diary using OpenSSL
- How less works: the terminal’s alternative buffer
- osquery: UNIX as a SQL database
- What is daemonization?
- Making a stream cipher
- How to hash multiple values
- What is
tcpdump
? - What does
getaddrinfo
do? - Don’t use
nscd
- What is DHCP?
- How does
ping
work? - How does reverse DNS lookup work?
- What is a subnet?
- How does an IP address get translated to a MAC address?
- How to make a system call in C
- Hello world in C inline assembly
- How does swapping stdin and stderr work?
- Running
tcpdump
on a TCP connection - What are TCP sequence numbers?
- What does Linux do with a lost TCP connection?
- How does network address translation work?
- Creating a UDP connection with netcat
- An interpreter in Haskell
- Writing a parser in Haskell
- Hello world in Linux x86-64 assembly
- A lambda calculus interpreter in Haskell
- What is HTTP keep-alive? What is HTTP request pipelining?
- Rounding up to the next power of two in C
- How is the Redis sorted set implemented?
- Strava route builder API
- What is the API for Google Ngram Viewer?
- How does a Morris approximate counter work?
- A history of time in 40,000 pixels
- What is document.cookie?
- How to draw sprites on an HTML canvas
- How I start Jekyll blog posts
- How to make a webserver with netcat (nc)
- How to run Redis Sentinel
- How to fix ‘Activating bundler (< 2) failed’ error in your jekyll build
- Project C-43: the lost origins of asymmetric crypto
- Why can’t I set the font size of a visited link?
- The hacker hype cycle
- Electron hello world
- Node.js addon hello world
- The inception bar: a new phishing method
- Does Redis Pub/Sub work with master-slave replication?
- How can I add tags to a Jekyll blog?
- Browser webcam hello world
- How do JavaScript iterators work?
- What are symbols in JavaScript?
- What is
function*
in JavaScript? - JavaScript generators are also consumers!
- I can see your local web servers
- What is a McCulloch-Pitts neuron?
- What is simulated annealing?
- Hand-coded neural networks
- The neural network programming language
- What are CSS variables?
- Les Aventures De Toupac - a pixel art game
- What are CSS percentages?
- Browsing my genome
- How does Glitch refresh my app?
- What cookies are sent in an HTTP request?
- Determine if a string has all unique characters
- How to reverse a string in C
- Determine whether one string is a permutation of the other
- How to percent-encode strings in-place
- Run-length encoding in C
- How to rotate a square matrix in-place
- How to remove duplicates from an unsorted linked list
- How to find kth last node of a linked list
- How to delete a node from the middle of a linked list
- How to partition a linked list
- How to reverse a linked list
- How to find the middle of a linked list
- How to check whether a linked list is a palindrome
- Implementing a stack using a linked list
- Implementing a queue using a linked list
- A stack with minimum element
- Towers of Hanoi in Haskell
- Implementing a queue using two stacks
- How to sort a stack using one additional stack
- How to check if a binary tree is balanced
- Is there a route between these two nodes in this directed graph?
- Diffing coronaviruses
- Simulating epidemics
- Why does this RNA virus look like DNA?
- Simulating epidemics with WebGL
- When in doubt, don’t blur it out
- How to write an ArrayBuffer to a canvas
- Rule 110 in WebGPU
- Game of Life in WebGPU
- Simulating epidemics in WebGPU
- How to record a canvas to video
- Time is running out to catch COVID-19
- How to resolve “the app shows no response upon launch” in App Review
- Why is the contentRect of my NSWindow ignored?
- devices(for:) was deprecated in macOS 10.15: Use AVCaptureDeviceDiscoverySession instead
- What is the order of
NSWindow
levels? - How to implement green screen in the browser
- How to implement green screen in WebGL
- Production-ready green screen in the browser
- Why does my WebGL alpha-transparency look wrong?
- BodyPix hello world
- Edge detection with Sobel filters
- Step-away background removal
- BlazeFace hello world
- Resizable boxes in pure CSS!
- Running BodyPix on a video stream
- Using BodyPix segmentation in a WebGL shader
- JavaScript modules for grumpy developers from 2005
- What are JavaScript source maps?
- What does the
require
function do in Node.js? - JavaScript live bindings are just concatenation
- How do ECMAScript modules work in Node.js?
- What is npm?
- How to publish an npm package
- Executables in npm?
- What are AMD modules? Fetch your sick bag
- What are UMD modules? One final module system to rule them all (except ES modules which are a different thing)
- How does the Node.js REPL display previews?
- How to make a floating head
- How to self-host a TensorFlow.js model
- Head tracking with BlazeFace
- A head in a box with BlazeFace
- WebRTC group chat hello world
- The Electron process architecture is the Chromium process architecture
- How does
require
work in Electron? - Babel JS from the ground up
- MediaRecorder hello world
- How do JavaScript async iterators work?
- Use varyings for texture2D coordinates!
- Why is my WebGL texture upside-down?
- The many sizes of a video element
- What does the dot do in JavaScript?
- How do JavaScript prototypes work?
- How do classes work in JavaScript?
- A matrix library in 5 lines of code
- Homogeneous coordinates in 2D, from scratch
- Homogeneous coordinates in 3D
- NPM addon package hello world
- Measuring audio volume in JavaScript
- How to replace GIF with HTML video in 2021
- How to run a pre-trained model in TensorFlow.js
- What is a Single-Shot Multibox Detector?
- TensorFlow 2 ‘hello world’
- How to export a model for TensorFlow.js
- Proving 1+1=2 and other advanced theorems
- The golden rule of PR reviews
All content copyright James Fisher.