<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>Julian Castaneda</title>
	
	<link>http://www.smooka.com/blog</link>
	<description>From programming to music!</description>
	<lastBuildDate>Fri, 21 May 2010 14:12:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/smookablog" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="smookablog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">smookablog</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>GetSimple Image Gallery – GSGallery v.2.0 Released</title>
		<link>http://www.smooka.com/blog/2010/05/19/getsimple-image-gallery-gsgallery-v-2-0-released/</link>
		<comments>http://www.smooka.com/blog/2010/05/19/getsimple-image-gallery-gsgallery-v-2-0-released/#comments</comments>
		<pubDate>Wed, 19 May 2010 20:50:50 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Get Simple]]></category>
		<category><![CDATA[getsimple]]></category>
		<category><![CDATA[image gallery]]></category>
		<category><![CDATA[plug-in]]></category>
		<category><![CDATA[squareit]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=344</guid>
		<description><![CDATA[It is my pleasure to let you guys know that I just released version 2.0 of the GetSimple Image Gallery Plugin. This is a stable release that [...]]]></description>
			<content:encoded><![CDATA[<p>It is my pleasure to let you guys know that I just released version 2.0 of the GetSimple Image Gallery Plugin. This is a stable release that includes many fixes and improvements over the <a href="http://www.smooka.com/blog/2010/03/10/getsimple-simple-image-gallery-plugin/">last release</a> (v1.1.0).</p>
<h3>New Major Features:</h3>
<ul>
<li>Create multiple galleries</li>
<li>Ability to put a caption to each image</li>
<li>Added Multi-Language support</li>
</ul>
<p><span id="more-344"></span></p>
<div style="background-color:#FFFC9C; padding:5px; margin:0 auto; width:90%; border:1px solid #F5D133">Download GSGallery v2.0 and my other plugins in the <a href="http://www.smooka.com/blog/getsimple-plugins/">GetSimple Plugins</a> page.</div>
<p><img src="http://www.smooka.com/blog/wp-content/uploads/Screenshot-Square-It-Get-Simple-»-Simple-Image-Gallery-Chromium.png"  alt="Screenshot-Square It Get Simple » Simple Image Gallery" width="596" height="292" class="aligncenter size-full wp-image-348" style="padding:8px; border:1px solid grey" /></p>
<p>Also you will find this version to be better integrated into GetSimple, by using another plugin I created called &#8220;Admin Tab Loader&#8221; that is really more intended for GetSimple Plugin developers.</p>
<p>If you want to see what a image gallery created with the plugin click to view the <a href="http://www.squareitsol.com/gs/index.php?id=square-it-gallery-plugin-sample" target="_blank">demo</a>.</p>
<div style="background-color:#FFFC9C; padding:5px; margin:0 auto; width:90%; border:1px solid #F5D133">Download GSGallery v2.0 and my other plugins in the <a href="http://www.smooka.com/blog/getsimple-plugins/">GetSimple Plugins</a> page.</div>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/09oYFsfQVqc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2010/05/19/getsimple-image-gallery-gsgallery-v-2-0-released/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Useful CSS3 Resources</title>
		<link>http://www.smooka.com/blog/2010/05/19/useful-css3-resources/</link>
		<comments>http://www.smooka.com/blog/2010/05/19/useful-css3-resources/#comments</comments>
		<pubDate>Wed, 19 May 2010 13:40:28 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Resources]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[border-radius]]></category>
		<category><![CDATA[box-shadow]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=326</guid>
		<description><![CDATA[<img class="alignleft size-medium wp-image-322" title="CSS Border Radius " src="http://www.smooka.com/blog/wp-content/uploads/Screenshot-CSS-Border-Radius-Chromium-300x213.png" alt="" width="300" height="213" />
I've been trying a couple of CSS3 features at work and on a couple of personal projects. Upon doing my usual search routine to find resources and information on google, I've stumble upon a couple of good pages that can help you try and learn features like: box-shadow, border-radius, and gradients.

<h3><a title="CSS border radius generator for lazy people." href="http://border-radius.com/" target="_blank">CSS border radius generator for lazy people</a></h3>
<span style="font-weight: normal; font-size: 13px;">This simple site gives you a quick an easy way to generate the CSS code for the awesome border-radius property.
</span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-322" title="CSS Border Radius " src="http://www.smooka.com/blog/wp-content/uploads/Screenshot-CSS-Border-Radius-Chromium-300x213.png" alt="" width="300" height="213" />I&#8217;ve been trying a couple of CSS3 features at work and on a couple of personal projects. Upon doing my usual search routine to find resources and information on google, I&#8217;ve stumble upon a couple of good pages that can help you try and learn features like: box-shadow, border-radius, and gradients.</p>
<h3><a title="CSS border radius generator for lazy people." href="http://border-radius.com/" target="_blank">CSS border radius generator for lazy people</a></h3>
<p><span style="font-weight: normal; font-size: 13px;">This simple site gives you a quick an easy way to generate the CSS code for the awesome border-radius property.<br />
</span><br />
<span id="more-326"></span></p>
<h3><a href="http://www.westciv.com/tools/index.html" target="_blank">CSS3 Sandbox</a></h3>
<p>Here you would find a bunch of cool tools to try out. They have <a href="http://westciv.com/xray" target="_blank">XRAY</a> and MRI that are aimed more to the developer that wants to debug and  get quick information related to the page elements. But, If what you are looking is for CSS3 code generators, then explore the CSS3 Sandbox. It features code generators for <a title="CSS Gradients" href="http://westciv.com/tools/gradients" target="_blank">Gradients</a>, <a title="CSS Box Shadows" href="http://westciv.com/tools/shadows" target="_blank">Shadows</a>, <a href="http://westciv.com/tools/transforms/index.html" target="_blank">CSS transform</a>, <a href="http://westciv.com/tools/textStroke/index.html" target="_blank">CSS text stroke</a>.</p>
<p>Last but not least, you should check out <a href="http://www.css3.info/" target="_blank">CSS3.Info</a>. They have a lot of good resources and information on everything related to CSS3.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/xpHYuEkngDo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2010/05/19/useful-css3-resources/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>GetSimple Plugins: Simple Image Gallery</title>
		<link>http://www.smooka.com/blog/2010/03/10/getsimple-simple-image-gallery-plugin/</link>
		<comments>http://www.smooka.com/blog/2010/03/10/getsimple-simple-image-gallery-plugin/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 20:25:35 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Get Simple]]></category>
		<category><![CDATA[getsimple]]></category>
		<category><![CDATA[plug-in]]></category>
		<category><![CDATA[squareit]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=297</guid>
		<description><![CDATA[I think I&#8217;ve become addicted to GetSimple CMS. In 5 days I have fully developed 2 plugins (check out -> TweetMeme reTweet Button plugin) and started development [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.smooka.com/blog/wp-content/uploads/gsplug.gif" alt="" title="Get Simple Plugins" width="245" height="81" class="alignleft size-full wp-image-313" />I think I&#8217;ve become addicted to <a href="http://www.get-simple.info" title="Get Simple CMS">GetSimple CMS</a>. In 5 days I have fully developed 2 plugins (check out -> <a href="http://www.smooka.com/blog/2010/03/05/getsimple-tweetmeme-retweet-button-plugin/" title="TweetMeme reTweet Button plugin">TweetMeme reTweet Button plugin</a>) and started development in another. If you are a free-lance developer doing small websites for your clients, or you are just a regular guy trying to set up your small site. I recommend you check GetSimple. It&#8217;s easy to install, since it does NOT need a database. It pretty much works right out the box.<span id="more-297"></span></p>
<p>Enough rambling!</p>
<p><strong>Simple Image Gallery</strong>, is a new plug-in created to include a much needed functionality to Get Simple CMS. It uses the build in file manager to manipulate and upload new images to the server, then, just go to the plugins tab and click on the <em>Simple Image Gallery</em> link. The only thing you need to do here, is select the images you want to display in your image gallery. Once you have selected all the images you want to display in your page. Go to the <em>pages manager</em> and select the page you want to include the gallery. Once in the page editor, open the <em>page options</em> and select &#8220;Enable Image Gallery&#8221; and save the page and you are done!</p>
<p><img src="http://www.smooka.com/blog/wp-content/uploads/imagegal.gif" alt="" title="Square IT&#039;s Simple Image Gallery" width="600" height="175" class="aligncenter size-full wp-image-304" /></p>
<p>Installation is pretty simple. Just download the plugin, unzip it, upload the unzipped content to the plugins directory. </p>
<div style="background-color:#FFFC9C; padding:5px; margin:0 auto; width:90%; border:1px solid #F5D133">New version!! Download GSGallery v2.0 and my other plugins in the <a href="http://www.smooka.com/blog/getsimple-plugins/">GetSimple Plugins</a> page.</div>
<p><strong>Download:</strong> <a href="http://www.smooka.com/blog/wp-content/plugins/download-monitor/download.php?id=3" title="Downloaded 636 times">Simple Image Gallery Plugin</a> - v1.1.0</p>
<p>As always, if you have suggestions, concerns, you find bugs or just want to comment on how great the plugin is. Feel free to do so.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/ZetcBVC19e0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2010/03/10/getsimple-simple-image-gallery-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>GetSimple Plugins: TweetMeme reTweet Button</title>
		<link>http://www.smooka.com/blog/2010/03/05/getsimple-tweetmeme-retweet-button-plugin/</link>
		<comments>http://www.smooka.com/blog/2010/03/05/getsimple-tweetmeme-retweet-button-plugin/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 03:59:01 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Get Simple]]></category>
		<category><![CDATA[getsimple]]></category>
		<category><![CDATA[plug-in]]></category>
		<category><![CDATA[tweetmeme]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=276</guid>
		<description><![CDATA[This is my first attempt at creating plugins for Get Simple CMS, an awesome CMS system I&#8217;ve been playing around lately. So, I recommend you guys check [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/276.gif&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p><img alt="Get Simple CMS" src="http://get-simple.info/theme/GS20_theme/images/logo.png" class="alignleft" width="225" height="32" />This is my first attempt at creating plugins for <a href="http://www.get-simple.info">Get Simple CMS</a>, an awesome CMS system I&#8217;ve been playing around lately. So, I recommend you guys check it out, if you are looking for a &#8220;Simple&#8221; content management system for your next project.</p>
<p>This plugin allows you to easily add TweetMeme&#8217;s reTweet Button to the content pages in GetSimple. It also includes a settings panel in the settings section of the administration area when you can customize the plugin. <span id="more-276"></span></p>
<p>Some of the available settings are:</p>
<blockquote><ul>
<li>Change the URL shortener</li>
<li>Change the size of the button (compact/expanded)</li>
<li>Change the @username who will be reTweeting the post</li>
<li>Disable the button for specific pages</li>
</ul>
</blockquote>
<p><strong>Download:</strong> <a href="http://www.smooka.com/blog/wp-content/plugins/download-monitor/download.php?id=2" title="Downloaded 161 times">TweetMeme reTweet GetSimple Plugin</a> - v1.0</p>
<p>Feel free to give feedback and let me know if you encounter any problems.</p>
<p><img src="http://www.smooka.com/blog/wp-content/uploads/retweetbtn.gif" alt="" title="GetSimple TweetMeme Retweet Button Plugin" width="542" height="200" class="aligncenter size-full wp-image-283" /></p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/vzRpqdjbPbE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2010/03/05/getsimple-tweetmeme-retweet-button-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Working with Google Charts and Visualization API</title>
		<link>http://www.smooka.com/blog/2009/11/09/working-with-google-charts-and-visualization-api/</link>
		<comments>http://www.smooka.com/blog/2009/11/09/working-with-google-charts-and-visualization-api/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 11:00:58 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Frameworks and API's]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[charts]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=232</guid>
		<description><![CDATA[This week I had the chance to play around with Google&#8217;s charts API, and let me tell you that I&#8217;m loving it. In the past couple of [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/232.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p><img alt="Red line chart with pale gray background" src="http://chart.apis.google.com/chart?cht=lc&amp;chd=s:pqokeYONOMEBAKPOQVTXZdecaZcglprqxuux393ztpoonkeggjp&amp;chco=FF0000&amp;chls=4.0,3.0,0.0&amp;chs=200x125&amp;chxt=x,y&amp;chxl=0:|Jun|July|Aug|1:||20|30|40|50&amp;chf=bg,s,EFEFEF" align="left"/>This week I had the chance to play around with Google&#8217;s charts API, and let me tell you that I&#8217;m loving it. In the past couple of years I&#8217;ve had to integrate charts into the different projects. I have used everything from Fusion Charts, to PHP/SWF Charts, and DOJO&#8217;s charting engine. But, since I learned that Google provided developers with an API to create charts on the fly, I wanted to give it a try. <span id="more-232"></span></p>
<p><b>To create static bart chart is as simple as:</b></p>
<pre class="brush: xml; light: true;">
&lt;img src=&quot;http://chart.apis.google.com/chart?
cht=bvs
&amp;chs=200x125
&amp;chd=t:10,50,60,80,40|50,60,100,40,20
&amp;chco=4d89f9,c6d9fd
&amp;chbh=20&amp;chds=0,160&quot;/&gt;
</pre>
<p><b>Let me break out the parameters for you into:</b><img src="http://chart.apis.google.com/chart?cht=bvs&#038;chs=200x125&#038;chd=t:10,50,60,80,40|50,60,100,40,20&#038;chco=4d89f9,c6d9fd&#038;chbh=20&#038;chds=0,160" align="right"/><br />
// this is the chart type<br />
<code>cht=bvs </code><br />
//this is the bar colors<br />
<code>chco=4D89F9,C6D9FD</code><br />
//this is the chart values<br />
<code>chd=t:10,50,60,80,40|50,60,100,40,20</code><br />
//chart dimensions<br />
<code>chds=0,160</code></p>
<p>In  the <a href="http://code.google.com/apis/chart/types.html" rel="nofollow" target="_blank">Google Charts API</a> website you can find more info regarding this simple but useful chart api. But, that&#8217;s not all. They also have the <a href="http://code.google.com/apis/visualization/" rel="nofollow" target="_blank">Google Visualization API</a> where they actually give you more advanced and dynamic set of visualization tools. They pretty much opened their entire library of data visualization helpers to allow developers like yourself create user interfaces that contain elements that some of your users will be used to seeing, since graphs, charts and other elements you will find in this API is already being implemented in google products.</p>
<p>I encourage you to check both, the more simple and straight forward <a href="http://code.google.com/apis/chart/types.html" rel="nofollow" target="_blank">Charts API</a>, or the more advanced and dynamic <a href="http://code.google.com/apis/visualization/" rel="nofollow" target="_blank">Visualtization API</a>. </p>
<p>Feel free to let me and the readers know on the exiting ways you are utilizing those API&#8217;s</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/7ABq0SACDCk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/11/09/working-with-google-charts-and-visualization-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Zend Studio on Ubuntu 64-bit</title>
		<link>http://www.smooka.com/blog/2009/11/02/installing-zend-studio-on-ubuntu-64-bit/</link>
		<comments>http://www.smooka.com/blog/2009/11/02/installing-zend-studio-on-ubuntu-64-bit/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 19:38:11 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Solutions]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Zend]]></category>
		<category><![CDATA[Zend Studio]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=224</guid>
		<description><![CDATA[Today I tried to install Zend Studio 7.0 on the latest 64-bit version of Ubuntu (9.10). Initially, it would just throw an error. (exec: 2481: /tmp/install.dir.2855/Linux/resource/jre/bin/java: not [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/224.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>Today I tried to install Zend Studio 7.0 on the latest  64-bit version of Ubuntu (9.10). Initially, it would just throw an error. (<em>exec: 2481: /tmp/install.dir.2855/Linux/resource/jre/bin/java: not found</em>). Since, the error was related to the installer not being able to find the java JRE that came bundled with the installer, I decided to install with the system&#8217;s JRE using:</p>
<p><code>./ZendStudio7_0_0.bin LAX_VM /usr/bin/java</code></p>
<p>That seemed to do the trick, but, once the installer had finished. Trying to open Zend Studio would give me an error <em>(Failed to execute child process &#8220;/usr/local/Zend/Zend Studio-7.0.0/ZendStudio&#8221; (No such file or directory)</em>). At this point I was about to give up, until I did a little bit of research and found that the problem was more simple that I imagined.<span id="more-224"></span></p>
<p>Just run the following command in your terminal window:</p>
<p><code>sudo aptitude install libc6-i386 ia32-libs</code></p>
<p>ia32 is a package that contains runtime libraries for the ia32/i386 architecture, configured for use on systems running a 64-bit kernel. This will allow to install and run Zend Studio, but It will enable compatibility with any other application designed for 32-bit processors.</p>
<p>After running the above command, and installing Zend Studio, I ran into my second problem. A bug in eclipse that would not allow me to click on next or finish in certain windows. In my case, was when I was trying to create a new remote connection. To fix this problem I had to do the following steps:</p>
<ul>
<li>1). Open terminal and go to Zend Studio Directory.</li>
<li>2). Create a new file called ZendStudio.sh and open it.<br />
<code>vi ZendStudio.sh</code></li>
<li>3). Paste the following code, save and then close it:<br />
<code>#!/bin/sh<br />
CURDIR=`dirname $0`<br />
export GDK_NATIVE_WINDOWS=1<br />
$CURDIR/ZendStudio</code></li>
<li>4). Change the permissions of the file for execution<br />
<code>chmod +w ZendStudio.sh</code></li>
<li>5). Go to your application launcher, and right click and select properties.<br />
Once in the properties dialog, modify the command field.</p>
<p>Change the path from:</p>
<p><code>"/home/{USER}/Zend/ZendStudio-7.0.0/ZendStudio"</code></p>
<p>to</p>
<p><code>"/home/{USER}/Zend/ZendStudio-7.0.0/ZendStudio.sh"</code></p>
<p>So basically you are adding the .sh extension.</li>
<li>6). Close the window and open Zend Studio, everything should be working fine now.</li>
</ul>
<p>I hope this information helps you if you happen to run with the same problem I did. Let me know if you have a different solution.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/5Ci4qLRGvuE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/11/02/installing-zend-studio-on-ubuntu-64-bit/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Best Practices – Displaying Application Messages and Alerts</title>
		<link>http://www.smooka.com/blog/2009/10/15/best-practices-displaying-application-messages-and-alerts/</link>
		<comments>http://www.smooka.com/blog/2009/10/15/best-practices-displaying-application-messages-and-alerts/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 13:00:37 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[alerts]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[jAlert]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[messages]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=191</guid>
		<description><![CDATA[On my last post I wrote on how to debug and log error messages using Zend Framework and Firebug. Today I wanted to write on how to [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/191.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p><img class="alignleft size-full wp-image-200" title="traffic-light" src="http://www.smooka.com/blog/wp-content/uploads/traffic-light.jpg" alt="traffic-light" width="125" height="125" />On my last post I wrote on <a href="http://www.smooka.com/blog/2009/08/21/zend-framework-firebug-log-debug/">how to debug and log error messages using Zend Framework and Firebug</a>. Today I wanted to write on how to properly display messages and alerts to users.</p>
<p>There are different type of messages you can display to a user in a web application. From the typical validation messages, to a dreadful fatal error in your app.  Here are some rules I tend to follow when alerting the users that they must take an action without causing confusion:</p>
<ul>
<li>Use the same massaging system to display all messages</li>
<li>Stick to 3 different types: warning (<span style="color: #ffcc00;">yellow</span>),  success (<span style="color: #008000;">green</span>), and error (<span style="color: #ff0000;">red</span>)</li>
<li>On system error, do not display the system error to the user</li>
<li>Display informative messages when interface can be confusing</li>
</ul>
<p><span id="more-191"></span></p>
<p>Users tend to adapt to applications, but if you are not consistent with your user interface, users will have a more difficult time associating things. That&#8217;s why I suggest you stick to one messaging system (format). This will create a balance in the application and users will be less prone to confusion.</p>
<p>Associating color to different types of actions or messages has been used for decades and not just on the web. The clearest example is traffic lights were you see the common <span style="color: #ff0000;">red</span>, <span style="color: #f8cc06;">yellow</span> and <span style="color: #008000;">green</span>.<br />
So, why re-invent the wheel and introduce new types of messages with weird color associations. Stick to at least these 3 basic colors, and use them accordingly. For example, if you have a fatal error or you want the user to stop the current action use <span style="color: #ff0000;">red</span>. To warn or inform the user then use <span style="color: #ffcc00;">yellow</span>, and last but not least use <span style="color: #008000;">green</span> for success messages.</p>
<p>On system error, do not display the system error to the user. This rule should be obvious, but for some reason there are still developers that like to show errors or exceptions that the application throws. Always display a user friendly message. Something along the lines of &#8220;Sorry, an unexpected error occurred. Please try again, and if the problem persists please let us know&#8221;. Remember to log the error, so you can troubleshoot the problem at a later time if necessary.</p>
<p style="text-align: center;"><img class="size-full wp-image-197 aligncenter" title="FreshBooks" src="http://www.smooka.com/blog/wp-content/uploads/fresh2.JPG" alt="FreshBooks" width="530" height="240" /></p>
<p>My last rule is about guiding the users on how to use your application. When I&#8217;m creating a new application, I always have some idea on how the user should use a certain feature within the app. This does not  mean they will use it how you thought. So why not train them while the use the application. My suggestion is to display messages that will be helpful, especially in places were the application can be confusing, or you want them to follow some sort of path. Never assume the user will be smart enough to figure out how to use your application!</p>
<p>That being said, I developed <a href="http://www.smooka.com/blog/2009/02/22/jalert-jquery-alert-box-plugin/" target="_self">jAlert, a plug-in for jQuery</a> that will aid you in displaying messages accordingly to the rules I discussed. Feel free to to use it on any of your projects.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/2BpTHDZXxMw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/10/15/best-practices-displaying-application-messages-and-alerts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zend Framework and Firebug – Log and Debug your Projects</title>
		<link>http://www.smooka.com/blog/2009/08/21/zend-framework-firebug-log-debug/</link>
		<comments>http://www.smooka.com/blog/2009/08/21/zend-framework-firebug-log-debug/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 12:53:57 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Frameworks and API's]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[wildfire]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=162</guid>
		<description><![CDATA[When developing an application there are some important factors that you have to pay close attention to avoid problems in the future. I think one of the [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/162.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p><img src="http://www.smooka.com/blog/wp-content/uploads/firebug.jpg" alt="firebug" title="firebug" width="162" height="162" class="alignleft size-full wp-image-167" />When developing an application there are some important factors that you have to pay close attention to avoid problems in the future. I think one of the most important is logging information on how your application is working and when it fails.</p>
<p>Must of us like to log only big exceptions and fatal errors, but the truth is, that when you are in the development process it&#8217;s very important to keep track of not just errors, but important information of when something gets executed. As a web developer one of the most important tools to have is <a href="http://getfirebug.com/">FireBug</a>. If you didn&#8217;t know, FireBug has an API that you can use to send console messages for logging purposes, when debugging JavaScript. But, did you know you can use FireBug to debug your php applications?<span id="more-162"></span></p>
<p>Through <a href="http://www.wildfirehq.org/">Wildfire</a>, a project that was created to help developers have a standard way for sending messages between different programming languages and scripts. The <a href="http://framework.zend.com/">Zend Framework</a> is now able to communicate to the Firebug console in order to display logging messages injected by PHP.</p>
<p>Using this component is pretty straight forward if you are using Zend_Controller_Front (MVC) with zend Framework.</p>
<p>Place this in your bootstrap file before dispatching your front controller</p>
<pre class="brush: php;">
$writer = new Zend_Log_Writer_Firebug();
$logger = new Zend_Log($writer);
</pre>
<p>Then whenever you want to log something to Firebug just use it in your model, view, or controller like this.</p>
<pre class="brush: php;">
$logger-&gt;log('This is an INFORMATIONAL log message!', Zend_Log::INFO);
$logger-&gt;log('This is a WARNING log message!', Zend_Log::WARN);
$logger-&gt;log('This is an ERROR log message!', Zend_Log::ERROR);
</pre>
<p>If you notice in the example above, you can specify the type of message you want to log (INFO, WARN, etc..). This is helpful when you want to clearly identify what type of message you are viewing since it will apply a special formatting and in some instances provide more information.</p>
<p>If you want to use the <a href="http://framework.zend.com/manual/en/zend.log.writers.html#zend.log.writers.firebug">Zend_Log_Writer_Firebug </a>as a stand alone here is the sample code you can use:</p>
<pre class="brush: php;">
//Instantiate the Firebug Writer
$writer = new Zend_Log_Writer_Firebug();
$logger = new Zend_Log($writer);

//start the wildfire component
$request = new Zend_Controller_Request_Http();
$response = new Zend_Controller_Response_Http();
$channel = Zend_Wildfire_Channel_HttpHeaders::getInstance();
$channel-&gt;setRequest($request);
$channel-&gt;setResponse($response);

// Start output buffering
ob_start();

// Now you can make calls to the logger

$logger-&gt;log('This is a log message!', Zend_Log::INFO);

// Flush log data to browser
$channel-&gt;flush();
$response-&gt;sendHeaders();
</pre>
<p>If you don&#8217;t use ZendFramework there is another alternative to php developers. FirePhp, will also enable you to send log messages to Firebug by using php method calls. Be sure to check <a href="http://www.firephp.org/">FirePhp website</a> to get more information.</p>
<p>So remember that this is just one easy and great way to debug your projects, there are many other tools and methods you can incorporate into your projects. If you want to share other ways or simply just want to ask a question regarding this post, feel free to leave a comment.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/OJq1qx1zxFc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/08/21/zend-framework-firebug-log-debug/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Facebook iPhone App 3.0</title>
		<link>http://www.smooka.com/blog/2009/08/18/facebook-iphone-app-3-0/</link>
		<comments>http://www.smooka.com/blog/2009/08/18/facebook-iphone-app-3-0/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 20:32:27 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Facebook]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=146</guid>
		<description><![CDATA[According to Joe Hewitt, developer of the facebook app. Version 3.0 of the facebook application has already been submitted to apple, and it&#8217;s waiting for approval. Here [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/146.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>According to <a rel="nofollow" href="http://twitter.com/joehewitt">Joe Hewitt</a>, developer of the facebook app. Version 3.0 of the facebook application has already been submitted to apple, and it&#8217;s waiting for approval.<br />
<span id="more-146"></span><br />
<img class="alignleft size-medium wp-image-150" title="facebook 3.0" src="http://www.smooka.com/blog/wp-content/uploads/	6015_119271043379_6628568379_2445795_651735_n.jpg" alt="facebook 3.0" width="208" height="300" /></p>
<p><strong>Here is what&#8217;s new on the version of the app will contain:</strong></p>
<ul>
<li>New and improved Home screen that allows you to create shortcuts to your favorite friends and Pages</li>
<li>Events: the new events screen will allow you to see your upcoming Events and RSVP</li>
<li>Pages: support for pages was added so you can easily see and become fan of Pages and if you are a Page admin you can now post updates and photos to your pages.</li>
<li>Birthdays: see your friends&#8217; b-days.</li>
<li>Notes: now you can write Notes and read your friends&#8217; Notes</li>
<li>Complete photo management (create albums, delete albums, delete photos, delete photo tags, Upload photos to any album)</li>
<li>Upload videos from an iPhone 3GS</li>
<li>Change your Profile Picture</li>
<li>Zoom into photos</li>
<li>Like functionality was added so you can like posts and photos</li>
<li>See the same News Feed as the Facebook website</li>
<li>Visit links in a built-in web browser</li>
<li>See all of your friends&#8217; friends and Pages</li>
<li>See mutual friends</li>
<li>Easily search for people and Pages</li>
<li>Make friend requests</li>
<li>Quickly call or text your friends</li>
<li>Friends sorted by first or last name according to your settings</li>
<li>Chat friends sorted alphabeticaly</li>
</ul>
<p>There are a few missing functionality that we have been waiting for. But Joe Hewitt already mentioned in his twitter account that he already started development of version 3.1 of the facebook app and it will include &#8220;Push Notifications&#8221; and &#8220;Landscape Mode&#8221; and I guess he will throw in a few more small features.</p>
<p>Now with version 3.0 of the facebook application Will we ever need to go into the full facebook.com website? I guess that depends on how you use facebook, but, in my opinion I will be visiting the site less.</p>
<p><strong>Update: </strong> According to the developer of the application the update it&#8217;s live on the iPhone App Store. So go grab it and let us know what you think.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/8SGFJwwUzJQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/08/18/facebook-iphone-app-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maintaining PHP session when using CURL.</title>
		<link>http://www.smooka.com/blog/2009/07/24/maintaining-php-session-when-using-curl/</link>
		<comments>http://www.smooka.com/blog/2009/07/24/maintaining-php-session-when-using-curl/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 16:17:11 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[CURL]]></category>
		<category><![CDATA[session]]></category>

		<guid isPermaLink="false">http://www.smooka.com/blog/?p=134</guid>
		<description><![CDATA[Working now on some iGoogle like dashboard for the system I&#8217;m developing. I was trying some stuff out with CURL and was having a hard time to [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.smooka.com/blog/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/blog/wp-content/thumbnails/134.jpg&amp;w=70&amp;h=70&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>Working now on some iGoogle like dashboard for the system I&#8217;m developing.</p>
<p>I was trying some stuff out with CURL and was having a hard time to maintain my current session when making a curl request to another page. I needed to stay authenticated in order to retrieve my widget. </p>
<p>Here is my initial code:</p>
<pre class="brush: php;">
$strCookie = 'PHPSESSID=' . $_COOKIE['PHPSESSID'] . '; path=/';
$ch = curl_init($rssFeedLink);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $ch, CURLOPT_COOKIE, $strCookie );
$response = curl_exec($ch);
curl_close($ch);
</pre>
<p>The problem with that piece of code is that it was generating a new session id instead of sending my current session.</p>
<p>The solution? <span id="more-134"></span> Put session_write_close() before you make the CURL request.</p>
<pre class="brush: php;">
$strCookie = 'PHPSESSID=' . $_COOKIE['PHPSESSID'] . '; path=/';

session_write_close();

$ch = curl_init($rssFeedLink);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $ch, CURLOPT_COOKIE, $strCookie );
$response = curl_exec($ch);
curl_close($ch);
</pre>
<p>What does session_write_close() do? It, ends the current session and store session data. Apparently, PHP does not like when multiple scripts play around with the session, so, it locks it. Putting session_write_close makes sure that your current session is stored so you can retrieve it and use it. </p>
<p>This little issue had my head spinning for a few hours, so, I hope this article helps you.</p>
<img src="http://feeds.feedburner.com/~r/smookablog/~4/nqyBpHIsvCY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.smooka.com/blog/2009/07/24/maintaining-php-session-when-using-curl/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>
