May 31st, 2009

This blog is moving to http://leadthinking.com

There will still be a lot of posts on development and Ruby, but I also am going to focus more on the business side of things.

The FeedBurner feed has been redirected automatically.

maccman | Uncategorized | No comments Jump to the top of this page

Socialmod release

May 27th, 2009

We’ve pushed the first ‘live’ release of Socialmod today, Tim has the scoop.

Socialmod is a moderation platform - you can either use Mechanical Turk or your own team to moderate the content.

You can also moderate Twitter feeds with Socialmod.

Read more here.


maccman | Socialmod | No comments Jump to the top of this page

SocialMod - moderation service

April 8th, 2009

So, it’s been a bit quiet around here as I’ve been blogging on the company blog, madebymany.co.uk. This is a cross post.

Whether you’re building a new website, or want to manage your community more effectively - moderation is a common requirement.

SocialMod Unfortunately computers haven’t got to the stage where they can recognize libelous/offensive images - so UGC often has to get passed in front of a human moderator to get an accurate verdict.

People often build moderation systems from scratch - even though it’s quite a generic problem. Today we’re officially announcing SocialMod - a comprehensive hosted moderation system that prevents you from reinventing the wheel.

The idea is simple; you send any images/videos and text to SocialMod using the API. Once they’ve been moderated, you get a verdict back.

For example, a user uploads an image to your website. Your site then automatically submits it to SocialMod and, once the image has been moderated, you can then display it publicly (if it passed moderation).

moderate Or, if your traffic is even higher, you could just submit an item to SocialMod when it gets ‘flagged’ by your community. Have a look at my previous post on moderation types for more information.

So who actually does the moderation? Well, there are three choices:

  • You or your team. You can add extra users to your account and they can perform the moderation.
  • Your community. SocialMod can be embedded into your site and you can give trusted members of your community access.
  • Us. If you choose one of the automated plans, we’ll do all the moderation.

There’s much more to SocialMod, such as spam & profanity filters, referral, audit trails, reports and Twitter integration. We’ll be blogging about some of these in the near future.

If you’re interested in participating in the beta, let us know. We’ll be launching shortly.

maccman | Uncategorized | No comments Jump to the top of this page

Saasy - SaaS for Rails

January 5th, 2009

I’ve been working on an open source SaaS solution for Rails over Christmas called Saasy (pronouced “sarrsy” - using a posh voice).

Saasy provides:

  • Subscription management
  • Recurring billing
  • Credit card management
  • User authentication and SSO
  • Mailers for invoices etc

Read the rest of this entry »

maccman | Uncategorized | 8 comments Jump to the top of this page

Ruby Manor

November 25th, 2008

On Saturday I did a presentation at Ruby Manor on using recommendation systems in production featuring our plugin, acts as recommendable (AAR).

This was, without a doubt, the best conference I’ve been too - and the icing on the cake was the leftover £500 behind a students bar afterwards - ginger beers for everyone!

Graham Ashton has done a write up of all the talks and Chris Lowis has converted AAR to use the GNU scientific lib.

I was going to use Slideshare, but they seem to have broken it, so you can download a pdf of the presentation here (video will be up soon). The slides don’t make much sense by themselves though.

maccman | Uncategorized | No comments Jump to the top of this page

Juggernaut Chat Tutorial

August 5th, 2008

Taelor has just written a brilliant Juggernaut tutorial which is well worth checking out, especially if you’re new to the project.

I also want to take this opportunity to list some of the other tutorials


maccman | Uncategorized | 2 comments Jump to the top of this page

Recommendations & Collaborative Filtering

August 4th, 2008

I’ve been blogging over at Made by Many’s site about Recommendations & Collaborative Filtering regarding my new Rails plugin, ‘acts_as_recommendable‘.

I recommend subscribing to Made by Many’s feed, as there are a lot of interesting articles there, and I’m sure there will be a lot more forthcoming too.

Incidentally, I’m also talking at Rails Conf Europe about Juggernaut.

RailsConf Europe 2008

maccman | Uncategorized | No comments Jump to the top of this page

CSRF & Working With Rails

June 12th, 2008

About a week ago Mislav Marohnic wrote about a simple CSRF attack on Working with Rails.

What Mislav exploited was the fact that Working With Rails didn’t require a POST request to create recommendations, so just by visiting his blog you’d inadvertadly recommend him (if you were logged into WWR).
In less than 24 hours Mislav got enough recommendations to boost his raking by 10 places.

WWR fixed that particular hack, they disallowed GET requests to the create action, only allowing POST ones.

However, they certainly haven’t solved the problem. It’s possible to make cross site POST requests without the user actively submitting a form. This script I made creates an iframe with a form inside, and submits the form. So, without a user realizing it, they’ve recommended me on WWR (I haven’t used it in this site btw).

It just shows that it’s fundamentally important to use a form authentication token (which Rails 2 now does by default) to prevent CSRF.

And, it’s worth bearing in mind that an open crossdomain.xml file would make any CSRF protections absolutely worthless, since you could go and grab that form authentication token with Flash.

maccman | Rails | 6 comments Jump to the top of this page

Airdoc - Google Doc Uploader

April 15th, 2008

If you die a little inside when someone sends you a Word/Excel/Powerpoint document to read then Airdoc is for you!

The other day someone sent me a Powerpoint file containing some screenshots, wrong on so many levels, but perhaps some good will come out of it since it motivated me to write this simple Air app.

Airdoc is a very simple Air application that registers itself to open those Office documents. It’ll then proceed to upload them to Google Docs - and open them right in your browser.

You’ll need to install Adobe Air first.

Download Airdoc.

maccman | Air (Apollo) | 1 comment Jump to the top of this page

We don’t need mod_rails - we need mod_rack

April 15th, 2008

Mod rails is certainly a step in the right direction - but I think a much better idea would be to implement support for Rack.

Rack is an abstraction between Webservers and Ruby web frameworks. Thin, for example, uses this to great effect - by using Rack, Thin automatically supports tons of Ruby web frameworks out of the box:

  • Camping
  • Coset
  • Halcyon
  • Maveric
  • Merb
  • Ramaze
  • Sinatra
  • Vintage

There is also a Rails adapter to Rack (in the Thin repo)

So, wouldn’t it make more sense for the mod_rails team to work on mod_rack? Then you could upload a simple Ruby script like this to your webserver, and it would just work:

rack_app = Proc.new do |env|
[200, {”Content-Type”=>”text/html”}, “hello world!”]
run rack_app

maccman | Ruby, Rails | 18 comments Jump to the top of this page

19yr old hacking away at Ruby on Rails and Flex