<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>borisSCHEIMAN // &#187; C#</title>
	<atom:link href="http://www.bscheiman.org/category/programming/c/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bscheiman.org</link>
	<description>Lifestyle, hobbies, work, rage...</description>
	<lastBuildDate>Sat, 26 Jun 2010 00:53:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Trafico en el iPhone</title>
		<link>http://www.bscheiman.org/2010/03/21/trafico-en-el-iphone/</link>
		<comments>http://www.bscheiman.org/2010/03/21/trafico-en-el-iphone/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 02:44:34 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Español]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Trafico]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/?p=168</guid>
		<description><![CDATA[Hace varios meses publique como ver el trafico en el iPhone, usando el navegador Safari. Esto llego a ser muy molesto ya que despues de hacer varios cambios, los usuarios tenian camaras inservibles&#8230; en fin, fue un desmadre. Ahora regreso con una aplicacion nativa para el iPhone cuyo nombre es muy creativo y original: &#8220;Trafico.&#8221;]]></description>
			<content:encoded><![CDATA[<p>Hace varios meses publique como ver el trafico en el iPhone, usando el navegador Safari. Esto llego a ser muy molesto ya que despues de hacer varios cambios, los usuarios tenian camaras inservibles&#8230; en fin, fue un desmadre.</p>
<p>Ahora regreso con una aplicacion nativa para el iPhone cuyo nombre es muy creativo y original: &#8220;Trafico.&#8221; Esta aplicacion te permite ver el trafico en varias zonas del D.F. y en otras ciudades de la republica. El link del AppStore es el siguiente: <a href="http://www.tinyurl.com/traficomex">http://www.tinyurl.com/traficomex</a>. Si quieres ver screenshots, entra al AppStore. <img src='http://www.bscheiman.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2010/03/21/trafico-en-el-iphone/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Compiling Mono SVN on Slicehost/Rackspace Cloud</title>
		<link>http://www.bscheiman.org/2010/01/31/compiling-mono-svn-on-slicehost/</link>
		<comments>http://www.bscheiman.org/2010/01/31/compiling-mono-svn-on-slicehost/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 05:33:23 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[boris]]></category>
		<category><![CDATA[bscheiman]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[scheiman]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/?p=161</guid>
		<description><![CDATA[The following should do the trick. This is an update from my old Mono script. Disclaimer: If your system explodes, your cat dies, or anything else happens because of this script, I am not to blame. If everything works though, I&#8217;m always here. Hugs. #!/bin/bash TOPDIR=$(pwd) BUILDDIR=$TOPDIR/build DLDDIR=$TOPDIR/downloads export PATH=/usr/local/bin:$PATH echo &#34;installing prerequisites&#34; sudo apt-get]]></description>
			<content:encoded><![CDATA[<p>The following should do the trick. This is an update from my old <a href="http://www.bscheiman.org/2009/03/18/compiling-mono-22-on-slicehost/">Mono</a> script. Disclaimer: If your system explodes, your cat dies, or anything else happens because of this script, I am not to blame. If everything works though, I&#8217;m always here. Hugs.</p>
<p><span id="more-161"></span></p>
<pre class="brush: plain;">

#!/bin/bash

TOPDIR=$(pwd)
BUILDDIR=$TOPDIR/build
DLDDIR=$TOPDIR/downloads

export PATH=/usr/local/bin:$PATH

echo &quot;installing prerequisites&quot;
sudo apt-get install -y build-essential bison gawk
sudo apt-get install -y libglib2.0-dev
sudo apt-get install -y libpng12-dev libx11-dev libfontconfig1-dev
sudo apt-get install -y libfreetype6-dev libjpeg62-dev libtiff4-dev
sudo apt-get install -y libungif4-dev libexif-dev libcairo2-dev
sudo apt-get install -y libpango1.0-dev libgtk2.0-dev libglade2-dev
sudo apt-get install -y libgnome2-dev libgnomecanvas2-dev libgnomeui-dev
sudo apt-get install -y libgnomeprint2.4-dev libgnomeprintui2.4-dev
sudo apt-get install -y libpanel-applet2-dev libgtksourceview-dev
sudo apt-get install -y libgtkhtml3.14-dev
sudo apt-get install -y intltool
sudo apt-get install -y desktop-file-utils apache2-threaded-dev subversion libtool

echo &quot;uninstalling platform mono packages&quot;
sudo apt-get remove 'mono-*' libgdiplus

mkdir -p $BUILDDIR
cd $BUILDDIR

rm -rf libgdiplus
rm -rf mono
rm -rf mono-tools
rm -rf mono-debugger
rm -rf xsp
rm -rf mod_mono

echo
echo &quot;downloading mono packages&quot;
echo

cd $BUILDDIR

svn co svn://anonsvn.mono-project.com/source/trunk/libgdiplus
svn co svn://anonsvn.mono-project.com/source/trunk/mono
svn co svn://anonsvn.mono-project.com/source/trunk/mcs
svn co svn://anonsvn.mono-project.com/source/trunk/mono-tools
svn co svn://anonsvn.mono-project.com/source/trunk/mono-debugger
svn co svn://anonsvn.mono-project.com/source/trunk/xsp
svn co svn://anonsvn.mono-project.com/source/trunk/mod_mono

cd $BUILDDIR

echo
echo &quot;building and installing mono packages&quot;
echo
cd $BUILDDIR

cd libgdiplus
./autogen.sh --prefix=/usr/local
make
sudo make install
cd $BUILDDIR

cd mono
cd mono
cd mini
perl -i -pe 'last if eof' mini-amd64.h
perl -i -pe 'last if eof' mini-amd64.h
echo &quot;#define MONO_ARCH_NOMAP32BIT&quot; &gt;&gt; mini-amd64.h
echo &quot;#endif&quot; &gt;&gt; mini-amd64.h
cd ..
cd ..
./autogen.sh --prefix=/usr/local --with-large-heap=yes --with-xen_opt=yes
sudo make uninstall
make get-monolite-latest
make EXTERNAL_MCS=false
sudo make install
cd $BUILDDIR

cd mono-tools
./autogen.sh --prefix=/usr/local
sudo make uninstall
make
sudo make install
cd $BUILDDIR

cd mono-debugger
./autogen.sh --prefix=/usr/local
sudo make uninstall
make
sudo make install
cd $BUILDDIR

cd xsp
./autogen.sh --prefix=/usr/local
sudo make uninstall
make
sudo make install
cd $BUILDDIR

cd mod_mono
./autogen.sh --prefix=/usr/local
sudo make uninstall
make
sudo make install
cd $BUILDDIR

echo
echo &quot;done&quot;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2010/01/31/compiling-mono-svn-on-slicehost/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Optimization</title>
		<link>http://www.bscheiman.org/2009/01/06/optimization/</link>
		<comments>http://www.bscheiman.org/2009/01/06/optimization/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 21:18:04 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[optimization]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/?p=32</guid>
		<description><![CDATA[I needed to optimize a function for my neural network. How hard could it be? It&#8217;s only one function, and it&#8217;s &#60;5 lines at that&#8230; After spawning a huge thread, I&#8217;m left to wonder: why didn&#8217;t I continue learning ML after my functional languages class? Blargh! Benchmarks after the break&#8230; C#: Max deviation is 0.001663983]]></description>
			<content:encoded><![CDATA[<p>I needed to optimize a function for my neural network. How <a href="http://stackoverflow.com/questions/412019/code-optimizations">hard could it be</a>? It&#8217;s only one function, and it&#8217;s &lt;5 lines at that&#8230;</p>
<p>After spawning a huge thread, I&#8217;m left to wonder: why didn&#8217;t I continue learning ML after my functional languages class? Blargh!</p>
<p>Benchmarks after the break&#8230;<span id="more-32"></span></p>
<p>C#:</p>
<pre class="prettyprint"><code><span class="typ">Max</span><span class="pln"> deviation </span><span class="kwd">is</span><span class="pln"> </span><span class="lit">0.001663983</span><span class="pln">
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> Sigmoid1</span><span class="pun">()</span><span class="pln"> took </span><span class="lit">1646.613</span><span class="pln"> ms
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> Sigmoid2</span><span class="pun">()</span><span class="pln"> took </span><span class="lit">237.352</span><span class="pln"> ms

C:

</span></code><code><span class="typ">Max</span><span class="pln"> deviation </span><span class="kwd">is</span><span class="pln"> </span><span class="lit">0.001664</span><span class="pln">
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> sigmoid1</span><span class="pun">:</span><span class="pln"> </span><span class="lit">628</span><span class="pln"> ms
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> sigmoid2</span><span class="pun">:</span><span class="pln"> </span><span class="lit">157</span><span class="pln"> ms</span></code><code><span class="str">

F#:

</span></code><code><span class="typ">Max</span><span class="pln"> deviation </span><span class="kwd">is</span><span class="pln"> </span><span class="lit">0.001664</span><span class="pln">
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> sigmoid1</span><span class="pun">:</span><span class="pln"> </span><span class="lit">588.843700</span><span class="pln"> ms
</span><span class="lit">10</span><span class="pun">^</span><span class="lit">7</span><span class="pln"> iterations </span><span class="kwd">using</span><span class="pln"> sigmoid2</span><span class="pun">:</span><span class="pln"> </span><span class="lit">156.626700</span><span class="pln"> ms

</span></code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2009/01/06/optimization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows XP Registry Hacks</title>
		<link>http://www.bscheiman.org/2008/09/25/windows-xp-registry-hacks/</link>
		<comments>http://www.bscheiman.org/2008/09/25/windows-xp-registry-hacks/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 23:45:32 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[sp3]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/?p=19</guid>
		<description><![CDATA[I finally graduate in about 2 months. However, much to my dismay, I have to finish my social volunteer work. No, I didn&#8217;t do anything weird &#8211; it&#8217;s just a graduation requisite. I&#8217;ve been working at my university&#8217;s computer division, so I&#8217;ve had to format anywhere between 4 and 15 laptops every day. Yes. Every.]]></description>
			<content:encoded><![CDATA[<p>I finally graduate in about 2 months. However, much to my dismay, I have to finish my social volunteer work. No, I didn&#8217;t do anything weird &#8211; it&#8217;s just a graduation requisite. I&#8217;ve been working at my university&#8217;s computer division, so I&#8217;ve had to format anywhere between 4 and 15 laptops every day. Yes. Every. Single. Day.</p>
<p>Unfortunately, most of the laptops are Dell C610s &#8211; in other words, 1GHz, 256MB RAM and they&#8217;re running Windows XP. You can probably tell that it&#8217;s very fun to optimize each system. (I&#8217;m proud of myself, they run pretty nicely for the low specs they&#8217;re sporting&#8230;)</p>
<p>With this in mind, I decided to code a .NET 3.5 application (free, of course) that does the job for me and also manages to be fully extensible through the use of a text-based hack database.</p>
<p>If you&#8217;re interested in downloading it, give it a go <a href="http://www.vector6.com.mx/apps/RegistryHacker.zip">here</a>. Read more if you&#8217;re interested in some of the example hacks, as well as the database specification.</p>
<p><span id="more-19"></span></p>
<p>The app itself has many, many hacks, but here are some of them just to get your attention:</p>
<ul>
<li>StartUpDelay (Speeds up startup)</li>
<li>MenuShowDelay (Faster start menu)</li>
<li>WaitToKillAppTimeout, HungAppTimeout (Speeds up shutdown)</li>
<li>SuperFetch</li>
<li>UDMA66 Mode</li>
<li>Large system cache</li>
<li>&#8230;and many more</li>
</ul>
<p>The format, per se, is the following:</p>
<p>Name<br />
Description<br />
Root value (Depends on type of hack: <a href="#registry">Registry</a>, <a href="#command">Command</a> or <a href="#profile">Profile</a>)<br />
Argument<br />
Value<br />
; (End of entry)</p>
<p>Here&#8217;s an example of 3 different entries in the regs.dat file, with comments in square brackets:</p>
<p><a name="registry">Registry entry:</a></p>
<p>Registry: Modify StartUpDelay [Name]<br />
It just removes the unnecessary wait time after a system startup before Indexing Service. (40000ms) [Description]<br />
HKEY_LOCAL_MACHINESystemCurrentControlSetControlContentIndex [In the case of a registry entry, the full tree]<br />
StartupDelay [Registry key]<br />
40000 [Registry value. If it's numerical, it's a DWORD - else, it'll get written as a String]<br />
;</p>
<p><a name="command">Command entry:</a></p>
<p>Services: Disable alerter service [Name]<br />
&#8216;Nuff said. [Description]<br />
Command [Root value, leave as "Command" for command]<br />
sc.exe [Actual command]<br />
config &#8220;alerter&#8221; start= disabled [Parameters]<br />
;</p>
<p><a name="profile">Profile entry: (aka, .ini files)</a></p>
<p>Profile: Set LocalLoadHigh [Name]<br />
Speeds up Windows XP boot times. Load all info needed for your programs into upper memory by default, and it will free up the maximum amount of conventional memory possible. (the first 640K) [Description]<br />
Profilesystem.ini386Enh [In the case of a Profile, it has to be like this: Profile&lt;.ini file [in Windows dir]&gt;&lt;section&gt;]<br />
LocalLoadHigh [Argument]<br />
1 [Value]<br />
;</p>
<p>If you add anything to the regs.dat file, please post it as a comment so everyone can benefit. Thanks, and enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2008/09/25/windows-xp-registry-hacks/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iBrainer</title>
		<link>http://www.bscheiman.org/2008/09/01/ibrainer/</link>
		<comments>http://www.bscheiman.org/2008/09/01/ibrainer/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 02:52:04 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/?p=18</guid>
		<description><![CDATA[Shameless plug: iBrainer is now ready for public use. Feel free to give it a try, either on download.com or iBrainer.net In a nutshell: fix your MP3 collection in a snap. No more Unknown Artist or fixing tags yourself. I might be biased, but I use it all the time &#8212; and I&#8217;m loving it!]]></description>
			<content:encoded><![CDATA[<p>Shameless plug:</p>
<p>iBrainer is now ready for public use. Feel free to give it a try, either on download.com or <a title="iBrainer: manage your mp3 collection" href="http://www.ibrainer.net">iBrainer.net</a></p>
<p>In a nutshell: fix your MP3 collection in a snap. No more Unknown Artist or fixing tags yourself.</p>
<p>I might be biased, but I use it all the time &#8212; and I&#8217;m loving it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2008/09/01/ibrainer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unicode to DOS Filenames</title>
		<link>http://www.bscheiman.org/2008/01/26/unicode-to-dos-filenames/</link>
		<comments>http://www.bscheiman.org/2008/01/26/unicode-to-dos-filenames/#comments</comments>
		<pubDate>Sat, 26 Jan 2008 21:21:17 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/2008/01/26/unicode-to-dos-filenames/</guid>
		<description><![CDATA[DOS is a pain. .NET doesn&#8217;t get along too well with DOS either, since everything .NET is Unicode &#8211; just like everything, actually. How to change from Unicode (aka, Kanji characters) to DOS Filenames: [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern uint GetShortPathName([MarshalAs(UnmanagedType.LPTStr)] string lpszLongPath, [MarshalAs(UnmanagedType.LPTStr)] StringBuilder lpszShortPath, uint cchBuffer); public static string]]></description>
			<content:encoded><![CDATA[<p>DOS is a pain. .NET doesn&#8217;t get along too well with DOS either, since everything .NET is Unicode &#8211; just like everything, actually.</p>
<p>How to change from Unicode (aka, Kanji characters) to DOS Filenames:</p>
<p><code>[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]<br />
static extern uint GetShortPathName([MarshalAs(UnmanagedType.LPTStr)] string lpszLongPath, [MarshalAs(UnmanagedType.LPTStr)] StringBuilder lpszShortPath, uint cchBuffer);</code></p>
<p><code>public static string ToDOSPathName(String longName) {<br />
StringBuilder shortNameBuffer = new StringBuilder(256);<br />
uint bufferSize = (uint)shortNameBuffer.Capacity;</code></p>
<p><code>uint result = GetShortPathName(longName, shortNameBuffer, bufferSize);</code><br />
<code><br />
return shortNameBuffer.ToString();<br />
}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2008/01/26/unicode-to-dos-filenames/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Genpuid troubles</title>
		<link>http://www.bscheiman.org/2008/01/02/genpuid-troubles/</link>
		<comments>http://www.bscheiman.org/2008/01/02/genpuid-troubles/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 23:08:02 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/2008/01/02/genpuid-troubles/</guid>
		<description><![CDATA[Since there is no managed or open source way to get a PUID for MusicBrainz (Thank you, thank you MusicIP&#8230;), you have to call it as an external process. However, since Windows makes all the console-based executables have a character set of SBCSCodePageEncoding, accents get messed up. After several hours of smashing my head against]]></description>
			<content:encoded><![CDATA[<p>Since there is no managed or open source way to get a PUID for MusicBrainz (Thank you, thank you MusicIP&#8230;), you have to call it as an external process. However, since Windows makes all the console-based executables have a character set of SBCSCodePageEncoding, accents get messed up.</p>
<p>After several hours of smashing my head against the wall and venting on GTalk w/ <a href="http://themonkeysgrinder.blogspot.com/" title="Scott Peterson" target="_blank">scottp</a>, I finally got it to work:</p>
<p>Encoding.UTF8.GetString(ProcessObj.StandardOutput.CurrentEncoding.GetBytes(&#8220;yadda yadda&#8221;));</p>
<p>And now it all works. Yay! iBrainz is almost finished&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2008/01/02/genpuid-troubles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to check if a path is a Folder</title>
		<link>http://www.bscheiman.org/2007/11/18/how-to-check-if-a-path-is-a-folder/</link>
		<comments>http://www.bscheiman.org/2007/11/18/how-to-check-if-a-path-is-a-folder/#comments</comments>
		<pubDate>Sun, 18 Nov 2007 21:41:03 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/2007/11/18/how-to-check-if-a-path-is-a-folder/</guid>
		<description><![CDATA[For the life of me, I couldn&#8217;t do anything like this last night. Sleep depravation is deadly. In case anyone&#8217;s wondering, this does the trick: private bool isFolder(String path) { return ((File.GetAttributes(path) &#38; FileAttributes.Directory) == FileAttributes.Directory); } Yeah. It&#8217;s nice.]]></description>
			<content:encoded><![CDATA[<p>For the life of me, I couldn&#8217;t do anything like this last night. Sleep depravation is deadly.</p>
<p>In case anyone&#8217;s wondering, this does the trick:<br />
<code><br />
private bool isFolder(String path) {<br />
return ((File.GetAttributes(path) &amp; FileAttributes.Directory) == FileAttributes.Directory);<br />
}</code></p>
<p>Yeah. It&#8217;s nice.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2007/11/18/how-to-check-if-a-path-is-a-folder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working with MusicBrainz</title>
		<link>http://www.bscheiman.org/2007/11/15/working-with-musicbrainz/</link>
		<comments>http://www.bscheiman.org/2007/11/15/working-with-musicbrainz/#comments</comments>
		<pubDate>Fri, 16 Nov 2007 02:02:39 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/2007/11/15/working-with-musicbrainz/</guid>
		<description><![CDATA[I decided that while I&#8217;m on winter break, instead of doing something useful like.. I don&#8217;t know, finally getting some rest, I&#8217;ll code yet another MusicBrainz client. Yes, yet another project. Picard sucks and the MBTagger is being discontinued quite soon, so&#8230; I stumbled upon Scott Peterson&#8217;s awesome MusicBrainz-Sharp library and I&#8217;ve been talking to]]></description>
			<content:encoded><![CDATA[<p>I decided that while I&#8217;m on winter break, instead of doing something useful like.. I don&#8217;t know, finally getting some rest, I&#8217;ll code yet another <a href="http://www.musicbrainz.org" target="_blank">MusicBrainz</a> client. Yes, yet another project. Picard sucks and the MBTagger is being discontinued quite soon, so&#8230;</p>
<p>I stumbled upon Scott Peterson&#8217;s awesome <a href="http://themonkeysgrinder.blogspot.com/" title="Scott Peterson" target="_blank">MusicBrainz-Sharp</a> library and I&#8217;ve been talking to him re: some issues it has, but so far it&#8217;s been great help. Kudos to you, Scott!</p>
<p>Suggestions,  comments, etc? Feel free to leave a comment!</p>
<p>(And here I thought MBTagger/Picard were slow&#8230; and it&#8217;s MusicBrainz.Org forcing you to do 1 query per second. Is it time to implement a separate server cache? Hrm&#8230; Maybe.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2007/11/15/working-with-musicbrainz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open-Source GPS</title>
		<link>http://www.bscheiman.org/2007/10/07/open-source-gps/</link>
		<comments>http://www.bscheiman.org/2007/10/07/open-source-gps/#comments</comments>
		<pubDate>Mon, 08 Oct 2007 02:59:12 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.bscheiman.org/2007/10/07/open-source-gps/</guid>
		<description><![CDATA[Being sick of all the commercial GPS solutions out there, I&#8217;ve decided to start coding my own GPS solution &#8211; with autorouting and all! Let&#8217;s see how this goes&#8230; So far I&#8217;ve already coded the NMEA/GPS integration. Took me about 30m to write it up; should be fun. IMO the hardest part will be getting]]></description>
			<content:encoded><![CDATA[<p>Being sick of all the commercial GPS solutions out there, I&#8217;ve decided to start coding my own GPS solution &#8211; with autorouting and all! Let&#8217;s see how this goes&#8230;</p>
<p>So far I&#8217;ve already coded the NMEA/GPS integration. Took me about 30m to write it up; should be fun.  IMO the hardest part will be getting the maps to work. Any takers on reverse engineering Destinator/TomTom/etc formats?</p>
<p>Once it&#8217;s finished, it should work on all .NET enabled platforms &#8211; standard and/or Mono-based. I&#8217;ll be supporting Windows Mobile as the standard mobile platform for development.</p>
<p>Drop me a line.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bscheiman.org/2007/10/07/open-source-gps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
