Fork me on GitHub
  1. Using ASCIIPlots.jl

    No Julia plotting package has been crowned king yet. Winston and Gadfly are the main competitors. PyPlot is a Julia wrapper around Python's matplotlib; it is a stop-gap for use while the native Julia implementations mature. However, all three of these packages have non-Julia dependencies; this can cause installation ...

    read more
  2. Julia Helps

    Programmers are always learning. You learn how to use new APIs, new functions, new types. You learn why your code doesn't work.

    Julia has a lot of built-in tools to help you navigate, learn, and debug. You can use these in the REPL and in normal code.

    In this post, I split these functions and macros read more

  3. Making a Tool Rack

    In the shed where we keep gardening tools, there was a mess.

    before pic

    Dad wanted a thing to get all the long-handled tools up off the floor and out of the way. I started learning to weld a year ago, and have been bugging him for a project. These things combined ...

    read more
  4. Julia introspects

    When people are introspective, they're thinking about how their minds work, about how and why they think what they do. The Julia language has some impressive facilities for letting you see how the compilers' mind works. Using convenient built-in functions that are available both at the REPL1 and ...

    read more
  5. Well, that was embarrassing.

    I have long been confused by the strange behavior of integers as arguments to functions. If I pass a variable into a function, I expect the function to be able to modify it. This expectation applies to variables local to the calling context and to global variables; it also applied ...

    read more
  6. A Simple Monad Tutorial

    There are surely too many monad tutorials on the internet by now. However, I, like many before me, feel the need to try my hand at it.

    In most non-duck-typed programming languages, you can define an interface, which is a set of functions of particular names and types. A type ...

    read more
  7. Falling for Haiku OS

    Last February, I installed Haiku (alpha 3) on my eee pc 901. It worked well, except for not handling password-protected wifi networks. I used it a couple of times for web browsing, and then forgot about it.

    Recently, I decided that installing random operating systems is amusing. This lead to ...

    read more
  8. Notes on Installing and Booting FreeBSD from Grub2

    I have recently spent several days trying to install and boot FreeBSD, Haiku, and OpenIndiana on a single hard drive. I currently have Xubuntu, FreeBSD, and Haiku installed and booting. I am using a FreeBSD 9.0 release live-usb image as my install media.

    This process has involved installing FreeBSD ...

    read more
  9. Assignment Manager: Enroll in Courses

    Today is one month to the day since I last updated this blog. At that point, I had finally added course homepages. Now, users can create and enroll in courses. They are also required to enter a username and email address. That's really sad for a month's time ...

    read more
  10. Assignment Manager: Course Pages

    Today, I have course homepages, generated from the database, working. Additionally, the side menu is populated by courses that the user is enrolled- in/related-to. The links really work, and take you to the course's homepage.

    Course Homepage, Version 0.1

    I moved all the code that does SQL queries into a DatabaseHelpers module ...

    read more
  11. Assignment Manager: Relation of Users to Courses

    Having modified the happstack-authenticate hsp-demo to display my theming (meaning the navbar and menu I took from a Bootstrap demo) -- on all the pages, even the login/logout ones, it is now time to make logged-in page display a bit more dynamic content. Meaning, something besides your user id. Actually ...

    read more
  12. Assignment Manager: Picking Libraries

    In building a web app, there are a lot of libraries to choose. Here's what I'm planning to use in building Assignment Manager:

    • Templating: HSP

      HSP templates are written right in the Haskell files. They use Template Haskell to achieve this. You can insert arbitrary Haskell into the ...

    read more
  13. Assignment Manager: First Post

    Assignment Manager is a web-app written in Haskell on HappStack. The goal is to build a web interface to handle the assignment, submission, and grading interactions for a college course. Professors, TAs, and students will all interact with the application over the course of each assignment's life cycle. You ...

    read more
  14. The Last Question


    Why is it my favorite? For one thing I got the idea all at once and didn’t have to fiddle with it; and I wrote it in white-heat and scarcely had to change a word. This sort of thing endears any story to any writer. Then, too, it ...

    read more
  15. SciFi Short Stories: What is God?

    Some short works of science fiction have some fascinating takes on how reality works, on who or what God is. These three stories are all very short, and each show a different facet of how things could be.

    Warning: the discussion of each of these stories contains spoilers.
        These stories ...
    read more
  16. Across a calm green sky

    This is a rewrite of the essay I submited with my college application in 2007.

    A cloud of small, winged creatures darts across a calm green sky. They flash in a rainbow of gem-tone hues as the sun bounces off thier skin. Deep in the earth below, an ancient behemoth ...

    read more
  17. Against a serene chartreuse sky

    This was written first as a practice college application essay for english class in the Spring of junior year. That Fall, I edited it for use as my actual college application essay. Later the same year, I submited it to our school's writing contest; it won first place in ...

    read more