<?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>Kieran Senior</title>
	<atom:link href="http://www.kieransenior.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kieransenior.co.uk</link>
	<description>An Ode To Software</description>
	<lastBuildDate>Tue, 02 Mar 2010 22:43:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Notification</title>
		<link>http://www.kieransenior.co.uk/2010/03/02/notification/</link>
		<comments>http://www.kieransenior.co.uk/2010/03/02/notification/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 22:43:14 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/?p=240</guid>
		<description><![CDATA[I think my blog posts are typically too succinct to be classed as a blog post, despite the term &#34;log&#34; being bundled into the &#34;blog&#34; abbreviation, or whatever terminology has crept into the atrocities of spelling and grammar on the web nowadays. &#160;Although one of this is the point of my blog anyway so this [...]]]></description>
			<content:encoded><![CDATA[<p>I think my blog posts are typically too succinct to be classed as a blog post, despite the term &quot;log&quot; being bundled into the &quot;blog&quot; abbreviation, or whatever terminology has crept into the atrocities of spelling and grammar on the web nowadays. &nbsp;Although one of this is the point of my blog anyway so this can be deemed as ramble anyhow.</p>
<p>Today was something of a day to remember where I have overcome some conflicts within myself that I believe have hindered me in recent times. &nbsp;The hindrance was the thought of seeking alternative avenues in my career but without the gonads to hand in my notice at work. &nbsp;Well, today I handed in my notice. &nbsp;So what happened? What changed from now and before? &nbsp;The answer is, I really don&#39;t know, but everyone whom I&#39;m closest too has been pointing out my new found confidence recently.</p>
<p>So, why did I resign from my current post? &nbsp;Well, there&#39;s already speculation to this of course, but here&#39;s the reality of it:</p>
<ul>
<li>I actually took this job as I was increasingly aware that I needed funds and quick, but I also wanted a job in my area, so I didn&#39;t &quot;test the water&quot; as so to speak</li>
<li>I have a higher interest in MVC architectures with the web using either Ruby on Rails or ASP.NET MVC &#8211; the new job actually uses MonoRails which is an (indirect) port of RoR</li>
<li>Whilst it&#39;s impossible to ignore the finance industry, it&#39;s never been my &quot;bag&quot; as to speak. &nbsp;The problem is that over 50% of my work involves understanding finance concepts. &nbsp;I blame this on my own high expectations, but I can&#39;t break from the thought of wanting to learn more technically.</li>
<li>I feel I&#39;ve reached my potential from a technical perspective in my current role</li>
<li>Change isn&#39;t a bad thing, I think it helps cultivate character</li>
</ul>
<p>My current job has caused tremendous improvements for me personally though, especially in regards to turning user requirements into something tangible. &nbsp;The experience has been quite interesting, especially when a user says &quot;I want this to be able to do that&#8230;.&quot; without specifying the <em>rules</em>. &nbsp;Basically you need to engage in a mind-meld with the user in order to extract any kind of understandable information. &nbsp;A developer has to be a user, and a developer must understand how every user works. &nbsp;Never in a million years would I have expected this simply because my entire education has taught me that user requirements aren&#39;t gathered by the programmer, there&#39;s usually a man-in-the-middle doing all that <em>boring</em> stuff. &nbsp;I actually don&#39;t find it boring, because understanding the business makes sure you&#39;re good at your job. &nbsp;My current boss is probably the most knowledgeable person I know in the entire company. &nbsp;I don&#39;t think he has ever been unable to answer a question or get around a business-related problem.</p>
<p>So what&#39;s that taught me? That business knowledge is invaluable to a software developer because user requirements are never the full picture. &nbsp;But this has given me leverage for the future.</p>
<p>The best part of my new job is that I get to work under a very clever chap whom holds a degree in CompSci from Cambridge which means hopefully that fountain of knowledge and experience will be rubbed off in me and help propel my own experience and knowledge to driving a business.</p>
<p>So the new rule of thumb for me is this: step out of your comfort zone every once in a while!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2010/03/02/notification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Can&#8217;t Connect Using Ruby On Rails Mac OS X Snow Leopard</title>
		<link>http://www.kieransenior.co.uk/2010/02/04/mysql-cant-connect-using-ruby-on-rails-mac-os-x-snow-leopard/</link>
		<comments>http://www.kieransenior.co.uk/2010/02/04/mysql-cant-connect-using-ruby-on-rails-mac-os-x-snow-leopard/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 19:31:13 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[rubyonrails]]></category>
		<category><![CDATA[snowleopard]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/?p=236</guid>
		<description><![CDATA[I&#39;ve spent literally a week trying to get MySQL to work with Ruby On Rails.&#160; After much hair pulling, screaming, and crying I finally figured it out.&#160; Much of this article is based on the following command:
sudo gem install mysql &#8212; &#8211; with-mysql-config=/usr/local/mysql/bin/mysql_config
Install Directories Aren&#39;t All The Same
	
Contrary to the many articles out there, mysql [...]]]></description>
			<content:encoded><![CDATA[<p>I&#39;ve spent literally a week trying to get MySQL to work with Ruby On Rails.&nbsp; After much hair pulling, screaming, and crying I finally figured it out.&nbsp; Much of this article is based on the following command:</p>
<pre class="brush:text">sudo gem install mysql &mdash; &ndash; with-mysql-config=/usr/local/mysql/bin/mysql_config</pre>
<p><strong>Install Directories Aren&#39;t All The Same<br />
	</strong></p>
<p>Contrary to the many articles out there, mysql doesn&#39;t necessarily install to the same path every time.&nbsp; The most common location for it to be installed to is /usr/local/mysql/.&nbsp; Don&#39;t take this as gospel when you see it splashed around the Intarwebs.&nbsp; In fact, your install location could well be /opt/local/var/db/mysql5/ depending on the version.&nbsp; To find out where your mysql version is simply run &quot;location mysql_config&quot; and it should narrow your search results.&nbsp; If it&#39;s the first time you&#39;ve run location then the terminal will give you command required to install it.&nbsp; So, first of all, locate the correct <em>mysql</em> location.</p>
<p><strong>Gem Install<br />
	</strong></p>
<p>Running &quot;sudo gem install mysql&quot; doesn&#39;t necessarily do what you want it to do.&nbsp; There&#39;s no real way of checking until you specify &#8211;with-mysql-config as a parameter option to the gem install.&nbsp; This will fall over and give you some error such as &quot;can&#39;t connect to local MySQL server through socket &#39;/tmp/mysql.sock&#39;&quot;.&nbsp; Realistically this doesn&#39;t help you.&nbsp; What it really means is that you&#39;re probably pointing to the wrong path, so as the previous step mentioned, make sure you find the correct path.</p>
<p><strong>XCode<br />
	</strong></p>
<p>It&#39;s a very good idea to install the version of XCode from the Snow Leopard DVD, otherwise things won&#39;t work.&nbsp; Also, Snow Leopard supports 64-bit installs now which is another reason to use it.</p>
<p><strong>Build From Source<br />
	</strong></p>
<p>Personally I built from source.&nbsp; The last link I have provided shows how to do this.&nbsp; There&#39;s many-a-reason to do it, most of all is the flexibility.&nbsp; It will take roughly half an hour to do.</p>
<p><strong>Resources<br />
	</strong></p>
<p><a href="http://stackoverflow.com/questions/1357997/snow-leopard-ruby-1-9-1-mysql-gem-huge-problems">http://stackoverflow.com/questions/1357997/snow-leopard-ruby-1-9-1-mysql-gem-huge-problems</a></p>
<p><a href="http://stackoverflow.com/questions/1923265/installing-mysql-and-mysql-gem-on-snow-leopard">http://stackoverflow.com/questions/1923265/installing-mysql-and-mysql-gem-on-snow-leopard</a></p>
<p><a href="http://www.icoretech.org/2009/08/install-mysql-and-mysql-ruby-gem-on-snow-leopard-64-bit/">http://www.icoretech.org/2009/08/install-mysql-and-mysql-ruby-gem-on-snow-leopard-64-bit/</a> (follow this guide first)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2010/02/04/mysql-cant-connect-using-ruby-on-rails-mac-os-x-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery :visible Bug</title>
		<link>http://www.kieransenior.co.uk/2010/01/04/jquery-visible-bug/</link>
		<comments>http://www.kieransenior.co.uk/2010/01/04/jquery-visible-bug/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 22:03:42 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/?p=231</guid>
		<description><![CDATA[Pottering around with jQuery I spent a couple of hours trying to figure out why alternating row styles weren&#39;t working for hidden rows correctly.&#160; For the life of me I couldn&#39;t figure it out, I had done every test imaginable without any results.&#160; The selector $(&#34;tr:visible:even&#34;) didn&#39;t work correctly, certain rows were having the wrong [...]]]></description>
			<content:encoded><![CDATA[<p>Pottering around with jQuery I spent a couple of hours trying to figure out why alternating row styles weren&#39;t working for hidden rows correctly.&nbsp; For the life of me I couldn&#39;t figure it out, I had done every test imaginable without any results.&nbsp; The selector $(&quot;tr:visible:even&quot;) didn&#39;t work correctly, certain rows were having the wrong class applied to them, despite working in a clean environment.&nbsp; When I face a problem for a number of hours I eventually think to myself &quot;why not try the inverse?&quot;, so I did just that.&nbsp; $(&quot;tr:not(:hidden):even&quot;) did exactly what I wanted.&nbsp; Strange you say? Indeed it is.&nbsp; I can&#39;t help but think the inverse of visible isn&#39;t equivalent to hidden.&nbsp; This may highlight the difference between display:none and visibility:none, I&#39;m not certain.</p>
<p>Anyway, the problem was overcome as mentioned in case you face this issue.&nbsp; This applies to 1.3 I believe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2010/01/04/jquery-visible-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Another Year In The Bag</title>
		<link>http://www.kieransenior.co.uk/2009/12/28/another-year-in-the-bag/</link>
		<comments>http://www.kieransenior.co.uk/2009/12/28/another-year-in-the-bag/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 18:56:54 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/?p=225</guid>
		<description><![CDATA[Work
	
It&#39;s quite surprising at how fast a year can go, especially seeing as though I&#39;m now fully immersed in the working world.&#160; This year has probably been a year where I&#39;ve learnt the most, specifically in relation to the &#34;programming&#34; industry (if it should even be deemed such a name).
The few things I&#39;ve learnt so [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Work<br />
	</strong></p>
<p>It&#39;s quite surprising at how fast a year can go, especially seeing as though I&#39;m now fully immersed in the working world.&nbsp; This year has probably been a year where I&#39;ve learnt the most, specifically in relation to the &quot;programming&quot; industry (if it should even be deemed such a name).</p>
<p>The few things I&#39;ve learnt so far are as follows:</p>
<ul>
<li><strong>The correct way isn&#39;t necessarily the right way.&nbsp; </strong>Speed of development is, in many cases, a requirement of the system.&nbsp; The overall turnaround time from the project initiation to its actual implementation is what&#39;s most sought after.&nbsp; This means that doing things &quot;properly&quot; isn&#39;t a possibility.&nbsp; Sure, this is a real shame, but it keeps the punters happy and makes sure things get &quot;shipped&quot; on time.</li>
<li><strong>Break out of university mode</strong>. The problem I&#39;ve mainly faced is that I&#39;ve spent the majority of my life studying as opposed to practising that development.&nbsp; I&#39;ve always considered the text book way to be the correct way, and it definitely is, however as I mentioned in the previous point, it&#39;s not always possible.&nbsp; It&#39;s best to break out of the concrete way of doing things and realise that things can often be done ad-hoc in an environment where things aren&#39;t being released to the public.</li>
<li><strong>Don&#39;t be afraid to be confrontational</strong>.&nbsp; I&#39;ve been quite surprised at speaking to employees whom are completely unhappy in their jobs, and they&#39;re issues which could be fixed if they were raised, but instead the individual makes the decision to quit their job because they become unhappy in them.&nbsp; Really, the best way to deal with things is to raise them as issues.</li>
</ul>
<p><strong>Life<br />
	</strong></p>
<p>Me and my wife are taking the steps closer towards getting a mortgage.&nbsp; The current industry has an average house price of about &pound;300,000 with 10% deposit required, let alone legal fees and bond costs.&nbsp; It&#39;s a long process, and I advise anyone wanting to own a house in the future to start saving right now, regardless of your age.&nbsp; One couple we knew had been saving money since they were 16.&nbsp; The second they were married that were able to buy a house, and already they have upgraded to a large 3-bedroom house, and they&#39;re the same age as us.&nbsp; We are aware, however, that I was at university during this time so we would&#39;ve been strapped for cash regardless.</p>
<p><strong>Study<br />
	</strong></p>
<p>As you may know, I&#39;ve been working towards my postgraduate degree in Software Development and I&#39;m currently working with databases (MySQL for study, although I work in MS-SQL full-time).&nbsp; I&#39;ve learnt a considerable amount in a short space of time concerning the structure and makeup of databases from both the theoretical (relational theory) to the practical (actual implementation).&nbsp; I&#39;m also taking into close consideration the next steps I&#39;ll be taking towards study and am pretty set on studying user interface design as that&#39;s quite a major part of what I do both in and out of my full-time job.&nbsp; I was also considering doubling up my study so I will instead be taking on two courses at once, however this depends on time available, and what funds I can magically procure.</p>
<p><strong>Christmas<br />
	</strong></p>
<p>The best time of year of course, especially when greeted with many presents.&nbsp; One major thing I love doing in my spare time is playing guitar, and I somehow got myself into the singing routine also due to my involvement in churches.&nbsp; This year I was given a Shure SM58 microphone and a wireless headset so I can start recording some acoustic stuff.&nbsp; I&#39;ve been meaning to do this for quite a while, I&#39;ve just never had the time or money to do so.</p>
<p>I also received some other great gifts, such as a flying lesson, and a load of books such as Dale Carnegie&#39;s set and some books on Ruby and Ruby on Rails.</p>
<p><strong>Next Year<br />
	</strong></p>
<p>I do have aims and goals, not necessarily resolutions but simply improvements.&nbsp; I&#39;m really wanting to run a marathon next year if I can overcome a problem in my right calf, and I&#39;m also wanting to do better with my study as time has been really limited recently.&nbsp; I&#39;m also wanting dedicate more time to reformsoft as we go about some changes and hopefully get some releases in next year.&nbsp; Otherwise it&#39;s just carry on as normal.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/12/28/another-year-in-the-bag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Address Change</title>
		<link>http://www.kieransenior.co.uk/2009/11/21/web-address-change/</link>
		<comments>http://www.kieransenior.co.uk/2009/11/21/web-address-change/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 22:27:59 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/?p=222</guid>
		<description><![CDATA[I&#39;ve moved my blog directory over to the root directory of my hosting as I&#39;m planning some changes in my site very soon, so this is just to keep in line with that.&#160; Please update your RSS feeds!
]]></description>
			<content:encoded><![CDATA[<p>I&#39;ve moved my blog directory over to the root directory of my hosting as I&#39;m planning some changes in my site very soon, so this is just to keep in line with that.&nbsp; Please update your RSS feeds!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/11/21/web-address-change/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Master Minded</title>
		<link>http://www.kieransenior.co.uk/2009/10/24/master-minded/</link>
		<comments>http://www.kieransenior.co.uk/2009/10/24/master-minded/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 19:07:22 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/journal/?p=211</guid>
		<description><![CDATA[
	Last week I received my Open University course materials to work towards my masters degree (MSc) in Software Development.&#160; Fortunately I have youth on my side as it&#39;s not a quick process.&#160; If I were to work on it full-time at university it would take me a full 12 months, however, working from home means [...]]]></description>
			<content:encoded><![CDATA[<p>
	Last week I received my Open University course materials to work towards my masters degree (MSc) in Software Development.&nbsp; Fortunately I have youth on my side as it&#39;s not a quick process.&nbsp; If I were to work on it full-time at university it would take me a full 12 months, however, working from home means it will take me roughly 4-5 years.&nbsp; I&#39;m okay with this, because not only do I have the time, I also enjoy the study.&nbsp; I&#39;ve almost finished the first book, which is actually the smallest, out of the four books that there are.&nbsp; Already I&#39;ve found that it is formalising my current knowledge to a more reformed version of what I already know.</p>
<p>
	The course I am studying is the M876 in databases which focuses on a vast array of key areas to do with databases in general as opposed to more specific areas to do with tools and management studios.&nbsp; This I think is far more beneficial in the long run as it adapts me to use any database system as opposed to having specific knowledge in one DBMS.&nbsp; What&#39;s also great about this is that I work in the industry and use databases about 50% of my time at work, so I can apply what I&#39;m learning to my work.</p>
<p>
	The database system I will be working with is actually MySQL, which is irrelevant in the grand scheme of things apart from syntax of SQL statements.</p>
<p>
	That&#39;s a short update of what&#39;s going on my end anyway.</p>
<p>
	(Also, get the latest Dean&#39;s FCK Editor for WP, it&#39;s pretty good).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/10/24/master-minded/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Year One</title>
		<link>http://www.kieransenior.co.uk/2009/08/23/year-one/</link>
		<comments>http://www.kieransenior.co.uk/2009/08/23/year-one/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 21:39:02 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/journal/?p=206</guid>
		<description><![CDATA[The 16th of August has just passed meaning we just had our first wedding anniversary.  I surprised my wife by booking a deluxe room, a &#8220;flower turnover service&#8221; (I had no idea what that was before I booked it!), and a table in their restaurant.
We&#8217;ve been told countless times how the first year of marriage [...]]]></description>
			<content:encoded><![CDATA[<p>The 16th of August has just passed meaning we just had our first wedding anniversary.  I surprised my wife by booking a deluxe room, a &#8220;flower turnover service&#8221; (I had no idea what that was before I booked it!), and a table in their restaurant.</p>
<p>We&#8217;ve been told countless times how the first year of marriage is the most difficult, especially in a Christian marriage as the likelihood is that the couple never cohabited before, which was true in our case.  My naivety definitely outmatched my humble ear, I must say that the majority of the advice, and general observations of marriage were true.  Here&#8217;s a few of the ones we&#8217;ve experienced from the first year:</p>
<ul>
<li>Personal space: it&#8217;s gone!  Once you get married you&#8217;re inviting someone to invade your personal space.  It&#8217;s rare that you get any once you&#8217;re married.  Amanda sometimes just appreciates sitting in the bedroom by herself for a couple of hours sometimes, in the same respect sometime I just enjoy the silence of a good book every now and then.  It doesn&#8217;t mean you&#8217;re sick of your spouse, it means you&#8217;re a human being and need your own space just as much as you need each others space.</li>
<li>Personal time.  Time is precious, and we like to use it in our own way.  Priorities change when you&#8217;re married, and you&#8217;ll find that time you wanted to use for reading a book, or playing on your guitar are instead precious moments you should be sparing for your significant other.  It&#8217;s a good idea if you share interests.  Me and Amanda particularly love playing a game of squash together, it&#8217;s fun, we learn from each other, and we have to communicate with one another.  It&#8217;s also good dedicated one-to-one time.  Find a shared interest to help give your time.</li>
<li>Responsibility.  I&#8217;ve met many-a-person who can be completely irresponsible in the household.  Being a man isn&#8217;t about showing off your rock hard abs and protecting your wife from the evils of the universe, it&#8217;s also from taking responsibility in simple day-to-day things.  Taking out the rubbish, doing the dishes, paying the bills, managing your time well.  I&#8217;ve found I&#8217;m now not only responsible for myself, but I&#8217;m responsible for Amanda also, not in a parent-child kind of way, but in the kind of way where we&#8217;re totally reliant on each other and therefore need to share responsibility.</li>
<li>Read.  Marriage doesn&#8217;t come naturally.  I&#8217;ve come across countless people who think because their relationship isn&#8217;t &#8220;working&#8221;, or they can&#8217;t stand something about one another, then it can&#8217;t be &#8220;right&#8221;.  This is far from the truth, there&#8217;s no such thing as a perfect marriage, because we&#8217;re imperfect beings.  There&#8217;s some great books on marriage, particularly &#8220;The Five Love Languages&#8221; just to whet your appetite.</li>
</ul>
<p>Another great thing to do is ask someone who has a great marriage a few tips here and there, get advice, or just a general perspective on things.  I ask couples constantly on how they deal with big decisions, how they manage their finances, how they share roles and responsibilities in the home.  99% of our problems come from a lack of communication, so the prime thing I&#8217;ve admired Amanda for is her enthusiasm to sit down and talk about things with me.</p>
<p>I&#8217;m sure I could go on for much longer on this subject, but I&#8217;ll leave it to everyone else to find out.  All in all though, it&#8217;s been a good year.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/08/23/year-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET MVC Navigating With AreasLib</title>
		<link>http://www.kieransenior.co.uk/2009/07/13/asp-net-mvc-navigating-with-areaslib/</link>
		<comments>http://www.kieransenior.co.uk/2009/07/13/asp-net-mvc-navigating-with-areaslib/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 19:38:23 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/journal/?p=202</guid>
		<description><![CDATA[When business requirements infest a projects progress desperation turns into frustration which in turn ends up as lost hope.  I&#8217;ve spent the last week spending my personal time researching what ways I can approach navigation using some SiteMap implementation in MVC for ASP.NET.  Unfortunately I never did find a decent solution, but in [...]]]></description>
			<content:encoded><![CDATA[<p>When business requirements infest a projects progress desperation turns into frustration which in turn ends up as lost hope.  I&#8217;ve spent the last week spending my personal time researching what ways I can approach navigation using some SiteMap implementation in MVC for ASP.NET.  Unfortunately I never did find a decent solution, but in the midst of it all I&#8217;ve had to come up with an alternative solution which, whilst not as elegant, meets the &#8220;business requirements&#8221;.</p>
<p>The requirements were actually to have a Windows-style navigation, one without the navigation tree but instead a folder-like structure.  I can&#8217;t deviate from this, regardless of how inefficient it is from a user-perspective simply because the users are so tied into this navigation model that any other approach would lead to frustration and complaints from the end-user.  When developing applications you don&#8217;t meet the developers needs, you work to the user, which in many-an-environment, is a unique individual with unique requirements.  Whilst we can abstract the user process and make recommendations we must also ensure a happy-to-use environment based on familiarity (that being the folder-like structure of navigation).</p>
<p>So why won&#8217;t <a href="http://mvcsitemap.codeplex.com/">MvcSiteMap</a> work? Well, I&#8217;m using Areas Lib, and MvcSiteMap doesn&#8217;t work with Areas Lib, so this is a complete no-go.  MvcSiteMap is simply an MVC implementation of Microsoft&#8217;s original SiteMap control for ASP.NET.  The library is highly rated by many developers, and seems very good.  Areas Lib is something I have to use, it&#8217;s absolutely fundamental to the workings of the application, so I&#8217;m very thankful for that.</p>
<p>So, what I&#8217;ve come up with in the mean time? Well I&#8217;m using partial views and wrote a HTML helper to figure out what menu it should render.  The good thing about it is that currently no logic is required, it just picks up the file and reads it into memory without having to worry about the content whatsoever.  It does mean that a basic folder structure is needed to place the menu.ascx files about the place.  It also still conforms to the general MVC architecture as it&#8217;s simply picking a view based on the controller action.  Unfortunately I can&#8217;t give you the code, but it&#8217;s not hard to write a HTML helper to pick up a *.ascx file and read it into memory.  The next step is achieving a security model in the partial view without breaking the MVC structure, but at least I got it to work, and that&#8217;s the important thing in this case.</p>
<p>This does show though that Microsoft&#8217;s MVC implementation for ASP.NET isn&#8217;t quite up to par with competing architectures such as Ruby on Rails.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/07/13/asp-net-mvc-navigating-with-areaslib/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A New Addition To The Senior Family</title>
		<link>http://www.kieransenior.co.uk/2009/06/23/a-new-addition-to-the-senior-family/</link>
		<comments>http://www.kieransenior.co.uk/2009/06/23/a-new-addition-to-the-senior-family/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 21:52:51 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/journal/?p=198</guid>
		<description><![CDATA[No we&#8217;re not pregnant, although pretty much every single other friend I have is at the moment.  &#8220;Xiao Jie&#8221; is our new tortoise, something I bought my wife for her birthday.

]]></description>
			<content:encoded><![CDATA[<p>No we&#8217;re not pregnant, although pretty much every single other friend I have is at the moment.  &#8220;Xiao Jie&#8221; is our new tortoise, something I bought my wife for her birthday.</p>
<p><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc1/hs119.snc1/5194_199391605653_799380653_7272170_5400204_n.jpg" alt="Xiao Jie" width="483" height="362" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/06/23/a-new-addition-to-the-senior-family/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Multiple Shapes in ASP.NET MVC &#8211; Part 2</title>
		<link>http://www.kieransenior.co.uk/2009/06/22/multiple-shapes-in-asp-net-mvc-part-2/</link>
		<comments>http://www.kieransenior.co.uk/2009/06/22/multiple-shapes-in-asp-net-mvc-part-2/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 18:33:14 +0000</pubDate>
		<dc:creator>Kieran</dc:creator>
				<category><![CDATA[Pages]]></category>

		<guid isPermaLink="false">http://www.kieransenior.co.uk/journal/?p=190</guid>
		<description><![CDATA[In my last article I discussed multiple shapes in ASP.NET MVC, in this article I&#8217;ll discuss to get around some of the problems that I&#8217;ve faced.
Problem 1: There&#8217;s no constructor &#8211; solved!
'System.Data.Linq.DataContext' not contain a constructor that takes '0' arguments
The first issue was to do with the error shown above which was received upon trying [...]]]></description>
			<content:encoded><![CDATA[<p>In my <a href="http://www.kieransenior.co.uk/journal/2009/06/18/multiple-shapes-in-asp-net-mvc/">last article</a> I discussed multiple shapes in ASP.NET MVC, in this article I&#8217;ll discuss to get around some of the problems that I&#8217;ve faced.</p>
<p><strong>Problem 1: There&#8217;s no constructor &#8211; solved!</strong></p>
<pre name="code" class="c#">'System.Data.Linq.DataContext' not contain a constructor that takes '0' arguments</pre>
<p>The first issue was to do with the error shown above which was received upon trying to build the project.</p>
<p>Today I returned to my development environment with a clean conscience and a load of caffeine.  Quite often you&#8217;ll find that ignoring the issue altogether and coming back to it helps, as well as spending the weekend reading some <a href="http://en.wikipedia.org/wiki/Out_of_the_Silent_Planet">C. S. Lewis novel</a>.  Again I tried to build the project where I was yet again greeted with the same frustrating message.  I had discussed the issue on Stack Overflow but the answers I was receiving didn&#8217;t fully tie in with the issue at hand.  I considered the partial class to inherit the same class as any other share partial class, which is indeed true, but there were some factors that I hadn&#8217;t previously noticed.  If, when you create a dbml file, you right-click and hit &#8220;View Code&#8221; it will create a partial class for the name of the dbml file which is expected.  The only issue with this newly created partial class (for placing custom code where you may return multiple shapes from stored procedures which LINQ can&#8217;t do for you) is that it places the partial class in the <em><strong>root namespace</strong></em>.  I&#8217;ve reproduced this problem with other dbml files so I think it&#8217;s a bug.  If someone could confirm I would be most grateful.  So, the solution?  Append the rest of the namespace!  Make sure your &lt;filename&gt;.designer.cs for your dbml file has a namespace that matches that of the filename.cs partial class.  <strong>Do not modify the &lt;filename&gt;.designer.cs file</strong>, Visual Studio will delete it and you will lose everything.</p>
<p><strong>Problem 2: Passing a type failed to build project &#8211; solved!</strong></p>
<p><em>Inherits=&#8221;System.Web.Mvc.ViewPage&lt;MyType&gt;</em></p>
<p>The second issue was with the above statement telling the user upon compile that <em>MyType</em> doesn&#8217;t exist.</p>
<p>Unfortunately I&#8217;ve left the exact details on another system but I used <a href="http://www.nablasoft.com/alkampfer/index.php/2009/04/05/could-not-load-type-systemwebmvcviewpage/">this blog post</a> to aid me in my quest.  You simply have to add certain sections into your web.config in order to get it to work.  The MVC project setup is quite strange.  For me there are two web.config files, one of them has the things that are missing in them, the other does not.  Perhaps I have my environment set up wrong.  Simply put, I copied the missing contents from one web.config into the other web.config and hey presto, everything worked fine.</p>
<p><strong>Conclusion</strong></p>
<p>These things take getting used to, especially when you&#8217;re not used to working with a web environment which is really quite different from any other you&#8217;ve worked with.  Problem 1 seemed to me to be a bug with Visual Studio, what&#8217;s the point in having a partial class that doesn&#8217;t belong to the same namespace? It won&#8217;t compile as the same class surely?  Problem 2 also seemed silly because without those settings multiple shapes won&#8217;t work in your project, these details should&#8217;ve been in the web.config beforehand.</p>
<p>Either way, it&#8217;s not well documented and it takes forever to solve the problem.  The good news is that I actually managed to get some data output to screen, despite not being very enthusiastic.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kieransenior.co.uk/2009/06/22/multiple-shapes-in-asp-net-mvc-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
