wesley tanaka

Haskell unicode character and byte string conversions




Wesley: Oh, don't step on Bunny!

Ryan: Why?

Wesley: Well, if someone stepped on you, would you like that?

Ryan: No.

Ryan: If someone stepped on me, I might get..  breaked.

Bilingual... in scare quotes


My son, just now:

I'm humming "It's a small world" in Chinese!

He really was doing it, too.

Run "System Settings" in Ubuntu Unity from the command line


To run "System Settings" control panel from the command line in Ubuntu, run:


It is possible to launch the window with a specific group selected, like:

unity-control-center display

Setting an external monitor as default on the Ubuntu login screen


In /etc/lightdm/lightdm.conf, add these lines to the SeatDefaults section:

display-setup-script=xrandr --output VGA1 --mode 1280x720 --primary
session-setup-script=xrandr --output VGA1 --mode 1280x720 --primary

If the external monitor is not detected, this may cause an error:

The system is running in low-graphics mode

Back up a git repository in a single file


This page contains a comparison between different approaches and file formats for backing up a git repository in a single file.

Summary: The best method is probably git bundle

R quick reference cheat sheet


Here are some notes I took while learning about R:


  • ?matrix -- gets help on "matrix"
  • ls() -- lists variables that exist
  • rm() -- deallocates a variable

Run script from command line

Rscript hello.r

Common data types



Evolution of strapping a tablet on your face:


Colbert iPad 2012


AirVR iPad 2014

Memory usage in Haskell is difficult to predict


Laziness [in Haskell] makes it much, much harder to reason about performance, especially space.

Consider a very long list of 'a's called long which we play with in GHC 7.6.3:

largenum = 10000000
as = repeat 'a'
long = take largenum as

Light Painting With Drones

Syndicate content
by Wesley Tanaka