<?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>Helmut Granda &#187; Programming</title>
	<atom:link href="http://www.helmutgranda.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.helmutgranda.com</link>
	<description>learning through interaction</description>
	<lastBuildDate>Mon, 19 Jul 2010 15:01:02 +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>From Kohana to ZendFramework in about 30 minutes</title>
		<link>http://www.helmutgranda.com/2009/12/07/from-kohana-to-zendframework-in-about-30-minutes/</link>
		<comments>http://www.helmutgranda.com/2009/12/07/from-kohana-to-zendframework-in-about-30-minutes/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 05:15:32 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[ZendFramework]]></category>
		<category><![CDATA[Kohana]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=408</guid>
		<description><![CDATA[I am pleased to say that it took me only about 30 minutes to transfer a basic site writte on Kohana to the ZendFramework, both frameworks make it easy to switch between each other. For one thing you can use the ZendFramework Library in Kohana (although I haven't done it myself people declare is rather [...]]]></description>
			<content:encoded><![CDATA[<p>I am pleased to say that it took me only about 30 minutes to transfer a basic site writte on Kohana to the ZendFramework, both frameworks make it easy to switch between each other. For one thing you can use the ZendFramework Library in Kohana (although I haven't done it myself people declare is rather <a href="http://docs.kohanaphp.com/general/libraries" target="_blank">easy</a>)</p>
<p>The thing I like the most about the ZendFramework is their tool which comes as a part of their library download. I have mainly used the tool to create the <a href="http://framework.zend.com/manual/en/zend.controller.html" target="_blank">controllers</a> and <a href="http://framework.zend.com/manual/en/zend.controller.action.html" target="_blank">actions</a> and so far it has been a time saver and has helped me to see how the framework works in a few keystrokes.</p>
<p>After the first site was a success the next step will be to convert a site with a simple CMS built in Kohana to the ZendFramework, I have to admit that there were two things that held me back for a while into using the ZendFramework.</p>
<h3>Speed</h3>
<p>I read in different blogs how slow ZendFramework was compared to other frameworks such as Kohana, CI, CakePHP and even the new framework called Yii. The graphic below is one of my many findings:</p>
<p><img src="http://www.yiiframework.com/images/performance-20090131.png" /><br />
<i>(Source yiiframework.com)</i></p>
<p>But it is obvious that as the time goes by the framework is getting better and seems like it is getting faster as well.</p>
<h3>Initial setup</h3>
<p>When I tried the framework for the first time was about a year ago or so, it was brand new and people were still getting their heads around it as well as was very limited content in the subject so my first attempt to try it was a failure but months later I come back and wow, what a difference. Not only that but I stayed away from the full package and downloaded the minimal package and started just with the library and it was a breeze.</p>
<p>It is nice to have different packages to choose from and that they get better day by day. So far Zend has made it an easy transition and a nice new PHP development start.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/12/07/from-kohana-to-zendframework-in-about-30-minutes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Optimizing SWF files with Flex Optimizer</title>
		<link>http://www.helmutgranda.com/2009/12/01/optimizing-swf-files-with-flex-optimizer/</link>
		<comments>http://www.helmutgranda.com/2009/12/01/optimizing-swf-files-with-flex-optimizer/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 19:03:28 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=398</guid>
		<description><![CDATA[I found a reference to optimizing SWC files with Flex Optimizer and I figured I would run some tests through SWF files and see what effects it had in it. To my surprise the Optimizer tool did optimize the SWF files but just by a few bytes: Test 1: ..._concept1_v1_alt.swf (56569 bytes) ..._concept1_v1_alt_optimized.swf (56456 bytes) [...]]]></description>
			<content:encoded><![CDATA[<p>I found a reference to optimizing SWC files with Flex Optimizer and I figured I would run some tests through SWF files and see what effects it had in it.</p>
<p>To my surprise the Optimizer tool did optimize the SWF files but just by a few bytes:</p>
<p>Test 1:<br />
..._concept1_v1_alt.swf (56569 bytes)<br />
..._concept1_v1_alt_optimized.swf (56456 bytes)</p>
<p>Test 2:<br />
...600_Flash_v1.swf (38164 bytes)<br />
...600_Flash_v1_optimized.swf (38127 bytes)</p>
<p>I also ran a test against a custom SWF file inside a SWC file and this is the result:</p>
<p>...DropDown/library.swf (14810 bytes)<br />
...DropDown/library_optimized.swf (11723 bytes)</p>
<p>So the SWC files are bloated with extra information no needed and can be compressed quite a bit but SWF file no love. And it does make sense since the SWF files that I was testing contain a lot of graphics but I still gave it a go.</p>
<p><a href="http://livedocs.adobe.com/flex/3/html/help.html?content=rsl_07.html" target="_blank">Here you can ind more information about Optimizing RSL SWF Files.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/12/01/optimizing-swf-files-with-flex-optimizer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PureMVC Framework from The Flex Show podcast</title>
		<link>http://www.helmutgranda.com/2009/09/30/puremvc-framework-from-the-flex-show-podcast/</link>
		<comments>http://www.helmutgranda.com/2009/09/30/puremvc-framework-from-the-flex-show-podcast/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 15:56:24 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[PureMVC]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/2009/09/30/puremvc-framework-from-the-flex-show-podcast/</guid>
		<description><![CDATA[These are notes that I took while listening to the podcast, by no means the information should be taken as final. Feel free to listen to the podcast and let me know if you notice any discrepancies from what it was said on the podcast and what was written here. Notes from PureMVC Framework - [...]]]></description>
			<content:encoded><![CDATA[<p><i>These are notes that I took while listening to the podcast, by no means the information should be taken as final. <br />Feel free to listen to the podcast and let me know if you notice any discrepancies from what it was said on the podcast and what was written here.</i></p>
<h2>Notes from PureMVC Framework - The Flex Show</h2>
<h3>Intro</h3>
<p>Cliff Hall - Architect of the PureMVC project<br />
Cliff stared doing Assembly language for Commodore 64 in 1982 ( one analogy Cliff used was that programming in Assembly is like building a skyscraper out of molecules you are constantly evaluating the number of bytes that the arguments and instructions are taking, you are constantly just looking at things on a microscopic level, and it is awesome because you really make it do what you want it to do, but it is difficult to make really large applications. Higher level languages that are more English like allows to express our thoughts in a much more natural way to us)</p>
<p>Newer OOP languages allows you to use Design Patterns to assemble "teams" to fix issues just as you would assemble teams to fix business issues.</p>
<h3>Problem that needs to be solved</h3>
<p>Flex is a big framework and in some ways it is a toolkit. Tools that you can take and assemble, but the important thing is how you assemble those items together properly.<br />
All different applications people build break down to basic small problems<br />
Once you use PureMVC all you have to worry about is problem domain and concentrate only on this<br />
Assuming I am new to Flex and PureMVC how would you explain it to me?</p>
<h3>Understanding the scope of what the framework is trying to do for you</h3>
<p>PureMVC separates the issues in 3 piles</p>
<p> MODEL : Data<br />
 VIEW : Representation of Data<br />
 CONTROLLER : Bridges the two ( model + view ) and it is where the hefty logic in the application happens (update view and model)</p>
<p>Using MVC allows you to use views components and transfer them to a different system since it is not tied specifically to one application. Similar happens with Model, you can take it and use it in a different environment. </p>
<p>By making this separation you can move your Views to a different area and in a similar way you can move your Models since they do know about the existence of each other.</p>
<p>The Logic is not spread across the whole application but contained in their own area. You can also scale easier.</p>
<h3>The business logic often goes into the controller?</h3>
<p>Into the controller region, usually it is embodied in commands that are executed by the controller.</p>
<p>PureMVC has been ported to different languages. The issue is not if MVC is the wrong solution is the implementation that needs to be studied.</p>
<p>Proxies are objects that represent the Data.</p>
<h3>Expanding on the Mediator Pattern</h3>
<p>Move the data from the Model, for instance the Command<br />
A command start up the application and instantiate the Proxies that will represent the Model and model will insatiate that will wrap around the view components</p>
<p>The application will build itself first and then tells PureMVC to start up. then builds proxies and mediators, Proxies might go and request data right away or when it is required</p>
<p>Say the proxies ask data that is needed to populate the application. Once the information is back into the Proxy, the proxy will send a notification.</p>
<p>In the view component you will use an event (like clicking on a button) and sends an event "add user".</p>
<p>The Mediator will be listening for that event and the will send a notification that might be picked up by a command that will tell a proxy "Go get me a user".</p>
<p>The Mediator when they are registered with the View Component they list all the notifications they are interested in. When the notification comes back from Proxy then it acts upon it, and that is how data gets from the Model to the view without binding.</p>
<p>The components expose an API and knows nothing about the API apparatus at all. events it will emit and properties that can be set. And the Mediator knows properties it can edit and events it can listen to.</p>
<h3>Compare PureMVC to Cairngorm </h3>
<p>The viewHelper and how they are implemented.<br />
You access through the components, you bind items directly and tie up to the system.<br />
Have worked with it and it is good but a lot of people didn't get it, saw some some prototypes ready to be turn into an app scrapped and started from scratch because the people didn't know much about design patterns, Flex or Cairngorm. So it seemed like Cairngorm set a high bar just to get started.</p>
<h3>Other ports</h3>
<p>There was a talk about some ports during the recording of this podcast but by now there has been almost 10 ports.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/09/30/puremvc-framework-from-the-flex-show-podcast/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Disable extra fields in CCK for Drupal</title>
		<link>http://www.helmutgranda.com/2009/05/09/disable-extra-fields-in-cck-for-drupal/</link>
		<comments>http://www.helmutgranda.com/2009/05/09/disable-extra-fields-in-cck-for-drupal/#comments</comments>
		<pubDate>Sat, 09 May 2009 19:32:01 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Drupal]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=351</guid>
		<description><![CDATA[There are times when you want to allow the Super Admin to edit those extra fields but not the editors/contributors of your site so this is one way to do it: PHP: &#60; ?php /** * Change the node form */ function phptemplate_node_form($form) { &#160; // echo &#34;&#60;div style='direction:ltr;'&#62;&#34;; dprint_r ($form); echo ''; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>There are times when you want to allow the Super Admin to edit those extra fields but not the editors/contributors of your site so this is one way to do it:</p>
<div class="syntax_hilite"><strong>PHP:</strong>
<div id="php-1">
<div>
<ol style="">&lt; ?php<br />
/**<br />
* Change the node form<br />
*/<br />
function phptemplate_node_form($form) {<br />
&nbsp; // echo &quot;&lt;div style='direction:ltr;'&gt;&quot;; dprint_r ($form); echo '';<br />
&nbsp;<br />
&nbsp; // Hide 'Log message' text area<br />
&nbsp; $form['log']['#access'] = FALSE;<br />
&nbsp;<br />
&nbsp; // Hide the author collapsable box<br />
&nbsp; $form['author']['#access'] = FALSE;<br />
&nbsp;<br />
&nbsp; // Hide the publishing options collapsable box<br />
&nbsp; $form['options']['#access'] = FALSE;<br />
&nbsp;<br />
&nbsp; // Open the file attachments collapsible block in a full state<br />
&nbsp; $form['attachments']['#collapsed'] = FALSE;<br />
&nbsp;<br />
&nbsp; return drupal_render($form);<br />
}<br />
?&gt;</ol>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/05/09/disable-extra-fields-in-cck-for-drupal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>JQuery and dynamic elements</title>
		<link>http://www.helmutgranda.com/2009/04/16/jquery-and-dynamic-elements/</link>
		<comments>http://www.helmutgranda.com/2009/04/16/jquery-and-dynamic-elements/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 03:46:53 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[JQuery]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=314</guid>
		<description><![CDATA[I have been working with JQuery on a couple of work and personal projects and I really like the library. One of my first challenges was to access elements dynamically and at the same time trigger custom events. This is specially necessary when working with elements where you don't know the source of the data [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working with JQuery on a couple of work and personal projects and I really like the library. One of my first challenges was to access elements dynamically and at the same time trigger custom events. This is specially necessary when working with elements where you don't know the source of the data in detail. </p>
<p>Here is a sample as a reference:</p>
<div class="syntax_hilite"><strong>JavaScript:</strong>
<div id="js-3">
<div>
<ol style="">$(document).ready(function() {<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;var idTotal = 5;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;for ( var i = 1 ; i &lt; idTotal ; i++)<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;var deleteMinutes = $(&quot;#deleteMinutes_&quot;+i);<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;attachEvents ( deleteMinutes ) ;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;var updateMinutes = $(&quot;#updateMinutes_&quot;+i);<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;attachEvents ( updateMinutes ) ;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp; });<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;var globalID;<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function attachEvents ( $item )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$item.bind(&quot;click&quot;, &nbsp; &nbsp;&nbsp; &nbsp;clickHandler );<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$item.bind(&quot;mouseenter&quot;, &nbsp; &nbsp;hoverHandler );<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$item.bind(&quot;mouseleave&quot;, &nbsp; &nbsp;mouseleaveHandler );<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$item.bind(&quot;mousedown&quot;, mousedownHandler );<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$item.bind(&quot;mouseup&quot;, &nbsp; &nbsp;mouseupHandler );&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function clickHandler ( $event )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;var target = $event.target.id;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;var id = target.charAt(target.length-1);<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;globalID = id;<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$('#dialog').dialog('open');<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function hoverHandler ( )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$(this).addClass(&quot;ui-state-hover&quot;);<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function mouseleaveHandler ( )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$(this).removeClass(&quot;ui-state-hover&quot;);<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function mousedownHandler ( )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$(this).addClass(&quot;ui-state-active&quot;);<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function mouseupHandler ( )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$(this).removeClass(&quot;ui-state-active&quot;);<br />
&nbsp; &nbsp;&nbsp; &nbsp;}<br />
&nbsp; &nbsp;&nbsp; &nbsp;<br />
&nbsp; &nbsp;&nbsp; &nbsp;function deleteItemSelected ( )<br />
&nbsp; &nbsp;&nbsp; &nbsp;{<br />
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$(&quot;#minutes_&quot;+globalID).remove();<br />
&nbsp; &nbsp;&nbsp; &nbsp;}</ol>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/04/16/jquery-and-dynamic-elements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Covert mov files to flv with ffmpeg</title>
		<link>http://www.helmutgranda.com/2009/02/05/covert-mov-files-to-flv-with-ffmpeg/</link>
		<comments>http://www.helmutgranda.com/2009/02/05/covert-mov-files-to-flv-with-ffmpeg/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 18:26:23 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[shell]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=301</guid>
		<description><![CDATA[The shell script below will take files from the folder you are running it from and convert all "mov" files to "flv". The script can be updated to use the same file name as flv name. Since this is not for production but only for testing the name for the flv that I am using [...]]]></description>
			<content:encoded><![CDATA[<p>The shell script below will take files from the folder you are running it from and convert all "mov" files to "flv". The script can be updated to use the same file name as flv name. Since this is not for production but only for testing the name for the flv that I am using is flvMovie0.flv, flvMovie1.flv.. and so on.</p>
<p>#!/bin/bash<br />
# Convert all mov files into flv<br />
counter=0<br />
mov=flvMovie<br />
currmov=$mov$counter<br />
ext=.flv<br />
for file in *.mov; do<br />
let counter=counter+1<br />
currmov=$mov$counter$ext<br />
ffmpeg -i $file -ar 22050 -f flv -ab 56 -aspect 4:3 -b 200 -r 12 -s 320x240 -ac 1 $currmov<br />
done</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2009/02/05/covert-mov-files-to-flv-with-ffmpeg/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>TextMate current block folding</title>
		<link>http://www.helmutgranda.com/2008/11/07/textmate-current-block-folding/</link>
		<comments>http://www.helmutgranda.com/2008/11/07/textmate-current-block-folding/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 20:25:42 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=286</guid>
		<description><![CDATA[Having the ability to fold blocks of code in TextMate can be a great time saver. Specially if you are working on a rather large file and you are trying to concentrate only in one area of your code. You can activate block folding by pressing F1 and this is how the content is going [...]]]></description>
			<content:encoded><![CDATA[<p>Having the ability to fold blocks of code in TextMate can be a great time saver. Specially if you are working on a rather large file and you are trying to concentrate only in one area of your code.</p>
<p>You can activate block folding by pressing F1 and this is how the content is going to look like:</p>
<p>Unfolded<br />
<a href="http://www.flickr.com/photos/helmutgranda/3010449569/" title="TextMateUnFold by helmutgranda, on Flickr"><img src="http://farm4.static.flickr.com/3073/3010449569_06928496c0_o.png" width="257" height="110" alt="TextMateUnFold" /></a></p>
<p>Folded:<br />
<a href="http://www.flickr.com/photos/helmutgranda/3011285778/" title="TextMateFold by helmutgranda, on Flickr"><img src="http://farm4.static.flickr.com/3286/3011285778_ecfa626e32_o.png" width="261" height="56" alt="TextMateFold" /></a></p>
<p>One of my desires is to find out how to jump through blocks of code rather than using the arrow keys to navigate through them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2008/11/07/textmate-current-block-folding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mike Chambers asks: Are you still using ActionScript 2? (or 1)?</title>
		<link>http://www.helmutgranda.com/2008/10/26/mike-chambers-asks-are-you-still-using-actionscript-2-or-1/</link>
		<comments>http://www.helmutgranda.com/2008/10/26/mike-chambers-asks-are-you-still-using-actionscript-2-or-1/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 05:49:59 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/?p=284</guid>
		<description><![CDATA[Mike Chambers posted the question on his site: Are you still using ActionScript 2? (or 1)? Many people have placed their 2 cents to answer and I wanted to take a stab at it: Short Answer : AS1 = No, AS2 = Yes. Long Answer: I haven't touched AS1 for years now and I haven't [...]]]></description>
			<content:encoded><![CDATA[<p>Mike Chambers posted the question on his site: <a href="http://www.mikechambers.com/blog/2008/10/24/are-you-still-using-actionscript-2-or-1/">Are you still using ActionScript 2? (or 1)?</a></p>
<p>Many people have placed their 2 cents to answer and I wanted to take a stab at it:</p>
<p>Short Answer : AS1 = No, AS2 = Yes.</p>
<p>Long Answer: I haven't touched AS1 for years now and I haven't had a reason why or at least the company I am working for and my freelance clients haven't requested it. In regards to AS2 I still use it continuously. I would say that AS2 is 20% of my work while the other 80% is AS3. The reason being is because there are clients that they still need to reach broad audiences and we need to compile movies compatible with older players. Granted a lot of people have upgraded their plug in but when your marketing package has to reach the most people possible then you have to do your best to provide the proper services.</p>
<p>Many times when we think of Flash/Actionscript development we think of Website or Application development but one big item that uses flash heavely is banner development, some banners are almost micro sites and the requirements for banner deployment are still very rudimentary. Most sites that serve banner ads still require Flash 6, 7 or 8. Some are taking the leap to Flash 9 but under test/beta environment so if you have a game/micro site that will be loaded into a banner you still have to write your code in AS2.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2008/10/26/mike-chambers-asks-are-you-still-using-actionscript-2-or-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Papervision AS2 reflected bitmap</title>
		<link>http://www.helmutgranda.com/2008/08/12/papervision-as2-reflected-bitmap/</link>
		<comments>http://www.helmutgranda.com/2008/08/12/papervision-as2-reflected-bitmap/#comments</comments>
		<pubDate>Tue, 12 Aug 2008 16:33:53 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/2008/08/12/papervision-as2-reflected-bitmap/</guid>
		<description><![CDATA[I have been working on a paper vision in AS2, as you know the AS2 version was dropped as soon as AS3 was out so many of the PPV2 features were never applied to the first version. Anyways, if you ever wanted to portrait a bitmap on one side reflected directly from the library, this [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working on a paper vision in AS2, as you know the AS2 version was dropped as soon as AS3 was out so many of the PPV2 features were never applied to the first version. Anyways, if you ever wanted to portrait a bitmap on one side reflected directly from the library, this should help you:</p>
<div class="syntax_hilite"><strong>ActionScript:</strong>
<div id="as-5">
<div>
<ol style="">private function simpleSkin (source : BitmapData ) : MaterialObject3D<br />
{</p>
<p>var tbmp = tar.createEmptyMovieClip(&quot;tbmp&quot;, tar.getNextHighestDepth() );<br />
tbmp.attachBitmap(source, tbmp.getNextHighestDepth(), &quot;auto&quot;, true);<br />
var tw : Number = tbmp._width ;<br />
var th : Number = tbmp._height ;<br />
tbmp._x = -100;<br />
tbmp._y = -100;</p>
<p>var myM : Matrix = new Matrix();<br />
myM.a = -1;<br />
myM.tx = tw;</p>
<p>var myBitmapData:BitmapData = new BitmapData(tw, th)<br />
myBitmapData.draw(tbmp, myM);</p>
<p>tbmp.removeMovieClip();</p>
<p>var mat = new MaterialObject3D();<br />
mat.bitmap = myBitmapData;<br />
mat.oneSide = true;<br />
mat.smooth = true;</p>
<p>return mat<br />
}</ol>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2008/08/12/papervision-as2-reflected-bitmap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silverlight creating ZIP files in MAC</title>
		<link>http://www.helmutgranda.com/2008/05/20/silverlight-creating-zip-files-in-mac/</link>
		<comments>http://www.helmutgranda.com/2008/05/20/silverlight-creating-zip-files-in-mac/#comments</comments>
		<pubDate>Tue, 20 May 2008 15:44:46 +0000</pubDate>
		<dc:creator>Helmut Granda</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://www.helmutgranda.com/2008/05/20/silverlight-creating-zip-files-in-mac/</guid>
		<description><![CDATA[If you are creating a Silverlight document in a MAC be aware that if you create a ZIP file from the Finder context menu "Create Archive of..." every time you try to access the files inside the ZIP file with Silverlight it will fail. Why? Not sure but I would assume something to do with [...]]]></description>
			<content:encoded><![CDATA[<p>If you are creating a Silverlight document in a MAC be aware that if you create a ZIP file from the Finder context menu "Create Archive of..." every time you try to access the files inside the ZIP file with Silverlight it will fail. Why? Not sure but I would assume something to do with the way MACs compress files compared of how PCs do. One way to get around this issue is by creating your ZIP files with "DropZip",  you might be able to create ZIP files with a different program that will run fine with Silverlight.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helmutgranda.com/2008/05/20/silverlight-creating-zip-files-in-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
