Daniel's Tumblog

  1. There are lots of ways to ruin any project. I’ve seen most of them over the last few decades, but this year I’ve been called in to salvage a series of Rails projects that were, well, off the rails, in some ways that maybe special to Rails.

    Sage advice.

    Tags: RAILS RUBY WEB PROGRAMMING

  2. Chris Coyne created a small language for design grammars. These grammars are sets of non-deterministic rules to produce images. The images are surprisingly beautiful, often from very simple grammars.

    Pretty!

    Tags: GRAPHICS PROGRAMMING

  3. We applied concepts from modern functional programming languages, such as Scheme and ML, to shells, which typically are more concerned with UNIX features than language design. Our shell is both simple and highly programmable. By exposing many of the internals and adopting constructs from functional programming languages, we have created a shell which supports new paradigms for programmers.

    Looks very sexy.

    Tags: SHELL HIGHER-ORDER FUNCTIONAL-PROGRAMMING PROGRAMMING-LANGUAGES PROGRAMMING

  4. This file is both a HTML file and a literate Haskell program. If you rename it to .lhs you can compile it with GHC 6.6. This is a functional, if limited, JPEG decoder. It only decodes grayscale, 8-bit images and is overly sensitive to the options used.

    I thought that people might like to learn a little about the JPEG standard. Frankly, you can just skip all the code if you don't understand Haskell.

    Very interesting. Hope I have time to digest the whole thing at some point.

    Tags: HASKELL LITERATE-PROGRAMMING GRAPHICS JPEG

  5. Programming is a discipline where the thing you manipulate is completely different from the end result. A painter’s source code editor is his canvas and his executable program is the canvas, albeit in a different state.

    Another insightful difference between programming and everything else from one of my favorite redditors.

    Tags: PROGRAMMING

  6. A collection of diverse numerical functions (basic utility functions, numerical integration, univariate and multivariate optimization, rootfinding, random numbers) for Common Lisp. Work in progress.

    Cool.

    Tags: NUMERIC LISP LIBRARIES BAIRD

  7. The XCDE Library is a native system written in C to compress, index and query XML files.

    Looks interesting. Apparently the hierarchical database of the 60's is back with a vengeance. :)

    Tags: XML COMPRESSION

  8. But just when I append the usual disclaimer that this number should not be relied upon in any kind of financial and time planning, the understanding breaks.

    Actually, what customer desires is just a fixed price bid, so he can get rid of financial risk.

    I hate this part the most, but this guy knows what he's talking about.

    Tags: ESTIMATION PROJECT-MANAGEMENT LIES LYING

  9. Watch this guy hack some electric traffic signs in realtime from his MacBook. From the freeway. Live.

    Tags: HACKING TRAFFIC

  10. In other words, MS-DOS was just an extremely elaborate decoy.

    Apparently they did a pretty good job; I thought DOS was running the show.

    Tags: WINDOWS DOS