One App’s Poison

It seems simple in retrospect. Surf’s Up went to heroics to swallow signals: its background threads continually set signal handlers that cause only the signalling thread to exit, but leave the remaining threads unharmed. And the app didn’t really need its main thread after all.

Modern GPU

Modern GPU is a set of GPU computing programs and companion articles. The articles form a tutorial and cover the programs as case studies. GPGPU literature has avoided coverage of functions requiring complex inter-thread communication, favoring algorithms that have obvious parallelizations. But these are not the most interesting problems in this emerging field.

Dlib C++ Library

  • Numerical Algorithms
  • Machine Learning Algorithms one-class classification
  • A kernelized k-means clustering algorithm
  • Radial Basis Function Networks
  • Multi layer perceptrons
  • Bayesian Network Inference Algorithms
  • That’s a lot of stuff packed in there ;-)

    Debellor - Large Scale Data Mining and Machine Learning

    Debellor simplifies implementation of complex yet efficient algorithms.

    • 120+ algorithms are already available and can be used as building blocks. These include all classifiers from Weka and Rseslib libraries, all filters from Weka and a reader of arff files.
    • Simplicity. All algorithms are accessible through the same simple interface of a Cell.
    • Scalability. Thanks to stream architecture algorithms may process data on the fly instead of keeping all of them in memory. This enables efficient handling of large volumes of data and gives you freedom of designing arbitrarily complex processing networks.
    • Extendibility. You may define new data types, specific to your application domain. See DataObject and DataType.
    • Multithreading. Take full advantage of a multi-core CPU with parallel execution of experiment. Debellor takes care of thread management and synchronization, you only decides where to make a splitting point between threads.

    Debellor provides:

    • Extensibility of algorithm pool through well-defined API (see Cell class).
    • Extensibility of types of data that algorithms operate on (see Data class).
    • Stream-based data processing, for efficient handling of large volumes of data and for freedom of designing complex experiments, which may generate large volumes of data at intermediate stages.
    –>

    Debellor is written in Java and distributed under GNU General Public Licence. Hosted by SourceForge.net.

    Think Stats – Probability and Statistics for Programmers

    This HTML version of is provided for convenience, but it is not the best format for the book. In particular, some of the symbols are not rendered correctly.

    You might prefer to read the PDF version, or you can buy a hardcopy here.

    Awesome free online resource for learning prob and stat.

    The "overlearning the Game" Problem

    Subverting the original intent of the law to the exclusive benefit of their clients, while staying within the letter of the law, is a highly-prized and highly-paid skill that the top attorneys in the country have, and which of course does nothing for society at large or for the overall ‘make sure justice is served’ goal. And the fact that people are more and more aware of this is damaging to the foundations of a well-functioning society.

    I have this feeling there’s a name for this phenomenon. I can’t seem to put my finger on it, though… anyone know what this is called?

    Mari0

    About Mari0 Two genre defining games from completely different eras: Nintendo’s Super Mario Bros. and Valve’s Portal. These two games managed to give Platformers and First-Person Puzzle Games a solid place in the video game world. But what if Nintendo teamed up with Valve and recreated the famous Mario game with Portal gun mechanics?

    A complete from scratch recreation of Super Mario Bros. with a focus on perfectly imitating the feel the 1985 classic gave us. Then give Mario a portal gun, add puzzle game mechanics from Portal and there you go. And if that wasn’t crazy enough, play simultaneously with as many friends as you can connect joypads to your PC, with everyone having their own Portal gun!

    Coming Soon!

    1920x1080 version for whatever use you might have for it!

    Observing Demos Hurts Learning, and Confusion Is a Sign of Understanding

    Yeah, you read that right — observing a demo is worse than having no demo at all!  The problem is that you see a demo, and remember it in terms of your misconceptions.  A week later, you think the demo showed you what you already believed.  On some of the wrong answers that students gave in Mazur’s study, they actually said “as shown in the demo.”  The demo showed the opposite!  The students literally remember it wrongPeople remember models, not facts, said Mazur.  By recording a prediction, you force yourself to remember when you guessed wrong.

    Dependency Injection

    This guy’s blog and his series on the Google Testing blog is worth its weight in gold. Excellent advice.

    Install Riak on Mac OS X Lion

    The instructions to install Riak from Basho’s wiki are a bit off for OS X Lion as you have to build it 32-bit for it to work. I’ve found the following to be effective at installing Riak 0.14.2 on OS X Lion:

    $ curl -O http://downloads.basho.com/riak/riak-0.14/riak-0.14.2.tar.gz
    $ tar xzvf riak-0.14.2.tar.gz
    $ cd riak-0.14.2
    $ CC=gcc-4.2 CFLAGS="-m32" LDFLAGS="-m32" make all rel
    $ cd rel/riak
    $ ulimit -n 1024
    $ bin/riak start

    At this point, you should have a running Riak installation. Have fun!