<?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>Nathan&#039;s Blog</title>
	<atom:link href="http://www.nathankowald.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nathankowald.com/blog</link>
	<description>Web development and useful information</description>
	<lastBuildDate>Sun, 08 Apr 2012 13:00:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Using GitHub on port 443 through a proxy</title>
		<link>http://www.nathankowald.com/blog/2012/03/github-on-port-443-through-a-proxy/</link>
		<comments>http://www.nathankowald.com/blog/2012/03/github-on-port-443-through-a-proxy/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 16:46:21 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[github]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.nathankowald.com/blog/?p=495</guid>
		<description><![CDATA[Internet access at work goes through a proxy and firewall. The proxy allows connections out on port 80 (HTTP) and 443 (HTTPS) only. I needed to install Git for Windows (msysgit - 1.7.9) on my Windows 7 PC and two Windows 2008 servers. I followed these instructions and installed Git, set up my SSH keys, passphrase and added my [...]]]></description>
			<content:encoded><![CDATA[<p>Internet access at work goes through a proxy and firewall. The proxy allows connections out on port 80 (HTTP) and 443 (HTTPS) only. I needed to install Git for Windows (msysgit - 1.7.9) on my Windows 7 PC and two Windows 2008 servers.</p>
<p>I followed <a title="these instructions" href="http://help.github.com/win-set-up-git/" target="_blank">these instructions</a> and installed Git, set up my SSH keys, passphrase and added my public key to GitHub. I then tried to SSH to GitHub using: <code>ssh -T git@github.com</code> and because port 22 is blocked it failed to connect, returning the error message:</p>
<pre>ssh: connect to host github.com port 22: Bad file number</pre>
<p>To make GitHub work on Windows, through port 443 and a HTTP proxy server &#8211; with proxy authentication (Intergrated) &#8211; the following worked for me:</p>
<ol>
<li>Create a new file named <code>config</code> inside your <code>~/.ssh/</code> folder.<br />
This is usually located here: <code>C:\Users\USERNAME\.ssh\</code></li>
<li>Paste the following code into your <code>config</code> file.
<pre class="brush: plain; title: ; notranslate">
ProxyCommand connect.exe -H proxy_user@proxy_server:proxy_port %h %p

Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 44
</pre>
<p>Update the ProxyCommand values:</p>
<p><strong>proxy_user:</strong> your proxy username<br />
<strong>proxy_server:</strong> your proxy server<br />
<strong>proxy_port:</strong> your proxy port</p>
<p><strong>%h</strong> and <strong>%p</strong> will be replaced on invoking proxy command with the target hostname and port specified to the SSH command.</li>
</ol>
<p>Creating this config file allowed me to successfully connect to GitHub at work.<br />
I do have to authenticate with my proxy password every time I connect though. If you know a secure way to store the proxy password please comment.</p>
<p>Thanks to <a href="http://stackoverflow.com/questions/7144811/git-ssh-problem-bad-file-number/8019448#8019448" target="_blank">Sam vdb&#8217;s answer</a> on stackoverflow and <a href="http://twitter.com/skim" target="_blank">@skim&#8217;</a>s <a href="http://skim.la/2010/02/22/how-to-make-github-and-proxy-play-nicely-with-ssh/" target="_blank">blog post here</a> for the solution.</p>
<p>&nbsp;</p>
<hr />
<h3>Recently Loved Web Articles <a href="http://del.icio.us/rss/n8kowald/shared"><img class="noborder" title="Subscribe to my loved articles feed" src="http://www.nathankowald.com/images/feed-small.png" alt="" /></a></h3>
<ul class="lovedarticles">
<li><a href="http://www.techrepublic.com/blog/window-on-windows/change-and-customize-windows-7s-logon-screen-wallpaper/2135">Change and customize Windows 7&#8242;s Logon screen wallpaper | TechRepublic</a></li>
<li><a href="http://claudiorodval.deviantart.com/">claudiorodval on deviantART</a> &#8211; <em>Great illustrations</em></li>
<li><a href="http://stackoverflow.com/q/7144811">git ssh problem bad file number &#8211; Stack Overflow</a> &#8211; <em>Solution to running Git on Windows where SSH port 22 is blocked. Add a config file.</em></li>
<li><a href="http://lxr.php.net/xref/PHP_5_4/">Cross Reference: /PHP_5_4</a> &#8211; <em>View the C code for PHP functions. Usage: &#8220;PHP_FUNCTION strpos&#8221;</em></li>
<li><a href="http://vimeo.com/36863220">Codercat Time Lapse on Vimeo</a> &#8211; <em>Love this!</em></li>
<li><a href="http://goosh.org/">goosh.org &#8211; the unofficial google shell.</a> &#8211; <em>Text-only version of Google</em></li>
<li><a href="http://en.wikipedia.org/wiki/Ben_Franklin_effect">Ben Franklin effect &#8211; Wikipedia, the free encyclopedia</a> &#8211; <em>The Ben Franklin effect is a psychological finding: A person who has done someone a favor is more likely to do that person another favor than they would be if they had received a favor from that person. Similarly, one who harms another is more willing to harm them again than the victim is to retaliate.</em></li>
<li><a href="http://www.eurodroid.com/2012/03/13/galaxy-s-ii-android-4-0-update-hitting-uk-android-users-from-march-19th/">Galaxy S II Android 4.0 update hitting UK Android users from March 19th | Eurodroid</a></li>
<li><a href="http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys/">Here is why vim uses the hjkl keys as arrow keys &#8211; good coders code, great reuse</a></li>
<li><a href="http://moviesascode.net/">Movies as code &#8211; Free your coding mind</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2012/03/github-on-port-443-through-a-proxy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to know the day a date falls on</title>
		<link>http://www.nathankowald.com/blog/2012/02/how-to-know-the-day-a-date-falls-on/</link>
		<comments>http://www.nathankowald.com/blog/2012/02/how-to-know-the-day-a-date-falls-on/#comments</comments>
		<pubDate>Sun, 05 Feb 2012 16:25:09 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[useful information]]></category>

		<guid isPermaLink="false">http://www.nathankowald.com/blog/?p=473</guid>
		<description><![CDATA[I just found this tip on /r/LifeProTips and had to share it. For any given month, all the multiples of 7 fall on the same day. February 2012 is a Tuesday month because the 7th, 14th, 21st and 28th all occur on a Tuesday. All you need to remember each month is the day multiples of [...]]]></description>
			<content:encoded><![CDATA[<p>I just found this tip on <a href="http://www.reddit.com/r/LifeProTips/comments/l2z1p/quickly_figure_out_what_day_of_the_week_a_date/" target="_blank">/r/LifeProTips</a> and had to share it.</p>
<p>For any given month, all the multiples of 7 fall on the same day.<br />
February 2012 is a <em>Tuesday</em> month because the 7th, 14th, 21st and 28th all occur on a <em>Tuesday</em>. All you need to remember each month is the day multiples of 7 fall on.</p>
<p><strong>Usage:</strong><br />
&#8220;Hey Mum, what date is Dad&#8217;s vasectomy this month?&#8221;. &#8220;The 22nd&#8221;. So, 7, 14, 21 is a Tuesday, therefore the 22nd will be a Wednesday. Dad&#8217;s vasectomy happens on a Wednesday!</p>
<p><a href="http://www.nathankowald.com/blog/wp-content/uploads/2012/02/feb-month.png"><img class="alignnone  wp-image-487" title="February 2012 is a Tuesday month" src="http://www.nathankowald.com/blog/wp-content/uploads/2012/02/feb-month.png" alt="" width="456" height="333" /></a></p>
<p><strong>Also:</strong> The day a month ends on is the day the next month will be. February 2012 ends on a Wednesday so March 2012 will be a <em>Wednesday</em> month.</p>
<p>&nbsp;</p>
<hr />
<h3>Recently Loved Web Articles  <a href="http://del.icio.us/rss/n8kowald/shared"><img class="noborder" title="Subscribe to my loved articles feed" src="http://www.nathankowald.com/images/feed-small.png" alt="" /></a></h3>
<ul class="lovedarticles">
<li><a href="http://www.bitrebels.com/geek/possibly-the-best-nerf-gun-mods-ever/">Possibly the Best Nerf Gun Mods – Ever. | Bit Rebels</a></li>
<li><a href="http://nerfguns.net/mods/barricade-mod/">Barricade Mods | NerfGuns.net</a></li>
<li><a href="http://peterdrewarts.com/?page_id=154">Adelaide’s Forgotten Outlaws | Peter Drew Arts</a></li>
<li><a href="http://ideas.time.com/2012/01/26/dont-call-introverted-children-shy/?iid=op-main-lede">Susan Cain: Don&#8217;t Call Introverted Children &#8216;Shy&#8217; | TIME Ideas | TIME.com</a></li>
<li><a href="http://www.wikisummaries.org/Category:Summaries">Category:Summaries Summary at WikiSummaries, free book summaries</a></li>
<li><a href="http://medicalxpress.com/news/2012-01-ethics-brain-boosting.html">The ethics of brain boosting</a> &#8211; <em>transcranial direct current stimulation</em></li>
<li><a href="http://i.imgur.com/9hEeQ.jpg">9hEeQ.jpg (1200×800)</a> &#8211; <em>Want!</em></li>
<li><a href="http://lifehacker.com/5878900/google-is-facebook-is-aol-what-happens-when-a-good-google-goes-bad">Google Is Facebook Is AOL: What Happens When a Good Google Goes Bad</a></li>
<li><a href="http://onlinephd.org/evolution-of-google/">When Larry met Sergey &#8211; Google: From Grad School to $150 Billion Company</a></li>
<li><a href="http://arstechnica.com/tech-policy/news/2012/01/why-the-feds-smashed-megaupload.ars">Why the feds smashed Megaupload</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2012/02/how-to-know-the-day-a-date-falls-on/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dropbox &#8211; Tracking shared folder changes</title>
		<link>http://www.nathankowald.com/blog/2011/10/dropbox-tracking-shared-folder-changes/</link>
		<comments>http://www.nathankowald.com/blog/2011/10/dropbox-tracking-shared-folder-changes/#comments</comments>
		<pubDate>Sun, 30 Oct 2011 20:43:24 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[dropbox]]></category>

		<guid isPermaLink="false">http://www.nathankowald.com/blog/?p=380</guid>
		<description><![CDATA[When you set up a shared Dropbox folder with a person or multiple people any file you add or delete from the shared folder is added or deleted from each member&#8217;s folder. The Dropbox application on PC and Mac notifies you of any changes to your folders via a notification bubble or Growl notification however, [...]]]></description>
			<content:encoded><![CDATA[<p>When you set up a shared Dropbox folder with a person or multiple people any file you add or delete from the shared folder is added or deleted from each member&#8217;s folder.<br />
The Dropbox application on PC and Mac notifies you of any changes to your folders via a notification bubble or Growl notification however, if you&#8217;re away from your computer at the time of notification you can miss these.</p>
<p>If enabled, Dropbox provides RSS feeds for tracking shared folder events. We can use this RSS feed to be notified anytime a change is made inside a shared folder.</p>
<p>Here&#8217;s how:</p>
<ol>
<li><strong>Enable RSS feeds</strong><br />
Log into your Dropbox account using the web interface <a href="https://www.dropbox.com/" target="_blank">https://www.dropbox.com/</a>, then browse to your account settings: <a href="https://www.dropbox.com/account#settings" target="_blank">https://www.dropbox.com/account#settings</a>Under &#8216;Account Preferences&#8217; make sure &#8216;Enable RSS feeds&#8217; is checked then click &#8216;Change settings&#8217; to save the changes.</p>
<p><img class="alignnone size-full wp-image-397" title="Account Preferences" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/account-prefs.png" alt="Account Preferences" width="413" height="227" /></li>
<li><strong>Browse to your Events page</strong><br />
Browse to your Events page: <a href="https://www.dropbox.com/events" target="_blank">https://www.dropbox.com/events</a><br />
Here you can select the shared folder you wish to track. You select it from the shared folders in the left menu. In the image below I&#8217;ve chosen my &#8216;Kowald Humour&#8217; shared folder.</p>
<p><a href="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-6.42.17-PM-copy.png"><img class="alignnone size-full wp-image-386" title="'Kowald Humour' Events" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-6.42.17-PM-copy.png" alt="'Kowald Humour' Events" width="627" height="438" /></p>
<p></a></li>
<li><strong>Get the RSS Feed URL</strong><br />
When you select a shared folder you will see a list of recent events for your chosen shared folder on the page. At the bottom of this page &#8211; now you&#8217;ve enabled RSS feeds &#8211; will be a link named &#8216;Subscribe to this feed.&#8217;.<br />
<img class="alignnone size-full wp-image-382" title="Subscribe to this feed" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-6.15.37-PM.png" alt="Subscribe to this feed." width="170" height="34" />&lt;&#8211; looks like this.</p>
<p>Click this button and a modal window will appear with the RSS URL for the shared folder you want to track. It will look something like the RSS Feed URL shown below. Copy this feed to your clipboard.</p>
<p><img class="size-full wp-image-383" title="RSS Feed" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-6.19.13-PM.png" alt="" width="543" height="210" /></li>
<li><strong>Subscribe</strong><br />
Now you have the RSS feed you can subscribe to it and be notified of every change to your shared folder, never missing additions.</p>
<p><strong>Subscribe in your feed reader</strong><br />
You may wish to subscribe in your feed reader of choice, for example I use <a href="http://www.google.com/reader">Google Reader</a> for this.<br />
Add the copied RSS feed to your feed reader and all changes to your chosen shared folder will now be sent to your feed reader.</p>
<p><strong>Subscribe to updates via email</strong><br />
If you don&#8217;t have a feed reader and don&#8217;t want to set one up you can use an &#8216;RSS to email&#8217; service to send you notifications of shared folder changes.</p>
<p>I use a service called <a href="http://www.feedmyinbox.com/" target="_blank">Feed My Inbox</a> for this.To  send changes to your email simply enter the feed URL you copied earlier into the &#8216;Website or feed URL&#8217; box, then your email address into the &#8216;Your Email Address&#8217; box.<br />
Click &#8216;Submit&#8217; and you&#8217;re all done! All changes will now be emailed to you.</p>
<p><img class="alignnone size-full wp-image-384" title="Feed My Inbox Screenshot" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-6.29.23-PM.png" alt="" width="595" height="283" /></li>
</ol>
<p>Another advantage of subscribing to changes in shared folders is you can easily see <em>who</em> has added a file to a folder. This is especially useful if you share folders with more than one person.<br />
In my Google Reader screenshot you can see that my sister, &#8216;kate kowald&#8217; added a bunch of images into this folder. Something I would not have known otherwise.</p>
<p><img class="alignnone size-full wp-image-385" title="Google Reader notification" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/10/Screen-Shot-2011-10-30-at-10.57.27-AM.png" alt="Google Reader notification" width="620" height="347" /></p>
<div style="padding: 7px; background-color: #ebf4fc; border: 2px solid #81B3DC; margin-top: 15px;"><strong><span style="color: ##00adec !important;">Get a free Dropbox account <a href="http://db.tt/Cd7LyRQ" target="_blank">here</a></span></strong> &lt;&#8211; link gets you an extra 250 MB of free space.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2011/10/dropbox-tracking-shared-folder-changes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring gVim</title>
		<link>http://www.nathankowald.com/blog/2011/02/configuring-gvim/</link>
		<comments>http://www.nathankowald.com/blog/2011/02/configuring-gvim/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 11:26:51 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[vim]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.nathanko_website.com/blog/?p=171</guid>
		<description><![CDATA[A friend introduced me to the excellent Vi editor. His constant talking about how great it is made me curious. I purchased Learning the Vi and Vim Editors &#8211; O&#8217;Reilly and learnt the basic commands. My boss prefers Windows: so all our servers are Windows. I wanted to continue using Vim so started using gVim. gVim is a modified version of [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-180 alignright" style="margin-left: 17px; margin-bottom: 17px;" title="vim-editor_logo" src="http://www.nathankowald.com/blog/wp-content/uploads/2011/02/vim-editor_logo-300x300.png" alt="" width="210" height="210" /></p>
<p>A friend introduced me to the excellent <a href="http://en.wikipedia.org/wiki/Vim_(text_editor)">Vi editor</a>. His constant talking about how great it is made me curious. I purchased <a href="http://www.bookdepository.co.uk/book/9780596529833/Learning-the-vi-and-Vim-Editors?a_aid=lowest-price">Learning the Vi and Vim Editors &#8211; O&#8217;Reilly</a> and learnt the basic commands.</p>
<p>My boss prefers Windows: so all our servers are Windows.<br />
I wanted to continue using Vim so started using <a href="http://www.vim.org/download.php#pc">gVim</a>. gVim is a modified version of the UNIX Vi editor.</p>
<p><strong>Here are some things I&#8217;ve needed to configure while using gVim.</strong></p>
<h2>Maximising gVim Windows on file open</h2>
<p>The default window size when opening a file in gVim is small.<br />
To make gVim maximise windows on file open add the following to you _vimrc  file.</p>
<pre class="brush: plain; title: ; notranslate">
&quot;start maximised
au GUIEnter * simalt ~x
</pre>
<p>Your _vimrc will be in the root folder of your Vim install, mine&#8217;s located in: C:\Program Files\Vim\</p>
<p>The _vimrc file contains optional runtime configuration settings to initialize Vim when it starts.<br />
On Unix based systems, the file is named .vimrc, on Windows systems it&#8217;s _vimrc.</p>
<h2>Removing ^M characters in gVim</h2>
<p>^M characters are DOS/Windows line-ending characters.<br />
Previous developers at my work used Notepad++ to edit files. When I&#8217;d open these files in gVim they were littered with ^M characters and appear without line breaks or indents. Very hard to read and edit.</p>
<p><strong>To remove these use the ex command</strong></p>
<pre class="brush: plain; title: ; notranslate">:%s/^M/\r/g</pre>
<p>I encountered a problem typing control characters in Windows.<br />
In a UNIX environment you type a control character using <kbd>Ctrl</kbd>-<kbd>V</kbd>. In Windows <kbd>Ctrl</kbd>-<kbd>V</kbd> is used to &#8216;Paste&#8217; so you must use <kbd>Ctrl</kbd>-<kbd>Q</kbd> instead.<br />
To type ^M in gVim you type (<kbd>Ctrl</kbd>-<kbd>Q</kbd>) &lt;&#8211; keep your finger on <kbd>Ctrl</kbd> then press <kbd>M</kbd>.</p>
<pre class="brush: plain; title: ; notranslate">:help CTRL-V-alternative

*CTRL-V-alternative* *CTRL-Q*
Since CTRL-V is used to paste, you can't use it to start a blockwise Visual
selection.  You can use CTRL-Q instead.  You can also use CTRL-Q in Insert
mode and Command-line mode to get the old meaning of CTRL-V.  But CTRL-Q
doesn't work for terminals when it's used for control flow.</pre>
<p>Good explanation of ^M characters <a href="http://stackoverflow.com/questions/64749/m-character-at-end-of-lines/64798#64798">copied from here</a></p>
<blockquote><p>There is a difference between how a Windows-based based OS and a Unix based OS store end-of-line markers.<br />
Windows based operating systems &#8211; thanks to their DOS heritage &#8211; store an end-of-line as a pair of characters &#8211; 0x0A0D. Unix based operating systems just use 0x0A. ^M is a visual representation of 0x0D.</p></blockquote>
<h2>Changing the location of gVim swap and backup files</h2>
<p>When editing a file in gVim a backup file is created after saving changes to a newly opened file.<br />
It is a copy of the file before changing the file.  It is named the same as the file with a ~ at the end.<br />
This creates a lot of clutter in your directories.<br />
Thankfully you can change the default behaviour by disabling swap and backup files or moving the location of these.</p>
<p><strong>To disable swap and backup files add this to your _vimrc file</strong></p>
<pre class="brush: plain; title: ; notranslate">
set nobackup
set nowritebackup
set noswapfile</pre>
<p>I like to keep these files as it saves the line location that I was last editing.</p>
<p><strong>To change the swap and backup file location add this to your _vimrc file</strong></p>
<pre class="brush: plain; title: ; notranslate">
&quot;set where to store backups
set backupdir=C:\vimbackups

&quot;set where to store swap files
set dir=C:\vimbackups
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2011/02/configuring-gvim/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Phone Photos</title>
		<link>http://www.nathankowald.com/blog/2010/06/phone-photos/</link>
		<comments>http://www.nathankowald.com/blog/2010/06/phone-photos/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 23:04:42 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[photos]]></category>

		<guid isPermaLink="false">http://www.nathanko_website.com/blog/?p=102</guid>
		<description><![CDATA[By simply removing &#8216;$&#8217; signs from prices, people are less intimidated by them. In six days the iPhone 4 is released. In two days I&#8217;ve had my 3GS for a year. Since getting my 3GS I&#8217;ve updated my moblog never. Here&#8217;s a selection of photos from the past year that should have gone into my [...]]]></description>
			<content:encoded><![CDATA[<p>By simply removing &#8216;$&#8217; signs from prices, people are less intimidated by them.</p>
<p>In six days the iPhone 4 is released. In two days I&#8217;ve had my 3GS for a year.<br />
Since getting my 3GS I&#8217;ve updated my <a title="Nathan's Moblog" href="http://www.nathankowald.com/moblog/">moblog</a> never.<br />
Here&#8217;s a selection of photos from the past year that should have gone into my moblog. Here we go.</p>
<div id="attachment_197" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-197 " title="Kurt Vonnegut - Slaughterhouse Five" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo23_resized.png" alt="Kurt Vonnegut - Slaughterhouse Five" width="590" height="443" /><p class="wp-caption-text">He had a tremendous wang, incidentally. You never know who&#39;ll get one.</p></div>
<p>This paragraph made my day. It&#8217;s from the book &#8216;Slaughterhouse Five&#8217; by Kurt Vonnegut.<br />
Here&#8217;s an amusing anecdote about Kurt Vonnegut:</p>
<blockquote><p>In the mid 1950s, Vonnegut worked very briefly for Sports Illustrated magazine, where he was assigned to write a piece on a racehorse that had jumped a fence and attempted to run away. After staring at the blank piece of paper on his typewriter all morning, he typed, &#8220;The horse jumped over the fucking fence,&#8221; and left.</p></blockquote>
<div id="attachment_198" class="wp-caption alignnone" style="width: 330px"><img class="size-full wp-image-198 " title="ZOMG" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo161.png" alt="ZOMG" width="320" height="480" /><p class="wp-caption-text">I associate the word &#39;ZOMG&#39; with my friend Daniel</p></div>
<p>I associate the word &#8216;ZOMG&#8217; with my friend Daniel.<br />
Incidentally, &#8216;Words with Friends&#8217; is a great iPhone app.</p>
<div id="attachment_199" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-199 " title="For the person who empties my bin, thank you! " src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo181_resized.png" alt="For the person who empties my bin, thank you! " width="590" height="443" /><p class="wp-caption-text">For the person who empties my bin, thank you!</p></div>
<p>I left this note and Kinder chocolate for the cleaner of my work office. I meant it as a nice gesture. I worried later the cleaner might think I was being a dick. My bin is emptied nightly, it&#8217;s great.</p>
<p>The next morning I was relieved to find this response.</p>
<div id="attachment_200" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-200 " title="Yes thank you" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo19_resized.png" alt="Yes thank you" width="590" height="443" /><p class="wp-caption-text">Yes thank you</p></div>
<div id="attachment_201" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-201 " title="Fixie Shop, near Soho" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo17_resized.png" alt="Fixie Shop, near Soho" width="590" height="443" /><p class="wp-caption-text">Fixie Shop, near Soho</p></div>
<p>I took this photo for my friend Mark, though never sent it to him. It&#8217;s a fixed gear bicycle shop I walked past a while ago in Soho, London.<br />
Mark has done a fixed gear bicycle conversion himself. See his documented conversion on his blog: <a href="http://solirossi.wordpress.com/">http://solirossi.wordpress.com</a></p>
<div id="attachment_202" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-202" title="Stork Nest Live from Dumbravioara, Romania, Europe" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/IMG_0614_resized.png" alt="Stork Nest Live from Dumbravioara, Romania, Europe" width="590" height="443" /><p class="wp-caption-text">Stork Nest Live from Dumbravioara, Romania, Europe</p></div>
<p>My friend Jason sent me a link to this Stork Nest webcam. I had it on my second monitor all day.<br />
Here&#8217;s the webcam: <a title="Stork Nest Webcam" href="http://www.justin.tv/milvus#r=D9MLLPE" target="_blank">http://www.justin.tv/milvus#r=D9MLLPE<br />
</a></p>
<div id="attachment_203" class="wp-caption alignnone" style="width: 450px"><img class="size-full wp-image-203" title="Have you seen me?" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo1_resized.png" alt="Have you seen me?" width="440" height="587" /><p class="wp-caption-text">Have you seen me?</p></div>
<p>The missing cat wrote the headline.</p>
<div id="attachment_204" class="wp-caption alignnone" style="width: 600px"><img class="size-full wp-image-204" title="Uterus" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo14_resized.png" alt="Uterus" width="590" height="443" /><p class="wp-caption-text">Uterus</p></div>
<p>This arrangement of cloths reminds me of a uterus.</p>
<div id="attachment_145" class="wp-caption alignnone" style="width: 460px"><a href="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/tumblr_kzv2by1RRr1qaaut4o1_500.gif"><img class="size-full wp-image-145  " title="Animated Uterus" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/tumblr_kzv2by1RRr1qaaut4o1_500.gif" alt="Animated Uterus" width="450" height="338" /></a><p class="wp-caption-text">Animated Uterus</p></div>
<div id="attachment_205" class="wp-caption alignnone" style="width: 450px"><img class="size-full wp-image-205" title="Big-ass keys" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo20_resized.png" alt="Big-ass keys" width="440" height="587" /><p class="wp-caption-text">Big-ass keys</p></div>
<p>I found a keyboard with large keys in the bin at work. I salvaged the keys.</p>
<div id="attachment_206" class="wp-caption alignnone" style="width: 450px"><img class="size-full wp-image-206" title="Tooligan: well named" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo9_resized.png" alt="Tooligan: well named" width="440" height="587" /><p class="wp-caption-text">Tooligan: well named</p></div>
<p>Tooligan: well named matchbox car &#8211; seen in Sainsbury&#8217;s.</p>
<div id="attachment_207" class="wp-caption alignnone" style="width: 450px"><img class="size-full wp-image-207" title="Sylvanian families" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/06/photo6_resized.png" alt="Sylvanian families" width="440" height="587" /><p class="wp-caption-text">Sylvanian families</p></div>
<p>My sister used to have a whole mess of these cute creatures.</p>
<p>&nbsp;</p>
<hr />
<h3>Recently Loved Web Articles  <a href="http://del.icio.us/rss/n8kowald/shared"><img class="noborder" title="Subscribe to my loved articles feed" src="http://www.nathankowald.com/images/feed-small.png" alt="" /></a></h3>
<ul class="lovedarticles">
<li><a href="http://www.zdnet.com.au/inside-australia-s-data-retention-proposal-339303862.htm">Inside Australia&#8217;s data retention proposal &#8211; Communications &#8211; News</a></li>
<li><a href="http://en.wikipedia.org/wiki/Kurt_Vonnegut#Self-assessment">Kurt Vonnegut &#8211; Wikipedia, the free encyclopedia</a> &#8211; <em>Kurt Vonnegut&#8217;s eight rules for writing a short story</em></li>
<li><a href="http://www.noblesoftwaresolutions.com/Tips_And_Tricks/Word/Easy_Horizontal_Line.htm">Horizontal Lines Made Easy in Word</a></li>
<li><a href="http://www.smashingmagazine.com/2010/06/15/spice-up-your-website-with-jquery-goodness/">Spicing Up Your Website With jQuery Goodness &#8211; Smashing Magazine</a></li>
<li><a href="http://farm5.static.flickr.com/4043/4606951165_9d5135f268_b.jpg">4606951165_9d5135f268_b.jpg (JPEG Image, 1024×723 pixels)</a></li>
<li><a href="http://www.buzzfeed.com/normallyodd/wtf-winnie-the-pooh-slightly-nsfw-tc/">WTF Winnie The Pooh [PIC]</a></li>
<li><a href="http://data.london.gov.uk/blog/boost-londons-software-developer-community-and-smes-tfl-lifts-all-restrictions-commercial-reuse">Boost for London&#8217;s Software Developer Community and SME&#8217;s as TfL lifts all restrictions on commercial reuse of its data | London DataStore</a></li>
<li><a href="http://millionwordyear.com/megaword2010/?p=3882">Opinion : Anatomy of the LILE « The Million Word Year</a> &#8211; <em>Great blog post.</em></li>
<li><a href="http://www.photographercat.com/">Cooper: Photographer Cat</a></li>
<li><a href="http://www.flickr.com/photos/36844288@N00/sets/72157624079183751/">Hidden posters of Notting Hill Gate Tube station, 2010 &#8211; a set on Flickr</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2010/06/phone-photos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Using SilverStripe CMS</title>
		<link>http://www.nathankowald.com/blog/2010/03/using-silverstripe-cms/</link>
		<comments>http://www.nathankowald.com/blog/2010/03/using-silverstripe-cms/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 15:09:18 +0000</pubDate>
		<dc:creator>Nathan Kowald</dc:creator>
				<category><![CDATA[cms]]></category>
		<category><![CDATA[silverstripe]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.nathanko_website.com/blog/?p=10</guid>
		<description><![CDATA[I&#8217;ve just finished my first website using SilverStripe &#8211; a free Content Management System (CMS) built with PHP. I used Google a lot to find answers to questions I had; this post is a list of these questions and answers. My Server Environment Server: Windows Server 2003 R2 WAMP: The Uniform Server &#8211; (with the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just finished my first website using <a href="http://www.silverstripe.org/">SilverStripe</a> &#8211; a free Content Management System (CMS) built with PHP.<br />
I used Google a lot to find answers to questions I had; this post is a list of these questions and answers.</p>
<p><a href="http://www.silverstripe.org/"><img class="alignnone size-medium wp-image-38" title="SilverStripe-Logo-with-words" src="http://www.nathankowald.com/blog/wp-content/uploads/2010/03/SilverStripe-Logo-with-words-for-printing-300x292.png" alt="SilverStripe-Logo-with-words" width="300" height="292" /></a></p>
<h2>My Server Environment</h2>
<p><strong>Server:</strong> Windows Server 2003 R2<br />
<strong>WAMP:</strong> <a href="http://www.uniformserver.com/">The Uniform Server</a> &#8211;  (with the latest Apache, MySQL, PHP)<br />
<strong>SilverStripe Version:</strong> 2.3.7</p>
<h2>Things I had to Google</h2>
<h3>Change the breadcrumb separator</h3>
<p>This arrow symbol (») is used as the default breadcrumb separator.<br />
You can change this by editing <tt>/sapphire/core/model/SiteTree.php</tt></p>
<p>Search <tt>SiteTree.php</tt> for the variable named <tt>$breadcrumbs_delimeter</tt>.<br />
Update the breadcrumb separator to what you want.</p>
<pre class="brush: php; title: ; notranslate">/**
* Delimit breadcrumb-links generated by BreadCrumbs()
*
* @var string
*/
public static $breadcrumbs_delimiter = &quot; &amp;raquo; &quot;;
</pre>
<h3>editor.css stylesheet not being used in HTML editor</h3>
<p>I came across a bug where SilverStripe would not use my editor stylesheet in the HTML editor.<br />
This can by fixed by adding the following line to <tt>mysite/_config.php</tt></p>
<pre class="brush: php; title: ; notranslate">HtmlEditorConfig::get('cms')-&gt;setOption('content_css', 'cms/css/editor.css, mysite/css/editor.css');</pre>
<p><em>Alter the third parameter of the setOption method to the path where your <tt>editor.css</tt> file is located.</em></p>
<h3>Targeting Mac Firefox</h3>
<p>The following code with some minor tweaks can be used to target any browser / OS.<br />
I&#8217;m adding it here to show how easy it is to create variables for use in your templates.</p>
<p>To add a variable that can be used in your templates edit <tt>/mysite/code/Page.php</tt></p>
<p>Add this function:</p>
<pre class="brush: php; title: ; notranslate">function isMacFF() {
    // Get the user agent
    $userAgent = $_SERVER['HTTP_USER_AGENT'];

    $browser  = &quot;Firefox&quot;;
    $os = &quot;Mac OS X&quot;;
    $version = &quot;&quot;; // You could add version or anything else you are looking for here

    // Check the string is in the user agent
    $browserTest = strpos($userAgent, $browser);
    $osTest = strpos($userAgent, $os);

    // If both conditions are true we know it is Firefox for Mac
    // Add more conditions if you are testing for anything else
    if ($browserTest == true &amp;&amp; $osTest == true)  {
        return TRUE;
    } else {
        return FALSE;
    }
}
</pre>
<p>Thanks to <a href="http://archivist.incutio.com/viewlist/css-discuss/86391">George Ornbo</a> for this OS/browser targeting PHP code.</p>
<p>In your main page template add this:</p>
<pre class="brush: php; title: ; notranslate">&lt;% if isMacFF %&gt;

&lt;% end_if %&gt;
</pre>
<p><em>Changing <tt>/themes/apprenticeshipsfirst/css/mac_ff.css</tt> to the path of your Mac+FF CSS file.</em></p>
<p>I would have used <tt>&lt;% require themedCSS(mac_ff) %&gt;</tt> to add the stylesheet but I found it adds the Mac+FF stylesheet regardless of the conditional statement.</p>
<h3>Creating a Dynamic Sitemap</h3>
<p>Creating a dynamic sitemap is simple with SilverStripe.<br />
Follow the instruction here: <a href="http://doc.silverstripe.org/doku.php?id=tutorial:site-map">http://doc.silverstripe.org/doku.php?id=tutorial:site-map</a></p>
<h3>Admin area breaks</h3>
<p>While using SilverStripe I ran into an error where duplicating a webform page resulted in the admin area breaking. When the error occured a JavaScript alert popped up informing me something went wrong.<br />
After this I was unable to get to the admin area.</p>
<p>To fix this:<br />
Put site into dev mode.<br />
You do this by <strong>adding</strong> the following line of code to <tt>/saphire/_config.php</tt> :</p>
<pre class="brush: php; title: ; notranslate">Director::set_environment_type(&quot;dev&quot;);</pre>
<p>Comment out the line in the offending file &#8211; this is listed in the error message once the site is put into dev mode. In my case I commented out a line that throws an exception &#8211; in the <tt>Object.php</tt> file.</p>
<pre class="brush: php; title: ; notranslate">//throw new Exception(&quot;Object-&gt;__call(): the method '$method' does not exist on '$this-&gt;class'&quot;);</pre>
<p>Now rebuild your SilverStripe database by visiting <tt>http://yoursite.com/dev/build</tt>.<br />
Don&#8217;t worry, this rebuild won&#8217;t delete any of your site&#8217;s content. After the rebuild visit your admin area which you should be able to get into again.<br />
Complete the action you were trying to do before you received the error then restore this line by removing your comment.</p>
<h3>404 page not being used</h3>
<p>In my SilverStripe installation a 404 page existed but when I typed in a URL that didn&#8217;t exist it would not use this 404 page.<br />
It instead showed a SilverStripe themed error page saying:</p>
<p><tt><strong>Website Error Not Found</strong><br />
The website server has not been able to respond to your request.</tt></p>
<p>After Googling the problem I found you have to publish this default 404 page before it will be used by SilverStripe.<br />
To publish, select your &#8216;Page Not Found&#8217; page and click &#8216;Save and Publish&#8217;.<br />
Do a site flush by adding <tt>?flush=all</tt> to the URL and it will now use this custom 404 page.</p>
<h3>Website not displayed using The Uniform Server</h3>
<p>I chose <a href="http://www.uniformserver.com/">The Uniform Server</a> as my all-in-one WAMP solution.<br />
I chose this because it installs with strict security settings enabled and can be used on a production server.<br />
When using it for the first time I ran into the problem where when I logged out of the Remote Desktop Connection for my production server it would stop serving my website.<br />
I found out The Uniform Server can be run as a standard program &#8211; running via logged in user &#8211; or it can be run as a service.<br />
When using this on a production server you want to run this as a service. To run as a service follow these directions: <a href="http://wiki.uniformserver.com/index.php/5.0-Nano:_Install_and_Run#Run_as_a_Service_.28Vista_and_W7.29">http://wiki.uniformserver.com/index.php/5.0-Nano:_Install_and_Run#Run_as_a_Service_.28Vista_and_W7.29</a></p>
<h2>Useful Links</h2>
<ul>
<li><a href="http://doc.silverstripe.org/doku.php?id=built-in-page-controls">http://doc.silverstripe.org/doku.php?id=built-in-page-controls</a></li>
<li><a href="http://doc.silverstripe.org/doku.php?id=installation-on-windows-wamp">http://doc.silverstripe.org/doku.php?id=installation-on-windows-wamp</a></li>
<li><a href="http://www.silverstripe.org/modules/">http://www.silverstripe.org/modules/</a> &#8211; hard to find on the website</li>
<li><a href="http://www.silverstripe.org/stable-download/">http://www.silverstripe.org/stable-download/</a></li>
</ul>
<h2>Conclusion</h2>
<p>SilverStripe is easy to install, use and extend.<br />
SilverStripe comes with all the features I was looking for:</p>
<ul>
<li>Intuitive content editing</li>
<li>Search engine friendly URLs (&#8216;this-page&#8217; format)</li>
<li>User Management</li>
<li>Runs on Windows Server 2003</li>
<li>Developed with PHP</li>
<li>Works with Apache, MySQL</li>
<li>Easy to use templating system</li>
</ul>
<p>The functionality it lacked I was able to add with a <a href="http://www.silverstripe.org/modules/">module</a>.</p>
<p>I&#8217;ve used Joomla and Drupal CMS in the past and found SilverStripe much easier and quicker to build a website with.<br />
SilverStripe templates are great, using normal HTML with custom tags.<br />
The editing interface is simple and easy to use. The admin interface is more intuitive than any other CMS I&#8217;ve used.</p>
<p>I recommend SilverStripe to anyone looking for a good, free CMS.</p>
<p>Thanks to <a href="http://www.schaefer.id.au/">Reece</a> for getting me onto SilverStripe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nathankowald.com/blog/2010/03/using-silverstripe-cms/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

