<?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>DJ Bri T.net &#187; Development</title>
	<atom:link href="http://dj-bri-t.net/category/dev/feed/" rel="self" type="application/rss+xml" />
	<link>http://dj-bri-t.net</link>
	<description>The blog and portfolio of Brian Turchyn</description>
	<lastBuildDate>Fri, 27 May 2011 17:43:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>My Commitment To The Web Design World :: A One-Month Challenge</title>
		<link>http://dj-bri-t.net/2011/03/my-commitment-to-the-web-design-world-a-one-month-challenge/</link>
		<comments>http://dj-bri-t.net/2011/03/my-commitment-to-the-web-design-world-a-one-month-challenge/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 16:00:43 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[30-day Challenge]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Web design]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=473</guid>
		<description><![CDATA[After reading an article on Smashing Magazine (link to the article is here) that talked about the state of the web design world right now and where it's progressed, it really got me thinking. The article mentions that the number of experts in the field has not grown proportionately to the number of developers, but [...]]]></description>
			<content:encoded><![CDATA[<p>After reading an article on <a title="Smashing Magazine" href="http://bit.ly/dYietm" target="_blank">Smashing Magazine</a> (link to the article is <a href="http://bit.ly/hypCP1" target="_blank">here</a>) that talked about the state of the web design world right now and where it's progressed, it really got me thinking. The article mentions that the number of experts in the field has not grown proportionately to the number of developers, but the number of inexperienced people giving advice (often wrong!) has grown exponentially. There isn't the discussion there used to be, and the sharing of knowledge seems to be lacking.</p>
<p>Thus, I have issued myself a one-month challenge:</p>
<h1>The Challenge</h1>
<p>Contribute to the web design world at least once per day for a whole month.</p>
<p><strong>The Rules:</strong></p>
<ul>
<li>I need to perform 30 contributions over 30 days, not necessarily 1 per day (I have a life, or at least I like to think that I do)</li>
<li>Contributions can be:
<ul>
<li>writing articles on my blog</li>
<li>offering small tidbits of code that I believe would be of some use to others</li>
<li>provide meaningful comments on web design articles</li>
<li>tweeting about other well-written things that better the community</li>
<li>answer questions on sites such as StackOverflow, Quora, etc</li>
<li>review of a number of similar products</li>
</ul>
</li>
</ul>
<h1>It Starts Today</h1>
<p>My contribution today comes in the form of this blog post, and is a request from every web designer out there who reads this.</p>
<p>If you read the article and agree with what it says, take up your own 30-day challenge. Tweet this blog post, write about it in your blog and link me for a pingback, write me a comment, do whatever you can to get the word out. The evolution of the world's web design community begins with every single regular developer striving to offer something to the rest of the community. I hope this blog and the above article will inspire even one or two people to do the same as I am.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;title=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge&amp;bodytext=After%20reading%20an%20article%20on%20Smashing%20Magazine%20%28link%20to%20the%20article%20is%20here%29%20that%20talked%20about%20the%20state%20of%20the%20web%20design%20world%20right%20now%20and%20where%20it%27s%20progressed%2C%20it%20really%20got%20me%20thinking.%20The%20article%20mentions%20that%20the%20number%20of%20experts%20in%20the%20fie" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;title=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge&amp;notes=After%20reading%20an%20article%20on%20Smashing%20Magazine%20%28link%20to%20the%20article%20is%20here%29%20that%20talked%20about%20the%20state%20of%20the%20web%20design%20world%20right%20now%20and%20where%20it%27s%20progressed%2C%20it%20really%20got%20me%20thinking.%20The%20article%20mentions%20that%20the%20number%20of%20experts%20in%20the%20fie" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;t=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;title=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;title=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge&amp;annotation=After%20reading%20an%20article%20on%20Smashing%20Magazine%20%28link%20to%20the%20article%20is%20here%29%20that%20talked%20about%20the%20state%20of%20the%20web%20design%20world%20right%20now%20and%20where%20it%27s%20progressed%2C%20it%20really%20got%20me%20thinking.%20The%20article%20mentions%20that%20the%20number%20of%20experts%20in%20the%20fie" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2011%2F03%2Fmy-commitment-to-the-web-design-world-a-one-month-challenge%2F&amp;title=My%20Commitment%20To%20The%20Web%20Design%20World%20%3A%3A%20A%20One-Month%20Challenge" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2011/03/my-commitment-to-the-web-design-world-a-one-month-challenge/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dynamic Named Routes for Semi-Static Pages in Rails</title>
		<link>http://dj-bri-t.net/2010/04/dynamic-named-routes-for-semi-static-pages-in-rails/</link>
		<comments>http://dj-bri-t.net/2010/04/dynamic-named-routes-for-semi-static-pages-in-rails/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 17:37:32 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Everything Else]]></category>
		<category><![CDATA[ActionController]]></category>
		<category><![CDATA[Dynamic]]></category>
		<category><![CDATA[Named Routes]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Routing]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Static Pages]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=351</guid>
		<description><![CDATA[When I was designing the new UMSwing website, I had a few issues that, at the time, I didn't have a clean method of implementing. One of those was the creation of semi-static pages. After watching this episode of Railscasts, I had a pretty good idea of how to implement them. The only issue with the solution offered was the lack of dynamically generated routes.]]></description>
			<content:encoded><![CDATA[<p>When I was designing the new UMSwing website, I had a few issues that, at the time, I didn't have a clean method of implementing. One of those was the creation of semi-static pages. After watching <a title="Episode 117: Semi-Static Pages" href="http://railscasts.com/episodes/117-semi-static-pages">this episode</a> of <a title="Railscasts" href="http://railscasts.com">Railscasts</a>, I had a pretty good idea of how to implement them. The only issue with the solution offered was the lack of dynamically generated routes.</p>
<p>Semi-static pages are used everywhere on websites. They're those pages like an "About" page, which has content on it that doesn't really change that often. Typically, a controller would have to house these actions (/about, /faq, /contact, etc.), and  the routes specified manually. Railscasts came up with an ingenious idea to create a controller which was routed to /static/*, so that semi-static pages could be created on-the-fly and modified easily. It also allows for modifications to change without committing to a repository and going through the process of deploying all over again.</p>
<p>For those needing a quick Rails primer before going on, here's the quick and dirty of what you need to know to understand this:</p>
<ul>
<li><a title="Ruby on Rails" href="http://rubyonrails.org">Rails</a> is a <a title="Model-View-Controller" href="http://en.wikipedia.org/wiki/Model–view–controller">MVC</a>-based web application framework that runs on <a title="Ruby Programming Language" href="www.ruby-lang.org/">Ruby</a>. In short, Ruby code is written to create webpages on-the-fly.</li>
<li>Every request in Rails is first put through the routes file in config/routes.rb. This file tells Rails which <a title="Ruby on Rails: Controllers" href="http://guides.rubyonrails.org/getting_started.html#controllers">Controller</a> and <a title="Ruby on Rails: ActionController" href="http://guides.rubyonrails.org/getting_started.html#action-controller">Action</a> is run.</li>
</ul>
<p>Okay, let's get started. Let's create our static pages scaffold (which includes model, views, and the controller). Obviously, there are sections of this that you would want to require authentication for (editing and deleting, for example), but that's outside the scope of this tutorial.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">script<span style="color: #000000; font-weight: bold;">/</span>generate scaffold pages title:string permalink:string content:text;
rake db:migrate</pre></div></div>

<p>Now we need to modify our controller slightly. More specifically, our <code>show</code> action. Right now, it will respond to showing an element only when the ID is displayed. We want to modify it to handle a permalink as well (/about and /contact look better than /pages/135, don't you think?). Here is your modified <code>show</code> action:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="rails" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">def</span> <span style="color:#5A0A0A; font-weight:bold;">show</span>
  <span style="color:#9966CC; font-weight:bold;">if</span> params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:permalink</span><span style="color:#006600; font-weight:bold;">&#93;</span>
    <span style="color:#0066ff; font-weight:bold;">@page</span> = Page.<span style="color:#9900CC;">find_by_permalink</span><span style="color:#006600; font-weight:bold;">&#40;</span>params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:permalink</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">else</span>
    <span style="color:#0066ff; font-weight:bold;">@page</span> = Page.<span style="color:#9900CC;">find</span><span style="color:#006600; font-weight:bold;">&#40;</span>params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:id</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<p>Before we go any further, we need to create two custom methods in our model. These will format the permalink to remove any unwanted characters for the custom route name (replacing all unacceptable characters with an underscore) and for the URL (replacing all unacceptable characters with a forward slash to allow for nesting of pages). It's also important to note here that previous validation should be done to ensure that the permalink does not have leading or tailing non-alphanumeric characters, but I removed that for simplicity's sake.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="rails" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">class</span> Page <span style="color:#006600; font-weight:bold;">&lt;</span> <span style="color:#CC00FF; font-weight:bold;"><span style="color:#6666ff; font-weight:bold;">ActiveRecord::Base</span></span>
  <span style="color:#9966CC; font-weight:bold;">def</span> route_name
    <span style="color:#CC0066; font-weight:bold;">p</span> = <span style="color:#0000FF; font-weight:bold;">self</span>.<span style="color:#9900CC;">permalink</span>.<span style="color:#CC0066; font-weight:bold;">gsub</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">/</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#91;</span>^A<span style="color:#006600; font-weight:bold;">-</span>Za<span style="color:#006600; font-weight:bold;">-</span>z0<span style="color:#006600; font-weight:bold;">-</span><span style="color:#006666;">9</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">+/</span>, <span style="color:#996600;">'_'</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">downcase</span> <span style="color:#008000; font-style:italic;"># Change non-alphanumeric characters to an underscore</span>
    <span style="color:#996600;">&quot;static_#{p}&quot;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> uri
    <span style="color:#0000FF; font-weight:bold;">self</span>.<span style="color:#9900CC;">permalink</span>.<span style="color:#CC0066; font-weight:bold;">gsub</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">/</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#91;</span>^A<span style="color:#006600; font-weight:bold;">-</span>Za<span style="color:#006600; font-weight:bold;">-</span>z0<span style="color:#006600; font-weight:bold;">-</span><span style="color:#006666;">9</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">+/</span>, <span style="color:#996600;">'/'</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">downcase</span> <span style="color:#008000; font-style:italic;"># Change non-alphanumeric characters to a forward slash</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<p>At this point, we can create and modify our pages as we would regularly expect from a new controller. All of our pages are accessible via /pages/1, /pages/2 etc. We now need to make our controller act as our catch-all (so that all requests that do not match any of the other controllers get routed to our Pages controller), and we also need to provide permalink support. Finally, we will dynamically generate customized, name routes for all of our semi-static pages. All of that gets accomplished with a few short lines of code. Add the following code to the top of your config/routes.rb file, starting at line 2 (inside the ActionController::Routing::Routes.draw section):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>2
3
4
5
6
7
</pre></td><td class="code"><pre class="rails" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">def</span> map.<span style="color:#9900CC;">static_page_actions</span>
  pages = Page.<span style="color:#9900CC;">find</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:all</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  pages.<span style="color:#5A0A0A; font-weight:bold;">each</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>page<span style="color:#006600; font-weight:bold;">|</span>
    <span style="color:#0000FF; font-weight:bold;">self</span>.<span style="color:#9900CC;">send</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;static_#{page.route_name}&quot;</span>, <span style="color:#996600;">&quot;#{page.uri}&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:controller</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;Pages&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:action</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;show&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:permalink</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> page.<span style="color:#9900CC;">permalink</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<p>Finally, we need to call this method close to the bottom of the code, right before our default catch-all routes.</p>

<div class="wp_syntax"><div class="code"><pre class="rails" style="font-family:monospace;">map.<span style="color:#9900CC;">static_page_actions</span>
map.<span style="color:#9900CC;">connect</span> <span style="color:#996600;">':controller/:action/:id'</span>
map.<span style="color:#9900CC;">connect</span> <span style="color:#996600;">':controller/:action/:id.:format'</span></pre></div></div>

<p>What this method does is retrieve all of the static pages in the database, then creates a customized, named route for each page, telling Rails what each URI should look like, and where to direct the request to.</p>
<p>Hopefully this helps some people out with their dynamic page creation. I'm pretty sure there's a pitfall or two here, but I think it could be taken care of by doing some simple route housecleaning in the Pages CRUD controller. The perk of this option is that it allows the routes to be named, and hopefully that is of some benefit for others.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;title=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails&amp;bodytext=When%20I%20was%20designing%20the%20new%20UMSwing%20website%2C%20I%20had%20a%20few%20issues%20that%2C%20at%20the%20time%2C%20I%20didn%27t%20have%20a%20clean%20method%20of%20implementing.%20One%20of%20those%20was%20the%20creation%20of%20semi-static%20pages.%20After%20watching%20this%20episode%20of%20Railscasts%2C%20I%20had%20a%20pretty%20good%20idea%20of%20how%20to%20implement%20them.%20The%20only%20issue%20with%20the%20solution%20offered%20was%20the%20lack%20of%20dynamically%20generated%20routes." title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;title=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails&amp;notes=When%20I%20was%20designing%20the%20new%20UMSwing%20website%2C%20I%20had%20a%20few%20issues%20that%2C%20at%20the%20time%2C%20I%20didn%27t%20have%20a%20clean%20method%20of%20implementing.%20One%20of%20those%20was%20the%20creation%20of%20semi-static%20pages.%20After%20watching%20this%20episode%20of%20Railscasts%2C%20I%20had%20a%20pretty%20good%20idea%20of%20how%20to%20implement%20them.%20The%20only%20issue%20with%20the%20solution%20offered%20was%20the%20lack%20of%20dynamically%20generated%20routes." title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;t=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;title=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;title=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails&amp;annotation=When%20I%20was%20designing%20the%20new%20UMSwing%20website%2C%20I%20had%20a%20few%20issues%20that%2C%20at%20the%20time%2C%20I%20didn%27t%20have%20a%20clean%20method%20of%20implementing.%20One%20of%20those%20was%20the%20creation%20of%20semi-static%20pages.%20After%20watching%20this%20episode%20of%20Railscasts%2C%20I%20had%20a%20pretty%20good%20idea%20of%20how%20to%20implement%20them.%20The%20only%20issue%20with%20the%20solution%20offered%20was%20the%20lack%20of%20dynamically%20generated%20routes." title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F04%2Fdynamic-named-routes-for-semi-static-pages-in-rails%2F&amp;title=Dynamic%20Named%20Routes%20for%20Semi-Static%20Pages%20in%20Rails" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2010/04/dynamic-named-routes-for-semi-static-pages-in-rails/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>5 Goals For The Next 6 Months</title>
		<link>http://dj-bri-t.net/2010/02/5-goals-for-the-next-6-months/</link>
		<comments>http://dj-bri-t.net/2010/02/5-goals-for-the-next-6-months/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 17:00:30 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Five Things]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=320</guid>
		<description><![CDATA[Well, in an attempt to get back on my 'writing horse', I figured I'd start with some of the things that are rattling around my brain right now in terms of what I want to get accomplished in the short term. Some are computer-related, others are not. Nevertheless, I have some goals for things that [...]]]></description>
			<content:encoded><![CDATA[<p>Well, in an attempt to get back on my 'writing horse', I figured I'd start with some of the things that are rattling around my brain right now in terms of what I want to get accomplished in the short term. Some are computer-related, others are not. Nevertheless, I have some goals for things that I want to get done or accomplish in the next 6 months. Here are five of them.</p>
<h2>1. Buy a new car</h2>
<p>With the potential of a great new job headed my way (possibly more on that later), I should have some disposable income in the near future. To celebrate this, I think it's time to get a new car; my current car, although it holds 5 people, is hardly what you consider sporty, is developing a bad case of rust, guzzles gas like nobody's business, and isn't fun to drive at all. I plan on buying a 2003 Hyundai Tiburon with a 5-speed manual transmission. They come in around $9000 before taxes, so on a financing plan I'll be able to buy that no problem.</p>
<h2>2. Build a customized car trunk sound system enclosure</h2>
<p>I'd love to put my DIY skills to the test and create a proper molded sound system enclosure for my new car. It's a lot of work, but it'll be a lot of fun. This will also be very useful to work on some woodworking skills and some custom fabrication work.</p>
<h2>3. Start my development website</h2>
<p>For about two years, I ran a security-based site, but eventually shut it down because my interests simply did not coincide with my interests and life aspirations. As such, I've decided to start a development-based website. I can do the security-aspect within the programming and development, but I can also get into graphics design. It fits into my interests much more at this point in time, and I think it will be more beneficial to the internet as well.</p>
<h2>4. Develop Thimbleberry</h2>
<p>I have a new site in the works with a friend. That's about all I'll tell you for now. Either way, should be a fun time.</p>
<h2>5. Start actively contributing to the open source community</h2>
<p>The open source community is amazing. Those of you that have heard of a little operating system called <a href="http://en.wikipedia.org/wiki/Linux">Linux</a> may know that it's open source. That's right: it's free to use, free to modify, and free to redistribute. There are tons of open source projects available online, and I'd like to start contributing to one or start a new one that people will actually use. I've been using open source software for a long time, and it's about time that I gave back to the community that has helped me out in so many ways.</p>
<p>Well, it may be feeble, but it's a start at getting back in the writing groove. Soon I'll start doing a bit more technology writing again, and will hopefully do some stuff on interface design. Thanks for sticking with me through my creative drought, and we will hopefully see you Monday.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;title=5%20Goals%20For%20The%20Next%206%20Months&amp;bodytext=Well%2C%20in%20an%20attempt%20to%20get%20back%20on%20my%20%27writing%20horse%27%2C%20I%20figured%20I%27d%20start%20with%20some%20of%20the%20things%20that%20are%20rattling%20around%20my%20brain%20right%20now%20in%20terms%20of%20what%20I%20want%20to%20get%20accomplished%20in%20the%20short%20term.%20Some%20are%20computer-related%2C%20others%20are%20not.%20N" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;title=5%20Goals%20For%20The%20Next%206%20Months&amp;notes=Well%2C%20in%20an%20attempt%20to%20get%20back%20on%20my%20%27writing%20horse%27%2C%20I%20figured%20I%27d%20start%20with%20some%20of%20the%20things%20that%20are%20rattling%20around%20my%20brain%20right%20now%20in%20terms%20of%20what%20I%20want%20to%20get%20accomplished%20in%20the%20short%20term.%20Some%20are%20computer-related%2C%20others%20are%20not.%20N" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;t=5%20Goals%20For%20The%20Next%206%20Months" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;title=5%20Goals%20For%20The%20Next%206%20Months" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;title=5%20Goals%20For%20The%20Next%206%20Months&amp;annotation=Well%2C%20in%20an%20attempt%20to%20get%20back%20on%20my%20%27writing%20horse%27%2C%20I%20figured%20I%27d%20start%20with%20some%20of%20the%20things%20that%20are%20rattling%20around%20my%20brain%20right%20now%20in%20terms%20of%20what%20I%20want%20to%20get%20accomplished%20in%20the%20short%20term.%20Some%20are%20computer-related%2C%20others%20are%20not.%20N" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F02%2F5-goals-for-the-next-6-months%2F&amp;title=5%20Goals%20For%20The%20Next%206%20Months" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2010/02/5-goals-for-the-next-6-months/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Random Post: A Programmer&#8217;s Desktop</title>
		<link>http://dj-bri-t.net/2010/01/random-post-a-programmers-desktop/</link>
		<comments>http://dj-bri-t.net/2010/01/random-post-a-programmers-desktop/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 03:50:07 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Wallpaper]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=279</guid>
		<description><![CDATA[Just for the heck of it, I decided that I would post a screenshot of my desktop right before I start programming (ie. before too many windows get opened and clutter my workspace). Those of you that are sharp might notice that it looks a little...wide. That's because I have three monitors on my desktop [...]]]></description>
			<content:encoded><![CDATA[<p>Just for the heck of it, I decided that I would post a screenshot of my desktop right before I start programming (ie. before too many windows get opened and clutter my workspace). Those of you that are sharp might notice that it looks a little...wide. That's because I have three monitors on my desktop -- two 19" and one 22" LCD monitors. That gives me a total resolution of 4560x1050: far bigger than a single monitor could reasonably give me.</p>
<p><a href="http://dj-bri-t.net/wp-content/uploads/2010/01/desktop.png"><img class="size-medium wp-image-280 alignnone" title="Desktop" src="http://dj-bri-t.net/wp-content/uploads/2010/01/desktop-300x69.png" alt="My Desktop" width="300" height="69" /></a></p>
<p>Extra brownie points go to those who can answer the following questions about the screenshot:</p>
<ul>
<li>How many cores does my desktop have?</li>
<li>What music player am I using?</li>
<li>What scripting language server is running in the command line?</li>
<li>What is the symbol on my desktop, what is it's significance, and who came up with the idea to use this symbol for this purpose?</li>
</ul>
<p>Anyways, I have some new photos that will be going up tomorrow, as well as some of my experiences with using an off-camera flash. Stay tuned for that!</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;title=Random%20Post%3A%20A%20Programmer%27s%20Desktop&amp;bodytext=Just%20for%20the%20heck%20of%20it%2C%20I%20decided%20that%20I%20would%20post%20a%20screenshot%20of%20my%20desktop%20right%20before%20I%20start%20programming%20%28ie.%20before%20too%20many%20windows%20get%20opened%20and%20clutter%20my%20workspace%29.%20Those%20of%20you%20that%20are%20sharp%20might%20notice%20that%20it%20looks%20a%20little...wide" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;title=Random%20Post%3A%20A%20Programmer%27s%20Desktop&amp;notes=Just%20for%20the%20heck%20of%20it%2C%20I%20decided%20that%20I%20would%20post%20a%20screenshot%20of%20my%20desktop%20right%20before%20I%20start%20programming%20%28ie.%20before%20too%20many%20windows%20get%20opened%20and%20clutter%20my%20workspace%29.%20Those%20of%20you%20that%20are%20sharp%20might%20notice%20that%20it%20looks%20a%20little...wide" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;t=Random%20Post%3A%20A%20Programmer%27s%20Desktop" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;title=Random%20Post%3A%20A%20Programmer%27s%20Desktop" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;title=Random%20Post%3A%20A%20Programmer%27s%20Desktop&amp;annotation=Just%20for%20the%20heck%20of%20it%2C%20I%20decided%20that%20I%20would%20post%20a%20screenshot%20of%20my%20desktop%20right%20before%20I%20start%20programming%20%28ie.%20before%20too%20many%20windows%20get%20opened%20and%20clutter%20my%20workspace%29.%20Those%20of%20you%20that%20are%20sharp%20might%20notice%20that%20it%20looks%20a%20little...wide" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2010%2F01%2Frandom-post-a-programmers-desktop%2F&amp;title=Random%20Post%3A%20A%20Programmer%27s%20Desktop" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2010/01/random-post-a-programmers-desktop/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>IPAM Presentation: November 2009</title>
		<link>http://dj-bri-t.net/2009/11/ipam-presentation-november-2009/</link>
		<comments>http://dj-bri-t.net/2009/11/ipam-presentation-november-2009/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 15:00:11 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[IPAM]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[web-based attacks]]></category>
		<category><![CDATA[XSS]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=188</guid>
		<description><![CDATA[Last Wednesday, myself and the other co-op student working with me did a presentation to the Information Protection Association of Manitoba (IPAM) about attacks on web-based applications. It was certainly an interesting experience. Although it wasn't a stellar performance, I think we did okay considering our presentation skills. Unfortunately we were expecting a slightly larger [...]]]></description>
			<content:encoded><![CDATA[<p>Last Wednesday, myself and the other co-op student working with me did a presentation to the <a title="IPAM" href="http://www.ipam.mb.ca/">Information Protection Association of Manitoba (IPAM)</a> about attacks on web-based applications. It was certainly an interesting experience. Although it wasn't a stellar performance, I think we did okay considering our presentation skills. Unfortunately we were expecting a slightly larger percentage of technical-minded people rather than business-minded people, and thus I got the impression that some of the talk was a little over the heads of a few of those in attendance. Regardless, it was a learning experience, and something I learned a lot from.</p>
<p>I was approached twice after our presentation was over. The first gentleman, to paraphrase, suggested that the presentation would be more useful had it included a mitigation strategy to prevent and (hopefully) eliminate the possibility of attack. I thought he might be on to something here. After all, wouldn't it be great to have a check list to go through, and making sure each item is checked off would result in a secure application? For the rest of the day, I spent a lot of time going back and forth on this idea. On one hand, this check list would be nice, but I also firmly believe that a large amount of the prevention relies on the skill level of the programmer, debugger, and penetration tester, and a check list simply wouldn't be sufficient to protect yourself from attacks. But, having the check list would be a good start. Sort of an "if you've done these things, you've covered the basics" check list. It would be a good reminder sheet for pro programmers, and a good stepping stone for those who are just starting off. To that person, your suggestion has been heard, and the check list has been added to my to-do list, hopefully to have a first draft out within a month or so, so stay tuned for that.</p>
<p>The second gentleman asked if the slides to the presentation would be online for later viewing. At the end of the presentation, although we took almost an hour, I was well aware that we were rushing; we probably had too much content that we wanted to cover. Before the presentation I had already planned to put the slides online as a reference; although it's nice to see the slides during the talk, it's also nice to go back and view them at a later date. Thus, my slides will be online <a title="Projects" href="http://dj-bri-t.net/projects/">here</a> for anybody to take a look at. I will also be posting my source code, but that will be a bit later (ie. probably next week), since there's a few sections that are a little finicky right now.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;title=IPAM%20Presentation%3A%20November%202009&amp;bodytext=Last%20Wednesday%2C%20myself%20and%20the%20other%20co-op%20student%20working%20with%20me%20did%20a%20presentation%20to%20the%20Information%20Protection%20Association%20of%20Manitoba%20%28IPAM%29%20about%20attacks%20on%20web-based%20applications.%20It%20was%20certainly%20an%20interesting%20experience.%20Although%20it%20wasn%27t" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;title=IPAM%20Presentation%3A%20November%202009&amp;notes=Last%20Wednesday%2C%20myself%20and%20the%20other%20co-op%20student%20working%20with%20me%20did%20a%20presentation%20to%20the%20Information%20Protection%20Association%20of%20Manitoba%20%28IPAM%29%20about%20attacks%20on%20web-based%20applications.%20It%20was%20certainly%20an%20interesting%20experience.%20Although%20it%20wasn%27t" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;t=IPAM%20Presentation%3A%20November%202009" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;title=IPAM%20Presentation%3A%20November%202009" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;title=IPAM%20Presentation%3A%20November%202009&amp;annotation=Last%20Wednesday%2C%20myself%20and%20the%20other%20co-op%20student%20working%20with%20me%20did%20a%20presentation%20to%20the%20Information%20Protection%20Association%20of%20Manitoba%20%28IPAM%29%20about%20attacks%20on%20web-based%20applications.%20It%20was%20certainly%20an%20interesting%20experience.%20Although%20it%20wasn%27t" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F11%2Fipam-presentation-november-2009%2F&amp;title=IPAM%20Presentation%3A%20November%202009" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/11/ipam-presentation-november-2009/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>GNU Screen and Byobu Made Easy</title>
		<link>http://dj-bri-t.net/2009/10/gnu-screen-and-byobu-made-easy/</link>
		<comments>http://dj-bri-t.net/2009/10/gnu-screen-and-byobu-made-easy/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 16:00:35 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[byobu]]></category>
		<category><![CDATA[gnu screen]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=172</guid>
		<description><![CDATA[For the *nix elitist, no graphical tool comes close to the power that the command line provides. While this may strike some people as odd, particularly those who only have experience with Windows, it's a pretty well known fact that the Linux command line provides a method of controlling every aspect of your computer activity; [...]]]></description>
			<content:encoded><![CDATA[<p>For the *nix elitist, no graphical tool comes close to the power that the command line provides. While this may strike some people as odd, particularly those who only have experience with Windows, it's a pretty well known fact that the Linux command line provides a method of controlling every aspect of your computer activity; this is so much the case that most GUI applications on Linux are just command line "wrappers", hiding you from what's actually happening behind the scenes.</p>
<p><img class="alignright size-medium wp-image-174" title="GNU Screen" src="http://dj-bri-t.net/wp-content/uploads/2009/10/cmdline-01-300x197.png" alt="GNU Screen" width="300" height="197" />While this is all fine and dandy, things like development and multi-tasking can prove to be a little frustrating when connecting to a remote location and requiring more than one window open. Although a typical command line pretty much prevents this from happening, using GNU Screen or Byobu can make things a lot smoother. One window, multiple command lines.</p>
<p>As most developers will tell you, having multiple windows available to you is a godsend. It's particularly useful when you have scripts to run in the background that generate output, but you don't want to fork them as a daemon. Now, with GNU Screen and Byobu, you can do this easily, and even make your screen look snazzy as well. The only drawback to these utilities is that they are a little hard to get used to. In this post, I will quickly outline some of the key combinations which I use regularly.</p>
<h2>GNU Screen and Byobu Simplified</h2>
<p>The number one thing to remember about every command you use is <em>Ctrl+A</em>, which will be written as <code>C-a</code>. This is picked up by screen and will tell the utility that the next characters typed will be commands for screen to interpret. Keeping in mind that all keys are case-sensitive (as most things are in Linux), take a look at some of the commands below:</p>
<p><code>C-a c - Create a new screen window</code></p>
<p><code>C-a A - Rename the screen</code></p>
<p><code>C-a C-a - Go back to the previous window</code></p>
<p><code>C-a &lt;0-9&gt; - Switch to screen #0-9 (quick toggle)</code></p>
<p><code>C-a " - View a list of the current screens, which will allow you to select one from the list</code></p>
<p><code>C-a ' - Enter a screen number to switch to (slower version of C-a &lt;0-9&gt;)</code></p>
<p><code>C-a d - Detach the whole screen session and fork to the background. Very useful for remote sessions you want to leave open. The command "screen -r" will resume your screen session.</code></p>
<p><code>C-a &lt;Escape&gt; - Scroll up through your command line "history" and see what output you previously got. Hitting &lt;Escape&gt; again cancels it.</code></p>
<p>With the introduction of Byobu in Ubuntu 9.10, you can also get some statistics added to the bottom of your command line window to help keep you informed about the state of the system you are running on. Hitting F9 in session will bring up the menu for customization, which can make your screen session look pretty awesome. Instead of using <code>screen</code> to start your screen session, simply use <code>byobu</code> instead. Easy as pie.</p>
<p>If you have any questions about GNU Screen or Byobu, let me know and I'll see what I can do to answer them. Stay tuned on Friday for another issue of "Five Things" (hopefully).</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;title=GNU%20Screen%20and%20Byobu%20Made%20Easy&amp;bodytext=For%20the%20%2Anix%20elitist%2C%20no%20graphical%20tool%20comes%20close%20to%20the%20power%20that%20the%20command%20line%20provides.%20While%20this%20may%20strike%20some%20people%20as%20odd%2C%20particularly%20those%20who%20only%20have%20experience%20with%20Windows%2C%20it%27s%20a%20pretty%20well%20known%20fact%20that%20the%20Linux%20command%20" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;title=GNU%20Screen%20and%20Byobu%20Made%20Easy&amp;notes=For%20the%20%2Anix%20elitist%2C%20no%20graphical%20tool%20comes%20close%20to%20the%20power%20that%20the%20command%20line%20provides.%20While%20this%20may%20strike%20some%20people%20as%20odd%2C%20particularly%20those%20who%20only%20have%20experience%20with%20Windows%2C%20it%27s%20a%20pretty%20well%20known%20fact%20that%20the%20Linux%20command%20" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;t=GNU%20Screen%20and%20Byobu%20Made%20Easy" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;title=GNU%20Screen%20and%20Byobu%20Made%20Easy" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;title=GNU%20Screen%20and%20Byobu%20Made%20Easy&amp;annotation=For%20the%20%2Anix%20elitist%2C%20no%20graphical%20tool%20comes%20close%20to%20the%20power%20that%20the%20command%20line%20provides.%20While%20this%20may%20strike%20some%20people%20as%20odd%2C%20particularly%20those%20who%20only%20have%20experience%20with%20Windows%2C%20it%27s%20a%20pretty%20well%20known%20fact%20that%20the%20Linux%20command%20" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Fgnu-screen-and-byobu-made-easy%2F&amp;title=GNU%20Screen%20and%20Byobu%20Made%20Easy" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/10/gnu-screen-and-byobu-made-easy/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>From Paperwork to Web 2.0: UMSwing&#8217;s New Membership System</title>
		<link>http://dj-bri-t.net/2009/10/from-paperwork-to-web-2-0/</link>
		<comments>http://dj-bri-t.net/2009/10/from-paperwork-to-web-2-0/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 16:00:32 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[UMswing]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=138</guid>
		<description><![CDATA[Nowadays, my life has a good amount of its time consumed with either work or swing dancing. I work every weekday, and four nights every week I'm dancing. Being the nerd that I am, I always look for opportunities to intertwine my hobbies, despite them being complete opposites. Being on the executive committee helps a [...]]]></description>
			<content:encoded><![CDATA[<p>Nowadays, my life has a good amount of its time consumed with either work or swing dancing. I work every weekday, and four nights every week I'm dancing. Being the nerd that I am, I always look for opportunities to intertwine my hobbies, despite them being complete opposites. Being on the executive committee helps a lot with that, since I take the position of Web Administrator and Graphics Designer with <a title="University of Manitoba Swing Dance Club" href="http://umswing.ca">UMSwing</a>.</p>
<p>On the way home from an event a couple weeks ago, I was talking with a friend about the hassle of all the paperwork we have to go through every time we have a lesson; we need to fill out transaction logs for each payment, keep track of every person's attendance for each class, and also mark it on their membership form that they attended and paid for that class. A single person dropping in to that class requires writing on three sheets of paper. When you're trying to run everybody through quickly, that starts becoming an issue.</p>
<p>This friend, being the kind of person that seems to regurgitate good ideas on demand, suggested to me, "Brian, you're a developer. Just write a program to do it for you. You're learning <a title="Ruby Programming Language" href="http://ruby-lang.org">Ruby</a> and <a title="Ruby on Rails" href="http://rubyonrails.org/">Rails</a>, so you can do a web-based backend and a GUI frontend. Problem solved!". Thus, I sat down and started planning. Rails seems to be yet another one of those languages that lacks any decent documentation or tutorials. If you plan on learning it, pick up "<a title="Agile Web Development with Rails, Third Edition" href="http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition">Agile Web Development With Rails</a>". It is by far the best development book I have ever read. If it's any sort of selling point, one of the authors created the Rails framework; if he doesn't know how to use the framework, nobody does.</p>
<p>As a method for potentially helping me brainstorm, I've decided to spill out some of my ideas and goals here. I'm only going to discuss a few ideas here; while I would normally immediately distribute this idea into the public domain, I've decided to keep this one closed source. If you have any suggestions or ideas, let me know and I will give you credit. Better yet, if you're interested in this software, get in touch and we can discuss it.</p>
<p><strong>Goals for Dance Site</strong></p>
<ul>
<li>Members: Keep track of all members, regardless of how long ago they joined. Eliminate the need to fill out a new membership form every semester. Each member should be assigned a member number, which can be put on a barcode. Keep track of personal information, interests, and attendance. Gather statistics/metrics from attendance vs. month/day/semester, etc.</li>
<li>Memberships: Handle multiple membership types, including drop-in. Integrate with finances to determine when a user has paid for their membership through drop-ins. Support for online payments through Paypal (ie. Mastercard, Visa, eCheck, etc.)</li>
<li>Finances: handle per-lesson incomes. Support for multiple lessons per day. Keep track of what is taught during that lesson. Provide unlockable content for each lesson; attendance to that lesson unlocks the content for that member; refresher videos, class notes, etc. Support for discounted membership dates/times.</li>
<li>Graduated system: attendance of X number of events allows you to attend higher level classes. Ability to override by administrator.</li>
<li>Mailing List: Separate old members by current members, allowing for class updates to be sent to current members, while global events to be sent to all. Ability to unsubscribe.</li>
</ul>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;title=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System&amp;bodytext=Nowadays%2C%20my%20life%20has%20a%20good%20amount%20of%20its%20time%20consumed%20with%20either%20work%20or%20swing%20dancing.%20I%20work%20every%20weekday%2C%20and%20four%20nights%20every%20week%20I%27m%20dancing.%20Being%20the%20nerd%20that%20I%20am%2C%20I%20always%20look%20for%20opportunities%20to%20intertwine%20my%20hobbies%2C%20despite%20them" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;title=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System&amp;notes=Nowadays%2C%20my%20life%20has%20a%20good%20amount%20of%20its%20time%20consumed%20with%20either%20work%20or%20swing%20dancing.%20I%20work%20every%20weekday%2C%20and%20four%20nights%20every%20week%20I%27m%20dancing.%20Being%20the%20nerd%20that%20I%20am%2C%20I%20always%20look%20for%20opportunities%20to%20intertwine%20my%20hobbies%2C%20despite%20them" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;t=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;title=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;title=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System&amp;annotation=Nowadays%2C%20my%20life%20has%20a%20good%20amount%20of%20its%20time%20consumed%20with%20either%20work%20or%20swing%20dancing.%20I%20work%20every%20weekday%2C%20and%20four%20nights%20every%20week%20I%27m%20dancing.%20Being%20the%20nerd%20that%20I%20am%2C%20I%20always%20look%20for%20opportunities%20to%20intertwine%20my%20hobbies%2C%20despite%20them" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F10%2Ffrom-paperwork-to-web-2-0%2F&amp;title=From%20Paperwork%20to%20Web%202.0%3A%20UMSwing%27s%20New%20Membership%20System" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/10/from-paperwork-to-web-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Documentation Sucks</title>
		<link>http://dj-bri-t.net/2009/09/ruby-documentation-sucks/</link>
		<comments>http://dj-bri-t.net/2009/09/ruby-documentation-sucks/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 16:00:52 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[programming languages]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=131</guid>
		<description><![CDATA[Okay, this is going up a day late. My bad. I've been busy. Regardless, I have a rant which any programmer can sympathize with. I've been recently programming a proxy in the Ruby programming language, which is known for its code elegance. When you know how to use it, it's a great language. The problem, [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, this is going up a day late. My bad. I've been busy. Regardless, I have a rant which any programmer can sympathize with.</p>
<p>I've been recently programming a proxy in the <a title="Ruby Programming Language" href="http://www.ruby-lang.org">Ruby programming language</a>, which is known for its code elegance. When you know how to use it, it's a great language. The problem, however, comes when to learning about the API in the language. To put it bluntly, the <a href="http://www.ruby-doc.org/">documentation</a> is crap. To be more specific, a good amount of it is incomplete, and those sections that are completed fail to follow a consistent fashion. To put things in perspective, there are 108 core libraries included in the Ruby documentation; over half of those libraries have incomplete documentation.</p>
<p>Now, this isn't that much of an issue if you know how to use the language; after all, there's no need to go to the documentation when you know the language. The problem comes when you are like me, learning how to use the language, and don't know what any of the constants for the sockets library do, which is a bit of a problem when you need to program a proxy. See where I'm going with this?</p>
<p>Maybe I'm complaining because I've been spoiled on <a title="PHP: Hypertext Processor" href="http://www.php.net">PHP</a>'s phenomenal <a title="PHP Documentation" href="http://www.php.net/manual/en/">documentation</a>, which is an amazing feat when it comes to documentation. All of the functions are properly laid out with plenty of cross-references, and tell you exactly what to expect for each and every function. The documentation is a work of art, I kid you not. Don't believe me? Try learning how to do something complex in PHP using the documentation only, then try to do the same in Ruby.</p>
<p>I have heard some people make the argument that Ruby is open source and relies on its members to do the documentation, hence the lack of it. While I understand this argument, it doesn't entirely make sense. Ruby has a large band of dedicated followers (think Jehovah's Witnesses-style) who should have filled in the 1.9 documentation by now. Thinking about it from another perspective, PHP is a free and open source language as well, and look at the detail in there compared to Ruby.</p>
<p>All I'm saying is that Ruby needs to step up its game a bit, otherwise it will have trouble competing for those people looking at learning a new language. If it wasn't for<a href="https://www6.software.ibm.com/developerworks/education/l-rubysocks/l-rubysocks-a4.pdf"> an amazing IBM document on Ruby socket programming</a>, I would have moved on to another language by now.</p>
<p>Anyways, tune in this Friday for something different. I realize programming isn't everybody's cup of tea, so I'm hoping to branch off into something a little different for those of you who either find computers boring, or those of you that simply don't understand them. As always, I appreciate you reading, and I appreciate even more those of you who tell a friend about my blog <img src='http://dj-bri-t.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;title=Ruby%20Documentation%20Sucks&amp;bodytext=Okay%2C%20this%20is%20going%20up%20a%20day%20late.%20My%20bad.%20I%27ve%20been%20busy.%20Regardless%2C%20I%20have%20a%20rant%20which%20any%20programmer%20can%20sympathize%20with.%0D%0A%0D%0AI%27ve%20been%20recently%20programming%20a%20proxy%20in%20the%20Ruby%20programming%20language%2C%20which%20is%20known%20for%20its%20code%20elegance.%20When%20you%20" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;title=Ruby%20Documentation%20Sucks&amp;notes=Okay%2C%20this%20is%20going%20up%20a%20day%20late.%20My%20bad.%20I%27ve%20been%20busy.%20Regardless%2C%20I%20have%20a%20rant%20which%20any%20programmer%20can%20sympathize%20with.%0D%0A%0D%0AI%27ve%20been%20recently%20programming%20a%20proxy%20in%20the%20Ruby%20programming%20language%2C%20which%20is%20known%20for%20its%20code%20elegance.%20When%20you%20" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;t=Ruby%20Documentation%20Sucks" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;title=Ruby%20Documentation%20Sucks" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;title=Ruby%20Documentation%20Sucks&amp;annotation=Okay%2C%20this%20is%20going%20up%20a%20day%20late.%20My%20bad.%20I%27ve%20been%20busy.%20Regardless%2C%20I%20have%20a%20rant%20which%20any%20programmer%20can%20sympathize%20with.%0D%0A%0D%0AI%27ve%20been%20recently%20programming%20a%20proxy%20in%20the%20Ruby%20programming%20language%2C%20which%20is%20known%20for%20its%20code%20elegance.%20When%20you%20" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fruby-documentation-sucks%2F&amp;title=Ruby%20Documentation%20Sucks" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/09/ruby-documentation-sucks/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>The First Week</title>
		<link>http://dj-bri-t.net/2009/09/the-first-week/</link>
		<comments>http://dj-bri-t.net/2009/09/the-first-week/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 21:47:16 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=121</guid>
		<description><![CDATA[Looking forward to going to work Is a feeling that I've never felt before this week. It's an odd feeling, and one I don't know if I will ever completely get used to. Of course, I'm sure the feeling will wear off after a while. In the past week, I have gotten a number of [...]]]></description>
			<content:encoded><![CDATA[<p>Looking forward to going to work Is a feeling that I've never felt before this week. It's an odd feeling, and one I don't know if I will ever completely get used to. Of course, I'm sure the feeling will wear off after a while.</p>
<p>In the past week, I have gotten a number of experiences that I would not have gotten any other place. My first two days were spent trying to break into a web application on a VM. Although I managed to get access to a few things, I never really got that far.</p>
<p>Today presented a similar scenario. In a virtual network, there were a number of computers: some desktops and some servers. I had to gain access to some "fianancial information" hidden on a server, using exploits in the other machines to gain access. Although I needed a few hints here and there, I managed to get the sensitive information using a variety of tools, including two kernel exploits, <a href="http://sqlmap.sourceforge.net/">sqlmap</a>, <a href="http://nmap.org/">Nmap</a>, <a href="http://www.metasploit.com/">Metasploit</a>, and <a href="http://project-rainbowcrack.com/">RainbowCrack</a>. It was a really fun experience, and I'm glad I got to take it for a test drive.</p>
<p>The icing on the cake for today, however, was using a decompiler to disassemble a fake program requiring activation and bypassing the registration. From the information gathered we made a keygen using 3 different methods. Doing so requires a bit of smarts and a lot of assembly knowledge, which is something I don't have a lot of. With some help though, I managed to crack the registration, which was an exhilerating experience.</p>
<p>These experiences are pretty much all thanks to <a title="Skull Security" href="http://www.skullsecurity.org">Ron Bowes</a>, one of the guys I'm working with. I'd call him an IT Professional (he's certainly skilled enough), but he might laugh at me for such a remark. The virtual network was all designed by him, and he walked me through the application hacking, showing me every step and how it was done. I certainly have no intentions of using any of that knowledge to break the registration information for any program for any reason other than my own personal development, but it was still a really amazing experience. He keeps a blog on his homepage (I'm mentioned in a <a title="The minion mentioned is me" href="http://www.skullsecurity.org/blog/?p=315">recent post</a>), and it's certainly an interesting read.</p>
<p>A final thing that I'm working on at work is a suitable replacement for <a href="http://www.portswigger.net/suite/">Burb Suite</a>, which is an application for attacking web applications. It's a really powerful program, but there's three main problems with it: it's closed source, you have to pay for it, and the Swing interface is god-awful ugly. Other free utilities lack in either power, the user interface, or both. So, upon approval from a supervisor, I might be helping to develop a free open source alternative which would be released into the public domain. We've decided to program the backend in Ruby, and so far it's going really smoothly. In just one day I almost have the proxy designed, and I'm looking forward to getting the backend completed.</p>
<p>All in all, work is great so far. Getting paid to do something you love is amazing.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;title=The%20First%20Week&amp;bodytext=Looking%20forward%20to%20going%20to%20work%20Is%20a%20feeling%20that%20I%27ve%20never%20felt%20before%20this%20week.%20It%27s%20an%20odd%20feeling%2C%20and%20one%20I%20don%27t%20know%20if%20I%20will%20ever%20completely%20get%20used%20to.%20Of%20course%2C%20I%27m%20sure%20the%20feeling%20will%20wear%20off%20after%20a%20while.%0D%0A%0D%0AIn%20the%20past%20week%2C%20I%20" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;title=The%20First%20Week&amp;notes=Looking%20forward%20to%20going%20to%20work%20Is%20a%20feeling%20that%20I%27ve%20never%20felt%20before%20this%20week.%20It%27s%20an%20odd%20feeling%2C%20and%20one%20I%20don%27t%20know%20if%20I%20will%20ever%20completely%20get%20used%20to.%20Of%20course%2C%20I%27m%20sure%20the%20feeling%20will%20wear%20off%20after%20a%20while.%0D%0A%0D%0AIn%20the%20past%20week%2C%20I%20" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;t=The%20First%20Week" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;title=The%20First%20Week" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;title=The%20First%20Week&amp;annotation=Looking%20forward%20to%20going%20to%20work%20Is%20a%20feeling%20that%20I%27ve%20never%20felt%20before%20this%20week.%20It%27s%20an%20odd%20feeling%2C%20and%20one%20I%20don%27t%20know%20if%20I%20will%20ever%20completely%20get%20used%20to.%20Of%20course%2C%20I%27m%20sure%20the%20feeling%20will%20wear%20off%20after%20a%20while.%0D%0A%0D%0AIn%20the%20past%20week%2C%20I%20" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F09%2Fthe-first-week%2F&amp;title=The%20First%20Week" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/09/the-first-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ch-ch-changes</title>
		<link>http://dj-bri-t.net/2009/08/ch-ch-changes/</link>
		<comments>http://dj-bri-t.net/2009/08/ch-ch-changes/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 18:39:36 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://dj-bri-t.net/?p=114</guid>
		<description><![CDATA[Over the next few weeks, there will be a lot changing in my life in many different aspects. I expect it might be an interesting experience. As many of you may know, I run a site called H2H Security Group, which has been an ethical hacking knowledge base. Over the past few months, there has [...]]]></description>
			<content:encoded><![CDATA[<p>Over the next few weeks, there will be a lot changing in my life in many different aspects. I expect it might be an interesting experience.</p>
<p>As many of you may know, I run a site called <a href="https://how2hack.net">H2H Security Group</a>, which has been an ethical hacking knowledge base. Over the past few months, there has been little-to-no contributions to it, and it doesn't seem reasonable to keep the site up and running without any participation from other members. My interests have also shifted (matured, if you will) to encompass development-related topics rather than hacking, and I believe that another style of site would suit my interests more than this one. As such, I have decided to take down H2H. It was a hard decision to make, but I believe that my knowledge and expertise would be more suitable in a development site. Therefore, rather than simply removing a part of myself from the internet, I have decided to replace it with a development site. I realize that there are a lot of them out there, but this is something that I am much more passionate about, and will coincide much more with my interests in web development. Hopefully I will be able to attract more people interested in topics similar to this.</p>
<p>H2H spent a lot of time up and running because of its members. Specifically, I need to personally thank <a href="http://mostperfect.net/blog/">Aaron Goldsmith</a> (aka AltonRashmire) and <a href="http://satalketo.co.uk/">Sam Jenkins</a> (aka Satal Keto) for their donations, dedication, and hard work. Their support, both technically and monetarily, has meant that H2H has survived for much longer than expected. They have earned both my respect and my friendship, and I will no doubt keep in touch with them, hopefully on my new development site.</p>
<p>One thing that certainly held H2H back was the hosting I went with. I have been with <a href="http://www.lunarpages.com">Lunarpages</a> for 2 years now, and I have decided to move on due to lackluster tech support (a phone call I made to them which was not toll-free resulted in me yelling at the person because he was completely unaware of the <a href="http://www.wired.com/threatlevel/2008/07/details-of-dns/">DNS exploit</a> which resulted around that time which crippled my site) and significant downtime as of late, which has been severe enough to even take down their own site. Add to that the additional costs for simple things like installing SSL certificates, and you have one unhappy customer. I am now starting a web hosting company with a few friends, which will be an eco-friendly web host. If you are looking for a good deal on hosting, contact me; mention this blog post, and I'll take $1 off per month, which works out to 20% off (this offer good until the end of September 2009). I'll bring you more information on the new host when it is purchased.</p>
<p>Finally, I start my new job in a week and a half, at the Manitoba Information Protection Centre. I have been looking forward to this for quite a while, and I expect it to be an amazing experience. This will certainly be a great learning experience, and definitely be a great source of income, which will be needed to fund my technology addiction.</p>
<p>That's all for now. More later. Sorry for not following my schedule. I'll work on that.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://www.printfriendly.com/print?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;partner=sociable" title="Print"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;title=Ch-ch-changes&amp;bodytext=Over%20the%20next%20few%20weeks%2C%20there%20will%20be%20a%20lot%20changing%20in%20my%20life%20in%20many%20different%20aspects.%20I%20expect%20it%20might%20be%20an%20interesting%20experience.%0D%0A%0D%0AAs%20many%20of%20you%20may%20know%2C%20I%20run%20a%20site%20called%20H2H%20Security%20Group%2C%20which%20has%20been%20an%20ethical%20hacking%20knowledg" title="Digg"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F" title="Sphinn"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;title=Ch-ch-changes&amp;notes=Over%20the%20next%20few%20weeks%2C%20there%20will%20be%20a%20lot%20changing%20in%20my%20life%20in%20many%20different%20aspects.%20I%20expect%20it%20might%20be%20an%20interesting%20experience.%0D%0A%0D%0AAs%20many%20of%20you%20may%20know%2C%20I%20run%20a%20site%20called%20H2H%20Security%20Group%2C%20which%20has%20been%20an%20ethical%20hacking%20knowledg" title="del.icio.us"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;t=Ch-ch-changes" title="Facebook"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;title=Ch-ch-changes" title="Mixx"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;title=Ch-ch-changes&amp;annotation=Over%20the%20next%20few%20weeks%2C%20there%20will%20be%20a%20lot%20changing%20in%20my%20life%20in%20many%20different%20aspects.%20I%20expect%20it%20might%20be%20an%20interesting%20experience.%0D%0A%0D%0AAs%20many%20of%20you%20may%20know%2C%20I%20run%20a%20site%20called%20H2H%20Security%20Group%2C%20which%20has%20been%20an%20ethical%20hacking%20knowledg" title="Google Bookmarks"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fdj-bri-t.net%2F2009%2F08%2Fch-ch-changes%2F&amp;title=Ch-ch-changes" title="Reddit"><img src="http://dj-bri-t.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dj-bri-t.net/2009/08/ch-ch-changes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

