ME73 init.
authorEugen Sawin <sawine@me73.com>
Thu, 27 May 2010 13:10:09 +0200
changeset 0d9b71931f372
child 1 9141a1dbd3c9
ME73 init.
backup.script.js
books.html
contact.html
create_quote.py
dark.css
factory/create_page
factory/frame.html
factory/makefile
factory/v2010/books.html
factory/v2010/contact.html
factory/v2010/footer.html
factory/v2010/headerlogo.html
factory/v2010/howiwork.html
factory/v2010/index.html
factory/v2010/links.html
factory/v2010/news.html
factory/v2010/personalwork.html
factory/v2010/resume.html
factory/v2010/sidebar.html
factory/v2010/tutorials.html
footer.html
headerlogo.html
howiwork.html
index.html
kex.txt
links.html
personalwork.html
quotes/create_quote.py
quotes/quote1.html
quotes/quote10.html
quotes/quote11.html
quotes/quote12.html
quotes/quote13.html
quotes/quote14.html
quotes/quote15.html
quotes/quote16.html
quotes/quote17.html
quotes/quote18.html
quotes/quote19.html
quotes/quote2.html
quotes/quote20.html
quotes/quote21.html
quotes/quote22.html
quotes/quote23.html
quotes/quote24.html
quotes/quote25.html
quotes/quote26.html
quotes/quote27.html
quotes/quote28.html
quotes/quote29.html
quotes/quote3.html
quotes/quote30.html
quotes/quote31.html
quotes/quote32.html
quotes/quote4.html
quotes/quote5.html
quotes/quote6.html
quotes/quote7.html
quotes/quote8.html
quotes/quote9.html
quotes/update_count.py.corrupt
resume.html
robots.txt
script.js
sidebar.html
thesis.txt
tutorials.html
     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 +		<!--&copy; ME73.COM&nbsp; 	-->
    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 +		<!--&copy; ME73.COM&nbsp; 	-->
    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>&quot;%s&quot; </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 +		<!--&copy; ME73.COM&nbsp; 	-->
    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 +		<!--&copy; ME73.COM&nbsp; 	-->
    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.&nbsp;&nbsp;</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.&nbsp;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.&nbsp;</p><p>Today,
   20.24 +I believe that tutorials can cause more harm than solve&nbsp;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 +		<!--&copy; ME73.COM&nbsp; 	-->
    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 +		<!--&copy; ME73.COM&nbsp; 	-->
  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 +		<!--&copy; ME73.COM&nbsp; 	-->
   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 +		<!--&copy; ME73.COM&nbsp; 	-->
   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 +		<!--&copy; ME73.COM&nbsp; 	-->
  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>&quot;%s&quot; </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>&quot;To be yourself in a world that is constantly trying to make you 
    29.5 +	  something else is the greatest accomplishment.&quot; </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>&quot;That deep emotional conviction of the presence of a superior reasoning power, which is revealed in the incomprehensible universe, forms my idea of God.&quot;</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>&quot;The monotony and solitude of a quiet life stimulates the creative mind.&quot;</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>&quot;The only thing that interferes with my learning is my education.&quot;</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>&quot;The secret to creativity is knowing how to hide your sources.&quot;</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>&quot;We should take care not to make the intellect our god; it has, of course, powerful muscles, but no personality.&quot;</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>&quot;I love to travel, but hate to arrive.&quot;</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>&quot;It is the mark of an educated mind to be able to entertain a thought without accepting it.&quot; </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>&quot;Pleasure in the job puts perfection in the work.&quot;</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>&quot;For the things we have to learn before we can do them, we learn by doing them.&quot;</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>&quot;In all things of nature there is something of the marvelous.&quot;</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>&quot;Life is a tragedy when seen in close-up, but a comedy in long-shot.&quot;</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>&quot;Nature does nothing uselessly.&quot;</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>&quot;In the name of God, stop a moment, cease your work, look around you.&quot;</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>&quot;Everything that I understand, I understand only because I love.&quot;</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>&quot;Everyone thinks of changing the world, but no one thinks of changing himself.&quot;</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>&quot;Nobody realizes that some people expend tremendous energy merely to be normal.&quot;</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>&quot;It is the mark of an educated mind to be able to entertain a thought without accepting it.&quot; </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>&quot;Time crumbles things; everything grows old under the power of Time and is forgotten through the lapse of Time.&quot; </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>&quot;It is the nature of desire not to be satisfied, and most men live only for the gratification of it.&quot; </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>&quot;Nothing is easier than to denounce the evildoer; nothing is more difficult than to understand him.&quot; </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>&quot;Computer science is no more about computers than astronomy is about telescopes.&quot; </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>&quot;A day without laughter is a day wasted.&quot;</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>&quot;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.&quot; </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>&quot;If you would thoroughly know anything, teach it to others.&quot; </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>&quot;Any sufficiently advanced technology is indistinguishable from magic.&quot; </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>&quot;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.&quot;</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>&quot;Any man who reads too much and uses his own brain too little falls into lazy habits of thinking.&quot;</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>&quot;Everything should be made as simple as possible, but not simpler.&quot;</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>&quot;Everything that can be counted does not necessarily count; everything that counts cannot necessarily be counted.&quot;</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>&quot;Only a life lived for others is a life worthwhile.&quot;</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>&quot;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.&quot;</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 +		<!--&copy; ME73.COM&nbsp; 	-->
   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.&nbsp;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.&nbsp;</p><p>Today,
   67.24 +I believe that tutorials can cause more harm than solve&nbsp;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