<?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>haslo.ch - Guido's Blog &#187; web</title>
	<atom:link href="http://www.haslo.ch/blog/tag/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.haslo.ch/blog</link>
	<description>We believe that people with passion can change the world for the better.</description>
	<lastBuildDate>Sun, 07 Mar 2010 17:58:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Getting MySQL 5.0 to work in Ruby 1.9.1 on Windows 7</title>
		<link>http://www.haslo.ch/blog/getting-mysql-5-0-to-work-in-ruby-1-9-1-on-windows-7/</link>
		<comments>http://www.haslo.ch/blog/getting-mysql-5-0-to-work-in-ruby-1-9-1-on-windows-7/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 00:15:59 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=2768</guid>
		<description><![CDATA[So, I got MySQL to work for my Ruby on Rails development environment. Let&#8217;s be clear about what I actually wanted:

Ruby 1.9.1
Rails 2.3.2
Any version of MySQL whatsoever
Any way whatsoever to make my up-to-date Ruby on Rails talk to that MySQL

I don&#8217;t care what version of MySQL. I don&#8217;t care if I have to force platforms [...]]]></description>
			<content:encoded><![CDATA[<p>So, I got MySQL to work for my Ruby on Rails development environment. Let&#8217;s be clear about what I actually wanted:</p>
<ul>
<li>Ruby 1.9.1</li>
<li>Rails 2.3.2</li>
<li>Any version of MySQL whatsoever</li>
<li>Any way whatsoever to make my up-to-date Ruby on Rails talk to that MySQL</li>
</ul>
<p>I don&#8217;t care what version of MySQL. I don&#8217;t care if I have to force platforms for Gems or recompile or whatever. I never did care, and I&#8217;ll happily even dig through code to make manual changes before compiling or what-have-you. What I do care about is actually getting this to work, so I can finally stop tinkering and start doing something productive.</p>
<p>Well, I learned a lot on my way there. I had a glimpse at <a href="http://www.linuxtopia.org/online_books/programming_books/ruby_tutorial/Extending_Ruby_Creating_a_Makefile_with_extconf.rb.html">how extconf.rb works</a> (because I had to figure out correct parameters), I dug through rails sources to find errors that you don&#8217;t even want to know about, had another good look at <a href="http://www.gnu.org/software/make/">makefiles</a>, and generally tried to understand what exactly didn&#8217;t work.</p>
<p>Also, there is a more efficient way to do this, as <a href="http://www.haslo.ch/blog/getting-mysql-5-0-to-work-in-ruby-1-9-1-on-windows-7/#comment-1134">pointed out by Luis in the comments</a>. Thanks!</p>
<h2>So, in the end, it now works</h2>
<p>This <a href="http://blog.xajler.net/?p=14">tutorial blog post on Code Elite</a> was very, very helpful. So were Luis comments <a href="http://www.haslo.ch/blog/actually-installing-ruby-on-rails-on-windows-7/#comments">here</a> and <a href="http://blog.mmediasys.com/2009/06/23/rubyinstaller-get-ready-to-vote/#comments">else</a>w<a href="http://blog.mmediasys.com/2008/08/10/rubygems-with-power-comes-responsibility/#comments">here</a> (although me being quite the newbie when it comes to gcc and the likes, they went a bit over my head).</p>
<p>The Code Elite post is not the best at being copy-paste-able though, the formatting kinda ruins that. It does point out the correct steps to getting MySQL to work in Ruby (and consequently, Rails).</p>
<p>Long story short, these are the steps that lead to a working MySQL integration:<br />
<span id="more-2768"></span></p>
<ol>
<li>Download Ruby 1.9.1 MinGW32 and the corresponding developer kit from the <a href="http://rubyinstaller.org/downloads/">RubyInstaller download page</a>. I prefer the zipped version to the one with installer, to be honest, but that&#8217;s just me.</li>
<li>Get the 32-bit version (not 64-bit, or linking won&#8217;t work) of MySQL 5.0 (not 5.1, or nothing will work) from <a href="http://dev.mysql.com/downloads/mysql/5.0.html#win32">the MySQL download page</a>. Again, I prefer the zipped version.</li>
<li>Get the current mysql-ruby source (2.8.1, currently) <a href="http://tmtm.org/downloads/mysql/ruby/">from its FTP</a>.</li>
<li>Put Ruby into <strong>F:\Ruby</strong> or your path of preference. Add Ruby&#8217;s <strong>\bin</strong> path to <a href="http://www.computerhope.com/issues/ch000549.htm">your path variable</a>. Close and re-open the command window to update the path.</li>
<li>Install Rails &#8211; this is easy.

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> rails</pre></div></div>

</li>
<li>Put MySQL into <strong>F:\mysql</strong> (or your path, again). No adding to the path yet here.</li>
<li>Put the contents of the mysql-ruby package into your Ruby path (I didn&#8217;t try other paths) and point your command line there, then run this:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ruby extconf.rb <span style="color: #660033;">--with-mysql-lib</span>=f:<span style="color: #000000; font-weight: bold;">/</span>mysql<span style="color: #000000; font-weight: bold;">/</span>lib<span style="color: #000000; font-weight: bold;">/</span>opt <span style="color: #660033;">--with-mysql-include</span>=f:<span style="color: #000000; font-weight: bold;">/</span>mysql<span style="color: #000000; font-weight: bold;">/</span>include</pre></div></div>

</li>
<li>Run <strong>make</strong>, then <strong>make install</strong>. Here is where 64-bit MySQL fails.</li>
<li>Add the following to your path variable (substituting your MySQL location): <strong>F:\mysql\lib\opt;F:\mysql\bin</strong>. Again, close and re-open the command window to update the path.</li>
<li>Run this to let Ruby <a href="http://www.youtube.com/watch?v=EmEPXXJ4sKw">know MySQL</a>:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ruby <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'require &quot;mysql&quot;'</span></pre></div></div>

</li>
<li>Get into a command prompt as admin (you might have to right-click a command prompt and &#8220;run as admin&#8221; to get to this) to install and start the MySQL service. To do that, run these in the mysql\bin directory:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">mysqld-nt <span style="color: #660033;">--install</span>
net start mysql</pre></div></div>

</li>
<li>Now that the MySQL server is actually running, you can connect to it to change your root password:

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">mysqladmin <span style="color: #660033;">-u</span> root password topsecretpassword</pre></div></div>

</li>
</ol>
<p>Steps 1-3 are just downloads. Steps 4 and 5 already installs Ruby on Rails completely. Steps 6-12 then are for installing mysql (which is necessary first for the DLLs to be available to the compiler later) and then compiling the mysql-ruby package (driver?) from scratch into Ruby.</p>
<p>Interestingly, step 7 builds the makefile through Ruby (mostly, with some automated C mixed in), while step 8 actually compiles the C source through make and step 10 plugs this into Ruby. Steps 11 and 12 merely configure the MySQL server.</p>
<p>This should be it. And this time, I hope I did no forbidden or ugly things <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Getting MySQL 5.0 to work in Ruby 1.9.1 on Windows 7" />  <span>For they know not what they do and stuff.<br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/getting-mysql-5-0-to-work-in-ruby-1-9-1-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Actually Installing Ruby on Rails, on Windows 7</title>
		<link>http://www.haslo.ch/blog/actually-installing-ruby-on-rails-on-windows-7/</link>
		<comments>http://www.haslo.ch/blog/actually-installing-ruby-on-rails-on-windows-7/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 13:32:10 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=2703</guid>
		<description><![CDATA[OK, so I found out what it is that I have to install for my wonderful Ruby on Rails environment. It&#8217;s time to start installing.
Keep in mind that much of what I&#8217;m doing here is an experiment (and thanks Luis for being so patient with me). I don&#8217;t claim to know what works and what [...]]]></description>
			<content:encoded><![CDATA[<p>OK, so<a href="http://www.haslo.ch/blog/assessing-installing-ruby-on-rails-on-windows-7/"> I found out what it is that I have to install</a> for my wonderful Ruby on Rails environment. It&#8217;s time to start installing.</p>
<p>Keep in mind that much of what I&#8217;m doing here is an experiment (and thanks Luis for being so patient with me). I don&#8217;t claim to know what works and what doesn&#8217;t, I&#8217;m just trying to find my way around here. Follow my steps at your own risk &#8211; they seem to lead to a working environment for now.</p>
<p><strong>Update 2009-07-03 02:16:</strong> <a href="http://www.haslo.ch/blog/getting-mysql-5-0-to-work-in-ruby-1-9-1-on-windows-7/">There&#8217;s a followup post now</a> that does less evil and wrong things, hopefully. It also happens to result in a working Ruby on Rails plus MySQL environment, something this post doesn&#8217;t quite achieve.</p>
<h2>Getting Ruby to run</h2>
<p>Admittedly, I was a little surprised by how easy this was. <a href="http://rubyinstaller.org/downloads/">Get Ruby and the Development kit from here</a>. Extract them (using <a href="http://www.7-zip.org/">7-Zip</a>, which you should use by default anyway), and put all the contained directories where you want your Ruby. Mine resides in <strong>F:\Ruby</strong>.</p>
<p>Next, add the newly installed bin directory to your path. Quickest way: Open the control panel, search for &#8220;environment&#8221;, then click &#8220;edit the system environment variables&#8221;, and add the bin after a semicolon to the &#8220;Path&#8221; variable. Then, change the path in <em>devkit/msys/1.0.11/etc/fstab</em> to where you put your stuff &#8211; you won&#8217;t have to do this if you put Ruby into <strong>C:\Ruby</strong>.</p>
<p>This is what we get:</p>
<div id="attachment_2704" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Ruby_Installed.jpg"><img class="size-medium wp-image-2704 " title="Ruby Installed" src="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Ruby_Installed-300x166.jpg" alt="Ruby Installed" width="300" height="166" /></a><p class="wp-caption-text">Ruby Installed</p></div>
<p>Yay. That was easy. And the greatest thing is that the One-Click installer (even if it&#8217;s not entirely one-click, currently) also already adds support for Ruby Gems.<br />
<span id="more-2703"></span></p>
<h2>Getting Rails</h2>
<p>The next step is to install some gems. There is <a href="http://akitaonrails.com/2009/1/13/the-best-environment-for-rails-on-windows">a long list on Akita on Rails</a>, but after realizing how little stuff works with Ruby 1.9.1 and Windows 7, I chose to (nearly) only install the things I need:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> rails</pre></div></div>

<p>This installs Rails and the gems it depends on.</p>
<h2>ImageMagick, and Some More Stuff</h2>
<p>Next, since I planned to do so and not out of some technical necessity, we install ImageMagick for Windows &#8211; get the newest <a href="http://rubyforge.org/frs/?group_id=12&amp;release_id=35951">Win32 Binary Gem version from RubyForge</a> and extract it somewhere. Install the gem by going into the directory it&#8217;s extracted into and then executing this:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> rmagick-2.10.0-x86-mswin32.gem</pre></div></div>

<p>Substitute the gem name with the version you&#8217;re actually using. Then install ImageMagick itself, with the .exe that you just extracted as well.</p>
<p>If you&#8217;re like me, you won&#8217;t be able to resist attempting to install some more gems. <a href="http://www.railsenvy.com/2009/5/6/railsconf-2009-tuesday">Here&#8217;s a nice video with some suggestions</a> from Railsconf 2009. Personally, I installed googlecharts, twitter, cucumber and pdf-writer, but haven&#8217;t gotten to try them out properly yet.</p>
<h2>Testing What We Have</h2>
<p>We have Ruby on Rails now. Yep, that&#8217;s it. Rather painless so far, eh? Test it by going to the directory you want your projects in and typing this:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rails testproject</pre></div></div>

<p>You&#8217;ll see Rails creating plenty of directories and files now. After it&#8217;s done, do this:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> testproject
ruby script<span style="color: #000000; font-weight: bold;">/</span>server</pre></div></div>

<p>Point your web browser to <em>http://127.0.0.1:3000/</em>, and you should see Rails, in all its glory:</p>
<div id="attachment_2720" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Rails_Installed.jpg"><img class="size-medium wp-image-2720 " title="Rails Installed" src="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Rails_Installed-300x233.jpg" alt="Rails Installed" width="300" height="233" /></a><p class="wp-caption-text">Rails Installed</p></div>
<h2>Not Installing MySQL</h2>
<p>I started out by attempting to install <a href="http://www.mysql.com/">MySQL 5.1</a>, thinking it was stable and all. However, as it turns out, there are plenty of problems with that, and none of them stem from MySQL:</p>
<ul>
<li>The mysql gem relies on libmySQL.dll, which has to be in the path.</li>
<li>The mysql gem is precompiled, there is no 64-bit Windows version, and the 32-bit version relies on msvcrt-ruby18.dll, rather than the newer msvcrt-ruby191.dll.</li>
<li>There is a segmentation fault that I haven&#8217;t found the cause of.</li>
</ul>
<p>I was able to fix the first two problems by adding the mysql/bin directory to the path, and installing a Ruby 1.8.6 alongside the Ruby 1.9.1 to get the 1.8 DLL &#8211; but nevertheless, I never got rid of that segmentation fault, despite multiple reinstalls and even trying MySQL 5.0 instead of 5.1 (<a href="http://www.google.ch/search?q=mysql-2.7.3-x86-mswin32%2Fext%2Fmysql.so%3A+[BUG]+Segmentation+fault">Google search for the exact cause</a>, none of the proposed solutions helped).</p>
<p>(Do not install the 1.8 DLL, that&#8217;s apparently very evil.)</p>
<p>Nothing worked until I gave it a try with Ruby 1.8.6 (after all, I had that installed from attempting to get that DLL, and only needed to change the path variable and install the rails gem to have a go), and lo and behold everything worked fine.</p>
<p>Which convinced me <strong><em>not</em></strong> that I should use Ruby 1.8.6, there&#8217;s too many shiny new features in 1.9.1. Instead, it convinced me that I should forget about MySQL.</p>
<h2>Installing PostgreSQL</h2>
<p>Since <a href="http://www.oracle.com/technology/pub/articles/kern-rails-migrations.html">Rails migrations</a> make database dependencies a thing of the past (or at least, to a very, very large extent), I decided to install PostgreSQL instead. Their <a href="http://www.postgresql.org/download/windows">one-click Windows installer for PostgreSQL 8.3</a> worked a treat and installed the service and everything just fine. Next step, have Rails be able to talk to it &#8211; there are two PostgreSQL gems, only one of which (postgres-pr, <strong><em>not</em></strong> ruby-postgres) currently seems to work in Windows. So let&#8217;s get it:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> postgres-pr <span style="color: #660033;">--platform</span>=mswin32</pre></div></div>

<div id="attachment_2746" class="wp-caption alignright" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Create_Role.jpg"><img class="size-thumbnail wp-image-2746 " title="Create Role" src="http://www.haslo.ch/blog/wp-content/uploads/2009/06/Create_Role-150x150.jpg" alt="Create Role 150x150 Actually Installing Ruby on Rails, on Windows 7" width="150" height="150" /></a><p class="wp-caption-text">Create Role</p></div>
<p>(Not sure if the platform is necessary, but it can&#8217;t hurt.)</p>
<p>Set up a database user (&#8220;login role&#8221; in PostreSQL-speak) with pgAdmin &#8211; I called mine rails &#8211; and give it a password and the ability to create databases.</p>
<p>Now we change the <em>database.yml</em> in the project&#8217;s <em>/config/</em> directory. Open it with some text editor (I like <a href="http://www.editplus.com/">EditPlus</a> myself) and change it to fit your configuration.</p>
<p>This is the <em>database.yml</em> that makes my test project fly:</p>

<div class="wp_syntax"><div class="code"><pre class="ini" style="font-family:monospace;">development:
 adapter: postgresql
 database: testproject
 username: rails
 password: ***
 pool: <span style="">5</span>
 timeout: <span style="">5000</span>
 host: localhost</pre></div></div>

<p>Note that host:localhost (or the equivalent for your database) is important, as otherwise Rails will attempt to connect to PostgreSQL using <a href="http://en.wikipedia.org/wiki/Unix_domain_socket">UNIX Sockets</a> &#8211; which obviously wouldn&#8217;t work. After that, let&#8217;s test. Go to your shiny rails project in a command window, and type or paste these:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ruby script<span style="color: #000000; font-weight: bold;">/</span>generate scaffold <span style="color: #7a0874; font-weight: bold;">test</span> title:string description:text
rake db:create
rake db:migrate
ruby script<span style="color: #000000; font-weight: bold;">/</span>server</pre></div></div>

<p>After that, point your browser to <em>http://127.0.0.1:3000/tests/</em> and poke around a bit. You should have your first Rails app running, including all four <a href="http://en.wikipedia.org/wiki/Create,_read,_update_and_delete">CRUD</a> actions.</p>
<div id="attachment_2733" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2009/06/CRUD_Running.jpg"><img class="size-medium wp-image-2733 " title="CRUD Running" src="http://www.haslo.ch/blog/wp-content/uploads/2009/06/CRUD_Running-300x199.jpg" alt="CRUD Running" width="300" height="199" /></a><p class="wp-caption-text">CRUD Running</p></div>
<h2>I Think I&#8217;m Done Here</h2>
<p>Done after installing aforementioned <a href="https://addons.mozilla.org/en-US/firefox/addon/1843">Firebug</a> (just click &#8220;install&#8221;), <a href="https://addons.mozilla.org/en-US/firefox/addon/60">Web Developer</a> (yep, &#8220;install&#8221;) and <a href="http://git-scm.com/">Git</a> for msys <a href="http://code.google.com/p/msysgit/downloads/list">from Google Code</a> (which seems to work fine so far). There&#8217;s a Ruby gem for Git, too; install with this:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> git</pre></div></div>

<p>I then also got <a href="http://www.vim.org/download.php#pc">gVim 7.3</a> &#8211; not for the faint-hearted, I do have some experience with vim from coding Python on Linux though. I will also test how well editing works with my <a href="http://www.editplus.com/">EditPlus</a>, and probably some IDEs. Either way, I&#8217;ll probably make a little personal user interface evaluation post later on.</p>
<p>Looking back to <a href="http://www.haslo.ch/blog/assessing-installing-ruby-on-rails-on-windows-7/">the assessment post</a>, I&#8217;m actually not done at all. The following things are still missing &#8211; most of them, for a reason:</p>
<ul>
<li>ruby-debug <a href="http://rubyforge.org/tracker/index.php?func=detail&amp;aid=26292&amp;group_id=1900&amp;atid=7439">doesn&#8217;t work with Ruby 1.9.x yet</a>, so that falls flat. It&#8217;s merely a wrapper for the built-in debugger though, so I will be able to debug anyway.</li>
<li><a href="http://mongrel.rubyforge.org/">Mongrel</a> has &#8220;ruby script/server&#8221; produce another segmentation fault, and I don&#8217;t want to spend another 7 hours for not finding a solution to it.</li>
<li><a href="http://httpd.apache.org/">Apache</a> doesn&#8217;t make much sense in a pure development environment, particularly not if we don&#8217;t have Mongrel anyway.</li>
<li><a href="http://subversion.tigris.org/getting.html#windows">Subversion has plenty of versions on their download page</a>. I downloaded <a href="http://www.sliksvn.com/en/download">the one from Slik SVN</a> myself, but haven&#8217;t installed it yet until I actually need it. So that&#8217;s technically missing, too.</li>
</ul>
<h2>Where To Go Now</h2>
<p>There are some resources that can get you started with your most splendid new Ruby on Rails environment. If you have no idea what Rails is yet or why you should use it, have a look at <a href="http://www.railsenvy.com/2007/3/22/ruby-on-rails-video-presentation">this presentation</a>. I found the <a href="http://oreilly.com/catalog/9780596515775/">Head First Rails</a> book to be a very good introduction, too. Concerning Ruby, <a href="http://poignantguide.net/ruby/">Why&#8217;s (Poignant) Guide to Ruby</a> (available <a href="http://poignantguide.net/ruby/whys-poignant-guide-to-ruby.pdf">as pdf</a>, too) is both free <em>and</em> great, albeit talking about Ruby 1.8.2, a tiny bit outdated. If you like it thorough, get the book only known as <a href="http://www.pragprog.com/titles/ruby3/programming-ruby-1-9">the Pickaxe</a>. It is as good as they say.</p>
<p>Thanks for listening, and I hope I can help one or two among you out. You like it? You hate it? You found something I didn&#8217;t? Let me and all your fellow readers know in the comments!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/actually-installing-ruby-on-rails-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Assessing Installing Ruby on Rails, on Windows 7</title>
		<link>http://www.haslo.ch/blog/assessing-installing-ruby-on-rails-on-windows-7/</link>
		<comments>http://www.haslo.ch/blog/assessing-installing-ruby-on-rails-on-windows-7/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 12:48:45 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=2675</guid>
		<description><![CDATA[So I wanted to get up and running with a development system for Ruby on Rails, on my shiny freshly installed Windows 7 machine (so, no development stuff on it as of yet whatsoever). However, the recent Ruby update to 1.9.1 brought such big changes that apparently, many libraries don&#8217;t work with it anymore &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>So I wanted to get up and running with a development system for Ruby on Rails, on my shiny freshly installed Windows 7 machine (so, no development stuff on it as of yet whatsoever). However, the recent Ruby update to 1.9.1 brought such big changes that apparently, many libraries don&#8217;t work with it anymore &#8211; so the installer of choice, the <a href="http://rubyforge.org/projects/rubyinstaller/">One-Click Ruby Installer</a>, is (for now) stuck at supporting Ruby 1.8.6 only.</p>
<p><strong>Update 2009-06-23 15:12:</strong> There seems to be <a href="http://github.com/oneclick/rubyinstaller/tree/master">a way to make the one-click installer build Ruby 1.9.1</a>, guess I&#8217;ll have to try that out.</p>
<p>The <a href="http://rubyforge.org/forum/forum.php?forum_id=33233">One-Click Ruby Installer is not dead</a>, and there&#8217;s even a <a href="http://blog.mmediasys.com/2009/06/23/rubyinstaller-get-ready-to-vote/">design vote for the 1.9.1 website</a>. But since I want my development environment bleeding edge and I want it now, I&#8217;ll just have to make do with a manual install. Since I haven&#8217;t found a tutorial detailing the steps for that, I&#8217;ll just do it from scratch and take you along the ride. Good tutorials I did find are:</p>
<ul>
<li><a href="http://akitaonrails.com/2009/1/13/the-best-environment-for-rails-on-windows">The Best Environment for Rails on Windows</a>, including a rant against IDEs</li>
<li><a href="http://allaboutruby.wordpress.com/2006/01/09/installing-rails-on-windows-step-by-step-tutorial/">Installing Rails on Windows</a>, including a guide for setting up MySQL</li>
<li><a href="http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/">Time For A Grown-Up Server</a>, for adding Mongrel and Apache</li>
</ul>
<p>So, what do we need, for a full-blown environment?</p>
<ul>
<li><a href="http://www.ruby-lang.org/en/">Ruby 1.9.1</a> &#8211; obviously, can&#8217;t have Ruby without Ruby</li>
<li><a href="http://docs.rubygems.org/">Ruby Gems 1.3.4</a> &#8211; since gems are the Ruby way of distributing anything</li>
<li><a href="http://rubyonrails.org/">Rails 2.3</a> &#8211; obviously, can&#8217;t have Ruby on Rails without Rails</li>
<li><a href="http://www.mysql.com/">MySQL 5.1</a> &#8211; the database we&#8217;ll use, although others would work as well</li>
<li><a href="http://mongrel.rubyforge.org/">Mongrel 1.1.5</a> &#8211; reliable and secure webserver</li>
</ul>
<p>That&#8217;s it for the start, but for additional tool goodness (and in order to have some of the above run properly in the first place) we need more:</p>
<ul>
<li><a href="http://git-scm.com/">Git 1.6.3.3</a> &#8211; the version control used by rubyists</li>
<li><a href="http://subversion.tigris.org/">Subversion 1.6.3</a> &#8211; very widespread version control (and I refuse to add CVS to this list)</li>
<li><a href="http://www.mingw.org/wiki/MinGW">MinGW</a> and <a href="http://www.mingw.org/wiki/MSYS">MSYS</a> &#8211; to make sure gems can be installed and compiled if necessary</li>
<li><a href="http://rake.rubyforge.org/">Rake 0.8.3</a> &#8211; the ruby version of make</li>
<li><a href="http://rubyforge.org/projects/ruby-debug/">Ruby-Debug 0.10.3</a> &#8211; who doesn&#8217;t like debuggers</li>
<li><a href="http://www.imagemagick.org/">ImageMagick 6.5.3</a> &#8211; can be used by Rails</li>
<li><a href="https://addons.mozilla.org/en-US/firefox/addon/1843">Firebug 1.4.0b2</a> &#8211; for debugging web apps&#8217; JavaScript code (requires the <a href="http://www.mozilla.com/en-US/firefox/all-beta.html">Firefox 3.5 beta</a>)</li>
<li><a href="https://addons.mozilla.org/en-US/firefox/addon/60">Web Developer 1.1.6</a> &#8211; for CSS and HTML stuff</li>
<li><a href="http://sourceforge.net/projects/mysqlcc/">MySQL Control Center 0.9.4</a> &#8211; or an alternative that can admin MySQL databases</li>
<li><a href="http://httpd.apache.org/">Apache 2.2.11</a> &#8211; front-end webserver for load balancing and whatnot</li>
</ul>
<p>An intimidating list at first sight, but I did try to get everything I might need in there. The hard part then will be making all of them talk together. Concerning the actual development environment, I am as of yet undecided between <a href="http://www.vim.org/download.php">gVim</a> and an IDE like <a href="http://www.aptana.com/">Aptana</a> or <a href="http://www.jetbrains.com/ruby/">RubyMine</a>. Both have upsides and downsides.</p>
<p>So, is this list complete, do you see anything I&#8217;ve missed? Or do I have anything on it that you think is irrelevant? Let me know in the comments!</p>
<p>So much for talking the talk &#8211; the next step will be walking the walk, and I&#8217;ll make sure to give you a full tutorial afterwards.</p>
<p>Update 2009-06-24 16:05: Yep, Ruby on Rails is installed. <a href="http://www.haslo.ch/blog/actually-installing-ruby-on-rails-on-windows-7/">Here is how I did it</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/assessing-installing-ruby-on-rails-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>World of Goo has a Soundtrack</title>
		<link>http://www.haslo.ch/blog/world-of-goo-has-a-soundtrack/</link>
		<comments>http://www.haslo.ch/blog/world-of-goo-has-a-soundtrack/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 10:35:40 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Video Games]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[indy games]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[video games]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=2051</guid>
		<description><![CDATA[Well, it always had. But now the sountrack to World of Goo (which I reviewed earlier) is actually available online, too.
Get the soundtrack from here.
If all the raving reviews everywhere didn&#8217;t win you over, maybe this will   And maybe you, just like me, merely appreciate that the independent developer that you already supported [...]]]></description>
			<content:encoded><![CDATA[<p>Well, it always had. But now the sountrack to <a href="http://worldofgoo.com/">World of Goo</a> (which <a href="http://www.haslo.ch/blog/review-world-of-goo/">I reviewed earlier</a>) is actually available online, too.</p>
<p><a href="http://kylegabler.com/WorldOfGooSoundtrack/">Get the soundtrack from here</a>.</p>
<div id="attachment_2052" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2009/01/worldofgoosountrack.jpg"><img class="size-medium wp-image-2052" title="World of Goo Soundtrack" src="http://www.haslo.ch/blog/wp-content/uploads/2009/01/worldofgoosountrack-300x175.jpg" alt="World of Goo Soundtrack" width="300" height="175" /></a><p class="wp-caption-text">World of Goo Soundtrack</p></div>
<p>If all the raving reviews everywhere didn&#8217;t win you over, maybe this will <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="World of Goo has a Soundtrack" />  And maybe you, just like me, merely appreciate that the independent developer that you already supported does indeed care as much about his customers as you knew he would.</p>
<p>My favourite? Red Carpet Extend-o-matic &#8211; I&#8217;m corny like that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/world-of-goo-has-a-soundtrack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NaN votes for Obama!</title>
		<link>http://www.haslo.ch/blog/nan-votes-for-obama/</link>
		<comments>http://www.haslo.ch/blog/nan-votes-for-obama/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 18:27:21 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[america]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[Politics]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1659</guid>
		<description><![CDATA[The US citizens have their voting machines, us here in Switzerland have our big media. Since they&#8217;re so much more professional than us bloggers (yep, they are, I have the links to prove it, in German), I&#8217;m sure they can tell us the current standings when it comes to the US election?
Of course they can! [...]]]></description>
			<content:encoded><![CDATA[<p>The US citizens have their voting machines, us here in Switzerland have our big media. Since they&#8217;re so much more professional than us bloggers (yep, they are, <a href="http://delicious.com/haslo/blablablog">I have the links to prove it</a>, in German), I&#8217;m sure they can tell us the current standings when it comes to the US election?</p>
<p>Of course they can! Like <a href="http://www.20min.ch/">20min.ch</a>:</p>
<div id="attachment_1660" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/11/nan-votes.jpg"><img class="size-medium wp-image-1660" title="NaN votes, will he make it?" src="http://www.haslo.ch/blog/wp-content/uploads/2008/11/nan-votes-300x250.jpg" alt="NaN Votes" width="300" height="250" /></a><p class="wp-caption-text">NaN Votes</p></div>
<p><a href="http://en.wikipedia.org/wiki/NaN">NaN</a> votes, great stuff <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="NaN votes for Obama!" />  Too bad it&#8217;s fixed already.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/nan-votes-for-obama/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Movie Plot Terrorist Threat #6666: Twitter!</title>
		<link>http://www.haslo.ch/blog/movie-plot-terrorist-threat-6666-twitter/</link>
		<comments>http://www.haslo.ch/blog/movie-plot-terrorist-threat-6666-twitter/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 15:08:32 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Politics]]></category>
		<category><![CDATA[america]]></category>
		<category><![CDATA[conspiracy theories]]></category>
		<category><![CDATA[islam]]></category>
		<category><![CDATA[real life]]></category>
		<category><![CDATA[religion]]></category>
		<category><![CDATA[studies]]></category>
		<category><![CDATA[terrorism]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1606</guid>
		<description><![CDATA[The terrorists were all over World of Warcraft, now they&#8217;re all over Twitter, according to this Wired article:
Scenario 1: Terrorist operative &#8220;A&#8221; uses Twitter with… a cell phone camera/video function to send back messages, and to receive messages, from the rest of his [group]&#8230; Other members of his [group] receive near real time updates (similar [...]]]></description>
			<content:encoded><![CDATA[<p>The terrorists were <a href="http://www.haslo.ch/blog/help-terrorists-in-world-of-warcraft/">all over World of Warcraft</a>, now they&#8217;re all over <a href="http://twitter.com/">Twitter</a>, according to this <a href="http://blog.wired.com/defense/2008/10/terrorist-cell.html">Wired article</a>:</p>
<blockquote><p><span style="font-style: italic;"><strong>Scenario 1</strong>: Terrorist operative &#8220;A&#8221; uses Twitter with… a cell phone camera/video function to send back messages, and to receive messages, from the rest of his [group]&#8230; Other members of his [group] receive near real time updates (similar to the movement updates that were sent by activists at the RNC) on how, where, and the number of troops that are moving in order to conduct an ambush.</span></p>
<p><em><strong>Scenario 2</strong>: Terrorist operative &#8220;A&#8221; has a mobile phone for Tweet messaging and for taking images. Operative &#8220;A&#8221; also has a separate mobile phone that is actually an explosive device and/or a suicide vest for remote detonation. Terrorist operative &#8220;B&#8221; has the detonator and a mobile to view &#8220;A&#8217;s&#8221; Tweets and images. This may allow &#8220;B&#8221; to select the precise moment of remote detonation based on near real time movement and imagery that is being sent by &#8220;A.&#8221;</em></p>
<p><em><strong>Scenario 3</strong>: Cyber Terrorist operative &#8220;A&#8221; finds U.S. [soldier] Smith’s Twitter account. Operative &#8220;A&#8221; joins Smith’s Tweets and begins to elicit information from Smith. This information is then used for… identity theft, hacking, and/or physical [attacks]. This scenario… has already been discussed for other social networking sites, such as My Space and/or Face Book.</em></p></blockquote>
<p>Yeah, what the <a href="https://icon.army.mil/anon/304/304_anon_index.cfm">304th Military Intelligence Battalion</a> (which is so utterly well-versed in information technology that their security certificate doesn&#8217;t fit their URL) writes <a href="http://www.fas.org/irp/eprint/mobile.pdf">in their PDF report</a> makes a lot of sense. And the PDF report likening all muslims to jihadist terrorists is tremendously coherent as well, after all, it&#8217;s what our media tells us, and our media is Always Right™.</p>
<p>I think my stupidity allergy is acting up, I&#8217;ll have to stop writing for now.</p>
<p>Via <a href="http://twitter.com/MatthiasG/status/977415784">Matthias Gutfeld</a>, who had it via <a href="http://twitter.com/Ugugu/status/977410743">Ugugu</a>.</p>
<p><strong>Update 08-10-30, 15:18:</strong> Meanwhile, <a href="http://www.schneier.com/blog/archives/2008/10/movie-plot_thre_1.html">Schneier has a post about this</a> as well. Apparently, somebody on Slashdot commented:</p>
<blockquote><p>Wait until they find out about email and chatrooms!!!!</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/movie-plot-terrorist-threat-6666-twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good Old Games, Beta now Public</title>
		<link>http://www.haslo.ch/blog/good-old-games-beta-now-public/</link>
		<comments>http://www.haslo.ch/blog/good-old-games-beta-now-public/#comments</comments>
		<pubDate>Sat, 25 Oct 2008 04:30:04 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Video Games]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[bubble 2.0]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[video games]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1604</guid>
		<description><![CDATA[Just a short note &#8230; remember that post about Good Old Games that I made recently, when I said something along the lines of &#8220;hihi, you can&#8217;t get in&#8221;?
Well, the beta is public now. And they added some more games. So go ahead and knock yourself out with awesome old school gaming bliss!
Also on Joystiq.
]]></description>
			<content:encoded><![CDATA[<p>Just a short note &#8230; remember that post about <a href="http://www.gog.com/en/frontpage/">Good Old Games</a> that I <a href="http://www.haslo.ch/blog/good-old-games-beta-launched/">made recently</a>, when I said something along the lines of &#8220;hihi, you can&#8217;t get in&#8221;?</p>
<p>Well, the beta is public now. And they added some more games. So go ahead and <a href="http://www.gog.com/en/frontpage/">knock yourself out</a> with awesome old school gaming bliss!</p>
<p>Also on <a href="http://www.joystiq.com/2008/10/24/good-old-games-open-to-public-adds-publishers/">Joystiq</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/good-old-games-beta-now-public/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good Old Games, Beta Launched</title>
		<link>http://www.haslo.ch/blog/good-old-games-beta-launched/</link>
		<comments>http://www.haslo.ch/blog/good-old-games-beta-launched/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 13:06:56 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Video Games]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[bubble 2.0]]></category>
		<category><![CDATA[drm]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[video games]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1406</guid>
		<description><![CDATA[Yay! I was watching Good Old Games for some time now, was always looking forward to it since I first saw it. Today, I got the beta access key, a reason to rejoyce and share  
First off, it&#8217;s awesome because you find games you always wanted to play but never found time to, then [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1411" class="wp-caption alignright" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-header.jpg"><img class="size-thumbnail wp-image-1411" title="The header of their teaser page" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-header-150x150.jpg" alt="GOG Header" width="150" height="150" /></a><p class="wp-caption-text">GOG Header</p></div>
<p>Yay! I was watching <a href="http://www.gog.com/en/frontpage/">Good Old Games</a> for some time now, was always looking forward to it since I first saw it. Today, I got the beta access key, a reason to rejoyce and share <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="Good Old Games, Beta Launched" /> </p>
<p>First off, it&#8217;s awesome because you find games you always wanted to play but never found time to, then it&#8217;s awesome because you find games that you never knew were good. Finally, there&#8217;s no DRM, and it&#8217;s cheap &#8230; I&#8217;ll let their advertisement speak for itself:</p>
<blockquote><p>1. We’ve got games your 10-year-old won’t be better at.<br />
2. So you’re cheap. It’s okay – we are, too. ($10 max, currently)<br />
3. You buy it, you keep it. (No DRM!)<br />
4. All games are Vista and XP compatible. (with compatibility hints)<br />
5. Extend the experience with tons of cool and exclusive add-ons.<br />
6. We’re bringing together classic games and a classy community.<br />
7. It&#8217;s so easy, your gramma’s probably already playing.</p></blockquote>
<div id="attachment_1410" class="wp-caption alignleft" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-store.jpg"><img class="size-thumbnail wp-image-1410" title="The layout of their store" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-store-150x150.jpg" alt="GOG Store" width="150" height="150" /></a><p class="wp-caption-text">Store Layout</p></div>
<div id="attachment_1414" class="wp-caption alignright" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-welcome.jpg"><img class="size-thumbnail wp-image-1414" title="The &quot;welcome&quot; mail that I got" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/gog-welcome-150x150.jpg" alt="GOG Welcome Mail" width="150" height="150" /></a><p class="wp-caption-text">The Welcome Mail</p></div>
<p>Admittedly, this is a bit of a teaser in another way too, because the beta is only open for those who signed up for it before September 8th, so I&#8217;m sorry, you&#8217;ll probably not get in. Yet.</p>
<p>The catalogue they have is already impressive by the way. Not only do you find <a href="http://en.wikipedia.org/wiki/Fallout_(video_game)">Fallout</a> (both, of course), <a href="http://en.wikipedia.org/wiki/Descent_(computer_game)">Descent</a> (all three) and <a href="http://en.wikipedia.org/wiki/Earthworm_Jim">Earthworm Jim</a>, but also underestimated gems like <a href="http://en.wikipedia.org/wiki/Sacrifice_(video_game)">Sacrifice</a> that I&#8217;ll love to play again <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' title="Good Old Games, Beta Launched" /> </p>
<p>Now let&#8217;s just hope the <a href="http://arstechnica.com/articles/culture/idiocy-of-games-drm.ars">silly</a> <a href="http://www.shacknews.com/onearticle.x/54853">publisher</a> <a href="http://www.gamesindustry.biz/articles/cd-projekt-publishers-scared-to-go-drm-free">paranoia</a> dies down and they realize that &#8220;Help, they sell our games that we don&#8217;t sell at all otherwise, and that are pirated all over the web without DRM right now, it&#8217;s evil&#8221;  doesn&#8217;t really make sense.</p>
<p>Or what do you think?</p>
<p><strong>Update 08-09-27 22:34:</strong> I played through the tutorial of Sacrifice meanwhile again &#8211; gee, that game is really good, even after all this time <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Good Old Games, Beta Launched" />  Sure, the controls are a tad dated, the configuration options could be slightly better, and the graphics show their age, but the game has charme! Something many current-day games sorely lack. And, the payment and download and installation process went entirely smooth, no problems whatsoever &#8211; a really good impression the site makes here, continuing in the &#8220;no DRM, no hassle&#8221; vein <img src='http://www.haslo.ch/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="Good Old Games, Beta Launched" />  Something I gladly pay for.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/good-old-games-beta-launched/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing LyX (LaTeX) on Windows Vista</title>
		<link>http://www.haslo.ch/blog/installing-lyx-latex-on-windows-vista/</link>
		<comments>http://www.haslo.ch/blog/installing-lyx-latex-on-windows-vista/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 19:12:14 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[Philosophy]]></category>
		<category><![CDATA[studies]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1350</guid>
		<description><![CDATA[So inspired by this blog post (German) and the therein linked, not uninsightful comment about how stupid Office text processing (and how awesome LaTeX) is, and generally being a friend of OSS, I decided to jump the gun and install something to that end.
Now, looking for reasonable GUIs (because I&#8217;m just too old to hack [...]]]></description>
			<content:encoded><![CDATA[<p>So inspired by <a href="http://www.theofel.de/archives/2008/09/textverarbeitung-vs-textsatz.html">this blog post</a> (German) and the therein linked, not uninsightful comment about <a href="http://www.ecn.wfu.edu/~cottrell/wp.html">how stupid Office text processing</a> (and how awesome <a href="http://en.wikipedia.org/wiki/LaTeX">LaTeX</a>) is, and generally being a friend of <a href="http://en.wikipedia.org/wiki/Open_source_software">OSS</a>, I decided to jump the gun and install something to that end.</p>
<p>Now, looking for reasonable <abbr title="Graphical User Interfaces">GUIs</abbr> (because I&#8217;m just too old to hack anything without a comfortable environment) I stumbled upon <a href="http://www.lyx.org/">LyX</a>, which seems to be reasonably comfy. It runs now, after an afternoon of shouting and crying, so I decided I&#8217;d make a little tutorial as to how exactly you&#8217;ll have to install it.</p>
<p>My Windows Vista Business (32-Bit) is German, so bear with me regarding the screenshot texts.</p>
<p><strong>Update 2009-03-25 13:41:</strong> There is <a href="http://wiki.lyx.org/Windows/LyXWinInstaller">a Windows Installer</a> now, which still takes some time to install and requires various steps, but has some message boxes guiding you through the process. It&#8217;s still in beta, but worked a treat on my Windows XP machine.</p>
<p><span id="more-1350"></span></p>
<h2>Which LyX? And What Else?</h2>
<p>Now, first off, there are two installation packages for LyX (which you find <a href="http://wiki.lyx.org/Windows/Windows">on the Wiki</a>). At the time of this writing, <strong>do not</strong> download the one linked <a href="http://www.lyx.org/Download">on the download page</a>. The installer you want is (currently) this one:</p>
<p style="text-align: center;"><a class="urllink" rel="nofollow" href="ftp://ftp.lyx.org/pub/lyx/bin/1.5.6/LyX-1.5.6-1-Installer-Bundle.exe">LyX-1.5.6-1-Installer-Bundle.exe</a> (95 MB)</p>
<p>(There might be a newer version <a href="http://wiki.lyx.org/Windows/Windows">on the Wiki</a>, so check back there if you access this post later than September 2008.)</p>
<p>The non-bundle installer tries to download <a href="http://miktex.org/">MiKTeX</a> during the installation, which is nice, but it obviously does so with an <strong>outdated URL</strong>, yielding a 404 (not found) error:</p>
<div id="attachment_1351" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx-404.jpg"><img class="size-thumbnail wp-image-1351" title="404 error when attempting to download MiKTeX" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx-404-150x150.jpg" alt="404 Error" width="150" height="150" /></a><p class="wp-caption-text">404 Error</p></div>
<p>The installation will complete despite this error, but you won&#8217;t have a LaTeX frontend, but just &#8230; a standalone editor without any exporting functionality, basically worth nil.</p>
<p>Keep in mind that despite the LyX setup telling you it can use an existing MiKTeX installation, that&#8217;s simply not true, as it looks for a <em>tex.exe</em> file, which the current distribution of MiKTeX just doesn&#8217;t include. So <strong>don&#8217;t download MiKTeX individually</strong> either, unless you don&#8217;t plan to use the LyX frontend.</p>
<p>So just install the bundle from the start.</p>
<h2>Installation</h2>
<p>OK, now that you have the proper file, it&#8217;s time to install it. <strong>You will need to install it as administrator</strong>, as the installation process will otherwise abort after 30 minutes (more in this later). So right-click the file, &#8220;Run as Administrator&#8221;.</p>
<div id="attachment_1355" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_runasadmin.jpg"><img class="size-thumbnail wp-image-1355" title="Run the bundle installer as Administrator" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_runasadmin-150x150.jpg" alt="Run as Admin" width="150" height="150" /></a><p class="wp-caption-text">Run as Admin</p></div>
<p>OK, enter your credentials if you use <a href="http://en.wikipedia.org/wiki/User_Account_Control">UAC</a>, and off you go. <strong>Select &#8220;Install MiKTeX&#8221;</strong>, UI language and dictionaries, select a directory and start. You&#8217;ll probably want to install it for all users. The LyX installation itself will be over rather quick, although you&#8217;ll have to agree to each dictionary&#8217;s terms of use individually.</p>
<p>After a minute or so, the MiKTeX license agreement will pop up, tick &#8220;I accept&#8221; and off goes the long part. First, select whether you want to install MiKTeX for all users or just yourself &#8211; choosing the same here as for LyX is wise &#8211; and a directory.</p>
<p>Now, the next question for settings seems rather innocent, but I strongly suggest <strong>switching &#8220;install missing packages&#8221; to &#8220;yes&#8221;</strong> (I&#8217;ll write about why yes and not &#8220;ask every time&#8221; a bit below, selecting &#8220;no&#8221; doesn&#8217;t make much sense since you want a working program):</p>
<div id="attachment_1356" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_askmefirst.jpg"><img class="size-thumbnail wp-image-1356" title="Install missing packages should be &quot;Yes&quot;" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_askmefirst-150x150.jpg" alt="Install Missing Packages" width="150" height="150" /></a><p class="wp-caption-text">Install Missing Packages</p></div>
<p>Good, start. You will see the following screen for quite some time now:</p>
<div id="attachment_1357" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_installing_miktex.jpg"><img class="size-thumbnail wp-image-1357" title="LyX installing MiKTeX" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_installing_miktex-150x150.jpg" alt="LyX installing MiKTeX" width="150" height="150" /></a><p class="wp-caption-text">LyX installing MiKTeX</p></div>
<p>After about 15 minutes on my mobile Core2 with 2GHz, you will need to <strong>push &#8220;Next &gt;&#8221;</strong> after the completion of the MiKTeX setup, to continue the LyX setup. Now, if you didn&#8217;t select &#8220;Yes&#8221; above, a plethora of package installation dialogs will pop up &#8211; <strong>and grab focus</strong>, so if you happen to install happily, and do something else while the computer is milling, you might screw up your installation with a careless key press.</p>
<p>Just imagine, you happily type a blog post, and then you cancel the running installation because that blog post would&#8217;ve contained a &#8220;C&#8221; next when the popup grabs focus. Yes, experience speaking (although, OK, it must&#8217;ve been me panicking and pushing &#8220;Escape&#8221; instead).</p>
<div id="attachment_1361" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_packages.jpg"><img class="size-thumbnail wp-image-1361" title="Package installation for missing MiKTeX packages" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_packages-150x150.jpg" alt="Package Installation" width="150" height="150" /></a><p class="wp-caption-text">Package Installation</p></div>
<p>OK, so you haven&#8217;t screwed up. Another 20 minutes, and you will be greeted with an <strong>inviting image</strong>. If you started as administrator, that is, otherwise the installation routine will abort right here with an error and leave you with half a program installed.</p>
<div id="attachment_1370" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_driver_error.jpg"><img class="size-thumbnail wp-image-1370" title="LyX driver installation error" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_driver_error-150x150.jpg" alt="LyX Driver Error" width="150" height="150" /></a><p class="wp-caption-text">LyX Driver Error</p></div>
<p>Don&#8217;t worry, it&#8217;s just Vista being paranoid about the <a href="http://wiki.lyx.org/Windows/MetafileToEPSConverter">Metafile to EPS Converter</a>, a printer driver that&#8217;s installed in the course of this setup. <strong>&#8220;Install anyway&#8221;</strong> is the way to go.</p>
<p>Now, you&#8217;re nearly done. Close the setup (without checking the &#8220;run LyX immediately&#8221; box, unless you want to run it as administrator, too), and <strong>start LyX from the start menu</strong>. You will need to <strong>provide your UAC credentials</strong> yet again upon running LyX for the first time, since it does some further installation stuff for your standard user.</p>
<div id="attachment_1371" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_installed.jpg"><img class="size-thumbnail wp-image-1371" title="LyX Installed!" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/lyx_installed-150x150.jpg" alt="LyX Installed!" width="150" height="150" /></a><p class="wp-caption-text">LyX Installed!</p></div>
<h2>Conclusion</h2>
<p>In all honesty, I didn&#8217;t expect to spend an entire afternoon (well into the evening) installing a working LaTeX environment. It works now it seems, and I&#8217;m looking forward to writing things in a <abbr title="What You See Is What You Mean">WYSIWYM</abbr> typesetting system instead of a <abbr title="What You See Is What You Get">WYSIWYG</abbr> word processor (where you don&#8217;t quite get what you see after all, and it&#8217;s easy to focus on presentation over content or structure). But the way there could have been less annoying.</p>
<p><em><strong>Disclaimer:</strong> This isn&#8217;t the first time I&#8217;m writing something with LaTeX, the last time I wrote in a text editor with just basic highlighting. But that&#8217;s over five years ago &#8211; I do hear though that templating hasn&#8217;t gotten a lot easier since. I&#8217;ll now write a &#8220;test&#8221; 15 page paper with this first, before I fully delve into my diploma thesis. If this test doesn&#8217;t prove successful by my yet to be determined standards, which may include those dreaded custom styles (anybody has good documentation on .sty files?), off I am to <a href="http://www.openoffice.org/">OpenOffice</a> with <a href="http://www.tinypdf.com/">TinyPDF</a> again.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/installing-lyx-latex-on-windows-vista/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Stack Overflow: Solutions for Coders</title>
		<link>http://www.haslo.ch/blog/stack-overflow-solutions-for-coders/</link>
		<comments>http://www.haslo.ch/blog/stack-overflow-solutions-for-coders/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 12:56:35 +0000</pubDate>
		<dc:creator>haslo</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[bubble 2.0]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[snippets]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[vb]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.haslo.ch/blog/?p=1225</guid>
		<description><![CDATA[If you&#8217;re a programmer, you know the problem of solution googlability. It&#8217;s particularly prominent in mainstream languages (and one of the things I decried in my What&#8217;s Wrong with VBA series, as VBA is particularly bad in that respect); you have a problem, you google for it, unless you&#8217;re coding in a good awesome well-designed [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1252" class="wp-caption alignright" style="width: 160px"><a href="http://www.haslo.ch/blog/wp-content/uploads/2008/09/stack_overflow.jpg"><img class="size-thumbnail wp-image-1252" title="Stack Overflow in Firefox 3" src="http://www.haslo.ch/blog/wp-content/uploads/2008/09/stack_overflow-150x150.jpg" alt="Stack Overflow" width="150" height="150" /></a><p class="wp-caption-text">Stack Overflow</p></div>
<p>If you&#8217;re a programmer, you know the problem of solution googlability. It&#8217;s particularly prominent in mainstream languages (and one of the things <a href="http://www.haslo.ch/blog/whats-wrong-with-vba-23/#community">I decried</a> in my <a href="http://www.haslo.ch/blog/whats-wrong-with-vba-13/">What&#8217;s Wrong with VBA series</a>, as VBA is particularly bad in that respect); you have a problem, you google for it, unless you&#8217;re coding in a <span style="text-decoration: line-through;">good</span> <span style="text-decoration: line-through;">awesome</span> <span style="text-decoration: line-through;">well-designed</span> freak language like Ruby, Python, or Haskell, all you get back is trash and spam.</p>
<p>So, since you&#8217;re reading blogs and a programmer (or you&#8217;d have stopped reading by now, I guess), you know <a href="http://www.joelonsoftware.com/">Joel on Software</a>. Now this guy and his team have done something: They took the Wiki approach of &#8220;everybody can edit&#8221;, added Digg&#8217;s &#8220;let&#8217;s vote stuff up&#8221;, and made the whole thing a generic programming Q&amp;A site.</p>
<p style="text-align: center;"><strong>Behold, and witness, the rise of</strong> <a href="http://stackoverflow.com/"><strong>Stack Overflow</strong></a>.</p>
<p>From <a href="http://www.joelonsoftware.com/items/2008/09/15.html">his launch post</a>:</p>
<blockquote><p>Here’s how it’s supposed to work. This is a community project, so I’m being careful to avoid saying this is how it will work… that’s up to the community. But this is roughly what I have in mind.</p>
<p>Every question in Stack Overflow is like the Wikipedia article for some extremely narrow, specific programming question. <em>How do I enlarge a fizzbar without overwriting the user’s snibbit?</em> [...]</p>
<p>Some people propose answers. Others vote on those answers. If you see the right answer, vote it up. If an answer is obviously wrong (or inferior in some way), you vote it down. Very quickly, the best answers bubble to the top. The person who asked the question in the first place also has the ability to designate one answer as the “accepted” answer, but this isn’t required. The accepted answer floats above all the other answers.</p></blockquote>
<p>Sounds great! It has tags, it&#8217;s not restricted to one programming language, it could provide the framework for thousands of programmers collaborating. And the best thing: They plan to &#8220;keep it ad-free and open to the public forever&#8221;.</p>
<p>You&#8217;ll need an <a href="http://en.wikipedia.org/wiki/Openid">OpenID</a> to log in &#8211; I got one <a href="https://www.myopenid.com/">at myOpenID</a> myself. Too bad it&#8217;s not possible to log in without, but whatever &#8211; I guess this approach has more promise than the closed one that Microsoft tried to force upon us with that whole <a href="http://en.wikipedia.org/wiki/Windows_Live_ID">Live ID</a> crap, but still shares the same weaknesses (which are, mainly, another party involved and a central point of failure).</p>
<p>Nevertheless, I do think this could be awesome. Let&#8217;s see where it goes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.haslo.ch/blog/stack-overflow-solutions-for-coders/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
