All pages
- About
- Caesar cipher (JavaScript)
- Casio fx-991MS tips and tricks
- Calculate prime factorization (JavaScript)
- Calculate divisors (JavaScript)
- Calculate GCD (JavaScript)
- Vigenère cipher (JavaScript)
- Boolean algebra laws
- Countable sets and Kleene star
- Reference Huffman coding
- Is there an ideal comparison sort?
- Chemical equation balancer (JavaScript)
- Karatsuba multiplication
- Fast Fibonacci algorithms
- Sister Princess Winamp skins
- How to implement the discrete Fourier transform
- Transcription of Nyanyanyanyanyanyanya!
- Patchouli Knowledge laptop sticker
- Triangle solver (JavaScript)
- Automatic Caesar cipher breaker (JavaScript)
- 國內 doesn’t mean domestic
- Finding dust by lighting from a grazing low angle
- Next-hop routing in real life
- Project Euler solutions
- Brainfuck interpreter (JavaScript)
- A septillion CPU cycles a year
- Tiny Encryption Algorithm in x86 assembly
- Transcription of Crystal Energy – Guitar solo
- Transcription of Kana’s Theme
- Transcription of Every Day
- RC4 cipher in x86 assembly
- Sorting algorithms demo (Java)
- DWITE programming contest solutions
- Tap to measure tempo (JavaScript)
- Fast skipping in a linear congruential generator
- Unspecified edge cases in the DEFLATE standard
- Some bit-twiddling functions explained
- BMP I/O library (Java)
- Transcription of o-Hanabatake
- Full screen clock (JavaScript)
- I type in Dvorak
- Transcription of Miracle∞Hinacle
- Transcription of Chasse – Instrumental solo
- Variations on Japanese romanization
- Java’s signed byte type is a mistake
- Binary counter in brainfuck
- Poor feedback from readers
- Good Java idioms
- How to batch-tag photos on Facebook
- My Mario Kart 64 time trial records
- My university courses
- Supplement to my résumé
- Dumb PNG output (Java)
- Fast MD5 hash implementation in x86 assembly
- Site map
- Fast SHA-1 hash implementation in x86 assembly
- Fast Whirlpool hash in x86 assembly
- Facebook anniversary ray trace
- Galois linear feedback shift register
- Primitive recursive functions
- Simple DEFLATE decompressor
- Propositional sequent calculus prover
- Manufactoria solutions
- Free small FFT in multiple languages
- Prayer brackets
- Forcing a file’s CRC to any value
- Automatic Minesweeper solver
- Unusual chemical symbols in English
- Transcription of Hare Tokidoki Egao
- Frog Fractions guide
- Factorize Gaussian integer (JavaScript)
- Optimizing brainfuck compiler
- Dvorak keyboard in use warning sign
- Reference arithmetic coding
- Understanding Facebook IDs
- Public transit and monotonicity
- Polynomial arithmetic shorthand
- So you want to be a day trader? Bad idea.
- Gauss–Jordan elimination over any field
- Recommended articles from Canadian Couch Potato investment blog
- NotepadCrypt format decrypter (Java)
- Smallest enclosing circle
- Example of simplifying and improving code
- NetPerSec (Nayuki’s version)
- Resizing images by area
- Next lexicographical permutation algorithm
- Fast SHA-2 hashes in x86 assembly
- A math/programming view of Canada GST/HST credit calculation
- Master theorem solver (JavaScript)
- Tiny PNG Output
- AES cipher internals in Excel
- Sinc-based image resampler
- Graphic overview of Canada income tax, RRSP, and TFSA
- Canada Tax-Free Savings Account simulator (JavaScript)
- Overview of Project Nayuki software licenses
- DES cipher internals in Excel
- Guide to Canada income tax by successive approximation
- Computing Wikipedia’s internal PageRanks
- Extending the use of logarithmic scales
- Approximating Euler’s number correctly
- Lowest SHA-512 value by brute force
- Full transcription of Ichigo Mashimaro – Main Theme
- Iterated popcount results in 0 or 1
- Transcript of “New Money (Filling the Void)”
- Portable FloatMap format I/O (Java)
- E-Trade: An expensive, rigid brokerage
- Random password generator (JavaScript)
- Windows timestamp accessor library
- Absolute and relative lens apertures
- AVL tree list
- Gamma-aware image dithering
- Binary array set
- Binomial heap
- Native hash functions for Java
- The photographic exposure equation
- Montgomery reduction algorithm
- Knuth–Morris–Pratt string matching
- Huffman-coding English words
- Nanoblock modeling in POV-Ray
- DEFLATE library (Java)
- Panel de Pon puzzle solver (JavaScript)
- Unsigned int considered harmful for Java
- Web site notes
- 1D barcode generator (JavaScript)
- Barrett reduction algorithm
- GIF89a specification (HTML)
- GIF optimizer (Java)
- TTC fare guide for tourists
- Bitcoin cryptography library
- Compact hash map (Java)
- Overwriting confidential handwritten text
- Fast Fourier transform in x86 assembly
- Tablet desk clock
- JSON library (Java)
- Numerically stable law of cosines
- RollerCoaster Tycoon saved games
- Cryptographic primitives in plain Python
- Handling physical quantities in math formulas
- Symmetry sketcher (JavaScript)
- Simulated annealing demo
- Decent feedback from readers
- Image unshredder by annealing
- MamIRC, the headless IRC client
- Animated floating graph nodes
- Disjoint-set data structure
- What are binary and text files?
- Angles in elastic two-body collisions
- A fundamental introduction to x86 assembly programming
- Large arrays proposal for Java
- Lyrics of Mahou Shoujo Pixy Misa Shouka
- Java BigInteger was made for RSA cryptography
- Encrypted backup client for Dropbox
- QR Code generator library
- Knuth’s -yllion number notation
- Java Native Interface compared to Python/C API
- Batch up new messages in Gmail for better productivity
- Being a polyglot programmer
- Gaussian blur demo
- The versatile sieve of Eratosthenes
- CSC258 computer debugger
- Band-limited square waves
- GO Train acceleration analyzed by video
- Transcription of Pokémon Game Boy music
- Reed–Solomon error-correcting code decoder
- B-tree set
- Undefined behavior in C and C++ programs
- Simple FLAC implementation
- Benchmark of Nayuki’s FLAC encoder
- Designing better file organization around tags, not hierarchies
- Git library (Java)
- FLAC library (Java)
- Simple GUI FLAC player (Java)
- sRGB transform library
- Common mistakes when using the metric system
- MATLAB language pet peeves
- Sliding window minimum/maximum algorithm
- Near-duplicate features of C++
- Number-theoretic transform (integer DFT)
- Convex hull algorithm
- Fast discrete cosine transform algorithms
- Java SE 5 is the most significant release
- ProFont (Nayuki’s version)
- Fast QR Code generator library
- My favorite YouTube video channels
- Pervasive Displays e-paper panel hardware driver
- Problems with plurals in English
- Elliptic curve point addition in projective coordinates
- AA tree set
- Binary indexed tree
- Optimal text segmentation for QR Codes
- Creating a QR Code step by step
- Don’t share commented-out code
- Subtle ways to lose data
- Self-encrypted cache structure
- Summary of C/C++ integer rules
- BitTorrent bencode format tools
- My code style
- Analog vs. digital games
- Time-based One-Time Password tools
- Ending my support for Python 2
- Skill levels in Scalable Vector Graphics (SVG)
- Practical guide to XHTML
- PNG file chunk inspector
- Nintendo 64 over S-video
- How to download private Facebook videos
- Macshift (Nayuki’s version)
- I dislike dividends
- Zeller’s congruence
- Why I write
- PNG library
- SQLite database file visualizations
- DEFLATE specification v1.3 (HTML)
- Tax brackets visualizations
- Drinking distilled water
- Meanings of home equity