<?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>David Bisset</title>
	<atom:link href="http://www.davidbisset.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.davidbisset.com</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Mon, 07 May 2012 17:12:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>BuddyPress Plugin – Community Activate v0.2.0</title>
		<link>http://www.davidbisset.com/2011/06/12/buddypress-plugin-%e2%80%93-community-activate-v0-2-0/</link>
		<comments>http://www.davidbisset.com/2011/06/12/buddypress-plugin-%e2%80%93-community-activate-v0-2-0/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 03:05:12 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[BuddyPress Plugins]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=186</guid>
		<description><![CDATA[Had some time this weekend to make some updates to my plugin. Things are coming along, however remember that this plugin is still a work in progress and not approved for production. Use at your own risk. What&#8217;s different w/ this version? - Bug fix showing an incorrect error message when successfully activating a user [...]]]></description>
			<content:encoded><![CDATA[<p>Had some time this weekend to make some updates to my plugin. Things are coming along, however remember that this plugin is still a work in progress and not approved for production. Use at your own risk.</p>
<p>What&#8217;s different w/ this version? </p>
<p>- Bug fix showing an incorrect error message when successfully activating a user on the waiting list.<br />
- Biggest change is now there&#8217;s a control panel in the backend that allows you to (1) change general settings, including the ability to assign the number of activations allowed per user and (2) recent activations, which is something i plan on turning into something bigger later (right now it just shows last 100 activated people).</p>
<p>I welcome feedback and comments as always (for more of a backstory and what the plugin actually does <a href="http://www.davidbisset.com/2011/05/30/buddypress-plugin-community-activate-v0-1-0/">see my last blog post</a>).</p>
<p>Following the “just launch it” mantra!</p>
<p><a href="/wp-content/uploads/2011/06/bp-community-activate-v0.2.0.zip">Click here to download Community Activate v0.2.0 for BuddyPress</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/06/12/buddypress-plugin-%e2%80%93-community-activate-v0-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testing a new voicefresh plugin</title>
		<link>http://www.davidbisset.com/2011/06/04/testing-a-new-voicefresh-plugin/</link>
		<comments>http://www.davidbisset.com/2011/06/04/testing-a-new-voicefresh-plugin/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 00:10:59 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=182</guid>
		<description><![CDATA[I just got an invite to try this new voice press plugin. I install the plugin am testing the plugin by writing this blog post purely by the sound of my voice, and minor editing to add a link and capitalize the post title. I already see a few mistakes but overall the quality of the [...]]]></description>
			<content:encoded><![CDATA[<p>I just got an invite to try this new voice press plugin. I install the plugin am testing the plugin by writing this blog post purely by the sound of my voice, and minor editing to add a link and capitalize the post title.</p>
<p>I already see a few mistakes but overall the quality of the plug in translating my voice is excellent. 1 thing that I discovered by using this plugin is that I write terrible blog posts with my voice versus writing them by hand.</p>
<p>The url of this plugin to download is: <a href="http://www.voicepress.it">www.voicepress.it</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/06/04/testing-a-new-voicefresh-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BuddyPress Plugin &#8211; Community Activate v0.1.0</title>
		<link>http://www.davidbisset.com/2011/05/30/buddypress-plugin-community-activate-v0-1-0/</link>
		<comments>http://www.davidbisset.com/2011/05/30/buddypress-plugin-community-activate-v0-1-0/#comments</comments>
		<pubDate>Mon, 30 May 2011 12:49:41 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[BuddyPress Plugins]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=174</guid>
		<description><![CDATA[I&#8217;m sharing my work done so far w/ a BuddyPress plugin i built over Memorial Day weekend: BuddyPress Community Activate Inspired by community sites like Forrst (although I think they have changed how this works since their original implantation), this plugin is designed to allow users access to the site only when activated by already [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m sharing my work done so far w/ a BuddyPress plugin i built over Memorial Day weekend: BuddyPress Community Activate</p>
<p>Inspired by community sites like Forrst (although I think they have changed how this works since their original implantation), this plugin is designed to allow users access to the site only when activated by already existing community members. So a typical user goes to register and confirm their account, but has to await &#8216;activation&#8217; by someone already a member. Think of this as turning a site into an &#8216;exclusive community&#8217;. Users who are already members can access a dedicated &#8216;wait list&#8217; page to choose who to let in. Also users are limited as to how many they can activate (currently two, eventually controllable via an admin panel).</p>
<p>Although the basic purpose of the plugin should work (at least it does in my setup), it&#8217;s nowhere near done. Although i&#8217;ve built and modified many WordPress and BuddyPress plugins in the past they have all been exclusively for clients and never released to the pubic, so i&#8217;m VERY self conscious about this particular action. So why i&#8217;m I sharing now?</p>
<p>Simple: Following the &#8220;just launch it&#8221; mantra! This plugin isn&#8217;t meant to be used in production, but I want serious feedback from other BuddyPress plugin developers how to what mistakes I made (I&#8217;m sure I made alot) and how the current code can be improved. Although suggestions on added features are welcome, they aren&#8217;t really what i&#8217;m looking for this time around.</p>
<p>So I welcome your suggestions. Two things: (1) Keep in mind this was tested and confirmed in lastest WordPress 3.2 beta and BuddyPress 1.2.8 although it should work with 3.1.x and BuddyPress 1.2.7. (2) This work is provided AS-IS with no support or guarantees, and exists as a v0.1 solely for the purpose of fun/education.</p>
<p><a href='http://www.davidbisset.com/wp-content/uploads/2011/05/bp-community-activate.zip'>Download bp-community-activate v0.1.0</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/05/30/buddypress-plugin-community-activate-v0-1-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Beginners Workshop Slides</title>
		<link>http://www.davidbisset.com/2011/04/10/wordpress-beginners-workshop-slides/</link>
		<comments>http://www.davidbisset.com/2011/04/10/wordpress-beginners-workshop-slides/#comments</comments>
		<pubDate>Sun, 10 Apr 2011 16:55:48 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=170</guid>
		<description><![CDATA[First of all, I want to thank all of those who came out yesterday (April 9th) to my Refresh Workshop: WordPress For Beginners. Over 35+ were there and thanks for the comments and feedback afterwards. As promised, I&#8217;ve put up the slides I used for that presentation here. It&#8217;s also embedded below. Refresh WordPress Beginner [...]]]></description>
			<content:encoded><![CDATA[<p>First of all, I want to thank all of those who came out yesterday (April 9th) to my Refresh Workshop: WordPress For Beginners. Over 35+ were there and thanks for the comments and feedback afterwards.</p>
<p>As promised, I&#8217;ve put up the slides I used for that presentation <a href="http://www.slideshare.net/dimensionmedia/refresh-wordpress-beginner-workshop">here</a>. It&#8217;s also embedded below.</p>
<div style="width:425px" id="__ss_7578434"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/dimensionmedia/refresh-wordpress-beginner-workshop" title="Refresh WordPress Beginner Workshop">Refresh WordPress Beginner Workshop</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/7578434" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
<p>If you liked the beginner&#8217;s workshop and want something more intermediate (which means basically doing some basic html and php coding for starters for the purpose of REALLY customizing themes and plugins), then let Brian Breslin (<a href="http://www.brianbreslin.com">www.brianbreslin.com</a> or @brianbreslin on twitter).</p>
<p>Thanks again &#8211; here&#8217;s a quick pick of the crowd (some of them at least):</p>
<p><a href="http://instagr.am/p/C_Adv/">http://instagr.am/p/C_Adv/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/04/10/wordpress-beginners-workshop-slides/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Help Me Decide On A WordPress Themed T-Shirt Design</title>
		<link>http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/</link>
		<comments>http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/#comments</comments>
		<pubDate>Sun, 23 Jan 2011 19:22:03 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=147</guid>
		<description><![CDATA[Printing a T-Shirt to wear at an upcoming WordCamp Please let me know which one you think is the best, or come up with something better. Please leave comments or reply to me on twitter. Thanks in advance! UPDATE: Thanks To @andrea_r and others, we have this final design (@judiknight and @masonjames convinced me the [...]]]></description>
			<content:encoded><![CDATA[<p>Printing a T-Shirt to wear at an upcoming WordCamp Please let me know which one you think is the best, or come up with something better. Please leave comments or <a href="http://twitter.com/dimensionmedia">reply to me on twitter</a>. Thanks in advance!</p>
<p>UPDATE: Thanks To @<a href="http://twitter.com/andrea_r">andrea_r</a> and others, we have this final design (@<a href="http://twitter.com/judiknight">judiknight</a> and @<a href="http://twitter.com/masonjames">masonjames</a> convinced me the &#8220;No place like home.php&#8221; will be my second t-shirt). </p>
<p><a href="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-3.52.45-PM.png"><img src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-3.52.45-PM-300x184.png" alt="" title="Screen shot 2011-01-23 at 3.52.45 PM" width="300" height="184" class="alignnone size-medium wp-image-160" /></a></p>

<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-17-09-pm/' title='Screen shot 2011-01-23 at 2.17.09 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.17.09-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.17.09 PM" title="Screen shot 2011-01-23 at 2.17.09 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-14-48-pm/' title='Screen shot 2011-01-23 at 2.14.48 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.14.48-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.14.48 PM" title="Screen shot 2011-01-23 at 2.14.48 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-13-40-pm/' title='Screen shot 2011-01-23 at 2.13.40 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.13.40-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.13.40 PM" title="Screen shot 2011-01-23 at 2.13.40 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-11-34-pm/' title='Screen shot 2011-01-23 at 2.11.34 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.11.34-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.11.34 PM" title="Screen shot 2011-01-23 at 2.11.34 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-08-30-pm/' title='Screen shot 2011-01-23 at 2.08.30 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.08.30-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.08.30 PM" title="Screen shot 2011-01-23 at 2.08.30 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-2-04-32-pm/' title='Screen shot 2011-01-23 at 2.04.32 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-2.04.32-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 2.04.32 PM" title="Screen shot 2011-01-23 at 2.04.32 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-1-59-56-pm/' title='Screen shot 2011-01-23 at 1.59.56 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-1.59.56-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 1.59.56 PM" title="Screen shot 2011-01-23 at 1.59.56 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-1-47-45-pm/' title='Screen shot 2011-01-23 at 1.47.45 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-1.47.45-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 1.47.45 PM" title="Screen shot 2011-01-23 at 1.47.45 PM" /></a>
<a href='http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/screen-shot-2011-01-23-at-3-52-45-pm/' title='Screen shot 2011-01-23 at 3.52.45 PM'><img width="150" height="150" src="http://www.davidbisset.com/wp-content/uploads/2011/01/Screen-shot-2011-01-23-at-3.52.45-PM-150x150.png" class="attachment-thumbnail" alt="Screen shot 2011-01-23 at 3.52.45 PM" title="Screen shot 2011-01-23 at 3.52.45 PM" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/01/23/help-me-decide-on-a-wordpress-themed-t-shirt-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>South Florida Javascript Dec 2010 Meetup Videos</title>
		<link>http://www.davidbisset.com/2011/01/03/south-florida-javascript-dec-2010-meetup-videos/</link>
		<comments>http://www.davidbisset.com/2011/01/03/south-florida-javascript-dec-2010-meetup-videos/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 15:23:38 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=141</guid>
		<description><![CDATA[I have processed (finally) the videos from the Dec 2010 South Florida Javascript Meetup.]]></description>
			<content:encoded><![CDATA[<p>I have processed (finally) the videos from the Dec 2010 South Florida Javascript Meetup.</p>
<p><iframe src="http://player.vimeo.com/video/18296595" width="400" height="300" frameborder="0"></iframe></p>
<h3>SF JS Meetup Dec 2010 #1</h3>
<p>Stephen Gilboy (@morningZ) talks about mobile app development using Javascript and Accelerator, which is a programs that allows you to build iPhone and Android applications from JavaScript.</p>
<p><iframe src="http://player.vimeo.com/video/18299185" width="400" height="300" frameborder="0"></iframe></p>
<h3>SF JS Meetup Dec 2010 #2</h3>
<p>Chris Fullman (@chrisfullman) talks about progressive enhancement.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2011/01/03/south-florida-javascript-dec-2010-meetup-videos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live Notes For Refresh Ruby On Rails Workshop</title>
		<link>http://www.davidbisset.com/2010/11/20/live-notes-for-refresh-ruby-on-rails-workshop/</link>
		<comments>http://www.davidbisset.com/2010/11/20/live-notes-for-refresh-ruby-on-rails-workshop/#comments</comments>
		<pubDate>Sat, 20 Nov 2010 15:53:04 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=125</guid>
		<description><![CDATA[> rails new blogpress creates new directory contains: - Gemfile &#8211; home to GEM dependencies - app &#8211; where your models, views, and controllers - config &#8211; this is where your configurations; routes, etc. - db &#8211; database schema and migrations (SQLLite) - log &#8211; development, test, and production logs - public &#8211; web accessible [...]]]></description>
			<content:encoded><![CDATA[<p>> rails new blogpress</p>
<p>creates new directory contains:</p>
<p>- Gemfile &#8211; home to GEM dependencies<br />
- app &#8211; where your models, views, and controllers<br />
- config &#8211; this is where your configurations; routes, etc.<br />
- db &#8211; database schema and migrations (SQLLite)<br />
- log &#8211; development, test, and production logs<br />
- public &#8211; web accessible directory, image, stylesheets, javascript, etc.<br />
- Vendor &#8211; centralized location for 3rd party code from plugins to gem</p>
<p>> bundle install</p>
<p>bundler is a tool that installs required gems for your application. Bundler is able to determine dependencies and children without instructions from you</p>
<p>database configuration (database.yml)<br />
defaults to sqlite, allows for mysql and postgreSQL</p>
<p>> rake db:create<br />
- reads the datbase.yml file and creates db</p>
<p>rake, WTF?<br />
Rake is a way to run tasks</p>
<p>rake -T = shows all tasks you can do</p>
<p>> rails server</p>
<p>http://127.0.0.1:3000/</p>
<p>> rm public/index.html</p>
<p>We don&#8217;t want this page displaying when visitors come to our blog</p>
<p>> rails generate controller home index</p>
<p>Generate a controller with only an index action to take the pklace of public/index.html</p>
<p>Update config/routes.rb to let the app know that our root should be<br />
REMOVE get &#8220;home/index&#8221;<br />
ADD root :to => &#8220;home#index&#8221;</p>
<p>Any rails file ends in .rb<br />
Any rails view file is .erb</p>
<p>EVERY BLOG HAS POSTS</p>
<p>> rails generate scaffold Post author:string title:string content:text permalink:text</p>
<p>This file does ALL the work for you.<br />
strings have a default length of 256 character<br />
text has a default length of 1024 character (?)<br />
float, decemial also other types</p>
<p>Scaffold creates full CRUD functionality for us, including our model, view, controller, and even our database mirgration</p>
<p>> rake db:migrate<br />
Calls our self.up method to create the posts database table</p>
<p>http://127.0.0.1:3000/posts</p>
<p>Should be seeing &#8220;Listing posts&#8221;</p>
<p>> rails console</p>
<p>You can test pretty much anything right here.</p>
<p>Post.all<br />
Post.all.first<br />
Post.all.first.title<br />
(Use capital &#8216;P&#8217; for the Posts object, not a particular post)</p>
<p>- You can add a .xml to the end to automatically spit out xml (rails by default spits out HTML)</p>
<p>http://127.0.0.1:3000/posts.xml</p>
<p>- In your posts_controller.rb, add this for example to spit out JSON:<br />
format.json { render :json => @posts }</p>
<p>Blog Comments:<br />
> rails generate scaffold Comment post:references email:String content:text</p>
<p>> rake db:migrate</p>
<p>Replace </p>
<p>resources; comments<br />
resources: posts</p>
<p>with</p>
<p>  resources :posts do<br />
	resources :comments<br />
  end</p>
<p>/posts &#8211; /comments<br />
/posts/1 &#8211; /comments/1<br />
/posts/1/edit &#8211; /comments/1/edit</p>
<p>Changes now made urls like this:</p>
<p>/posts/1/comments/<br />
/posts/1/comments/1<br />
/posts/1/comments/1/edit</p>
<p>@post = Post.find(params[:post_id])<br />
@comments = @post.comments</p>
<p>http://pastie.org/1307643</p>
<p>http://pastie.org/1307632</p>
<p>BLOG: TAGS/KEYWORDS<br />
We are going to use a Gem here<br />
Add this to your Gemfile, at the end of your file (in your root):<br />
gem &#8216;acts-as-taggable-on&#8217;</p>
<p>> bundle install</p>
<p>(might have to restart rails console before typing in the below:)<br />
> rails generate acts_as_taggable_on:migration</p>
<p>> rake db:migrate</p>
<p>acts_as_taggable</p>
<p>http://pastie.org/1307777</p>
<p>Don&#8217;t forget to update your show.html.erb to include:</p>
<p>
  <b>Tag:</b><br />
  <%= @post.tags %>
</p>
<p>BLOG: Validation Options</p>
<p>:presence => true<br />
:uniqueness => true<br />
:numbericality => true<br />
:length => { :minimum => 0, maximum => 2000 }<br />
:format => { :with => /.*/ }<br />
:inclusion => { :in => [1,2,3] }<br />
:exclusion => { :in => [1,2,3] }<br />
:acceptance = > true (deals with checkboxes)<br />
:confirmation => true (deals with checkboxes)</p>
<p>post.rb:<br />
validates :author, :presence => true, :length => {:maximum => 30 }<br />
validates :title, :presence => true, :length => {:maximum => 100 }<br />
validates :content, :presence => true</p>
<p>comment.rb:<br />
validates :email, :presence => true<br />
validates :content, :presence => true</p>
<p>Blog: Validation</p>
<p>Basic HTTP authentications prompts users via a browser popup. This authentication lasts until the browser is closed.</p>
<p>http://pastie.org/1307757</p>
<p>Blog: Most Recent Posts</p>
<p>We want to display the top n posts on the main page, of course we&#8217;ll want the n more recent posts</p>
<p>http://pastie.org/1309253</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2010/11/20/live-notes-for-refresh-ruby-on-rails-workshop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Public Proposal For a South Florida Web Developer Conference</title>
		<link>http://www.davidbisset.com/2010/11/04/public-proposal-for-a-south-florida-web-developer-conference/</link>
		<comments>http://www.davidbisset.com/2010/11/04/public-proposal-for-a-south-florida-web-developer-conference/#comments</comments>
		<pubDate>Thu, 04 Nov 2010 14:34:12 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=116</guid>
		<description><![CDATA[Here's my proposal - South Florida needs it's own annual conference deveoted to web design and development.]]></description>
			<content:encoded><![CDATA[<p><strong>Update 12/23:</strong> Great feedback so far. I&#8217;ll be posting a follow-up within the next week.</p>
<h3>A Little History&#8230; (Skip This If You Are In A Hurry)</h3>
<p>For several years, South Florida has had the pleasure of being the host of numerous conferences (including the first official <a href="http://wordcampmia.com/">WordCamp Miami</a> earlier this year at UM). For the past three years, that has included <a href="http://futureofwebapps.com/las-vegas-2011/">&#8220;Future of Web Apps&#8221; (FOWA)</a> hosted by <a href="http://carsonified.com/">Carisonified</a>. However, numerous potential attendees and developers were sadder to hear that in 2011, FOWA would be in Las Vegas. Nothing against FOWA (and I wish them well) or Las Vegas but that was about the only major annual conference that the majority of web developers and designers could enjoy.</p>
<p>Hence my proposal &#8211; South Florida needs it&#8217;s own annual conference deveoted to web design and development.</p>
<p>I brought this up on Twitter when I heard the news, and good some responses but now i&#8217;m desiring serious feedback. The endgame is hopefully to have a conference in Miami in early 2011.</p>
<h3>The Pitch</h3>
<p>This is my pitch to those interested in a one-day event in Miami (or Ft. Lauderdale if there is no Miami venue):</p>
<p>- The event would be for those who design, manage, or develop web sites/apps and mobile apps.<br />
- The event will be for ANY skill level, even those who don&#8217;t consider themselves designers or developers.<br />
- The event would be split into two tracks &#8211; one for coding, the other for design/UI/SEO/marketing.<br />
- The first event will be structured similar to a &#8220;code camp&#8221; or WordCamp. Speakers and topics will be pre-selected and made available in plenty of time before the event starts. There&#8217;s a possibly of a &#8220;barcamp&#8221; open style block in the schedule time permitting.<br />
- As with most camps and refresh-style meetings, speakers are not here to self promote themselves, their company, or their products. They are here to teach.<br />
- A keynote is possible.<br />
- Any speaker regardless of their hometown can submit a proposal but the overall event SHOULD represent/reflectt the vast local talent we have in South Florida.<br />
- Cost of event will be VERY reasonable (think &lt; $100 &#8211; and compare that to bigger conferences and you&#8217;ll see that certainly is reasonable).</p>
<h3>What Do You Want To Learn?</h3>
<p>Interested? Then this is what we need: suggestions for speakers and topics.</p>
<p>Here is a list to get started. Please leave a comment and let me know what YOU would like to speak about OR what you would like to see presented.</p>
<p>- HTML5<br />
- CSS3<br />
- Introduction to jQuery<br />
- CMS Showdown: WordPress, Drupal, Joomla, ExpressionEngine<br />
- Introduction to Ruby on Rails<br />
- Introduction to PHP<br />
- PHP Frameworks (Or Intro To MVC)<br />
- Building Your First iPhone App<br />
- Building Mobile Web Sites<br />
- Spice Up Your Website With Custom Fonts<br />
- SEO 101</p>
<p>I know alot of that is aimed towards programmers and developers &#8211; but that&#8217;s because I am primarily a developer myself. Any reasonable topic is fair game. And hence why i&#8217;m asking for your $0.02.</p>
<h3>What&#8217;s Next?</h3>
<p>During November, i&#8217;m going to gauge the interest level in a more official capacity and if things look good, start nailing down potential topics and speakers.</p>
<h3>How About A Venue?</h3>
<p>Admittingly this is not a strong suit of mine. If you have a suggestion for a venue and know someone &#8220;on the inside&#8221;, please let me know. Usually events like this take place at collegues or universities. Keep in mind that funding will be coming directly from ticket sales, so the less the venue costs the less the ticket prices will be.</p>
<p>We will also announce ways local companies can sponsor the event for VERY reasonable prices. Sponsorship costs would go back into paying for the event. Everything here is basically non-profit.</p>
<h3>What Do You Think?</h3>
<p>That&#8217;s my proposal. Now let me know what you think. What do you want to see at WebDevMiami2 2011?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2010/11/04/public-proposal-for-a-south-florida-web-developer-conference/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Peerbackers.com</title>
		<link>http://www.davidbisset.com/2010/10/19/peerbackers-com/</link>
		<comments>http://www.davidbisset.com/2010/10/19/peerbackers-com/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 23:46:39 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[BuddyPress]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=103</guid>
		<description><![CDATA["Get backed by friends, family, colleagues...even strangers! Reach out for the money you need to start or grow your business."]]></description>
			<content:encoded><![CDATA[<script type="text/javascript"> 
	jQuery(document).ready(function($) {
	$(window).load(function() {

		$('div.portfolio-slideshow').fadeIn();
		$('div.slideshow-nav').fadeIn();
		$('div.slideshow-thumbs').fadeIn();
		
		$(function() {
				var index = 0, hash = window.location.hash;
				if (hash) {
				index = /\d+/.exec(hash)[0];
				index = (parseInt(index) || 1) - 1; // slides are zero-based
		} 	
			
		$('#portfolio-slideshow103').cycle({
				fx: 'fade',
				speed: 1000,
				timeout: 10000,
				next: '.slideshow-nav103 a.slideshow-next',
				startingSlide: index,
				prev: '.slideshow-nav103 a.slideshow-prev',
				after:     onAfter,
				pager:  '#slides103',
				manualTrump: false,
				cleartypeNoBg: true,
				pagerAnchorBuilder: function(idx, slide) {
				// return sel string for existing anchor
				return '#slides103  li:eq(' + (idx) + ') a'; }
		});
	

		$('.slideshow-nav103 a.pause').click(function() { 
			$('#portfolio-slideshow103').cycle('pause');
			$('.slideshow-nav103 a.pause').hide();
			$('.slideshow-nav103 a.play').show();
		});
	
		$('.slideshow-nav103 a.play').click(function() { 
			$('#portfolio-slideshow103').cycle('resume');
			$('.slideshow-nav103 a.play').hide();
			$('.slideshow-nav103 a.pause').show();
		});
		
		function onAfter(curr,next,opts) {
			var $ht = $("img",this).attr("height");
			var $oht = $("p.slideshow-caption", this).outerHeight('true');
			var $pht = $("p.slideshow-description", this).outerHeight('true');
			var $qht = $("p.slideshow-title", this).outerHeight('true');
			//set the container's height to that of the current slide
			$(this).parent().css("height", $oht + $pht + $ht + $qht - 30);var caption = (opts.currSlide + 1) + ' of ' + opts.slideCount;
			$('#slideshow-info103').html(caption);
	} }); }); });</script><div id="portfolio-slideshow103" class="portfolio-slideshow">
<div class="slideshow-nav103 first slideshow-next"><a href="javascript: void(0)" class="slideshow-next"><img width="590" height="265" src="http://www.davidbisset.com/wp-content/uploads/2010/10/peer4.jpg" class="attachment-full" alt="peer4" title="peer4" /></a></div>
<div class="slideshow-nav103 slideshow-next"><a href="javascript: void(0)" class="slideshow-next"><img width="590" height="265" src="http://www.davidbisset.com/wp-content/uploads/2010/10/peer3.jpg" class="attachment-full" alt="peer3" title="peer3" /></a></div>
<div class="slideshow-nav103 slideshow-next"><a href="javascript: void(0)" class="slideshow-next"><img width="590" height="265" src="http://www.davidbisset.com/wp-content/uploads/2010/10/peer2.jpg" class="attachment-full" alt="peer2" title="peer2" /></a></div>
<div class="slideshow-nav103 slideshow-next"><a href="javascript: void(0)" class="slideshow-next"><img width="590" height="265" src="http://www.davidbisset.com/wp-content/uploads/2010/10/peer1.jpg" class="attachment-full" alt="peer1" title="peer1" /></a></div>
</div>
<p><!--//end portfolio-slideshow div--></p>

<p>Site for startup company used heavily modified BuddyPress (Groups, Profiles) to create a place where people can register and create ventures, then get those ventures crowdsourced.</p>
<p><a href="http://www.peerbackers.com/" target="_blank">Visit The Site</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2010/10/19/peerbackers-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting Up A New Site</title>
		<link>http://www.davidbisset.com/2010/10/19/starting-up-a-new-site/</link>
		<comments>http://www.davidbisset.com/2010/10/19/starting-up-a-new-site/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 17:25:21 +0000</pubDate>
		<dc:creator>David Bisset</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.davidbisset.com/?p=1</guid>
		<description><![CDATA[For the first time in over two years, i'm rebooting my personal site.]]></description>
			<content:encoded><![CDATA[<p>For the first time in over two years, i&#8217;m rebooting my personal site. Not going to fool myself to thinking i&#8217;m going to be maintaining the blog on a regular basis (last blog entry on my old site was Dec 2009), but I do have several items that I want to talk about in the near future which demands having a blog SOMEWHERE. And here seemed like the logical choice.</p>
<p>The portfolio section has been updated, and i plan on staying on top of that. My company, <a href="http://www.dimensionmedia.com">Dimension Media</a>, now needs an update and I plan on doing that by the end of October.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.davidbisset.com/2010/10/19/starting-up-a-new-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

