<?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>trevoro.ca &#124; blog &#187; Geek</title>
	<atom:link href="http://trevoro.ca/blog/category/geek/feed/" rel="self" type="application/rss+xml" />
	<link>http://trevoro.ca/blog</link>
	<description>Elegant Solutions to Complex Problems</description>
	<lastBuildDate>Thu, 15 Jul 2010 18:36:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Mobilicity Launches&#8230; on GoDaddy</title>
		<link>http://trevoro.ca/blog/2010/05/14/mobilicity-launches-on-godaddy/</link>
		<comments>http://trevoro.ca/blog/2010/05/14/mobilicity-launches-on-godaddy/#comments</comments>
		<pubDate>Fri, 14 May 2010 19:28:27 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Canada]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[wtf]]></category>
		<category><![CDATA[mobilicity fail]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=463</guid>
		<description><![CDATA[Mobilicity, a new mobile phone carrier is launching in Canada on May 15th, 2010. Starting in Toronto, then covering other major cities like Vancouver, and Montreal, the service is competitively priced with unlimited plans for calling and text messages at around $35 dollars (CAD) a month, which is pretty sweet. After seeing some buzz on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://mobilicity.ca">Mobilicity</a>, a new mobile phone carrier is launching in Canada on May 15th, 2010. Starting in Toronto, then covering other major cities like Vancouver, and Montreal, the service is competitively priced with unlimited plans for calling and text messages at around $35 dollars (CAD) a month, which is pretty sweet.</p>
<p>After seeing <a href="http://search.twitter.com/search?q=mobilicity">some buzz</a> on Twitter about Mobilicity, I went to their <a href="http://mobilicity.ca">website</a>, which was so slow I thought I was on dial-up.</p>
<p>This amateur stuff from a Telecom?<br />
No&#8230; It can&#8217;t be.</p>
<p>But after seeing a database connection error (This means shit is broken for all your non-techies) I realized something was really up.</p>
<p style="text-align: center;"><a href="http://trevoro.ca/blog/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-12.00.05-PM.png"><img class="aligncenter size-medium wp-image-478" title="Mobilicity MySQL Connection Errror" src="http://trevoro.ca/blog/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-12.00.05-PM-300x46.png" alt="" width="300" height="46" /></a></p>
<p>Check this out:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># host www.mobilicity.ca</span>
www.mobilicity.ca has address 173.201.38.96
<span style="color: #666666; font-style: italic;"># host 173.201.38.96</span>
96.38.201.173.in-addr.arpa domain name pointer ip-<span style="color: #000000;">173</span>-<span style="color: #000000;">201</span>-<span style="color: #000000;">38</span>-96.ip.secureserver.net.</pre></div></div>

<p>Huh? Secureserver.net is&#8230;.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># whois 173.201.38.96</span>
&nbsp;
OrgName:    GoDaddy.com, Inc.
OrgID:      GODAD
Address:    <span style="color: #000000;">14455</span> N Hayden Road
Address:    Suite <span style="color: #000000;">226</span>
City:       Scottsdale
StateProv:  AZ
PostalCode: <span style="color: #000000;">85260</span>
Country:    US
&nbsp;
NetRange:   173.201.0.0 - 173.201.255.255
CIDR:       173.201.0.0<span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">16</span>
OriginAS:   AS26496
NetName:    GO-DADDY-SOFTWARE-INC
NetHandle:  NET-<span style="color: #000000;">173</span>-<span style="color: #000000;">201</span>-<span style="color: #000000;">0</span>-<span style="color: #000000;">0</span>-<span style="color: #000000;">1</span>
Parent:     NET-<span style="color: #000000;">173</span>-<span style="color: #000000;">0</span>-<span style="color: #000000;">0</span>-<span style="color: #000000;">0</span>-<span style="color: #000000;">0</span>
NetType:    Direct Allocation
NameServer: CNS1.SECURESERVER.NET
NameServer: CNS2.SECURESERVER.NET
NameServer: CNS3.SECURESERVER.NET
Comment:    Please send abuse complaints to abuse<span style="color: #000000; font-weight: bold;">@</span>godaddy.com
RegDate:    <span style="color: #000000;">2009</span>-09-<span style="color: #000000;">18</span>
Updated:    <span style="color: #000000;">2009</span>-09-<span style="color: #000000;">18</span></pre></div></div>

<p>Its GoDaddy. A telecom that hosts its website on GoDaddy.</p>
<p>Yikes.</p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2010/05/14/mobilicity-launches-on-godaddy/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Clouds and The Fate of the Help Desk</title>
		<link>http://trevoro.ca/blog/2010/04/30/clouds-and-the-fate-of-the-help-desk/</link>
		<comments>http://trevoro.ca/blog/2010/04/30/clouds-and-the-fate-of-the-help-desk/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 18:37:19 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Brainstorming]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[cio]]></category>
		<category><![CDATA[computing]]></category>
		<category><![CDATA[cto]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=444</guid>
		<description><![CDATA[As an efficiency nut there&#8217;s one thing that makes me really happy about Tablets: The Help Desk will be going away. It&#8217;s important to understand the meaning of the term &#8220;Help Desk&#8221;. I don&#8217;t just mean people who sit around all day with headsets, answering phone calls. It turns out there are a *lot* of [...]]]></description>
			<content:encoded><![CDATA[<p>As an efficiency nut there&#8217;s one thing that makes me really happy about Tablets:</p>
<p>The Help Desk will be going away.</p>
<p>It&#8217;s important to understand the meaning of the term &#8220;Help Desk&#8221;. I don&#8217;t just mean people who sit around all day with headsets, answering phone calls. It turns out there are a *lot* of people employed in IT whose job it is to just keep the lights on. Vendors, Integration specialists, Sysadmins, and the guy whose entire job it is to  click the right button to clear the printer queue. Entire countries have devoted a lot of resources to greasing the gears of computers. They all work in a Helpdesk somehow.</p>
<p>CTO&#8217;s and CIO&#8217;s are starting to appreciate that their function at a company isn&#8217;t about technology <em>implementation</em> &#8211; it&#8217;s about how technology can help their business. Who cares if your OS is running Windows or Linux if all you need is a Word processor (and Solitaire). It&#8217;s become totally irrelevant.</p>
<p>What matters is the applications that are delivered to the end user; everything else is just implementation dogma. The people doing these implementations are Help Desks too, they&#8217;re just a few degrees removed from the end-user and prefer snazzier titles like &#8216;Application Services Engineer.&#8217;</p>
<p>It&#8217;s gonna take awhile. The PC will be around for a long time and <a href="http://www.ilounge.com/index.php/reviews/entry/apple-ipad-keyboard-dock/">people still need to type</a>. But as we shift to tiny, integrated, crash-proof devices we need help desks less and less. The intuitive nature of the computer will suggest that it&#8217;s no longer important to be adept at using them. Not only that, but as we cycle through generations of people, the technical citizens will supplant the <a href="http://en.wikipedia.org/wiki/Baby_boomer">technical immigrants</a></p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2010/04/30/clouds-and-the-fate-of-the-help-desk/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Carbon Computing</title>
		<link>http://trevoro.ca/blog/2010/02/18/carbon-computing/</link>
		<comments>http://trevoro.ca/blog/2010/02/18/carbon-computing/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 20:21:05 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Analysis]]></category>
		<category><![CDATA[Brainstorming]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[cloud]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=377</guid>
		<description><![CDATA[Being able to outsource all of your computing needs to an external provider is absolutely fantastic for developers and some businesses. While not running your own infrastructure is much cheaper, it also makes the amount of energy and associated &#8216;costs&#8217; of computing very opaque. There are quite a few issues with the transparency of costs [...]]]></description>
			<content:encoded><![CDATA[<p>Being able to outsource all of your computing needs to an external provider is absolutely fantastic for developers and some businesses. While not running your own infrastructure is much cheaper, it also makes the amount of energy and associated &#8216;costs&#8217; of computing very opaque. </p>
<p>There are quite a few issues with the transparency of costs in the cloud computing space. This includes no transparency into the cost of electricity, and where that electricity is coming from. To date, there is no public database of electricity markets, datacenters, and hosting providers which lists how much carbon per kWh of electricity is being output. In ICT this is a massive issue, because of the sheer amount of energy our industry consumes.</p>
<blockquote cite="http://zerofootprint.org'"><p>&#8220;Information and Communication Technology (ICT) is both a problem and a potential solution in the war against climate change. Currently, computers are responsible for more greenhouse gas emissions than airlines. Greenhouse gas is growing exponentially and we expect that ICT will produce double the emissions of the airline industry within five years with no end in site. ICT can provide a solution to climate change by reducing carbon emmission in the world through telecommuting and other means.&#8221;</p></blockquote>
<p>Here in British Columbia we get most of our electricity from renewable hydro-electric power. Hydro-Electric is one of the lowest forms of reliable low carbon output electricity generation available. It goes without saying that providing computing services using energy generated this way would mean less CO2 / kWh but also less CO2 per compute cycle. </p>
<p>We need several things to make this happen</p>
<p>1) Start measuring how much power ICT is using on a per server / component basis<br />
2) Develop resources that track carbon output per kWh in different states &#038; provinces and provide that information as a service<br />
3) Determine where your computing resources are located and track on a per machine level the amount of carbon being output<br />
4) Calculate how much carbon you&#8217;re using.</p>
<p>Those are pretty audacious goals, but I think we really need to start keeping track of carbon output for power. By tying that into the different services we use on a regular basis, we can make carbon part of the social and actual cost of using services. Hopefully that will help buy us enough time and money to develop the carbon neutral power solutions we desperately need.</p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2010/02/18/carbon-computing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unfuddle Git Backups &#8211; How to Actually Use Them</title>
		<link>http://trevoro.ca/blog/2010/02/12/unfuddle-git-backups-how-to-actually-use-them/</link>
		<comments>http://trevoro.ca/blog/2010/02/12/unfuddle-git-backups-how-to-actually-use-them/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 23:25:57 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=373</guid>
		<description><![CDATA[I really like Unfuddle. The service is easy to use, and there are a lot of great features in there. The documentation is&#8230; lacking, however. One of the things I like is the ability to get a full backup of all my project data, repositories, etc in a single tarball. You can even ask them [...]]]></description>
			<content:encoded><![CDATA[<p>I really like Unfuddle. The service is easy to use, and there are a lot of great features in there. The documentation is&#8230; lacking, however.</p>
<p>One of the things I like is the ability to get a full backup of all my project data, repositories, etc in a single tarball. You can even ask them to keep a copy in your own S3 account.</p>
<p>To create a backup do the following</p>
<p>1) log into Unfuddle and goto the Project page.<br />
2) Click the &#8216;settings&#8217; tab then<br />
3) Scroll down till you see link that says &#8216;Request a backup of this project now&#8217; link. Click it.</p>
<p>In a few moments you&#8217;ll get an email, and you&#8217;ll see a new link on the right hand side of your project settings page that includes a timestamped backup. This backup is a tarball that contains all the GIT repositories and some other files like a backup.xml file which looks like all your tickets.</p>
<p>To use the git dumps run the following</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">mkdir</span> reponame
<span style="color: #7a0874; font-weight: bold;">cd</span> reponame
git init
git fast-import <span style="color: #000000; font-weight: bold;">&amp;</span>lt; ..<span style="color: #000000; font-weight: bold;">/</span>my-unfuddle-backup.git.dmp
git checkout master</pre></div></div>

<p>You&#8217;re done!</p>
<p>If you&#8217;re using subversion repositories there is documentation on how to use these repo backups on Unfuddles website.</p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2010/02/12/unfuddle-git-backups-how-to-actually-use-them/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to get Started in Vancouver Tech</title>
		<link>http://trevoro.ca/blog/2009/09/02/how-to-get-started-in-vancouver-tech/</link>
		<comments>http://trevoro.ca/blog/2009/09/02/how-to-get-started-in-vancouver-tech/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 17:55:58 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[Geekness]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Vancouver]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=333</guid>
		<description><![CDATA[I&#8217;ve been meeting quite a few people who are new to Vancouver and are looking to get involved in the local Web and Tech scenes. There&#8217;s quite a bit going on, and Google is your friend, but if you want to save some time here are the best places to go, meet people and see [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been meeting quite a few people who are new to Vancouver and are looking to get involved in the local Web and Tech scenes. There&#8217;s quite a bit going on, and Google is your friend, but if you want to save some time here are the best places to go, meet people and see what&#8217;s going on. There&#8217;s also a score for how nerdy or business-y (?) the event is on a scale of 1-10. </p>
<h3><a href="http://google.com">Do your research</a></h3>
<p><strong>Nerdy: 5<br />
Business: 4<br />
</strong><br />
Find out what you&#8217;re interested and search for companies based in Vancouver that do what you love. If you&#8217;re enthusiastic people will make time for you. Ask someone out for coffee or a pint and just talk. Don&#8217;t try and get a job, just figure out what&#8217;s going on. Like any &#8220;scene&#8221; you&#8217;re likely to hear conflicting viewpoints. Keep an open mind. Look for and talk with local bloggers and tech reporters. Look for events happening in your area. If you&#8217;re interested in Open source projects, find out if the people who work on them are in the area. </p>
<h3><a href="http://barcamp.org/DemoCampVancouver">Democamp Vancouver</a></h3>
<p><strong>Nerdy: 7<br />
Business: 5<br />
</strong><br />
Like most <a href="http://en.wikipedia.org/wiki/Unconference">unconferences</a>, <a href="http://barcamp.org/DemoCampVancouver">Democamp</a> is a loosely organized evening event where the people that attend make up the conference. In this case you bring an idea, and the idea is your demo. You don&#8217;t have to present, and it&#8217;s a good way to meet people that are interested in starting something new, or are working a project already. Democamp doesn&#8217;t happen nearly as often as it should, so if you&#8217;re interested in helping out there, check out the site and get in touch.</p>
<h3><a href="http://launchpartyhq.com/">Launch Party Vancouver</a></h3>
<p><strong>Nerdy: 4<br />
Business: 8<br />
</strong><br />
Every few months local entrepreneurs who are launching their projects meet up to celebrate all their hard work. Walk around and talk with people and get to know the people behind these projects. Most of the time the executives are presenting but ask to chat with some of the developers if that&#8217;s more up your alley. This is usually a very social event where you&#8217;re bound to meet a lot of interesting people &#8211; just don&#8217;t be shy.</p>
<h3><a href="http://bootuplabs.com">Bootup Labs</a></h3>
<p><strong>Nerdy: 8<br />
Business: 6<br />
</strong><br />
<a href="http://bootuplabs.com/">Bootup Labs</a> is a local startup incubator which helps companies go from &#8220;zero to fundable&#8221;. The offices are located at <a href="http://maps.google.ca/maps?q=375+water+st,+vancouver,+bc&amp;oe=utf-8&amp;client=firefox-a&amp;ie=UTF8&amp;split=0&amp;gl=ca&amp;ei=lK2eSqXeBIm6swPJ6I0i&amp;t=h&amp;z=16&amp;iwloc=A">375 Water St</a>, in Gastown and house a rotating group of Vancouver based startups which are always looking for talented help. Bootup has an open door policy so if you&#8217;re new to the area you can generally just pop in, but I suggest getting in touch with them first to arrange a quick (&lt;30 minute) chat. Everyone is really friendly, and it&#8217;s a good way to plug in, or at least get pointed in the right direction.  Bootup helps run a few of the events in town, so pay attention to their <a href="http://upcoming.yahoo.com/group/5080">upcoming feed</a> for things that are happening</p>
<h3><a href="http://www.techvibes.com/index/vancouver">Techvibes</a></h3>
<p><strong>Nerdy: 5<br />
Business: 5<br />
</strong><br />
<a href="http://www.techvibes.com/index/vancouver">Techvibes</a> is a tech community blog and business directory. It&#8217;s a really good way to get to know which businesses are in the area and what they do. They also publish a list of events happening in town that range from an Entrepreneurial to Developer focus.</p>
<h3><a href="http://www.vef.org">VEF</a></h3>
<p><strong>Nerdy: 2<br />
Business: 10<br />
</strong><br />
If you&#8217;re more into the business and entrepreneurial side of things, I suggest checking out <a href="http://www.vef.org/">Vancouver Enterprise Forum</a> or VEF. VEF hosts events on a monthly basis and it&#8217;s a great way to connect with other like-minded individuals.</p>
<h3><a href="http://www.meetup.com/VanDev">Developer Meetups</a></h3>
<p><strong>Nerdy: 10<br />
Business: 3<br />
</strong><br />
There are plenty of developer meetups happening in town. The umbrella meetup for all of these is the <a href="http://www.meetup.com/VanDev/">VanDev</a> network. Join that and you&#8217;re bound to meet quite a few people. The most popular is the <a href="http://ruby.meetup.com/112/">Ruby/Merb/Rails</a> meetup which has events on a monthly basis.</p>
<p>I hope that&#8217;s enough to get you started! Let me know if there&#8217;s anything else you want added to the list. </p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2009/09/02/how-to-get-started-in-vancouver-tech/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>URL Shortener Statistics on Twitter</title>
		<link>http://trevoro.ca/blog/2009/04/22/url-shortener-statistics-on-twitter/</link>
		<comments>http://trevoro.ca/blog/2009/04/22/url-shortener-statistics-on-twitter/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 18:40:55 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Analysis]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[howto]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=323</guid>
		<description><![CDATA[URL Shortening services have gotten a lot of attention because of Twitter. The reason is that most significant links on the internet are longer than 140 characters and that doesn&#8217;t leave you any room to actually say anything when you tweet. Twitter will shorten some URL&#8217;s for you using TinyURL, but what about all of [...]]]></description>
			<content:encoded><![CDATA[<p>URL Shortening services have gotten a lot of attention because of Twitter. The reason is that most significant links on the internet are longer than 140 characters and that doesn&#8217;t leave you any room to actually say anything when you tweet. Twitter will shorten some URL&#8217;s for you using TinyURL, but what about all of the other services? What&#8217;s the state of the URL shortening service world on Twitter?</p>
<p>Of course, the best people to answer this question is Twitter themselves, but since they haven&#8217;t published anything, and I doubt they&#8217;re interested in spending time answering my almost academic question I decided to write a quick app to get the stats myself.</p>
<p>The Twitter API is gorgeous. I mean. It&#8217;s simple, easy to use, and it&#8217;s fast. I grabbed a list of all the popular URL shortening services from a few locations, cross-referenced them and came up with 36 &#8220;popular&#8221; services. The actual number of URL shorteners is pretty incredible. (Some of them even have long names like &#8220;shortna.me&#8221; WTF are you thinking?)</p>
<p>The process is simple &#8211; Search for the urls of the shortening services using the search API, then count how many hits you get. Repeat every 30 seconds or so. (There are other nuances &#8211; look at the <a href="http://github.com/Trevoro/urihz/tree/master">code</a>).  This sampling was done over a 3 hour period on Wednesday April 22nd between the hours of 8AM and 11AM Pacific.</p>
<p><strong>Results</strong></p>
<div id="attachment_324" class="wp-caption aligncenter" style="width: 427px"><img class="size-full wp-image-324" title="Twitter URL Shortening Statistics - April 22 2009" src="http://trevoro.ca/blog/wp-content/uploads/2009/04/picture-1.png" alt="Twitter URL Shortening Statistics - April 22 2009" width="417" height="423" /><p class="wp-caption-text">Twitter URL Shortening Statistics - April 22 2009</p></div>
<p><strong>Issues</strong></p>
<p>You can only return 100 search results at a time, which means if you see 100 results for your term, there are probably way more of them. The only way to get around this would be to search more frequently for that specific term. I tried doing that and was quickly throttled by Twitter. Suffice to say, TinyURL is still the dominant force here, but probably because of their Twitter integration. This really throws off the numbers. There&#8217;s a fine line between searching too often, and getting accurate results. Tests in the middle of the night showed that TinyURL had about 30% of the URL Shortening Service market on Twitter. <strong>I&#8217;m 99% positive that TinyURL numbers are way higher.</strong></p>
<p><strong>Things to do</strong></p>
<p>Optimize the searching algorithm so it displays more accurate results.</p>
<p>Record the time, and see statistics over the course of hours, days, weeks. I can tell you off the top of my head that TinyURL usage is high all times of the day, where as bit.ly usage is pretty much a &#8220;waking hours&#8221; service, as most others.</p>
<p>Better Reporting</p>
<p><strong>GitHub</strong></p>
<p>The scripts are on GitHub. Go bananas. <a href="http://github.com/Trevoro/urihz/tree/master">http://github.com/Trevoro/urihz/tree/master</a></p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2009/04/22/url-shortener-statistics-on-twitter/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Why Serverside Javascript Matters</title>
		<link>http://trevoro.ca/blog/2009/02/05/why-serverside-javascript-matters/</link>
		<comments>http://trevoro.ca/blog/2009/02/05/why-serverside-javascript-matters/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 19:27:01 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Geek]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[ssjs javascript hosting economics cloud computing scali]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=307</guid>
		<description><![CDATA[Javascript is a popular scripting language that comes embedded in most browsers. It&#8217;s usually what&#8217;s responsible for making your browsing experience as rich as it is, and for this reason we tend to categorize it in the realm of client-side development. In fact, running javascript on the server is odd enough for the phrase &#8216;Server-side [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">Javascript</a> is a popular scripting language that comes embedded in most browsers. It&#8217;s usually what&#8217;s responsible for making your browsing experience as rich as it is, and for this reason we tend to categorize it in the realm of client-side development. In fact, running javascript on the server is odd enough for the phrase &#8216;Server-side Javascript&#8217; to have been coined in the first place, but it isn&#8217;t exactly a new idea. Livewire, Netscape&#8217;s <a href="http://blogs.sun.com/jyrivirkki/date/20090113">Enterprise Server</a> product included server-side javascript functionality in 1996. But it hasn&#8217;t really caught on. Writing server-side code in PHP, Ruby, Python and Perl, ASP.Net and Java has been the &#8220;way we do things&#8221; and javascript remained something you messed around with once you wanted to spoil your users with a  richer experience. Before I explain server-side Javascript adoption, we need one important piece of background information.</p>
<p><strong>There are economic concepts that dictate how you use services and hosting on the internet.</strong></p>
<p>Do tell.</p>
<p>Computing is really cheap. Think about all the email that Gmail handles in a day. It&#8217;s so cheap that advertising can pay for it. But the &#8220;Network is the computer&#8221; after all, so we have to think about what it takes to get that information in and our of these clusters of cheap computing, and that&#8217;s the rub. Amazon charges $0.17/gig to get your data out of EC2, which is equivalent to almost two hours of their cheapest computing instance. This is a good scenario if the task you send to your cheap compute cluster can be defined in a very small package, and yields a relatively small result but typical web services and applications don&#8217;t work this way. The point is: <strong>Its cheaper to move the computing than it is to move the data.</strong></p>
<p>So what?</p>
<p>This all clicked for me when I messed around with Freebases <a href="http://dev.freebaseapps.com/">development environment</a>, &#8220;Acre&#8221;. Acre is great. It lets you create, edit, and host your applications through a browser. Not only had I been messing around with Acre, but I&#8217;d also been toying with the idea of using Freebase as a mechanism for validating and normalizing data. The problem is asking Freebase for a bunch of information on say, &#8220;every city on the planet&#8221; is pretty expensive. Not only do you incurr a network transfer cost, but you then have to process the information. Not exactly ideal. But what if I could pose a question to an application running at Freebase? What if, instead of pulling out all the information about every movie and creating your own Freebase-based IMDB, you could host it right next to the data source. You get all the benefits of transferring the &#8216;heavy stuff&#8217; over the WAN, and the browser gets the good stuff, but only when it asks for it.</p>
<p><strong>This is why server-side javascript is perfect</strong></p>
<p>Hosting Ruby, PHP, Python, etc is kind of a pain in the ass. Well its easier than it used to be but it could be a lot better. If I had to choose something relatively lightweight to interface to my data-source and create that rich browsing experience, you&#8217;d probably pick Javascript. My initial impression is that depending on your data-source, scaling it would be easy, too. Running computing close (as in LAN close) to the data-set means a few things</p>
<p>1. You can create cheaper mashups</p>
<p>2. You can eliminate all the cruft from your data before it gets sent over the wire</p>
<p>3. You can create nifty applications and ask them short questions that yield short answers but require huge amounts of data to determine</p>
<p><strong>ZOMG How do I start?</strong></p>
<p>You&#8217;ll have to learn javascript, and as a hosting or service operator you&#8217;ll have to choose an application for running it server-side. There are a few options. Trusty Wikipedia has a <a href="http://en.wikipedia.org/wiki/Server-side_JavaScript">lengthy list</a> of Server-side Javascript implementations. I&#8217;d recommend checking out the following:</p>
<p><a href="http://www.mozilla.org/rhino/">Rhino </a></p>
<p><a href="http://www.mozilla.org/js/spidermonkey/">Spidermonkey</a></p>
<p><a href="http://code.google.com/p/v8/">V8</a></p>
<p><a href="http://appjet.com/">AppJet</a></p>
<p><a href="http://www.aptana.com/jaxer/">Jaxer</a></p>
<p>-Trevor</p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2009/02/05/why-serverside-javascript-matters/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Rogers DNS Hijacking &#8211; A Summary So Far</title>
		<link>http://trevoro.ca/blog/2008/07/21/rogers-dns-hijacking-a-summary-so-far/</link>
		<comments>http://trevoro.ca/blog/2008/07/21/rogers-dns-hijacking-a-summary-so-far/#comments</comments>
		<pubDate>Mon, 21 Jul 2008 20:34:58 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Geek]]></category>
		<category><![CDATA[wtf]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[hijack]]></category>
		<category><![CDATA[isp]]></category>
		<category><![CDATA[netneutrality]]></category>
		<category><![CDATA[rogers]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=268</guid>
		<description><![CDATA[Over the last few weeks we&#8217;ve seen Rogers pull some incredible stunts. Between the iPhone, Data Plans, and Funny Teaser Campaigns, Rogers has managed to get quite a bit of pie on its face. Nothing trumps that however as much as the recent reports that Rogers is redirecting invalid domain names to their own search [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last few weeks we&#8217;ve seen Rogers pull some incredible stunts. Between the <a href="http://ca.reuters.com/article/technologyNews/idCAN2730789320080628">iPhone</a>, <a href="http://www.nowpublic.com/tech-biz/rogers-tries-save-iphone-launch-6gb-30-data-rate">Data Plans</a>, and <a href="http://thisyear.ca/2008/06/10/rogers-lame-iphone-teaser/">Funny Teaser Campaigns</a>, Rogers has managed to get quite a bit of pie on its face. Nothing trumps that however as much as the recent reports that Rogers is redirecting invalid domain names to their own search page with custom advertisements. There&#8217;s a lot of confusion about what this is and how it works so I thought I&#8217;d summarize some of it here so that we can clear it up.</p>
<p>Rogers is <a href="http://arstechnica.com/news.ars/post/20080720-rogers-latest-isp-to-help-customers-with-dns-redirects.html">redirecting traffic</a> from invalid domains to its own search page. This doesn&#8217;t involve deep packet inspection, it simply means they&#8217;ve configured their DNS servers so that if you mis-spell the domain name in your browsers address bar you&#8217;ll go to a different site. DNS is a service that all ISP&#8217;s will run, and for the non-technical folk the process goes a little something like this (and for the technical please disregard my brushing over of the issue)</p>
<p>Every computer on the internet has a <a href="http://whatismyip.com/">number</a>, from 1-4 billion or so. When you type an address into your address bar and hit &#8216;go&#8217; your computer will say &#8220;Do I know where that is already?&#8221; and if it doesn&#8217;t, it will ask a different computer, or DNS (Domain Name Server) for the number of the computer you want to visit. Every single time you type an address into your browser or click on a link this is what happens. For more information on how DNS really works go <a href="www.howstuffworks.com/dns.htm">here</a> (beginner), <a href="http://en.wikipedia.org/wiki/Domain_Name_System">here</a> (intermediate) or <a href="http://www.dns.net/dnsrd/rfc/">here</a> (youalreadyknow).</p>
<p>Now, what normally happens when you type an invalid or non-existant domain name into your browser, the DNS server will return a special code that says &#8216;Theres no answer for this name&#8217;, and you just get a notification in your browser. Type in &#8220;<a href="http://example.co">http://example.co</a>&#8221; using Firefox and you&#8217;ll get something that looks like this:</p>
<p><a href="http://example.co"><img class="alignnone size-medium wp-image-270" title="domannotfound" src="http://trevoro.ca/blog/wp-content/uploads/2008/07/domannotfound-300x148.png" alt="" width="300" height="148" /></a></p>
<p>This is how DNS works, and how the browser is setup to respond to the message that says &#8216;Theres no answer&#8217;. Clear as mud? Lets move on.</p>
<p>The DNS servers that Rogers operates are doing something special. When your computer asks where &#8216;example.co&#8217; is, the server won&#8217;t respond back saying &#8216;Theres no answer&#8217;, but will actually give you the answer containing the name of a server that belongs to Rogers. It will also do something speecial &#8211; It will build a page for you that contains links based on keywords of your domain. So if you typed in &#8216;search.example.co&#8217; while using a Rogers DNS server, you&#8217;ll get a page that looks like this:</p>
<p><a href="http://trevoro.ca/blog/wp-content/uploads/2008/07/rogersdnshijack.png"><img class="alignnone size-medium wp-image-271" title="rogersdnshijack" src="http://trevoro.ca/blog/wp-content/uploads/2008/07/rogersdnshijack-300x197.png" alt="" width="300" height="197" /></a></p>
<p>This does several things. For one it breaks the way DNS is supposed to work (and coincidentally the way some applications work), and it also violates some concepts regarding Network Neutrality. It represents a way for ISP&#8217;s to squeeze out as much value from their end-users as possible, and as John over at Blamcast <a href="http://blamcast.net/articles/rogers-hijacks-dns">writes </a>it puts ads on invalid subdomains as well. This means that if you type in maill.google.com it will print up an ad on Rogers servers using Yahoo&#8217;s search feature.</p>
<p>I talked to some iPhone users and while they use Rogers, this doesn&#8217;t seem to be taking place on the 3G network&#8217;s DNS servers. I dont have those IP addresses so I can&#8217;t test it out myself. (Does anyone have that info kicking around?)</p>
<p>A couple companies also do this. A &#8220;feature&#8221; in IE8 is address-bar searching which is effectively the same thing. When you type an invalid domain into the address bar, it will direct you to Microsoft&#8217;s search page with results that suggest what you may have meant &#8211; and an ad or two of course.</p>
<p>Verizon also did this a few years ago with something called <a href="http://en.wikipedia.org/wiki/Site_Finder">Site Finder</a> but it ended rather quickly due to criticism.</p>
<p><strong>Update</strong>: Parkerjon writes with information about an alternative Rogers DNS server, Here is the information</p>
<p><strong>altdns.rnc.net.cable.rogers.com<br />
64.71.255.202 </strong></p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2008/07/21/rogers-dns-hijacking-a-summary-so-far/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Popurls Replacement</title>
		<link>http://trevoro.ca/blog/2008/07/16/popurls-replacement/</link>
		<comments>http://trevoro.ca/blog/2008/07/16/popurls-replacement/#comments</comments>
		<pubDate>Thu, 17 Jul 2008 03:23:44 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Brainstorming]]></category>
		<category><![CDATA[Geek]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=264</guid>
		<description><![CDATA[I&#8217;ve got a subversion repository full of projects that are essentially &#8216;proof of concept&#8217; hacks and I&#8217;m fucking tired of seeing them in there. Lots of them were ideas I have while doing systems administration. Some of them are goddamned atricous (but functional!) perl programs I wrote for graphing NetFlow statistics, and for visualizing BGP [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve got a subversion repository full of projects that are essentially &#8216;proof of concept&#8217; hacks and I&#8217;m fucking tired of seeing them in there. Lots of them were ideas I have while doing systems administration. Some of them are goddamned atricous (but functional!) perl programs I wrote for graphing NetFlow statistics, and for visualizing BGP routing. They all worked but I kept them to myself and they were forgotten.</p>
<p>One proof of concept hack I&#8217;m going to flesh out is this quick rails app, that with some initial groundwork laid out by <a href="http://imhotep.koalabs.org/blog/">Anis</a>, is essentially another RSS reader. Actually its just an unapologetic Popurls ripoff, but I had a good reason for doing it. I like the popurls layout and the concept: Being able to see all the latest &#8216;buzz&#8217; in one spot. The issue is that none of that information is at all important, but for some reason hitting refresh is really pleasurable. Who cares what the people on Digg and Reddit are saying. Fuck you. I want to know more about Cloud Computing, Cooking, and Sailing, and I want to be able to digest that information with a glance &#8211; not browse through it site by site, category by category. Bah! (Its still a long way off from what I *really* want but more on that later)</p>
<p><a href="http://trevoro.ca/blog/wp-content/uploads/2008/07/picture-1.png"><img class="alignnone size-medium wp-image-265" title="Popurls Replacement" src="http://trevoro.ca/blog/wp-content/uploads/2008/07/picture-1-300x162.png" alt="" width="300" height="162" /></a></p>
<p>Anyway, here&#8217;s a screenshot. Once I&#8217;ve setup OMPL imports, User Accounts and fixed the Background Processing chunk I&#8217;ll release version 0.0.1 to the public.</p>
<p>Note: I acknowledge the total uselessness of Slashdot, and I don&#8217;t read Al Jazzera &#8211; I was just seeing if it would work. I dont know what those words are.</p>
<p><strong>Update</strong>: I&#8217;ve checked some rudimentary code into <a href="http://github.com/Trevoro/cloneurls/tree/master">GitHub</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2008/07/16/popurls-replacement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Supernerd Geek Moment &#8211; Cisco Nexus 7000</title>
		<link>http://trevoro.ca/blog/2008/07/14/supernerd-geek-moment-cisco-nexus-7000/</link>
		<comments>http://trevoro.ca/blog/2008/07/14/supernerd-geek-moment-cisco-nexus-7000/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 20:56:11 +0000</pubDate>
		<dc:creator>Trevor Orsztynowicz</dc:creator>
				<category><![CDATA[Geek]]></category>

		<guid isPermaLink="false">http://trevoro.ca/blog/?p=262</guid>
		<description><![CDATA[This is the most gorgeous piece of network gear I&#8217;ve ever seen, and I didn&#8217;t know data centers were entered in beauty pagents. It&#8217;s the Cisco Nexus 7000. Sounds like a mainframe. Looks like a mainframe. Dispenses coffee and packets.]]></description>
			<content:encoded><![CDATA[<p>This is the most gorgeous piece of network gear I&#8217;ve ever seen, and I didn&#8217;t know data centers were entered in beauty pagents. It&#8217;s the <a href="http://www.cisco.com/en/US/products/ps9402/product_at_a_glance_list.html">Cisco Nexus 7000</a>. Sounds like a mainframe. Looks like a mainframe. Dispenses coffee and packets.</p>
<p><img class="alignnone" src="http://www.cisco.com/en/US/prod/switches/ps9441/ps9402/product_large_photo.jpg" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://trevoro.ca/blog/2008/07/14/supernerd-geek-moment-cisco-nexus-7000/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
