<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-15658277</id><updated>2012-02-03T16:19:52.417-06:00</updated><category term='Tango OpenDb'/><category term='civilization test of time chronicles'/><category term='Changeblog'/><title type='text'>Changeblog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-15658277.post-978039919680009817</id><published>2012-02-03T16:01:00.001-06:00</published><updated>2012-02-03T16:19:52.428-06:00</updated><title type='text'>Jenkins User Import/Export</title><content type='html'>For work I had to whip up something quick to import and export users from &lt;a href="http://jenkins-ci.org/"&gt;Jenkins&lt;/a&gt;. Here's the export script:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;# This should be changed to your system's jenkins rootJENKINS_ROOT="/var/lib/jenkins"&lt;br /&gt;JENKINS_USERS="$JENKINS_ROOT/users"&lt;br /&gt;JENKINS_JOBS="$JENKINS_ROOT/jobs"&lt;br /&gt;JENKINS_CONFIG="$JENKINS_ROOT/config.xml"&lt;br /&gt;&lt;br /&gt;# This variable is used so that we can verify that a user is not found&lt;br /&gt;FAIL_TEST=0&lt;br /&gt;&lt;br /&gt;exportUserFolder() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -d "$JENKINS_USERS/$1" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;cp -R "$JENKINS_USERS/$1" ./&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;FAIL_TEST=`expr $FAIL_TEST + 1`&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;}&lt;br /&gt;exportUserPermissions() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ $(grep -c "^.*&lt;permission&gt;.*:$1&amp;lt;\/permission&amp;gt;.*" $JENKINS_CONFIG) -ne 0 ]; then&lt;/permission&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;grep "^.*&lt;permission&gt;.*:$1&amp;lt;\/permission&amp;gt;.*" $JENKINS_CONFIG &amp;gt; $1.perm&lt;/permission&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;FAIL_TEST=`expr $FAIL_TEST + 1`&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;exportUsers() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# Pre-work cleanup&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -d "working" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm -R -f working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -f "user.tar" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm -R -f user.tar&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;mkdir working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;cd working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# Checks if any users have been specified&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ ! -z $1 ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Iterates over the users if they have&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for u in $*; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;exportUserFolder $u&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;exportUserPermissions $u&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;# if FAIL_TEST is 2, that means both of the above functions failed to find a user&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;if [ "$FAIL_TEST" -ge "2" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;echo "ERROR: User $u is not found!"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;exit 1&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;fi&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;FAIL_TEST=0&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Otherwise we export everything!&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Copies ALL user folders&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for f &amp;nbsp;in `ls "$JENKINS_USERS"`; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;exportUserFolder $f&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Extracts all the users for who we have global permissions&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for u in `sed -n -e 's/^.*&lt;permission&gt;.*:\(.*\)&amp;lt;\/permission&amp;gt;.*/\1/p' $JENKINS_CONFIG &amp;nbsp;| uniq | sort`; do&lt;/permission&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;exportUserPermissions $u&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# create the user.tar&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# We only do this once, at the very end, so that if this fails for any reason a user.tar is not created,&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# so we don't risk having a bad artifact built from the job&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;tar cv --file user.tar *&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# Pop up to the workspace&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;cd ..&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# move user.tar out of working into the workspace so that it can by archvied by jenkins&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;mv working/user.tar ./user.tar&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# post-work cleanup&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;rm -R -f working&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;exportUsers $USERS&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The only parameter needed is USERS, which is a space-separated list of users to export. If it's blank, or omitted, it exports all the users to a file called user.tar, which you should set up jenkins to archive.&lt;br /&gt;&lt;br /&gt;Here's the import script:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;INPUT_FILE="user.tar"&lt;br /&gt;&lt;br /&gt;# This should be changed to your system's jenkins root&amp;nbsp;JENKINS_ROOT="/Users/Shared/Jenkins/Home"&lt;br /&gt;JENKINS_USERS="$JENKINS_ROOT/users"&lt;br /&gt;JENKINS_JOBS="$JENKINS_ROOT/jobs"&lt;br /&gt;JENKINS_CONFIG="$JENKINS_ROOT/config.xml"&lt;br /&gt;&lt;br /&gt;# This variable is used so that we can verify that a user is not found&lt;br /&gt;FAIL_TEST=0&lt;br /&gt;&lt;br /&gt;importUserPermissions() {&lt;br /&gt;if [ $PERMISSIONS = "true" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -f "$1.perm" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# delete existing permissions&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;sed -i -e "/^.*&lt;permission&gt;.*:$1&amp;lt;\/permission&amp;gt;.*/d" $JENKINS_CONFIG&lt;/permission&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Insert new permissions&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;while read line; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;sed -i -e "/^.*&amp;lt;\/authorizationStrategy&amp;gt;.*/ i\\&lt;br /&gt;&amp;nbsp;$line" $JENKINS_CONFIG&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done &amp;lt; "$1.perm"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;FAIL_TEST=`expr $FAIL_TEST + 1`&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;fi&lt;br /&gt;}&lt;br /&gt;importUserFolder() {&lt;br /&gt;if [ -d "$JENKINS_USERS/$1" ] &amp;amp;&amp;amp; [ "$REPLACE_CONFIG" = "false" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;echo "User folder for $1 already exists."&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;echo "Enable REPLACE_CONFIG to overwrite existing user folders"&lt;br /&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -d "$1" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;cp -R "./$1" "$JENKINS_USERS/"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;FAIL_TEST=`expr $FAIL_TEST + 1`&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;importUsers() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ -d "working" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm -R -f working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;mkdir working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;cd working&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;tar xf "../$INPUT_FILE"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# Checks if any users have been specified&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if [ ! -z $1 ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Iterates over the users if they have&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for u in $*; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;importUserFolder $u&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;importUserPermissions $u&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;# if FAIL_TEST is 2, that means both of the above functions failed to find a user&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;if [ "$FAIL_TEST" -ge "2" ]; then&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;echo "ERROR: User $u is not found!"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;exit 1&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;fi&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;FAIL_TEST=0&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;else&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Otherwise we import everything!&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;# Copies ALL user folders&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for f in `ls -l | awk '/^d.*/{print $(NF);}'`; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;importUserFolder $f&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;for f in `ls *.perm | sed 's/\(.*\)\..*/\1/'`; do&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;importUserPermissions $f&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;done&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# Pop up to the workspace&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;cd ..&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;# post-work cleanup&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;rm -R -f working&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;rm user.tar&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;importUsers $USERS&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;This one takes a few more parameters:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A file paramater writing to user.tar&lt;/li&gt;&lt;li&gt;USER, a string that specifies the user(s) to import, spaces separating multiple users. If omitted or empty, all the users in the archive will be imported.&lt;/li&gt;&lt;li&gt;PERMISSIONS, a boolean indicating wether to import permissions&lt;/li&gt;&lt;li&gt;REPLACE_CONFIG, a boolean indicating wether to overwrite existing user info&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;I zipped up my Jenkins jobs for easy use &lt;a href="https://docs.google.com/open?id=0By2Mfv6zO9SkZTBkZjE1OGEtN2MyOS00ZmRkLWIxOWUtNTBiMzk0YzJlZWE5"&gt;here&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-978039919680009817?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/978039919680009817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2012/02/jenkins-user-importexport.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/978039919680009817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/978039919680009817'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2012/02/jenkins-user-importexport.html' title='Jenkins User Import/Export'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-9018119445678580725</id><published>2010-09-10T01:29:00.000-05:00</published><updated>2010-09-10T01:29:59.646-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.6 - Laurentian Living</title><content type='html'>&lt;a href="http://masga.sourceforge.net/"&gt;MASGAU&lt;/a&gt;&amp;nbsp;isn't dead. It's just in a coma. I fired up Visual Studio and tinkered with it just yesterday, honest. I've added a game data update system, fixed a bunch of bugs, and introduced a few more. There's one outstanding bug related to using DLLs that may force me to&amp;nbsp;separate&amp;nbsp;into 32 and 64 bit builds from now on. Ugh. We'll see. I still read everyone's contributions, and I plan on implementing every one of them. Busy life has stolen my time.&lt;br /&gt;&lt;br /&gt;So, I moved out. At 26, maybe a bit late in the game. &lt;a href="http://gtc.edu/"&gt;College&lt;/a&gt;&amp;nbsp;is finally over. I've got a job working at the &lt;a href="http://bgckenosha.org/"&gt;Boys &amp;amp; Girls Club&lt;/a&gt; here in Kenosha. It's not full time, but it pays the bills. I spend my days shepherding kids and trying to convince them that things aren't "bogus." They've also got me doing extra hours updating the BGC web site, but finding time for that has been more difficult than anticipated. Outside work, I've upped my commitment to my church, Missio Dei. This has made me busy in the form of helping people out with stuff, the sound team, and the &lt;a href="http://missiodeifellowship.org/"&gt;church web site&lt;/a&gt;. I've also made more of a push to be socially active, something I really stopped working at during college. Was around people all the time, so I didn't really feel like spending my free time around more people. A lot of my friendships went by the wayside for no reason, and I'm glad I'm being given an opportunity to rebuild &lt;a href="http://kedahlsblog.blogspot.com/"&gt;some&lt;/a&gt; of &lt;a href="http://lissa-cereal.livejournal.com/"&gt;them&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also wrote a short story last year. It's called &lt;a href="http://sanmadjack.blogspot.com/p/arrogate.html"&gt;Arrogate&lt;/a&gt;, and it can be found in my &lt;a href="http://sanmadjack.deviantart.com/"&gt;DeviantArt&lt;/a&gt; gallery. I consider it a complete story, but I'm still continuing it with another story called Abrogate. It mostly exists as a lot of notes and ideas right now, but I hope to begin actually writing it out real soon. Funnily enough I posted an unpolished version of the first chapter as &lt;a href="http://sanmadjack.deviantart.com/gallery/#/d23qzac"&gt;"Retitle 1&lt;/a&gt;" (because I was going to retitle it), and even now that one chapter has by far more views than all the Arrogate chapters combined. How exactly am I supposed to take that?&lt;br /&gt;&lt;br /&gt;I finally started and have kept with exercising. Over the last few months I've lost 38 pounds, which I monitor weekly when I go in for plasma donations. I opted to go the calorie-counting route, despite my friends who swear by Atkin's. I'm happy with the progress, and it doesn't look to be stopping any time soon.&lt;br /&gt;&lt;br /&gt;That about gets things up to date. I'd apologize for going so long without updates, but I can&amp;nbsp;really&amp;nbsp;only say that so many years in a row before it becomes dishonest.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-9018119445678580725?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/9018119445678580725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2010/09/v016-laurentian-living.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/9018119445678580725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/9018119445678580725'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2010/09/v016-laurentian-living.html' title='v.0.1.6 - Laurentian Living'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-3982148578223081466</id><published>2009-11-15T01:26:00.003-06:00</published><updated>2010-09-08T18:39:21.318-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.5 - Startling Seven</title><content type='html'>I released 0.7 of MASGAU earlier today (yesterday). Not many new features, mostly interface and stabilizing. I decided to handle the Arkham Asylum problem by adding a save profile that just backs up the user's Game for Windows account information into it's archive. That way you can just restore the account info and the Arkham save should be ready to go. I tested it with my friend's computer earlier, and it went of without a hitch.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I've also added a fan page for MASGAU to Facebook, a link to which now exists in the right column of my blog.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-3982148578223081466?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/3982148578223081466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2009/11/v015-startling-seven.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/3982148578223081466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/3982148578223081466'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2009/11/v015-startling-seven.html' title='v.0.1.5 - Startling Seven'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-2035372731860258430</id><published>2009-10-15T18:18:00.004-05:00</published><updated>2010-09-08T18:39:21.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.4 - Baffling Batman</title><content type='html'>&lt;div style="text-align: left;"&gt;Arkham Asylum looks like an amazing game, but it's been giving MASGAU trouble. My buddy Mikey bought the game and played it through under XP. Soon after beating it he wiped his computer and installed Windows 7. Arkham was one of the games added to MASGAU in the last update, and he used it to backup his save files. He restored the saves after re-installing the game, and MASGAU indeed restored the files to the correct location. After starting Arkham we were informed that the save was corrupt. A little Googling led me to believe that Arkham was doing something to restrict transferring saves, most likely encrypting. I finally got an opportunity to experiment on Mikey's copy of the game and came up with some interesting findings.&lt;/div&gt;&lt;br /&gt;Inside a user's XLive folder there is a folder called content that contains per-G4W-user folders. The folder names are 16-digit hex numbers, seeming to be a concatenation of two 8-digit hex numbers. I logged in with several accounts, and found that they all had the same last 8 digits, leading me to believe these digits are a machine identifier. The first 8 digits seem to be randomly generated the first time you log in with an account to identify it on the system.&lt;br /&gt;&lt;br /&gt;In the Arkham save folder, there is a subfolder for each of the users that have logged in and made a save. The folder name is the 8-digit account identifier mentioned in the previous paragraph, followed by 00000001. I copied a save created with my own user to Mike's user and then logged in as Mike. I was surprised to find that the game did not report the save as corrupted. This led me to believe that the copy protection was a system-specific thing. I Googled around and found a save made somewhere around the Poison Ivy battle. I copied the save into Mike's user folder and was unsurprised to see it reported as corrupted. The save had included the XLive folder of the user who made it, so I extracted it to my own XLive folder. This added an extra user, one that could see the included save game as long as it was placed in the save game folder in a folder named after the user's hex identifier. Unfortunately Mike is the only person I know who has a computer powerful enough to run the game. Once I finish repairing my system I will be able to do direct experiments with transferring saves and account info between two separate systems.&lt;br /&gt;&lt;br /&gt;All this is of course for MASGAU's benefit. If I'm able to perfect a method, MASGAU will be able to back up the associated account info for a save along with the save. Due to the motherboard failure of my desktop, development has been very slow. I do a little work here and there at my local college, but there's only so much I can do there. As a side effect, I believe that if I am able to successfully extract account information from G4W, I might be able to make some other games that use G4W and don't protect the saves (like Fallout 3 and I think Kane &amp;amp; Lynch) able to automatically choose what user to restore a save to. This unfortunately may invalidate the layout of saves for those games made with older version of MASGAU, but that's why it uses 7-zip files. Due to its how it saves, Arkham will probably never be able to do this automatically. We can only hope that someday the developer will be compassionate enough to remove the copy protection from the saves.&lt;br /&gt;&lt;br /&gt;On the upside, MASGAU has been getting some interface polishing. Almost all the windows can now be resized at will, and the main window will even remember how big you left it. There is now a status bar that indicates things that are detected, such as Steam, G4W, and maybe whether a PSP is detected. The status bar also replaces the progress splash, allowing you to see the window that much sooner. Here's a screen:&lt;div&gt;&lt;img src="http://3.bp.blogspot.com/_sT2gnJBX9kQ/Ste_eisDQqI/AAAAAAAAAd0/c0GC_B_5u54/s320/loading.jpg" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 256px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5392989610228007586" /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;See? Progress!&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Due to n employment contract snafu, I should have the money to repair my computer the Friday after next. Another release of MASGAU probably won't happen until after then, but I'm considering upping its status from Alpha to Beta. Exciting!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-2035372731860258430?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/2035372731860258430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2009/10/v014-baffling-batman.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/2035372731860258430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/2035372731860258430'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2009/10/v014-baffling-batman.html' title='v.0.1.4 - Baffling Batman'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_sT2gnJBX9kQ/Ste_eisDQqI/AAAAAAAAAd0/c0GC_B_5u54/s72-c/loading.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-251641008145339203</id><published>2009-09-17T19:46:00.002-05:00</published><updated>2010-09-08T18:39:21.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.3 - Mortal Motherboard</title><content type='html'>School has started. Work has picked up. My motherboard has died. All these things mean MASGAU development will be slower, especially for the next few weeks. There's an outstanding issue with Windows XP right now, and I was hoping to have a release ready last Sunday. That obviously didn't happen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-251641008145339203?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/251641008145339203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2009/09/v013-mortal-motherboard.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/251641008145339203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/251641008145339203'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2009/09/v013-mortal-motherboard.html' title='v.0.1.3 - Mortal Motherboard'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-8980154870046762062</id><published>2009-08-18T10:54:00.005-05:00</published><updated>2010-09-08T18:39:21.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.2 - Spreading Seagull</title><content type='html'>Well it's been a few weeks and MASGAU has already reached version 0.4 The wiki for MASGAU is finally the top result for MASGAU on Google, and a few sites have done brief write-ups on it. Here's what I've found so far:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blogsdna.com/4280/backup-game-settings-saved-games-with-masgau.htm"&gt;The first I spotted&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.instantfundas.com/2009/08/backup-game-settings-and-saved-games.html"&gt;One based off the above one&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.baixaki.com.br/download/masgau.htm"&gt;This one's in Portuguese!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.softdownload.com.br/backup-de-seus-jogos.html"&gt;This one too!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.net/projects/masga/"&gt;Someone was kind enough to post a review on the Sourceforge page&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.softpedia.com/get/System/Back-Up-and-Recovery/MASGAU.shtml"&gt;Not really a write-up, but an independent mirror&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How awesome is that? Now if only more people would submit save information...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-8980154870046762062?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/8980154870046762062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2009/08/v012.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/8980154870046762062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/8980154870046762062'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2009/08/v012.html' title='v.0.1.2 - Spreading Seagull'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-6515191834070642027</id><published>2009-07-27T15:12:00.002-05:00</published><updated>2010-09-08T18:39:21.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.1 - Mosying MASGAU</title><content type='html'>I've been spending the last month or so working on a backup program called MASGAU. It's purpose is to backup saved games from your computer, then restore them wherever you please. It uses XML definition files to automatically detect saves on your system, and can restore any backup to any detected install of the same game. I just posted version 0.2 to the site, so if you're interested, go check it out.&lt;br /&gt;&lt;br /&gt;http://masga.sourceforge.net/&lt;br /&gt;&lt;br /&gt;Be sure to check the Supported Games list to see if you have any games you could help out with!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-6515191834070642027?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/6515191834070642027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2009/07/v011-mosying-masgau.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/6515191834070642027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/6515191834070642027'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2009/07/v011-mosying-masgau.html' title='v.0.1.1 - Mosying MASGAU'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-5422618914294708987</id><published>2008-05-08T13:41:00.009-05:00</published><updated>2010-09-08T18:39:21.320-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.1.0 - Stopping Semester</title><content type='html'>Only one more week left for college this semester, finally leaving me free to devote more time to the projects I've been working on. My OpenDb Tango theme hit a bit of a snafu when I accidentally deleted the only current copy. I was able to recover the majority of the icons from a copy of an older version, but all of the CSS was lost. It's not really that big of a deal, as most of the work was just figuring out what color to use with what.&lt;br /&gt;&lt;br /&gt;I've also been getting more work done on my Music Chooser for d2x-xl. It's more or less done, there's just a small issue with detecting the current theme. No biggie, I might even have it hammered out by the end of the day. From there, I just have to make some packages for distribution. It's all good. Here's some shots of it in action:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_sT2gnJBX9kQ/SCNQjkyy0dI/AAAAAAAAABE/iLUmLbGK1_k/s1600-h/regular.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_sT2gnJBX9kQ/SCNQjkyy0dI/AAAAAAAAABE/iLUmLbGK1_k/s320/regular.png" alt="" id="BLOGGER_PHOTO_ID_5198086967018050002" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_sT2gnJBX9kQ/SCNQqEyy0eI/AAAAAAAAABM/Kp36hqjlkw4/s1600-h/custom.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_sT2gnJBX9kQ/SCNQqEyy0eI/AAAAAAAAABM/Kp36hqjlkw4/s320/custom.png" alt="" id="BLOGGER_PHOTO_ID_5198087078687199714" border="0" /&gt;&lt;/a&gt;More on this later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-5422618914294708987?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/5422618914294708987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2008/05/v010-stopping-semester.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/5422618914294708987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/5422618914294708987'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2008/05/v010-stopping-semester.html' title='v.0.1.0 - Stopping Semester'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_sT2gnJBX9kQ/SCNQjkyy0dI/AAAAAAAAABE/iLUmLbGK1_k/s72-c/regular.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-845223946815431811</id><published>2008-02-23T09:04:00.006-06:00</published><updated>2010-09-08T18:39:21.320-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><category scheme='http://www.blogger.com/atom/ns#' term='Tango OpenDb'/><title type='text'>v.0.0.9 - Trepidating Tango</title><content type='html'>One of the other projects I've got going is a &lt;a href="http://tango.freedesktop.org/"&gt;Tango&lt;/a&gt;-style theme for &lt;a href="http://opendb.iamvegan.net/"&gt;OpenDb&lt;/a&gt;. The progress on the theme can be seen at &lt;a href="http://sage.sytes.net/%7Eopendbtest/"&gt;http://sage.sytes.net/~opendbtest/&lt;/a&gt;. I had done a lot of progress on it for OpenDb 1.0.x, but apparently the 1.5 release (which is in alpha) will introduce some changes to the themeing system. I'm not sure of the severity of this change, but I decided to start making the theme over again. The biggest hurdle has been making Tango-style icons for the various video game consoles. For example, here is a Playstation 2 icon that I made:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_sT2gnJBX9kQ/R8A9rL9xBCI/AAAAAAAAAAM/LHuXz-NINv8/s1600-h/pps2-tango.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 128px; height: 128px;" src="http://bp3.blogger.com/_sT2gnJBX9kQ/R8A9rL9xBCI/AAAAAAAAAAM/LHuXz-NINv8/s320/pps2-tango.png" alt="" id="BLOGGER_PHOTO_ID_5170200184376853538" border="0" /&gt;&lt;/a&gt;I still have plenty more to do though, so I'll probably make a release once the colour scheme is complete, and then update as I finish the rest of the icons.&lt;br /&gt;&lt;br /&gt;A bit ago I tried to upgrade DarkholmeIII (my dedicated server) to dual-Pentium IIIs. Traditionally when I have upgraded the system to a new motherboard I have added to the number on the name, but when faced with renaming it DarkholmeIV I decided that maybe the name had run it's course. So, I decided to rename the server after &lt;a href="http://en.wikipedia.org/wiki/Sage_%28comics%29"&gt;Sage&lt;/a&gt;. Unfortunately the upgrade did not go as planned, what with the crashing and the data loss. So, I ended up going back to the old hardware (but with a bit more RAM) and I decided to keep the name. So, that means all addresses that used to be on darkholme.sytes.net are now on sage.sytes.net. I've still got the old address registered and will keep it for some time, but it won't be forever. I also rewrote Sage's front page to be cleaner and facilitate the quick reloading of pictures on the front page. It can be accessed at &lt;a href="http://sage.sytes.net/"&gt;http://sage.sytes.net/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I haven't had much time to work on my music launcher for &lt;a href="http://www.descent2.de/"&gt;d2x-xl&lt;/a&gt; over the last week but I'll post a preview of what progress I've made later. I'm not on my home computer so I can't get any shots or anything. I'm going to work on upgrading &lt;a href="http://www.monodevelop.com/"&gt;MonoDevelop&lt;/a&gt; (which I'm using to write the launcher) to the latest release candidate when I get home, and then I'll post some shots of the launcher.&lt;br /&gt;&lt;br /&gt;One thing I'm excited about right now is the (relatively) new &lt;a href="http://en.wikipedia.org/wiki/Animated_PNG"&gt;Animated PNG&lt;/a&gt; file format. I had for the longest time wanted &lt;a href="http://en.wikipedia.org/wiki/Multiple-image_Network_Graphics"&gt;MNG&lt;/a&gt; to gain popularity so I could use it but patent problems combined with a lack of support from web browser developers seemed to doom the format. APNG is already supported in the latest Betas of both &lt;a href="http://www.mozilla.com/en-US/firefox/all-beta.html"&gt;Firefox&lt;/a&gt; and &lt;a href="http://snapshot.opera.com/"&gt;Opera&lt;/a&gt;. The editor for putting them together is currently a little cumbersome, but with any luck support will make it into the &lt;a href="http://www.gimp.org/"&gt;GIMP&lt;/a&gt;. Here's an example APNG I made from an Animated GIF I found:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_sT2gnJBX9kQ/R8D4ur9xBEI/AAAAAAAAAAc/q1yjceMg15g/s1600-h/animation.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_sT2gnJBX9kQ/R8D4ur9xBEI/AAAAAAAAAAc/q1yjceMg15g/s320/animation.png" alt="" id="BLOGGER_PHOTO_ID_5170405853180789826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I'm planning on buying a &lt;a href="http://en.wikipedia.org/wiki/PlayStation_3"&gt;Playstation 3&lt;/a&gt; in the next month. As most people know, the 40GB model has no PS2 compatibility and the 80GB has crappy PS2 compatibility. I've got a good 50 or so PS2 games so this is a very important feature to me. Right now I'm looking to find one of the old 60GB models (which have great PS2 support) on eBay. This decision has become complicated though, as Sony has discontinued the 80GB model and there are rumours going around of a new 120GB or 160GB model with &lt;a href="http://en.wikipedia.org/wiki/DualShock#DualShock_3"&gt;Dualshock 3&lt;/a&gt;. I've also heard that Sony was thinking about reintroducing 40GB style PS2 compatibility, and I've a hunch that all these rumours might come together into a system that I would much rather get than a used eBay model. So, if any of you out there are Sony execs that are privy to pertinant information, could you please let the world know what's going to happen?&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_sT2gnJBX9kQ/R8BLiL9xBDI/AAAAAAAAAAU/2fcRRyLYKWQ/s1600-h/boxes.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_sT2gnJBX9kQ/R8BLiL9xBDI/AAAAAAAAAAU/2fcRRyLYKWQ/s320/boxes.png" alt="" id="BLOGGER_PHOTO_ID_5170215422920819762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;To finish off this post, I downloaded the latest preview release of &lt;a href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt; and I noticed that they've added a 3d box tool that is really fun to play with. I made this in a matter of seconds -&gt;&lt;br /&gt;&lt;br /&gt;Cool stuff.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-845223946815431811?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/845223946815431811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2008/02/v009-trepidating-tango.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/845223946815431811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/845223946815431811'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2008/02/v009-trepidating-tango.html' title='v.0.0.9 - Trepidating Tango'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_sT2gnJBX9kQ/R8A9rL9xBCI/AAAAAAAAAAM/LHuXz-NINv8/s72-c/pps2-tango.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-5781626502173081104</id><published>2008-02-22T17:33:00.004-06:00</published><updated>2010-09-08T18:39:21.320-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><category scheme='http://www.blogger.com/atom/ns#' term='civilization test of time chronicles'/><title type='text'>v.0.0.8 - Civilized Civility</title><content type='html'>It's been awhile since I updated this but today I noticed that I have something work typing about. I've got several projects going and I figured I can use this blog to keep people up to date on them and to keep track of what I'm doing.&lt;br /&gt;&lt;br /&gt;I'm currently working on putting together a music pack for d2x-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;xl&lt;/span&gt; of all the versions of the Descent soundtracks (except Descent 3). I'm also writing an installer using Mono to choose which music will be used in-game. There is a few more details in the related thread on the d2x-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;xl&lt;/span&gt; forums: &lt;a href="http://descent2.de/forum/viewtopic.php?t=217"&gt;http://descent2.de/forum/viewtopic.php?t=217&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I recently picked up &lt;a href="http://www.amazon.com/2K-Games-710425310744-Civilization-Chronicles/dp/B000IU1PQA/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=videogames&amp;amp;qid=1203723495&amp;amp;sr=8-1"&gt;Civilization Chronicles&lt;/a&gt; which is a package I'd recommend to anyone who likes Civilization. I ran into a problem when I tried to crack &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Civ&lt;/span&gt; II, and it turned out to be because the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Civ&lt;/span&gt; II included was not patched to the latest version. Other box-sets I've gotten like this (such as Myst Anniversary Edition) had the games &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;pre&lt;/span&gt;-patched to the latest version and I had expected the same. No big deal, so I downloaded the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Civ&lt;/span&gt; II: Test of Time 1.1 patch and the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Civ&lt;/span&gt; II: &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Multiplayer&lt;/span&gt; Gold Edition 1.3 patch. Turns out the Test of Time patch quits because it can't find an installation, and the Gold patch doesn't automatically find the install folder. &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;Basically&lt;/span&gt; the Test of Time patch doesn't work and the Gold patch requires a little more &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_9"&gt;than&lt;/span&gt; normal effort. Not so bad on the second, big problem on the first.&lt;br /&gt;&lt;br /&gt;So, I extracted the contents of both patches and created my own custom &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;patcher&lt;/span&gt;. I've uploaded it to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Megaupload&lt;/span&gt; and created a thread for it on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;CivFanatics&lt;/span&gt; forum at &lt;a href="http://forums.civfanatics.com/showthread.php?p=6524681"&gt;http://forums.civfanatics.com/showthread.php?p=6524681&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;There are other things but I have to pick someone up from the train station now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-5781626502173081104?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/5781626502173081104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2008/02/v008-civilized-civility.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/5781626502173081104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/5781626502173081104'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2008/02/v008-civilized-civility.html' title='v.0.0.8 - Civilized Civility'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-4513725601342261768</id><published>2006-12-12T16:10:00.000-06:00</published><updated>2010-09-08T18:39:21.320-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.7 - "Proud Parasol"</title><content type='html'>I have finally decided to pursue my original love: INFORMATION TECHNOLOGY! Since I started college I have tried to avoid going into the computer industry because of what had happened to my father. For those not up to date, my dad was out of work for a year and a half basically because he became obsolete. I started out in the Graphic Design program, but after it was canceled I basically wandered around in General Ed limbo for two years. I briefly toyed with the idea of becoming a Math teacher, and actually started making plans to transfer to &lt;a href="http://www.uwp.edu/"&gt;Parkside&lt;/a&gt; to enroll in the Math Teacher program there. Recent musings on my part however have led me to the conclusion that I probably wouldn't suffer from the malady of obsolescence were I to go into the industry. I'm not going to go into the messy details of my thought processes (involving such things as mimes and electroshock), so the end result is all you get. I decided to enroll in the Networking specific course here at &lt;a href="http://www.gtc.edu/"&gt;Gateway&lt;/a&gt;, as I figure it's one of the fields least likely to be outsourced to &lt;a href="http://www.boratonline.co.uk/"&gt;Kazakhstan&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Aside from that, two new &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu &lt;/a&gt;releases have come out since my last post. Most unfortunate. The latest has impressed me with it's excellent Beryl/Aiglx support, which I have already used to wow many a friend. Beyond that, setting up my Wireless card through NDISwrapper was the most painless it's been in awhile, mostly due to the wonderful community support from the Ubuntu forums. Merging the Live CD and the Install CD into one disc was a wonderful move, and providing DVD editions (which I can now use thanks to the DVD burner I got before Summer break) is just about the coolest thing since &lt;a href="http://www.knoppix.org/"&gt;Knoppix&lt;/a&gt;'s DVD releases.&lt;br /&gt;&lt;br /&gt;My brother has been building a new computer for himself over the last year, and he just recently got a new HD. He surprisingly decided to give me his old  80GB HD to put into DarkholmeII (my dedicated server for those not in the know). With new space, I decided to upload all my &lt;a href="http://en.wikipedia.org/wiki/MP3"&gt;MP3s&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Ogg"&gt;OGGs&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Flac"&gt;FLACs &lt;/a&gt;onto DarkholmeII and set up a &lt;a href="http://www.mt-daapd.org/"&gt;DAAP &lt;/a&gt;server. I'm pondering setting up a UPnP  server, but I want to first find out what programs can connect to it, as I've not seen many programs that directly state such support. I also linked my music folder to a folder served by Apache, so I can connect to my music from anywhere on the net now. I'm listening to Fort Minor from m y work off of DarkholmeII right now. Don't get you hopes up, the whole thing is password protected and all that.&lt;br /&gt;&lt;br /&gt;I have also finally watched &lt;a href="http://en.wikipedia.org/wiki/Firefly_%28TV_series%29"&gt;Firefly&lt;/a&gt;. Well, not all of it. We lost the DVD remote, and the player only has up and down buttons, so I only watched the half of the show that could be accessed via up and down. What I have seen, I have greatly enjoyed, and it has definitely enhanced my comprehension of &lt;a href="http://en.wikipedia.org/wiki/Serenity_%28film%29"&gt;Serenity&lt;/a&gt;. I intend to sit down and go through the remaining episodes along with the commentaries when I once again find a remote. On the DVD front I have also completed my collection of &lt;a href="http://en.wikipedia.org/wiki/3rd_Rock_From_The_Sun"&gt;3rd Rock From the Sun&lt;/a&gt;, and have acquired Season 4 of &lt;a href="http://en.wikipedia.org/wiki/Newsradio"&gt;NewsRadio&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I recently played through &lt;a href="http://www.prey.com/"&gt;Prey&lt;/a&gt;, and I must say it was a unique experience. Between the portals and the constant screwing with gravity, combat was an experience like no other. The only real complaint I have was the length; I finished it in less than 6 hours. I only payed &lt;a href="http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&amp;ih=005&amp;amp;sspagename=STRK%3AMEWN%3AIT&amp;viewitem=&amp;amp;amp;amp;amp;item=150065826853&amp;rd=1&amp;amp;rd=1"&gt;$20 on eBa&lt;/a&gt;&lt;a href="http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&amp;ih=005&amp;amp;sspagename=STRK%3AMEWN%3AIT&amp;viewitem=&amp;amp;amp;amp;amp;item=150065826853&amp;rd=1&amp;amp;rd=1"&gt;y&lt;/a&gt; for it though, so I'm not complaining that much. I was brimming over with excitement when I walked up to a terminal to find &lt;a href="http://en.wikipedia.org/wiki/Art_Bell"&gt;Art Bell&lt;/a&gt; doing his radio thing. I used to listen to his show every midnight for years until &lt;a href="http://www.620wtmj.com/"&gt;WTMJ&lt;/a&gt; stopped carrying him. Aside from that, the plot was decent, the main character's voice acting made my ears bleed, and I loved it to death.&lt;br /&gt;&lt;br /&gt;Ever since the introduction of &lt;a href="http://www.steampowered.com/v/index.php?area=news&amp;id=845"&gt;PaypPal on Steam&lt;/a&gt; I have had trouble resisting buying things. It just started with me buying the &lt;a href="http://www.enlight.com/x2/"&gt;X2&lt;/a&gt;/&lt;a href="http://www.egosoft.com/games/x3/info_en.php"&gt;X3&lt;/a&gt; &lt;a href="http://www.steampowered.com/v/index.php?area=package&amp;amp;SubId=102&amp;amp;"&gt;2-pack&lt;/a&gt;, just to try it out. Then I bought &lt;a href="http://www.psychonauts.com/"&gt;Psychonauts&lt;/a&gt;. Then &lt;a href="http://www.2kgames.com/civ4/home.htm"&gt;Civilization IV&lt;/a&gt; (BUY IT! PLAY IT! LVOE IT!). Then &lt;a href="http://www.earth2160.com/index.php"&gt;Earth 2160&lt;/a&gt;. And now &lt;a href="http://www.garrysmod.com/"&gt;Garry's Mod&lt;/a&gt;. Don't get me wrong, they're all great games that everyone should try, but I seem to have a bit of an impulse problem when it comes to &lt;a href="http://www.steampowered.com/"&gt;Steam&lt;/a&gt;. At least it's a fun problem.&lt;br /&gt;&lt;br /&gt;I've also rebuilt my computer since the last update. Pictures will be forthcoming once Blogger Beta works out it's issues with the new image uploader. We're closing here at work so I gotta jet. Ciao.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-4513725601342261768?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/4513725601342261768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2006/12/v007-proud-parasol.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/4513725601342261768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/4513725601342261768'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2006/12/v007-proud-parasol.html' title='v.0.0.7 - &quot;Proud Parasol&quot;'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112909736242062466</id><published>2005-10-12T00:36:00.000-05:00</published><updated>2010-09-08T18:39:21.321-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.6 - "Gno Disassemble"</title><content type='html'>A few weeks back I had to give an informative speech for my speech class. So, I informed everyone in my class as to the origin and current use of lawn gnomes. It went over very well, despite being a minute under the required time. Next I have to give a speech that demonstrates something. I've been so far unable to come up with anything as unique as lawn gnomes, so I'm going to end up just showing everyone how to take apart a computer. I've got a system prepped and ready to go so it'll be a no-brainer to pull off.&lt;br /&gt;&lt;br /&gt;In other news, Serenity came out and I haven't gotten to see it yet. Everyone I know who's seen it says it's awesome, so I'll probably be seeing it in the very near future. Despite this, I went ahead and accepted my good buddy Lissa's invitation to join the browncoats, which seems to be some kind of official online community. You can earn points by doing stuff like link people to the site, so far be it from me to not participate in a publicity stunt.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://browncoats.serenitymovie.com/serenity/?u=sanmadjack"&gt;&lt;img src="http://browncoats.serenitymovie.com/serenity/gallery/banners/serenity_banner_1_copy2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt; Ubuntu 5.10 also comes out this thursday (technicaly tomorow). I'll be distributing it to everyone I can as soon as possible. Gnome 2.12 is looking as cool as every new Gnome release does.&lt;br /&gt;&lt;br /&gt;Today a friend of mine had me record him and my brother fighting each other with practice swords. The video didn't turn out too bad and will be posted on my web site as soon as I make the appropriate adjustments. Ambrosia's backend has been paused for a bit while I work on the interface redesign. I've finally sccesfully found a way to integrate SVG into the interface. You can see the current working version at http://darkholme.sytes.net/temp/index.xml but you'll need the latest BETA of Firefox to be able to view it. It holds great promise.&lt;br /&gt;&lt;br /&gt;I recently bought and beat Silent Hill 3. It easily ranks with Doom 3 for creep out factor. The ending was a little weird, though. The game starts out with the mian character, a girl named Heather, being attacked at a local mall by monsters that decide to infest the place. She manages to survive and catch a subway (also infested with monsters) back to her street. 2 buildings filled with monsters later, she finally makes it back to her apartment. The girl's dad turns out to be an alien, and, upon hearing about his daughter being assaulted monsters, declares he's goin to the town of Silent Hill "to bust some heads." Silent Hill is then blown away by a fleet of UFOs. The weirdness continues during the credits, during which a bunch of Japanese folks all sing "The Silent Hill Song." An enjoyable game that was worth the 7 bucks, but still bloody odd. So, I'm playing Silent Hill 2 to see if it has an ending that doesn't seem like something out of an SNL skit. Let yall know how that goes.&lt;br /&gt;&lt;br /&gt;And now for a new segment I like to call:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;"&lt;span style="font-style: italic;"&gt;Responding to Kristina's comments!&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;Seeing as she's the only one that comments on my posts, I figured it'd be cool to reward her with a segment! So, here we go!&lt;br /&gt;&lt;br /&gt;Glad you like those categories! Here's a few more: &lt;ul&gt;   &lt;li&gt;Thumb: Small, yet swelled&lt;/li&gt;   &lt;li&gt;Tube: Cathode Raying&lt;br /&gt;  &lt;/li&gt;   &lt;li&gt;Sitting: Here, there, wherever&lt;/li&gt;   &lt;li&gt;Chitty chitty bang bang: Dick Van Dyke driveby&lt;/li&gt; &lt;/ul&gt; So sorry your suck key is stuck. Here, &lt;a href="http://www.the-underdogs.org/game.php?id=4415"&gt;try this game out&lt;/a&gt;, it shouldn't matter if that key is stuck with this one.&lt;br /&gt;&lt;br /&gt;I miss you too, there needs to be another weding so we can see each other again!&lt;br /&gt;&lt;br /&gt;I'm not sure if I got an e-card from you, but it's the thought after the event that counts, isn't it? I didn't do much for my b-day, just hung out with Jon and watched Kung Foo Hustle (speaking of which, see it if you haven't).&lt;br /&gt;&lt;br /&gt;As for how I'm doing these days, I'm doing just fine. I'd go into more detail, but that'd take up all of my material for this blog.&lt;br /&gt;&lt;br /&gt;That's all the time we have for today, tune in next time when I'll answer questions from the people next door! Good night!&lt;br /&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112909736242062466?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112909736242062466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/10/v006-gno-disassemble.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112909736242062466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112909736242062466'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/10/v006-gno-disassemble.html' title='v.0.0.6 - &quot;Gno Disassemble&quot;'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112741552128592057</id><published>2005-09-22T13:11:00.000-05:00</published><updated>2010-09-08T18:39:21.321-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.5 - "Luftbalons"</title><content type='html'>I haven't updated in over a month! Shame on me! I haven't even worked on Ambrosia much before yesterday, but I'm back and chuggin away at the old beast. I'm overhauling the default interface, the working concept is at &lt;a href="http://darkholme.sytes.net/temp/index.xml"&gt;http://darkholme.sytes.net/temp/index.xml.&lt;/a&gt; It's very basic at this point, but I hope to make it very pretty.&lt;br /&gt;&lt;br /&gt;In other news, I'm back at work at the student support center, teaching college kids basic math. Joy. Do they even have math teachers in high school anymore? THAT'S RIGHT I thought not. The good thing about working here is that all the ones that actualy to come down here have swallowed their pride enough to be teachable. It's a very rewarding experience overall, but I really think we need to overhaul the placement testing for math, too many students who don't even understand algebra are taking College Math.&lt;br /&gt;&lt;br /&gt;I'm 22 now! Not a particularly significant milestone, but it's another year regardless. I'm now old enough to do everything I could a year ago. Yay.&lt;br /&gt;&lt;br /&gt;Current Mood: Deleing&lt;br /&gt;Currently Doing: The Sadie Hawkins Dance&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112741552128592057?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112741552128592057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/09/v005-luftbalons.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112741552128592057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112741552128592057'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/09/v005-luftbalons.html' title='v.0.0.5 - &quot;Luftbalons&quot;'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112468566484193852</id><published>2005-08-18T23:40:00.000-05:00</published><updated>2010-09-08T18:39:21.321-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.4 - "Didn't mean to invade your country"</title><content type='html'>Ambrosia updated, about pages editable, see previous post for logins and address, yadah yadah. I haven't worked on Ambrosia for a few weeks now, mostly been focusing on getting ready for school.   &lt;p&gt;    I didn't go to camp after all, they didn't have any spare space, and I'm understandably near the bottom of the "crucial to camp operations" list. At first I was a little dismayed, but I just remembered my song and cheered right back up. Everything happens for a reason, and frankly I'd rather not go than take up a bunk that could otherwise be occupied by some kid who really needs to go to the camp. So, I got a whole week to do stuff I hadn't planned on doing.&lt;/p&gt;   &lt;p&gt;    Like getting my new hard drive! 300GB of sweet, sweet SATA goodness. Combined with 64-bit Linux, Gally has never run faster. &lt;/p&gt;   &lt;p&gt;    On an unexpected note, Christopher Walken, star of many films, and dancer from Fatboy Slim's "Weapon of Choice" music video, is apparently running for president in 2008! &lt;a href="http://walken2008.com/"&gt;The campaign's official site&lt;/a&gt; is a little short on the details of his campaign, but I really think this is one to keep your eye on. Somebody who dances that well can't be a bad guy.&lt;/p&gt;   &lt;p&gt;    As a reminder to all those who care, my birthday is coming up on the 3rd of next month, so be prepared for...something. Not sure yet, let ya know when I know. When I was cleaning up my room, I found the bags that Kristina and her beau had given me for my last birthday, and they bought forth a chuckle, for they were humorous. And lo, I didst think back on all the times of good and, with a mighty remembrance, didst henceforth proclaim, "I feel like a sandwich". So SanMadJack lumbered forth to yon kitchenette and prepared unto himself a heartily sliced which of sand.&lt;/p&gt;   &lt;p&gt;    Actually, I ended up having Jelly toast, but the bag for the bread did say "Heartily Sliced". Well, it's 1 AM and time for me to wrap this up. I must admit, I'm a might jealous of bloggers who use other services like xanga or livejournal, as they have "latest song" and "mood" things that we Friendster users have to do without. So I'm going to manual recreate these from now on so I no longer have feelings of inadequacy. Goodnight!&lt;/p&gt;   &lt;ul&gt; &lt;li&gt;Listening To: Gorillaz - Fire Coming Out Of A Monkey's Head&lt;/li&gt;&lt;li&gt;Mood: Hydrated&lt;/li&gt;&lt;li&gt;Bags: Funny&lt;/li&gt;&lt;li&gt;Noodles: Ramen&lt;/li&gt;&lt;li&gt;Character Not On Keyboard:¾&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112468566484193852?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112468566484193852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/08/v004-didnt-mean-to-invade-your-country.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468566484193852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468566484193852'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/08/v004-didnt-mean-to-invade-your-country.html' title='v.0.0.4 - &quot;Didn&apos;t mean to invade your country&quot;'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112468563502573736</id><published>2005-07-15T23:40:00.000-05:00</published><updated>2010-09-08T18:39:21.321-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.3</title><content type='html'>&lt;div class="entry-content"&gt;    &lt;div class="entry-body"&gt;     &lt;p&gt;The public version of the site is updated, with the following changes:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;Thumbnail control panel for changing the size and rebuilding thumbnails&lt;/li&gt;&lt;li&gt;Blog display page (uneditable at present)&lt;/li&gt;&lt;li&gt;About user page (uneditable at present)&lt;/li&gt;&lt;li&gt;latestmodule system in place (by that I mean I made a latestmodule folder)&lt;/li&gt;&lt;li&gt;I removed a line of code that wasn't good for anything. Stupid leech.&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;    The about pages will also be expanded to have more content, I'm going to make the content modular so that new features can be added and removed from the about user pages at will. I'm also starting to work on a system that will allow the user to create custom pages. On my old site, I had a page for my quiz results, and I'd like to be able to have something like it on the new site. I'll probably integrate it as an about_user module, but I'm sure people would appreciate being able to have custom pages on their site. &lt;/p&gt;  &lt;p&gt;For those to lazy to scroll down to the previous post, here's the info to get at the public beta.&lt;/p&gt;  &lt;p&gt;    &lt;a href="http://darkholme.sytes.net/%7Esanmadjack/ambrosia-xml/"&gt;http://darkholme.sytes.net/~sanmadjack/ambrosia-xml/&lt;/a&gt;&lt;br /&gt;    login:public_user&lt;br /&gt;    pword:testing&lt;/p&gt;  &lt;p&gt;    I'm particularly interested in feedback about the gallery's editing. Try uploading, editing, and deleting some images. Does it seem awkward or anything? Does it work without any errors? Do you blame your father for anything? Whatever, just leave feedback in the comment section of this blog.&lt;/p&gt;  &lt;p&gt;    I'm going to take this space to explain to those curious why I'm using the XML that so indelicately breaks support for both Opera and Internet Explorer. In IE's defense, it does support XML sites, but give it the proper text/XML mime-type and it throws a hissy fit. As for Opera, it just doesn't support XML, which is a pitty considering my reasons for using XML. Alright, here's my reasons:&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;It's bloody cool. Come on, would you rather say "My site is written in HTML!", or "My site is written in XML AND IT CAN MAKE TOAST". Plus, XML is like the sheeque of the sheeque in the nerd world. It's like a guaranteed seat at the head of the nerd table.&lt;/li&gt;&lt;li&gt;Themeability. Sure, most web site backends let you define new CSS for the layout, or some even let you pick bits of code that are run in predetermined places. By making the site XML, the layout of the site is not defined at all. Only information about the page is sent, such as "this is a gallery page", or "here's the blog text". By using XSL-based themes, the layout of the entire site can be completely different. It could look like Slashdot, or Xanga, or Megatokyo, or any other site you could think of. The interface is completely up to the theme!&lt;/li&gt;&lt;li&gt;Puts less strain on the server. All the server has to do is send some relatively simple XML code rather than construct the interface in HTML and then send all that along. We're talking a good 5:1 (results may vary, consult your doctor) ratio of code size here. Granted, this advantage is negligible, but if an Ambrosia powered site gets popular, the person owning that server will be quite grateful.&lt;/li&gt;&lt;li&gt;Again, it's cool.&lt;/li&gt;&lt;/ol&gt;  &lt;p&gt;    I'm planning on fixing the opera compatibility by adding code for server-side theme interpretation. The XSL is typically used by the browser to translate the XML code into the site, but Opera doesn't support doing that. If this works out okay, when an Opera user is detected, the site will activate the translation on the server side. That way, all Opera sees is regular 'ol HTML. Then again, it's just Opera. Who cares about Opera? (Don't kill/fail me, Prof. Pham).&lt;/p&gt;  &lt;p&gt;    In about 3 weeks, I'm going to be leaving to be a counselor at RBC summer camp, which I'm also pretty much running the official site for. I only say that because no one else has taken it upon themselves to do it, and because a certain memory-failure-prone member of the staff there asked me to make it a few years back. So I went ahead and did it. It'll probably secure my position as the nerdiest person that works at the camp, but those're the breaks.&lt;/p&gt;  &lt;p&gt;    An interesting note about this camp is one game that seems to be exclusive to it (at least I've never seen it played anywhere else). It's similar to capture the flag, but with an appropriately christian camp flavoured twist. There is only one goal, which is a Bible placed somewhere around the camp. One team is the Christians, whose goal is to find the Bible. The other team is the KGB, which incidentally is the name of this bastardized CTF, who either run around and catch said Christians, or guard the barn where the detainees are kept. The captured Christians can escape said guard if they can successfully "convert" one of the guards to Christianity. &lt;/p&gt;  &lt;p&gt;    Overall, it's a fun game, and it's a good exercise for the kid's evangelizing techniques. Recently though, some problems have been creeping up. For one, the kids don't understand the name KGB. With the Soviet Union long gone, taking the KGB, Cold War, and Vanilla Ice with it, kids these days just don't know what it's all about. We've had some meetings discussing alternative names (I suggested UN, but they didn't get it), but it looks like KGB is going to remain a historical joke that only the smart kids will get.&lt;/p&gt;  &lt;p&gt;    Another problem is that the kids suck at evangelizing. Last year, I was a guard, and I like to role play a bit, give the kids a little something to work with. So I acted like a stoner. The only kids who made it past me were the ones that had been working for years in Children's ministries. All the others sucked like a black hole powered Oreck. This one group of girls convinced me (my character, anyway), that God would give me a new couch if I believed in Jesus, who they never actually told me who was. Very sad. I hope it's better this year. &lt;/p&gt;  &lt;p&gt;    Well, I'm bloody tired, and I've got a CD-RW full of Red Vs. Blue episodes to put my to sleep. Ciao!&lt;/p&gt;    &lt;/div&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112468563502573736?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112468563502573736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v003.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468563502573736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468563502573736'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v003.html' title='v.0.0.3'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112468559553573988</id><published>2005-07-03T23:39:00.000-05:00</published><updated>2010-09-08T18:39:21.321-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.2</title><content type='html'>&lt;div class="entry-content"&gt;    &lt;div class="entry-body"&gt;     &lt;p&gt;    A few days late, but well worth it. I worked the whole weekend (minus sleep time) on Ambrosia's collection module, and it's now fully functional (although I'm going to be making some cosmetic changes next), including file uploads. I also set up the public login, which is as follows:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;login: public_user&lt;/li&gt;&lt;li&gt;password: testing&lt;/li&gt;&lt;li&gt;address: http://darkholme.sytes.net/~sanmadjack/ambrosia-xml/&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;    If anyone wants to log in and give it a test, go for it, but please be sure to leave some comments here on the blog on your thoughts of it.&lt;/p&gt;  &lt;p&gt;    Seeing as I didn't do anything but work on ambrosia, there's nothing new with me to write about. So, I'm gonna go play a game to unwind.&lt;/p&gt;    &lt;/div&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112468559553573988?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112468559553573988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v002.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468559553573988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468559553573988'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v002.html' title='v.0.0.2'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15658277.post-112468549636505274</id><published>2005-07-01T23:36:00.000-05:00</published><updated>2010-09-08T18:39:21.322-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Changeblog'/><title type='text'>v.0.0.1</title><content type='html'>I am SanMadJack.&lt;br /&gt;&lt;br /&gt;    On all my past blogs, which I might note were far from successful, this would be were I would catch y'all up on my history. But I'm sick of doing that, and 21 years might be a bit bigger then this blog thing will let me post.&lt;br /&gt;&lt;br /&gt;    I was planning on starting a blog on my site, MadJack Entertainment (http://madjackentertainment.tk/), but the new version (beta at http://darkholme.sytes.net/~sanmadjack/ambrosia-xml/) is coming along much slower than I had hoped, and I'm getting bored. My new site is actually going to be a web site framework called Ambrosia which can be used by just about anyone to create their own personal site. Some of the features I'm working in include Image galleries, a commenting system, user profiles, a blog system, and other jazz. But it's coming along slowly. I'm getting stuck on how to implement the features I want. I need to organize the development of this thing better. If anyone reads this (unlikely, I know), check out the current version of the beta site and post some feedback here. I'll prepare a login and password for the next upload and post it here when it's ready, which will probably be at the end of the day once I've gotten some more work done on the user system. &lt;div class="entry-content"&gt;&lt;div class="entry-body"&gt;  &lt;p&gt;    I'm also working on an animation to be used for benchmarking systems. It uses the Blender (http://blender.org/) for everything, and it will be distributed freely to anyone who wants to benchmark their system with it. More on this once I do more work on it.&lt;/p&gt;  &lt;p&gt;    Looks like this will mostly be a sounding board for my projects, which is cool, I'll probably get more feedback here than else where. &lt;/p&gt;    &lt;/div&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15658277-112468549636505274?l=sanmadjack.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanmadjack.blogspot.com/feeds/112468549636505274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v001.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468549636505274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15658277/posts/default/112468549636505274'/><link rel='alternate' type='text/html' href='http://sanmadjack.blogspot.com/2005/07/v001.html' title='v.0.0.1'/><author><name>Matthew Barbour</name><uri>https://profiles.google.com/110992136526758697358</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-l19IOqq9zDk/AAAAAAAAAAI/AAAAAAAABBI/L-jO7bK9gfY/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
