Project Nayuki

Recent pages

Page Last updated
November 2015
Image unshredder by annealing
Poor feedback from readers
How to implement the discrete Fourier transform
Simulated annealing demo
Decent feedback from readers
Web site notes
Gauss-Jordan elimination over any field (Java)
Overview of Project Nayuki software licenses
October 2015
Project Euler solutions
Supplement to my résumé
Variations on Japanese romanization
Symmetry sketcher (JavaScript)
September 2015
JSON library (Java)
Cryptographic primitives in plain Python
Handling physical quantities in math formulas
Bitcoin cryptography library
August 2015
Tiny PNG Output (C)
RollerCoaster Tycoon saved games
July 2015
Manufactoria solutions
Numerically stable law of cosines
June 2015
Tablet desk clock
May 2015
Canada Tax-Free Savings Account simulator (JavaScript)
Fast Fourier transform in x86 assembly
TTC fare guide for tourists
Overwriting confidential handwritten text
April 2015
Compact hash map (Java)
GIF optimizer (Java)
March 2015
NotepadCrypt format decrypter (Java)
My Mario Kart 64 time trial records
Fast Fibonacci algorithms
GIF89a specification (HTML)
AVL tree list
Triangle solver (JavaScript)
January 2015
Nanoblock modeling in POV-Ray
Barrett reduction algorithm
1D barcode generator (JavaScript)
Full screen clock (JavaScript)
December 2014
Unsigned int considered harmful for Java
Panel de Pon puzzle solver (JavaScript)
November 2014
Fast DEFLATE implementation
Huffman-coding English words
Knuth-Morris-Pratt string matching
Montgomery reduction algorithm
The photographic exposure equation
Native hash functions for Java
October 2014
Binomial heap
Binary array set
Gamma-aware image dithering
AES cipher internals in Excel
Absolute and relative lens apertures
September 2014
Fast SHA-2 hashes in x86 assembly
Sinc-based image resampler
Windows timestamp accessor library
Random password generator (JavaScript)
E-Trade: An expensive, rigid brokerage
August 2014
Portable FloatMap format I/O (Java)
Tiny Encryption Algorithm in x86 assembly
Transcript of “New Money (Filling the Void)”
July 2014
Next lexicographical permutation algorithm
Iterated popcount results in 0 or 1
April 2014
Approximating Euler’s number correctly
Optimizing brainfuck compiler
March 2014
RC4 cipher in x86 assembly
Full transcription of Ichigo Mashimaro – Main Theme
Lowest SHA-512 value by brute force
Free small FFT in multiple languages
February 2014
Extending the use of logarithmic scales
Boolean algebra laws
Computing Wikipedia’s internal PageRanks
January 2014
Guide to Canada income tax by successive approximation
I type in Dvorak
DES cipher internals in Excel
NetPerSec (Nayuki’s version)
Smallest enclosing circle
December 2013
Fast Whirlpool hash in x86 assembly
Fast SHA-1 hash implementation in x86 assembly
Fast MD5 hash implementation in x86 assembly
DWITE programming contest solutions
Some bit-twiddling functions explained
Graphic overview of Canada income tax, RRSP, and TFSA
November 2013
Forcing a file’s CRC to any value
Java’s signed byte type is a mistake
Propositional sequent calculus prover
So you want to be a day trader? Bad idea.
Good Java idioms
Master theorem solver (JavaScript)
October 2013
A math/programming view of Canada GST/HST credit calculation
September 2013
Galois linear feedback shift register
August 2013
Resizing images by area
Automatic Caesar cipher breaker (JavaScript)
Frog Fractions guide
Primitive recursive functions
Casio fx-991MS tips and tricks
July 2013
Example of simplifying and improving code
June 2013
Karatsuba multiplication
Site map
My university courses
May 2013
Arithmetic coding (Java)
Recommended articles from Canadian Couch Potato investment blog
April 2013
Polynomial arithmetic shorthand
March 2013
Chemical equation balancer (JavaScript)
Fast skipping in a linear congruential generator
Public transit and monotonicity
February 2013
Understanding Facebook IDs
Huffman coding (Java)
Dvorak keyboard in use warning sign
January 2013
Factorize Gaussian integer (JavaScript)
Is there an ideal comparison sort?
Brainfuck interpreter (JavaScript)
December 2012
Transcription of Hare Tokidoki Egao
Sorting algorithms demo (Java)
Unusual chemical symbols in English
Automatic Minesweeper solver
November 2012
Facebook anniversary ray trace
Prayer brackets
Calculate GCD (JavaScript)
September 2012
Simple DEFLATE implementation
Unspecified edge cases in the DEFLATE standard
July 2012
Dumb PNG output (Java)
April 2012
Sister Princess Winamp skins
Patchouli Knowledge laptop sticker
Transcription of Crystal Energy – Guitar solo
Transcription of Nyanyanyanyanyanyanya!
December 2011
How to batch-tag photos on Facebook
November 2011
Binary counter in brainfuck
September 2011
Transcription of Chasse – Instrumental solo
Transcription of Miracle∞Hinacle
Tap to measure tempo (JavaScript)
August 2011
BMP I/O library (Java)
Transcription of o-Hanabatake
July 2011
Calculate divisors (JavaScript)
Calculate prime factorization (JavaScript)
Transcription of Every Day
Transcription of Kana’s Theme
June 2011
A septillion CPU cycles a year
Finding dust by lighting from a grazing low angle
Next-hop routing in real life
國內 doesn’t mean domestic
May 2011
Vigenère cipher (JavaScript)
Caesar cipher (JavaScript)
Countable sets and Kleene star