Ad/Banner Management/Rotation for Ruby on Rails? - ruby-on-rails

I have a niche site that I'd like to sell banners for directly, rather than going through adsense. I need a system to manage the whole process: displaying ads and an administrative interface to manage them. It doesn't have to be anything terribly fancy, although open source is greatly preferred so that I can grow the system as needs be. Since the site itself is in Rails, I would prefer something for that environment. Googling turns up bunches of them in PHP, but the results are a bit polluted and I didn't have any luck finding one that was done in/for Rails.
If I don't find one, I suppose I'll see what I can do to hack together something and release it myself under an open license.
Another possibility is this: http://www.google.com/admanager - anyone have anything to say about it? Is it right for someone just selling a few ads for a not-so-big site?
Thanks,
Dave

The company I work for has several Rails projects. We searched for a Rails banner management system but we didn't find any commercial/open source project available.
We integrated Google AdManager and I have to say it's definitely a good choice. It lacks some advanced features available in Openx, but we didn't miss them for our projects.

There really aren't any full-featured rails advert managing tools.
I created one gem/engine that helps to manage and render different banners and placements on depending parameters that you set when rendering your views in rails, see:
https://github.com/holli/advert_selector
For simpler setups with consistent banner sizes and targetings, you should probably use dfp: http://www.google.com/dfp/info/sb/index.html

You can give this rails-ad-server a try. Please give us all a feedback too.
http://github.com/coolblade/rails-ad-server

Dave,
we have recently released AdServerBeans MyAds v.0.4 (http://www.adserverbeans.com) which you might be interested to take a look at. It's open source and we position it as an alternative to OpenX.

Related

Is there a rails gem like ActiveAdmin for building an entire data-driven site?

I recently used ActiveAdmin for the first time to toss together a very quick admin panel for a friend's site and was incredibly impressed with how incredibly fast and simple it was to set up, and how nice it looked right out if the box.
I always find little projects that could benefit with a central website to coordinate information, and I was wondering if anyone knew of a similar gem for snapping together an entire website in this same super-simple, fast and nice-looking way. Something generic that would work particularly well for websites that have structured content/data, but no real "business logic" (for example, something that could be used to organize/display/update information & event schedules for a neighborhood voulteer group, PTA bake sale, bar trivia night, etc)?
I know I could just scaffold out everything and have it be purely functional in five minutes, but that isn't the kind of thing you can expect a PTA bake sale mom & friends to use, and I don't really have the time to devote to this kind of thing, I'm just doing it to be helpful.
I'm particularly interested in something that can be casually thrown together in an hour or two without a great deal of effort (a la ActiveAdmin) and pushed up to heroku, but has enough clean, pre-canned styling and interactivity to look clean and nice right out of the box (javascripty drop down menus, reasonable page content presentation, etc).
I know there are non-rails answers for this, but I'm particularly interested in rails (or even just ruby), so I can add bits and pieces from time to time.
I did some google searching, but unfortunately I'm not sure what to even search for, which leads to question 2: are there any curated repositories of gems of this kind where I can browse first before asking on a site like this and taking up people's time?
In both cases, thank you very much for the help and education!
I'm a big fan of Typus: http://rubygems.org/gems/typus.
It's more flexible than ActiveAdmin. The out-of-the-box configuration is not so good.
But the flexibility trade-off makes it more useful for data driven sites. It also supports several types of authentication, and has it's own role management system.
Try your pick from the Content Management & Blogging section on ruby-toolbox.com as Brian suggested.
Refinery CMS is quite a nice CMS-System. There are a couple of Engines available to solve a few common problems.
But the truth is there is nothing in the rails world compared to what you get with wordpress (ease of use, extensibility etc.).

Should I refactor with hobo?

I have a created a userdriven gallery with Ruby on Rails.The site is using a few plugins to create friendly links, permissions, pageless pagniation etc. The application controllers and views has gotton quite complex and I find it difficult and very time consuming to work with. So I thought about rebuilding the app with hobo, as it includes all the user and permission logics and another template system. However I am affraid that I will be to limited, or maybe not win anything becasue I will loss a lot of time hacking hobo. I am planning to add frinedships and personal messing to my website. Could this be to compelx for hobo? Does hobo use jquery?
Best regards.
Asbjørn Morell.
Hobo is not that complex, however you would need to study documentation which takes some time. But, in the long-run any refactoring such as Hobo could help, if the code is currently getting unmaintainable.
JQuery can be used in any sytsem as it is independent of script frameworks etc. AFAIK,
No one can tell you if Hobo will help your specific program.
That said, I have been using Hobo for a while and I have found it to be very effective. It handles a good part of the standard rails logic every site needs (such as routes). The dryml system has been useful in my work as well, reducing the size and complexity of my views.
If your code is becoming unmaintainable and you feel a refractor is necessary, you could definitely do worse than Hobo.
i have been building a few hobo apps and they work rock solid, problem is dryml is quite peculiar and you must learn and do a lot of test and try, but in the end it allways comes along quite nicely. i recommend you start quickly with hobo and you will end up faster..!!

What is your favourite Rails admin tool and why?

What is your favorite Rails admin tool and why? By admin tool, I'm referring to those that let some users add records for all the tables, like the tool shipped with Django.
This question is subjective and I believe the matter is subjective, but I think it would still be nice to be able to read other people opinions and gather data on the strength of each tool. Feel free to also comment on why you are not using a particular tool.
Looking around I've seen these ones:
Streamlined
Typus
admin_data
active_scaffold
full list
I think it would be excellent if there was one answer for and one answer against each tool and we just add information to each of them, in a very encyclopedic way, but I'm not sure if that's doable. Of course, this question is a community wiki.
In my experience Streamlined, Active Scaffold etc. often ends up limiting you and slowing you down in the long run, although it can be very efficient in the short run.
By combining the Inherited Resources and Formtastic plugins you can produce controllers and forms for your models just as fast as with a full-stack admin tool plugin, and it will leave you with greater flexibility and extensibility.
The tradeoff, however, is that neither of these plugins will give you the fancy lists that the admin tools give you. So as you say, it is indeed a matter of taste.
I've been using admin data in my last few projects and find it far superior to ActiveScaffold. When I used AS, it was always trying to do too much and that led to some problems. Admin data is completely non-intrusive. When it can't handle something in your data, it just displays a message instead of breaking your app.
I've been using ActiveScaffold for awhile. I feel that I have pushed its limits fairly far and it reacts pretty well (i.e. it's pretty robust). I customize it considerably so that non-technical users can jump in and manage their own websites with it. Those who take the initiative to work with it seem to like it. I do find the default interface confusing at times but you could change that completely if you wanted. AS is very customizable. On the downside, I've definitely grappled with my fair share of AS bugs, but the project does improve and I'm satisfied with its results. I have never even heard of the other admin systems you posted, but Typus and admin_data look nice. My biggest concern would be how easy I can customize them for use by non-techs.
I myself have used active_scaffold quite a bit and like it for certain tasks but I believe its niche is for power users not for mortals per se.
Streamlined was an interesting option but is officially unmaintained now which sucks. It really was a beautiful product but it never really seemed to get a lot of attention from the community so maybe they gave up on maintaining it publicly.
I've also not used Typus and admin_data but I ran into some references to Typus last night so clearly some very smart people are looking at it very hard.
On a last note, I think this blog post really summarizes an opinion I've come to recently after working with a Drupal firm for a bit. I believe that the reason admin interfaces haven't received the same amount of love is that Rails is built primarily for applications rather than content, which means that the people looking at backends are typically not mortals or can stand to look at an ugly backend.

Should I create a blog in rails or use something that already exists?

In my next rails project I'm going to need blogging functionality. I'm wondering whether anyone has any good suggestions, or should I just roll my own? (Probably not in 15 minutes)
I think the most important feature will be to display code samples elegantly.
How's your free time?
Five years, that's how long that little idea took. Plus 2 years of adding bells and whistles. And that, folks, is why I'm giving in and using a blog host. Because I have lots of ideas, lots of things to say and to explore, but only a few dozen years left at best. I can't afford to go chasing every 5-year idea that springs to mind. After due consideration of the crap web frameworks and crap blog packages out there, I decided that I don't want to spend my next 5 years implementing my vision for a decent self-publishing system. Someone else can do it.
http://steve-yegge.blogspot.com/2006/03/blog-or-get-off-pot.html
It's a classic build-versus-buy (or, in this case, download for free) decision isn't it?
Write up the feature set of what you are looking for.
Survey the offerings out there to see how close a fit you have.
For the one or two products that is the closest fit, evaluate whether or not it would be less effort to write your own solution or customize the offering to do what you need.
If all you need is a blog site, then this is a no-brainer. Use WordPress and that's it.
If there are other features for this app and blogging is just one of them, then consider writing an app around WordPress. It is just a PHP application using MySql after all.
If WordPress has features or does things that you don't want, then maybe you do need to roll your own.
If the most important feature for this site is that it is to be written in RoR, then roll your own or find a RoR based blogging app as WordPress is not written in RoR. I haven't really done the homework on this but I would imagine that getting PHP and RoR to share session state would be a time consuming hack.
Rolling your own blog is a great project (and quite fun too!), but for practical usage, using something pre-made is going to be more secure, have more cool features, etc. etc. Unless you're incredibly dedicated, you'll probably end up cutting corners and end up with something that isn't quite what you want.
Despite being a Rails guy myself, I'm a huge fan of Wordpress. If you're looking for Rails-based blog engines, I've had luck with Mephisto, although the documentation leaves something to be desired. Radiant CMS is another CMS/Blog system that might be worth looking at.
A lot of Ruby/Rails developers have actually gone the route of using static website/blog generators. This has a few advantages. First, the pages are static HTML with no dependency on a database. This means they can be served by your front-end Web server (Apache, Nginx, etc.) faster than if they were to go through Mongrel, Thin or Phusion Passenger. Secondly, the pages will be easier for search engines to index. Finally, and probably most importantly, you can easily version control your posts using Git (or your favorite SCM)
I switched my blog over to a static model after development on Mephisto seemed to stall. I am using Tom Preston-Werner's Jekyll and Disqus for the comments. Works great. Give it a try!
If you are just looking for a project, then building your own blog engine is a good start.
Personally, though I have been a full-time Rails developer for the past 3 years, I still use and recommend Wordpress for myself and others.
If the project is to write a blog, don't roll your own. There are plenty solutions out there that will solve this problem for you while you worry about pumping out great content.
You will end up spending to much time futzing with the little things that don't really matter.
Probably there are tons of those.
For example, Rastafari, or Enkiblog.
In my next rails project I'm going to
need blogging functionality. I'm
wondering whether anyone has any good
suggestions, or should I just role my
own? (Probably not in 15 minutes)
I wouldn't recommend rolling your own blog system. You should look into using Radiant CMS with a blog extension.
I think the most important feature will be to display code samples elegantly.
For this I can recommend looking into SyntaxHighlighter.
All depends on your goal:
If it is for learning purposes and it's for fun, code it from scratch. Also, try to add new functionality that you will not find in current blogging platforms. For example, make in a way that is easy for a developer to blog tutorials or screencasts.
If it's for a client or just to blog, use wordpress. You can have your site in ruby and then link to wordpress. Think about it, how many human hours are behind wordpress so for you to match that you will need to work full time on it for 8 years.
Wordpress will work out of the box and then periodically you can tweak it, depending on future needs.
I agree, for fun and learning, code from scratch. But consider coding something people really need and don't already have. Innovate.
There are so many excellent blog platforms out there, and some (like Wordpress) have active developer communities writing hundreds of useful and powerful plugins. And that includes some excellent support for code samples.
No need to reinvent the wheel.

What Rails plugins would you like to see?

What behavior have you had to implement in your Rails applications that you feel could exist nicely as a plugin?
What plugin functionality have you searched for in the past but couldn't find?
What existing Rails plugins could be improved or extended, and how?
I'd like to see an engines plugin that dropped in an admin interface that provided a dashboard summary of all the models in the app, with configurable activity charts.
I once wrote a component for an application that did uploaded a zip of photos to an application so they didn't have to be done one by one, I think I may make that into a plugin when I have time, well a new version of it, the code's a little ugly.
Not easy to answer. Everyone is biased towards his own current projects. Additionally a lot of great plugins already exists.
Personally I would like to see some menu plugin for a typical data base application. E.g. where there are few user roles, and every user role has different rights. And a main menu with sub menu which depends on user's rights to actions.
A (CSS) menu is reimplemented in almost every data base application. It is rather given application specific thing and I don't know how hard it would be to implement some general solution or template.
A Credit Card Payment System
Right now, no one bothers implementing credit card payments until a site has become "production quality". Single-person projects or small startups don't bother making this at first b/c they would much rather spend their time prototyping new, hard, or interesting features.
This is bad in the long-run for everyone, including end-users, b/c the default is to offer (often innovative and really great) services for free, which means only already-funded teams or people with lots of extra time can even get to the point of making something.
If this existed, were packaged up neatly, and were as dead-simple as Rails scaffolding, small projects could default to whatever payment scheme that actually made sense -- like pay-per-use, donations, trial periods, first 5 free, etc. -- making it possible to fund the really great products out there, instead of forcing them to rely on outside funding or ads, which ruins the product.
In a real physical store, people expect to pay. If the person on the other side of the counter gives me something for free (w/o buying anything at all), I say "Are you serious??" and walk away bewildered. But online, I almost expect it. This is bad! Because now everyone expects it, and people trying to make great things can't focus on actually doing that b/c they are too busy trying to figure out how to make it great and free.
Oftentimes, there are free things out there online that I like so much that I would like to pay for, but there's simply no easy way to do it. And I'm not alone. I use tipjoy and have donated to things that have a PayPal donation setup like Auditorium, but I don't see these as adequate.
The best thing out there that I've seen is RailsKits. But as far as I understand, they aren't packaged properly so that I can add them to my site whenever I please like a plugin or gem.
I'd like to see some sort of in-built video playback/streaming. I need it for my current project.
I agree with Greg... there are lots of great plugins, and lots of great ideas for more.
I think there's always a need for more web APIs to be supported. As we go forward with API driven services and semantic web, there's tons of work to be done on that front.
http://www.programmableweb.com/ is a great starting point for thinking about what really useful APIs don't have a rails plugin or ruby gem yet.
Cheers!
Walt

Resources