<?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>2Paths &#187; gord</title>
	<atom:link href="http://www.2paths.com/author/glea/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.2paths.com</link>
	<description>Custom Software Technical Architecture, Design and Development in Vancouver, BC, Canada</description>
	<lastBuildDate>Mon, 27 Sep 2010 01:15:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Visualizing Semantic Data using Javascript and the HTML Canvas Element</title>
		<link>http://www.2paths.com/2009/06/22/visualizing-semantic-data-using-javascript-and-the-html-canvas-element/</link>
		<comments>http://www.2paths.com/2009/06/22/visualizing-semantic-data-using-javascript-and-the-html-canvas-element/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 21:45:37 +0000</pubDate>
		<dc:creator>gord</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[semantic]]></category>
		<category><![CDATA[visualization]]></category>

		<guid isPermaLink="false">http://www.2paths.com/?p=1014</guid>
		<description><![CDATA[A work in progress visualization of freedb (RDF version of wikipedia).]]></description>
			<content:encoded><![CDATA[<p>So after trying a few existing javascript/canvas graph visualization libraries, I decided to try my hand at writing my own. We were doing a lot of stuff with RDF in the office at the time, so I decided that my visualization would be a graph of rdf data and relationships. Since I&#8217;d never done anything with the HTML canvas element before, I thought I&#8217;d give that a shot too.</p>
<p><strong>Graph Layout</strong></p>
<p>After looking at various existing graph layout algorithms, I decided to reinvent the wheel and developed my own approach. Each node has a mass based on its size, and I simply used gravity calculations to determine the (inverse, so they repel each other) force each node apples to each other node. You can see this in action when you mouse over a node, it gets bigger and other nodes retreat from it as its mass increases.</p>
<p>This allows each node to position itself in a way so it is visible. It&#8217;s not perfect, but it works okay and makes the graph feel responsive to the user.</p>
<p><strong>How to use it</strong></p>
<p>Double click on a node to load its relationships and related nodes. A node must be an rdf node to load properly, I haven&#8217;t implemented any way to handle normal web links yet. Basically, only click on links that look like <strong>h</strong><strong>ttp://dbpedia.org/resource/<em>something</em><span style="font-weight: normal;">, or that you know are rdf.</span></strong></p>
<div id="attachment_1016" class="wp-caption alignnone" style="width: 521px"><a href="http://staging.2paths.com:8080/deepsnow/" target="_self"><img class="size-full wp-image-1016" src="http://www.2paths.com/wp-content/uploads/2009/06/deepsnow1.png" alt="image of visualization in action, click for demo" width="511" height="300" /></a><p class="wp-caption-text">click for demo of the wikipedia article for baseball</p></div>
<p>If you&#8217;re just interested in the pretty pictures, stop here, if you want more technical information read on.</p>
<p><strong>Implementation</strong></p>
<p>I just used javascript and followed the <a href="http://www.whatwg.org/specs/web-apps/current-work/#canvasrenderingcontext2d" target="_blank">HTML5 docs for using the canvas element</a>. One thing I ran into was the fact that Firefox doesn&#8217;t yet have a full canvas implementation, specifically it doesn&#8217;t yet render text on the canvas. I tried doing some voodoo with absolute positioning divs containing text over the canvas, and after a brief descent into insanity, I found the excellent <a href="http://typeface.neocracy.org/">typeface.js</a> library which emulates the missing canvas calls for text.</p>
<p>As for the javascript code itself, I implemented a simple object graph that can contain vertices or edges, then a render loop just advances the object graph by a given amount of time and renders the scene to the canvas.</p>
<p>The back end serving up rdf was done quickly in grails using the <a href="http://jena.sourceforge.net/" target="_blank">Jena</a> framework to do all the heavy lifting. There is some minimal inference going on using the RDF data to determine if something is an image.</p>
<p><strong><strong>Disclaimer</strong></strong></p>
<p><strong><span style="font-weight: normal;">Keep in mind that this is a work of progress that I have not spent much time with. It has bugs, and it&#8217;s nowhere near usable for anything useful, but it serves its purpose as a proof of concept. I&#8217;m not sure if it will even run under IE, but it should run on any browser that has a decent javascript + canvas implementation.</span></strong></p>
<p><strong> </strong></p>
<p><strong>Conclusions</strong></p>
<p><strong><span style="font-weight: normal;">The canvas element is cool, and works well.</span></strong></p>
<p>Basically I hope you like it. Please leave any suggestions or feedback as comments. I realize it&#8217;s probably full of bugs, but that&#8217;s the nature of the beast.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.2paths.com/2009/06/22/visualizing-semantic-data-using-javascript-and-the-html-canvas-element/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Eclipse update, fix for home and end keys</title>
		<link>http://www.2paths.com/2007/10/19/eclipse-update-fix-for-home-and-end-keys/</link>
		<comments>http://www.2paths.com/2007/10/19/eclipse-update-fix-for-home-and-end-keys/#comments</comments>
		<pubDate>Fri, 19 Oct 2007 17:32:27 +0000</pubDate>
		<dc:creator>gord</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Utilities]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://blog.2paths.com/eclipse-update-fix-for-home-and-end-keys.html</guid>
		<description><![CDATA[2Paths Eclipse Distro v2
I&#8217;ve put together a new disto of the latest Eclipse wtp with some added plugin goodness. I&#8217;ve found this version to be much more stable than v1, and it even works on Lorill&#8217;s machine without too much trouble. Among the new features is a regex tester plugin, and a filter plugin that [...]]]></description>
			<content:encoded><![CDATA[<p><strong>2Paths Eclipse Distro v2</strong><br />
I&#8217;ve put together a new disto of the latest Eclipse wtp with some added plugin goodness. I&#8217;ve found this version to be much more stable than v1, and it even works on Lorill&#8217;s machine without too much trouble. Among the new features is a regex tester plugin, and a filter plugin that allows you to run command line tools such as sed against a selection in the text editor.</p>
<p>Also note that I&#8217;ve put together a 2Paths preferences file that remaps the home and end keys in eclipse, and adds in the 2Paths code formatting templates. To import, once you&#8217;ve got the new eclipse up and running, select import and choose preferences.</p>
<p><a href="http://dev.2paths.com/~glea/blog/eclipse-2paths-v2.zip">Download Eclipse 2Paths Edition v2</a> (155.6MB)</p>
<p><strong>Fix for home and end keys</strong><br />
If you&#8217;re anything like me, you are used to having  your home and end keys go to the start of the line of text and the end of the line, respectively. The way OS X does it drives me insane, and I&#8217;ve finally found a solution that even fixes it in firefox: <a href="http://www.starryhope.com/tech/apple/2006/keyfixer/">KeyFixer</a>.</p>
<p>KeyFixer is a free utility that remaps those keys, there are 2 versions, the standard one that remaps it in OS X and most apps, and KeyFixer for Firefox which is self explanatory. I recommend installing them both if you want your home and end keys back.</p>
<p><a href="http://www.starryhope.com/downloads/KeyFixer.dmg">Download KeyFixer</a> (60KB)</p>
<p><a href="http://www.starryhope.com/downloads/keyfixer_firefox_0.2.dmg">Download KeyFixer for Firefox</a> (80KB)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.2paths.com/2007/10/19/eclipse-update-fix-for-home-and-end-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse WebTools 2.0 Released, time to update your IDE</title>
		<link>http://www.2paths.com/2007/07/03/eclipse-webtools-20-released-time-to-update-your-ide/</link>
		<comments>http://www.2paths.com/2007/07/03/eclipse-webtools-20-released-time-to-update-your-ide/#comments</comments>
		<pubDate>Wed, 04 Jul 2007 00:52:24 +0000</pubDate>
		<dc:creator>gord</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://blog.2paths.com/eclipse-webtools-20-released-time-to-update-your-ide.html</guid>
		<description><![CDATA[The Eclipse WebTools team has released version 2.0 of the WebTools Platform along with the rest of the Europa release. From the release announcement:
             Eclipse developers will be particularly pleased with the debut of major features and/or specification      [...]]]></description>
			<content:encoded><![CDATA[<p>The Eclipse WebTools team has released version 2.0 of the WebTools Platform along with the rest of the <a href="http://www.eclipse.org/europa/">Europa release</a>. From the <a href="http://www.eclipse.org/webtools/news.php#permalink99">release announcement</a>:</p>
<blockquote><p><em>             Eclipse developers will be particularly pleased with the debut of major features and/or specification             updates to EJB3 JPA, JSP 2.0, JSF 1.2, Axis2 Web Services, Tomcat support, and source editing. This release             also introduces Java EE 5 project support. </em></p></blockquote>
<p>I&#8217;ve put together a new Eclipse bundle for everyone here at 2Paths. The package includes some useful plugins preinstalled (<a href="http://subclipse.tigris.org/">Subclipse</a>, <a href="http://springide.org/">SpringIDE 2.0</a>., <a href="http://jautodoc.sourceforge.net/">JAutoDoc</a>, and <a href="http://www.interaktonline.com/Products/Eclipse/JSEclipse/Overview/">JSEclipse</a>), as well as some performance and stability tweaks.</p>
<p><a href="http://frigga.2paths.com/~glea/blog/eclipse-2paths-v1.zip">Download</a> &#8211; Eclipse Europa 2Paths Edition (OS X, 155MB)</p>
<p>To ensure everyone is working with the same tools, you should configure your eclipse to automatically check for updates. This can be done by clicking on the Eclipse menu -> Preferences then Install/Update -> Automatic Updates.</p>
<p>If anyone has any problems with this release, just let me know and I can give you a hand getting things sorted out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.2paths.com/2007/07/03/eclipse-webtools-20-released-time-to-update-your-ide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse WTP 1.5.4 and 2.0RC1 for OS X</title>
		<link>http://www.2paths.com/2007/05/28/eclipse-wtp-154-and-20rc1-for-os-x/</link>
		<comments>http://www.2paths.com/2007/05/28/eclipse-wtp-154-and-20rc1-for-os-x/#comments</comments>
		<pubDate>Mon, 28 May 2007 18:59:08 +0000</pubDate>
		<dc:creator>gord</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://blog.2paths.com/eclipse-wtp-154-and-20rc1-for-os-x.html</guid>
		<description><![CDATA[I&#8217;ve downloaded and hand-configured the latest Eclipse WTP builds for your convenience. I&#8217;d included the Subclipse SVN plugin as well. If there are any other plugins you&#8217;d like to see by default in the future, let me know.
First of all, if you haven&#8217;t installed this update to the Java SWT libraries from Apple, do it [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve downloaded and hand-configured the latest Eclipse WTP builds for your convenience. I&#8217;d included the <a href="http://subclipse.tigris.org/">Subclipse</a> SVN plugin as well. If there are any other plugins you&#8217;d like to see by default in the future, let me know.</p>
<p>First of all, if you haven&#8217;t installed this update to the Java SWT libraries from Apple, do it now. It should improve stability with Eclipse.</p>
<p>Download: <a href="http://dev.2paths.com/~glea/blog/j2se50release4swtcompatibility.dmg">SWT Compatibility Update</a> (188KB)</p>
<p>Eclipse WTP 1.5.4 is the latest update to the WTP 1.5 line. Not anything new, but contains numerous bug fixes etc.</p>
<p>Download: <a href="http://dev.2paths.com/~glea/blog/eclipse_wtp1.5.4.zip">Eclipse WTP 1.5.4</a> (183.9MB)</p>
<p>Eclipse WTP 2.0 RC1 is based on Eclipse 3.3 RC1 and appears to be fairly stable. Some of the new features are support for Tomcat 6, support for JPA projects (annotations, , mappings etc), built in support for web services, and spell checking. This is pre-release, so use at your own risk (I&#8217;ve been using it and it seems ok, although I keep my 1.5.4 around just incase).</p>
<p>Download: <a href="http://dev.2paths.com/~glea/blog/eclipse_wtp2_rc1.zip">Eclipse WTP 2.0RC1</a> (227MB)</p>
<p>Remember to update your copy of eclipse regularly to receive the latest bugfixes, or better yet, set it to auto update in preferences.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.2paths.com/2007/05/28/eclipse-wtp-154-and-20rc1-for-os-x/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>2Paths blog Widget for OSX</title>
		<link>http://www.2paths.com/2007/02/21/2paths-blog-widget-for-osx/</link>
		<comments>http://www.2paths.com/2007/02/21/2paths-blog-widget-for-osx/#comments</comments>
		<pubDate>Wed, 21 Feb 2007 21:11:33 +0000</pubDate>
		<dc:creator>gord</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Under the hood]]></category>
		<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://blog.2paths.com/2paths-blog-widget-for-osx.html</guid>
		<description><![CDATA[I was messing around with some of the sample Dashboard widget code provided by Apple and came up with a widget that displays the latest entries on the 2Paths blog. Widgets are basically html + css + javascript, with a little ajax mixed in if desired, and as such they&#8217;re pretty simple to create and [...]]]></description>
			<content:encoded><![CDATA[<p>I was messing around with some of the sample Dashboard widget code <a title="Apple Sample Code" href="http://developer.apple.com/samplecode/AppleApplications/idxDashboard-date.html">provided</a> by Apple and came up with a widget that displays the latest entries on the 2Paths blog. Widgets are basically html + css + javascript, with a little ajax mixed in if desired, and as such they&#8217;re pretty simple to create and modify. The nice thing about coding them versus something you would access in your browser is that Dashboard is a known variable; you don&#8217;t need to worry about what it&#8217;s going to look like in 5 different browsers.</p>
<p>On a side note, <a title="The Daily Grind" href="http://microcore.dk/TheDailyGrind/index.php">The Daily Grind</a> is a time tracking widget that allows you to track the amount of time you&#8217;ve spent on a number of different tasks/projects. It wouldn&#8217;t take a lot of work to interface it with JIRA for our time tracking.</p>
<p>Download: <a title="2Paths Blog Widget" href="http://dev.2paths.com/~glea/2Paths-Blog-Widget.dmg">2Paths Blog Widget</a> (584KB)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.2paths.com/2007/02/21/2paths-blog-widget-for-osx/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

