What happens when your code breaks in production? If you have Honeybadger you'll be alerted with crucial details like the error location, the data being processed and the affected users. So you can deploy a fix quickly and get back to coding. Learn more.

RubyFlow The Ruby and Rails community linklog


The Ruby and Rails community linklog

Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!

Looking for 1001 Ways to Promote my Free Ruby eBook

I am looking for ways to promote my Free Ruby eBook. I have come up with some ideas. Some zany, impractical and okay maybe a bit stupid.. but some are simple, fun and easy to do. Will you help me come up with even more? Any idea is acceptable… this is just a fun brainstorming session - to spread the free Ruby eBook as far and as wide as it can go!


I think it mainly depends on the quality of the book. If the quality is good, people with tell each other.

If you want more people to check out your book you should make it easier to download. Remove the requirement to sign up and just have a direct download link.

Seconded. Locking stuff up doesn’t do anything for me. You gain more from releasing things for free (if the product is free itself) unless, of course, a mailing list is extremely valuable to you (which may well be the case here).

Good point Peter. I have it locked mainly for the mailing list and as a way to know the number of downloads but then you are making me have second thoughts. Any other way to know the number of downloads?

In terms of tracking the downloads from your actual site, you can see that in your log files or by making a small CGI script that sits in the middle that tracks the download numbers.

For example: http://yoursite.com/download_ebook.cgi .. then that CGI (or a PHP script - more likely nowadays) would just do a Location redirect to the actual PDF file while updating a number in a database or something (would be pretty easy if you used a plain text file or SQLite, etc.).

For tracking downloads, another way could be to use Google Analytics (GA). Rough outline of the steps:

  • Create a web page for the book (or modify the one you have).

  • Sign up (free) for GA at http://www.google.com/analytics and then create a web site profile for the book’s site/page.

  • Install the GA JavaScript code snippet on that page. The GA analysis of the page will get activated in a short time.

  • Keep checking the analytics data by logging into your GA account every week or so.

Some pros/cons of this approach:

  • not sure for how long Google keeps the data, but it is for a year at least.

  • you don’t have to write that CGI/PHP program (not a big deal, but will save a little time, also in the maintenance of the program later). Also, using GA means the site on which you have the page for the book, doesn’t have to support PHP/CGI, just HTML and JavaScript.

  • GA can show the data by different date ranges that you can specify, can show the referring sites, countries/cities from where the visitors came, various other info

  • GA has charts so you can get visual reports in various forms about the downloads / accesses to the page.

  • you can export the GA data as CSV etc. for storage / further analysis

  • you can spot trends - e.g. can see if any blog posts of yours about the book lead to a spike in downloads

  • Vasudev Ram

Post a comment

You can use basic HTML markup (e.g. <a>) or Markdown.

As you are not logged in, you will be
directed via GitHub to signup or sign in