Monthly ArchiveAugust 2008



Social Media & TechBiz & Uncategorized 29 Aug 2008 09:23 am

ROFLCon Poised to Give LOLS

I’ll be heading off to ROFLCon this evening. It’s a geek event where Scoblian passionates will gather in a secret power cabal and plan the overthrow of the non-passionates.

pictures of rofl

LOL

I’m really there because the creators of ICanHasCheezBurger will be there talking about what it takes to harness the wisdom of crowds to make the funniest and cutest site on the Internets.

Social Media & TechBiz & WebApps 27 Aug 2008 03:49 pm

Ubiquity puts the World at your Finger Tips

Ever wanted to edit, save, Twitter, Friend-feed, email, add to your calendar, and yelp a web page without doing much typing?

The Ubiquity plug-in does just that!

So far with Ubiquity, I’ve been able to automatically send emails of interesting webpages to friends without cutting and pasting, look up weather, Twitter, and Friend-feed. The last time I used a tool this cool was SocialBrowse.

TechBiz & WebApps 26 Aug 2008 04:01 pm

Google doesn’t like Word Press Pages

I put my hCard in my “About Codebelay Blog” pages, and noticed that doing a search on hcard-barce which is the DOM ID for my hCard returned 1 result. That one result was wrong.

I checked my logs for any signs that Google hit page_id=2 and to my surprise, Google didn’t crawl that page at all. In fact none of the major search engines except for PDF Bot hit it.

Is there a way to make my Word Press page with page_id in the URL more visible to search engines?

QA 25 Aug 2008 09:41 am

Automated Functional Testing with Selenium IDE

Are you a web developer that gets tired of typing the same thing over and over when you’re coding forms? Look no further than Selenium IDE. It’s a firefox extension that you can download, and that allows you to do automated, functional testing.

screenshot of selenium IDE

You simply let Selenium record what you are typing and your mouseclicks, and then save what you clicked and typed as a test file. You can play back that test file as many times as you need to get that pesky bug fixed. Now you can troll the WoW forums with all the time you saved.

Another tool to look out for is functional testing from the command-line using symfony’s functional testing tools. Unlike Selenium, you won’t need to open the browser. Currently symfony’s functional tester doesn’t work with sessions yet.

From the Perl camp, there’s also WWW::Mechanize, but it won’t work with testing Ajax functionality.

Announcements 22 Aug 2008 03:32 pm

The Friday Five for August 22nd, 2008

Here are 5 links worth checking out before you head out the door:

  1. Tara Hunt blogs about Ma.gnolia going open source. This blog post provides a link to the git repository and google group.
  2. The Outside Lands Music Festival has a great line up!
  3. Another victim is claimed by the blue screen of death.
  4. The latest on the Chinese Gold Medalist age controversy.
  5. 37signals shares with us the Hollywood Launch method for launching a web app. Just pretend your web app is to be marketed like a block buster movie.

Have a great weekend!

How-To & WebApps & ruby on rails 21 Aug 2008 08:54 am

The Rails Console Makes Test Object Creation and Debugging Easy

I really like how the Rails console solves the problems of test object creation and debugging.

Usually, a web developer will push code to the webserver and hit shift-reload on the web browser. With the Rails console, you can avoid all that shift-reload madness.

If I wanted to create 10000 blog posts for testing, I could do something like this:

script/console
10000.times
{ |i| Post.create(:title => “post number: ” + i.to_s, :body => “autogen Booyah!”) }

Through the console I can also do debugging pretty easily:

>> p = Post.find 888

And get this as output:

=> #

A lot of problems in Rails are just solved by running script/console and checking the values of certain variables that are pretty hard to get at through a web browser.

There is pretty much no limit to what can be done through the Rails console. Konstantin Gredeskoul, web developer and songwriter, has found a way to load session data through the console.

WebApps 20 Aug 2008 11:04 am

Remember the Milk: An Off-line Capable Todo List with SMS Capability

Do you do a “Note to Self” more than once a day and just wished that you could send one using SMS? I’ve been using that feature a lot with Remember the Milk which has now replaced Basecamp for my todo list.

  • I created an entry named “Todo” on my cell phone
  • When required I send an SMS to Todo.
  • When I get home and log in my to-do item shows up on my Remember the Milk Page.

I never forgot anything that I’ve SMS’d to Remember the Milk.

picture of Remember The Milk

What’s also super cool is how you can edit your To-do items off-line because Remember The Milk uses Google Gears.

How-To & WebApps & php 19 Aug 2008 04:56 pm

Installing Swift in symfony 1.1 — The missing manual

There’s one little gotcha with installing Swift in symfony 1.1. The directions are correct but do not mention how to get around the error that outputs:


Fatal error: Class ‘Swift_Connection_SMTP’ not found


The solution is quite simple and involves creating an autoload.yml file in your project’s config directory. Here it is:

autoload:
  swift_mailer_classes:
    name: swift classes
    ext:  .php
    path: %SF_PLUGINS_DIR%/swift
    recursive: on

What I really like about Swift is how you can use your gmail account to send messages.

TechBiz & WebApps & ruby on rails 19 Aug 2008 10:25 am

Mephisto: Blogging Software on Rails

Blogging software should meet four important criteria:
1) Easy import from a pre-existing piece of blogging software we’re not happy with.
2) Spam filtering protection in comments
3) Make it easy to add web analytics javascript tracking without deleting it during each upgrade.
4) Should make it easy to not look like Mephisto blogging software or Wordpress or like generic blogging software.

Mephisto screenshot

Mephisto meets all four criteria.

Plus it leverages the advantages of Rails in that out of the box you can deploy to development, test and production environments. Also it integrates with no mess into shopify or any other Rails project that you might be working.

Hats off to Rick Olson(Development) and Justin Palmer(UI/Design) for making Mephisto along with “a bunch of other cool people.”

How-To & WebApps & php 18 Aug 2008 10:38 am

Installing sfGuardPlugin in symfony 1.1 — A Guide for the Perplexed

Like the verbally creative barfly, who is a dead ringer for a 21+ Juno, that you picked up during last call on a Friday night, symfony 1.1 starts to grow on you. Nevermind your friends, who found Erlang in some higher-scale, hipster, hippy hang out. They tell you it’s time to leave symfony 1.1. You’re perversely drawn to this framework and don’t mind racking up the future therapy bills.

God is dead, and so everything is permitted, unless you can install something like symfony 1.1’s sfGuardPlugin to add logins and login protection to web pages. Like the initiation rites into the Eleusinian mysteries or the Freemasons, not everything is articulated on how to do the install. But below, for the first time, it is.

Note: I use psymfony as an alias which really just means ‘php symfony’.

  • psymfony generate:app backend

Now you can start following the guide written on the symfony website. Below is just from my shell’s history log:

  • psymfony plugin:install sfGuardPlugin
  • psymfony propel:build-model
  • psymfony propel:build-sql
  • psymfony propel:insert-sql — this didn’t work for me so I ended up just doing: mysql -uusername -p < data/sql/plugins.sfGuardPlugin.lib.model.schema.sql
  • follow the instructions in the guide above for fixtures
  • psymfony propel:data-load frontend
  • psymfony propel:data-load backend
  • vim apps/frontend/config/settings.yml
  • vim apps/backend/config/settings.yml
  • psymfony cc

But you’re not done yet. Are you running into a propel connection error? Then you might have to edit some yaml files based on this blog post.

In my case, I ended up having to edit config/databases.yaml by adding the following below:

   propel:
     class:          sfPropelDatabase
     param:
       phptype: mysql
       host: localhost
       database: dev_starster
       username: writes
       password: some_wicked_sick_password
       dsn:          mysql://writes@localhost/dev_starster
       datasource: propel

Are we out of the woods yet?

Unfortunately, symfony 1.1 has a signout bug, where sessions are not entirely cleared. Thanks to this blog post, I was able to hack something together.

In apps/yourapp/modules/sfGuardAuth/actions/actions.class.php write:

public function executeSignout()
{
if (sfConfig::get('sf_environment') != 'test')
{
session_destroy();
session_write_close();
session_regenerate_id();
}
parent::executeSignout();
}

You might have to link the sf_guard_user table to an account table, if you want the account table to do the authorization instead. If so edit apps/modulename/config/app.yml by adding something that looks like this:

  sf_guard_plugin:
    algorithm_callable: md5
    success_signin_url: @homepage
    profile_class: sfGuardUserProfile
    profile_field_name: account_id
    check_password_callable: [Account, checkPassword]

In the lib/model/Account.php you should add code that looks like this:

  public static function checkPassword($username, $password) {
  	$c = new Criteria();
  	$c->add(AccountPeer::EMAIL, $username);
  	$c->add(AccountPeer::PASSWORD, md5($password));
  	$rac = AccountPeer::doSelect($c);
  	//print_r($rac) ; die();
  	if ($rac == TRUE) {
  		return TRUE;
  	} else {
  		return FALSE;
  	}
  }

Here is a list of links that made getting the plugin working possible:

Next Page »