ME73 init.
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/backup.script.js Thu May 27 13:10:09 2010 +0200
1.3 @@ -0,0 +1,139 @@
1.4 +var QUOTES_NUMBER = 25;
1.5 +
1.6 +function load_page(html, params)
1.7 +{
1.8 + if (params != "")
1.9 + html += "?";
1.10 + window.location = html + params;
1.11 + //window.location.reload();
1.12 +}
1.13 +
1.14 +function google_an1()
1.15 +{
1.16 + var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
1.17 + document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
1.18 +}
1.19 +
1.20 +function google_an2()
1.21 +{
1.22 + var pageTracker = _gat._getTracker("UA-2137333-1");
1.23 + pageTracker._initData();
1.24 + pageTracker._trackPageview();
1.25 +}
1.26 +
1.27 +function google_an()
1.28 +{
1.29 + google_an1();
1.30 + if (typeof(_gat) == "object")
1.31 + google_an2();
1.32 +}
1.33 +
1.34 +function http_request_object()
1.35 +{
1.36 + var xmlHttpObject = null;
1.37 +
1.38 + if (typeof(XMLHttpRequest) != "undefined")
1.39 + {
1.40 + xmlHttpObject = new XMLHttpRequest();
1.41 + }
1.42 +
1.43 + //For IE6 and IE5
1.44 + if (xmlHttpObject == null)
1.45 + {
1.46 + try
1.47 + {
1.48 + xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
1.49 + }
1.50 + catch(e)
1.51 + {
1.52 + try
1.53 + {
1.54 + xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
1.55 + }
1.56 + catch(e)
1.57 + {
1.58 + xmlHttpObject = null;
1.59 + }
1.60 + }
1.61 + }
1.62 + return xmlHttpObject;
1.63 +}
1.64 +
1.65 +function load_header(current)
1.66 +{
1.67 + var file;
1.68 + if (current == "home")
1.69 + file = "/homenav.html";
1.70 + else if (current == "resume")
1.71 + file = "/resumenav.html";
1.72 + else if (current == "howiwork")
1.73 + file = "/howiworknav.html";
1.74 + else if (current == "personalwork")
1.75 + file = "/personalworknav.html";
1.76 + else if (current == "tutorials")
1.77 + file = "/tutorialsnav.html";
1.78 + else if (current == "contact")
1.79 + file = "/contactnav.html";
1.80 +
1.81 + var currentFile = self.location.hostname + self.location.pathname;
1.82 + var request = http_request_object();
1.83 + var url = "http://" + self.location.hostname + file;
1.84 + request.open("GET", url, false);
1.85 + request.setRequestHeader("User-Agent", navigator.userAgent);
1.86 + request.send(null)
1.87 + // if (oRequest.status == 200) alert(oRequest.responseText);
1.88 + // else alert("Error executing XMLHttpRequest call!");
1.89 + //document.write(url);
1.90 + document.getElementById('header').innerHTML = request.responseText;
1.91 + //document.write(request.responseText);
1.92 +
1.93 + //alert(request.responseText);
1.94 +}
1.95 +
1.96 +function load_sidebar()
1.97 +{
1.98 + var file = "/sidebar.html";
1.99 + var currentFile = self.location.hostname + self.location.pathname;
1.100 + var request = http_request_object();
1.101 + var url = "http://" + self.location.hostname + file;
1.102 + request.open("GET", url, false);
1.103 + request.setRequestHeader("User-Agent", navigator.userAgent);
1.104 + request.send(null)
1.105 + // if (oRequest.status == 200) alert(oRequest.responseText);
1.106 + // else alert("Error executing XMLHttpRequest call!");
1.107 + //document.write(url);
1.108 + //document.write(request.responseText);
1.109 + document.getElementById('sidebar').innerHTML = request.responseText;
1.110 +}
1.111 +
1.112 +function load_random_quote()
1.113 +{
1.114 + var file = "/quotes/quote" + Math.floor(Math.random() * QUOTES_NUMBER + 1) + ".html";
1.115 + var currentFile = self.location.hostname + self.location.pathname;
1.116 + var request = http_request_object();
1.117 + var url = "http://" + self.location.hostname + file;
1.118 + request.open("GET", url, false);
1.119 + request.setRequestHeader("User-Agent", navigator.userAgent);
1.120 + request.send(null)
1.121 + // if (oRequest.status == 200) alert(oRequest.responseText);
1.122 + // else alert("Error executing XMLHttpRequest call!");
1.123 + //document.write(url);
1.124 + //document.write(request.responseText);
1.125 + document.getElementById('random_quote').innerHTML = request.responseText;
1.126 +}
1.127 +
1.128 +function load_footer()
1.129 +{
1.130 + var file = "/footer.html";
1.131 + var currentFile = self.location.hostname + self.location.pathname;
1.132 + var request = http_request_object();
1.133 + var url = "http://" + self.location.hostname + file;
1.134 + request.open("GET", url, false);
1.135 + request.setRequestHeader("User-Agent", navigator.userAgent);
1.136 + request.send(null)
1.137 + // if (oRequest.status == 200) alert(oRequest.responseText);
1.138 + // else alert("Error executing XMLHttpRequest call!");
1.139 + //document.write(url);
1.140 + //document.write(request.responseText);
1.141 + document.getElementById('footer').innerHTML = request.responseText;
1.142 +}
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/books.html Thu May 27 13:10:09 2010 +0200
2.3 @@ -0,0 +1,112 @@
2.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
2.6 +
2.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
2.8 +<meta name="author" content="Eugen Sawin - me73.com" />
2.9 +<meta name="description" content="A Digital Playground" />
2.10 +<meta name="robots" content="index, follow, noarchive" />
2.11 +<meta name="googlebot" content="noarchive" />
2.12 +<script src="script.js" type="text/javascript"></script>
2.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
2.14 +
2.15 +<body>
2.16 +<div id="wrap">
2.17 + <div id="header">
2.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
2.19 + <p id="intro">A Programmer's Digital Playground.</p>
2.20 + <div id="nav">
2.21 + <ul>
2.22 + <li><a href="index.html">Home</a></li>
2.23 + <li><a href="resume.html">Resume</a></li>
2.24 + <li><a href="howiwork.html">How I Work</a></li>
2.25 + <li><a href="personalwork.html">Personal Work</a></li>
2.26 + <li><a href="books.html">Books</a></li>
2.27 + <li><a href="links.html">Links</a></li>
2.28 + <li><a href="contact.html">Contact</a></li>
2.29 + </ul>
2.30 + </div>
2.31 + </div>
2.32 + <div id="content-wrap">
2.33 + <div id="main">
2.34 +<p>Here is a list of books I find useful or simply enjoyed reading them.</p>
2.35 +<h2>Technical & Science</h2>
2.36 +<ul>
2.37 +<li><h4>Effective C++ / More Effective C++</h4><h5>Scott Meyers</h5>
2.38 +Effective and safe C++ programming advises for practical use.
2.39 +</li>
2.40 +<li><h4>Thinking in C++</h4><h5>Bruce Eckel</h5>
2.41 +A freely available introduction to C++ and its Standard Library.
2.42 +</li>
2.43 +<li><h4>Artificial Intelligence: A Modern Approach</h4><h5>Stuart J. Russel and Peter Norvig</h5>
2.44 +A comprehensive compendium of most techniques for the development of artificial intelligence.
2.45 +</li>
2.46 +<li><h4>The Algorithmic Beauty of Plants</h4><h5>Przemyslwa Prusinkieicz and Aristid Lindenmayer</h5>
2.47 +A wonderful introduction to L-systems and a motivational read.
2.48 +</li>
2.49 +<li><h4>Compilers: Principles, Techniques & Tools</h4><h5>Alfred V. Aho, Monica S. Lam and Ravi Sethi</h5>
2.50 +The standard introduction to compiler development. Also known as the Dragon Book.
2.51 +</li>
2.52 +<li><h4>Computer Networks</h4><h5>Andrew S. Tanenbaum</h5>
2.53 +A good and in-depth textbook for network technology.
2.54 +</li>
2.55 +<li><h4>A Brief History of Time</h4><h5>Stephen W. Hawking</h5>
2.56 +Popular science. Follow Stephen on his quest for the Theory of Everything.
2.57 +</li>
2.58 +</ul>
2.59 +<h2>Fiction</h2>
2.60 +<ul>
2.61 +<li><h4>Alice in Wonderland</h4><h5>Lewis Carroll</h5>
2.62 +Follow the rabbit.
2.63 +</li>
2.64 +<li><h4>Through the Looking-Glass</h4><h5>Lewis Carroll</h5>
2.65 +Sequel to Alice in Wonderland.
2.66 +</li>
2.67 +<li><h4>1984</h4><h5>George Orwell</h5>
2.68 +Classic novel about a totalitarian regime and its influence on the society.
2.69 +</li>
2.70 +</ul>
2.71 +
2.72 +
2.73 + </div>
2.74 + <div id="sidebar">
2.75 + <!--<h3>About</h3> -->
2.76 + <p>
2.77 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
2.78 + ME73 is my digital playground.
2.79 + I'm a programmer, a student of computer science, a music enthusiast.
2.80 + This site serves as a portfolio for my work, private and professional.
2.81 + </p>
2.82 + <h3></h3>
2.83 + <div id="random_quote"></div>
2.84 + </div>
2.85 + </div>
2.86 + <!--<div id="footer"></div>-->
2.87 + <div id="footer">
2.88 + <div id="footer-left">
2.89 + <p>
2.90 + <!--© ME73.COM -->
2.91 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
2.92 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
2.93 + </p>
2.94 + </div>
2.95 +
2.96 + <div id="footer-right">
2.97 + <p class="align-right">
2.98 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
2.99 + </p>
2.100 + </div>
2.101 +</div>
2.102 +</div>
2.103 +<script type="text/javascript">
2.104 + javascript:load_random_quote();
2.105 + //javascript:load_footer();
2.106 +</script>
2.107 +<script type="text/javascript">
2.108 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
2.109 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
2.110 +</script>
2.111 +<script type="text/javascript">
2.112 +var pageTracker = _gat._getTracker("UA-2137333-1");
2.113 +pageTracker._trackPageview();
2.114 +</script>
2.115 +</body></html>
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/contact.html Thu May 27 13:10:09 2010 +0200
3.3 @@ -0,0 +1,80 @@
3.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
3.6 +
3.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
3.8 +<meta name="author" content="Eugen Sawin - me73.com" />
3.9 +<meta name="description" content="A Digital Playground" />
3.10 +<meta name="robots" content="index, follow, noarchive" />
3.11 +<meta name="googlebot" content="noarchive" />
3.12 +<script src="script.js" type="text/javascript"></script>
3.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
3.14 +
3.15 +<body>
3.16 +<div id="wrap">
3.17 + <div id="header">
3.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
3.19 + <p id="intro">A Programmer's Digital Playground.</p>
3.20 + <div id="nav">
3.21 + <ul>
3.22 + <li><a href="index.html">Home</a></li>
3.23 + <li><a href="resume.html">Resume</a></li>
3.24 + <li><a href="howiwork.html">How I Work</a></li>
3.25 + <li><a href="personalwork.html">Personal Work</a></li>
3.26 + <li><a href="books.html">Books</a></li>
3.27 + <li><a href="links.html">Links</a></li>
3.28 + <li><a href="contact.html">Contact</a></li>
3.29 + </ul>
3.30 + </div>
3.31 + </div>
3.32 + <div id="content-wrap">
3.33 + <div id="main">
3.34 +
3.35 + <h2>Contact</h2>
3.36 + <p><img src="images/contact.png" alt="water" class="float-left" height="100" width="100" />
3.37 + <br />Eugen Sawin<br />
3.38 + <a href="mailto:sawine@me73.com">sawine@me73.com</a>.</p>
3.39 +
3.40 +
3.41 + </div>
3.42 + <div id="sidebar">
3.43 + <!--<h3>About</h3> -->
3.44 + <p>
3.45 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
3.46 + ME73 is my digital playground.
3.47 + I'm a programmer, a student of computer science, a music enthusiast.
3.48 + This site serves as a portfolio for my work, private and professional.
3.49 + </p>
3.50 + <h3></h3>
3.51 + <div id="random_quote"></div>
3.52 + </div>
3.53 + </div>
3.54 + <!--<div id="footer"></div>-->
3.55 + <div id="footer">
3.56 + <div id="footer-left">
3.57 + <p>
3.58 + <!--© ME73.COM -->
3.59 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
3.60 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
3.61 + </p>
3.62 + </div>
3.63 +
3.64 + <div id="footer-right">
3.65 + <p class="align-right">
3.66 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
3.67 + </p>
3.68 + </div>
3.69 +</div>
3.70 +</div>
3.71 +<script type="text/javascript">
3.72 + javascript:load_random_quote();
3.73 + //javascript:load_footer();
3.74 +</script>
3.75 +<script type="text/javascript">
3.76 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
3.77 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
3.78 +</script>
3.79 +<script type="text/javascript">
3.80 +var pageTracker = _gat._getTracker("UA-2137333-1");
3.81 +pageTracker._trackPageview();
3.82 +</script>
3.83 +</body></html>
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/create_quote.py Thu May 27 13:10:09 2010 +0200
4.3 @@ -0,0 +1,22 @@
4.4 +#!/usr/bin/python
4.5 +
4.6 +import sys
4.7 +import subprocess
4.8 +from subprocess import PIPE
4.9 +
4.10 +SCRIPT_FILE = "../script.js"
4.11 +
4.12 +if __name__ == "__main__":
4.13 + if len(sys.argv) < 3:
4.14 + print "not enough arguments provided"
4.15 + print "usage: %s \"quote text\" author" % sys.argv[0]
4.16 + quote = sys.argv[1]
4.17 + author = sys.argv[2]
4.18 + quote_num = int(subprocess.Popen("ls quote*.html | wc -l", shell=True, stdout=PIPE).communicate()[0]) + 1
4.19 + file = open("quote%s.html" % str(quote_num), "w")
4.20 + try:
4.21 + file.write("<p>"%s" </p><p class=\"align-right\">- %s</p>" % (quote, author))
4.22 + finally:
4.23 + file.close()
4.24 +
4.25 +
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/dark.css Thu May 27 13:10:09 2010 +0200
5.3 @@ -0,0 +1,528 @@
5.4 +/* ----------------------------------------------
5.5 + Template Name : UrbanArtist / ME73
5.6 + Template Code : S-0025
5.7 + Version : 1.0
5.8 + Author : Erwin Aligam / Eugen Sawin
5.9 + Author URI : http://www.styleshout.com/ / http://www.me73.com
5.10 + Last Date Modified : July 25, 2008
5.11 + ------------------------------------------------ */
5.12 +
5.13 +/* ----------------------------------------------
5.14 + HTML ELEMENTS
5.15 +------------------------------------------------- */
5.16 +
5.17 +/* Top Elements */
5.18 +* { margin: 0; padding: 0; outline: 0 }
5.19 +
5.20 +html { background: #222222; }
5.21 +
5.22 +body {
5.23 + /*font: 11px/165% 'Lucida Grande', Geneva, Verdana, Arial, Helvetica, sans-serif;*/
5.24 + font: 8pt 'Lucida Grande', Geneva, Verdana, Arial, Halvetica, sans-serif;
5.25 + color: #7D7D7D;
5.26 + margin: 0;
5.27 + padding: 0;
5.28 + background: #222222;
5.29 + text-align: center;
5.30 +}
5.31 +
5.32 +/* Links */
5.33 +a, a:visited {
5.34 + text-decoration: none;
5.35 + color: #DEDEDE;
5.36 +}
5.37 +a:hover {
5.38 + color: #fff;
5.39 + border-bottom: 1px dotted #438800;
5.40 +}
5.41 +
5.42 +/* headers */
5.43 +h1, h2, h3, h4 {
5.44 + /*font-family: 'Trebuchet MS', Helvetica, Tahoma, Arial, Sans-serif;*/
5.45 + /*color: #0AEAEA;*/
5.46 + color: #FFF;
5.47 +}
5.48 +h1 {
5.49 +
5.50 + font-size: 3.1em;
5.51 + letter-spacing: -2px;
5.52 + padding: 15px 10px 5px 10px;
5.53 +}
5.54 +h2 {
5.55 + font-size: 1.8em;
5.56 + /*color: #895F30;*/
5.57 + color: #FFF;
5.58 + padding: 20px 10px 5px 10px;
5.59 +}
5.60 +h3 {
5.61 +
5.62 + font-size: 1.7em;
5.63 + font-weight: normal;
5.64 + padding: 10px 10px 10px 5px;
5.65 +}
5.66 +
5.67 +h4
5.68 +{
5.69 + color: #AbAbAb;
5.70 + font-size: 1.1em;
5.71 + /*font-weight: bold;*/
5.72 + padding: 10px 5px 0px 0px;
5.73 +}
5.74 +
5.75 +h5
5.76 +{
5.77 + font-size: 1.0em;
5.78 + padding: 0px 0px 0px 0px;
5.79 +}
5.80 +
5.81 +p, dl
5.82 +{
5.83 + padding: 5px 20px;
5.84 + margin: 0;
5.85 +}
5.86 +
5.87 +ul, ol {
5.88 + margin: 5px 20px;
5.89 + padding: 0px 20px;
5.90 +}
5.91 +ul { list-style: none; }
5.92 +
5.93 +dt {
5.94 + /*font-weight: bold;*/
5.95 + color: #FAFAFA;
5.96 +}
5.97 +dd {
5.98 + padding-left: 25px;
5.99 +}
5.100 +
5.101 +/* images */
5.102 +img {
5.103 + background: #1B1B1B;
5.104 + border: 4px solid #262626;
5.105 + padding: 0px;
5.106 +}
5.107 +img.float-right {
5.108 + margin: 5px 0px 5px 10px;
5.109 +}
5.110 +img.float-left {
5.111 + margin: 5px 10px 5px 0px;
5.112 +}
5.113 +
5.114 +code {
5.115 + margin: 5px 0;
5.116 + padding: 15px;
5.117 + text-align: left;
5.118 + display: block;
5.119 + overflow: auto;
5.120 + font: 500 1em/1.5em 'Lucida Console', 'Courier New', Monospace;
5.121 + /* white-space: pre; */
5.122 + background: #070707;
5.123 + /*border: 1px solid #111; */
5.124 +}
5.125 +acronym {
5.126 + cursor: help;
5.127 + border-bottom: 1px dotted #5B5B5B;
5.128 +}
5.129 +blockquote {
5.130 + margin: 15px 10px;
5.131 + padding: 10px 10px 10px 35px;
5.132 + background: #070707 url(quote.gif) no-repeat 10px 10px;
5.133 + border: 1px solid #111;
5.134 + font-weight: normal;
5.135 + font-size: 17px;
5.136 + line-height: 1.6em;
5.137 + font-style: italic;
5.138 + font-family: Georgia, 'Times New Roman', Times, serif;
5.139 + color: #808080;
5.140 +}
5.141 +
5.142 +/* start - table */
5.143 +table {
5.144 + margin: 15px 0px;
5.145 + border-collapse: collapse;
5.146 +}
5.147 +th {
5.148 + color: #FAFAFA;
5.149 + height: 38px;
5.150 + padding-left: 0px;
5.151 + padding-right: 12px;
5.152 + text-align: left;
5.153 +}
5.154 +tr {
5.155 + color: #5b5b5b;
5.156 + height: 15px;
5.157 +}
5.158 +td {
5.159 + padding-left: 0px;
5.160 + padding-right: 12px;
5.161 +}
5.162 +/* end - table */
5.163 +
5.164 +
5.165 +/* form elements */
5.166 +form {
5.167 + margin: 20px 10px;
5.168 + padding: 15px 25px 25px 20px;
5.169 + background: #070707;
5.170 + /*border: 1px solid #111; */
5.171 +}
5.172 +form p {
5.173 + /*border-bottom: 1px solid #101010;*/
5.174 + padding: 12px 0 5px 0; margin: 0;
5.175 +}
5.176 +label {
5.177 + font-weight: bold;
5.178 + color: #FAFAFA;
5.179 +}
5.180 +input, select, textarea {
5.181 + margin: 5px 0;
5.182 + padding: 5px;
5.183 + font: normal 1em Verdana, Tahoma, sans-serif;
5.184 + color: #6A6969;
5.185 + background: #0C0C0C;
5.186 + /*border: 1px solid #1C1C1C;*/
5.187 +}
5.188 +option { padding-right: 0.5em; }
5.189 +
5.190 +#name, #email, #message{
5.191 + width: 480px;
5.192 +}
5.193 +input.button {
5.194 + font: bold 12px Arial, Verdana, Sans-serif;
5.195 + height: 30px;
5.196 + padding: 2px 3px;
5.197 + margin-top: 8px;
5.198 + color: #48780E;
5.199 + background: #000;
5.200 + border-width: 1px;
5.201 + border-style: solid;
5.202 + border-color: #1B1B1B;
5.203 +}
5.204 +
5.205 +
5.206 +/* ------------------------------------------
5.207 + LAYOUT
5.208 +------------------------------------------- */
5.209 +#wrap {
5.210 + width: 1020px;
5.211 + margin: 0 auto;
5.212 + text-align: left;
5.213 +}
5.214 +#content-wrap {
5.215 + clear: both;
5.216 + width: 1020px;
5.217 + float: left;
5.218 + padding-top: 15px;
5.219 + padding-bottom: 50px;
5.220 +}
5.221 +#header {
5.222 + position: relative;
5.223 + width: 1020px;
5.224 + height: 170px;
5.225 + margin: 0;
5.226 + padding: 0;
5.227 +}
5.228 +#header h1#logo-text a {
5.229 + position: absolute;
5.230 + margin: 0; padding: 0;
5.231 + font: bold 65px 'Trebuchet MS', Tahoma, Helvetica, Arial, Sans-serif;
5.232 + letter-spacing: -1.5px;
5.233 + color: #F8F8F8;
5.234 + text-decoration: none;
5.235 + text-transform: none;
5.236 +
5.237 + /* change the values of top and left to adjust the position of the logo*/
5.238 + top: 70px; left: 25px;
5.239 +}
5.240 +#header h1#logo-text a:hover {
5.241 + background: none;
5.242 + border: none;
5.243 +}
5.244 +#header p#intro {
5.245 + position: absolute;
5.246 + margin: 0;
5.247 + padding: 0;
5.248 + font-family: 'Trebuchet MS', Tahoma, Helvetica, Arial, Sans-serif;
5.249 + font-weight: bold;
5.250 + font-size: 16px;
5.251 + line-height: 1.5em;
5.252 + font-style: normal;
5.253 + text-transform: none;
5.254 + /*color: #6D7D2D;*/
5.255 + color: #5ad715;
5.256 + width: 400px;
5.257 +
5.258 + /* change the values of top and left to adjust the position */
5.259 + top: 140px;
5.260 + left: 30px;
5.261 +}
5.262 +
5.263 +/* Navigation */
5.264 +#nav {
5.265 + position: absolute;
5.266 + margin: 0;
5.267 + padding: 0;
5.268 + height: 50px;
5.269 + left: 10px;
5.270 + top: 30px;
5.271 +}
5.272 +#nav ul {
5.273 + float: left;
5.274 + list-style: none;
5.275 + height: 50px;
5.276 + margin: 0 0 0 10px;
5.277 + padding: 0;
5.278 + display: inline;
5.279 +}
5.280 +#nav ul li {
5.281 + display: inline;
5.282 + margin: 0;
5.283 + padding: 0;
5.284 +}
5.285 +#nav ul li a {
5.286 + float: left;
5.287 + margin: 0;
5.288 + padding: 0 12px;
5.289 + font: bold 15px/50px 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif;
5.290 + text-decoration: none;
5.291 + color: #c95723;
5.292 + text-transform: uppercase;
5.293 +}
5.294 +#nav ul li a:hover,
5.295 +#nav ul li a:active {
5.296 + color: #eee;
5.297 + background: none;
5.298 + border: none;
5.299 +}
5.300 +#nav ul li#current a {
5.301 + color: #D33972;
5.302 +}
5.303 +
5.304 +#subnav{
5.305 + position: absolute;
5.306 + margin: 17px 280px;
5.307 + padding: 0;
5.308 + height: 50px;
5.309 + left: 10px;
5.310 + top: 30px;
5.311 +}
5.312 +
5.313 +#subnav ul {
5.314 + float: left;
5.315 + list-style: none;
5.316 + height: 50px;
5.317 + margin: 0 0 0 10px;
5.318 + padding: 0;
5.319 + display: inline;
5.320 +}
5.321 +#subnav ul li {
5.322 + display: inline;
5.323 + margin: 0;
5.324 + padding: 0;
5.325 +}
5.326 +#subnav ul li a {
5.327 + float: left;
5.328 + margin: 0;
5.329 + padding: 0 12px;
5.330 + font: bold 15px/50px 'Trebuchet MS', Helvetica, Arial, Geneva, sans-serif;
5.331 + text-decoration: none;
5.332 + color: #5ad715;
5.333 + text-transform: uppercase;
5.334 +}
5.335 +#subnav ul li a:hover,
5.336 +#subnav ul li a:active {
5.337 + color: #eee;
5.338 + background: none;
5.339 + border: none;
5.340 +}
5.341 +#subnav ul li#current a {
5.342 + color: #D33972;
5.343 +}
5.344 +
5.345 +/* Main Column */
5.346 +#main {
5.347 + float: left;
5.348 + width: 670px;
5.349 + padding: 0;
5.350 + margin: 0 0 0 10px;
5.351 + display: inline;
5.352 +}
5.353 +#main h2 {
5.354 + padding: 5px 12px;
5.355 + margin: 15px 5px 0px 0px;
5.356 + /*font: bold 2.4em 'Trebuchet MS', Helvetica, Arial, sans-serif; */
5.357 + /*color: #45D5E6;
5.358 + color: #00cccc;*/
5.359 + color: #FFF;
5.360 +}
5.361 +#main h2 a {
5.362 + /*color: #45D5E6;*/
5.363 + color: #FFF;
5.364 + text-decoration: none;
5.365 + border: none;
5.366 +}
5.367 +#main ul li {
5.368 + /*list-style-image: url(images/bullet.png);*/
5.369 + list-style: disc;
5.370 +}
5.371 +
5.372 +/* Sidebar */
5.373 +#sidebar {
5.374 + float: right;
5.375 + width: 300px;
5.376 + padding: 0;
5.377 + margin: 0px 18px 0 0;
5.378 + display: inline;
5.379 + color: #5D5D5D;
5.380 + /*border: 4px solid #262626;*/
5.381 +}
5.382 +
5.383 +#random_quote {
5.384 + font-style: italic;
5.385 +}
5.386 +
5.387 +#sidebar h3 {
5.388 + /*padding: 5px 12px;
5.389 + margin: 15px 5px 10px 0;
5.390 + font: bold 2.4em 'Trebuchet MS', Tahoma, Helvetica, Arial, sans-serif;
5.391 + color: #45D5E6;*/
5.392 + /*border-bottom: 1px solid #121212; */
5.393 + /*background-image: url(pattern.gif); */
5.394 +}
5.395 +#sidebar ul.sidemenu {
5.396 + text-align: left;
5.397 + margin: 20px 5px 20px 0px;
5.398 + padding: 0;
5.399 + /*border-top: 1px solid #111; */
5.400 +}
5.401 +#sidebar ul.sidemenu li {
5.402 + list-style: none;
5.403 + padding: 8px 10px;
5.404 + margin: 0;
5.405 + /*border-bottom: 1px solid #111;*/
5.406 +}
5.407 +* html body #sidebar ul.sidemenu li {
5.408 + height: 1%;
5.409 +}
5.410 +#sidebar ul.sidemenu li a {
5.411 + text-decoration: none;
5.412 + border: none;
5.413 + color: #666666;
5.414 + font-weight: bold;
5.415 + /*font-family: 'Trebuchet MS', Tahoma, Helvetica, Arial, Sans-serif;*/
5.416 + font-size: 9pt;
5.417 +}
5.418 +#sidebar ul.sidemenu li a span {
5.419 + color: #444;
5.420 + /*font-family: Georgia, 'Times New Roman', Times, serif;*/
5.421 + font-style: italic;
5.422 + font-weight: normal;
5.423 + font-size: 8pt;
5.424 +}
5.425 +#sidebar ul.sidemenu li a:hover,
5.426 +#sidebar ul.sidemenu li a:hover span {
5.427 + color: #fff;
5.428 +}
5.429 +#sidebar ul.sidemenu ul { margin: 0 0 0 0px; padding: 0; }
5.430 +#sidebar ul.sidemenu ul li { border: none; }
5.431 +
5.432 +/* header quick search */
5.433 +#sidebar form#quick-search {
5.434 + padding: 0;
5.435 + margin: 20px 0 35px 0;
5.436 + border: none;
5.437 + width: 290px; height: 33px;
5.438 + /*background: url(header-search.gif) no-repeat; */
5.439 +}
5.440 +#sidebar form#quick-search p {
5.441 + margin: 0;
5.442 + padding: 0;
5.443 +}
5.444 +#sidebar form#quick-search input {
5.445 + float: left;
5.446 + border: none;
5.447 + background: transparent;
5.448 + color: #4E4E4E;
5.449 + margin: 0;
5.450 +}
5.451 +#sidebar form#quick-search .tbox {
5.452 + margin: 5px 0 0 0px;
5.453 + width: 240px;
5.454 + display: inline;
5.455 +}
5.456 +#search form#quick-search .btn{
5.457 + width: 24px; height: 24px;
5.458 +}
5.459 +#sidebar form#quick-search label {
5.460 + display: none;
5.461 +}
5.462 +
5.463 +/* footer */
5.464 +#footer {
5.465 + clear: both;
5.466 + padding: 1em 0 2.5em 0;
5.467 + background: #222222;
5.468 + color: #4E4E4E;
5.469 + width: 100%;
5.470 + float: left;
5.471 +}
5.472 +#footer a {
5.473 + color: #0E909C;
5.474 + border: none;
5.475 +}
5.476 +#footer a:hover {
5.477 + color: #fafafa;
5.478 +}
5.479 +#footer .rssfeed {
5.480 + background: url(images/rss.gif) no-repeat left 1px;
5.481 + padding-left: 17px;
5.482 +}
5.483 +#footer-left {
5.484 + float: left;
5.485 + width: 70%;
5.486 +}
5.487 +#footer-right {
5.488 + float: right;
5.489 + width: 25%;
5.490 +}
5.491 +
5.492 +.download a
5.493 +{
5.494 + color: #5ad715;
5.495 +}
5.496 +
5.497 +/* postmeta */
5.498 +.postmeta {
5.499 + padding: 7px 5px;
5.500 + margin: 5px 5px 5px 5px;
5.501 + font-size: 1em;
5.502 + color: #545454;
5.503 + /*border: 1px solid #111; */
5.504 + background: #222222;
5.505 +}
5.506 +.postmeta .date{ margin: 0 10px 0 5px; }
5.507 +.postmeta a.comments { margin: 0 10px 0 5px; }
5.508 +.postmeta a.readmore { margin: 0 10px 0 5px; }
5.509 +
5.510 +.post-info { font-size: .95em; padding-top: 3px; margin-left: 5px; color: #444; }
5.511 +.post-info a, .post-info a:visited { color: #AE275A; }
5.512 +
5.513 +/* alignment classes */
5.514 +.float-left { float: left; }
5.515 +.float-right { float: right; }
5.516 +.align-left { text-align: left; }
5.517 +.align-right { text-align: right; }
5.518 +
5.519 +/* display and additional classes */
5.520 +.no-border { border: none; }
5.521 +.clearer { clear: both; }
5.522 +.clear { display:inline-block; }
5.523 +.clear:after {
5.524 + display:block;
5.525 + visibility:hidden;
5.526 + clear:both;
5.527 + height:0;
5.528 + content: ".";
5.529 +}
5.530 +
5.531 +
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/factory/create_page Thu May 27 13:10:09 2010 +0200
6.3 @@ -0,0 +1,48 @@
6.4 +#!/usr/bin/python
6.5 +
6.6 +import datetime
6.7 +import sys
6.8 +from optparse import OptionParser
6.9 +
6.10 +content_dir = "v2010"
6.11 +content_files = ("index.html", "resume.html", "howiwork.html", "personalwork.html", "books.html", "links.html", "contact.html")
6.12 +
6.13 +def create_page(frame_filename, content_filename, output_filename):
6.14 + frame_file = open(frame_filename, "r")
6.15 + frame = frame_file.read()
6.16 + content_file = open(content_filename, "r")
6.17 + content = content_file.read()
6.18 + output_file = open(output_filename, "w")
6.19 + output = frame.replace("/insert{content}", content)
6.20 + output_file.write(output)
6.21 + output_file.close()
6.22 + content_file.close()
6.23 + frame_file.close()
6.24 +
6.25 +def main():
6.26 + parser = OptionParser()
6.27 + parser.add_option("-a", "--all", dest="create_all", action="store_true", help="create all pages", default=False)
6.28 + (options, args) = parser.parse_args()
6.29 +
6.30 + #log_file = open("compile.log", "a")
6.31 + frame_filename = args[0]
6.32 +
6.33 + if options.create_all:
6.34 + for f in content_files:
6.35 + content_filename = content_dir + "/" + f
6.36 + output_file = "../" + f
6.37 + create_page(frame_filename, content_filename, output_file)
6.38 + else:
6.39 + create_page(frame_filename, args[1], args[2])
6.40 +
6.41 + #log = "".join(("Update of file ",
6.42 + # args[2],
6.43 + # " at ",
6.44 + # str(datetime.datetime.now()),
6.45 + # ".<br />"))
6.46 + #log_file.write(log)
6.47 + #log_file.close()
6.48 +
6.49 +if __name__ == "__main__":
6.50 + main()
6.51 +
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/factory/frame.html Thu May 27 13:10:09 2010 +0200
7.3 @@ -0,0 +1,74 @@
7.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
7.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
7.6 +
7.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
7.8 +<meta name="author" content="Eugen Sawin - me73.com" />
7.9 +<meta name="description" content="A Digital Playground" />
7.10 +<meta name="robots" content="index, follow, noarchive" />
7.11 +<meta name="googlebot" content="noarchive" />
7.12 +<script src="script.js" type="text/javascript"></script>
7.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
7.14 +
7.15 +<body>
7.16 +<div id="wrap">
7.17 + <div id="header">
7.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
7.19 + <p id="intro">A Programmer's Digital Playground.</p>
7.20 + <div id="nav">
7.21 + <ul>
7.22 + <li><a href="index.html">Home</a></li>
7.23 + <li><a href="resume.html">Resume</a></li>
7.24 + <li><a href="howiwork.html">How I Work</a></li>
7.25 + <li><a href="personalwork.html">Personal Work</a></li>
7.26 + <li><a href="books.html">Books</a></li>
7.27 + <li><a href="links.html">Links</a></li>
7.28 + <li><a href="contact.html">Contact</a></li>
7.29 + </ul>
7.30 + </div>
7.31 + </div>
7.32 + <div id="content-wrap">
7.33 + <div id="main">
7.34 +/insert{content}
7.35 + </div>
7.36 + <div id="sidebar">
7.37 + <!--<h3>About</h3> -->
7.38 + <p>
7.39 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
7.40 + ME73 is my digital playground.
7.41 + I'm a programmer, a student of computer science, a music enthusiast.
7.42 + This site serves as a portfolio for my work, private and professional.
7.43 + </p>
7.44 + <h3></h3>
7.45 + <div id="random_quote"></div>
7.46 + </div>
7.47 + </div>
7.48 + <!--<div id="footer"></div>-->
7.49 + <div id="footer">
7.50 + <div id="footer-left">
7.51 + <p>
7.52 + <!--© ME73.COM -->
7.53 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
7.54 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
7.55 + </p>
7.56 + </div>
7.57 +
7.58 + <div id="footer-right">
7.59 + <p class="align-right">
7.60 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
7.61 + </p>
7.62 + </div>
7.63 +</div>
7.64 +</div>
7.65 +<script type="text/javascript">
7.66 + javascript:load_random_quote();
7.67 + //javascript:load_footer();
7.68 +</script>
7.69 +<script type="text/javascript">
7.70 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
7.71 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
7.72 +</script>
7.73 +<script type="text/javascript">
7.74 +var pageTracker = _gat._getTracker("UA-2137333-1");
7.75 +pageTracker._trackPageview();
7.76 +</script>
7.77 +</body></html>
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/factory/makefile Thu May 27 13:10:09 2010 +0200
8.3 @@ -0,0 +1,8 @@
8.4 +OUTPUT =
8.5 +FACTORY =
8.6 +FRAME = frame.html
8.7 +PAGES = index.html resume.html howiwork.html personalwork.html books.html links.html contact.html
8.8 +
8.9 +compile: $(PAGES)
8.10 + for p in $(PAGES); do python create_page $(FRAME) $$p ../$$p; done
8.11 +
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/factory/v2010/books.html Thu May 27 13:10:09 2010 +0200
9.3 @@ -0,0 +1,38 @@
9.4 +<p>Here is a list of books I find useful or simply enjoyed reading them.</p>
9.5 +<h2>Technical & Science</h2>
9.6 +<ul>
9.7 +<li><h4>Effective C++ / More Effective C++</h4><h5>Scott Meyers</h5>
9.8 +Effective and safe C++ programming advises for practical use.
9.9 +</li>
9.10 +<li><h4>Thinking in C++</h4><h5>Bruce Eckel</h5>
9.11 +A freely available introduction to C++ and its Standard Library.
9.12 +</li>
9.13 +<li><h4>Artificial Intelligence: A Modern Approach</h4><h5>Stuart J. Russel and Peter Norvig</h5>
9.14 +A comprehensive compendium of most techniques for the development of artificial intelligence.
9.15 +</li>
9.16 +<li><h4>The Algorithmic Beauty of Plants</h4><h5>Przemyslwa Prusinkieicz and Aristid Lindenmayer</h5>
9.17 +A wonderful introduction to L-systems and a motivational read.
9.18 +</li>
9.19 +<li><h4>Compilers: Principles, Techniques & Tools</h4><h5>Alfred V. Aho, Monica S. Lam and Ravi Sethi</h5>
9.20 +The standard introduction to compiler development. Also known as the Dragon Book.
9.21 +</li>
9.22 +<li><h4>Computer Networks</h4><h5>Andrew S. Tanenbaum</h5>
9.23 +A good and in-depth textbook for network technology.
9.24 +</li>
9.25 +<li><h4>A Brief History of Time</h4><h5>Stephen W. Hawking</h5>
9.26 +Popular science. Follow Stephen on his quest for the Theory of Everything.
9.27 +</li>
9.28 +</ul>
9.29 +<h2>Fiction</h2>
9.30 +<ul>
9.31 +<li><h4>Alice in Wonderland</h4><h5>Lewis Carroll</h5>
9.32 +Follow the rabbit.
9.33 +</li>
9.34 +<li><h4>Through the Looking-Glass</h4><h5>Lewis Carroll</h5>
9.35 +Sequel to Alice in Wonderland.
9.36 +</li>
9.37 +<li><h4>1984</h4><h5>George Orwell</h5>
9.38 +Classic novel about a totalitarian regime and its influence on the society.
9.39 +</li>
9.40 +</ul>
9.41 +
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/factory/v2010/contact.html Thu May 27 13:10:09 2010 +0200
10.3 @@ -0,0 +1,6 @@
10.4 +
10.5 + <h2>Contact</h2>
10.6 + <p><img src="images/contact.png" alt="water" class="float-left" height="100" width="100" />
10.7 + <br />Eugen Sawin<br />
10.8 + <a href="mailto:sawine@me73.com">sawine@me73.com</a>.</p>
10.9 +
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/factory/v2010/footer.html Thu May 27 13:10:09 2010 +0200
11.3 @@ -0,0 +1,16 @@
11.4 +<!-- footer starts here -->
11.5 +<div id="footer">
11.6 + <div id="footer-left">
11.7 + <p>
11.8 + <!--© ME73.COM -->
11.9 + <img src="images/cc.png" alt="CC" />
11.10 + Page Design based on <a href="http://www.styleshout.com/">Styleshout</a>.
11.11 + </p>
11.12 + </div>
11.13 +
11.14 + <div id="footer-right">
11.15 + <p class="align-right">
11.16 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
11.17 + </p>
11.18 + </div>
11.19 +</div>
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/factory/v2010/headerlogo.html Thu May 27 13:10:09 2010 +0200
12.3 @@ -0,0 +1,4 @@
12.4 +
12.5 + <h1 id="logo-text"><a name="top" href="index.html" title="">BITMASSIV</a></h1>
12.6 + <p id="intro">A Programmer's Digital Playground.</p>
12.7 + </div>
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
13.2 +++ b/factory/v2010/howiwork.html Thu May 27 13:10:09 2010 +0200
13.3 @@ -0,0 +1,97 @@
13.4 +<h2>Programming Languages</h2>
13.5 +<p><img src="images/binary.png" alt="binary" class="float-right" height="100" width="100" />
13.6 +During my studies and personal work, I've used a variety of programming
13.7 +languages. Here is an overview in chronologic order with some comments:</p>
13.8 +<ul>
13.9 +<li>
13.10 +<h4>QBasic. *</h4>
13.11 +It was the first language that I've learned. I've enjoyed hacking
13.12 +around in it a little, but never got far with it due to lack of
13.13 +learning resources.</li>
13.14 +<li>
13.15 +<h4>C++. *****</h4>
13.16 +This was actually my second language to learn, which meant a big leap.
13.17 +My first contact was at the age of 15, though I hadn't used it
13.18 +extensively until I started studying. In the past years, I've been
13.19 +developing most of my personal and professional work in C++. It's a beast and should be
13.20 +only handled with care.</li>
13.21 +<li>
13.22 +<h4>Java. ***</h4>
13.23 +My first contact with Java was at the university. It does provide help
13.24 +by managed memory and a big standard library.
13.25 +</li>
13.26 +<li>
13.27 +<h4>Haskell. *</h4>
13.28 +This language was a love-hate relationship for me. I hated it for being
13.29 +so difficult to grasp for the first time and loved it for inspiring me
13.30 +to approach problem solving from a differnt angle, even when working
13.31 +with non-functional languages.</li>
13.32 +<li>
13.33 +<h4>Prolog. **</h4>
13.34 +Nice iterative language especially for the field of artificial
13.35 +intelligence.</li>
13.36 +<li>
13.37 +<h4>C. *****</h4>
13.38 +C is clean and flat. It is still the most successful structured language and will most
13.39 +probably still be in use for many years to come, even if it's just "under the hood".</li>
13.40 +<li>
13.41 +<h4>Assembler. **</h4>
13.42 +Been there, done that.</li>
13.43 +<li>
13.44 +<h4>C#. ***</h4>
13.45 +It feels like the more mature language based on a managed
13.46 +architecture, especially in combination with Visual Studio, developing
13.47 +in it is a breeze. The .Net framework is mostly a well structured and
13.48 +complete environment to work in.</li>
13.49 +<li>
13.50 +<h4>Python. ****</h4>
13.51 +It's my personal favourite language for many fields. It's best suited
13.52 +for rapid prototyping, which fits perfectly into my method of working.</li>
13.53 +<li>
13.54 +<h4>Go. *</h4>
13.55 +Google has developed an interesting language with the goal of providing a general programming language including a garbage collector and efficient methods for concurrency handling. It's a fun language and shows some interesting concepts including a more dynamic approach on object orientation.</li>
13.56 +<br />* shows my experience level with the language
13.57 +</ul>
13.58 +<h2>Operating Systems</h2>
13.59 +<ul>
13.60 +<li><h4>GNU/Linux</h4>
13.61 +Ubuntu, openSUSE, Red Hat and CentOS.</li>
13.62 +<li><h4>Microsoft Windows</h4>
13.63 +Windows 95/98/2000/XP/Vista/7.</li>
13.64 +<li><h4>AmigaOS</h4>
13.65 +Been a while...</li>
13.66 +</ul>
13.67 +<h2>Environments</h2>
13.68 +<ul>
13.69 +<li>
13.70 +<h4>GVim & gedit</h4>
13.71 +These are my general purpose editors for quick editing on all platforms
13.72 +and have become my prefered editors when working in an IDE-free environment.</li>
13.73 +<li>
13.74 +<h4>Visual Studio</h4>
13.75 +It's my first choice for C#, C++ and C programming on Windows. It has
13.76 +proven to be a feature-rich, reliable and customisable IDE with great debugger integration.</li>
13.77 +<li>
13.78 +<h4>Eclipse</h4>
13.79 +It's what I prefer when developing in Java and, to some extent, when
13.80 +working in C++ on Linux. It has a great plugin system and is therefore
13.81 +extendable to be used with a big variety of languages.</li>
13.82 +<li>
13.83 +<h4>Wing IDE</h4>
13.84 +When it's Python-time, this is what I like to use. Great debugger,
13.85 +overall nice GUI and features. Free version is missing crucial
13.86 +features, though.</li>
13.87 +</ul>
13.88 +<h2>Tools</h2>
13.89 +<ul>
13.90 +<li>
13.91 +<h4>Internet</h4>
13.92 +Chrome for browsing, IRSSI for IRC and Skype for communication.</li>
13.93 +<li>
13.94 +<h4>Documentation</h4>
13.95 +gedit & LaTeX for papers, gnuplot for analysis visualisations and Inkscape for graphics.</li>
13.96 +<li>
13.97 +<h4>Version Control</h4>
13.98 +Subversion with TortoiseSVN on Windows.</li>
13.99 +</ul>
13.100 +
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2 +++ b/factory/v2010/index.html Thu May 27 13:10:09 2010 +0200
14.3 @@ -0,0 +1,2 @@
14.4 +<p><img src="images/world.png" alt="world map" height="280" width="100%" /></p>
14.5 +
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
15.2 +++ b/factory/v2010/links.html Thu May 27 13:10:09 2010 +0200
15.3 @@ -0,0 +1,22 @@
15.4 +<h2>Friends</h2>
15.5 +<ul>
15.6 +<li><h4><a href="http://www.tomrocket.com">Thomas Witt</a></h4>
15.7 +A good friend and designer for the visual arts.
15.8 +</li>
15.9 +<li><h4><a href="http://www.chris-koenig.de">Christian König</a></h4>
15.10 +A fellow student and companion in the quest for world domination.
15.11 +</li>
15.12 +<li><h4><a href="http://www.unidentify.com">Michael Chlebek</a></h4>
15.13 +A friend, programmer and amateuer photographer.
15.14 +</li>
15.15 +<li><h4><a href="http://thuber.net">Thomas Huber</a></h4>
15.16 +A fellow student of artificial intelligence.
15.17 +</li>
15.18 +</ul>
15.19 +<h2>Professional</h2>
15.20 +<ul>
15.21 +<li><h4><a href="http://www4.informatik.tu-muenchen.de/~schulz/">Dr. rer. nat. Stephan Schulz</a></h4>
15.22 +My advisor during my bachelor thesis and creator of the brainiac theorem prover called E.
15.23 +</li>
15.24 +</ul>
15.25 +
16.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
16.2 +++ b/factory/v2010/news.html Thu May 27 13:10:09 2010 +0200
16.3 @@ -0,0 +1,72 @@
16.4 + <h2><a name="2">ROSI - Rotating SICK Laser Scanner</a></h2>
16.5 + <p>
16.6 + Take 8 people, one 3D-laser-scanner, an embedded Linux system and
16.7 + the goal of developing a Linux client, a Windows client and the embedded
16.8 + Linux server application. Get a lot of challenging problems, even more work
16.9 + but a rewarding accomplishment of succeeding at something others have failed before.
16.10 + </p>
16.11 + <p><img src="images/team1.png" alt="ROSI team" height="280" width="400" /></p>
16.12 + <p>My responsibility was the development of the Window client, including its GUI and 3D visualisation
16.13 + in OpenGL. The Windows client is responsible for:
16.14 + </p>
16.15 + <ul>
16.16 + <li>Visualising the 3D vertex data stream from the server</li>
16.17 + <li>Giving the user ways to navigate in the 3D space via mouse and GUI buttons</li>
16.18 + <li>Setting the colour-mapping of depth and remission values of the scanner data</li>
16.19 + <li>Loading and Saving LAD-files and LAD-file sequences (possible directly from the stream)</li>
16.20 + <li>Setting scanner configuration remotely</li>
16.21 + </ul>
16.22 + <p>
16.23 + <img src="images/rosis1.png" alt="ROSI screenshot" height="155" width="200" />
16.24 + <img src="images/rosis2.png" alt="ROSI screenshot" height="155" width="200" />
16.25 + </p>
16.26 + <p>
16.27 +Problems that the team had to solve were: extending the hardware to get
16.28 +an absolute reference point for the rotation, solving overheating
16.29 +problems on the embedded system, providing lossless synchronization
16.30 +between the server and the clients and efficiently managing the highly
16.31 +dynamic stream of vertex data. </p>
16.32 +
16.33 + <p class="postmeta">
16.34 + <a href="mailto:esawin@gmail.com?subject=ROSI" class="comments"><img src="images/rosiafter.png" alt="ROSI after" height="120" width="200" /><img src="images/rosibefore.png" alt="ROSI before" height="120" width="200" /></a></p><p class="postmeta"><a href="mailto:esawin@gmail.com?subject=ROSI" class="comments">Comment</a>
16.35 + <span class="date">August 11, 2008</span>
16.36 + </p>
16.37 +
16.38 + <h2><a name="1">Does Size Really Matter?</a></h2>
16.39 + <p>To
16.40 +me it does! Working alot at the university, I've gotten used to the
16.41 +keyboard on my Thinkpad so much, that I'm looking for a replacement for
16.42 +my desktop system. I'm open for suggestions, it has to be:</p>
16.43 + <img src="images/bigkeyboard.png" alt="big keyboard" class="float-right" height="100" width="167" />
16.44 + <ul>
16.45 + <li>Notebook size, full sized keys</li>
16.46 + <li>No numpad</li>
16.47 + <li>Quiet but well defined key stroke</li>
16.48 + <li>Wired</li>
16.49 + </ul>
16.50 + <p>If you have any recommendations, preferably by own experience, then please let me know.</p>
16.51 + <p class="postmeta">
16.52 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20Does%20Size%20Really%20Matter" class="comments">Comment</a>
16.53 + <span class="date">July 26, 2008</span>
16.54 + </p>
16.55 +
16.56 + <h2><a name="0" href="index.html">Back to Basics - A New Dawn</a></h2>
16.57 + <p><img src="images/water.png" alt="water" class="float-left" height="141" width="100" />
16.58 + <strong>ME73</strong> made it to version 3. What has changed? Everything. I've stripped away anything that was not essential for the site.
16.59 + Now it's composed of strict XHTML, CSS and a little Javascript.
16.60 + Since I don't enjoy working on websites much, I've decided to base my site on an existing template from
16.61 + <a href="http://www.styleshout.com/">Styleshout</a>.</p>
16.62 + <p>You
16.63 +will have noticed, that I've switched to a dark background, this has
16.64 +several reasons. Since I'm spending a great portion of my time in front
16.65 +of a computer screen, I'm looking for ways to improve my working
16.66 +envirnoment to keep the experience as pleasing and repercussions as low
16.67 +as possible. I've found that working on dark backgrounds puts less
16.68 +strain on the eyes, especially when sitting in a dark room. Another
16.69 +reason is my idea of creating a more personal ambience for the site
16.70 +with my choice of colours.</p>
16.71 + <p class="postmeta">
16.72 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20Back%20to%20Basics" class="comments">Comment</a>
16.73 + <span class="date">July 25, 2008</span>
16.74 + </p>
16.75 +
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
17.2 +++ b/factory/v2010/personalwork.html Thu May 27 13:10:09 2010 +0200
17.3 @@ -0,0 +1,89 @@
17.4 + <h2><a name="tools">Tools</a></h2>
17.5 + <ul>
17.6 + <li>
17.7 + <h3><a name="netchannel">NetChannel</a></h3>
17.8 + <h4>Description</h4>
17.9 + <p>NetChannel is a simple Python object for message-based network communication
17.10 + on the TCP/IP stack. NetChannel is based on stateful sessions for improved performance.</p>
17.11 + <h4>Version 0.7</h4>
17.12 + <p>A stable prototype.</p>
17.13 + <p class="download"><a href="http://me73.com/downloads/netchannel.zip">
17.14 + Download NetChannel (Python required)</a></p>
17.15 + </li>
17.16 + <li>
17.17 + <h3><a name="eden">Eden Plotter</a></h3>
17.18 + <img src="images/edenplotters1.png" alt="eden plotter" class="float-right" height="150" width="200" />
17.19 + <h4>Description</h4>
17.20 + <p>Eden Plotter or Eden One is a quick prototype for my genetic programming routines.
17.21 + What it does is approximating a given function by the methods of GP.</p>
17.22 + <h4>Version 0.9</h4>
17.23 + <p>An unendurable slow prototype.</p>
17.24 + <p class="download"><a href="http://me73.com/downloads/eden.zip">
17.25 + Download Eden Plotter (Python required)</a></p>
17.26 + </li>
17.27 + <li>
17.28 + <h3><a name="anq">ANQ</a></h3>
17.29 + <h4>Description</h4>
17.30 + <img src="images/anqs3.png" alt="anq" class="float-right" height="130" width="200" />
17.31 + <p>ANQ
17.32 +is a testing environment for distributed algorithms. It provides a
17.33 +centralised and convenient way of organising runtime dynamic
17.34 +topologies, gives full control over the initialisation and flow of the
17.35 +algorithm and helps in tracking the current node states by visualising
17.36 +the node reports on the OpenGL graph.</p>
17.37 + <p>
17.38 +ANQ builds on the ANQ Protocol which can be optionally extended on
17.39 +special needs for the algorithm to be tested. The ANQ Master is written
17.40 +in C# using Windows Forms and OpenGL. Observer, Hotbed and the example
17.41 +Node were developed in Python. </p>
17.42 + <img src="images/anqs2.png" alt="anq" class="float-right" height="130" width="200" />
17.43 + <h4>Version Antquarium Prototype</h4>
17.44 + <p>Antquarium is the predecessor of ANQ. It was an extended course assignment and serves as a prototype for ANQ.</p>
17.45 + <p class="download"><a href="http://me73.com/downloads/antquarium.zip">
17.46 + Download Antquarium for Windows (Python and .Net 2.0 required)</a></p>
17.47 + <h4>Version 0.4.1</h4>
17.48 + <p>Stable version missing features like flow and runtime topology control.</p>
17.49 + <p class="download"><a href="mailto:esawin@gmail.com?subject=ANQ%20SVN%20access">
17.50 + Request Access to Subversion Repository</a></p>
17.51 + </li>
17.52 + </ul>
17.53 +
17.54 + <p class="postmeta">
17.55 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20tools" class="comments">Comment</a>
17.56 + <span class="date">July 28, 2008</span></p>
17.57 + <h2><a name="games">Games</a></h2>
17.58 +
17.59 + <ul><li>
17.60 + <h3><a name="theme_blocks">Theme Blocks</a></h3>
17.61 + <h4>Gameplay</h4>
17.62 + <p>A traditional gameplay most people will be familiar with.
17.63 + You have blocks falling down, you have a highscore.</p>
17.64 + <h4>Features</h4>
17.65 + <img src="images/themeblockss1.png" alt="theme blocks" class="float-right" height="150" width="200" />
17.66 + <ul><li>Online highscore list</li><li>Hardware accelerated graphics</li><li>Fullscreen and windowed mode</li><li>Two colour themes: black and white</li><li>Anti-aliasing support</li></ul>
17.67 + <h4>Requirements</h4>
17.68 + <ul><li>Microsoft Windows XP or Vista</li><li>Graphics card supporting OpenGL 1.3 or higher</li><li>One keyboard with at least the arrow keys working</li></ul>
17.69 + <p class="download"><a href="http://me73.com/downloads/ThemeBlocksSetup.exe">Download Theme Blocks (1.4MB)</a></p>
17.70 + </li><li>
17.71 + <h3><a name="pyng_pong">Pyng Pong</a></h3>
17.72 + <img src="images/pyngpongs1.png" alt="pyng pong screenshot" class="float-right" height="149" width="200" />
17.73 + <h4>Gameplay</h4>
17.74 + <p>Two bats, one ball...</p>
17.75 + <h4>Features</h4>
17.76 + <ul><li>Three AI difficulty levels</li><li>Endless gameplay, play till you're bored!</li></ul>
17.77 + <p class="download"><a href="http://me73.com/downloads/PyngPongSetup.exe">
17.78 + Download Pyng Pong for Windows (2.4MB)</a></p>
17.79 + <p class="download"><a href="http://me73.com/downloads/pyngpong.zip">
17.80 + Download Pyng Pong Source (Python + PyGame needed) (0.4MB)</a></p>
17.81 + </li><li>
17.82 +
17.83 + <h3><a name="klangbild">Klangbild</a></h3>
17.84 + <img src="images/klangbilds1.png" alt="klangbild" class="float-right" height="150" width="200" />
17.85 + <h4>Gameplay</h4>
17.86 + <p>There is no gameplay yet, it's a prototype for an audio-visual puzzle game.</p>
17.87 + <h4>Features</h4>
17.88 + <ul><li>Drag, create and remove sound sources</li><li>Height of placement sets the sound pitch</li></ul>
17.89 + <p class="download"><a href="http://me73.com/downloads/klangbild.zip">
17.90 + Download Klangbild (Python and PyGlet required)</a></p>
17.91 + </li></ul>
17.92 +
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
18.2 +++ b/factory/v2010/resume.html Thu May 27 13:10:09 2010 +0200
18.3 @@ -0,0 +1,39 @@
18.4 +
18.5 +<h2>Professional Experience</h2>
18.6 +<ul>
18.7 +<li><h4>Software Engineer, Comsoft GmbH, since 2010</h4>
18.8 +Development of safety-critical back end systems for the ATC domain.
18.9 +</li>
18.10 +</ul>
18.11 +<h2>Accompanying the Studies</h2>
18.12 +<ul>
18.13 +<li><h4>Bachelor Thesis, Comsoft GmbH, 2009-2010</h4>
18.14 +"Flexible Modeling of Dynamic Air Space Constraints and its Application in Departure Flow Optimisation"
18.15 +</li>
18.16 +<li><h4>Working Student & Internship, Comsoft GmbH, 2008-2009</h4>
18.17 +Development of software and driver for safety-critical embedded systems.
18.18 +</li>
18.19 +<li>
18.20 +<h4>Student Assistant, University of Applied Sciences Offenburg, 2008</h4>
18.21 +Assistance at a university course for object-oriented software development.</li>
18.22 +<li><h4>University Project, University of Applied Sciences Offenburg & Karlsruhe Institute of Technology, 2008</h4>
18.23 +Development of a client for 3D data streaming and visualisation. </li>
18.24 +<li><h4>University Project, University Karlsruhe, 2006</h4>
18.25 +Development of a multi-discipline scheduler.
18.26 +</ul>
18.27 +<ul>
18.28 +</ul>
18.29 +<h2>Education</h2>
18.30 +<ul>
18.31 +<li>
18.32 +<h4>University of Applied Sciences Offenburg, 2007-2010</h4>
18.33 +B. Sc. in Computer Science.<br />
18.34 +Emphasis in Distributed Systems and Artificial Intelligence.</li>
18.35 +</ul>
18.36 +<ul>
18.37 +<li>
18.38 +<h4>University Karlsruhe, 2003-2007</h4>
18.39 +Diplom in Informatics, 6 semesters.</li>
18.40 +</ul>
18.41 +
18.42 +
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
19.2 +++ b/factory/v2010/sidebar.html Thu May 27 13:10:09 2010 +0200
19.3 @@ -0,0 +1,13 @@
19.4 +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
19.5 +<html><head></head><body><div id="sidebar">
19.6 + <h3>About</h3>
19.7 + <p>
19.8 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64">
19.9 + ME73 is my digital playground. I'm a programmer, a student of computer science, a music enthusiast.
19.10 + I'm interested in sciences including physics and astronomy and like anything related to artificial intelligence,
19.11 + distributed systems and digital image processing.
19.12 + This site serves as a portfolio for my work, private and professional.
19.13 + </p>
19.14 + <h3><br></h3>
19.15 + <div id="random_quote"></div>
19.16 +</div></body></html>
20.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
20.2 +++ b/factory/v2010/tutorials.html Thu May 27 13:10:09 2010 +0200
20.3 @@ -0,0 +1,41 @@
20.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
20.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
20.6 +
20.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
20.8 +<meta name="author" content="Eugen Sawin - me73.com" />
20.9 +<meta name="description" content="A Digital Playground" />
20.10 +<meta name="robots" content="index, follow, noarchive" />
20.11 +<meta name="googlebot" content="noarchive" />
20.12 +<script src="script.js" type="text/javascript"></script>
20.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
20.14 +
20.15 +<body>
20.16 +<div id="wrap">
20.17 + <div id="header"></div>
20.18 + <div id="content-wrap">
20.19 + <div id="main">
20.20 + <h2>Where Are The Old Tutorials?</h2>
20.21 + <img src="images/questionmark.png" alt="questionmark" class="float-right" height="100" width="100" />
20.22 + <p>Despite the elementary nature of my tutorials, they've created a suprisingly steady stream
20.23 + of traffic for my site. </p><p>Today,
20.24 +I believe that tutorials can cause more harm than solve problems.
20.25 +A tutorial will not replace a well done research, a good book and
20.26 +proper education. It will, however, in many cases promote quick and
20.27 +often unsafe solutions without a real understanding of the underlying
20.28 +material.</p><br /><p class="postmeta">
20.29 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20tutorials" class="comments">Comment</a> <span class="date">May 9, 2009</span>
20.30 + </p>
20.31 + </div>
20.32 + <div id="sidebar"></div>
20.33 + </div>
20.34 + <div id="footer"></div>
20.35 +</div>
20.36 +
20.37 +<script type="text/javascript">
20.38 + javascript:load_header("tutorials");
20.39 + javascript:load_sidebar();
20.40 + javascript:load_footer();
20.41 + javascript:load_random_quote();
20.42 + javascript:google_an();
20.43 +</script>
20.44 +</body></html>
20.45 \ No newline at end of file
21.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
21.2 +++ b/footer.html Thu May 27 13:10:09 2010 +0200
21.3 @@ -0,0 +1,16 @@
21.4 +<!-- footer starts here -->
21.5 +<div id="footer">
21.6 + <div id="footer-left">
21.7 + <p>
21.8 + <!--© ME73.COM -->
21.9 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
21.10 + Except where otherwise noticed, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
21.11 + </p>
21.12 + </div>
21.13 +
21.14 + <div id="footer-right">
21.15 + <p class="align-right">
21.16 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
21.17 + </p>
21.18 + </div>
21.19 +</div>
22.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
22.2 +++ b/headerlogo.html Thu May 27 13:10:09 2010 +0200
22.3 @@ -0,0 +1,4 @@
22.4 +
22.5 + <h1 id="logo-text"><a name="top" href="index.html" title="">BITMASSIV</a></h1>
22.6 + <p id="intro">A Programmer's Digital Playground.</p>
22.7 + </div>
23.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
23.2 +++ b/howiwork.html Thu May 27 13:10:09 2010 +0200
23.3 @@ -0,0 +1,171 @@
23.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
23.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
23.6 +
23.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
23.8 +<meta name="author" content="Eugen Sawin - me73.com" />
23.9 +<meta name="description" content="A Digital Playground" />
23.10 +<meta name="robots" content="index, follow, noarchive" />
23.11 +<meta name="googlebot" content="noarchive" />
23.12 +<script src="script.js" type="text/javascript"></script>
23.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
23.14 +
23.15 +<body>
23.16 +<div id="wrap">
23.17 + <div id="header">
23.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
23.19 + <p id="intro">A Programmer's Digital Playground.</p>
23.20 + <div id="nav">
23.21 + <ul>
23.22 + <li><a href="index.html">Home</a></li>
23.23 + <li><a href="resume.html">Resume</a></li>
23.24 + <li><a href="howiwork.html">How I Work</a></li>
23.25 + <li><a href="personalwork.html">Personal Work</a></li>
23.26 + <li><a href="books.html">Books</a></li>
23.27 + <li><a href="links.html">Links</a></li>
23.28 + <li><a href="contact.html">Contact</a></li>
23.29 + </ul>
23.30 + </div>
23.31 + </div>
23.32 + <div id="content-wrap">
23.33 + <div id="main">
23.34 +<h2>Programming Languages</h2>
23.35 +<p><img src="images/binary.png" alt="binary" class="float-right" height="100" width="100" />
23.36 +During my studies and personal work, I've used a variety of programming
23.37 +languages. Here is an overview in chronologic order with some comments:</p>
23.38 +<ul>
23.39 +<li>
23.40 +<h4>QBasic. *</h4>
23.41 +It was the first language that I've learned. I've enjoyed hacking
23.42 +around in it a little, but never got far with it due to lack of
23.43 +learning resources.</li>
23.44 +<li>
23.45 +<h4>C++. *****</h4>
23.46 +This was actually my second language to learn, which meant a big leap.
23.47 +My first contact was at the age of 15, though I hadn't used it
23.48 +extensively until I started studying. In the past years, I've been
23.49 +developing most of my personal and professional work in C++. It's a beast and should be
23.50 +only handled with care.</li>
23.51 +<li>
23.52 +<h4>Java. ***</h4>
23.53 +My first contact with Java was at the university. It does provide help
23.54 +by managed memory and a big standard library.
23.55 +</li>
23.56 +<li>
23.57 +<h4>Haskell. *</h4>
23.58 +This language was a love-hate relationship for me. I hated it for being
23.59 +so difficult to grasp for the first time and loved it for inspiring me
23.60 +to approach problem solving from a differnt angle, even when working
23.61 +with non-functional languages.</li>
23.62 +<li>
23.63 +<h4>Prolog. **</h4>
23.64 +Nice iterative language especially for the field of artificial
23.65 +intelligence.</li>
23.66 +<li>
23.67 +<h4>C. *****</h4>
23.68 +C is clean and flat. It is still the most successful structured language and will most
23.69 +probably still be in use for many years to come, even if it's just "under the hood".</li>
23.70 +<li>
23.71 +<h4>Assembler. **</h4>
23.72 +Been there, done that.</li>
23.73 +<li>
23.74 +<h4>C#. ***</h4>
23.75 +It feels like the more mature language based on a managed
23.76 +architecture, especially in combination with Visual Studio, developing
23.77 +in it is a breeze. The .Net framework is mostly a well structured and
23.78 +complete environment to work in.</li>
23.79 +<li>
23.80 +<h4>Python. ****</h4>
23.81 +It's my personal favourite language for many fields. It's best suited
23.82 +for rapid prototyping, which fits perfectly into my method of working.</li>
23.83 +<li>
23.84 +<h4>Go. *</h4>
23.85 +Google has developed an interesting language with the goal of providing a general programming language including a garbage collector and efficient methods for concurrency handling. It's a fun language and shows some interesting concepts including a more dynamic approach on object orientation.</li>
23.86 +<br />* shows my experience level with the language
23.87 +</ul>
23.88 +<h2>Operating Systems</h2>
23.89 +<ul>
23.90 +<li><h4>GNU/Linux</h4>
23.91 +Ubuntu, openSUSE, Red Hat and CentOS.</li>
23.92 +<li><h4>Microsoft Windows</h4>
23.93 +Windows 95/98/2000/XP/Vista/7.</li>
23.94 +<li><h4>AmigaOS</h4>
23.95 +Been a while...</li>
23.96 +</ul>
23.97 +<h2>Environments</h2>
23.98 +<ul>
23.99 +<li>
23.100 +<h4>GVim & gedit</h4>
23.101 +These are my general purpose editors for quick editing on all platforms
23.102 +and have become my prefered editors when working in an IDE-free environment.</li>
23.103 +<li>
23.104 +<h4>Visual Studio</h4>
23.105 +It's my first choice for C#, C++ and C programming on Windows. It has
23.106 +proven to be a feature-rich, reliable and customisable IDE with great debugger integration.</li>
23.107 +<li>
23.108 +<h4>Eclipse</h4>
23.109 +It's what I prefer when developing in Java and, to some extent, when
23.110 +working in C++ on Linux. It has a great plugin system and is therefore
23.111 +extendable to be used with a big variety of languages.</li>
23.112 +<li>
23.113 +<h4>Wing IDE</h4>
23.114 +When it's Python-time, this is what I like to use. Great debugger,
23.115 +overall nice GUI and features. Free version is missing crucial
23.116 +features, though.</li>
23.117 +</ul>
23.118 +<h2>Tools</h2>
23.119 +<ul>
23.120 +<li>
23.121 +<h4>Internet</h4>
23.122 +Chrome for browsing, IRSSI for IRC and Skype for communication.</li>
23.123 +<li>
23.124 +<h4>Documentation</h4>
23.125 +gedit & LaTeX for papers, gnuplot for analysis visualisations and Inkscape for graphics.</li>
23.126 +<li>
23.127 +<h4>Version Control</h4>
23.128 +Subversion with TortoiseSVN on Windows.</li>
23.129 +</ul>
23.130 +
23.131 +
23.132 + </div>
23.133 + <div id="sidebar">
23.134 + <!--<h3>About</h3> -->
23.135 + <p>
23.136 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
23.137 + ME73 is my digital playground.
23.138 + I'm a programmer, a student of computer science, a music enthusiast.
23.139 + This site serves as a portfolio for my work, private and professional.
23.140 + </p>
23.141 + <h3></h3>
23.142 + <div id="random_quote"></div>
23.143 + </div>
23.144 + </div>
23.145 + <!--<div id="footer"></div>-->
23.146 + <div id="footer">
23.147 + <div id="footer-left">
23.148 + <p>
23.149 + <!--© ME73.COM -->
23.150 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
23.151 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
23.152 + </p>
23.153 + </div>
23.154 +
23.155 + <div id="footer-right">
23.156 + <p class="align-right">
23.157 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
23.158 + </p>
23.159 + </div>
23.160 +</div>
23.161 +</div>
23.162 +<script type="text/javascript">
23.163 + javascript:load_random_quote();
23.164 + //javascript:load_footer();
23.165 +</script>
23.166 +<script type="text/javascript">
23.167 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
23.168 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
23.169 +</script>
23.170 +<script type="text/javascript">
23.171 +var pageTracker = _gat._getTracker("UA-2137333-1");
23.172 +pageTracker._trackPageview();
23.173 +</script>
23.174 +</body></html>
24.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
24.2 +++ b/index.html Thu May 27 13:10:09 2010 +0200
24.3 @@ -0,0 +1,76 @@
24.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
24.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
24.6 +
24.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
24.8 +<meta name="author" content="Eugen Sawin - me73.com" />
24.9 +<meta name="description" content="A Digital Playground" />
24.10 +<meta name="robots" content="index, follow, noarchive" />
24.11 +<meta name="googlebot" content="noarchive" />
24.12 +<script src="script.js" type="text/javascript"></script>
24.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
24.14 +
24.15 +<body>
24.16 +<div id="wrap">
24.17 + <div id="header">
24.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
24.19 + <p id="intro">A Programmer's Digital Playground.</p>
24.20 + <div id="nav">
24.21 + <ul>
24.22 + <li><a href="index.html">Home</a></li>
24.23 + <li><a href="resume.html">Resume</a></li>
24.24 + <li><a href="howiwork.html">How I Work</a></li>
24.25 + <li><a href="personalwork.html">Personal Work</a></li>
24.26 + <li><a href="books.html">Books</a></li>
24.27 + <li><a href="links.html">Links</a></li>
24.28 + <li><a href="contact.html">Contact</a></li>
24.29 + </ul>
24.30 + </div>
24.31 + </div>
24.32 + <div id="content-wrap">
24.33 + <div id="main">
24.34 +<p><img src="images/world.png" alt="world map" height="280" width="100%" /></p>
24.35 +
24.36 +
24.37 + </div>
24.38 + <div id="sidebar">
24.39 + <!--<h3>About</h3> -->
24.40 + <p>
24.41 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
24.42 + ME73 is my digital playground.
24.43 + I'm a programmer, a student of computer science, a music enthusiast.
24.44 + This site serves as a portfolio for my work, private and professional.
24.45 + </p>
24.46 + <h3></h3>
24.47 + <div id="random_quote"></div>
24.48 + </div>
24.49 + </div>
24.50 + <!--<div id="footer"></div>-->
24.51 + <div id="footer">
24.52 + <div id="footer-left">
24.53 + <p>
24.54 + <!--© ME73.COM -->
24.55 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
24.56 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
24.57 + </p>
24.58 + </div>
24.59 +
24.60 + <div id="footer-right">
24.61 + <p class="align-right">
24.62 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
24.63 + </p>
24.64 + </div>
24.65 +</div>
24.66 +</div>
24.67 +<script type="text/javascript">
24.68 + javascript:load_random_quote();
24.69 + //javascript:load_footer();
24.70 +</script>
24.71 +<script type="text/javascript">
24.72 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
24.73 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
24.74 +</script>
24.75 +<script type="text/javascript">
24.76 +var pageTracker = _gat._getTracker("UA-2137333-1");
24.77 +pageTracker._trackPageview();
24.78 +</script>
24.79 +</body></html>
25.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
25.2 +++ b/kex.txt Thu May 27 13:10:09 2010 +0200
25.3 @@ -0,0 +1,1 @@
25.4 +RBxlPAuhi2xSgIG9vo9sxPny02lzoP5TzdzaIRdGD60
26.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
26.2 +++ b/links.html Thu May 27 13:10:09 2010 +0200
26.3 @@ -0,0 +1,96 @@
26.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
26.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
26.6 +
26.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
26.8 +<meta name="author" content="Eugen Sawin - me73.com" />
26.9 +<meta name="description" content="A Digital Playground" />
26.10 +<meta name="robots" content="index, follow, noarchive" />
26.11 +<meta name="googlebot" content="noarchive" />
26.12 +<script src="script.js" type="text/javascript"></script>
26.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
26.14 +
26.15 +<body>
26.16 +<div id="wrap">
26.17 + <div id="header">
26.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
26.19 + <p id="intro">A Programmer's Digital Playground.</p>
26.20 + <div id="nav">
26.21 + <ul>
26.22 + <li><a href="index.html">Home</a></li>
26.23 + <li><a href="resume.html">Resume</a></li>
26.24 + <li><a href="howiwork.html">How I Work</a></li>
26.25 + <li><a href="personalwork.html">Personal Work</a></li>
26.26 + <li><a href="books.html">Books</a></li>
26.27 + <li><a href="links.html">Links</a></li>
26.28 + <li><a href="contact.html">Contact</a></li>
26.29 + </ul>
26.30 + </div>
26.31 + </div>
26.32 + <div id="content-wrap">
26.33 + <div id="main">
26.34 +<h2>Friends</h2>
26.35 +<ul>
26.36 +<li><h4><a href="http://www.tomrocket.com">Thomas Witt</a></h4>
26.37 +A good friend and designer for the visual arts.
26.38 +</li>
26.39 +<li><h4><a href="http://www.chris-koenig.de">Christian König</a></h4>
26.40 +A fellow student and companion in the quest for world domination.
26.41 +</li>
26.42 +<li><h4><a href="http://www.unidentify.com">Michael Chlebek</a></h4>
26.43 +A friend, programmer and amateuer photographer.
26.44 +</li>
26.45 +<li><h4><a href="http://thuber.net">Thomas Huber</a></h4>
26.46 +A fellow student of artificial intelligence.
26.47 +</li>
26.48 +</ul>
26.49 +<h2>Professional</h2>
26.50 +<ul>
26.51 +<li><h4><a href="http://www4.informatik.tu-muenchen.de/~schulz/">Dr. rer. nat. Stephan Schulz</a></h4>
26.52 +My advisor during my bachelor thesis and creator of the brainiac theorem prover called E.
26.53 +</li>
26.54 +</ul>
26.55 +
26.56 +
26.57 + </div>
26.58 + <div id="sidebar">
26.59 + <!--<h3>About</h3> -->
26.60 + <p>
26.61 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
26.62 + ME73 is my digital playground.
26.63 + I'm a programmer, a student of computer science, a music enthusiast.
26.64 + This site serves as a portfolio for my work, private and professional.
26.65 + </p>
26.66 + <h3></h3>
26.67 + <div id="random_quote"></div>
26.68 + </div>
26.69 + </div>
26.70 + <!--<div id="footer"></div>-->
26.71 + <div id="footer">
26.72 + <div id="footer-left">
26.73 + <p>
26.74 + <!--© ME73.COM -->
26.75 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
26.76 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
26.77 + </p>
26.78 + </div>
26.79 +
26.80 + <div id="footer-right">
26.81 + <p class="align-right">
26.82 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
26.83 + </p>
26.84 + </div>
26.85 +</div>
26.86 +</div>
26.87 +<script type="text/javascript">
26.88 + javascript:load_random_quote();
26.89 + //javascript:load_footer();
26.90 +</script>
26.91 +<script type="text/javascript">
26.92 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
26.93 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
26.94 +</script>
26.95 +<script type="text/javascript">
26.96 +var pageTracker = _gat._getTracker("UA-2137333-1");
26.97 +pageTracker._trackPageview();
26.98 +</script>
26.99 +</body></html>
27.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
27.2 +++ b/personalwork.html Thu May 27 13:10:09 2010 +0200
27.3 @@ -0,0 +1,163 @@
27.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
27.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
27.6 +
27.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
27.8 +<meta name="author" content="Eugen Sawin - me73.com" />
27.9 +<meta name="description" content="A Digital Playground" />
27.10 +<meta name="robots" content="index, follow, noarchive" />
27.11 +<meta name="googlebot" content="noarchive" />
27.12 +<script src="script.js" type="text/javascript"></script>
27.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
27.14 +
27.15 +<body>
27.16 +<div id="wrap">
27.17 + <div id="header">
27.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
27.19 + <p id="intro">A Programmer's Digital Playground.</p>
27.20 + <div id="nav">
27.21 + <ul>
27.22 + <li><a href="index.html">Home</a></li>
27.23 + <li><a href="resume.html">Resume</a></li>
27.24 + <li><a href="howiwork.html">How I Work</a></li>
27.25 + <li><a href="personalwork.html">Personal Work</a></li>
27.26 + <li><a href="books.html">Books</a></li>
27.27 + <li><a href="links.html">Links</a></li>
27.28 + <li><a href="contact.html">Contact</a></li>
27.29 + </ul>
27.30 + </div>
27.31 + </div>
27.32 + <div id="content-wrap">
27.33 + <div id="main">
27.34 + <h2><a name="tools">Tools</a></h2>
27.35 + <ul>
27.36 + <li>
27.37 + <h3><a name="netchannel">NetChannel</a></h3>
27.38 + <h4>Description</h4>
27.39 + <p>NetChannel is a simple Python object for message-based network communication
27.40 + on the TCP/IP stack. NetChannel is based on stateful sessions for improved performance.</p>
27.41 + <h4>Version 0.7</h4>
27.42 + <p>A stable prototype.</p>
27.43 + <p class="download"><a href="http://me73.com/downloads/netchannel.zip">
27.44 + Download NetChannel (Python required)</a></p>
27.45 + </li>
27.46 + <li>
27.47 + <h3><a name="eden">Eden Plotter</a></h3>
27.48 + <img src="images/edenplotters1.png" alt="eden plotter" class="float-right" height="150" width="200" />
27.49 + <h4>Description</h4>
27.50 + <p>Eden Plotter or Eden One is a quick prototype for my genetic programming routines.
27.51 + What it does is approximating a given function by the methods of GP.</p>
27.52 + <h4>Version 0.9</h4>
27.53 + <p>An unendurable slow prototype.</p>
27.54 + <p class="download"><a href="http://me73.com/downloads/eden.zip">
27.55 + Download Eden Plotter (Python required)</a></p>
27.56 + </li>
27.57 + <li>
27.58 + <h3><a name="anq">ANQ</a></h3>
27.59 + <h4>Description</h4>
27.60 + <img src="images/anqs3.png" alt="anq" class="float-right" height="130" width="200" />
27.61 + <p>ANQ
27.62 +is a testing environment for distributed algorithms. It provides a
27.63 +centralised and convenient way of organising runtime dynamic
27.64 +topologies, gives full control over the initialisation and flow of the
27.65 +algorithm and helps in tracking the current node states by visualising
27.66 +the node reports on the OpenGL graph.</p>
27.67 + <p>
27.68 +ANQ builds on the ANQ Protocol which can be optionally extended on
27.69 +special needs for the algorithm to be tested. The ANQ Master is written
27.70 +in C# using Windows Forms and OpenGL. Observer, Hotbed and the example
27.71 +Node were developed in Python. </p>
27.72 + <img src="images/anqs2.png" alt="anq" class="float-right" height="130" width="200" />
27.73 + <h4>Version Antquarium Prototype</h4>
27.74 + <p>Antquarium is the predecessor of ANQ. It was an extended course assignment and serves as a prototype for ANQ.</p>
27.75 + <p class="download"><a href="http://me73.com/downloads/antquarium.zip">
27.76 + Download Antquarium for Windows (Python and .Net 2.0 required)</a></p>
27.77 + <h4>Version 0.4.1</h4>
27.78 + <p>Stable version missing features like flow and runtime topology control.</p>
27.79 + <p class="download"><a href="mailto:esawin@gmail.com?subject=ANQ%20SVN%20access">
27.80 + Request Access to Subversion Repository</a></p>
27.81 + </li>
27.82 + </ul>
27.83 +
27.84 + <p class="postmeta">
27.85 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20tools" class="comments">Comment</a>
27.86 + <span class="date">July 28, 2008</span></p>
27.87 + <h2><a name="games">Games</a></h2>
27.88 +
27.89 + <ul><li>
27.90 + <h3><a name="theme_blocks">Theme Blocks</a></h3>
27.91 + <h4>Gameplay</h4>
27.92 + <p>A traditional gameplay most people will be familiar with.
27.93 + You have blocks falling down, you have a highscore.</p>
27.94 + <h4>Features</h4>
27.95 + <img src="images/themeblockss1.png" alt="theme blocks" class="float-right" height="150" width="200" />
27.96 + <ul><li>Online highscore list</li><li>Hardware accelerated graphics</li><li>Fullscreen and windowed mode</li><li>Two colour themes: black and white</li><li>Anti-aliasing support</li></ul>
27.97 + <h4>Requirements</h4>
27.98 + <ul><li>Microsoft Windows XP or Vista</li><li>Graphics card supporting OpenGL 1.3 or higher</li><li>One keyboard with at least the arrow keys working</li></ul>
27.99 + <p class="download"><a href="http://me73.com/downloads/ThemeBlocksSetup.exe">Download Theme Blocks (1.4MB)</a></p>
27.100 + </li><li>
27.101 + <h3><a name="pyng_pong">Pyng Pong</a></h3>
27.102 + <img src="images/pyngpongs1.png" alt="pyng pong screenshot" class="float-right" height="149" width="200" />
27.103 + <h4>Gameplay</h4>
27.104 + <p>Two bats, one ball...</p>
27.105 + <h4>Features</h4>
27.106 + <ul><li>Three AI difficulty levels</li><li>Endless gameplay, play till you're bored!</li></ul>
27.107 + <p class="download"><a href="http://me73.com/downloads/PyngPongSetup.exe">
27.108 + Download Pyng Pong for Windows (2.4MB)</a></p>
27.109 + <p class="download"><a href="http://me73.com/downloads/pyngpong.zip">
27.110 + Download Pyng Pong Source (Python + PyGame needed) (0.4MB)</a></p>
27.111 + </li><li>
27.112 +
27.113 + <h3><a name="klangbild">Klangbild</a></h3>
27.114 + <img src="images/klangbilds1.png" alt="klangbild" class="float-right" height="150" width="200" />
27.115 + <h4>Gameplay</h4>
27.116 + <p>There is no gameplay yet, it's a prototype for an audio-visual puzzle game.</p>
27.117 + <h4>Features</h4>
27.118 + <ul><li>Drag, create and remove sound sources</li><li>Height of placement sets the sound pitch</li></ul>
27.119 + <p class="download"><a href="http://me73.com/downloads/klangbild.zip">
27.120 + Download Klangbild (Python and PyGlet required)</a></p>
27.121 + </li></ul>
27.122 +
27.123 +
27.124 + </div>
27.125 + <div id="sidebar">
27.126 + <!--<h3>About</h3> -->
27.127 + <p>
27.128 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
27.129 + ME73 is my digital playground.
27.130 + I'm a programmer, a student of computer science, a music enthusiast.
27.131 + This site serves as a portfolio for my work, private and professional.
27.132 + </p>
27.133 + <h3></h3>
27.134 + <div id="random_quote"></div>
27.135 + </div>
27.136 + </div>
27.137 + <!--<div id="footer"></div>-->
27.138 + <div id="footer">
27.139 + <div id="footer-left">
27.140 + <p>
27.141 + <!--© ME73.COM -->
27.142 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
27.143 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
27.144 + </p>
27.145 + </div>
27.146 +
27.147 + <div id="footer-right">
27.148 + <p class="align-right">
27.149 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
27.150 + </p>
27.151 + </div>
27.152 +</div>
27.153 +</div>
27.154 +<script type="text/javascript">
27.155 + javascript:load_random_quote();
27.156 + //javascript:load_footer();
27.157 +</script>
27.158 +<script type="text/javascript">
27.159 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
27.160 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
27.161 +</script>
27.162 +<script type="text/javascript">
27.163 +var pageTracker = _gat._getTracker("UA-2137333-1");
27.164 +pageTracker._trackPageview();
27.165 +</script>
27.166 +</body></html>
28.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
28.2 +++ b/quotes/create_quote.py Thu May 27 13:10:09 2010 +0200
28.3 @@ -0,0 +1,22 @@
28.4 +#!/usr/bin/python
28.5 +
28.6 +import sys
28.7 +import subprocess
28.8 +from subprocess import PIPE
28.9 +
28.10 +SCRIPT_FILE = "../script.js"
28.11 +
28.12 +if __name__ == "__main__":
28.13 + if len(sys.argv) < 3:
28.14 + print "not enough arguments provided"
28.15 + print "usage: %s \"quote text\" author" % sys.argv[0]
28.16 + quote = sys.argv[1]
28.17 + author = sys.argv[2]
28.18 + quote_num = int(subprocess.Popen("ls quote*.html | wc -l", shell=True, stdout=PIPE).communicate()[0]) + 1
28.19 + file = open("quote%s.html" % str(quote_num), "w")
28.20 + try:
28.21 + file.write("<p>"%s" </p><p class=\"align-right\">- %s</p>" % (quote, author))
28.22 + finally:
28.23 + file.close()
28.24 +
28.25 +
29.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
29.2 +++ b/quotes/quote1.html Thu May 27 13:10:09 2010 +0200
29.3 @@ -0,0 +1,4 @@
29.4 +<p>"To be yourself in a world that is constantly trying to make you
29.5 + something else is the greatest accomplishment." </p>
29.6 +
29.7 + <p class="align-right">- Ralph Waldo Emerson</p>
29.8 \ No newline at end of file
30.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
30.2 +++ b/quotes/quote10.html Thu May 27 13:10:09 2010 +0200
30.3 @@ -0,0 +1,2 @@
30.4 +<p>"That deep emotional conviction of the presence of a superior reasoning power, which is revealed in the incomprehensible universe, forms my idea of God."</p>
30.5 +<p class="align-right">- Albert Einstein</p>
30.6 \ No newline at end of file
31.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
31.2 +++ b/quotes/quote11.html Thu May 27 13:10:09 2010 +0200
31.3 @@ -0,0 +1,2 @@
31.4 +<p>"The monotony and solitude of a quiet life stimulates the creative mind."</p>
31.5 +<p class="align-right">- Albert Einstein</p>
31.6 \ No newline at end of file
32.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
32.2 +++ b/quotes/quote12.html Thu May 27 13:10:09 2010 +0200
32.3 @@ -0,0 +1,2 @@
32.4 +<p>"The only thing that interferes with my learning is my education."</p>
32.5 +<p class="align-right">- Albert Einstein</p>
32.6 \ No newline at end of file
33.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
33.2 +++ b/quotes/quote13.html Thu May 27 13:10:09 2010 +0200
33.3 @@ -0,0 +1,2 @@
33.4 +<p>"The secret to creativity is knowing how to hide your sources."</p>
33.5 +<p class="align-right">- Albert Einstein</p>
33.6 \ No newline at end of file
34.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
34.2 +++ b/quotes/quote14.html Thu May 27 13:10:09 2010 +0200
34.3 @@ -0,0 +1,2 @@
34.4 +<p>"We should take care not to make the intellect our god; it has, of course, powerful muscles, but no personality."</p>
34.5 +<p class="align-right">- Albert Einstein</p>
34.6 \ No newline at end of file
35.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
35.2 +++ b/quotes/quote15.html Thu May 27 13:10:09 2010 +0200
35.3 @@ -0,0 +1,2 @@
35.4 +<p>"I love to travel, but hate to arrive."</p>
35.5 +<p class="align-right">- Albert Einstein</p>
35.6 \ No newline at end of file
36.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
36.2 +++ b/quotes/quote16.html Thu May 27 13:10:09 2010 +0200
36.3 @@ -0,0 +1,1 @@
36.4 +<p>"It is the mark of an educated mind to be able to entertain a thought without accepting it." </p><p class="align-right">- Aristotle</p>
36.5 \ No newline at end of file
37.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
37.2 +++ b/quotes/quote17.html Thu May 27 13:10:09 2010 +0200
37.3 @@ -0,0 +1,2 @@
37.4 +<p>"Pleasure in the job puts perfection in the work."</p>
37.5 +<p class="align-right">- Aristotle</p>
38.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
38.2 +++ b/quotes/quote18.html Thu May 27 13:10:09 2010 +0200
38.3 @@ -0,0 +1,2 @@
38.4 +<p>"For the things we have to learn before we can do them, we learn by doing them."</p>
38.5 +<p class="align-right">- Aristotle</p>
39.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
39.2 +++ b/quotes/quote19.html Thu May 27 13:10:09 2010 +0200
39.3 @@ -0,0 +1,2 @@
39.4 +<p>"In all things of nature there is something of the marvelous."</p>
39.5 +<p class="align-right">- Aristotle</p>
40.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
40.2 +++ b/quotes/quote2.html Thu May 27 13:10:09 2010 +0200
40.3 @@ -0,0 +1,2 @@
40.4 +<p>"Life is a tragedy when seen in close-up, but a comedy in long-shot."</p>
40.5 +<p class="align-right">- Charlie Chaplin</p>
40.6 \ No newline at end of file
41.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
41.2 +++ b/quotes/quote20.html Thu May 27 13:10:09 2010 +0200
41.3 @@ -0,0 +1,2 @@
41.4 +<p>"Nature does nothing uselessly."</p>
41.5 +<p class="align-right">- Aristotle</p>
42.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
42.2 +++ b/quotes/quote21.html Thu May 27 13:10:09 2010 +0200
42.3 @@ -0,0 +1,2 @@
42.4 +<p>"In the name of God, stop a moment, cease your work, look around you."</p>
42.5 +<p class="align-right">- Leo Tolstoy</p>
43.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
43.2 +++ b/quotes/quote22.html Thu May 27 13:10:09 2010 +0200
43.3 @@ -0,0 +1,2 @@
43.4 +<p>"Everything that I understand, I understand only because I love."</p>
43.5 +<p class="align-right">- Leo Tolstoy</p>
44.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
44.2 +++ b/quotes/quote23.html Thu May 27 13:10:09 2010 +0200
44.3 @@ -0,0 +1,2 @@
44.4 +<p>"Everyone thinks of changing the world, but no one thinks of changing himself."</p>
44.5 +<p class="align-right">- Leo Tolstoy</p>
45.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
45.2 +++ b/quotes/quote24.html Thu May 27 13:10:09 2010 +0200
45.3 @@ -0,0 +1,2 @@
45.4 +<p>"Nobody realizes that some people expend tremendous energy merely to be normal."</p>
45.5 +<p class="align-right">- Albert Camus</p>
46.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
46.2 +++ b/quotes/quote25.html Thu May 27 13:10:09 2010 +0200
46.3 @@ -0,0 +1,1 @@
46.4 +<p>"It is the mark of an educated mind to be able to entertain a thought without accepting it." </p><p class="align-right">- Aristotle</p>
46.5 \ No newline at end of file
47.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
47.2 +++ b/quotes/quote26.html Thu May 27 13:10:09 2010 +0200
47.3 @@ -0,0 +1,1 @@
47.4 +<p>"Time crumbles things; everything grows old under the power of Time and is forgotten through the lapse of Time." </p><p class="align-right">- Aristotle</p>
47.5 \ No newline at end of file
48.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
48.2 +++ b/quotes/quote27.html Thu May 27 13:10:09 2010 +0200
48.3 @@ -0,0 +1,1 @@
48.4 +<p>"It is the nature of desire not to be satisfied, and most men live only for the gratification of it." </p><p class="align-right">- Aritotle</p>
48.5 \ No newline at end of file
49.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
49.2 +++ b/quotes/quote28.html Thu May 27 13:10:09 2010 +0200
49.3 @@ -0,0 +1,1 @@
49.4 +<p>"Nothing is easier than to denounce the evildoer; nothing is more difficult than to understand him." </p><p class="align-right">- Fyodor Dostoevsky</p>
49.5 \ No newline at end of file
50.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
50.2 +++ b/quotes/quote29.html Thu May 27 13:10:09 2010 +0200
50.3 @@ -0,0 +1,1 @@
50.4 +<p>"Computer science is no more about computers than astronomy is about telescopes." </p><p class="align-right">- Dijkstra</p>
51.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
51.2 +++ b/quotes/quote3.html Thu May 27 13:10:09 2010 +0200
51.3 @@ -0,0 +1,2 @@
51.4 +<p>"A day without laughter is a day wasted."</p>
51.5 +<p class="align-right">- Charlie Chaplin</p>
51.6 \ No newline at end of file
52.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
52.2 +++ b/quotes/quote30.html Thu May 27 13:10:09 2010 +0200
52.3 @@ -0,0 +1,1 @@
52.4 +<p>"I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image." </p><p class="align-right">- Stephen Hawking</p>
52.5 \ No newline at end of file
53.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
53.2 +++ b/quotes/quote31.html Thu May 27 13:10:09 2010 +0200
53.3 @@ -0,0 +1,1 @@
53.4 +<p>"If you would thoroughly know anything, teach it to others." </p><p class="align-right">- Tryon Edwards</p>
54.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
54.2 +++ b/quotes/quote32.html Thu May 27 13:10:09 2010 +0200
54.3 @@ -0,0 +1,1 @@
54.4 +<p>"Any sufficiently advanced technology is indistinguishable from magic." </p><p class="align-right">- Arthur Clarke</p>
54.5 \ No newline at end of file
55.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
55.2 +++ b/quotes/quote4.html Thu May 27 13:10:09 2010 +0200
55.3 @@ -0,0 +1,3 @@
55.4 +<p>"Any fool can make things bigger, more complex, and more violent.
55.5 +It takes a touch of genius - and a lot of courage - to move in the opposite direction."</p>
55.6 +<p class="align-right">- Albert Einstein</p>
55.7 \ No newline at end of file
56.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
56.2 +++ b/quotes/quote5.html Thu May 27 13:10:09 2010 +0200
56.3 @@ -0,0 +1,2 @@
56.4 +<p>"Any man who reads too much and uses his own brain too little falls into lazy habits of thinking."</p>
56.5 +<p class="align-right">- Albert Einstein</p>
56.6 \ No newline at end of file
57.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
57.2 +++ b/quotes/quote6.html Thu May 27 13:10:09 2010 +0200
57.3 @@ -0,0 +1,2 @@
57.4 +<p>"Everything should be made as simple as possible, but not simpler."</p>
57.5 +<p class="align-right">- Albert Einstein</p>
57.6 \ No newline at end of file
58.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
58.2 +++ b/quotes/quote7.html Thu May 27 13:10:09 2010 +0200
58.3 @@ -0,0 +1,2 @@
58.4 +<p>"Everything that can be counted does not necessarily count; everything that counts cannot necessarily be counted."</p>
58.5 +<p class="align-right">- Albert Einstein</p>
58.6 \ No newline at end of file
59.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
59.2 +++ b/quotes/quote8.html Thu May 27 13:10:09 2010 +0200
59.3 @@ -0,0 +1,2 @@
59.4 +<p>"Only a life lived for others is a life worthwhile."</p>
59.5 +<p class="align-right">- Albert Einstein</p>
59.6 \ No newline at end of file
60.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
60.2 +++ b/quotes/quote9.html Thu May 27 13:10:09 2010 +0200
60.3 @@ -0,0 +1,2 @@
60.4 +<p>"Reading, after a certain age, diverts the mind too much from its creative pursuits. Any man who reads too much and uses his own brain too little falls into lazy habits of thinking."</p>
60.5 +<p class="align-right">- Albert Einstein</p>
60.6 \ No newline at end of file
61.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
61.2 +++ b/quotes/update_count.py.corrupt Thu May 27 13:10:09 2010 +0200
61.3 @@ -0,0 +1,31 @@
61.4 +#!/usr/bin/python
61.5 +
61.6 +import sys
61.7 +import subprocess
61.8 +from subprocess import PIPE
61.9 +
61.10 +SCRIPT_FILE = "../script.js"
61.11 +
61.12 +if __name__ == "__main__":
61.13 + quote_num = int(subprocess.Popen("ls quote*.html | wc -l", shell=True, stdout=PIPE).communicate()[0])
61.14 + file = open(SCRIPT_FILE, "r")
61.15 + s = []
61.16 + try:
61.17 + s = file.readlines()
61.18 + finally:
61.19 + file.close()
61.20 + print s
61.21 + sys.exit()
61.22 + if len(s) > 0:
61.23 + file = open(SCRIPT_FILE, "w")
61.24 + try:
61.25 + for line in s:
61.26 + print line
61.27 + if "var QUOTE_NUMBER" in line:
61.28 + print "replacing:" + line
61.29 + line = "var QUOTE_NUMBER = %s" % str(quote_num)
61.30 + file.write(s)
61.31 + finally:
61.32 + file.close()
61.33 +
61.34 +
62.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
62.2 +++ b/resume.html Thu May 27 13:10:09 2010 +0200
62.3 @@ -0,0 +1,113 @@
62.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
62.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
62.6 +
62.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
62.8 +<meta name="author" content="Eugen Sawin - me73.com" />
62.9 +<meta name="description" content="A Digital Playground" />
62.10 +<meta name="robots" content="index, follow, noarchive" />
62.11 +<meta name="googlebot" content="noarchive" />
62.12 +<script src="script.js" type="text/javascript"></script>
62.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
62.14 +
62.15 +<body>
62.16 +<div id="wrap">
62.17 + <div id="header">
62.18 + <h1 id="logo-text"><a href="index.html" title="">ME73</a></h1>
62.19 + <p id="intro">A Programmer's Digital Playground.</p>
62.20 + <div id="nav">
62.21 + <ul>
62.22 + <li><a href="index.html">Home</a></li>
62.23 + <li><a href="resume.html">Resume</a></li>
62.24 + <li><a href="howiwork.html">How I Work</a></li>
62.25 + <li><a href="personalwork.html">Personal Work</a></li>
62.26 + <li><a href="books.html">Books</a></li>
62.27 + <li><a href="links.html">Links</a></li>
62.28 + <li><a href="contact.html">Contact</a></li>
62.29 + </ul>
62.30 + </div>
62.31 + </div>
62.32 + <div id="content-wrap">
62.33 + <div id="main">
62.34 +
62.35 +<h2>Professional Experience</h2>
62.36 +<ul>
62.37 +<li><h4>Software Engineer, Comsoft GmbH, since 2010</h4>
62.38 +Development of safety-critical back end systems for the ATC domain.
62.39 +</li>
62.40 +</ul>
62.41 +<h2>Accompanying the Studies</h2>
62.42 +<ul>
62.43 +<li><h4>Bachelor Thesis, Comsoft GmbH, 2009-2010</h4>
62.44 +"Flexible Modeling of Dynamic Air Space Constraints and its Application in Departure Flow Optimisation"
62.45 +</li>
62.46 +<li><h4>Working Student & Internship, Comsoft GmbH, 2008-2009</h4>
62.47 +Development of software and driver for safety-critical embedded systems.
62.48 +</li>
62.49 +<li>
62.50 +<h4>Student Assistant, University of Applied Sciences Offenburg, 2008</h4>
62.51 +Assistance at a university course for object-oriented software development.</li>
62.52 +<li><h4>University Project, University of Applied Sciences Offenburg & Karlsruhe Institute of Technology, 2008</h4>
62.53 +Development of a client for 3D data streaming and visualisation. </li>
62.54 +<li><h4>University Project, University Karlsruhe, 2006</h4>
62.55 +Development of a multi-discipline scheduler.
62.56 +</ul>
62.57 +<ul>
62.58 +</ul>
62.59 +<h2>Education</h2>
62.60 +<ul>
62.61 +<li>
62.62 +<h4>University of Applied Sciences Offenburg, 2007-2010</h4>
62.63 +B. Sc. in Computer Science.<br />
62.64 +Emphasis in Distributed Systems and Artificial Intelligence.</li>
62.65 +</ul>
62.66 +<ul>
62.67 +<li>
62.68 +<h4>University Karlsruhe, 2003-2007</h4>
62.69 +Diplom in Informatics, 6 semesters.</li>
62.70 +</ul>
62.71 +
62.72 +
62.73 +
62.74 + </div>
62.75 + <div id="sidebar">
62.76 + <!--<h3>About</h3> -->
62.77 + <p>
62.78 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64" />
62.79 + ME73 is my digital playground.
62.80 + I'm a programmer, a student of computer science, a music enthusiast.
62.81 + This site serves as a portfolio for my work, private and professional.
62.82 + </p>
62.83 + <h3></h3>
62.84 + <div id="random_quote"></div>
62.85 + </div>
62.86 + </div>
62.87 + <!--<div id="footer"></div>-->
62.88 + <div id="footer">
62.89 + <div id="footer-left">
62.90 + <p>
62.91 + <!--© ME73.COM -->
62.92 + <a href="http://creativecommons.org/licenses/by/3.0/"><img src="images/cc.png" alt="CC" style="float:left"></a>
62.93 + Except where otherwise noted, content on this site is licensed under a <a href="http://creativecommons.org/licenses/by/3.0">Creative Commons Attribution 3.0 License.</a> Site Design is based on a template by <a href="http://www.styleshout.com/">Styleshout.</a>
62.94 + </p>
62.95 + </div>
62.96 +
62.97 + <div id="footer-right">
62.98 + <p class="align-right">
62.99 + <a href="index.html">Home</a> | <a href="#top">Top</a> | <a href="rssfeed.xml" class="rssfeed">RSS</a>
62.100 + </p>
62.101 + </div>
62.102 +</div>
62.103 +</div>
62.104 +<script type="text/javascript">
62.105 + javascript:load_random_quote();
62.106 + //javascript:load_footer();
62.107 +</script>
62.108 +<script type="text/javascript">
62.109 +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
62.110 +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
62.111 +</script>
62.112 +<script type="text/javascript">
62.113 +var pageTracker = _gat._getTracker("UA-2137333-1");
62.114 +pageTracker._trackPageview();
62.115 +</script>
62.116 +</body></html>
63.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
63.2 +++ b/robots.txt Thu May 27 13:10:09 2010 +0200
63.3 @@ -0,0 +1,5 @@
63.4 +User-Agent: *
63.5 +Allow: /
63.6 +
63.7 +
63.8 +
64.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
64.2 +++ b/script.js Thu May 27 13:10:09 2010 +0200
64.3 @@ -0,0 +1,139 @@
64.4 +var QUOTES_NUMBER = 32;
64.5 +
64.6 +function load_page(html, params)
64.7 +{
64.8 + if (params != "")
64.9 + html += "?";
64.10 + window.location = html + params;
64.11 + //window.location.reload();
64.12 +}
64.13 +
64.14 +function google_an1()
64.15 +{
64.16 + var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
64.17 + document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
64.18 +}
64.19 +
64.20 +function google_an2()
64.21 +{
64.22 + var pageTracker = _gat._getTracker("UA-2137333-1");
64.23 + pageTracker._initData();
64.24 + pageTracker._trackPageview();
64.25 +}
64.26 +
64.27 +function google_an()
64.28 +{
64.29 + google_an1();
64.30 + if (typeof(_gat) == "object")
64.31 + google_an2();
64.32 +}
64.33 +
64.34 +function http_request_object()
64.35 +{
64.36 + var xmlHttpObject = null;
64.37 +
64.38 + if (typeof(XMLHttpRequest) != "undefined")
64.39 + {
64.40 + xmlHttpObject = new XMLHttpRequest();
64.41 + }
64.42 +
64.43 + //For IE6 and IE5
64.44 + if (xmlHttpObject == null)
64.45 + {
64.46 + try
64.47 + {
64.48 + xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
64.49 + }
64.50 + catch(e)
64.51 + {
64.52 + try
64.53 + {
64.54 + xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
64.55 + }
64.56 + catch(e)
64.57 + {
64.58 + xmlHttpObject = null;
64.59 + }
64.60 + }
64.61 + }
64.62 + return xmlHttpObject;
64.63 +}
64.64 +
64.65 +function load_header(current)
64.66 +{
64.67 + var file;
64.68 + if (current == "home")
64.69 + file = "/homenav.html";
64.70 + else if (current == "resume")
64.71 + file = "/resumenav.html";
64.72 + else if (current == "howiwork")
64.73 + file = "/howiworknav.html";
64.74 + else if (current == "personalwork")
64.75 + file = "/personalworknav.html";
64.76 + else if (current == "tutorials")
64.77 + file = "/tutorialsnav.html";
64.78 + else if (current == "contact")
64.79 + file = "/contactnav.html";
64.80 +
64.81 + var currentFile = self.location.hostname + self.location.pathname;
64.82 + var request = http_request_object();
64.83 + var url = "http://" + self.location.hostname + file;
64.84 + request.open("GET", url, false);
64.85 + request.setRequestHeader("User-Agent", navigator.userAgent);
64.86 + request.send(null)
64.87 + // if (oRequest.status == 200) alert(oRequest.responseText);
64.88 + // else alert("Error executing XMLHttpRequest call!");
64.89 + //document.write(url);
64.90 + document.getElementById('header').innerHTML = request.responseText;
64.91 + //document.write(request.responseText);
64.92 +
64.93 + //alert(request.responseText);
64.94 +}
64.95 +
64.96 +function load_sidebar()
64.97 +{
64.98 + var file = "/sidebar.html";
64.99 + var currentFile = self.location.hostname + self.location.pathname;
64.100 + var request = http_request_object();
64.101 + var url = "http://" + self.location.hostname + file;
64.102 + request.open("GET", url, false);
64.103 + request.setRequestHeader("User-Agent", navigator.userAgent);
64.104 + request.send(null)
64.105 + // if (oRequest.status == 200) alert(oRequest.responseText);
64.106 + // else alert("Error executing XMLHttpRequest call!");
64.107 + //document.write(url);
64.108 + //document.write(request.responseText);
64.109 + document.getElementById('sidebar').innerHTML = request.responseText;
64.110 +}
64.111 +
64.112 +function load_random_quote()
64.113 +{
64.114 + var file = "/quotes/quote" + Math.floor(Math.random() * QUOTES_NUMBER + 1) + ".html";
64.115 + var currentFile = self.location.hostname + self.location.pathname;
64.116 + var request = http_request_object();
64.117 + var url = "http://" + self.location.hostname + file;
64.118 + request.open("GET", url, false);
64.119 + request.setRequestHeader("User-Agent", navigator.userAgent);
64.120 + request.send(null)
64.121 + // if (oRequest.status == 200) alert(oRequest.responseText);
64.122 + // else alert("Error executing XMLHttpRequest call!");
64.123 + //document.write(url);
64.124 + //document.write(request.responseText);
64.125 + document.getElementById('random_quote').innerHTML = request.responseText;
64.126 +}
64.127 +
64.128 +function load_footer()
64.129 +{
64.130 + var file = "/footer.html";
64.131 + var currentFile = self.location.hostname + self.location.pathname;
64.132 + var request = http_request_object();
64.133 + var url = "http://" + self.location.hostname + file;
64.134 + request.open("GET", url, false);
64.135 + request.setRequestHeader("User-Agent", navigator.userAgent);
64.136 + request.send(null)
64.137 + // if (oRequest.status == 200) alert(oRequest.responseText);
64.138 + // else alert("Error executing XMLHttpRequest call!");
64.139 + //document.write(url);
64.140 + //document.write(request.responseText);
64.141 + document.getElementById('footer').innerHTML = request.responseText;
64.142 +}
65.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
65.2 +++ b/sidebar.html Thu May 27 13:10:09 2010 +0200
65.3 @@ -0,0 +1,13 @@
65.4 +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
65.5 +<html><head></head><body><div id="sidebar">
65.6 + <h3>About</h3>
65.7 + <p>
65.8 + <img src="images/me2.png" alt="me" class="float-left" height="64" width="64">
65.9 + ME73 is my digital playground. I'm a programmer, a student of computer science, a music enthusiast.
65.10 + I'm interested in sciences including physics and astronomy and like anything related to artificial intelligence,
65.11 + distributed systems and digital image processing.
65.12 + This site serves as a portfolio for my work, private and professional.
65.13 + </p>
65.14 + <h3><br></h3>
65.15 + <div id="random_quote"></div>
65.16 +</div></body></html>
66.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
66.2 +++ b/thesis.txt Thu May 27 13:10:09 2010 +0200
66.3 @@ -0,0 +1,58 @@
66.4 +Diploma/Master's Thesis in Computer Science
66.5 +
66.6 +Supervisor: Dr. Stephan Schulz, stephan.schulz@comsoft.de
66.7 + Dr. Marina Müller, marina.mueller@comsoft.de
66.8 +
66.9 +"An Explicit Rule Language to Express Safety Constraints for
66.10 + Minimum Safe Altitude and Area Proximity Warnings"
66.11 +
66.12 +Safety Net applications are computer programs that monitor the air
66.13 +situation based on data from sensors (radars, multilateration, ADS-B)
66.14 +or, more often, tracker systems that integrate data from sensors over
66.15 +time. These programs try to predict critical situations and alarm ATC
66.16 +controllers ahead of time. Examples include Short Term Conflict Alert
66.17 +(STCA) systems, Minimum Safe Altitude Warning (MSAW) systems, and Area
66.18 +Proximity Warning (APW) systems. STCA systems predict the flight paths
66.19 +of different aircraft and issue a warning up to two minutes ahead of a
66.20 +potential separation violation. MSAW and APW systems predict single
66.21 +aircraft trajectories and issue a warning if there is a significant
66.22 +risk that the aircraft comes too close to a terrain feature,
66.23 +obstacle, or prohibited region.
66.24 +
66.25 +While the basic trajectory prediction is always based on the same
66.26 +principles, the generation of warning messages is highly dependent on
66.27 +local conditions. The quality of the sensor coverage dictates aircraft
66.28 +separation rules. Local geography may require trajectories that would
66.29 +normally be avoided. Availability of flight plan information can help
66.30 +to recognize potentially dangerous situations as already anticipated
66.31 +and under control. As an example, if a flight plan contains a cleared
66.32 +altitude of 300 flight levels, the aircraft is expected to level off
66.33 +its ascent there, and hence will not conflict with an aircraft at an
66.34 +altitude of 320 flight levels, even if a naive projection based on the
66.35 +current rate of ascent does indicate a potential conflict.
66.36 +
66.37 +Currently, Safety Net systems use standard requirement engineering to
66.38 +identify the necessary conditions for each particular
66.39 +deployment. These requirements are then translated manually into
66.40 +program code. However, this process is tedious and error-prone, and
66.41 +the resulting code can be rather complex and hard to maintain. Each
66.42 +modification requires extensive re-validation of the software.
66.43 +
66.44 +The aim of this thesis is the development and implementation of a
66.45 +language that can express the necessary conflict for an ATC Safety Net
66.46 +in symbolic, human-readable form. Depending on the outcome of an
66.47 +initial feasibility study, the language should be either interpreted
66.48 +by the Safety Net System, or automatically compiled into C++ code.
66.49 +
66.50 +For this purpose, first the necessary attributes and relations have to
66.51 +to be identified. Then a proper rule semantics (prioritised, weighted,
66.52 +non-monotonic/exception-based...) has to be determined, and finally an
66.53 +initial prototype language needs to be designed and implemented.
66.54 +
66.55 +----
66.56 +Comsoft is a medium-sized, privately owned company located in
66.57 +Karlsruhe/Durlach. We continually offer interesting diploma topics,
66.58 +practicals, and internships in computer science, signal processing,
66.59 +electrical engineering, and related topics. For generic enquiries
66.60 +please contact human resources at waltraud.schweitzer@comsoft.de.
66.61 +
67.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
67.2 +++ b/tutorials.html Thu May 27 13:10:09 2010 +0200
67.3 @@ -0,0 +1,41 @@
67.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
67.5 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
67.6 +
67.7 +<title>ME73 - A Digital Playground</title><meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
67.8 +<meta name="author" content="Eugen Sawin - me73.com" />
67.9 +<meta name="description" content="A Digital Playground" />
67.10 +<meta name="robots" content="index, follow, noarchive" />
67.11 +<meta name="googlebot" content="noarchive" />
67.12 +<script src="script.js" type="text/javascript"></script>
67.13 +<link rel="stylesheet" href="dark.css" type="text/css" /></head>
67.14 +
67.15 +<body>
67.16 +<div id="wrap">
67.17 + <div id="header"></div>
67.18 + <div id="content-wrap">
67.19 + <div id="main">
67.20 + <h2>Where Are The Old Tutorials?</h2>
67.21 + <img src="images/questionmark.png" alt="questionmark" class="float-right" height="100" width="100" />
67.22 + <p>Despite the elementary nature of my tutorials, they've created a suprisingly steady stream
67.23 + of traffic for my site. </p><p>Today,
67.24 +I believe that tutorials can cause more harm than solve problems.
67.25 +A tutorial will not replace a well done research, a good book and
67.26 +proper education. It will, however, in many cases promote quick and
67.27 +often unsafe solutions without a real understanding of the underlying
67.28 +material.</p><br /><p class="postmeta">
67.29 + <a href="mailto:esawin@gmail.com?subject=Comment%20on%20tutorials" class="comments">Comment</a> <span class="date">May 9, 2009</span>
67.30 + </p>
67.31 + </div>
67.32 + <div id="sidebar"></div>
67.33 + </div>
67.34 + <div id="footer"></div>
67.35 +</div>
67.36 +
67.37 +<script type="text/javascript">
67.38 + javascript:load_header("tutorials");
67.39 + javascript:load_sidebar();
67.40 + javascript:load_footer();
67.41 + javascript:load_random_quote();
67.42 + javascript:google_an();
67.43 +</script>
67.44 +</body></html>
67.45 \ No newline at end of file