<?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/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">

<channel>
	<title>Mike&#039;s Musings &#187; Programming</title>
	<atom:link href="http://mlowen.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://mlowen.com</link>
	<description>Do you want code with that mongoose?</description>
	<lastBuildDate>Sun, 26 Sep 2010 05:18:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/nz/</creativeCommons:license>		<item>
		<title>Generic Makefile</title>
		<link>http://mlowen.com/2010/09/26/generic-makefile/</link>
		<comments>http://mlowen.com/2010/09/26/generic-makefile/#comments</comments>
		<pubDate>Sun, 26 Sep 2010 05:18:00 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[generic]]></category>
		<category><![CDATA[make]]></category>
		<category><![CDATA[makefile]]></category>
		<category><![CDATA[mingw]]></category>
		<category><![CDATA[msys]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=167</guid>
		<description><![CDATA[Earlier today I decided to start working on yet another side project, this time written in C++. Before I get into the meat of this post I thought I&#8217;d mention that I reinstalled my dev environment for C++, I use the MinGW port of the GCC for my compilier and would like to mention that [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier today I decided to start working on yet another side project, this time written in C++.  Before I get into the meat of this post I thought I&#8217;d mention that I reinstalled my dev environment for C++, I use the <a href="http://mingw.org/">MinGW</a> port of the GCC for my compilier and would like to mention that the work they have done on their package manager mingw-get is really awesome it allowed me to get MinGW and <a href="http://mingw.org/wiki/MSYS">MSYS</a> up and running in no time with very little effort.</p>
<p>Once my dev environment was all setup again I went to set up my project only to find that somewhere along the way I had lost my generic all purpose <a href="http://en.wikipedia.org/wiki/Makefile">Makefile</a>, so after taking a little bit of time out to re-teach myself how to write a Makefile &#8211; from the <a href="http://wlug.org.nz/MakefileHowto">best source</a> that I know of &#8211; I recreated a makefile very similar to my original generic makefile.  In an effort to not lose it again I thought I would share it with the world:</p>
<pre class="brush: plain; title: ; notranslate">
APPNAME = test
SRCDIR = src
OBJDIR = obj
BINDIR = bin

SRC = $(shell find $(SRCDIR) | grep .cc)
OBJ = $(patsubst $(SRCDIR)/%.cc, $(OBJDIR)/%.o, $(SRC))

.PHONEY: all clean init

all: clean $(APPNAME)

clean:
	rm -rfd $(OBJDIR) $(BINDIR)

init:
	mkdir $(OBJDIR) $(BINDIR)
	$(foreach DIR, $(patsubst $(SRCDIR)/%, $(OBJDIR)/%, $(shell find $(SRCDIR)/* -type d)), mkdir $(DIR))

$(APPNAME): init $(OBJ)
	$(CXX) -o $(BINDIR)/$(APPNAME).exe $(OBJ)

$(OBJDIR)/%.o: $(SRCDIR)/%.cc
	$(CXX) -c $&lt; -o $@
</pre>
<p>To use this makefile you will need to run it from a <a href="http://en.wikipedia.org/wiki/POSIX">POSIX</a> like environment so it should work fine on Mac OSX and Linux but on Windows you will need something like <a href="http://mingw.org/wiki/MSYS">MSYS</a> or <a href="http://www.cygwin.com/">Cygwin</a>, personally I use MSYS but that&#8217;s just a preference thing.</p>
<p>This makefile is intended to be a drop in start point for any C++ project, though it isn&#8217;t had to modify it for other languages. The following is the project structure that the makefile is designed to work with:</p>
<ul>
<li>Project Root/
<ul>
<li>makefile</li>
<li> src/
<ul>
<li>source_file1.cc</li>
<li>source_file2.cc</li>
<li>subfolder1/
<ul>
<li>source_file3.cc</li>
</ul>
</li>
<li>subfolder2/
<ul>
<li>source_file4.cc</li>
<li>source_file5.cc</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>It will pickup all of the source files in the subdirectories eliminating the need for a <a href="http://aegis.sourceforge.net/auug97.pdf">recursive makefile</a>. I have never tested this makefile on a large project so I don&#8217;t know how well it would hold up, but I&#8217;m guessing if your project is getting big you would most likely be better off using something like <a href="http://en.wikipedia.org/wiki/Autotools">Autotools</a> or <a href="http://www.cmake.org/">CMake</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/09/26/generic-makefile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fun with strings and hashes in ColdFusion</title>
		<link>http://mlowen.com/2010/09/25/fun-with-strings-and-hashes-in-coldfusion/</link>
		<comments>http://mlowen.com/2010/09/25/fun-with-strings-and-hashes-in-coldfusion/#comments</comments>
		<pubDate>Sat, 25 Sep 2010 05:54:54 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=145</guid>
		<description><![CDATA[At work we do a bit of web development using ColdFusion and earlier this week I got stumped by a problem which I thought I would share.  We are currently working on a RESTful API which requires an API signature similar to how flickr does. When it came to writing my unit tests I created [...]]]></description>
			<content:encoded><![CDATA[<p>At work we do a bit of web development using <a href="http://en.wikipedia.org/wiki/Coldfusion">ColdFusion</a> and earlier this week I got stumped by a problem which I thought I would share.  We are currently working on a <a href="http://en.wikipedia.org/wiki/REST">RESTful</a> API which requires an API signature similar to how <a href="http://www.flickr.com/services/api/auth.howto.web.html">flickr does</a>. When it came to writing my unit tests I created a signature grabbing a private key out of the database to test against. I ran the test and BAM! it failed, now this was half expected it was the first time I&#8217;d run the test. So it turned out that the code was syntactically fine, then I thought  maybe I had made a mistake in the process of creating a signature.</p>
<p>With that ins mind the next step I took was comparing the raw pre-hashed version of both signatures, to my surprise I found that the test passed.  This was beginning to not make sense, it wasn&#8217;t until I altered the test to fail that I saw what the issue was: when I retrieved the key from the database all of the characters were uppercase however when coldfusion retrieved the key all of the characters were lower case. After updating the test to use a lower case version of the key it passed successfully.</p>
<p>So it turns out that ColdFusion is not case sensitive when it does string comparisons, but the hash function does care what case the characters are, as you can lead to a frustrating situation.  Now I&#8217;m not expecting you to take my word for it so I have quickly coded up some example code showing the issue.</p>
<pre class="brush: coldfusion; title: ; notranslate">
&lt;cfset original = &quot;secret-key&quot; /&gt;
&lt;cfset upperCase = &quot;SECRET-KEY&quot; /&gt;
&lt;cfset match = &quot;secret-key&quot; /&gt;
&lt;cfset random = &quot;5q2up0awet530&quot; /&gt;

&lt;cfset originalHash = Hash(original) /&gt;
&lt;cfset upperCaseHash = Hash(upperCase) /&gt;
&lt;cfset matchHash = Hash(match) /&gt;
&lt;cfset randomHash = Hash(random) /&gt;

&lt;cfoutput&gt;
	&lt;h1&gt;String Matching&lt;/h1&gt;
	&lt;table border=&quot;1&quot; style=&quot;width: 30%&quot;&gt;
		&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;Upper case&lt;/th&gt;&lt;th&gt;Match&lt;/th&gt;&lt;th&gt;Random&lt;/th&gt;&lt;/tr&gt;
		&lt;tr&gt;
			&lt;th style=&quot;text-align: left&quot;&gt;Original&lt;/th&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#original eq upperCase#&lt;/td&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#original eq match#&lt;/td&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#original eq random#&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;

	&lt;h1&gt;Hash Matching&lt;/h1&gt;
	&lt;table border=&quot;1&quot; style=&quot;width: 30%&quot;&gt;
		&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;Upper case&lt;/th&gt;&lt;th&gt;Match&lt;/th&gt;&lt;th&gt;Random&lt;/th&gt;&lt;/tr&gt;
		&lt;tr&gt;
			&lt;th style=&quot;text-align: left&quot;&gt;Original&lt;/th&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#originalHash eq upperCaseHash#&lt;/td&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#originalHash eq matchHash#&lt;/td&gt;
			&lt;td style=&quot;text-align: center&quot;&gt;#originalHash eq randomHash#&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;
&lt;/cfoutput&gt;
</pre>
<p>When you run the code this is the output you should get.</p>
<p style="text-align: center;"><a href="http://mlowen.com/wordpress/wp-content/uploads/2010/09/matching.png" rel="lightbox[145]" title="ColdFusion string and hash matching"><img class="aligncenter size-full wp-image-147" style="border: 1px solid black;" title="ColdFusion string and hash matching" src="http://mlowen.com/wordpress/wp-content/uploads/2010/09/matching.png" alt="" width="416" height="315" /></a></p>
<p>As I found the hard way when ColdFusion says two strings are the same it may not necessarily be true.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/09/25/fun-with-strings-and-hashes-in-coldfusion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weekend of Code</title>
		<link>http://mlowen.com/2010/09/10/weekend-of-code/</link>
		<comments>http://mlowen.com/2010/09/10/weekend-of-code/#comments</comments>
		<pubDate>Fri, 10 Sep 2010 11:39:06 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Me]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[music player]]></category>
		<category><![CDATA[UI Design]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=136</guid>
		<description><![CDATA[I found that for me this weekend is going to be a bit of a quiet affair so rather than sitting around all day doing not very much I decided that I&#8217;d try to be productive.  It&#8217;s been a while since I sat down and done any meaningful amount of coding for myself so I [...]]]></description>
			<content:encoded><![CDATA[<p>I found that for me this weekend is going to be a bit of a quiet affair so rather than sitting around all day doing not very much I decided that I&#8217;d try to be productive.  It&#8217;s been a while since I sat down and done any meaningful amount of coding for myself so I thought that is where I&#8217;d start, my next question was what do I want to write? I then remembered that I&#8217;m not overly fond of most of the music players that I&#8217;ve tried on Windows, the closest so far to something I find acceptable is <a href="http://en.wikipedia.org/wiki/ITunes">iTunes</a>.  With that I had it: my goal for this weekend would be to write (or at least make a dent in writing) a music player that I would like.</p>
<p>Alright, that&#8217;s all fine and dandy to say but what does that actually mean? Brainstorming it I came up with seven key features that I want in my media player:</p>
<div id="_mcePaste">
<ul>
<li>Only plays music, doesn&#8217;t try to do anything else.</li>
<li>Watch folders.</li>
<li>Filter on album, artist, title.</li>
<li>Filter a filter.</li>
<li>Ability to queue songs while on shuffle.</li>
<li>Playlists.</li>
<li>A similar interface to iTunes.</li>
</ul>
</div>
<p>While watching <a href="http://en.wikipedia.org/wiki/Justice_League:_The_New_Frontier">Justice League: The New Frontier</a> tonight I made a bit of start by making some rough UI mock-ups in <a href="http://www.balsamiq.com/products/mockups">Balsamiq</a>.</p>

<p>To implement this I&#8217;m planning on using C# and WPF, I haven&#8217;t had a good chance to play around with WPF or some of the new Windows 7 features that are available so I figured this would be as good a time as any.  Finally my other goal with this project is an attempt to get me back into blogging, to that end I will hopefully be making a post at the end of each day summarizing what I&#8217;ve done &#8211; possibly with some screenshots.  Until then I should be posting some updates to my <a href="http://twitter.com/mike_lowen">twitter feed</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/09/10/weekend-of-code/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>theCloud Blog</title>
		<link>http://mlowen.com/2010/03/20/thecloud-blog/</link>
		<comments>http://mlowen.com/2010/03/20/thecloud-blog/#comments</comments>
		<pubDate>Sat, 20 Mar 2010 02:35:02 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[LayerX]]></category>
		<category><![CDATA[theCloud]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[worpress]]></category>

		<guid isPermaLink="false">http://mlowen.com/2010/03/20/thecloud-blog/</guid>
		<description><![CDATA[So it would seem that I might be starting to go a little theme happy. Not one week after releasing the new theme to my own blog I&#8217;ve tried my hand at another theme. At work we are gearing up for the release of theCloud our hosted services platform and I had the pleasure of [...]]]></description>
			<content:encoded><![CDATA[<p>So it would seem that I might be starting to go a little theme happy. Not one week after releasing the <a href="http://mlowen.com/2010/03/14/new-theme/">new theme</a> to my own blog I&#8217;ve tried my hand at another theme. At work we are gearing up for the release of <a href="http://thecloud.net.nz/">theCloud</a> our hosted services platform and I had the pleasure of designing the blog theme that we are using for <a href="http://thecloud.net.nz/blog/">theCloud blog</a> which was launched yesterday there over the next little while you will be able to find posts related to hosted services, cloud computing and other related topics. I&#8217;m hopefully going to try and squeeze in some posts about customising the software we have available through coding.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/03/20/thecloud-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Theme</title>
		<link>http://mlowen.com/2010/03/14/new-theme/</link>
		<comments>http://mlowen.com/2010/03/14/new-theme/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 11:58:32 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[The site]]></category>
		<category><![CDATA[Overhauls]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[upgrade]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=122</guid>
		<description><![CDATA[If you have actually browsed to the site to read this post you will have noticed that Mike&#8217;s Musings has had a fresh coat of paint, also if you&#8217;ve read my previous entry you will have noticed that it is not the theme that I mocked up. In the end I thought that the first [...]]]></description>
			<content:encoded><![CDATA[<p>If you have actually browsed to the site to read this post you will have noticed that Mike&#8217;s Musings has had a fresh coat of paint, also if you&#8217;ve read my <a href="http://mlowen.com/2009/10/04/new-theme-design/">previous entry</a> you will have noticed that it is not the theme that I <a href="http://mlowen.com/mockup/">mocked up</a>.  In the end I thought that the first theme was not a good fit for the site, though one day I might turn it into a real theme.</p>
<p>The motivation for changing the theme in the end came down to a mixture of the following factors:</p>
<ul>
<li><a href="http://srinig.com/themes/fluid-blue/">Fluid Blue</a> the old theme had been in service on this site for getting close to four years now and it was time for a change.</li>
<li>I wanted to try my hand at a bit of design, I knew it was not going to be any hugely fantastic but I&#8217;m happy with the result.</li>
<li>Finally I wanted to integrate some of the various social networking sites that I belong to into the site, I found that fluid blue didn&#8217;t really lend itself to how I wanted it all displayed.</li>
</ul>
<p>As I noted above I wanted to integrate some of my social site activity into the site to that end I have also integrated my <a href="http://twitter.com/mike_lowen">twitter stream</a> into the left sidebar.  As with any new piece of code I will not be surprised if there are bugs, I have tested it in IE 8, Firefox and Chrome and it appears to work fine but these are not the only browsers in the world.  If you do happen to find anything wrong with the site don&#8217;t hesitate to report a bug over at the <a href="http://mlowen.com/mantis/">mlowen.com bug tracker</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/03/14/new-theme/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Development Utilities</title>
		<link>http://mlowen.com/2010/01/10/development-utilities/</link>
		<comments>http://mlowen.com/2010/01/10/development-utilities/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 22:34:34 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Me]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://mlowen.com/2010/01/10/development-utilities/</guid>
		<description><![CDATA[In June of 2009 I left my first programming job to move to LayerX, it&#8217;s been roughly six months since the switch and I haven&#8217;t looked back. One of the biggest changes in the switch over that I wasn&#8217;t expecting to be so big was moving from Linux to Windows as my primary development environment [...]]]></description>
			<content:encoded><![CDATA[<p>In June of 2009 I <a href="http://mlowen.com/2009/07/06/update/">left my first programming job</a> to move to <a href="http://www.layerx.co.nz">LayerX</a>, it&#8217;s been roughly six months since the switch and I haven&#8217;t looked back.  One of the biggest changes in the switch over that I wasn&#8217;t expecting to be so big was moving from Linux to Windows as my primary development environment I had not realised how many of the small apps that shipped with Ubuntu that I relied for my day to day work.  It&#8217;s only been just recently that I felt that I&#8217;ve settled into windows development enough that I am no longer swapping and trying out new tools. As my first post for the year I thought that I would share the list of tools that I currently use often.</p>
<p>In this list I am trying to avoid major tools (like an IDE) and rather focus on the small language agnostic tools which makes my day to day life just that little easier.</p>
<p><a href="http://www.flos-freeware.ch/notepad2.html">Notepad2</a> &#8211; This is just a simple text editor, what puts it above the notepad that ships with windows is the syntax highlighting that it provides for many</p>
<p><a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/">Putty</a> &#8211; While my primary development environment is no longer Linux I do still need to access various Linux servers and putty is still the simplist and most light weight tool for the job.</p>
<p><a href="http://winscp.net/eng/index.php">WinSCP</a> &#8211; This is yet another tool for dealing with linux servers, getting files off of a linux server (lacking samba) onto a windows box can be a PITA and that is where this tool comes in to save the day it makes retreival of files from linux machines a breeze.</p>
<p><a href="http://winmerge.org/">WinMerge</a> &#8211; An awesome visual diff tool.</p>
<p><a href="http://www.7-zip.org/">7-zip</a> &#8211; I can not stress how much I love 7-zip or how lost I&#8217;d be without it. Able to uncompress every compression format I have come across so far, you no longer have to fear others sending you files compressed in formats which are not zip.</p>
<p><a href="http://www.balsamiq.com/">Balsamiq Mockups</a> &#8211; I think this is damn near the perfect tool to create mockups to show to clients, the sketched feel to them seems to strike the right balance between looking somewhat professional and not looking like a real application.</p>
<p><a href="http://filezilla-project.org/">Filezilla</a> &#8211; An ftp client that just works.</p>
<p><a href="http://tortoisesvn.tigris.org/">TortoiseSVN</a> &#8211; This seems to be <strong>the</strong> svn client for windows, with it&#8217;s integration into explorer it is easy to see why.</p>
<p><a href="http://icofx.ro/">IcoFX</a> &#8211; A simple easy to use Icon editor, it can be used to create Icons from scratch or transform existing images to icons.</p>
<p><a href="http://www.jrsoftware.org/isinfo.php">InnoSetup</a> &#8211; Distributing an application and want an easy to use installer? Then InnoSetup is the tool for you.</p>
<p><a href="http://sourceforge.net/projects/console/">Console2</a> &#8211; I do not like the standard windows command prompt window at all. I have my reasons and half of them can probably be solved quite trivially, the point is the shouldn&#8217;t have to be.  The ability to have multiple tabs of different types of consoles in one window is great.</p>
<p><a href="http://sqliteman.com/">Sqliteman</a> &#8211; If you deal with SQLite databases then you need this tool, it lets you get into the database and examine and manipulate the data contained within.</p>
<p><a href="http://msbuildshellex.codeplex.com/">MSBuildShellextension</a> &#8211; This is a neat little tool I only discovered recently courtesy of the <a href="http://www.hanselman.com/tools">2009 Hanselman tool list</a>.  My life is a little bit brighter now I can build VS projects from explorer without having to launch Visual Studio.</p>
<p>Is there anything you feel that I might of left out? Or do you know or better alternitives to some of tools listed above? If so leave a comment so I can look into them.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2010/01/10/development-utilities/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>REST API Test Utility</title>
		<link>http://mlowen.com/2009/11/08/rest-api-test-utility/</link>
		<comments>http://mlowen.com/2009/11/08/rest-api-test-utility/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 10:54:27 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Rest Application Test Utility]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[lounge media]]></category>
		<category><![CDATA[RATU]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[REST API Test Utility]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=103</guid>
		<description><![CDATA[One of the things I enjoy most about being a programmer is the fact that when you can&#8217;t find a tool to do what you want you can write it yourself. Generally I&#8217;ve found that these applications tend to be quite simple and stick to the unix philosophy of &#8216;do one thing and do it well&#8217; [...]]]></description>
			<content:encoded><![CDATA[<p>One of the things I enjoy most about being a programmer is the fact that when you can&#8217;t find a tool to do what you want you can write it yourself. Generally I&#8217;ve found that these applications tend to be quite simple and stick to the <a href="http://en.wikipedia.org/wiki/Unix_philosophy">unix philosophy</a> of &#8216;do one thing and do it well&#8217; which as a software developer I think is a good philosophy to live by. The most recent occurrence of this happening to me was at work not to long ago where we are currently writing a REST API I needed an application to make a HTTP call to a URL. After about 5 minutes of looking around the web I couldn&#8217;t find anything, at that point I had the choice of either continuing to search for an appropriate tool or I could write my own. As you might have guessed I wrote my own, it took about 10 minutes to implement the basics of what was needed.</p>
<p>Over the next couple of weeks the tool continued to evolve to better fit the specifics of the project we we&#8217;re working on, but in the back of my mind I kept going back to how other people must have this problem as well. Eventually I decided to re-implement the core of my tool. Having finished the re-implementation a couple of weeks ago I&#8217;m finally getting around to releasing it to the public under the GPL, below are the links to download the 0.1 release.</p>
<ul>
<li>[download id="1"]</li>
<li>[download id="2"]</li>
</ul>
<p>For those of you who would like to grab the latest source and stay current with any updates (which may be buggy broken code) you can check out the subversion repository which is available at the following URL:</p>
<ul>
<li><a href="http://mlowen.com/svn/ratu/trunk">http://mlowen.com/svn/ratu/trunk</a></li>
</ul>
<p>In other news I have signed on to be a contributor to <a href="http://lounge-media.com/blog/">lounge media</a> a blog about digital media in the home, hopefully I should have a post up there soon &#8211; once I figure out a good subject to start on.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2009/11/08/rest-api-test-utility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weekend Coding</title>
		<link>http://mlowen.com/2009/03/14/weekend-coding/</link>
		<comments>http://mlowen.com/2009/03/14/weekend-coding/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 12:23:38 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[gIDE]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[IDE]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=71</guid>
		<description><![CDATA[So lately I&#8217;ve been doing little to no work on gIDE, which while it is not unusual it is a little disappointing as I had hoped to have made at least one release by now.  With that in mind and the fact that I don&#8217;t have anything planned for this weekend I sat down and [...]]]></description>
			<content:encoded><![CDATA[<p>So lately I&#8217;ve been doing little to no work on gIDE, which while it is not unusual it is a little disappointing as I had hoped to have made at least one release by now.  With that in mind and the fact that I don&#8217;t have anything planned for this weekend I sat down and listed all of the features that I needed and wanted to have before I made an initial release.  The plan is to sit down this weekend and knock as many of these things out before the weekend is over and make a release, will I hold true to this? I do not know, my track record of promises similar to this (which you should be able to find in the archives of this blog) is not stellar.  Heres hoping I follow through on it this time. Now onto the important part of this post the lists:</p>
<p><strong>Needs</strong></p>
<ul>
<li>Find/Replace</li>
<li>File Rename</li>
<li>File Move</li>
<li>Build System</li>
</ul>
<p><strong>Wants </strong></p>
<ul>
<li>Move from vte to <a href="http://wips.pl/~kudi/">vtemm</a></li>
<li>Document Split view</li>
</ul>
<p>Of the things that is on these lists the one that I am not really sure about is the moving from vte to vtem, while vtemm would fit in better with the rest of the application it is currently not packaged with any of the major distros.  This leads to the problem which is more important the design of the application or the ability of people to run the software? I&#8217;m sure I will have some comments about this in the next couple of days.</p>
<p>All going well I should hopefully make a blog post after I finish each feature, or for a couple of less screenshot worthy features I might just save them until a screenshot worthy one is finished before making a posting.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2009/03/14/weekend-coding/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>What happened to Cuttlefish?</title>
		<link>http://mlowen.com/2009/02/03/what-happened-to-cuttlefish/</link>
		<comments>http://mlowen.com/2009/02/03/what-happened-to-cuttlefish/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 05:03:14 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[cuttlefish]]></category>
		<category><![CDATA[syntax highlighting]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=61</guid>
		<description><![CDATA[Close to a month ago now I wrote about what I got up to on my holiday and I said I had started a new project Cuttlefish &#8211; a syntax highlighting text box for .Net. I also said that I would post about in more depth later, so far that hasn&#8217;t happened. This is mostly [...]]]></description>
			<content:encoded><![CDATA[<p>Close to a month ago now I wrote about what <a href="http://mlowen.com/2009/01/13/this-is-not-the-post-i-intended-to-write-today/">I got up to on my holiday</a> and I said I had started a new project Cuttlefish &#8211; a syntax highlighting text box for .Net.  I also said that I would post about in more depth later,  so far that hasn&#8217;t happened.  This is mostly because I haven&#8217;t actually finished cuttlefish and I haven&#8217;t a lot of time to code lately.  The other big reason is I recently picked up a copy of <a href="http://www.amazon.com/Framework-Design-Guidelines-Conventions-Development/dp/0321545613/">Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries</a> and found that my little project needs a quite a bit of refactoring to be compliant with these guidelines.  I hope to get started on the compliance work tonight, once that refactoring is done it shouldn&#8217;t take to long to finish it off.  With all that in mind it hopefully won&#8217;t be to long before I am able to show cuttlefish off.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2009/02/03/what-happened-to-cuttlefish/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>This is not the post I intended to write today</title>
		<link>http://mlowen.com/2009/01/13/this-is-not-the-post-i-intended-to-write-today/</link>
		<comments>http://mlowen.com/2009/01/13/this-is-not-the-post-i-intended-to-write-today/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 02:23:45 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[gIDE]]></category>
		<category><![CDATA[Me]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[The site]]></category>
		<category><![CDATA[cuttlefish]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Holiday]]></category>
		<category><![CDATA[syntax highlighting]]></category>

		<guid isPermaLink="false">http://mlowen.com/?p=51</guid>
		<description><![CDATA[I&#8217;ve been back at work a couple of days and once again settling back into the daily grind.  I had originally decided to make a series of posts once I got back from holiday called &#8216;Holiday Hacking&#8217; which would detail the coding that I got up to during my time off, as it happens there [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been back at work a couple of days and once again settling back into the daily grind.  I had originally decided to make a series of posts once I got back from holiday called &#8216;Holiday Hacking&#8217; which would detail the coding that I got up to during my time off, as it happens there was just one small hitch in that plan &#8211; I didn&#8217;t do much coding in my time off.  It would seem that I choose to relax these holidays rather than try and chip away at my to do list for gIDE.  While I didn&#8217;t work on gIDE this holiday I did however start a new project: Cuttlefish.  I plan to go into this in more depth in a later post so for now just let me say that it is a syntax highlighting Textbox component for .Net written in C#.</p>
<p>I have been doing a little bit of work around the site as well, mostly involving integration with my <a href="http://www.facebook.com">facebook</a> account (which I&#8217;m intending to give more attention to this year).  For those that haven&#8217;t noticed (or read this via rss) a link to my profile now appears in the in the sidebar and all of my posts should hopefully be appearing on said profile. This has the added side effect of some of my friends who hadn&#8217;t noticed it before get to see how truly geeky I am.  For those who are interested the two plugins I am using for the integration are <a href="http://www.tsaiberspace.net/blog/2007/07/29/wordbook/">Wordbook</a> and <a href="http://gaboink.net/2008/05/facebook-badge-wordpress-plugin/">Facelook</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mlowen.com/2009/01/13/this-is-not-the-post-i-intended-to-write-today/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

