<?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>ElbertF &#187; open source</title>
	<atom:link href="http://elbertf.com/tag/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://elbertf.com</link>
	<description>Insights and Updates from a Tech Geek</description>
	<lastBuildDate>Sun, 15 Apr 2012 21:46:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Swiftlet 3.0</title>
		<link>http://elbertf.com/2012/01/swiftlet-3-0-easy-mvc-framework/</link>
		<comments>http://elbertf.com/2012/01/swiftlet-3-0-easy-mvc-framework/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 05:38:00 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[micro framework]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[oop]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://elbertf.com/?p=1027</guid>
		<description><![CDATA[Three years ago I released an early version of Swiftlet, a light-weight PHP framework built for speed and security. Over time however, a lot of functionality was added and started to suffer from feature creep. My original intention of creating a maintainable framework that was easy to pick up was a bit&#160;lost. Last Sunday I [...]]]></description>
			<content:encoded><![CDATA[<p>Three years ago I released an early version of <a href="http://swiftlet.org/">Swiftlet</a>, a light-weight PHP framework built for speed and security. Over time however, a lot of functionality was added and started to suffer from <a href="http://en.wikipedia.org/wiki/Feature_creep">feature creep</a>. My original intention of creating a maintainable framework that was easy to pick up was a bit&nbsp;lost.</p>
<p>Last Sunday I had a spur of inspiration and decided to start over. With a slightly different vision, a better understanding of <a href="http://en.wikipedia.org/wiki/Model_view_controller">MVC</a> and experience gained with the project I managed to finish it the same day. The result is about 150kB of code including&nbsp;documentation.</p>
<p>If you&#8217;re unfamiliar with the <a href="http://en.wikipedia.org/wiki/Model_view_controller">model-view-controller</a> approach to programming Swiftlet might be a good starting point. The code is quite simple and hopefully the documentation makes the concept&nbsp;understandable.</p>
<h4>Source&nbsp;code</h4>
<p><a href="http://swiftlet.org/">Swiftlet on&nbsp;GitHub</a></p>
<p>Swiftlet is released under the <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU Public&nbsp;License</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2012/01/swiftlet-3-0-easy-mvc-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free transform plugin for Raphaël JS</title>
		<link>http://elbertf.com/2011/12/free-transform-plugin-for-raphael-js/</link>
		<comments>http://elbertf.com/2011/12/free-transform-plugin-for-raphael-js/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 04:35:32 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mit]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[raphaël]]></category>
		<category><![CDATA[svg]]></category>
		<category><![CDATA[vector graphics]]></category>
		<category><![CDATA[vml]]></category>

		<guid isPermaLink="false">http://elbertf.com/?p=992</guid>
		<description><![CDATA[After doing some research for work involving client-side image manipulation I decided to dive into Raphaël, a JavaScript library that simplifies working with vector graphics on the&#160;web. One thing I struggled with was applying multiple transformations to an element. When rotating an object the coordinate plane rotates with it which means dragging no longer works [...]]]></description>
			<content:encoded><![CDATA[<p>After doing some research for work involving client-side image manipulation I decided to dive into <a href="http://raphaeljs.com/">Raphaël</a>, a JavaScript library that simplifies working with vector graphics on the&nbsp;web.</p>
<p>One thing I struggled with was applying multiple transformations to an element. When rotating an object the coordinate plane rotates with it which means dragging no longer works as one might expect (e.g. right becomes up). Raphaël&#8217;s creator <a href="http://dmitry.baranovskiy.com/">Dmitri Baranovskiy</a> indicated this is the <a href="https://github.com/DmitryBaranovskiy/raphael/issues/102#issuecomment-2725489">correct&nbsp;behavior</a>.</p>
<p>I worked out a solution and released it as a plugin. It supports snap-to-grid dragging, scaling and rotating and handles sets. Like Raphaël itself, the plugin is licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT&nbsp;license</a>.</p>
<h4>Source&nbsp;code</h4>
<p><a href="https://github.com/ElbertF/Raphael.FreeTransform">Raphaël.FreeTransform on&nbsp;GitHub</a></p>
<h4>Demo</h4>
<p><a href="http://elbertf.com/raphael/free_transform/">elbertf.com/raphael/free_transform/</a></p>
<h3>See&nbsp;also&hellip;</h3>
<p>These are a couple of other plugins I created&nbsp;recently.</p>
<h4><a href="https://github.com/ElbertF/Raphael.JSON">Raphaël.JSON</a></h4>
<p>Serialize Raphaël elements and&nbsp;back.</p>
<h4><a href="https://github.com/ElbertF/Raphael.Export">Raphaël.Export</a></h4>
<p>Cross-browser solution to export Raphaël elements to <a href="http://www.w3.org/Graphics/SVG/">SVG</a>, works in Internet Explorer 6, 7 and 8. Can be used to convert Raphaël drawings to PNG or PDF server-side using <a href="http://www.imagemagick.org/">ImageMagick</a> or&nbsp;<a href="http://xmlgraphics.apache.org/batik/" title="Batik SVG Toolkit">Batik</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2011/12/free-transform-plugin-for-raphael-js/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Swiftlet 1.1 Stable</title>
		<link>http://elbertf.com/2010/01/swiftlet-1-1-stable/</link>
		<comments>http://elbertf.com/2010/01/swiftlet-1-1-stable/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 04:36:28 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=418</guid>
		<description><![CDATA[I released a new stable version of Swiftlet a few days ago together with a new web page at swiftlet.org. Swiftlet is a light-weight framework written in PHP aimed to make website development faster and&#160;easier. Version 1.1 comes with a few new plugins that bring CMS-like features to Swiftlet. See the changelog for the full [...]]]></description>
			<content:encoded><![CDATA[<p>I released a new stable version of Swiftlet a few days ago together with a new web page at <a href="http://swiftlet.org/">swiftlet.org</a>. Swiftlet is a light-weight framework written in PHP aimed to make website development faster and&nbsp;easier.</p>
<p>Version 1.1 comes with a few new plugins that bring CMS-like features to Swiftlet. See the <a href="http://code.google.com/p/swiftlet/source/browse/trunk/CHANGELOG">changelog</a> for the full list of&nbsp;changes.</p>
<p>The documentation has also been updated and can now be found at <a href="http://swiftlet.org/docs/?intro">swiftlet.org/docs</a>. If you need support or have any requests, feel free to start a thread at&nbsp;<a href="http://swiftlet.org/community/">swiftlet.org/community</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2010/01/swiftlet-1-1-stable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Swiftlet documentation update</title>
		<link>http://elbertf.com/2009/07/swiftlet-documentation-update/</link>
		<comments>http://elbertf.com/2009/07/swiftlet-documentation-update/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 22:41:47 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=334</guid>
		<description><![CDATA[The documentation for Swiftlet 1.0, a light-weight PHP framework I&#8217;ve been working on, is now pretty much&#160;complete. I&#8217;ve already begun working on Swiftlet 1.1 which is now in Alpha (unstable and not suited for live&#160;environments).]]></description>
			<content:encoded><![CDATA[<p><img src="http://code.google.com/p/swiftlet/logo?logo_id=1240554537" alt="Swiftlet logo" class="left"/>The documentation for <a href="http://swiftlet.org">Swiftlet 1.0</a>, a light-weight PHP framework I&#8217;ve been working on, is now pretty much&nbsp;complete.</p>
<p>I&#8217;ve already begun working on Swiftlet 1.1 which is now in Alpha (unstable and not suited for live&nbsp;environments).</p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2009/07/swiftlet-documentation-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript Tetris</title>
		<link>http://elbertf.com/2009/06/javascript-tetris/</link>
		<comments>http://elbertf.com/2009/06/javascript-tetris/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 02:11:08 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[miscellaneous]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tetris]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=246</guid>
		<description><![CDATA[Because I have nothing better to do with my time I wrote a Tetris game in JavaScript. I know there are plenty out there already but it was fun to make and it brought back some memories (I wrote my first Tetris game in DOS when I was 14). Coincidentally, Tetris just turned&#160;25. I released [...]]]></description>
			<content:encoded><![CDATA[<p>Because I have nothing better to do with my time I wrote a <a href="http://elbertf.com/tetris">Tetris game in JavaScript</a>. I know there are plenty out there already but it was fun to make and it brought back some memories (I wrote my first Tetris game in DOS when I was 14). Coincidentally, <a href="http://tetris.com">Tetris</a> just turned&nbsp;25.</p>
<p>I released it under <a href="http://opensource.org/licenses/gpl-3.0.html">GPL</a>, feel free to grab the code from the source and do whatever you like with&nbsp;it.</p>
<p>Play the game at&nbsp;<a href="http://elbertf.com/tetris">elbertf.com/tetris</a></p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2009/06/javascript-tetris/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Swiftlet 1.0.0 Stable</title>
		<link>http://elbertf.com/2009/05/swiftlet-100-stable/</link>
		<comments>http://elbertf.com/2009/05/swiftlet-100-stable/#comments</comments>
		<pubDate>Fri, 08 May 2009 02:51:32 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[pintail]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=164</guid>
		<description><![CDATA[Swiftlet, the light-weight PHP framework that I&#8217;ve been working on for a while, is now&#160;stable. Feature-wise not much has changed since the Beta and Release Candidate cycles but the code has been thoroughly tested and improved where possible. If you&#8217;re planning on building a PHP website, give Swiftlet a&#160;try. I moved the project page and [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://code.google.com/p/swiftlet/logo?logo_id=1240554537" alt="Swiftlet logo" class="left"/><a href="http://swiftlet.org/">Swiftlet</a>, the light-weight PHP framework that I&#8217;ve been working on for a while, is now&nbsp;stable.</p>
<p>Feature-wise not much has changed since the Beta and Release Candidate cycles but the code has been thoroughly tested and improved where possible. If you&#8217;re planning on building a PHP website, <a href="http://code.google.com/p/swiftlet/downloads/list">give Swiftlet a&nbsp;try</a>.</p>
<p>I moved the project page and documentation away from Google Code, if you go to <a href="http://swiftlet.org/">swiftlet.org</a> you&#8217;ll find the new page. It&#8217;s powered by a documentation system that I custom coded (dubbed Pintail). If there is any interest I will release the code behind it as Open-Source as&nbsp;well.</p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2009/05/swiftlet-100-stable/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Swiftlet Beta</title>
		<link>http://elbertf.com/2009/05/swiftlet-beta/</link>
		<comments>http://elbertf.com/2009/05/swiftlet-beta/#comments</comments>
		<pubDate>Sat, 02 May 2009 08:17:52 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=156</guid>
		<description><![CDATA[Swiftlet is now in beta, after 15 alpha cycles I&#8217;m confident that it&#8217;s now pretty much feature complete (there core that is, there will be plenty more plug-ins) and relatively&#160;stable. One of the most important recently added features is the plug-in installer. It checks for compatibility with the core code and creates and populates database [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://code.google.com/p/swiftlet/logo?logo_id=1240554537" alt="Swiftlet logo" class="left"/><a href="http://swiftlet.org">Swiftlet</a> is now in beta, after 15 alpha cycles I&#8217;m confident that it&#8217;s now pretty much feature complete (there core that is, there will be plenty more plug-ins) and relatively&nbsp;stable.</p>
<p>One of the most important recently added features is the plug-in installer. It checks for compatibility with the core code and creates and populates database tables with a click of the mouse. Plug-ins that don&#8217;t require a database connection don&#8217;t need to be installed; they&#8217;re <em>plug-and-play</em> (and Swiftlet runs fine without a&nbsp;database).</p>
<p>I also added plug-ins to handle user sessions and authorization. This should make it easy to create a website that requires a login&nbsp;system.</p>
<p>Download:&nbsp;<a href="http://code.google.com/p/swiftlet/downloads/list">code.google.com/p/swiftlet/downloads/list</a></p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2009/05/swiftlet-beta/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Swiftlet — light-weight PHP framework</title>
		<link>http://elbertf.com/2009/04/swiftlet-%e2%80%94-light-weight-php-framework/</link>
		<comments>http://elbertf.com/2009/04/swiftlet-%e2%80%94-light-weight-php-framework/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 03:48:55 +0000</pubDate>
		<dc:creator>ElbertF</dc:creator>
				<category><![CDATA[app updates]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[oop]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[swiftlet]]></category>

		<guid isPermaLink="false">http://ElbertF.com/?p=132</guid>
		<description><![CDATA[I just released an early alpha version of Swiftlet, an Open Source, light-weight PHP framework released under the GPL&#160;license. It&#8217;s targeted at developers who want to built simple websites that don&#8217;t require large and complex frameworks, but do want a solid base to work from. Swiftlet provides basic security features such as user input sanitizing, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://code.google.com/p/swiftlet/logo?logo_id=1240554537" alt="Swiftlet logo" class="left"/>I just released an early alpha version of <a href="http://swiftlet.org">Swiftlet</a>, an Open Source, light-weight PHP framework released under the <a href="http://www.gnu.org/licenses/gpl.html">GPL&nbsp;license</a>.</p>
<p>It&#8217;s targeted at developers who want to built simple websites that don&#8217;t require large and complex frameworks, but do want a solid base to work from. Swiftlet provides basic security features such as user input sanitizing,  is highly extensible thanks to the deeply integrated hook system, completely Object Oriented and separates logic from design&nbsp;(MVC).</p>
<p>Even the most basic features such as connecting to a database and output buffering are implemented as plug-ins. This means they can be modified, extended and removed without hacking into the core&nbsp;code.</p>
<p>Website:&nbsp;<a href="http://swiftlet.org/">http://swiftlet.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://elbertf.com/2009/04/swiftlet-%e2%80%94-light-weight-php-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

