closing comments

Posted on Tue Dec 16 21:34:00 UTC 2008

The spammers won (well not really), after getting tired of deleting spam en masse (by the thousands every other months or so), I decided to close comments on some older posts that happen to have a better page rank than most. If you really need to get to me, please feel free to use the Contact me page

Even though I’ve been considering this for a while, this was in part prompted by Jesper of Just add water

His comment policy is simple:

In the future we will probably mark all of the above comment types as spam. Yes, some of the comments actually add value, but most of the comments actually are just made to improve ranking.

We will continue to manually approve the comments we mean will add value.

We will continue to hold comments for manual moderation. (so if your valid comment does not show up within a few hours, please contact us).

Actually, mine is even simpler.

- you must pass the Akismet test. - you must pass my own test: I review anything Akismet approves and will delete anything that looks, sounds or smells like spam. So even if your comment gets approved initially, I reserve the right to remove it. If that sounds arbitrary, so be it. Although I believe I have been quite fair in the past and will continue to be. Disagree? Send me your feedback

Unrelated note: Did you check out Twitter Essentials ?

Posted in News  |  Tags  |  1 comment

merb 1.0

Posted on Fri Nov 07 22:11:00 UTC 2008

merb has reached 1.0. What a tremendous achievement from all all contributors, and Ezra more specifically and Wycats

If you can’t wait, use
 gem install merb --source http://edge.merbivore.com

Should be available by tomorrow on your regular gem mirror

gem install merb

Cheers!

Posted in Merb, News  |  Tags  |  0 comments

ANN: rails-undo-redo

Posted on Mon Feb 18 01:03:00 UTC 2008

To this day, very few web apps provide any undo/redo capabilities. This is really not such a good thing for usability. There are a few exceptions like gmail, but it does not go far enough to provide what every one is used on their desktop.

Ever since I read Assaf’s post on the subject, and left hungry for more, as Assaf only helps you on the UI side and leaves you all the heavy lifting, I have been thinking that there must be a way to make it a lot easier to implement undo/redo in a consistent manner, and in a way that is as easy as rails has gotten us used to.

After a few failed attempts, and building on the work of Brian Durand and his Acts As Revisionable and ActsAsTrashable plugins, that I’ve reused (and probably abused as well), I have come to realize a few (obvious?) things, namely that:

for Undo/Redo to work, it needs to

  • Work across all models
  • Capture the list of changed objects (UndoRecords)
  • Group these UndoRecords per User Action (UndoActions)

Then undo and redo are just a simple matter of replaying the UndoRecords in the right order.

All my previous attempts, and most other plugins I got inspiration from focused on one model, and even though you need this as a building block, for any real application, you need to be able to undo changes across multiple models (even beyond belongs_to, has_many type changes).

When you look at the types of changes to a model in details, you really have 3 types of changes Create, Update and Destroy (these are the C-U-D in CRUD, even if you are not doing REST), and undoing each one requires special handling, so this is also tracked and managed by UndoRecord.

To make a long story short, I’ve packaged all these ideas into a new Rails plugin: Rails Undo Redo (and very soon a gem as well, because this can help, and that’s also easy, or very easy), you can now easily transform any Rails Application using Active Record into a full fledged multi level undo/redo application like most desktop application.

For a full how-to, read the Rails Undo Redo project page, or try the Rails Undo Redo demo.

Posted in News, Rails  |  Tags  |  16 comments

ANN: git-rails

Posted on Tue Feb 05 01:12:00 UTC 2008

Git is quickly becoming one of the best option for using a DVCS (Distributed Version Control System). Git main goal is to be quick (most everything you do is local), and has already been battle tested by the Linux Kernel dev team.

Recently, I’ve started experimenting with git after Rick switched Mephisto to git.

Even though things are pretty straightforward, some things are easier than others, especially when you have to take it all in in one shot.

So, over the weekend, I created git-rails, completed with a rubyforge project, an installable gem (gem install git-rails), and a git repository hosted by Gitorious

Currently, git-rails provides 3 functions:
  1. init repository (hookup to remote git repository, rails aware .gitignore)
  2. install plugin managed by git (using git submodules)
  3. update plugin

For now, I’m happy to use giston to manage svn hosted plugins, but I’m considering whether to add that functionality as well. We’ll see how things go.

To get started with git-rails, head over to the new git-rails project page.

Inspired by piston, and its newest sibling: giston/braid

Posted in News, Rails  |  Tags ,  |  3 comments

MacHeist

Posted on Sun Jan 20 21:52:00 UTC 2008

If you have a Mac, or want one, then you should surely take a look at the $49 bundle MacHeist has put together. An amazing value, with lots of cool apps. Plus 25% of your purchase goes to charities. It’s like getting 1password, CoverSutra (truly cool), and Snapz Pro for half the price, and getting all other 11 Mac Applications for free. Check it out (via Obie Fernandez)

Update: I had the link wrong (using https), and you could not see the apps. Fixed. Also forgot to mention you also get CSSEdit. And possibly VectorDesigner if they reach the $300,000 donation level.

Posted in Mac, News  |  Tags  |  2 comments

Ruby Gem 1.0 is out

Posted on Thu Dec 20 01:42:00 UTC 2007

RubyGem 1.0 is out.

Yeah!

Which means that if you see

undefined method `require_gem' for main:Object (NoMethodError)

You’ll need to replace require_gem by just gem.

For example, unless you have the very latest version of ruby-debug (0.9.3), you’ll see the above error. In that case, though, updating your gem is simpler.

Posted in News, Quid Pro Quo  |  Tags  |  11 comments

Upgrade to Windows XP?

Posted on Sat Dec 15 00:48:00 UTC 2007

This was just too good to pass up! Vista has been getting a pretty bad rap anywhere you look (well, at least anywhere I look, and from second hand experience helping people with their Vista machine), so here’s your chance to finally Upgrade to XP

Ok, you can stop laughing now.

And for a real upgrade

(via Reginald)

Posted in News  |  Tags  |  2 comments

Dreamhost codes

Posted on Tue Dec 04 23:37:00 UTC 2007

I’ve had my ups and downs with Dreamhost and I’m now running nano RAILS on a kick ass VPS with gentoo.

But for a starter ruby site (nano RAILS was hosted there for over a year!), it is hard to beat their price, and they do run quite nicely with fcgi. If you want to run multiple apps, using mongrel, then sure it is not for you.

I’m also running lots of wordpress blogs (Home Recipes and Why not create a Side Business) and I’m happy with the no hassle way to get them setup and how smoothly they run.

Any way, to make a long story short, Dreamhost has finally decided to update the way you create codes for their Coupons.

So if you want to get started with a pretty good host, and need a new domain name, you can get that domain for free for the life of your account by using the code NANODOMAIN (plus you get the max $50 off, which is a nice chunk of change).

Or if you already have a domain, but want a unique IP, you can use NANOIP (and you also get $50 off).

Or you can take advantage of that last week to get $97 off with NANO97.

Enjoy!

Posted in News  |  Tags ,  |  1 comment

An amazing lesson in Micro Biology

Posted on Tue Jul 24 22:53:00 UTC 2007

If you are just curious about how things work, or a big fan of Micro Biology, you should not miss this 10 minutes video.

David Bolinsky has created an amazing video where he shows in stunning motion the inner working of the cell. This may have been staged so that visibility of what's going on is increased, but the video are just breath taking. I look forward to watch his entire creation

Or if you prefer, the higher resolution version

Thanks to TED for sharing!

Posted in News  |  Tags  |  2 comments

Finally migrated to Mephisto

Posted on Sat Jun 16 00:02:00 UTC 2007

Big sigh of relief…

... and yes, everything went fine. Well, mostly. If something looks amiss, please use the brand new feedback page (thanks Rick!) to let me know. I’ve tried to redirect most existing urls to their new ones as Mephisto and Typo slightly differ on how they generate the permalink portion, but may have missed a few (so if you get an error page when something used to work, please do let me know!).

After much hesitation, and having dreaded the minutiae of the conversion, I’ve finally made it!

In fact it was the switch to a brand new VPS with a 1Gb of memory that was the trigger. Since I was reinstalling everything from scratch (more on that shortly), I figured now was the time to bite the bullet. And it went much easier than I expected :). I’ll try to put down some notes on some the pitfalls to avoid within a few days.

Suffice it to say that I’m quite happy with the result and this blog is now running with nginx (yeah!!!) and a cluster of mongrels on a fined tune gentoo vps (I’ve kept detailed notes that I will share soon).

I’ve also ported the Brighthouse theme by Richard White to Mephisto and will add it to the Mephisto Theme Gallery as soon as I get to clean it up and remove the nano RAILS specific stuff. In fact, I’m curious as to whether you would rather have the theme with AdSense and TextLinkAds:http://www.text-link-ads.com/?ref=14245 (aff) included, or maybe the ability to turn them on/off?

Also new is the Archives page, and hopefully the new error page will help people find what they were looking for.

Posted in News  |  Tags ,  |  7 comments

Take back the web

Posted on Mon Mar 26 20:28:00 UTC 2007

Today was not a good day for the internet. First I read Seth’s post, then Kathy’s sad and upsetting story directly. Then countless others...

This is just plain and simple not acceptable behavior. Period.

Brad nails it when he says:

Kathy’s story sealed it for me – reputation and trust are at a tipping point and are an issue that is going to have to be dealt with in 2007.

I agree.

And before someone mentions it, no, censorship is not the solution here.

Seth once said:

Have you ever noticed that people you know are far less likely to cut you off in traffic, curse at you, or steal your parking space than treal strangers seem to be? There’s a reason: Anonymity is the enemy of civility.

(From Small is the new Big)

Maybe it’s time we bring civility back, don’t you think?

Kathy, hang in there! We are here to help.

Posted in News  |  Tags  |  1 comment

Brace for impact!

Posted on Fri Mar 23 15:02:00 UTC 2007

Tomorrow might prove to be interesting! So fasten your seatbelts…

Paul Hirsch, a moderator on WebHostingTalk.com got wind that hacker Billy Hoffman with SPI Dynamics is going to do a talk tomorrow at Schmoo titled: “Javascript Malware for a Gray Goo Tomorrow”.

He created Jikto, a web scanner written in javaScript:

This homogenous platform, coupled with JavaScript’s new features has enabled attackers to perform advanced attacks using XSS that were thought to be impossible even 2 years ago. Self-propagating XSS+Ajax worms, advanced keystroke and mouse loggers, port scanning, fingerprinting, and assaulting intranet applications, as well as stealing search engine queries or browser histories are now all components in an attackers toolbox.

If this does not concern you just a bit, I’m not sure what could…

The good news? Well, he’s not going to release Jikto, at least not yet…

But this will definitely bring XSS in the forefront.

Posted in News  |  Tags ,  |  4 comments

Charlie Rose talks with Bill Gates

Posted on Thu Feb 01 18:13:00 UTC 2007

56 minutes, not one boring moment! Charming, insightful, fascinating, I’m just so impressed by those 2…

And I’m glad I took the time to watch them and so should you if you didn’t already

(via Search Engine Journal, from PBS on 11/23/06, courtesy of Google Video)

Posted in News  |  Tags ,  |  0 comments

Out with Dream Host, in with Rails Playground

Posted on Mon Jan 15 19:25:00 UTC 2007

Well, well, well, almost a year after signing up with Dream Host, after going through many turbulent times, trying to fix things up myself, and again, surviving an unannounced, and not so welcome upgrade, after hoping for mongrel support, it really came down to a severe case of overselling. Performance had become abysmal, database connections hard to come by, site was down for longer and longer periods of time. Sometimes several hours without much I could do to revive it.

Don’t get me wrong, not all overselling is bad as long as it is managed properly. In my case, it came down to cpu and resource usage (database, memory). I mean, a rails application like typo is no small app. It routinely had 3 fcgi processes, each 70Mb plus, which on a 4 Gb machine is over 5% of memory, ouch! A good thing that not everyone there runs typo! But I don’t think that was the problem though. On average, the load of the machine was between 10 to 20, which is high but could be sustainable if it wasn’t for the fact that cpu usage seems to be above 90% all the time. This does not give much for a little boost when needed. And on that front, Dream Host needs to make some improvements quickly!

To be honest, this does not seem to be a big issue to run something like wordpress and my other sites on the same machine seem to be doing just fine and I don’t plan to move then anywhere anytime soon. I mean, it is hard to beat the amazing storage space and bandwidth allotment.

So with all that in mind, it was time for a new host! I knew what I wanted:

  • mongrel support
  • ssh support
  • no need for extravagant bandwidth
  • no setup fee, reasonable month to month cost

To find the best contenders, I used Google and the Hosting page on rubyonrails.org.

The best fit: Rails Playground. This post is hosted there, and so far, so good. For $12/month, that looks like a very competitive plan for a rails app. Granted I can only run one app with 2 mongrels, but that will do great for now.

The transition went really smoothly, all things considered.

First thing was to export the database, and I hit a first snag trying to get the data. I could not get a database connection to dump the data, fortunately, I was able to do the export using phpMyAdmin.

On the Rails Playground side, it came down to setting up a database, importing the data, setting up Capistrano, and putting out a request for mongrel setup. Less than a couple hours works and the request for mongrel setup was completed overnight.

Then the only thing left was to switch dns (so the old site was still up, at least as much up as it can be while the dns change propagates), and that’s where the only hitch happened. I ran into a perl error on the Dream Host control panel. Nothing their support couldn’t solve, and an hour later the whois database was updated, and dns servers all over started to pick up the change, and Voila! Rails Playground, here I come!

I now have the distinct (ahem… cough) advantage of having the 2 biggest processes running on this new machine but shush, don’t tell anyone…

And what a difference this makes. Average cpu usage seems to be below 5% and so far, not dreaded 500 error page :)

Note: if you read this via RSS, this may get delayed because as I write this, FeedBurner is still polling the old site. Hopefully this will update by tomorrow.

Posted in News, Rails  |  Tags , , ,  |  11 comments

Want to join 9rules?

Posted on Tue Oct 24 12:32:00 UTC 2006

Here’s your chance. Starting at 9pm Eastern time (that’s in 90 minutes), you have 24h to submit your blog, so don’t delay!

For more details, read the official announcement.

If it is past 9pm EST already, you submit directly on the submission page .

Posted in News  |  Tags  |  0 comments