<?xml version="1.0" encoding="UTF-8"?><rss version="0.92">
<channel>
	<title>/dev/null</title>
	<link>http://hokietux.net/blog</link>
	<description>A blackhole of technology, hacks, and caffeine.</description>
	<lastBuildDate>Fri, 02 Jul 2010 18:20:11 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	<!-- generator="WordPress/3.0.1" -->

	<item>
		<title>Attn: Engineers &#8211; Stop Misusing &#8216;Utilize&#8217;</title>
		<description><![CDATA[<p>Perhaps one of the most common mistakes I see in technical writing is the misuse of the word &#8216;<a href="http://bit.ly/a7wQB8" target="_blank">utilize</a>&#8216;.  It is sadly common for authors writing conference and journal papers to substitute the word &#8216;utilize&#8217; for &#8216;use&#8217;, often because it simply sounds fancier.  There seems to be a perception that if you describe your idea with convoluted, big words, then it will sound more intelligent.</p>
<p>False.</p>
<p>If your idea, design, or invention is truly innovative, then your writing should be just as impressive with simple and easy-to-read syntax and diction.  Attempting to glorify your work with impossible-to-understand diction only alienates your audience and makes what is likely an already complicated subject even harder to understand.  On top of that, &#8216;utilize&#8217; <strong>does not</strong> have the same definition as &#8216;use&#8217;.</p>
<p>Here is <strong>a real example from an actual published paper</strong> where the author goes totally overboard while trying to sound intelligent.  The result is that the author just sounds like an idiot.  This example is a little worse than what most people would write, but it does illustrate how far some authors take this practice.  Here it is:</p>
<blockquote><p>&#8220;The tests illustrate that the waveform utilized the correct interfaces and properly utilized them.&#8221;</p></blockquote>
<p>Impressive, right?</p>
<p style="text-align: center;"><a href="http://hokietux.net/blog/wp-content/uploads/2010/05/epic-fail.jpg"><img class="aligncenter size-full wp-image-163" title="epic-fail" src="http://hokietux.net/blog/wp-content/uploads/2010/05/epic-fail.jpg" alt="" width="384" height="428" /></a></p>
<p>There is a Wiki Answers article which perfectly summarizes the proper use of &#8216;utilize&#8217;.  Here is what it says:</p>
<blockquote><p>&#8220;Use&#8221; and &#8220;utilize&#8221; are often used interchangably, as synonyms, usually to turn a boring one-syllable word into a fancy-sounding three-syllable word. Unfortunately this practice has diluted the original meaning of &#8220;utilize.&#8221;The real difference is &#8220;use&#8221; means what you think it means, to employ for some purpose, whereas &#8220;utilize&#8221; means to use something for other than its intended purpose, or to give something a purpose that it is not normally thought to have. &#8230;</p>
<p>Example:</p>
<p>&#8220;We used the bus to transport all the tour members.&#8221;</p>
<p>&#8220;We utilized the bus for shelter in the fierce, unexpected blizzard.&#8221;</p>
<p>In the first you are using the bus as&#8230; a bus, so &#8220;use&#8221; is appropriate and sufficient. In the second you are using the bus as a shelter, so you are giving it a utility, or purpose, that it does not normally serve.</p>
<p>Try not to use &#8220;utilize&#8221; when you really just mean &#8220;use.&#8221; You may think it makes you sound sophisticated to simple people, and it probably does, but it also makes you sound simple to sophisticated people. <img src='http://hokietux.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p>I think the closing line is perfect.  You may think you sound intelligent by using &#8216;utilize&#8217;, but you sound pretty stupid to people that are intelligent.</p>
<p><a href="http://ezinearticles.com/?Writing----How-To-Use-Use-Versus-Utilize-Correctly?&#38;id=479574" target="_blank">A Great Article About Use vs. Utilize</a></p>
<p><a href="http://www.randomhouse.com/wotd/index.pperl?date=19980828" target="_blank">A 12-Year Old Piece About Use vs. Utilize</a></p>
<p><a href="http://wiki.answers.com/Q/What_is_the_difference_between_the_words_use_and_utilize" target="_blank">Referenced Wiki Answers Page</a></p>
]]></description>
		<link>http://hokietux.net/blog/?p=162</link>
			</item>
	<item>
		<title>OS X &#8216;delete&#8217; key not working in Terminal Fix</title>
		<description><![CDATA[<p>By default, the OS X terminal will not send the proper &#8216;^H&#8217; character when you press the &#8216;delete&#8217; key.  This isn&#8217;t a problem if you are working locally, because the terminal knows how to interpret local keystrokes without issue.</p>
<p>However, if you are SSH&#8217;d to a remote machine and/or are using <a title="GNU Screen rocks" href="http://www.gnu.org/software/screen/" target="_blank">GNU screen</a>, there is a chance that you will no longer be able to backspace properly.</p>
<p>Luckily, the fix is simple.  Head into the Terminal preferences, click the &#8216;Advanced&#8217; tab, and check the box about &#8216;delete&#8217; sending the &#8216;^H&#8217; character.  It should look something like this on Snow Leopard:</p>
<p style="text-align: center;"><a href="http://hokietux.net/blog/wp-content/uploads/2010/02/delet_H_screenie.png"><img class="aligncenter size-full wp-image-147" title="delete_H_screenie" src="http://hokietux.net/blog/wp-content/uploads/2010/02/delet_H_screenie.png" alt="Terminal Preferences" width="355" height="274" /></a></p>
<p>And that&#8217;s it!  You should be all set =)</p>
]]></description>
		<link>http://hokietux.net/blog/?p=146</link>
			</item>
	<item>
		<title>Using &lt;complex&gt; vs &lt;complex.h&gt; with g++</title>
		<description><![CDATA[<p>Long story short: Including &#60;complex.h&#62; in your C++ source file does <strong>not</strong> include the C language complex.h header!</p>
<p>After fighting with <a title="GNU Compiler Collection" href="http://gcc.gnu.org/" target="_blank">g++</a> to get the proper complex numbers implementation working in a recent project of mine, I thought I would post what I discovered in case anyone else finds it useful.</p>
<p>It is fairly common knowledge that use of C-style standard headers in C++ is considered deprecated.  By this I mean that if you want to include &#60;stdio.h&#62;, a C library, in a C++ source file, then you should actually include &#60;cstdio&#62;.  The same exists for other libraries, e.g. &#60;math.h&#62; is &#60;cmath&#62;, &#60;signal.h&#62; is &#60;csignal&#62;, etc.  This has been phased into recent versions of compilers with varying levels of enforcement.</p>
<p>However, not all standard C libraries have been moved over to the new standard.  For a long while, &#60;stdint.h&#62;, which includes bit-specific datatype declarations like <em>int32_t</em> and <em>uint64_t</em>, did not have an equivalent &#60;cstdint&#62;.  In these circumstances, including the originial &#60;stdint.h&#62; worked just fine, and included the C language header as expected.</p>
<p>This is not the case with &#60;complex.h&#62;.</p>
<p>The <a title="C++ Complex Numbers Reference" href="http://www.cplusplus.com/reference/std/complex/" target="_blank">C++ standard implementation of complex numbers</a> is a templated type.  To declare it, you do something like:</p>
<blockquote><p>complex&#60;float&#62; mynum(2.0, 3.0);</p></blockquote>
<p>The <a title="C Complex Numbers" href="http://www.opengroup.org/onlinepubs/009695399/basedefs/complex.h.html" target="_blank">C version of complex numbers is an IEEE standard</a> (1003.1), and is declared like so:</p>
<blockquote><p>complex double mynum = {2.0 + 3.0*I}</p></blockquote>
<p>If you want to use the C version, you might think all you need to do is #include &#60;complex.h&#62; in a C++ file&#8230; turns out that doesn&#8217;t work.  For whatever reason, g++ will include the C++ templated type rather than the standard C language type.</p>
<p>If you want to use the C version, the easiest way I&#8217;ve found is to simply give the absolute path to the include header, like so:</p>
<blockquote><p>#include &#8220;/usr/include/complex.h&#8221;</p></blockquote>
<p>I ended up using the C++ version anyways, but while I was attempting to use the C implementation, this one certainly had me confused for a bit.</p>
]]></description>
		<link>http://hokietux.net/blog/?p=139</link>
			</item>
	<item>
		<title>Back Up &amp; Running</title>
		<description><![CDATA[<p>So everything seems to be back up and running again.</p>
<p>I use Slicehost to host the server for this site as well as a few other things.  Slicehost, as far as I&#8217;m concerned, is fantastic and I would recommend them to anyone (note: not affiliated &#8211; just a satisfied customer).</p>
<p>For the past few months, I have been unable to do any serious upgrades on my slice &#8211; everytime I attempted a system upgrade, my slice would not come back up after a reboot.  In addition, every few weeks, my slice would crash altogether &#8211; weird filesystem stuff going on.</p>
<p>Anyways, I&#8217;ve been simply restoring from backups of my slice every couple of weeks for the last few months to keep the site alive until I could find time to fix the problem, whatever it was.  Turns out the problem was that I simply wasn&#8217;t using the Slicehost Manager properly.  I had completely missed a little tab where you specify a kernel for your slice:</p>
<p>Simply setting this to the appropriate kernel, allowing the reboot, and then doing a system upgrade fixed everything, hah.  So it goes.</p>
<p>Well, that said, I still need to post some new content.  I have some good ideas for a few posts&#8230; I just need to find the time =)</p>
]]></description>
		<link>http://hokietux.net/blog/?p=136</link>
			</item>
	<item>
		<title>A Guide to Setting Up Git, Gitosis, and Gitweb</title>
		<description><![CDATA[<p>I have recently migrated to using <a title="Git homepage" href="http://git-scm.com/" target="_blank">Git</a> for my (D)SCM-of-choice, and so far, I am extremely happy with it.  I am hosting public and private Git trees on this server, and using it as the &#8216;central node&#8217; for most of my coding and <a title="My public configs." href="http://git.hokietux.net/configs.git" target="_blank">configs</a>.  I am using <a title="Gitweb Wiki / Homepage" href="http://git.or.cz/gitwiki/Gitweb" target="_blank">Gitweb</a> for the web interface and <a title="Gitosis!" href="http://eagain.net/gitweb/?p=gitosis.git" target="_blank">Gitosis</a> to manage secure commits from multiple users and machines.  While getting Git set up was a <a title="Duke Nukem FTW" href="http://www.duke-n-doom.com/duke_sounds/piece02.wav" target="_blank">piece of cake</a>, getting everything else up and running wasn&#8217;t quite so smooth.  This is a guide for getting the whole system up and running quickly and easily so you can get back to <a title="HACK SOME GIBSONS!" href="http://www.youtube.com/watch?v=x3XzPhdBx9g" target="_blank">hacking</a> =)</p>
<p>The meat of this post is about Gitweb, for which there seems to be far fewer useful guides and docs out there (relative to the number for Git and Gitosis).  This is also the part that I  found the most difficult and time-consuming.  Hopefully, with this guide, it&#8217;ll be a much smoother ride for you.</p>
<h2>Why I Use Git</h2>
<p>There are a <a title="Why Git is better than your SCM..." href="http://whygitisbetterthanx.com/" target="_blank">metric tonne</a> of <a title="Git 'doesn't care'!" href="http://tomayko.com/writings/the-thing-about-git" target="_blank">sites</a> about <a title="Linus's diatrabe/tech-talk about why Git is awesome and everyone and everything else is stupid. Except him. He's the only smart one." href="http://www.youtube.com/watch?v=4XpnKHJAok8" target="_blank">why you</a> should <a title="Random blog about why you should use Git (obviously)." href="http://issaris.blogspot.com/2006/10/why-git.html" target="_blank">use Git</a>, so I won&#8217;t try to convince you.  I will, briefly, however, go over my reasons for choosing it:</p>
<ol>
<li><em>People and projects I am working with are using it</em> &#8211; This is extremely important, especially if you plan on making any sort of contributions to these projects.  As a computer engineer, I have a significant amount of interaction with Linux kernel trees (like the one over at <a title="Xilinx Linux Kernel Tree" href="http://git.xilinx.com/cgi-bin/gitweb.cgi" target="_blank">Xilinx</a>, for example), and nearly all such projects are using Git as their SCM.</li>
<li><em>It works with projects that aren&#8217;t using it</em> &#8211; The only projects I work with that aren&#8217;t using Git use <a title="CVS done right!" href="http://subversion.tigris.org/" target="_blank">Subversion</a>. Thankfully, the &#8216;git svn&#8217; tools work beautifully, and allow me to use Git to interact with svn repos.  This is very significant, as it allows me to further simplify my workflow into one common thread.</li>
<li><em>Git is quickly becoming a valuable skill</em> &#8211; Knowing SCMs has been, and always will be, valuable skills to employers.  The situation used to be that knowing CVS was a major selling point.  Then it moved to Subversion.  People are starting to realize the benefits of distributed SCMs, and focus is transitioning to DSCMs.  Of these, Git is at the fore-front in terms of user base and company adoption.</li>
<li><em>It is small</em> <em>&#38; fast</em>- I don&#8217;t have infinite bandwidth, and I have a lot of interaction with code repositories.  Being able to clone Git trees and commit new</li></ol><p>&#8230;</p>]]></description>
		<link>http://hokietux.net/blog/?p=58</link>
			</item>
	<item>
		<title>ROFLcopter ASCII Text</title>
		<description><![CDATA[<p>EDIT: If you know how to make WordPress stop mangling whitespace in comments, please leave it in a comment and let me know!  As you can see, everyone&#8217;s ROFLCOPTER comment posts get totally owned.</p>
<p>I&#8217;m tired of searching the web for the ASCII version of the ROFLcopter whenever I need it, so I&#8217;m posting it here to make it easy to find.</p>
<pre class="roflcopter">ROFL:ROFL:LOL:<span id="rofl_main_right" style="visibility: visible;">ROFL:ROFL</span>
           &#124;
  L   /---------
 <span id="rofl_small_left" style="visibility: visible;">L</span>O<span id="rofl_small_right" style="visibility: visible;">L</span>===       []\
  L    \         \
        \_________\
          &#124;     &#124;
       -------------/</pre>
<p>And yes, there are plenty of times that I &#8216;need&#8217; the ROFLcopter text.</p>
<p>Edit:</p>
<p>Below is an alternate version, posted by Dark Emporer in a comment.  Thanks!!</p>
<pre>  ROFL:ROFL:LOL:ROFL:ROFL
       ______&#124;_____
 L    /            \
LOL===            []\
 L    \______________\
         &#124;     &#124;
       -------------/</pre>
<p>Edit #2:</p>
<p>iampatrick4life has contributed a version that will work on sites that cut whitespace, like GameFAQs: <a href="http://hokietux.net/blog/?p=67&#38;cpage=1#comment-209" target="_self">Comment #209</a></p>
]]></description>
		<link>http://hokietux.net/blog/?p=67</link>
			</item>
	<item>
		<title>Videos Freezing After 2 Seconds</title>
		<description><![CDATA[<p>Two work-arounds in one day!</p>
<p>Today, my Flash player seemed to stop working while trying to watch a YouTube video.  It would play two seconds (without audio), and then freeze.  If I skipped ahead in the video, it would simply play the next two seconds (again, without audio), and freeze.</p>
<p>Googling around, there are a bunch of fixes including re-installing Firefox, deleting &#38; re-installing Flash, and a few others even more drastic including re-installing all media codecs.</p>
<p>I&#8217;m still not sure what the problem is, but I think it is in Firefox.  All I did to fix it was completely close firefox (I even issued a <span style="color: #ff0000;">$ sudo pkill firefox</span> to make sure), reopen Firefox, and told it NOT to reload tabs.  Sure enough, video playback was fixed.</p>
<p>If anyone has more information as to what is causing this, please post it!</p>
<p>Firefox version: 3.0.5</p>
<p>Cheers!</p>
]]></description>
		<link>http://hokietux.net/blog/?p=50</link>
			</item>
	<item>
		<title>Xorg 1.5 &amp; Device Detection</title>
		<description><![CDATA[<p>Apparently the <a title="Hey, it's better than XF86..." href="http://www.x.org/wiki/" target="_blank">Xorg</a> developers have added some sort of device autodetection in one of the recent releases of Xorg server v1.5+</p>
<p>Unfortunately, this seems to be breaking a lot of system configurations &#8211; mine included.  I have been using <a title="Good moring, Dave." href="http://www.freedesktop.org/wiki/Software/hal" target="_blank">HAL</a> and <a title="Just a man page here." href="http://linux.die.net/man/4/evdev" target="_blank">evdev</a> to detect and configure my system input devices, and as soon as I updated xorg to the new release things started breaking.  If you are experiencing any of the following:</p>
<ul>
<li>Wrong keyboard layout / keymap</li>
<li>Xorg freezing on startup</li>
<li>Black screen</li>
<li>Mouse won&#8217;t respond</li>
<li>Keyboard doesn&#8217;t respond</li>
<li>Mouse actions seem to be really, really sped up (this is a strange one, and seems to only happen in composite window managers)</li>
</ul>
<p>&#8230; then this might be your problem!  Here&#8217;s the fix:</p>
<p>Head to <span style="color: #ff0000;">/etc/X11/xorg.conf</span>, and find the <span style="color: #008000;">&#8220;Server Flags&#8221;</span> section.  If for whatever reason you don&#8217;t have a &#8220;Server Flags&#8221; section, add it just under the &#8220;Module&#8221; Section.  Now, add the <span style="color: #ff6600;">&#8220;AutoAddDevices&#8221;  &#8220;false&#8221;</span> option (ignore the<span style="color: #ff6600;"> &#8220;Xinerama&#8221;</span> option &#8211; that was put there by <a title="I &#60;3 nvidia on Linux systems." href="http://linux.die.net/man/1/nvidia-xconfig" target="_blank">nvidia-xconfig</a>):</p>
<pre style="padding-left: 30px;">Section "ServerFlags"
    Option         "Xinerama" "0"
    Option         "AutoAddDevices" "false"
EndSection</pre>
<p>Hold onto your helmet and restart X11 &#8211; hopefully, things work.</p>
<p>If you are still having problems, feel free to post here and I&#8217;ll help if I can!</p>
<p>Cheers!</p>
]]></description>
		<link>http://hokietux.net/blog/?p=47</link>
			</item>
	<item>
		<title>vimrc updated</title>
		<description><![CDATA[<p>This is just a heads-up that the vimrc I provide via bzr (or via direct link) has been updated.  <a title="Thomas Upton's Blog" href="http://thomas.fiveuptons.com/" target="_blank">Tom</a> recently found a <a href="http://items.sjbach.com/319/configuring-vim-right" target="_blank">site</a> or two that had some nifty settings I hadn&#8217;t stumbled across yet.  Changes include:</p>
<ul>
<li>Now using smarter buffer-management via &#8216;set hidden&#8217;</li>
<li>Window title will now make sense</li>
<li>*** No longer have to scroll to bottom of screen for your screen to start scrolling! There is now a 15-line DMZ between your cursor and the bottom of the window!  Sorry for the asterisks&#8230; but this is the feature I&#8217;m most excited about.</li>
<li>Some smarter key mappings</li>
<li>Menu-completions for command-mode options/commands</li>
<li>Enabled the &#8216;matchit&#8217; plugin (available in most repos)</li>
</ul>
<p>There are a few other usability changes if you really feel like digging through it.  If anyone has anything they think should be added, please post and let me know!</p>
<p>You can find the file here: <a title="vimrc" href="http://git.hokietux.net/configs.git/blob_plain/HEAD:/global/vimrc" target="_blank">http://git.hokietux.net/configs.git/blob_plain/HEAD:/global/vimrc</a></p>
]]></description>
		<link>http://hokietux.net/blog/?p=40</link>
			</item>
	<item>
		<title>I&#8217;m Still Alive</title>
		<description><![CDATA[<p>This is really just a &#8216;ping&#8217; post to say that this site is still up and I plan on getting back to it as soon as I can.  This semester, the last of my time as an undergraduate, has been extraordinarily rough in terms of coursework.  I have had just about no time to do anything but work, and so updating this blog and website quickly got put on the back-burner.</p>
<p>As of start of classes in January, I will be a GRA here at Virginia Tech, pursuing my Masters in Computer Engineering.  I very much hope to have more time to keep this site updated with new, useful material.</p>
<p>So, <a title="from one of the greatest games ever created..." href="http://www.youtube.com/watch?v=Y6ljFaKRTrI" target="_blank">I&#8217;m Still Alive</a>, and I&#8217;ll be back soon!</p>
]]></description>
		<link>http://hokietux.net/blog/?p=38</link>
			</item>
</channel>
</rss>
