Blog
Here you can find all of my previous posts. These are also available as a feed, in Atom format and RSS format.
- Rationalising Denominators 4: Ratios -
- Rationalising Denominators 3: Sums -
- Rationalising Denominators 2: Products -
- Rationalising Denominators 1: Fractional Powers -
- Determinism -
- Nix is a build system -
- Lock Files Considered Harmful -
- Spigot, and rational approximations -
- SK in egglog: part 4, extensional equality -
- Unlocking the GNOME keyring -
- SK logic in egglog: part 3, falsifying myself -
- SK logic in egglog: part 2, property-checking extensionality -
- SK logic in egglog: part 1, encoding and reduction -
- Git pages update -
- Dependency solving in Nix -
- Renaming files inside tarballs -
- Nix caching on a LAN -
- Lazy Test Generators -
- The Backwards Compatibility of Text -
- Nix from the bottom up -
- Boltzmann RAM -
- Haskell Parsing -
- Playing with MathML -
- Useful info I learned from playing with GSM -
- Environment Variables are Dynamically Scoped Keyword Arguments -
- More Testing Terminology -
- Haskell Strings -
- The Metric Red Herring -
- Improving our Units -
- GADT Casting -
- Bottom, Null, Unit and Void -
- Clever Code -
- Effective Property Checking -
- Paths of Least Resistance -
- Deleting SMS from SIM on OpenMoko -
- Switching Browser -
- Benchmarking -
- Quantum Encryption -
- Self-Organising Lists -
- Fixing leveldb -
- Curry Your Calls, Uncurry Your Returns -
- Unit Testing Terminology -
- Compile-time I/O -
- Capabilities Example -
- Haskell Theory Exploration scripts -
- Dependent Function Types -
- del in Python -
- PHP Types -
- S-expressions -
- A Personal Opinion On PHP -
- Small Functions -
- Nix Hacks -
- Git Repo Pages -
- State, Effects and Monads in Functional Programming and Haskell -
- Artemis -
- Computer Science is a Natural Science -
- Active Code Updates -
- GUIs -
- Web Hosting With IPFS and Nix -
- Free Elves -
- Listing Things -
- What I Would Like -
- Urbit -
- Algorithmic Information Theory -
- Standard Syntax Trees -
- Querying Impurities -
- Deleting files -
- Dodgy Chargers -
- Converting Feeds (RSS/Atom/etc.) to Maildir -
- Perspective -
- KISS -
- Site Changes -
- Work log 2016-09-05 -
- Work log 2016-09-02 -
- Work log 2016-09-01 -
- Work log 2016-08-31 -
- Work log 2016-08-25 -
- Work log 2016-08-24 -
- Work log 2016-08-23 -
- Work log 2016-08-22 -
- Work log 2016-08-19 -
- Work log 2016-08-18 -
- Work log 2016-08-17 -
- Work log 2016-08-16 -
- Work log 2016-08-15 -
- Work log 2016-08-12 -
- Work log 2016-08-11 -
- Work log 2016-08-10 -
- Work log 2016-08-09 -
- Work log 2016-08-08 -
- Work log 2016-08-05 -
- Work log 2016-08-04 -
- Work log 2016-08-03 -
- Hydra -
- Work log 2016-08-02 -
- Work log 2016-08-01 -
- Work log 2016-07-31 -
- Work log 2016-07-29 -
- Work log 2016-07-27 -
- Work log 2016-07-26 -
- Work log 2016-07-25 -
- Work log 2016-07-22 -
- Work log 2016-07-20 -
- Work log 2016-07-13 -
- Work log 2016-07-11 -
- Work log 2016-07-08 -
- Work log 2016-07-07 -
- Work log 2016-07-06 -
- Work log 2016-07-05 -
- Work log 2016-07-04 -
- Trolled 2 -
- Premature Optimisation -
- The Sorry State of the Web -
- Off The Grid -
- A Few Site Updates -
- Calculating Arity -
- Fixing Web Colours -
- nix-eval -
- Abandoning Hakyll -
- HoTT for Dummies -
- Cabal Hell -
- More git changes -
- Moving Git Repos -
- Procedural Images -
- Active Code Updates -
- Developing on NixOS -
- Embedding Lambda Calculus -
- Learning Functional Programming -
- Does Polymorphism Make Code More Flexible? -
- Minimalist Programming Languages -
- Controlling Side-Effects -
- Nix Packages -
- Nat-like Types, or Dynamic and Static Information -
- MELPA breakage -
- Search Algorithms (again!) -
- Plumb: A Domain-Specific Language Embedded in PHP -
- Fibonacci Sequence in PHP -
- Switching to NixOS -
- Unifying PHP’s namespaces -
- Trolled -
- Omega -
- Partial Application & Currying in PHP -
- Lazy Lambda Calculus -
- PowerPlay Improvement continued -
- PowerPlay implementations -
- PowerPlay improvement -
- PHP Reference Silliness -
- Optimal Programming -
- My Wordpress.com Blog -
- Lambda Lounge Manchester -
- Sheffield Hardware Hackers -
- Computers and Maths -
- Mapping associative arrays in PHP -
- Inverse of PHP’s array_combine -
- Dynamic scope vs. Lexical scope -
- Imperative Programming In CSS -
- Quick ‘n’ Dirty PHP/Drupal REPL -
- Debugging random Haskell -
- Typed Combinators -
- Naturals Search -
- Joy part I -
- Anonymous closures in Python -
- Identi.ca -
- Looping in Javascript -
- Better Currying in Javascript -
- Safety through types -
- Making Windows Less Shit -
- Perhaps, perhaps, perhaps -
- Emacs & XMonad -
- Concatenative Languages -
- Search and Optimisation Streams -
- Currying in Javascript -
- ‘Strong typing’ in PHP -
- Some Search Algorithms -
- Crayola Doodle Penguin; or Why I Hate Consumerist Computing -
- Why Are Physicists Bad In Bed? -
- Closures vs. First-class functions vs. Higher-order functions -
- Dear World -
- Python Decompiler Performance -
- Some Python Stats -
- PyMeta Stacks -
- Abstraction Fail -
- Enigma Number 1628 -
- More ocPortal Thoughts -
- Blog Dump 8: Building a Language -
- Blog Dump 7: Reasoning & Proof -
- Blog Dump 6: The Web of Code -
- ocPortal Ramblings -
- Blog Dump 5: Some Statistics -
- Blog Dump 4: What Makes Me A Geek: Reason 0x54F6 -
- Blog Dump 3: Duck Typing as Constraint Propagation -
- Blog Dump 2: The Universality of Search -
- Blog dump 1: Diet Python -
- Odd SOCKS -
- Freedom to Work -
- IWF Crap -
- Bits & Bobs -
- Symmetry in Languages -
- Some Reading Material -
- My thoughts on the new Amiga -
- Diet Python -
- What Makes Me A Geek: Reason 0x54F6 -
- The Web as an Oracle -
- (Anti)Object-oriented reasoning -
- Enviro Mental -
- Publicly whoring onesself out for politics -
- My Current Browser Tabs -
- Twilight: New Moon -
- Browsing on a budget -
- Divergence and reduction with complex numbers -
- Blogilo test -
- I’ve Got an XO! -
- Digital Economy Bill -
- Fffffffffffffffffffff… -
- Wish I had some free time -
- On Computer Animation -
- mv/((1-(v/c)2)(1/2)) or, in non-relativistic terms, momentum -
- Music is good -
- Just Wondering… -
- Experiment Dump -
- Diet Python and some ranting -
- Coming down to Earth with Physics -
- A Whole New World -
- A lengthy list of practical problems with shipping non-free software -
- Web Apps are shit -
- A Decent Compressed Filesystem At Last? -
- The Ugliest Hack I’ve Written So Far -
- Some Nice Things -
- BBC News comments are broken -
- Learned Helplessness in Computing? -
- Retarded = backwards -
- PubSubClient back in development -
- The Importance of Transparency -
- Medibuntu :P -
- Amarok and roll -
- I CAN HAZ OPENMOKO? -
- On People -
- Video or it didn’t happen -
- Brains are Object Oriented -
- Spot The Difference -
- PubSubClient has a home -
- Wanna Be A Programmer? -
- …And Laws Were Most Numerous When The Commonwealth Was Most Corrupt -
- The Effects of Promoting Propaganda -
- The Power To Change -
- I am teh awesome -
- Model-View-Controller -
- Services, integration, communication and standards -
- NOTE TO SELF -
- Physics + Programming = Pretty -
- LOLFOX -
- Efficient vs Approachable (choose your phrase carefully) -
- Last.fm Is Becoming More Accurate -
- What I Find Cool -
- On Responsiveness -
- OMFG I want to be there -
- Two Wrongs Do Not Make A Right -
- Resits Over -
- Note to self -
- C00l -
- An Option I Would Like To See In Every Application -
- OMFG! -
- QEdje Is Working! :D -
- Reasons I Love Teh Internets -
- You know you’re a sad bastard when… -
- Exactly -
- Some ramblings about graphics, compilers and CPUs -
- PubSub Browser -
- LXDE is actually teh awesome -
- PubSub Ahoy! -
- I could really do with a replacement ’phone -
- X on Minix 3 AT LAST -
- A Crossroads in my life… -
- PubSub Library Diagram -
- PubSub -
- Programming I’ve Been Up To -
- E=MC^Hawking -
- The night so far… -
- Awesomeness -
- SUMMER! -
- Make Ubuntu a simple “Gateway” Distribution, make switching to something else easy -
- My Dilemma -
- Won’t somebody PLEASE think of the people? -
- Rather XKCD-esque -
- Just wondering -
- How’s This For a Mention? -
- Some musings -
- Some Python Examples -
- Some Slashdot musings….. -
- Some musings on KDE4, and what I am currently up to -
- Shut Up You Stupid Bitch -
- How To Design Things -
- Christmas Is Coming -
- Free Software Society Get-together -
- Dir En Get Out Of My House -
- Action on the FSS Front -
- Installfest Success :D -
- Free Software Society Gathering Steam… Sort Of -
- Bicubic Penis Enlargement -
- Ridiculousness -
- I <3 U Dell -
- Plasma Testing In Ubuntu -
- Just want to share this with you -
- I used to love nostalgia… -
- You don’t have to be into violent BDSM to think the GIMP Took Kit is sexy -
- Cool Tech Preview -
- A little toy for you -
- ZOMG -
- Some Cool Graphics Algorithms -
- How Dare They! -
- Why you shouldn’t rely on a single company with closed protocols -
- Some phrases should be culled -
- Way to make my work sound easy there… -
- lol -
- Will the FUD never end?! -
- Very serious issue, but the semantics are still funny -
- Ugly Mug -
- Monopolies Are A Bad Thing(TM) -
- Lawyers are our friends too… -
- Firefox is a desktop application -
- Death To All Pan Beasts -
- Aren’t I Clever? -
- Why should this even be necessary? -
- LUGRadio Live is over -
- RLOD -
- Overengineering 4TW -
- GNOME Blog Works! -
- Quote of the day -
- Some interesting interface ideas -
- Application naming -
- Service Pack Maker -
- Nuclear Bovines -
- Various updates -
- More UI ideas. Graphics for my pinball engine! -
- Warbuntu in the works -
- Yahoo suck donkey balls -
- Easter -
- I have nothing to talk about -
- Ubuntu Thoughts -
- Vista today… -