sawine@73
|
1 |
<!DOCTYPE html>
|
sawine@73
|
2 |
<html lang="en">
|
sawine@73
|
3 |
<head>
|
sawine@73
|
4 |
<title>ME73</title>
|
sawine@73
|
5 |
<meta name="author" content="Eugen Sawin <sawine@me73.com>" />
|
sawine@73
|
6 |
<meta name="description" content="A Digital Playground" />
|
sawine@73
|
7 |
<meta name="robots" content="index, follow, noarchive" />
|
sawine@73
|
8 |
<meta name="googlebot" content="noarchive" />
|
sawine@73
|
9 |
<script src="jquery.js"></script>
|
sawine@73
|
10 |
<script src="script.js"></script>
|
sawine@73
|
11 |
<link rel="stylesheet" href="dark.css" type="text/css" />
|
sawine@73
|
12 |
<script type="application/javascript">
|
sawine@73
|
13 |
var _gaq = _gaq || [];
|
sawine@73
|
14 |
_gaq.push(['_setAccount', 'UA-2137333-1']);
|
sawine@73
|
15 |
_gaq.push(['_trackPageview']);
|
sawine@73
|
16 |
(function() {
|
sawine@73
|
17 |
var ga = document.createElement('script'); ga.type = 'text/javascript';
|
sawine@73
|
18 |
ga.async = true;
|
sawine@73
|
19 |
ga.src = ('https:' == document.location.protocol ? 'https://ssl' :'http://www')
|
sawine@73
|
20 |
+ '.google-analytics.com/ga.js';
|
sawine@73
|
21 |
var s = document.getElementsByTagName('script')[0];
|
sawine@73
|
22 |
s.parentNode.insertBefore(ga, s);
|
sawine@73
|
23 |
})();
|
sawine@73
|
24 |
</script>
|
sawine@73
|
25 |
</head>
|
sawine@73
|
26 |
<body>
|
sawine@73
|
27 |
<div id="wrap">
|
sawine@73
|
28 |
<div id="header">
|
sawine@73
|
29 |
<canvas id="logo">
|
sawine@73
|
30 |
FIND A BETTER BROWSER
|
sawine@78
|
31 |
</canvas>
|
sawine@78
|
32 |
<canvas id="sim">
|
sawine@78
|
33 |
</canvas>
|
sawine@73
|
34 |
</div>
|
sawine@73
|
35 |
<div id="content-wrap">
|
sawine@73
|
36 |
<div id="main">
|
sawine@73
|
37 |
<p>Here is an unfiltered, undocumented, user-unfriendly random stack of little hacks, that I've produced for recreational reasons. I put them online in spirit of the liberation of useless machines.</p>
|
sawine@73
|
38 |
|
sawine@73
|
39 |
<h2><a name="tim">Tim</a></h2>
|
sawine@73
|
40 |
<ul>
|
sawine@73
|
41 |
<li>
|
sawine@73
|
42 |
<h4>Description</h4>
|
sawine@73
|
43 |
A console-based head-on time recording tool, because time is money.</li>
|
sawine@73
|
44 |
<li>
|
sawine@73
|
45 |
<h4>Version</h4>
|
sawine@73
|
46 |
A stable prototype, no output generation yet.
|
sawine@73
|
47 |
<div class="download"><a href="downloads/tim.zip">
|
sawine@73
|
48 |
Download Tim (Python and SQLite3 required)</a></div></li>
|
sawine@73
|
49 |
</ul>
|
sawine@73
|
50 |
|
sawine@73
|
51 |
<h2><a name="cau">Cau</a></h2>
|
sawine@73
|
52 |
<img src="images/cau.png" alt="cau screenshot" class="float-right" height="150" width="200" />
|
sawine@73
|
53 |
<ul>
|
sawine@73
|
54 |
<li>
|
sawine@73
|
55 |
<h4>Description</h4>
|
sawine@73
|
56 |
Is bad PI-approximation good enough? A cellular automaton-based PI-approximation machine with Tkinter-based visualisation.</li>
|
sawine@73
|
57 |
<li>
|
sawine@73
|
58 |
<h4>Version</h4>
|
sawine@73
|
59 |
Working, approximating, slowly visualising.
|
sawine@73
|
60 |
<div class="download"><a href="downloads/cau.zip">
|
sawine@73
|
61 |
Download Cau (Python and Tkinter required)</a></div></li>
|
sawine@73
|
62 |
</ul>
|
sawine@73
|
63 |
|
sawine@73
|
64 |
<h2><a name="sml">SML</a></h2>
|
sawine@73
|
65 |
<ul>
|
sawine@73
|
66 |
<li>
|
sawine@73
|
67 |
<h4>Description</h4>
|
sawine@73
|
68 |
A simple Simple Modal Logic library doing all kinds of reductions including Modal Conjunctive Normal Form. It also features DIMACS output and a satisfiability test via MiniSat2.</li>
|
sawine@73
|
69 |
<li>
|
sawine@73
|
70 |
<h4>Version</h4>
|
sawine@73
|
71 |
Reliable version except for features noted as alpha. Parser has too much personality.
|
sawine@73
|
72 |
<div class="download"><a href="downloads/sml.zip">
|
sawine@73
|
73 |
Download SML (Python and MiniSat2 required)</a></div></li>
|
sawine@73
|
74 |
</ul>
|
sawine@73
|
75 |
|
sawine@73
|
76 |
<h2><a name="netchannel">NetChannel</a></h2>
|
sawine@73
|
77 |
<ul>
|
sawine@73
|
78 |
<li>
|
sawine@73
|
79 |
<h4>Description</h4>
|
sawine@73
|
80 |
NetChannel is a simple Python object for message-based network communication
|
sawine@73
|
81 |
on the TCP/IP stack. NetChannel is based on stateful sessions for improved performance.</li>
|
sawine@73
|
82 |
<li>
|
sawine@73
|
83 |
<h4>Version</h4>
|
sawine@73
|
84 |
A stable prototype.
|
sawine@73
|
85 |
<div class="download"><a href="downloads/netchannel.zip">
|
sawine@73
|
86 |
Download NetChannel (Python required)</a></div></li>
|
sawine@73
|
87 |
</ul>
|
sawine@73
|
88 |
|
sawine@73
|
89 |
<h2><a name="eden">Eden Plotter</a></h2>
|
sawine@73
|
90 |
<img src="images/edenplotters1.png" alt="eden plotter" class="float-right" height="150" width="200" />
|
sawine@73
|
91 |
<ul>
|
sawine@73
|
92 |
<li>
|
sawine@73
|
93 |
<h4>Description</h4>
|
sawine@73
|
94 |
Eden Plotter or Eden One is a quick prototype for my genetic programming routines.
|
sawine@73
|
95 |
It approximates a given function by the methods of GP.</li>
|
sawine@73
|
96 |
<li>
|
sawine@73
|
97 |
<h4>Version</h4>
|
sawine@73
|
98 |
An unendurable slow prototype.
|
sawine@73
|
99 |
<div class="download"><a href="downloads/eden.zip">
|
sawine@73
|
100 |
Download Eden Plotter (Python required)</a></div></li>
|
sawine@73
|
101 |
</ul>
|
sawine@73
|
102 |
|
sawine@73
|
103 |
<h2><a name="anq">ANQ</a></h2>
|
sawine@73
|
104 |
<ul>
|
sawine@73
|
105 |
<li>
|
sawine@73
|
106 |
<h4>Description</h4>
|
sawine@73
|
107 |
ANQ is a testing environment for distributed algorithms. It provides a
|
sawine@73
|
108 |
centralised and convenient way of organising runtime dynamic
|
sawine@73
|
109 |
topologies, gives full control over the initialisation and flow of the
|
sawine@73
|
110 |
algorithm and helps in tracking the current node states by visualising
|
sawine@73
|
111 |
the node reports on the OpenGL graph.</br>
|
sawine@73
|
112 |
ANQ builds on the ANQ Protocol which can be optionally extended on
|
sawine@73
|
113 |
special needs for the algorithm to be tested. The ANQ Master is written
|
sawine@73
|
114 |
in C# using Windows Forms and OpenGL. Observer, Hotbed and the example
|
sawine@73
|
115 |
Node were developed in Python.
|
sawine@73
|
116 |
</li>
|
sawine@73
|
117 |
</ul>
|
sawine@73
|
118 |
<img src="images/anqs3.png" alt="anq" class="float-right" height="130" width="200" />
|
sawine@73
|
119 |
<img src="images/anqs2.png" alt="anq" class="float-right" height="130" width="200" />
|
sawine@73
|
120 |
<ul>
|
sawine@73
|
121 |
<li>
|
sawine@73
|
122 |
<h4>Version Antquarium Prototype</h4>
|
sawine@73
|
123 |
Antquarium is the predecessor of ANQ. It was an extended course assignment and serves as a prototype for ANQ.
|
sawine@73
|
124 |
<div class="download"><a href="downloads/antquarium.zip">
|
sawine@73
|
125 |
Download Antquarium for Windows (Python and .Net 2.0 required)</a></div>
|
sawine@73
|
126 |
</li>
|
sawine@73
|
127 |
<li>
|
sawine@73
|
128 |
<h4>Version</h4>
|
sawine@73
|
129 |
Stable version missing features like flow and runtime topology control.
|
sawine@73
|
130 |
</li>
|
sawine@73
|
131 |
</ul>
|
sawine@73
|
132 |
|
sawine@73
|
133 |
<h2><a name="theme_blocks">Theme Blocks</a></h2>
|
sawine@73
|
134 |
<img src="images/themeblockss1.png" alt="theme blocks" class="float-right" height="150" width="200" />
|
sawine@73
|
135 |
<ul>
|
sawine@73
|
136 |
<li>
|
sawine@73
|
137 |
<h4>Gameplay</h4>
|
sawine@73
|
138 |
A traditional gameplay most people will be familiar with.
|
sawine@73
|
139 |
You have blocks falling down, you have a highscore.
|
sawine@73
|
140 |
</li>
|
sawine@73
|
141 |
<li>
|
sawine@73
|
142 |
<h4>Features</h4>
|
sawine@73
|
143 |
<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>
|
sawine@73
|
144 |
</li>
|
sawine@73
|
145 |
<li>
|
sawine@73
|
146 |
<h4>Requirements</h4>
|
sawine@73
|
147 |
<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>
|
sawine@73
|
148 |
<div class="download"><a href="downloads/ThemeBlocksSetup.exe">Download Theme Blocks (1.4MB)</a></div>
|
sawine@73
|
149 |
</li>
|
sawine@73
|
150 |
</ul>
|
sawine@73
|
151 |
|
sawine@73
|
152 |
<h2><a name="pyng_pong">Pyng Pong</a></h2>
|
sawine@73
|
153 |
<img src="images/pyngpongs1.png" alt="pyng pong screenshot" class="float-right" height="149" width="200" />
|
sawine@73
|
154 |
<ul>
|
sawine@73
|
155 |
<li>
|
sawine@73
|
156 |
<h4>Gameplay</h4>
|
sawine@73
|
157 |
Two bats, one ball...
|
sawine@73
|
158 |
</li>
|
sawine@73
|
159 |
<li>
|
sawine@73
|
160 |
<h4>Features</h4>
|
sawine@73
|
161 |
<ul><li>Three AI difficulty levels</li><li>Endless gameplay, play till you're bored!</li></ul>
|
sawine@73
|
162 |
<div class="download"><a href="downloads/PyngPongSetup.exe">
|
sawine@73
|
163 |
Download Pyng Pong for Windows (2.4MB)</a></div>
|
sawine@73
|
164 |
<div class="download"><a href="downloads/pyngpong.zip">
|
sawine@73
|
165 |
Download Pyng Pong Source (Python + PyGame needed) (0.4MB)</a></div>
|
sawine@73
|
166 |
</li>
|
sawine@73
|
167 |
</ul>
|
sawine@73
|
168 |
|
sawine@73
|
169 |
<h2><a name="klangbild">Klangbild</a></h2>
|
sawine@73
|
170 |
<img src="images/klangbilds1.png" alt="klangbild" class="float-right" height="150" width="200" />
|
sawine@73
|
171 |
<ul>
|
sawine@73
|
172 |
<li>
|
sawine@73
|
173 |
<h4>Gameplay</h4>
|
sawine@73
|
174 |
There is no gameplay yet, it's a prototype for an audio-visual puzzle game.
|
sawine@73
|
175 |
</li>
|
sawine@73
|
176 |
<li>
|
sawine@73
|
177 |
<h4>Features</h4>
|
sawine@73
|
178 |
<ul><li>Drag, create and remove sound sources</li><li>Height of placement sets the sound pitch</li></ul>
|
sawine@73
|
179 |
<div class="download"><a href="downloads/klangbild.zip">
|
sawine@73
|
180 |
Download Klangbild (Python and PyGlet required)</a></div>
|
sawine@73
|
181 |
</li></ul>
|
sawine@73
|
182 |
|
sawine@73
|
183 |
|
sawine@73
|
184 |
</div>
|
sawine@73
|
185 |
<div id="sidebar">
|
sawine@74
|
186 |
<p>
|
sawine@80
|
187 |
<a href="resume.html" class="float-left"></a>
|
sawine@80
|
188 |
I'm a programmer,<br />
|
sawine@73
|
189 |
a student of computer science,<br />
|
sawine@73
|
190 |
a music enthusiast.<br />
|
sawine@73
|
191 |
This is my site.
|
sawine@73
|
192 |
</p>
|
sawine@73
|
193 |
<div id="random_quote"></div>
|
sawine@73
|
194 |
</div>
|
sawine@73
|
195 |
</div>
|
sawine@73
|
196 |
<div id="footer">
|
sawine@73
|
197 |
<div id="footer-left">
|
sawine@73
|
198 |
<p>
|
sawine@73
|
199 |
<a href="mailto:sawine@me73.com">
|
sawine@73
|
200 |
Eugen Sawin<br/>Software Enginnering & Research</a>
|
sawine@73
|
201 |
</p>
|
sawine@73
|
202 |
</div>
|
sawine@73
|
203 |
<div id="footer-right">
|
sawine@73
|
204 |
<p class="align-right">
|
sawine@73
|
205 |
<a href="index.html">Home</a> | <a href="#top">Top</a>
|
sawine@73
|
206 |
</p>
|
sawine@73
|
207 |
</div>
|
sawine@73
|
208 |
</div>
|
sawine@73
|
209 |
</div>
|
sawine@73
|
210 |
<script type="application/javascript">
|
sawine@73
|
211 |
javascript:load_random_quote();
|
sawine@73
|
212 |
</script>
|
sawine@73
|
213 |
</body>
|
sawine@73
|
214 |
</html>
|
sawine@73
|
215 |
|