<?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>Adam J. Balée</title>
	
	<link>http://adambalee.com</link>
	<description>Web Designer &amp; Front-end developer</description>
	<lastBuildDate>Sun, 10 Mar 2013 14:47:54 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/adambalee/HwFX" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="adambalee/hwfx" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Change WordPress Permissions via the Shell Over SSH</title>
		<link>http://adambalee.com/change-wordpress-permissions-via-the-shell-over-ssh/</link>
		<comments>http://adambalee.com/change-wordpress-permissions-via-the-shell-over-ssh/#comments</comments>
		<pubDate>Thu, 05 Jul 2012 20:06:23 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://adambalee.com/?p=718</guid>
		<description><![CDATA[Shell commands for changing WordPress directory and file permissions via your Shell client or Mac Terminal over SSH.]]></description>
				<content:encoded><![CDATA[<p>Login to your SSH server and enter the following commands to change your WordPress directory and file permissions.</p>
<h3>Directory Permissions</h3>
<p>Set premissions on all <i>directories</i> to 755.</p>
<pre><code>find path/to/wordpress/ -type d -print -exec chmod 755 {} \;</code></pre>
<h3>File Permissions</h3>
<p>Set permissions on all <i>files</i> to 644.</p>
<pre><code>find path/to/wordpress/ -type f -print -exec chmod 644 {} \;</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/change-wordpress-permissions-via-the-shell-over-ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving WordPress — Useful SQL Queries &amp; References</title>
		<link>http://adambalee.com/moving-wordpress-useful-sql-queries-references/</link>
		<comments>http://adambalee.com/moving-wordpress-useful-sql-queries-references/#comments</comments>
		<pubDate>Sun, 17 Jun 2012 07:51:57 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://adambalee.com/?p=698</guid>
		<description><![CDATA[The following is my personal collection of useful SQL queries &#038; references for moving WordPress.]]></description>
				<content:encoded><![CDATA[<div class="notice">
Don&#8217;t feel like typing all that SQL? Try this handy <a href="http://adambalee.com/tools/moving-wordpress-sql-generator.php" title="SQL Generator for Moving WordPress" target="_blank">SQL generator for moving WordPress</a>.
</div>
<p>The following is my personal collection of useful SQL queries &#038; references for moving WordPress.</p>
<h3>WordPress Address (URL) &#038; Site Address (URL)</h3>
<p>Use the following SQL query to change the Site URL and Home URL in the wp_options table.</p>
<pre><code>UPDATE wp_options SET option_value = replace(option_value, 'http://www.old-domain.com', 'http://www.new-domain.com') WHERE option_name = 'home' OR option_name = 'siteurl';</code></pre>
<h3>GUID</h3>
<p>Use at your own risk! Please read <a href="http://codex.wordpress.org/Changing_The_Site_URL#Important_GUID_Note">this</a> before executing the following query.</p>
<pre><code>UPDATE wp_posts SET guid = replace(guid, 'http://www.old-domain.com','http://www.new-domain.com');</code></pre>
<h3>wp_posts</h3>
<p>This query will fix all the internal links in the wp_posts table.</p>
<pre><code>UPDATE wp_posts SET post_content = replace(post_content, 'http://www.old-domain.com', 'http://www.new-domain.com');</code></pre>
<h3>References</h3>
<p>These articles in the WordPress Codex are also quite useful:</p>
<ul>
<li><a href="http://codex.wordpress.org/Changing_The_Site_URL">http://codex.wordpress.org/Changing_The_Site_URL</a></li>
<li><a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory</a</li>
<li><a href="http://codex.wordpress.org/Moving_WordPress">http://codex.wordpress.org/Moving_WordPress</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/moving-wordpress-useful-sql-queries-references/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add CSS Page Name Classes to Your WordPress Body Tag</title>
		<link>http://adambalee.com/add-page-name-classes-to-your-wordpress-body-tag/</link>
		<comments>http://adambalee.com/add-page-name-classes-to-your-wordpress-body-tag/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 05:42:40 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[body_class]]></category>
		<category><![CDATA[filter]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=513</guid>
		<description><![CDATA[Super handy WordPress filter that adds your page names as a class to the WordPress body_class function...filter-licious.]]></description>
				<content:encoded><![CDATA[<p>Super handy WordPress filter that adds your page names as a CSS class to the WordPress body_class function. Add the following to functions.php&#8230;.filter-licious.</p>
<pre><code>&lt;?php
/* ===============================================
  Add page name classes to body_class function
=============================================== */
add_filter('body_class','page_class');
function page_class($classes) {
	global $wp_query;
	$page = '';
	$page = $wp_query-&gt;query_vars['pagename'];
	// add 'pagename' to the $classes array
	$classes[] = $page;
	// return the $classes array
	return $classes;
}
?&gt;</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/add-page-name-classes-to-your-wordpress-body-tag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Add Pagination To Your WordPress Blog Without A Plugin</title>
		<link>http://adambalee.com/how-to-add-pagination-to-your-wordpress-blog-without-a-plugin/</link>
		<comments>http://adambalee.com/how-to-add-pagination-to-your-wordpress-blog-without-a-plugin/#comments</comments>
		<pubDate>Sat, 12 Feb 2011 04:48:26 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[pagination]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=454</guid>
		<description><![CDATA[The standard WordPress blog navigation is pretty limited. By default we are provided with a couple of links to navigate to &#8216;older posts&#8217; and &#8216;newer posts&#8217;. In order to spice things up a bit we&#8217;re going to add some paginated links. In this tutorial, I&#8217;ll take you through the step by step process of how...]]></description>
				<content:encoded><![CDATA[<p>The standard WordPress blog navigation is pretty limited. By default we are provided with a couple of links to navigate to &#8216;older posts&#8217; and &#8216;newer posts&#8217;. In order to spice things up a bit we&#8217;re going to add some paginated links. In this tutorial, I&#8217;ll take you through the step by step process of how to add numbered pagination to your blog, using the WordPress default theme, TwentyTen. After completing this tutorial, you should be able to paginate any WordPress theme with ease.</p>
<h3>Step 1: Permalink Settings</h3>
<p>The first thing we need to do is make sure our permalinks are set to anything other than the default settings. Our pagination will not function properly with the default WordPress permalink structure. Resetting our permalink structure is easy. Login to your WordPress administration panel and navigate to settings->permalinks. Below is a screenshot of the permalink structure I prefer to use, but feel free to use any of the preset options available. Make sure you save your changes and we&#8217;re ready to get started paginating our blog.</p>
<p><img src="http://adambalee.com/wp-content/uploads/2011/02/Screen-shot-2011-02-10-at-2.16.57-PM.png" alt="" title="Screen-shot-2011-02-10-at-2.16.57-PM" class="alignnone size-full wp-image-691" /></p>
<h3>Step 2: The Code</h3>
<p>In order to keep our theme folder nice and tidy, we&#8217;re going to create a new folder called &#8216;includes&#8217; inside our TwentyTen theme folder. Inside our &#8216;includes&#8217; folder, we&#8217;re going to create a new file and name it &#8216;pagination.php&#8217;.</p>
<p>The following code was taken directly from the WordPress codex <a href="http://codex.wordpress.org/Function_Reference/paginate_links#Source_File" target="_blank">here</a>. Simply copy and paste the code below into your new &#8216;pagination.php&#8217; file.</p>
<pre><code>&lt;?php 
global $wp_rewrite;			
$wp_query-&gt;query_vars['paged'] &gt; 1 ? $current = $wp_query-&gt;query_vars['paged'] : $current = 1;

$pagination = array(
	'base' =&gt; @add_query_arg('page','%#%'),
	'format' =&gt; '',
	'total' =&gt; $wp_query-&gt;max_num_pages,
	'current' =&gt; $current,
	'show_all' =&gt; false,
	'type' =&gt; 'plain',
	);

if( $wp_rewrite-&gt;using_permalinks() )
	$pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg('s',get_pagenum_link(1) ) ) . 'page/%#%/', 'paged');

if( !empty($wp_query-&gt;query_vars['s']) )
	$pagination['add_args'] = array('s'=&gt;get_query_var('s'));

echo '&lt;div class="pagination"&gt;' . paginate_links($pagination) . '&lt;/div&gt;'; 		
?&gt;</code></pre>
<h3>Step 3: Paginate It!</h3>
<p>Open up &#8216;loop.php&#8217; in your TwentyTen themes folder and locate the following code around line 24.</p>
<pre><code>&lt;?php if ( $wp_query-&gt;max_num_pages &gt; 1 ) : ?&gt;
&lt;div id="nav-above" class="navigation"&gt;
&lt;div class="nav-previous"&gt;&lt;?php next_posts_link( __( '<span class="meta-nav">←</span> Older posts', 'twentyten' ) ); ?&gt;&lt;/div&gt;
&lt;div class="nav-next"&gt;&lt;?php previous_posts_link( __( 'Newer posts <span class="meta-nav">→</span>', 'twentyten' ) ); ?&gt;&lt;/div&gt;
&lt;/div&gt;<!-- #nav-above -->
&lt;?php endif; ?&gt;</code></pre>
<p>Replace it with this.</p>
<pre><code>&lt;?php get_template_part('includes/pagination'); ?&gt;</code></pre>
<p>Find the following code in &#8216;loop.php&#8217; around line 172.</p>
<pre><code>&lt;?php if (  $wp_query-&gt;max_num_pages &gt; 1 ) : ?&gt;
	&lt;div id="nav-below" class="navigation"&gt;
		&lt;div class="nav-previous"&gt;&lt;?php next_posts_link( __( '<span class="meta-nav">←</span> Older posts', 'twentyten' ) ); ?&gt;&lt;/div&gt;
		&lt;div class="nav-next"&gt;&lt;?php previous_posts_link( __( 'Newer posts <span class="meta-nav">→</span>', 'twentyten' ) ); ?&gt;&lt;/div&gt;
	&lt;/div&gt;<!-- #nav-below -->
&lt;?php endif; ?&gt;</code></pre>
<p>Replace it with this.</p>
<pre><code>&lt;?php get_template_part ('includes/pagination'); ?&gt;</code></pre>
<h3>Step 4: CSS</h3>
<p>Here&#8217;s a little basic CSS to make our page numbers look a little more like buttons.</p>
<pre><code>div.pagination {
	margin-bottom: 30px;
}

div.pagination span, div.pagination a {
	font-size: 14px;
	padding: 7px 11px;
	background: #f9f9f9;
	border: 1px solid #ccc;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

div.pagination a {
	color: #888;
	text-decoration: none;
}

div.pagination a:hover {
	color: #333;
	border-color: #c0c0c0;
}</code></pre>
<p><a href='https://baleeinc.freshbooks.com/refer/www' style='background-color: transparent;'><img src='http://www.freshbooks.com/images/banners/freshbooks-728x90.png' width='728' height='90' border='0' alt='FreshBooks' /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/how-to-add-pagination-to-your-wordpress-blog-without-a-plugin/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>How To Display A Random WordPress Post Anywhere On Your Site</title>
		<link>http://adambalee.com/how-to-display-a-random-wordpress-post-anywhere-on-your-site/</link>
		<comments>http://adambalee.com/how-to-display-a-random-wordpress-post-anywhere-on-your-site/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 19:34:38 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[loop]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=429</guid>
		<description><![CDATA[In some cases, you may want to display a random post on your WordPress site. In order to make this happen, we can create a new query using the WP_Query function. WP_Query gives you the ability to create multiple loops on any given page of your site, without conflicting with the existing loop. Use the...]]></description>
				<content:encoded><![CDATA[<p>In some cases, you may want to display a random post on your WordPress site. In order to make this happen, we can create a new query using the WP_Query function. WP_Query gives you the ability to create multiple loops on any given page of your site, without conflicting with the existing loop.</p>
<p>Use the following code on any page and/or sidebar to display a single random post anywhere on your site.</p>
<pre class="prettyprint"><code>&lt;?php 
$my_query = new WP_Query('posts_per_page=1&amp;orderby=rand');
while ($my_query-&gt;have_posts()) : $my_query-&gt;the_post(); 
?&gt;		

&lt;h3&gt;&lt;a href="&lt;?php the_permalink(); ?&gt;"&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;?php the_content(); ?&gt;

&lt;?php endwhile; wp_reset_postdata(); ?&gt;</code></pre>
<p>As always, with WordPress there are multiple solutions to almost every problem. If you have an alternative solution to using WP_Query, please feel free to share.</p>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/how-to-display-a-random-wordpress-post-anywhere-on-your-site/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hide WordPress Update Notice Without A Plugin</title>
		<link>http://adambalee.com/hide-wordpress-update-notice-without-a-plugin/</link>
		<comments>http://adambalee.com/hide-wordpress-update-notice-without-a-plugin/#comments</comments>
		<pubDate>Sat, 11 Dec 2010 10:09:22 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[functions.php]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://adambalee.com/?p=325</guid>
		<description><![CDATA[WordPress does an awesome job of making things as easy as possible for users and developers alike. Every time a new version of WordPress is released, we are provided with a handy reminder in our administration panel and given the option to use the automatic update feature. On more than one occasion I have tried...]]></description>
				<content:encoded><![CDATA[<p>WordPress does an awesome job of making things as easy as possible for users and developers alike. Every time a new version of WordPress is released, we are provided with a handy reminder in our administration panel and given the option to use the automatic update feature. On more than one occasion I have tried using the WordPress automatic update feature with disastrous results. Disastrous might be a bit of an exaggeration, but it has certainly cost me hours of unnecessary work. The point is, that depending on your hosting package, server configuration, and file permissions, the automatic update does not always work.</p>
<p>New versions of WordPress are released so frequently that the update reminder can become a bit of a nuisance lingering at the top of your administration panel. In order to completely hide the update notice, just add the following to functions.php:</p>
<pre><code data-language="php">&lt;?php
function hide_update_notice() {
    remove_action( 'admin_notices', 'update_nag', 3 );
}
add_action( 'admin_notices', 'hide_update_notice', 1 );
?&gt;</code></pre>
<p>Below is the code to prevent everyone but the administrator of the site from seeing the update notice.</p>
<pre><code data-language="php">&lt;?php
function hide_update_notice() {
    global $user_login , $user_email;
    get_currentuserinfo();
    if ($user_login != "admin") {
        remove_action( 'admin_notices', 'update_nag', 3 );
    }
}
add_action( 'admin_notices', 'hide_update_notice', 1 );
?&gt;</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/hide-wordpress-update-notice-without-a-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Quick Look At HTML5 Video</title>
		<link>http://adambalee.com/a-quick-look-at-html5-video/</link>
		<comments>http://adambalee.com/a-quick-look-at-html5-video/#comments</comments>
		<pubDate>Sun, 05 Dec 2010 20:45:21 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://adambalee.com/?p=304</guid>
		<description><![CDATA[This is simply a brief overview of the HTML5 video tag and the first of several articles that I intend to post as I begin learning and experimenting with HTML5. It's been a while since my post, "<a href="http://adambalee.com/why-i-decided-to-abandon-flash">Why I Decided to Abandon Flash and Focus On HTML5, CSS, and JavaScript</a>", and I've been itching for a chance play around with the HTML5 video and audio tags. So, let's get started...]]></description>
				<content:encoded><![CDATA[<p><video controls><br />
    <source src="http://adambalee.com/video/video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'><br />
    <source src="http://adambalee.com/video/video.webm" type='video/webm; codecs="vp8, vorbis"'><br />
    <source src="http://adambalee.com/video/video.ogv" type='video/ogg; codecs="theora, vorbis"'><br />
</video></p>
<p>This is simply a brief overview of the HTML5 video tag and the first of several articles that I intend to post as I begin learning and experimenting with HTML5. It&#8217;s been a while since my post, &#8220;<a href="http://adambalee.com/why-i-decided-to-abandon-flash">Why I Decided to Abandon Flash and Focus On HTML5, CSS, and JavaScript</a>&#8220;, and I&#8217;ve been itching for a chance play around with the HTML5 video and audio tags. So, let&#8217;s get started&#8230;</p>
<p>First, let&#8217;s take a look at the HTML5 video tag:</p>
<pre><code>&lt;video&gt;&lt;/video&gt;</code></pre>
<p>It just couldn&#8217;t be any sweeter! As simple as it is, we still need to add some guts in order to get it to work. First we need to add the playback controls to our video player. This is as simple as adding the word &#8216;controls&#8217; inside our opening video tag. The great thing about HTML5 video is that the browser handles all the functionality and display of the controls behind the scenes. Just be aware that each browser handles the controls a bit differently. For example, a fullscreen button is available directly in the player controls in Safari, whereas in Firefox, the user must right-click to bring up the fullscreen option.</p>
<pre><code>&lt;video controls&gt;&lt;/video&gt;</code></pre>
<p>Next we need to specify the source of the video we would like to display. Currently, HTML5 supports three video types, mp4, webm, and ogg. Since the majority of video on the web is found in the flv format, you will most likely need to convert your flv video to mp4, webm, and ogv. A number of video conversion tools can be found on the web. Personally, I like to use the <a href="http://www.mirovideoconverter.com/">Miro Video Converter</a>. It&#8217;s free, super easy to use, and can convert almost any video to MP4, WebM (vp8), Ogg Theora, or for Android, iPhone, and more.</p>
<p>In order to ensure that our video is accessible in all major browsers, we need to include the source to mp4, webm, and ogg formats. Here is the final code with a custom fallback message that will display if the user&#8217;s browser does not support HTML5 video:</p>
<pre><code>&lt;video controls&gt;
    &lt;source src="http://video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'&gt;
    &lt;source src="http://video.webm" type='video/webm; codecs="vp8, vorbis"'&gt;
    &lt;source src="http://video.ogv" type='video/ogg; codecs="theora, vorbis"'&gt;
&lt;/video&gt;</code></pre>
<p>I have tested the previous code in the latest versions of Firefox, Safari, Chrome and Opera, as well as on the iPhone and iPad. In my next post, I will explore how we can customize our HTML5 video player with a little CSS and javascript.</p>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/a-quick-look-at-html5-video/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://adambalee.com/video/video.ogv" length="11316825" type="video/ogg" />
<enclosure url="http://adambalee.com/video/video.mp4" length="20504153" type="video/mp4" />
<enclosure url="http://adambalee.com/video/video.webm" length="6601255" type="application/wordperfect" />
		</item>
		<item>
		<title>WordCamp Philly – 10/30/2010</title>
		<link>http://adambalee.com/wordcamp-philly-10302010/</link>
		<comments>http://adambalee.com/wordcamp-philly-10302010/#comments</comments>
		<pubDate>Tue, 26 Oct 2010 02:27:20 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[On the Road]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[wordcamp]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=157</guid>
		<description><![CDATA[I will be attending my first WordCamp in Philadelphia on Oct. 30th. Yes, my friends have been telling me I&#8217;m a nerd for years, but I think this makes it official. All kidding aside, I&#8217;m really looking forward to the event. I have invested a lot of time and effort into learning the ins and...]]></description>
				<content:encoded><![CDATA[<p>I will be attending my first WordCamp in Philadelphia on Oct. 30th. Yes, my friends have been telling me I&#8217;m a nerd for years, but I think this makes it official. All kidding aside, I&#8217;m really looking forward to the event. I have invested a lot of time and effort into learning the ins and outs of WordPress and I&#8217;m really excited to meet some fellow WordPress enthusiasts. Hopefully, I will pick up a few new tricks along the way.</p>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/wordcamp-philly-10302010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why I Decided to Abandon Flash and Focus On HTML5, CSS, and JavaScript</title>
		<link>http://adambalee.com/why-i-decided-to-abandon-flash/</link>
		<comments>http://adambalee.com/why-i-decided-to-abandon-flash/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 21:53:27 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[html5]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=134</guid>
		<description><![CDATA[I&#8217;d like to start out with a little disclaimer that the following is written from the prespective of a web designer/front-end developer, and is loosely based on the madness rattling around in my own head on a daily basis. My motivation for writing this article is two-fold. First off, I&#8217;ve been struggling with the decision...]]></description>
				<content:encoded><![CDATA[<p>I&#8217;d like to start out with a little disclaimer that the  following is written from the prespective of a web designer/front-end developer, and is loosely based on the madness rattling around in my own head on a  daily basis. My motivation for writing this article is two-fold. First  off, I&#8217;ve been struggling with the decision to abandon Flash for some  time now. My hope is that by writing this I can convince myself that  it&#8217;s the right decision and finally put Flash behind me once and for  all. Secondly, that my ramblings might help someone else in the same  pickle as me.</p>
<p>It all started for me with Steve Jobs holding up the new iPad for the  first time and seeing that little leggo-like icon we all know so well.  What…no Flash? I was attending the Art Institute of Pittsburgh at the  time and had just finished up a project in which I built my first custom  Flash player. I had fallen in love with the smooth, seamless video,  audio, and animation capabilities of Flash and had really begun to dive  head first into ActionScript 3.0. After working with Flash for only a  short time, it became abundantly clear that this was entire field in and  of itself. It was time to make a decision. Either totally immerse  myself in a potentially dead language or find another direction. With  the unveiling of the iPad, a question came to me that stopped me dead  in my tracks. Why no Flash?</p>
<p>And so, for the time being, I decided to put Flash on the shelf until  I could come to a more informed decision. At first, I was a little put  off by Apple&#8217;s decision not to embrace the Flash player on their new  devices, but Steve Job&#8217;s reputation for being ahead of the curve forced  me take another look. After some obsessive Googling and pouring over the  onslaught of tweets on the subject, I put my decision on the back  burner and started focusing on my bread and butter…PHP and JQuery. I  could always come back to Flash later, right?</p>
<p>Back to the big question, &#8220;Why no Flash?&#8221; With my tendency to not  believe everything I read on the web, I began to come to my own  fanatical conclusions:</p>
<ol>
<li>Apple has become an evil corporation. Evident by it&#8217;s announcement  that they will no longer be attending the annual MacWorld event.</li>
<li>Apple has decided to take on Adobe and monopolize the creative software market.</li>
<li>Apple is unwilling to yield in some sort of corporate power struggle between itself and Adobe.</li>
</ol>
<p>These conclusions are obviously not facts, but I think there is some  validity in all three. Well, maybe with the exception of the &#8220;evil  corporation&#8221; bit. Actually, I think the reality is more to the contrary.  Adobe has complete proprietary control of all of it&#8217;s software.  Whereas, Apple has decided to embrace open-source technology and web  standards. All evidence points to Apple, once again, positioning itself  one step ahead of the competition. The open-source movement has driven  the industry to heights that it never would have been able to achieve  otherwise. In my humble opinion, Apple seems to be playing off of  exactly that. On the other hand, there is a valid argument that Apple is  merely throwing around terms like &#8220;open-source&#8221; and &#8220;web standards&#8221; to  lure in developers, only for them to later find themselves so deeply  invested in Apple&#8217;s platform that they can&#8217;t get out. If you&#8217;ve ever  tried to develop an iPhone app, then you will surely know that you can  develop all you want for free, but when it comes to selling it, you have  to pay the piper (Apple). That doesn&#8217;t really seem all that  &#8220;open-source&#8221; to me (hence the &#8220;evil corporation&#8221; bit).</p>
<p>As for Apple&#8217;s plan to monopolize the creative software market. Well,  I have a sneaking suspicion that this is exactly what they plan to  do…at least on the mac platform. Apple adding &#8220;curves&#8221; to Aperature  seemed like a dead giveaway to me. Whether or not they will actually  succeed is another story. By no means do I intend to give up my Adobe  Creative Suite, but in terms of delivering video and animation on the  web, I think that Flash may have seen it&#8217;s day.</p>
<p>And to address my third fanatical conclusion, concerning some sort of  cooperate power struggle going on between Apple and Adobe. Well, let me  remind you of my disclaimer at the beginning of this article. Whether  or not there is any validity to it at all is beyond me, but you never  know…</p>
<p>Okay, so what&#8217;s the point of all this? That&#8217;s right, I was trying to  decide whether or not to abandon Flash and move onto other things.  Obviously, it&#8217;s been many months since the release of the iPad, and I  hadn&#8217;t really given the whole Flash question a lot of thought until  yesterday. On a late night whim, I decided to play around with the new  HTML5 video tag. All I have to say is, &#8220;Freakin&#8217; awesome!&#8221; I&#8217;m well  aware that HTML5 video is not fully supported by all browser versions.  But it is supported by the LATEST VERSION of ALL browsers, even IE9. It  even works on the iPhone and iPad. Again, all i have to say is,  &#8220;Freakin&#8217; awesome!&#8221; And so, with a little HTML5, CSS, and JavaScript,  who needs Flash anyway? I would much rather play the waiting game with  HTML5 than waste my time learning a dead language.</p>
<p>Here is the closing quote from Steve Jobs&#8217; post, <a title="Steve Jobs - &quot;Thoughts On Flash&quot;" href="http://www.apple.com/hotnews/thoughts-on-flash/">&#8220;Thoughts On Flash&#8221;</a>:</p>
<p>&#8220;New open standards created in the mobile era, such as HTML5, will  win on mobile devices (and PCs too). Perhaps Adobe should focus more on  creating great HTML5 tools for the future, and less on criticizing Apple  for leaving the past behind.&#8221;</p>
<p>I look forward to any feedback, criticisms, whatever…Cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/why-i-decided-to-abandon-flash/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Disable WordPress Theme and Plugin Editors</title>
		<link>http://adambalee.com/how-to-disable-wordpress-theme-and-plugin-editors/</link>
		<comments>http://adambalee.com/how-to-disable-wordpress-theme-and-plugin-editors/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 23:51:10 +0000</pubDate>
		<dc:creator>Adam J. Balée</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[wp-config]]></category>

		<guid isPermaLink="false">http://www.adambalee.com/?p=109</guid>
		<description><![CDATA[Plug a huge security hole in Wordpress by disabling the theme and plugin editors in your Wordpress admin.]]></description>
				<content:encoded><![CDATA[<p>If you are at all concerned about the security of your WordPress powered site, and you should be, disabling the theme and plugin editors in your admin is a must.</p>
<p>Just add the following code to your wp-config.php file:</p>
<pre><code data-language="php">/** Disable theme and plugin editors. */
define('DISALLOW_FILE_EDIT',true);</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://adambalee.com/how-to-disable-wordpress-theme-and-plugin-editors/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
