|
- ---
- layout: base
- title: Home
- ---
-
- <p id="bio">I'm a software developer and <a href="//en.wikipedia.org/">Wikipedian</a> currently studying computer science at the <a href="//illinois.edu/">University of Illinois at Urbana–Champaign</a>. My work mostly focuses on text parsing and analysis, but I'm also interested in programming language theory and algorithm design. Want to chat? Contact me at <a href="mailto:ben.kurtovic@gmail.com">ben.kurtovic@gmail.com</a>.</p>
- <table id="links">
- <tr>
- <td>GitHub</td>
- <td>Freenode IRC</td>
- <td>Wikipedia</td>
- <td>Twitter</td>
- <td>LinkedIn</td>
- <td>PGP Key</td>
- </tr>
- <tr>
- <td><a href="//github.com/earwig">earwig</a></td>
- <td><a href="http://webchat.freenode.net/?channels=%23%23earwig">Earwig</a></td>
- <td><a href="//en.wikipedia.org/wiki/User:The_Earwig">The Earwig</a></td>
- <td><a href="//twitter.com/the_earwig">@the_earwig</a></td>
- <td><a href="//linkedin.com/in/benkurtovic">benkurtovic</a></td>
- <td><a href="http://pgp.mit.edu:11371/pks/lookup?search=0x8A19649AE8DBB515&fingerprint=on&op=index">E8DBB515</a></td>
- </tr>
- </table>
- <table id="work">
- <tr>
- <td>
- <h2>Projects</h2>
- <p>A look at what I've been up to for the past few years:</p>
- <h3>Highlights</h3>
- <ul class="work-list">
- <li>
- <a class="underlined" href="//github.com/earwig/mwparserfromhell">mwparserfromhell</a> <span class="subtitle"><i>(Python + C // started May 2012)</i></span><br />
- <span class="subtitle">An easy-to-use and outrageously powerful Python parser for <a href="//mediawiki.org/">MediaWiki</a> wikicode</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/earwigbot">earwigbot</a> <span class="subtitle"><i>(Python // started April 2009)</i></span><br />
- <span class="subtitle">A modular robot that edits <a href="//en.wikipedia.org/">Wikipedia</a> and interacts with people over <a href="//en.wikipedia.org/wiki/Internet_Relay_Chat">IRC</a>, with <a href="//github.com/earwig/earwigbot-plugins">a separate repository for plugins</a></span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/bitshift">bitshift</a> <span class="subtitle"><i>(Python + SQL + Web // started March 2014)</i></span><br />
- <span class="subtitle"><a href="http://bitshift.it/">A semantic search engine</a> for source code</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/copyvios">copyvios</a> <span class="subtitle"><i>(Python + Web // started July 2009)</i></span><br />
- <span class="subtitle"><a href="//tools.wmflabs.org/copyvios">A copyright violation detector</a> for Wikipedia articles running on <a href="//tools.wmflabs.org/">Wikimedia Labs</a></span>
- </li>
- </ul>
- <h3>Other work</h3>
- <ul class="work-list">
- <li>
- <a class="underlined" href="//github.com/VjiaoBlack/Oriadnos">oriadnos</a> <span class="subtitle"><i>(C // started May 2014)</i></span><br />
- <span class="subtitle">A 3D maze exploration game written from scratch using matrix manipulation code, <a href="//en.wikipedia.org/wiki/UV_mapping">UV texture mapping</a>, <a href="//en.wikipedia.org/wiki/Z-buffering">z-buffering</a>, and simple lighting</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/stuycs-softdev-fall-2013/proj3-6-BAJA">BAJA</a> <span class="subtitle"><i>(Python + Web // started Jan 2014)</i></span><br />
- <span class="subtitle"><a href="http://softdev-server.stuycs.org:6680/">A hacking game</a> featuring multiple simulated websites, tied together by messages sent to the player from a mysterious individual using a fake email client</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/stuycs-softdev-fall-2013/proj2-pd6-04-omnithinker">omnithinker</a> <span class="subtitle"><i>(Python + Web // started Nov 2013)</i></span><br />
- <span class="subtitle"><a href="http://softdev-server.stuycs.org:6004/">An online brainstorming tool</a> that displays relevant information from the web in a sidebar</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/VjiaoBlack/databanks">databanks</a> <span class="subtitle"><i>(C // started Nov 2013)</i></span><br />
- <span class="subtitle">A simple database with a terminal-based interface for notekeeping</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/VjiaoBlack/terminvaders">terminvaders</a> <span class="subtitle"><i>(C // started Oct 2013)</i></span><br />
- <span class="subtitle">A terminal-based multiplayer arcade game with a client–server model inspired by <a href="//en.wikipedia.org/wiki/Space_Invaders">Space Invaders</a></span>
- </li>
- <li>
- <a class="underlined" href="//github.com/Hypersonic/Starlorn">starlorn</a> <span class="subtitle"><i>(Java // started May 2013)</i></span><br />
- <span class="subtitle">A <a href="//en.wikipedia.org/wiki/Shoot_'em_up">shoot 'em up</a> game with a sweet upgrade system and randomized levels</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/goldfish">goldfish</a> <span class="subtitle"><i>(Java // started Jan 2013)</i></span><br />
- <span class="subtitle">A simple <a href="//en.wikipedia.org/wiki/Conway's_Game_of_Life">Game of Life</a> implementation in Java</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/Hypersonic/Cellar-Strider">cellar-strider</a> <span class="subtitle"><i>(Python // started June 2012)</i></span><br />
- <span class="subtitle">A pseudo-<a href="//en.wikipedia.org/wiki/Roguelike">roguelike</a> game with a YAML-based level system</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/func-smash">func-smash</a> <span class="subtitle"><i>(Python // started April 2012)</i></span><br />
- <span class="subtitle">A library that tries to generate random Python functions using Markov chains</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/lobo">lobo</a> <span class="subtitle"><i>(NetLogo // started Dec 2011)</i></span><br />
- <span class="subtitle">Logo Bolo: a re-envisioning of <a href="//en.wikipedia.org/wiki/Bolo_(video_game)">the classic tank game</a> by Stuart Cheshire in NetLogo</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/git-repo-updater">git-repo-updater</a> <span class="subtitle"><i>(Python // started June 2011)</i></span><br />
- <span class="subtitle">A console script that allows you to easily pull to multiple git repositories at once</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/earwig.github.io">earwig.github.io</a> <span class="subtitle"><i>(Web // started June 2011)</i></span><br />
- <span class="subtitle">The site you're viewing right now in source code form</span>
- </li>
- <li>
- <a class="underlined" href="//github.com/earwig/music-quizzer">music-quizzer</a> <span class="subtitle"><i>(Python // started May 2011)</i></span><br />
- <span class="subtitle">A <a href="//en.wikipedia.org/wiki/Tk_(framework)">Tk</a>-based program that can help you prepare for your music final with randomly-generated listening quizzes</span>
- </li>
- </ul>
- </td>
- <td>
- <h2>Posts</h2>
- <div id="tags">
- Tags:
- {% comment %} Based on code from Christian Specht at http://stackoverflow.com/a/24744306/2712951 {% endcomment %}
- {% capture tags %}{% for tag in site.tags %}{{ tag[1].size | plus: 1000 }}#{{ tag[0] }}#{{ tag[1].size }}{% unless forloop.last %}|{% endunless %}{% endfor %}{% endcapture %}
- {% assign sorted = tags | split: "|" | sort | reverse %}
- {% for tag in sorted %}
- {% assign items = tag | split: "#" %}
- <span data-tag="{{ items[1] }}" class="tag">{{ items[1] | replace: " ", " " }} <span class="subtitle">({{ items[2] }})</span></span>
- {% endfor %}
- </div>
- <ul id="post-list" class="work-list">
- {% for post in site.posts %}
- <li data-tags="{{ post.tags | join: "|" }}">{{ post.date | date: "%b %-d, %Y" }}: <a class="underlined" href="{{ post.url }}">{{ post.title }}</a><br /><span class="subtitle">{{ post.description }}<br />{{ post.tags | join: ", " }} · <a href="{{ post.url }}#disqus_thread" data-disqus-identifier="{{ post.id }}"></a></span></li>
- {% endfor %}
- <li id="null-post" data-tags="" style="display: none;"><i>No posts with these tags</i></li>
- </ul>
- </td>
- </tr>
- </table>
- <script>
- var disqus_shortname = 'earwig';
- var disqus_title = '{{ page.title }}';
- var disqus_url = '{{ site.url }}{{ page.url }}';
- var disqus_developer = 1;
- (function () {
- var s = document.createElement('script'); s.async = true;
- s.type = 'text/javascript';
- s.src = '//' + disqus_shortname + '.disqus.com/count.js';
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(s);
- }());
- </script>
|