<!DOCTYPE html>
<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7 ]> <html class=\'ie6\' lang=\'en\'> <![endif]-->
<!--[if IE 7 ]> <html class=\'ie7\' lang=\'en\'> <![endif]-->
<!--[if IE 8 ]> <html class=\'ie8\' lang=\'en\'> <![endif]-->
<!--[if IE 9 ]> <html class=\'ie9\' lang=\'en\'> <![endif]-->
<!--[if (gt IE 9)|!(IE)]> <!--> <html lang=\'en\'> <![endif]-->
<head>
  <meta charset='utf-8'>
  <meta content='Jiunn Haur "Jim" Lim. Software Engineer' property='og:title'>
  <meta content='profile' property='og:type'>
  <meta content='Jiunn Haur' property='og:profile:first_name'>
  <meta content='Lim' property='og:profile:last_name'>
  <meta content='jimjh' property='og:profile:username'>
  <meta content='http://www.gravatar.com/avatar/1f7f6bd37c819ca2e3482155282661e2' property='og:image'>
  <meta content='http://jimjh.com/' property='og:url'>
  <meta content='width=device-width' name='viewport'>
  <meta content='About Jiunn Haur "Jim" Lim. Software Engineer' name='description'>
  <meta content='Jiunn Haur "Jim" Lim' name='author'>
  <link href='humans.txt' rel='author'>
  <link href='http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz' rel='stylesheet' type='text/css'>
  <link href='http://fonts.googleapis.com/css?family=Droid+Sans' rel='stylesheet' type='text/css'>
  <link href='stylesheets/app.css' rel='stylesheet' type='text/css'>
  <title>Jiunn Haur 'Jim' Lim - Software Engineer</title>
  <script src='javascripts/foundation/modernizr.foundation.js'></script>
</head>
<body>
  <div class='row'>
    <div class='twelve columns'>
      <!-- name -->
      <div class='row'>
        <header class='right'>
          <h1>
            <a href='/'>Jiunn Haur Lim</a>
          </h1>
        </header>
      </div>
      <!-- /name -->
      <!-- navigation -->
      <div class='row'>
        <div class='contain-to-grid'>
          <nav class='top-bar' data-magellan-expedition='fixed' role='navigation'>
            <ul>
              <li class='name'>
                <h1>
                  <a href='/' id='name'>JH</a>
                </h1>
              </li>
            </ul>
            <section>
              <ul class='right'>
                <li class='divider'>&nbsp;</li>
                <li data-magellan-arrival='projects'>
                  <a href='#projects'>Projects</a>
                </li>
                <li class='divider'>&nbsp;</li>
                <li data-magellan-arrival='career'>
                  <a href='#career'>Career</a>
                </li>
                <li class='divider'>&nbsp;</li>
                <li data-magellan-arrival='academics'>
                  <a href='#academics'>Academics</a>
                </li>
              </ul>
              <!-- /.right -->
            </section>
          </nav>
        </div>
      </div>
      <!-- /navigation -->
      <!-- projects -->
      <section role='region'>
        <div class='row'>
          <a data-magellan-destination='projects' name='projects'></a>
          <div class='three columns'>
            <h2>Projects</h2>
            <p>Things I do in my free time.</p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='https://github.com/quixey/dragon-oss'>dragon-oss</a>
            </h3>
            <p>
              HDFS Driver for the Aliyun Open Storage Service. Allows you to run MapReduce over Aliyun OSS.
            </p>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/raft-self-study'>raft</a>
            </h3>
            <p>
              An implementation of the RAFT consensus algorithm in Scala.
            </p>
            <h3 class='subheader'>
              <a href='http://github.com/jimjh/hashset.c'>hashset.c</a>
            </h3>
            <p>
              A hashset implementation that uses contiguous memory space. This
              allows applications to dump and load hashsets using mmap at
              run-time, or using objc and ld at compile-time.
            </p>
            <h3 class='subheader'>
              <a href='http://github.com/jimjh/box-lid'>Box Lid</a>
            </h3>
            <p>
              A jQuery plugin inspired by Toybox's navigation menu. See it in
              action
              <a href='http://jimjh.com/box-lid/'>here</a>
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/genie-game'>Genie</a>
            </h3>
            <p>
              An experimental platform for educators to publish and maintain
              lessons using Git hooks. It allows authors to describe problems
              using YAML and Markdown, and tracks each student's performance.
              <a href='http://beta.geniehub.org'>Preview.</a>
            </p>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/reaction'>Reaction</a>
            </h3>
            <p>
              A framework for building reactive Rails apps using Backbone and
              Faye. Inspired by Meteor.
            </p>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/beam'>Beam</a>
            </h3>
            <p>
              A buggy websockets-based drag-and-drop file sharing tool that I
              wrote for fun using Amazon's S3.
            </p>
            <h3 class='subheader'>
              <a href='http://wordpress.org/extend/plugins/inline-google-docs/'>
                Inline Google Docs
              </a>
            </h3>
            <p>
              A Wordpress plugin that embeds documents, spreadsheets, and cells
              in posts. Had around 10K downloads when I last checked.
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='https://microcorruption.com/'>
                Micro-Corruption
              </a>
            </h3>
            <p>
              A CTF organized by Matasano and Square. Completed 15 out of 19 levels.
            </p>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/ruhoh-manager'>Ruhoh Manager</a>
            </h3>
            <p>
              A REST api for Jade's static blog generator. Stopped when I
              realized I was just reinventing the wheel.
            </p>
            <h3 class='subheader'>
              <a href='http://www.youtube.com/watch?v=udNi8U9-4MQ'>MOBOT</a>
            </h3>
            <p>
              An autonomous robot constructed using a Tamiya car and a Nexus One.
              Used OpenCV for path finding and stereo signals for control.
            </p>
            <h3 class='subheader'>BuckIt</h3>
            <p>
              An Android app that allows users to make payments over Venmo by
              bumping devices. Written at a hackathon using Bump's API.
            </p>
          </div>
        </div>
        <hr>
      </section>
      <!-- career -->
      <section role='region'>
        <div class='row'>
          <a data-magellan-destination='career' name='career'></a>
          <div class='three columns'>
            <h2>Career</h2>
            <p>Some real-life coding and build-breaking.</p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='https://www.quixey.com/'>Quixey</a>
            </h3>
            <p>
              Built distributed logging and analytics infrastructure using
              Kafka, Zookeeper, and Hadoop.
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>Datamark</h3>
            <p>
              Ported and optimized digital watermarking library to Mac OS X,
              Android, and iOS.
            </p>
          </div>
          <div class='three columns end'>
            <h3 class='subheader'>
              <a href='http://graphlab.org/'>GraphLab</a>
            </h3>
            <p>
              Created a Java API over JNI, a Streaming API over pipes, and a
              Javascript API over V8 for the GraphLab framework.
            </p>
          </div>
        </div>
        <hr>
      </section>
      <!-- academics -->
      <section role='region'>
        <div class='row'>
          <a data-magellan-destination='academics' name='academics'></a>
          <div class='three columns'>
            <h2>Academics</h2>
            <p>A subset of the fun things I did at Carnegie Mellon.</p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>Chess</h3>
            <p>
              Wrote a chess bot based on alpha-beta pruning and other bells
              and whistles such as parallel lookahead and quiescence search. Came
              in 3
              <sup>rd</sup>
              in the class competitions.  The first bot was the
              Prof's.
            </p>
            <h3 class='subheader'>
              <a href='http://bkase.github.io/git-stuco'>Git StuCo</a>
            </h3>
            <p>
              Proposed and prepared a student-taught class on Git, a modern
              version control system. To be taught by
              <a href='http://www.brandonkase.com/'>Brandon Kase.</a>
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='http://blog.jimjh.com/downloads/2013/05/12/netflix.pdf'>Netflix</a>
            </h3>
            <p>
              Built a ratings predictor using
              <abbr title='Alternating Least Squares'>ALS</abbr>
              on the Java API that I wrote for GraphLab.
            </p>
            <h3 class='subheader'>
              <a href='http://vote.enteract.in/'>Enteract</a>
            </h3>
            <p>
              Created a polling application that was fielded during the annual
              <a href='http://www.contrib.andrew.cmu.edu/~sc0v/'>
                Spring
                Carnival
              </a>
              for visitors to vote for their favorite booths. More
              than 800 votes were received.
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='http://www.cmumobileapps.com/'>Mobile Apps Club</a>
            </h3>
            <p>
              Founded a small club at
              <abbr title='Carnegie Mellon&#x000A;              University'>CMU</abbr>
              for mobile devs.
            </p>
          </div>
          <div class='three columns'>
            <h3 class='subheader'>
              <a href='https://github.com/jimjh/octopi'>Octopi</a>
            </h3>
            <p>
              Wrote a distributed, websockets-based messaging service in Go.
              It handles replication and recovery and was originally
              <a href='/octopi_proposal.pdf'>proposed</a>
              as a 15-440 project.
            </p>
          </div>
        </div>
        <hr>
      </section>
    </div>
  </div>
  <div class='row'>
    <div class='panel'>
      <dl class='sub-nav'>
        <dd>&copy; Jim Lim 2012</dd>
        <dd class='divider'></dd>
        <dd>
          <a href='http://www.google.com/recaptcha/mailhide/d?k=01cHWuuI6Qh9UaG7lmnEGXBQ==&amp;amp;c=J9vyrbD8iACet0-K4-8oOxELVQT6gu4K2BNh4sabJ-w=' onclick="window.open('http://www.google.com/recaptcha/mailhide/d?k\07501cHWuuI6Qh9UaG7lmnEGXBQ\75\75\46c\75J9vyrbD8iACet0-K4-8oOxELVQT6gu4K2BNh4sabJ-w\075', '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300'); return false;" title='Reveal this e-mail address'>email</a>
        </dd>
        <dd class='divider'></dd>
        <dd>
          <a href='http://blog.jimjh.com'>blog</a>
        </dd>
        <dd class='divider'></dd>
        <dd>
          <a href='http://github.com/jimjh/'>github</a>
        </dd>
        <dd class='divider'></dd>
        <dd>
          <a href='http://stackoverflow.com/users/473709/jim-lim'>stackoverflow</a>
        </dd>
        <dd class='divider'></dd>
        <dd>
          <a href='http://www.linkedin.com/in/jimjh'>linkedin</a>
        </dd>
        <dd class='divider'></dd>
        <dd>
          <a href='https://plus.google.com/111805949132881507016?rel=author'>g+</a>
        </dd>
      </dl>
    </div>
    <div class='right'>
      <p>
        Built with
        <a href='http://foundation.zurb.com/'>Foundation</a>.
      </p>
    </div>
  </div>
  <script src='http://code.jquery.com/jquery-1.10.2.min.js'></script>
  <script src='javascripts/foundation/foundation.min.js'></script>
  <script async='' src='javascripts/foundation/app.js'></script>
  <!-- Google Analytics -->
  <script>
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-5604647-7']);
    _gaq.push(['_trackPageview']);
    
    (function() {
      var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();
  </script>
</body>
