<?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>The Irish Penguin</title>
	<atom:link href="http://www.theirishpenguin.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.theirishpenguin.com</link>
	<description>Watching Open Source unfold across Ireland</description>
	<lastBuildDate>Thu, 18 Feb 2010 22:00:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Getting Google Calendar to work with KDE&#8217;s KOrganizer, Kontact and KMail (on Kubuntu 9.10 Karmic Koala)</title>
		<link>http://www.theirishpenguin.com/2010/02/19/getting-google-calendar-to-work-with-kdes-korganizer-kontact-and-kmail-on-kubuntu-9-10-karmic-koala/</link>
		<comments>http://www.theirishpenguin.com/2010/02/19/getting-google-calendar-to-work-with-kdes-korganizer-kontact-and-kmail-on-kubuntu-9-10-karmic-koala/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 21:30:42 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[General Computers]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[UbuntuIreland]]></category>
		<category><![CDATA[akonadi]]></category>
		<category><![CDATA[calender]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[kontact]]></category>
		<category><![CDATA[korganizer]]></category>
		<category><![CDATA[kubuntu]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=454</guid>
		<description><![CDATA[Woah! That&#8217;s a lot of K&#8217;s in the title! But it&#8217;s all in the name of getting your calender talking to your desktop so it&#8217;s for a good kause (sorry!)
There&#8217;s this great package in KDE that has a really cool name called Akonadi (pronounced Ahh-Kon-ahh-dee if you want to impress your friends!). But more than [...]]]></description>
			<content:encoded><![CDATA[<p>Woah! That&#8217;s a lot of K&#8217;s in the title! But it&#8217;s all in the name of getting your calender talking to your desktop so it&#8217;s for a good kause (sorry!)</p>
<p>There&#8217;s this great package in KDE that has a really cool name called Akonadi (pronounced Ahh-Kon-ahh-dee if you want to impress your friends!). But more than just a cool name it does cool things &#8211; particularly in the realm of syncing data on your desktop with a remote server. Ooo yeah, including Google&#8217;s servers. Akonadi is one of the &#8216;pillars&#8217; of the KDE platform and here&#8217;s how you can use that pillar to prop up your schedules and calendaring with KOrganizer-Google integration. It&#8217;s easy on Kubuntu Karmic!</p>
<p>  &#8211; Install the Google data package for Akonadi<br />
   sudo apt-get install akonadi-kde-resource-googledata<br />
  &#8211; Ensure the Akonadi Tray Utility is running by performing the following steps<br />
  &#8211; Search for Akonadi in the search box of the Kickoff Launcher (KDE&#8217;s &#8220;Start&#8221; menu). Click the Akonadi Tray Utility that is found<br />
  &#8211; Go to the tray on the bottom right of your beautiful KDE desktop and click the small arrow, if necessary, to to expand all the tray icons<br />
  &#8211; You should see an icon for Akonadi. Right click on it and select &#8216;Start Akonadi&#8217;<br />
  &#8211; This should start the Akonadi server. You can verify this by right clicking the icon again and checking to see that there is now a &#8216;Stop Akonadi&#8217; option<br />
  &#8211; Right click on the Akonadi icon yet again and select &#8216;Configure&#8217;<br />
  &#8211; Under the Akonadi Resources configuration, click Add and elect to add a Google Calendar Data Resource<br />
  &#8211; Enter your login details for your google account<br />
  &#8211; Next it&#8217;s off to Kontact. Go to the Calendar in Kontact<br />
  &#8211; There should be a small Calendar pane on the bottom right to set up calendar resources. Click the Plus sign to add an &#8220;Akonadi (Provides access to calendars stored in Akonadi calendar folders)&#8221;<br />
  &#8211; In the resulting popup, choose the google resource in the list and ensure that Events is ticked to the right of it. (I didn&#8217;t try to get Todos or Journals working because I don&#8217;t use them)<br />
  &#8211; Hey presto! All your calendar details should now be pulled into KOrganizers calendar! Hurrah!!!</p>
<p>Just to note, at time of writing I found that I had to search and find the Akonadi Tray Utility on restarting the computer. Once it&#8217;s in the System Tray elect to start Akonadi as we did above and you&#8217;re back in the game! If you find a solution to this minor inconvenience on restarting your machine then please post below!</p>
<p>Thanks to Christian Mangold for this <a href="http://neversfelde.de/?p=5">article</a> which served as a great reference.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2010/02/19/getting-google-calendar-to-work-with-kdes-korganizer-kontact-and-kmail-on-kubuntu-9-10-karmic-koala/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Ruby Module that mixes in Class Methods (static) and Instance Methods</title>
		<link>http://www.theirishpenguin.com/2010/02/04/a-ruby-module-that-mixes-in-class-methods-static-and-instance-methods/</link>
		<comments>http://www.theirishpenguin.com/2010/02/04/a-ruby-module-that-mixes-in-class-methods-static-and-instance-methods/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 23:08:34 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[RubyIreland]]></category>
		<category><![CDATA[Rubyonrails]]></category>
		<category><![CDATA[static singleton class methods include extend module mixin ruby rails]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=445</guid>
		<description><![CDATA[Ho ho, this one can catch you out more than once so it&#8217;s high time to write a blog post to cover this off. Turns out it&#8217;s a commonly used pattern to the rescue. Thanks to eoin on #ruby.ie for pointing to the solution on RailsTips.org.
Here&#8217;s quite a tasty diagram too for easy reference.

module Swingable

 [...]]]></description>
			<content:encoded><![CDATA[<p>Ho ho, this one can catch you out more than once so it&#8217;s high time to write a blog post to cover this off. Turns out it&#8217;s a commonly used pattern to the rescue. Thanks to eoin on #ruby.ie for pointing to the solution on <a href="http://railstips.org/blog/archives/2009/05/15/include-vs-extend-in-ruby/">RailsTips.org</a>.</p>
<p>Here&#8217;s quite a tasty diagram too for <a href="http://smartbomb.com.au/2009/02/an-idiom">easy reference</a>.</p>
<pre>
module Swingable

    def self.included(base)
        base.extend(ClassMethods)
    end

    def instance_swing
        puts 'Did an instance swing!'
    end

    module ClassMethods
        def static_swing
            puts 'Did a static swing!'
        end
    end
end

class BaseballBat
   include Swingable
end

BaseballBat.static_swing
BaseballBat.new.instance_swing
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2010/02/04/a-ruby-module-that-mixes-in-class-methods-static-and-instance-methods/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ossdev-ireland: A new Irish Open Source Developers Group</title>
		<link>http://www.theirishpenguin.com/2010/01/18/ossdev-ireland-a-new-irish-open-source-developers-group/</link>
		<comments>http://www.theirishpenguin.com/2010/01/18/ossdev-ireland-a-new-irish-open-source-developers-group/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 21:23:35 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ossdevireland opensource development]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/2010/01/18/ossdev-ireland-a-new-irish-open-source-developers-group/</guid>
		<description><![CDATA[ossdev-ireland is a group set up to act as a melting pot for the various different Open Source groups in Ireland.
Many group mailing lists already exist in Ireland for individual technologies, development languages and frameworks. However, each community is sandboxed into its own world. As a result there is less chance for cross-pollination of ideas [...]]]></description>
			<content:encoded><![CDATA[<p>ossdev-ireland is a group set up to act as a melting pot for the various different Open Source groups in Ireland.</p>
<p>Many group mailing lists already exist in Ireland for individual technologies, development languages and frameworks. However, each community is sandboxed into its own world. As a result there is less chance for cross-pollination of ideas between FOSS technologies, communities and individuals. The ossdev-ireland mailing list is to augment the existing mailing lists as a place to share ideas across the entire Open Source development community in Ireland.</p>
<p>In particular, it would be great to see the outcomes of code jams, bug triage sessions, or even links to slides that were presented at a group meetup, posted here. You never know who may be interested!</p>
<p>So if you want to browse or join ossdev-ireland, please visit us at <a title="ossdev-ireland google group" href="http://groups.google.com/group/ossdev-ireland">http://groups.google.com/group/ossdev-ireland</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2010/01/18/ossdev-ireland-a-new-irish-open-source-developers-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Qt Programming Tips</title>
		<link>http://www.theirishpenguin.com/2010/01/16/qt-programming-tips/</link>
		<comments>http://www.theirishpenguin.com/2010/01/16/qt-programming-tips/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 11:17:07 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[qt]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/2010/01/16/qt-programming-tips/</guid>
		<description><![CDATA[This is a little more of an unusual blog post. It&#8217;s going to simply house a slowly growing list of Qt tips over time. Here goes
* Qt has the concept of models baked in. Usually you will only want to use them if you have a list of records involved. So let&#8217;s say you have [...]]]></description>
			<content:encoded><![CDATA[<p>This is a little more of an unusual blog post. It&#8217;s going to simply house a slowly growing list of Qt tips over time. Here goes</p>
<p>* Qt has the concept of models baked in. Usually you will only want to use them if you have a list of records involved. So let&#8217;s say you have a list of contacts like in an address book then this could be encapsulated in a QAbstractTableModel. If you just want to display a record in one-off fashion you can just populate a bunch of form fields (such as QLineEdits).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2010/01/16/qt-programming-tips/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Santa&#8217;s got Gems baby! Ruby Ireland Christmas Meetup 2009</title>
		<link>http://www.theirishpenguin.com/2009/12/18/santas-got-gems-baby-ruby-ireland-christmas-meetup-2009/</link>
		<comments>http://www.theirishpenguin.com/2009/12/18/santas-got-gems-baby-ruby-ireland-christmas-meetup-2009/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 20:11:49 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Geek]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[RubyIreland]]></category>
		<category><![CDATA[Rubyonrails]]></category>
		<category><![CDATA[UbuntuIreland]]></category>
		<category><![CDATA[christmas]]></category>
		<category><![CDATA[gem]]></category>
		<category><![CDATA[ireland]]></category>
		<category><![CDATA[meetup]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=419</guid>
		<description><![CDATA[Ho ho ho! The month&#8217;s Ruby Ireland meetup sprag right out of the traps with early adopters showing up at 6pm in the lobby area of the Trinity Capital Hotel, Wed Dec 16th. Easing into the evening with a 4 euro pint and talk of Android phones &#8211; seemingly the top item of everyone&#8217;s Christmas [...]]]></description>
			<content:encoded><![CDATA[<p>Ho ho ho! The month&#8217;s Ruby Ireland meetup sprag right out of the traps with early adopters showing up at 6pm in the lobby area of the Trinity Capital Hotel, Wed Dec 16th. Easing into the evening with a 4 euro pint and talk of Android phones &#8211; seemingly the top item of everyone&#8217;s Christmas shopping list &#8211; the latest crop of gems in the Ruby world was in hot debate, <a href="http://gemcutter.org/">gemcutter</a> in particular.</p>
<p>A couple of folks had been playing around with <a href="http://rubygame.org/">RubyGame</a> for visualising data as it changes on the fly &#8211; showing that this framework is for more than just gaming. The XML/HTML parser <a href="http://nokogiri.org">Nokogiri</a> was also mentioned a few of times in passing, with the particularly eye-catching quote &#8220;XML is like violence &#8211; if it doesn’t solve your problems, you are not using enough of it&#8221; adorning the home page of its website. And the cracking little tool <a href="http://www.gitready.com">tig</a> was also brought up, which has a dinky little ncurses interface into git repositories. Pretty cool; not least because it makes it easier for newbies to avoid being bitten when they start git&#8217;tin.</p>
<p>The downstairs lobby in the hotel worked out great for people to meet up and relax, with most people turning up at the scheduled 7 o clock for kick off. From there we took over the, what has to be said, pretty classy meeting room complete with old style couches and some Joan Miró paintings. Just in tune with the creative buzz we had going on. There wasn&#8217;t too much talk of Ruby for a while as most people were in stunned admiration of the room. Then the food platter arrived. Impressively, this is when everyone showed off their good manners by looking shyly at the platter for a few minutes, with that kind of &#8220;You first, sir&#8221; glint in their eye, before taking the plunge and sinking into the pakoras and wedges! Pretty much undoing any good work in the gym from earlier in the day!</p>
<p>One of the funnier moments of the night was when someone went to check the tweets against the (now settled upon) #rubyireland hashtag. Only to find lost rubyists tweeting from the hotel lobby as to where the meetup was on. After a quick runaround the lobby to herd anyone wielding a Macbook into the meeting room, the evening was back on track. We split up into a few smaller groups, with the main walk-through being on the <a href="http://github.com/theirishpenguin/qtonrails">qtonrails</a> &#8211; a Rails plugin to simply developing applications on Linux and other platforms using Nokia&#8217;s Qt framework atop Rails.</p>
<p>To finish off we had a bit of improv comedy from everyone at different closing stages of the evening; in particular Paul O&#8217;Malley with his faithful rendition of an emotion beekeeper. And yes now we&#8217;re straying off topic so it&#8217;s probably time to go. We&#8217;ll leave you with Paul&#8217;s <a title="The Green Red Gems Find a Troika Home (Ruby Ireland in the troika persons in one deity hotel)" href="http://funnycan.be/?p=295">write up</a> of last night&#8217;s shenanigans <img src='http://www.theirishpenguin.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Thanks to everyone who showed. Have a great Christmas and catch ye all in Jan 2010 &#8211; surely destined to be the decade of Ruby domination!</p>
<p>Ciao,<br />
Dec</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 351px; width: 1px; height: 1px;">
<h2 class="post_title"><a title="Permanent Link to The Green Red Gems Find a Troika Home (Ruby Ireland in the troika persons in one deity hotel)" rel="bookmark" href="http://funnycan.be/?p=295">The Green Red Gems Find a Troika Home (Ruby Ireland in the troika persons in one deity hotel)</a></h2>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/12/18/santas-got-gems-baby-ruby-ireland-christmas-meetup-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generate Rails Migrations from your PostgreSQL or MySQL database</title>
		<link>http://www.theirishpenguin.com/2009/11/26/generate-rails-migrations-from-your-postgresql-or-mysql-database/</link>
		<comments>http://www.theirishpenguin.com/2009/11/26/generate-rails-migrations-from-your-postgresql-or-mysql-database/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 21:33:59 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[RubyIreland]]></category>
		<category><![CDATA[Rubyonrails]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[dump]]></category>
		<category><![CDATA[migrations]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[schema]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=398</guid>
		<description><![CDATA[1) Create a new empty Rails project called schemer
2) In your config/database.yml file, point at the database you wish to dump to a migrations file
3) Run the command &#8216;rake db:schema:dump&#8217;. This should create a db/schema.rb file. Amazingly this effectively is your migrations file!
4) To tidy up create a file called file db/migrate/20091125205635_create_initial_schema.rb
5) Then copy the [...]]]></description>
			<content:encoded><![CDATA[<p>1) Create a new empty Rails project called schemer</p>
<p>2) In your config/database.yml file, point at the database you wish to dump to a migrations file</p>
<p>3) Run the command &#8216;rake db:schema:dump&#8217;. This should create a db/schema.rb file. Amazingly this effectively is your migrations file!</p>
<p>4) To tidy up create a file called file db/migrate/20091125205635_create_initial_schema.rb</p>
<p>5) Then copy the create_table statements from the schema.rb file into the new file 20091125205635_create_initial_schema.rb. Here&#8217;s a template</p>
<pre>class CreateInitialSchema &lt; ActiveRecord::Migration

  def self.up
    # Put all create_table statements from schema.rb file here
    # Note: You don't need the 'ActiveRecord::Schema.define(:version' line or it's enclosing end statement
    # ...
    # ...
  end

  def self.down
    # Don't really need this
  end

end</pre>
<p>6) Once you&#8217;ve all this done you can just run &#8216;rake db:migrate&#8217; and you should have a new sqlite db up and running under db/development.sqlite3</p>
<p>Thanks to Justin Ball on this Nobody Listens Anyway blog at <a href="http://www.justinball.com/2008/05/09/dump-an-existing-database-schema-into-a-ruby-on-rails-migration-ready-format/">Dump an Existing Database Schema Into a Ruby On Rails Migration Ready Format</a> for the basis of this tip. Sometimes somebody does&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/11/26/generate-rails-migrations-from-your-postgresql-or-mysql-database/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Eight Useful Git Tips</title>
		<link>http://www.theirishpenguin.com/2009/11/22/eight-useful-git-tips/</link>
		<comments>http://www.theirishpenguin.com/2009/11/22/eight-useful-git-tips/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 01:35:36 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[RubyIreland]]></category>
		<category><![CDATA[UbuntuIreland]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=381</guid>
		<description><![CDATA[1.) You can check your config using git config -l
This tells you useful stuff like what remotes you&#8217;re bound to, etc.
2.) You can blow away files listed as &#8216;untracked&#8217; (by the git status command) using git clean (be careful!).
If you want any of those files to hang around (but not appear as &#8216;untracked&#8217;) then add [...]]]></description>
			<content:encoded><![CDATA[<p>1.) You can check your config using<code> </code><code>git config -l</code></p>
<p>This tells you useful stuff like what remotes you&#8217;re bound to, etc.</p>
<p>2.) You can blow away files listed as &#8216;untracked&#8217; (by the <code>git </code><code>status </code>command) using<code> </code><code>git clean</code> (be careful!).</p>
<p>If you want any of those files to hang around (but not appear as &#8216;untracked&#8217;) then add them to your <code> </code><code>.gitignore </code> file.</p>
<p>3.) You can re-enter your last commit using <code class="g">git commit --amend. </code>What&#8217;s nifty is that you can change files (including file addition and deletion) as well as the commit message. Just do what you gotta do before running the amend command and enter a replacement commit message.</p>
<p>4.) You can undo your last commit completely using<code> </code><code class="g">git reset HEAD^</code></p>
<p>*** This does not change the working tree ***</p>
<p>Alternatively, you can use the syntax<code> </code><code>git </code><code>HEAD~2 </code>instead of<code> HEAD^^</code></p>
<p>5.) Refer to the last revision by <code>HEAD</code>, the second last as <code>HEAD^</code> and the third last as <code>HEAD^^</code></p>
<p>You can keep adding carrets forever! Sounding like Bugs Bunny there. <code></code></p>
<p>6.) You can see the contents of a file from a revision using</p>
<p><code> </code><code>git show rev:path/to/file</code><em></em></p>
<p>7.) Ok, this tip is a bit of a longer one. Use<code> </code><code>git merge</code><code> some_other_branch</code><code> </code>to merge another branch into the one your working on. (Note that<code> git pull </code>does a merge automatically once it&#8217;s completely &#8211; if you don&#8217;t want this to happen use<code> git fetch</code><code>)</code>. There are a few possible outcomes:</p>
<p><em>Fast-forward merge : </em>If changes were made on only one of the branches since the last merge, then the merge should happen without any need for you to act.</p>
<p><em>Three-way merge: </em>If changes were made on both branches, then git decides how to merge them using an algorithm. If any changes conflict with each other, then git will report them and let you resolve them. Once you&#8217;ve fixed any conflicts then you can<code> </code><code>git commit</code>.</p>
<p>If there were no conflicts, git automatically does a commit with a stock commit message for the log. If you don&#8217;t like the idea of this then use <code>git merge</code><code> </code><code>--no-commit </code><code>some_other_branch</code>. You need to manually do the commit afterwards. (This is more like how other distributed VCS&#8217;s such as Mercurial. This was the tip that inspired this post!).</p>
<p>8.) Finally, one tip that I found useful is that you don&#8217;t want to <code>git pull</code> into your repository when you have uncommitted changes. Especially if you treasure your sanity. Instead<code> </code><code>git stash </code>is your friend. Here&#8217;s how<br />
* Do a<code> </code><code>git stash </code>to move your uncommitted changes to a magical place in git temporarily<br />
* Then do the<code> </code><code>git pull </code><br />
* And finally do a<code> </code><code>git stash apply</code>. This will now move your &#8217;stashed&#8217; uncommitted changes back (from the magical temporary place in git) into your working directory and take into account what what was changed by the pull. Neat!</p>
<p>Tips 1-7 taken from:  <a href="http://git.or.cz/course/svn.html">Git &#8211; SVN Crash Course</a>. Tip 8 taken from painful experience <img src='http://www.theirishpenguin.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>If you want a good detailed yet friendly reference on a particular command search the <a title="Git User Manual" href="http://www.kernel.org/pub/software/scm/git/docs/user-manual.html">Git User Manual</a> on kernel.org.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/11/22/eight-useful-git-tips/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Getting Contact Form Emailing working with CForms in Wordpress</title>
		<link>http://www.theirishpenguin.com/2009/11/20/getting-contact-form-emailing-working-with-cforms-in-wordpress/</link>
		<comments>http://www.theirishpenguin.com/2009/11/20/getting-contact-form-emailing-working-with-cforms-in-wordpress/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 23:59:57 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[cforms]]></category>
		<category><![CDATA[contact form]]></category>
		<category><![CDATA[emailing]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=368</guid>
		<description><![CDATA[&#8220;Oh thou horrid little hard-coded piece of Javascript.&#8221; That&#8217;s our take on the jumping through hoops required to get this little plugin emailing this week. Here&#8217;s why&#8230;
On uploading the wordpress site from a development machine (which had the cforms plugin installed locally) to a server online, we could not get a contact form created with [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;Oh thou horrid little hard-coded piece of Javascript.&#8221; That&#8217;s our take on the jumping through hoops required to get this little plugin emailing this week. Here&#8217;s why&#8230;</p>
<p>On uploading the wordpress site from a development machine (which had the cforms plugin installed locally) to a server online, we could not get a contact form created with CForms to send out an email. Instead, it would say &#8220;One moment please&#8221; but alas that moment would never end. We tried TLS settings and permission changes but nothing worked. Fortunately there was a solution which we came across at the plugin&#8217;s somewhat squashed <a href="http://www.deliciousdays.com/cforms-forum/troubleshooting/cforms-hangs-after-submit-one-moment-please/">forum</a>.</p>
<p>When we had developed the site locally, the plugin had hardcoded a variable &#8217;sajax_uri&#8217; into the /wp-content/plugins/cforms/js/cforms.js. This is what was causing the pesky problemo and a quick edit of that file to point the variable at a correct URL for our server fixed the issue.</p>
<p>Hmm&#8230; I&#8217;m sure there&#8217;s a good reason is not a variable in a config somewhere. There&#8217;s a few hours of my evening I&#8217;ll never get back&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/11/20/getting-contact-form-emailing-working-with-cforms-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Ruby On Rails on Windows</title>
		<link>http://www.theirishpenguin.com/2009/11/19/installing-ruby-on-rails-on-windows/</link>
		<comments>http://www.theirishpenguin.com/2009/11/19/installing-ruby-on-rails-on-windows/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 00:19:39 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[RubyIreland]]></category>
		<category><![CDATA[gem]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[rubygems]]></category>
		<category><![CDATA[sqlite]]></category>
		<category><![CDATA[vista]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/?p=354</guid>
		<description><![CDATA[There were a couple of great outcomes from the first Free Ruby Lesson we ran in the Havana cafe on Dublin&#8217;s Georges St last Monday. The first was getting everyone hacking with the Rails stack and some practical examples in double quick time. The second was managing to get RoR installed on Windows Vista as [...]]]></description>
			<content:encoded><![CDATA[<p>There were a couple of great outcomes from the first Free Ruby Lesson we ran in the Havana cafe on Dublin&#8217;s Georges St last Monday. The first was getting everyone hacking with the Rails stack and some practical examples in double quick time. The second was managing to get RoR installed on Windows Vista as the lesson rumbled on in the background. Here&#8217;s how Rails conquered Vista.</p>
<p>We kicked off by following the instructions on the <a href="http://wiki.rubyonrails.org/getting-started/installation/windows">rails wiki</a>. It&#8217;s worth paying careful attention to anywhere it says to set path variables. If you find that you are getting an error that says that you version of rubygems is not recent enough (and you can&#8217;t get rubygems to update itself) then you can install an older version of Rails, for example 2.3.2, using the following from the command line</p>
<pre>gem install rails -v 2.3.2</pre>
<p>(Note: If you have already installed a different version of rails you can uninstall it first by using &#8216;gem uninstall rails&#8217;).</p>
<p>The big problem however was getting sqlite3 working. We did install the SQLite Command Line Tool and the SQLite DLL as the Rails Wiki instructions said to &#8211; but to no avail. We kept getting a popup error saying that the sqlite3 dll was not found and to please consider reinstalling. Fortunately, we gambled on one of the answers on <a href="http://stackoverflow.com/questions/515639/ruby-cannot-find-sqlite3-driver-on-windows">StackOverflow</a>. Basically the solution was from the command line</p>
<pre>gem uninstall sqlite3-ruby</pre>
<pre>gem install sqlite3-ruby --source http://gems.rubyinstaller.org</pre>
<p>And with that we were away! The final thing was to get a nice friendly IDE installed so we plumbed for Netbeans on the <a href="http://netbeans.org/downloads">Netbeans Downloads page</a>. Look out for the special Ruby version of Netbeans which is one of the links around the middle of the downloads page.</p>
<p>Anyway, that&#8217;s all for this week. Happy Ruby hacking!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/11/19/installing-ruby-on-rails-on-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Offline Documentation for Rails (and other Ruby gems)</title>
		<link>http://www.theirishpenguin.com/2009/11/12/offline-documentation-for-rails-and-other-ruby-gems/</link>
		<comments>http://www.theirishpenguin.com/2009/11/12/offline-documentation-for-rails-and-other-ruby-gems/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 13:08:37 +0000</pubDate>
		<dc:creator>theirishpenguin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[gem]]></category>
		<category><![CDATA[offline]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.theirishpenguin.com/2009/11/12/offline-documentation-for-rails-and-other-ruby-gems/</guid>
		<description><![CDATA[I used to pretty much always install gems with the &#8211;no-ri &#8211;no-rdoc options to speed up installation. Recently however, I&#8217;ve found myself needing to get access to documentation whilst on the move. So just in case you don&#8217;t know how that works, here&#8217;s the deal.
* Install your gems as per normal (ie. don&#8217;t use &#8211;no-ri [...]]]></description>
			<content:encoded><![CDATA[<p>I used to pretty much always install gems with the &#8211;no-ri &#8211;no-rdoc options to speed up installation. Recently however, I&#8217;ve found myself needing to get access to documentation whilst on the move. So just in case you don&#8217;t know how that works, here&#8217;s the deal.</p>
<p>* Install your gems as per normal (ie. don&#8217;t use &#8211;no-ri or &#8211;no-rdoc)<br />
* Run the command &#8216;gem server&#8217; from the command line<br />
* Browse to http://localhost:8808<br />
* And voila! You should have all the docs you need available by clicking on the rdoc link for any given gem<br />
* But if you really want to get fancy check out the searchable Rails documentation at http://railsapi.com &#8211; there&#8217;s an online version as well as the downloadable (the links are at the top of the page and can easily be mistaken for an advert!)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.theirishpenguin.com/2009/11/12/offline-documentation-for-rails-and-other-ruby-gems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
