Episode 70: Custom Routes

Posted almost 7 years back at Railscasts

In this episode you will learn how to add custom routes, make some parameters optional, and add requirements for other parameters.

Doxtrackr Goes Live

Posted almost 7 years back at Alloy Code - Home

Team Red Key

After a turbo-charged 48 hour development period, our contest entry has launched! Keith did an outstanding job on our interface, far exceeding merely doing justice to my application code. Even more impressive, we managed to implement everything we intended, and simplified the app at the same time.

Here’s the short list of features: + No Account Management Required! + Easy to share private URLs + Document Version & Status Tracking + Version specific Comments

I would argue that our greatest success was removing the account management requirement. Most of the Rumble contest sites we’ve viewed so far put the majority of their content behind a login/password screen. A few of the more generous ones support OpenID, a technology I’ve recently come to embrace.

We take pride in being one of the few applications that offers all the benefit of a session-backed user account without any of the account creation/management overhead. Simply provide your name and email address when you upload a document and your account is created for you. If you’ve uploaded additional documents with the same email address, we’ll automatically group them together for you.

Doxtrackr Goes Live

Posted almost 7 years back at Alloy Code - Home

Team Red Key

After a turbo-charged 48 hour development period, our contest entry has launched! Keith did an outstanding job on our interface, far exceeding merely doing justice to my application code. Even more impressive, we managed to implement everything we intended, and simplified the app at the same time.

Here’s the short list of features: + No Account Management Required! + Easy to share private URLs + Document Version & Status Tracking + Version specific Comments

I would argue that our greatest success was removing the account management requirement. Most of the Rumble contest sites we’ve viewed so far put the majority of their content behind a login/password screen. A few of the more generous ones support OpenID, a technology I’ve recently come to embrace.

We take pride in being one of the few applications that offers all the benefit of a session-backed user account without any of the account creation/management overhead. Simply provide your name and email address when you upload a document and your account is created for you. If you’ve uploaded additional documents with the same email address, we’ll automatically group them together for you.

36 Hours In...

Posted almost 7 years back at Alloy Code - Home

Im in Ur Rails...

Well, I’m long overdue for a Rumble update, the past 24 hours have been a whirlwind of activity over at team Redkey. Our application now supports team collaboration, ActionMailer backed email, and some really cool routing stuff that enables us to use the concept of users without the overhead of making those users log in.

Also, don’t forget to check out our Flickr photos. We were fortunate enough to have a guest photographer stop by the morning to take our official team photo, capturing us at our most-rested state in the past day and a half.

0.6.2 Released

Posted almost 7 years back at The Hobo Blog

There’s a subtle blend of fixes and small enhancements in this release. Enjoy!

REPOSITORY LAYOUT CHANGE: Please note the svn url for the plugin has changed. It is now:

  • svn://hobocentral.net/hobo/trunk/hobo

If you check out svn://hobocentral.net/hobo/trunk you’ll get both hobo and hobo_spec, and you’ll be able to run the specs by typing rake in the hobo directory. The specs are very thin on the ground right now but that will improve as we migrate our old test/unit tests to specs.

0.6.2 Released

Posted almost 7 years back at The Hobo Blog

There’s a subtle blend of fixes and small enhancements in this release. Enjoy!

REPOSITORY LAYOUT CHANGE: Please note the svn url for the plugin has changed. It is now:

  • svn://hobocentral.net/hobo/trunk/hobo

If you check out svn://hobocentral.net/hobo/trunk you’ll get both hobo and hobo_spec, and you’ll be able to run the specs by typing rake in the hobo directory. The specs are very thin on the ground right now but that will improve as we migrate our old test/unit tests to specs.

36 Hours In...

Posted almost 7 years back at Alloy Code - Home

I'm in Ur Rails...

Well, I’m long overdue for a Rumble update, the past 24 hours have been a whirlwind of activity over at team Redkey. Our application now supports team collaboration, ActionMailer backed email, and some really cool routing stuff that enables us to use the concept of users without the overhead of making those users log in.

Also, don’t forget to check out our Flickr photos. We were fortunate enough to have a guest photographer stop by the morning to take our official team photo, capturing us at our most-rested state in the past day and a half.

36 Hours In...

Posted almost 7 years back at Alloy Code - Home

I'm in Ur Rails...

Well, I’m long overdue for a Rumble update, the past 24 hours have been a whirlwind of activity over at team Redkey. Our application now supports team collaboration, ActionMailer backed email, and some really cool routing stuff that enables us to use the concept of users without the overhead of making those users log in.

Also, don’t forget to check out our Flickr photos. We were fortunate enough to have a guest photographer stop by the morning to take our official team photo, capturing us at our most-rested state in the past day and a half.

mms2r 1.1.8 Released

Posted almost 7 years back at Mike Mondragon

mms2r version 1.1.8 has been released!

  • <http://mms2r.rubyforge.org/>

DESCRIPTION:

MMS2R is a library that decodes the parts of an MMS message to disk while
stripping out advertising injected by the cellphone carriers. MMS messages are
multipart email and the carriers often inject branding into these messages. Use
MMS2R if you want to get at the real user generated content from a MMS without
having to deal with the cruft from the carriers.

If MMS2R is not aware of a particular carrier no extra processing is done
to the MMS other than decoding and consolidating its media.

Contact the author to add additional carriers to be processed by the
library. Suggestions and patches appreciated and welcomed!

Corpus of carriers currently processed by MMS2R:

  • AT&T => mms.att.net
  • AT&T/Cingular => mmode.com
  • Cingular => mms.mycingular.com
  • Cingular => cingularme.com
  • Dobson/Cellular One => mms.dobson.net
  • Helio => mms.myhelio.com
  • Nextel => messaging.nextel.com
  • Orange (Poland) => mmsemail.orange.pl
  • Orange (France) => orange.fr
  • Sprint => pm.sprint.com
  • Sprint => messaging.sprintpcs.com
  • T-Mobile => tmomail.net
  • Verizon => vzwpix.com
  • Verizon => vtext.com

Changes:

1.1.8 / 2007-09-08 (James Grishnack – Head of Behemoth Productions, producer
of Blood Ocean)

  • Added support for Orange of France, Orange orange.fr (Julian Biard)
  • purge in the process block removed, purge must be called explicitly
    after processing to clean up extracted temporary media files.

mms2r 1.1.8 Released

Posted almost 7 years back at Mike Mondragon

mms2r version 1.1.8 has been released!

  • <http: mms2r.rubyforge.org=""/>

DESCRIPTION:

MMS2R is a library that decodes the parts of an MMS message to disk while stripping out advertising injected by the cellphone carriers. MMS messages are multipart email and the carriers often inject branding into these messages. Use MMS2R if you want to get at the real user generated content from a MMS without having to deal with the cruft from the carriers.

If MMS2R is not aware of a particular carrier no extra processing is done to the MMS other than decoding and consolidating its media.

Contact the author to add additional carriers to be processed by the library. Suggestions and patches appreciated and welcomed!

Corpus of carriers currently processed by MMS2R:

  • AT&T => mms.att.net
  • AT&T/Cingular => mmode.com
  • Cingular => mms.mycingular.com
  • Cingular => cingularme.com
  • Dobson/Cellular One => mms.dobson.net
  • Helio => mms.myhelio.com
  • Nextel => messaging.nextel.com
  • Orange (Poland) => mmsemail.orange.pl
  • Orange (France) => orange.fr
  • Sprint => pm.sprint.com
  • Sprint => messaging.sprintpcs.com
  • T-Mobile => tmomail.net
  • Verizon => vzwpix.com
  • Verizon => vtext.com

Changes:

1.1.8 / 2007-09-08 (James Grishnack – Head of Behemoth Productions, producer of Blood Ocean)

  • Added support for Orange of France, Orange orange.fr (Julian Biard)
  • purge in the process block removed, purge must be called explicitly after processing to clean up extracted temporary media files.

14 Hours of Rumbling

Posted almost 7 years back at Alloy Code - Home

Keith laying out our elements

Well, we’re just past the 14 hour mark since the Rails Rumble opened, and we’re making great progress. Keith Medlin and I have resurrected the “Red Key” brand to bring our revolutionary vision to life: Doxtrackr, a web-based document revision system.

The bulk of my time so far has been spent setting up our deployment environment, having done this recently for Alloy Code and Your Garage Online, I was able to speed through most of it. We’re using Mongrel, Capistrano and Nginx on Ubuntu 7.04 (breaking from the Debian herd) and have our stack already in place. We won’t be struggling to deploy at the last minute!

Keith has been focusing on our design and interface while I’ve been putting the models in place to support the site. We’ve snapped a few photos for posterity.

Keep watching for previews of our design and code process!

Test Coverage Matters

Posted almost 7 years back at Alloy Code - Home

100 Percent Test Coverage

Inspired by City Cliq’s RSpec screenshot, we wanted to brag on our 100% RCov coverage as well. We’ve been using Test::Unit as opposed to RSpec, along with a healthy dose of Mocha to mock out external services.

For example, our application provides a convenient, tiny url to access user content, which is generated as part of a create action, generated with the ShortURL gem. In our functional test, we mock out the “shorten” method of ShortURL, and have it feed us back consistent data:

def test_create
  WWW::ShortURL.expects(:shorten).returns("http://tinyurl.com/fake")
  assert_difference "Document.count", 1 do
    post :create, :document => @@document_default_values
    assert_equal "http://tinyurl.com/fake", assigns(:document).shorturl
  end
end

Since the generated URL could potentially be different each time the test is run, I’ve removed the dependency on an external library and service to gain repeatability in my tests. I’ll take for granted that the ShortURL gem works and has it’s own tests; there’s no reason for me to duplicate their efforts. The above test simply assumes the ShortURL library is performing as expected, and allowing me to test my own code atomically.

Test Coverage Matters

Posted almost 7 years back at Alloy Code - Home

100 Percent Test Coverage

Inspired by City Cliq’s RSpec screenshot, we wanted to brag on our 100% RCov coverage as well. We’ve been using Test::Unit as opposed to RSpec, along with a healthy dose of Mocha to mock out external services.

For example, our application provides a convenient, tiny url to access user content, which is generated as part of a create action, generated with the ShortURL gem. In our functional test, we mock out the “shorten” method of ShortURL, and have it feed us back consistent data:

def test_create
  WWW::ShortURL.expects(:shorten).returns("http://tinyurl.com/fake")
  assert_difference "Document.count", 1 do
    post :create, :document => @@document_default_values
    assert_equal "http://tinyurl.com/fake", assigns(:document).shorturl
  end
end

Since the generated URL could potentially be different each time the test is run, I’ve removed the dependency on an external library and service to gain repeatability in my tests. I’ll take for granted that the ShortURL gem works and has it’s own tests; there’s no reason for me to duplicate their efforts. The above test simply assumes the ShortURL library is performing as expected, and allowing me to test my own code atomically.

14 Hours of Rumbling

Posted almost 7 years back at Alloy Code - Home

Keith laying out our elements

Well, we’re just past the 14 hour mark since the Rails Rumble opened, and we’re making great progress. Keith Medlin and I have resurrected the “Red Key” brand to bring our revolutionary vision to life: Doxtrackr, a web-based document revision system.

The bulk of my time so far has been spent setting up our deployment environment, having done this recently for Alloy Code and Your Garage Online, I was able to speed through most of it. We’re using Mongrel, Capistrano and Nginx on Ubuntu 7.04 (breaking from the Debian herd) and have our stack already in place. We won’t be struggling to deploy at the last minute!

Keith has been focusing on our design and interface while I’ve been putting the models in place to support the site. We’ve snapped a few photos for posterity.

Keep watching for previews of our design and code process!

Can You Feel The Rumble?

Posted almost 7 years back at zerosum dirt(nap) - Home

So the Rails Rumble is on! We’ve worked pretty hard to hook this up and it’s great to see it alive and breathing, and #railsrumble buzzing with activity. There were some capacity issues at first (ouch!) but things seem to be going pretty smoothly now.

Greets to Carter Parks, Rodrigo Kochenburger, and Erin & Tommy Shine, who all poured a lot of precious blood into this beastie. And our friends Chris Aker and Tom Asaro at Linode. And our other sponsors too, of course. Oh, and best of luck to all the Rumblers. Launch some cool-ass web properties and win some swag, guys! Hope you’ve got plenty of Red Bull to keep you caffeinated.

Me? I’m going to bed. See you tomorrow in IRC.