<?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"
	>

<channel>
	<title>novolocus.com &#187; 2005 &#187; October</title>
	<atom:link href="http://www.novolocus.com/2005/10/feed" rel="self" type="application/rss+xml" />
	<link>http://www.novolocus.com</link>
	<description>Whatever Andy Burns is working on...</description>
	<pubDate>Tue, 06 Jan 2009 16:36:39 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Ruby on Rails</title>
		<link>http://www.novolocus.com/2005/10/21/ruby-on-rails/</link>
		<comments>http://www.novolocus.com/2005/10/21/ruby-on-rails/#comments</comments>
		<pubDate>Fri, 21 Oct 2005 09:10:53 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Ruby &amp; Rails]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=222</guid>
		<description><![CDATA[I was ill earlier this week, so out of boredom I thought I&#8217;d have a look at Ruby on Rails. Very impressed&#8230;
I guess I hadn&#8217;t realised, but Ruby is the language, and Rails is the web development framework for it. And boy does it work well. More on that later.
Installation was a bit of a [...]]]></description>
			<content:encoded><![CDATA[<p>I was ill earlier this week, so out of boredom I thought I&#8217;d have a look at Ruby on Rails. Very impressed&#8230;</p>
<p>I guess I hadn&#8217;t realised, but Ruby is the language, and Rails is the web development framework for it. And boy does it work well. More on that later.</p>
<p>Installation was a bit of a bugger, and I couldn&#8217;t get the default installation (which I got <a href="http://rubyinstaller.rubyforge.org/">here</a> to talk to mySQL at first. The tutorial I was following was <a href="http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html?page=1">Rolling with Ruby on Rails</a>, but I found I had to install the <a href="http://www.tmtm.org/en/ruby/mysql/README_en.html">Ruby/MySQL API</a> instead of whatever was installed by default. After that, the tutorial all worked fine.</p>
<p>It&#8217;s a good tutorial, so I won&#8217;t go through all that - instead I&#8217;ll write my impressions.</p>
<p>Okay, so Rails makes you use MVC (Model View Controller) as a design paradigm, but that&#8217;s no bad thing - I am a BIG fan of MVC. The Model part is really neat - Rails uses reflectance to define itself; that is, it looks at the database and defines the model based on the definitions it finds within. Clever, and simple.</p>
<p>The view - well, it does what it says. It&#8217;s quite nice - you can have templates, the views can have loops or call &#8216;helpers&#8217;. Works well. Plenty of functions for generation of links - and I love the automatic pagination. One line to do pagination - fantastic.</p>
<p>What impressed me the most was the main point of Rails, I guess - you have to do very little to get something that works up and running (which you can then develop upon), and it takes very little code. I mean, during that demo, you get a website that lists recipies, with all the create/delete/update/select actions in a total of 11 line of code, in which you wrote 1.</p>
<p>That&#8217;s a lot of bang per buck. I could be tempted off PHP by that.</p>
<p>So, the short of it - not played with Ruby itself so much, but it seems a fairly nice language. Typical one, you know. But Rails - very impressed, I can think of projects that would benefit from this. I expect it will become more popular (much more) though perhaps not amongst some of the PHP crowd, as MVC requires a certain degree of abstract though. If you&#8217;re a web developer, you probably want to take a look&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2005/10/21/ruby-on-rails/feed/</wfw:commentRss>
		</item>
		<item>
		<title>VMWare Player</title>
		<link>http://www.novolocus.com/2005/10/21/vmware-player/</link>
		<comments>http://www.novolocus.com/2005/10/21/vmware-player/#comments</comments>
		<pubDate>Fri, 21 Oct 2005 09:10:30 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[General Tech]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=223</guid>
		<description><![CDATA[VMWare is one of my favourite development tools - being able to build (and trash during development, only to restore to a stable state) virtual machines is great. Anyway, they now have VMWare Player. This will be superb for us to do demos on! And I&#8217;ll be able to install it at home, and use [...]]]></description>
			<content:encoded><![CDATA[<p>VMWare is one of my favourite development tools - being able to build (and trash during development, only to restore to a stable state) virtual machines is great. Anyway, they now have <a href="http://www.vmware.com/products/player/">VMWare Player</a>. This will be superb for us to do demos on! And I&#8217;ll be able to install it at home, and use it for development there (I think) (or maybe, I hope).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2005/10/21/vmware-player/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Security Expert can&#8217;t have ever coded</title>
		<link>http://www.novolocus.com/2005/10/13/security-expert-cant-have-ever-coded/</link>
		<comments>http://www.novolocus.com/2005/10/13/security-expert-cant-have-ever-coded/#comments</comments>
		<pubDate>Thu, 13 Oct 2005 08:10:23 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.novolocus.com/?p=224</guid>
		<description><![CDATA[So, according to ZDNet, Security expert Howard Schmidt wants coders to be held responsible for vulnerabilities in their code. This is REALLY dumb.
He gets one thing right - I&#8217;ll give him that. Most developers don&#8217;t have an adequate idea of what security entails, and training in this is, at best, extremely rare. There should be [...]]]></description>
			<content:encoded><![CDATA[<p>So, according to ZDNet, <a href="http://news.zdnet.co.uk/software/developer/0,39020387,39228663,00.htm">Security expert Howard Schmidt wants coders to be held responsible for vulnerabilities in their code</a>. This is REALLY dumb.</p>
<p>He gets one thing right - I&#8217;ll give him that. Most developers don&#8217;t have an adequate idea of what security entails, and training in this is, at best, extremely rare. There should be more of that, both at university and in the job - attacks evolve, after all.</p>
<p>But making developers responsible? When they don&#8217;t have the authority to control the product? Management choose what features are &#8216;in&#8217; or &#8216;out&#8217;, project times scales, budget, etc.. I&#8217;d love to produce better code, but my boss will reject my &#8216;It&#8217;ll take twice as long and be 3 times as expensive&#8217; - and rightly so.<span id="more-224"></span></p>
<p>Why rightly? &#8216;Cos it wouldn&#8217;t sell. Many customers want a lot for very little money, and there is not such thing as a free lunch. If you buy a Ford Fiesta, you get a Ford Fiesta, not a Ferrari. We could write more secure products, but they wouldn&#8217;t sell. Customers almost invariably go for the cheapest option.</p>
<p>I like the comparison between software and the aerospace industry. Computers crash - we wish they didn&#8217;t by they do. Airplanes don&#8217;t (well, not often, statistically speaking. I mean, how many times has your PC crashed, and how many times have you been in a plane crash?) The difference is that designing, building and testing planes is a slow, detailed, heavily documented process that is, therefore, very expensive. People are willing to pay that as a plane that doesn&#8217;t work is, well, a bad thing. A visibly bad thing. Bad software isn&#8217;t usually such a bad thing, and it&#8217;s unlikely to be so visible.</p>
<p>Anyway, back to the point - I&#8217;m not the one who sets a ridiculous deadline in the first place. I&#8217;m not the one who reduces our budget. I&#8217;m not the one who decides to skip some testing to meet a deadline. I&#8217;m not the one who expects a developer to be able to design, implement and test a system, which really are 3 seperate roles (although where I work, at least we don&#8217;t test our own stuff). And if they are 3 roles, who&#8217;s fault is a security hole - the designer (who designed it in), the developer (who wrote it) or the tester (who didn&#8217;t find it in testing)? Or even the manager, who stuffed it all up with an infeasible deadline in the first place?</p>
<p>Finally, a developer can only have ownership of his part of a solution. You could have hundreds of coders working on a project, and those lines will become blurry. Perhaps the issue lies in how two bits of code work together - that in isolation they work fine, but when talking together their interface has been interpretted differently.</p>
<p>I&#8217;ll accept personal liability when I 1) have total control of the project and 2) earn 3 times what I get at the moment.</p>
<p>Anyway, I&#8217;m not going to get too worked up. It turns out &#8220;Mr. Schmidt holds a bachelor&#8217;s degree in business administration (BSBA) and a master&#8217;s degree in organizational management (MAOM) from the University of Phoenix. He also holds an Honorary Doctorate degree in Humane Letters.&#8221; &#8216;Nuff said</p>
]]></content:encoded>
			<wfw:commentRss>http://www.novolocus.com/2005/10/13/security-expert-cant-have-ever-coded/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
