Ruby

  • add this feed to my.Alltop
    RubyFlow
  • State of Ruby VMs: Ruby Renaissance

    20 Nov 2009 | 2:05 pm
    There are 8 alternative Ruby VM's and 4 of them will hit 1.0 status in the upcoming year. A detailed look at the past year and where the community is heading (hint: it's an exciting time to be a Rubyist).
  • The State of XML Parsing in Ruby (Circa 2009)

    20 Nov 2009 | 1:19 pm
    Nick Sieger asks - it's 2009: are we through dealing with XML yet?
  • SmallRuby: Ruby implementation for Smalltalk/X VM

    20 Nov 2009 | 12:25 pm
    SmallRuby is a new Ruby implementation for the Smalltalk/X virtual machine. On some selected benchmarks, SmallRuby trumps existing Ruby implementations 10-40x performance-wise (though take this with a pinch of salt for now). This is a project worth watching..
  • Setup REE, nginx and Passenger on Ubuntu

    20 Nov 2009 | 11:25 am
    A short guide on setting up Ruby Enterprise Edition (REE), nginx and Passenger, for serving Ruby on Rails applications on Ubuntu.
  • G: Like Kernel#p but outputs to Growl on OS X

    19 Nov 2009 | 9:28 pm
    "g" is a new library that provides a global "g" method that you can use to inspect objects much in the same way as Kernel#p. The difference is that the output goes to Growl, a popular OS X global notifications tool. It's technically an easy gem install and go, but if you have problems with it not finding Growl, this blog post about getting ruby-growl working should salve your distress.
  • add this feed to my.Alltop
    Collaboration and Transparency Blog
  • Tony Hsieh, CEO of Zappos, B.I.G. Summit Keynote

    Robert Dempsey
    20 Nov 2009 | 11:00 am
    This is a video of Tony Hsieh, the CEO of Zappos, delivering his keynote at the B.I.G. Summit in Orlando, Florida.  In his keynote, Tony talks about the company culture that helped grow Zappos from a $1.6M company to a $1B+ company. In my opinion having interviewed Tony, he is one of the rarest CEO’s I’ve ever met. Regardless of his success, his mission appears to be inspiring people to be great, and creating environments that help make that happen. Pay careful attention to his closing remarks, and let me know what you think. You can follow Tony on Twitter, and learn more about…
  • Employees Are Not Expenses

    Robert Dempsey
    20 Nov 2009 | 7:00 am
    When a business views their employees as expenses trust is broken. In many companies, especially larger ones, people are seen as a labor expense to be managed. The bigger the company, the worse the problem. Companies need to focus on helping their people achieve their goals, and thus achieving the goals of the company. What do you think?
  • Advice for Entrepreneurs from Tony Hsieh, CEO of Zappos

    Robert Dempsey
    19 Nov 2009 | 2:45 pm
    Tony Hsieh, the CEO of Zappos, was kind enough to take a few minutes after his keynote at the B.I.G. Summit to gives his advice to entrepreneurs on what they should focus on. You can follow Tony on Twitter, and learn more about his company Zappos.
  • Interview with Ted Murphy, Entrepreneur and CEO of IZEA

    Robert Dempsey
    19 Nov 2009 | 11:31 am
    Ted Murphy, an entrepreneur and CEO of IZEA, gives his advice to other entrepreneurs on starting a business and making it happen. Follow Ted on Twitter, or learn more about him by following his blog.
  • Can you be *too* DRY?

    Justin Blake
    19 Nov 2009 | 8:21 am
    I finally came across this post on why Resourcelogic was discontinued, and it pretty much outlines all the reasons I’ve never felt comfortable using these types of libraries. Libraries like Resourcelogic, inherited_resources, resource_controller, etc. All of those things that handle the “standard” restful logic for you behind the scenes, and provide hooks for handling edge cases. I think Ben sums it up when he says: “Who said more code is bad when it makes more sense?” Read the post and let me know what you think. Is this a case of being too DRY? I think it is.
 
  • add this feed to my.Alltop
    Ruby Inside
  • 5 Top Ruby and Rails Jobs for November 2009

    Peter Cooper
    19 Nov 2009 | 10:49 pm
    Looking for a Ruby or Rails job in this economy? They're still there! They seem to be getting posted daily on jobs.rubynow.com but we've got 5 of our own that have come in via the Ruby Inside jobs board. If you want to post a job to our job board check out our new Post A Job page. It explains it all. It's $249 for 60 days of exposure with a link on all Ruby Inside and Rails Inside pages, exposure through Simply Hired, and inclusion on a post like this that goes out to all 22,000 subscribers. Most ads get 1-2,000 direct views during their run (and linked from about 240,000 pageviews on our…
  • MacRuby 0.5 Beta 2: AOT Compilation, Rack & Sinatra Support, And More

    Peter Cooper
    18 Nov 2009 | 7:00 am
    MacRuby, a port of Ruby 1.9 to the Mac OS X Objective C common runtime, is today one step closer to a production-ready Ruby implementation with the release of beta 2 of MacRuby 0.5. MacRuby 0.5 has been highly anticipated since it was first mentioned back in March because it promises significant performance improvements, a new LLVM based virtual machine (replacing YARV), and significant compatibility improvements and bug fixes. Even still at this beta stage, 0.5 delivers on these promises. New in MacRuby 0.5 so far: rdoc and ri now work - thanks to compatibility bug fixes Rack and Sinatra…
  • Torquebox: An All-In-One Java/JBoss Powered Ruby Webapp Platform

    grantmichaels
    11 Nov 2009 | 3:43 pm
    In the past two years we've seen a number of changes in the world of Ruby webapp deployment, but have you heard of Torquebox? Built upon the Red Hat Inc. JBoss middleware, Torquebox is an enterprise-grade application server that provides scale-oriented services to your Ruby webapps, including turn-key clustering. With its latest release, Torquebox supports all Rack-based Ruby frameworks. Torquebox comes with job scheduling and asynchronous task scheduling out of the box (no extra installs necessary), and while I've grown fond of RabbitMQ, the ease of using the built-in JMS (Java Message…
  • Mail: An All New Ruby E-mail Library

    Peter Cooper
    11 Nov 2009 | 7:02 am
    To date, the main ways to send e-mails from Ruby have been Net::SMTP, TMail, and Rails' ActionMailer (which uses TMail). Now, however, there's a fourth option, the simply named "mail" by Mikel Lindsaar. Mail is a new pure Ruby library designed to handle the generation, parsing, and sending of e-mail in a "Rubyesque" manner. Both the sending and receiving e-mails can be handled through the library and, where necessary, Mail proxies methods from libraries like Net::SMTP and Net::POP3. Ruby 1.9 support has been built in from day one so dealing with different text encodings in your e-mails is…
  • Interesting Ruby Tidbits That Don’t Need Separate Posts #29

    Peter Cooper
    9 Nov 2009 | 7:09 pm
    Welcome to the latest installment in the series of compilation posts summarizing some of my latest findings in the world of all things Ruby. Let's tackle those links.. Alchemist: Easy Unit Conversion in Ruby Alchemist is a new Ruby library that aims to take the pain out of performing translation with day to day units, such as miles, kilograms, kelvin, meters, and becquerels. There are a few ways you can perform conversions such as explicitly with a method: 8.meters.to.miles or inline: 10.kilometers + 1.mile. The library's source code is quite something to look at - there are units I've never…
  • add this feed to my.Alltop
    Railscasts
  • Episode 188: Declarative Authorization

    Ryan Bates
    16 Nov 2009 | 12:00 am
    Declarative authorization provides an advanced and powerful solution for role based authorization.
  • Episode 187: Testing Exceptions

    Ryan Bates
    9 Nov 2009 | 12:00 am
    Sometimes bad code slips into production and triggers a 500 error. Learn how to be notified of this and resolve it through integration tests.
  • Episode 186: Pickle with Cucumber

    Ryan Bates
    2 Nov 2009 | 12:00 am
    Pickle adds many convenient Cucumber steps for generating models. Also learn about table diffs in this episode.
  • Episode 185: Formtastic Part 2

    Ryan Bates
    26 Oct 2009 | 12:00 am
    Learn about some of the more advanced functionality of Formtastic including handling many-to-many associations, required fields, and styling.
  • Episode 184: Formtastic Part 1

    Ryan Bates
    19 Oct 2009 | 12:00 am
    Formtastic is a concise way to generate form views. In this episode (part 1 of 2) I show how to generate both a simple form and a more complex one which is customized with options.
 
  • add this feed to my.Alltop
    Hivelogic
  • Meditation Gear

    Dan Benjamin
    18 Nov 2009 | 12:10 pm
    A big part of meditation — at least the kind of Buddhist meditation that I practice and have written about here — involves simplicity, letting go, and even asceticism on some level, so it might seem counterintuitive to talk about needing gear to practice. While it is certainly possible to meditate without any special equipment, there are a few things every meditation practitioner should have. A good cushion and a nice timer can really make a big difference in both how quickly you’ll be able to get comfortable, how long you can sit for, and how much you’ll look forward…
  • Meditation reduces your risk of heart attack by half

    Dan Benjamin
    17 Nov 2009 | 3:05 am
    The article discusses the heart-attack-reducing benefits of Transcendental Meditation (known as TM): Stress is a major factor in heart disease and meditation experts say the technique can help control it. [People] with heart disease who practised Transcendental Meditation cut their chances of a heart attack, stroke and death by half, compared with non-meditating patients, the first study of its kind has found. TM is significantly different from the kind of Buddhist meditation I practice and have written about, but it’s becoming more and more obvious that this kind of practice is…
  • DoesFollow Adds Twitter List Support

    Dan Benjamin
    5 Nov 2009 | 4:29 am
    If you’ve ever wanted to know if somebody is following you on Twitter, you could find out by using the handy DoesFollow service. A recent update brings support for Twitter’s new list capabilities, allowing you to check list membership as well. [Permalink]
  • Sitting, Standing, and Bouncing

    Dan Benjamin
    3 Nov 2009 | 6:07 am
    In my interview on The Setup (and subsequently on Twitter), I mentioned that I often stand while working, and that when sitting, I usually use a balance ball. To my surprise, a lot of people have contacted me wanting to know more about it. Rather than answer everybody individually, I thought I’d share the information here. Why work standing up or on a balance ball? I began working standing up a few years ago to help alleviate a back issue I was having, caused primarily from sitting too long with bad posture in an unsuitable chair. Sure I was in decent shape, stretching, and running 3.5k…
  • Dr. Weil: The Moral Ferocity of “Eating Animals”

    Dan Benjamin
    29 Oct 2009 | 5:05 am
    Lots of people from both sides are talking about Jonathan Safran Foer’s new book, Eating Animals, but I think Dr. Andrew Weil’s piece in the Huffington Post is worth a read. But if you still eat meat from factories […] you have not, by definition, absorbed the reality of factory farms. If you truly understood the nightmarish brutality of what happens inside these windowless animal jails and abattoirs that dot the American ruralscape, you simply would not eat this meat. Foer makes it clear that factory farming is the exceptional human activity that debases and destroys…
  • add this feed to my.Alltop
    Dr Nic
  • Making a pretty Firefox Beta application icon

    Dr Nic
    15 Nov 2009 | 2:41 pm
    Here’s the problem: I install OS X Firefox 3.6b2 along side Firefox 3.5. They are both in my dock. Their icons are the same. Um, which is which? How about a sexy Firefox Beta icon to separate what’s-what in the dock, Quicksilver, Spotlight etc? This post shows how to create a “beta Firefox” icon, install it into the Firefox 3.6b2 OS X application, and live long and prosperously. Installing Firefox 3.6b2 along side Firefox 3.5 I think these are the instructions for having two Firefoxes: Download the Beta DMG. Open it. Don’t just drag the Firefox icon into the…
  • Dead simple JavaScript Unit Testing in Rails

    Dr Nic
    11 Nov 2009 | 7:30 pm
    Formats: Video/Screencast (410 Mb, torrent) | Video only (vimeo) Start downloading the torrent now, read this article 37 times and the video might be ready to watch. Writing tests are great for helping you design and think out your code, and the bonus is you end up with a test suite to aide in fighting against regressions. Why? It’s embarrassing when your JavaScript doesn’t work in production. But how do you get started with testing JavaScript? How do you make it easy? I mean, so easy that you’d feel stupid to not write tests? And how do you know if your…
  • Hacking someone’s gem with github and gemcutter

    Dr Nic
    3 Nov 2009 | 10:44 pm
    Ever used a rubygem, found a bug, and just wanted to quickly bust out the big guns and fix it quickly? The gem command doesn’t come packed with a way to find the original source repository for a gem. At best, most gems at least come bundled with the complete source, tests and documentation. Some gems don’t. Fair enough, since having access to the complete source via the gem still doesn’t allow you to fix a bug and share it with the world. For that you access to the repo, a quick way to fork it, and a post-github way to share a gem version from yours truly. The github gem and…
  • First look at rails 3.0.pre

    Dr Nic
    2 Nov 2009 | 8:05 pm
    This article is out of date in some aspects. See comments. Today I had my first look at rails 3.0.pre and below are the sequence of steps I had to take to create a rails 3.0.pre application, and get it’s generators to work. Why was I looking at the top-secret, yet open-source Rails 3.0? Their generators are being migrated over to Thor and I wanted to see them in action. I was thinking I might migrate newgem to use Thor too. Here’s a quick poke around of getting started and interesting things I found. Any hiccups and workarounds are meant as a guide to pre-pre-3.0 users/developers…
  • During integration tests you might want to load public/ files

    Dr Nic
    9 Oct 2009 | 2:46 pm
    I’ve been wondering recently “If I cache a file in public/ how do my integration tests access the file?” By default, Rails’ integration stack only calls into the routes/controllers. So the following fails, ironically with a 404 error: $ script/console >> app.get '404.html' => 404 It should return 200. If I cache a file into public/ I want to be able to pull it back out during the normal course of integration testing. In integration testing, this problem manifested when I clicked a link to a cached asset, or an action redirected to a cached asset. Ryan Tomayko…
 
  • add this feed to my.Alltop
    techno weenie - Home
  • Structuring your background jobs

    rick
    This morning while dealing with a support issue, I asked this question on the twitters: Do you create a single (background) job for an event (AfterPostUpdated), or multiple jobs for tasks (SendPostEmails, UpdatePostCounts)? In Tender Support, updating a discussion spawned a job that looked something like this: class Job::CommentNotifications < Job::Base.new(:comment_id) def comment @comment ||= Comment.find comment_id end def perform comment.notified_users.each do |user| UserMailer.deliver_notification(user, comment) end end end (In case Evan asks, I am referring to a secret military Base…
  • New to the CAN: Widget, json fixes, etc

    rick
    I just pushed a new version the Calendar About Nothing: mtah fixed a problem with the JSON routes. Gah, totally my fault. jqr cleaned things up a little, patching broken windows, etc. One really nice thing: he fixed a potential infinite loop in feed processing. Kalin Harvey added a capfile. kastner. And the big update: lachlanhardy wrote a jQuery widget so you can post the calendar to your site. Thanks for the updates, everyone. Also, I’ve been working with the Heroku guys on getting the weird intermittent server error on IsLOSTOnYet up and running. I think it’s fixed now.
  • poetic tweets

    rick
    Saul Williams’ trek through the midwest between shows sparked some musings on Twitter. Driving from Denver to Kansas City. My mind travels at a faster pace than my body. I mark my way with words. If the newest technology enhances transparancy then this is an ideal time to share your process. Share how your mind works. How do you think? Do u associate w/negative thoughts and ideas? Are u cynical? What do u profess? What would u proclaim? Are you more concerned with like-minded agreement? Are you a naysayer? Perhaps, like me, you raise questions… But who am I fooling? is this viral voice my…
  • WTF does that cron do?

    rick
    I’ll be the first to admit that I’m not a great system administrator. I was a windows guy for so long, so my only exposure to linux was haggling with shared hosting accounts to run my stupid php apps. While my linux/administration skills have grown by leaps and bounds in the last few years, I still get caught up on something as simple as cron jobs. The syntax is very terse, and probably easy to parse for computers. For the rest of us… Well, what the hell does this mean? */6 * * * * rake ts:index:delta According to my new project, CronWTF, that “runs rake ts:index:delta at minutes :00,…
  • How to get hired by ENTP

    rick
    At ActiveReload, our question was “How good are you at Gears of War?” Will qualified with flying colors (he was 100th in the world). Last year as ENTP was starting, it was “How good are you at Rock Band?” Towski impressed us with his killer Chris Cornell impersonation. Now, we’re looking for that person with elite Korg Kaossilator experience. Is that someone out there?
  • add this feed to my.Alltop
    RailsTips - Home
  • Config So Simple Your Mama Could Use It

    john
    10 Nov 2009 | 3:00 am
    In which I clog a bit of code for simple application configuration. Tonight, Kastner asked me if I had anything to do some simple configuration for something he was working on. I’ve got a simple module and yaml file that I’ve been using so I gist’d it. It then occurred to me that I might as well share it here too. The Yaml Below is an example of the yaml file. Basically, I setup some defaults and then customize each environment as needed. DEFAULTS: &DEFAULTS email: no-reply@harmonyapp.com email_signature: | Regards, The Harmony Team development: domain: harmonyapp.local <<:…
  • You're An Idiot For Not Using Heroku

    john
    8 Nov 2009 | 9:17 am
    In which I discuss my first experience with Heroku and my second. And how awesome it is. It is true. You are. Go try it now. That is an order. I can wait for you to come back and finish reading this post. I could end the post now, but I suppose I’ll go on and tell you a bit about my experience with Heroku yesterday. Formerly a Toy in the Cloud Wynn and I were talking yesterday about how, back in the day, Heroku seemed like a toy in the cloud. They had a rich code editor and you could magically create and deploy applications that sometimes worked. It was neat, but nothing you would use for…
  • Know When to Fold 'Em

    john
    3 Nov 2009 | 4:22 pm
    In which I relinquish the day to day maintenance of a few of my projects. I have a lot of projects. Each time I feel pain or inspiration, I’ll whip together a new library and release it as a gem. It is fun and I love it. It is even more fun when people come along and use those projects to do cool stuff. This in turn, inspires me to write more code and release more projects. It is a vicious cycle. A while back, I caught myself making jokes about how I don’t even use my projects. I can barely remember the last time I actually used HTTParty, HappyMapper, or the Twitter gem. Not too long ago,…
  • More MongoMapper Awesomeness

    john
    9 Oct 2009 | 6:46 am
    In which I dish on the latest MongoMapper features like dirty attributes, time zone support, custom data types and dynamic finders. September was a month of craziness and for the first month in quite a while I did not post here. I promise it hurt me as much as it hurt you. In an effort to get back in the rhythm, I am going to start with an easy article. MongoMapper has been getting a lot of love lately and I thought I would mention some of the awesomeness. Dynamic Finders Dynamic finders are so darn handy in ActiveRecord. How many times have you used User.find_by_email and the like?
  • Lookin' on Up...To the East Side

    john
    20 Aug 2009 | 7:10 am
    In which I provide an enormous amount of examples to explain Ruby’s method lookup path. I am currently reading the Well-Grounded Rubyist by David Black. It is a great book and reading it reminds me of things I was confused on when I started in Ruby. One of those things was the path Ruby uses to figure out which method to call when inheritance and mixins are in play. As I read it last night, I thought I should post about it, so here it goes. Let’s start with a simple class. class A def foo puts 'foo in A' end end A.new.foo # foo in A Inheritance That was pretty straightforward. Next up…
  • add this feed to my.Alltop
    Jay Fields' Thoughts
  • Polyglot World

    3 Nov 2009 | 7:06 am
    At QCon 2008 Steve Vinoski told me he uses at least 4 languages pretty much every day. At the time I thought 4 seemed like a lot of languages to use. Are we ready for a world where programmers need to know so many languages?If you think about building a web application, you probably need to know a server-side language, HTML, Javascript, CSS, SQL, etc. Of course, there's no easy way to draw a line and say that those are, or are not all languages. I'm not sure the distinction matters, what does matter is having effective tools to get your job done. Maybe 4 languages isn't surprising.I've worked…
  • Refactoring: Ruby Edition available.

    21 Oct 2009 | 6:08 pm
    Refactoring: Ruby Edition is available (and In Stock) on amazon.com.Sorry it took so long, I hope it is worth the wait.© Jay Fields - www.jayfields.com
  • Pressure, Expressed in Initial Development Time

    10 Sep 2009 | 6:18 am
    def Initial Development Time: In software development projects, initial development time (IDT) is the length of time it takes from the project's first line of code until the business derives notable value from it.I've done plenty of projects in my career, some with an IDT of a few months and some with an IDT of a year or more. Based on those projects I've decided that I like the following equation to express the pressure felt by a team at any given moment during the IDT.pressure = Fibonacci(current month of IDT)note:This equation assumes all other variables are normal. Obviously a team that…
  • Staying Current: A Software Developer's Responsibility

    20 Aug 2009 | 6:44 am
    I have a personal hatred for weekend conferences*. To me, a weekend conference ensures that I'll be "working" for 12 straight days.I understand that opinion isn't universal. Some people have problems getting time "off" to attend conferences. These situations feel like a fundamental misunderstanding of a software developer's responsibilities. Part of your (software developing) job is staying up on current technologies. That means doing some research during your day.(almost directly stolen from Ward on technical debt)If you spend your entire day coding and never looking at new things, you…
  • Macros Facilitate Expressive Code

    17 Aug 2009 | 8:38 pm
    Someone once asked me if I thought Clojure was more expressive than even Ruby. I didn't have enough information to form an opinion then, and I still don't now. However, I recently noticed something that led me to believe the answer could actually be yes.I was looking through the code of clojure.test on Friday and I noticed something interesting. In clojure.test, the form(s) passed to the "is" macro are wrapped by a try/catch. It caught my eye because I often want to do the same thing in other languages, and usually I have to settle for much less elegant solutions.Here's a bit of example code…
 
  • add this feed to my.Alltop
    Bruce Williams
  • Joining Reductive Labs

    Bruce Williams
    I’m happy to announce that I’ll be joining the great group down at Reductive Labs, the makers of Puppet, later this week. I’m really excited about the job switch; Puppet’s been in wide production deployments for some time, and it has a large, active open source community that’s grown up around it. The company has the startup flavor that I enjoy, a product that progressed past vaporware and dreams of rainbows and unicorns to become something real and useful to scores of people, and it has a cocktail of varied and compelling challenges to whet my appetite. I look…
  • Ashes to Ashes

    Bruce Williams
    FiveRuns became one of the most prominent brands in the Ruby on Rails ecosystem over the last few years; a frequent sponsor of conferences and the source of a number of Rails-focused products and open source projects… but within months of going into beta with their latest product, Dash, a cascading set of EOLs were announced: the TuneUp server, Manage, and then, finally and inexplicably, the recently released Dash. Then FiveRuns itself was gone — acquired by Workthink, about which no one knew the faintest. That’s how it looked from the outside, at least. The view from inside…
  • Living without send(), or trying to

    Bruce Williams
    Object#send (or __send__) is a scrappy little tool we Rubyists pull out to ever-so-casually ignore method private and protected visibility, and to call methods dynamically. Maybe we’ve gotten into the habit of using it a little too often. Let’s play with alternatives. An evaluation Here’s an example from practically every monkeypatching Rails plugin init.rb you’ve ever seen: SomeRailsConstantsend:include MagicSauce Okay, so include is a private method, and we’re breaking through indiscriminately by using send. If you wanted to do away with send because it seems…
  • A GitHubby config.gem hack

    Bruce Williams
    I love using gems from my Rails apps, and have been an outspoken proponent for gem plugins from the beginning (you won’t find any vendor/plugins in my newer apps at all). I also love GitHub, but lines like this, over and over in my environment files, just annoy me: configgem 'username-foo' :lib => 'foo' :source => 'http://gems.github.com' configgem 'username-bar' :lib => 'bar' :source => 'http://gems.github.com' So, here’s a quick little hack. It could be smarter, but it works. module GitHubbyGems def gemname options if…
  • A sleep hack

    Bruce Williams
    A quick aside. I’m experimenting with the Everyman polyphasic sleep schedule for the next 3+ weeks. Update: The experiment ended early, but was still very successful. Feel free to contact me if you’re interested in this sort of thing.
  • add this feed to my.Alltop
    PeepCode Products
  • Meet jQuery

    9 Nov 2009 | 8:49 am
    by Geoffrey Grosenbach Two years in the making, it’s the PeepCode screencast on jQuery, the popular Javascript framework for developing web applications. jQuery stormed out of the gate and quickly won the hearts of developers. Its design and implementation make it easy for you to accomplish basic tasks. Extendability is built in with its plugin architecture (you’ll write one in this screencast). You can organize code around native Javascript objects (you’ll do that, too!). Researching and producing this screencast converted the author from a jQuery skeptic to a believer. If…
  • Ruby 1.9 Part II

    15 Oct 2009 | 4:55 pm
    PeepCode has teamed up with Gregg Pollack, Jason Seifer, and David A. Black of Envycasts to provide you with their current library of screencasts! Jump into the future of Ruby with part 2 of this two part series on the distinguishing new features of Ruby 1.9. Topics covered in this 35-minute screencast include: Block Variables Strings Encoding Object-wide Newness Start with Part I if you haven’t seen it yet! Available to PeepCode Unlimited subscribers, or with your PeepCode credits, or as a single purchase for only US$9!
  • Ruby 1.9 Part I

    15 Oct 2009 | 4:49 pm
    PeepCode has teamed up with Gregg Pollack, Jason Seifer, and David A. Black of Envycasts to provide you with their current library of screencasts! Jump into the future of Ruby with this two part series on the distinguishing new features of Ruby 1.9. Topics covered in this 41-minute screencast include: Hashes Arrays Symbols Enumerators Enumerable RubyGems Part II completes the series and is available now. Available to PeepCode Unlimited subscribers, or with your PeepCode credits, or as a single purchase for only US$9!
  • Meet Sinatra

    12 Oct 2009 | 2:34 pm
    With technical assistance from Sinatra creator Blake Mizerany. As a developer, you’re always looking for ways to write faster applications with less code. The Sinatra framework hits a sweet spot for writing small, fast web applications and web services with Ruby. In this 64 minute screencast, Dan Benjamin teaches the basics of Sinatra: configuration, handlers, blocks, and templates. You’ll master these techniques by writing a simple ad server to manage and deliver images, Javascript, and HTML. You’ll enhance the application to track clicks using DataMapper and Sqlite3 to…
  • iPhone View Controllers Part II

    28 Sep 2009 | 10:49 pm
    Co-authored by Alex Vollmer, author of the Evri iPhone app and the PeepCode Screencast on MacRuby. Our first iPhone View Controllers screencast (Part I) was an instant hit. This screencast completes it and continues the momentum in our new series of iPhone development screencasts. In this tutorial you’ll become confident using the simple yet powerful table view controller. You’ll learn about layout, interaction, workflow, capabilities, and tips for working with tables. We go beyond simple usage to show how to use a custom cell that dynamically displays multiline text. And…
  • add this feed to my.Alltop
    has_many :through
  • RubyConf 2009 Lightning Talks

    Josh Susser
    20 Nov 2009 | 11:00 am
    Last night it was my great pleasure to host the Lightning Talks session at RubyConf 2009. We had an amazing series of 20 talks that took just over 2 hours. The tech gremlins seemed to be off drinking somewhere and none of the presentations failed. Here's a list of all the speakers and links to their stuff. Micah Martin: Limelight - http://limelight.8thlight.com Dmitry Jemerov: RubyMine 2.0 - http://jetbrains.com/ruby Luigi Montanez: Sunlight Labs - http://sunlightlabs.com Alex Chaffee: Erector - http://erector.rubyforge.org Steven Parkes: http://github.com/smparkes Jeff Casimir: 4 Things I…
  • RubyConf Schedule

    Josh Susser
    12 Nov 2009 | 11:05 am
    The RubyConf 2009 schedule was just posted. As a public service, I have fixed it to be readable and to use, you know, hyperlinks and stuff. Enjoy. http://hasmanythrough.com/rubyconf2009/schedule.html (Apparently my planning for GoGaRuCo 2010 has me thinking it's 2010 already. Fixed the year. Sorry about that. Sigh.)
  • Pair programming isn't right for all projects

    Josh Susser
    23 Sep 2009 | 11:48 pm
    My hat's off to Obie Fernandez for his recent article 10 Reasons Pair Programming Is Not For the Masses. I don't actually agree that only the elite are cut out for pair programming, but I do think he's on target with his list of obstacles to effective pairing. There's another axis to consider for fit, however, and that's the suitability of the work itself for pair programming. I don't mean the product domain or the kind of application being written, but rather the technology and tools used to build it. I started pair programming when I was a freshman in college. My CS10 lab section had 20…
  • Circle of death

    Josh Susser
    3 Sep 2009 | 10:15 pm
  • Discipline and creativity

    Josh Susser
    12 Jul 2009 | 11:11 pm
    I was chatting with a friend over dinner this weekend about the impact of work environment on one's ability to excel as a software developer. We've both worked for companies where we've had to work far more than 40 hours each week for extended periods of time. We both agreed that's a good way to burn out your staff and, more importantly, a bad way to get stuff done faster. Sure, you can do an intense sprint now and then, but you don't win a marathon by running full out the whole way. The comparison I came up with was that writing software is a lot like writing literature. It takes both…
 
  • add this feed to my.Alltop
    ruby on rails blog
  • Using a Rails collection partial with a counter

    Jonathan
    30 Oct 2009 | 7:48 pm
    I was reworking an application today and noticed there was a portion of the code that was rendering a counter. # what I saw <% @wheels.each_with_index do |wheel,count| %> <%= render :partial => "wheel", :locals => { :wheel => wheel, :count => count} %> <% end %>   # you might also be doing <% count =0 %> <% @wheels.each do [...]
  • Multiple database connections with Rails

    Jonathan
    11 Oct 2009 | 1:22 pm
    Recently a client requsted that I add a new admnistration panel to an existing Rails application. I thought to myself, “That sounds simple enough?”; welll, things are never as simple. In addition to this control panel, they wanted to use an existing MySQL database and its contents which, of course, did not follow the Rails [...]
  • Cisco VPN and Snow Leopard

    Jonathan
    13 Sep 2009 | 2:47 pm
    After upgrading to Snow Leopard 10.6 I’ve run into yet another quirk. I tried to log on to our VPN and the Cisco VPN client gave me me the following dialog box: “Error 51: Unable to communicate with the VPN subsystem. Please make sure that you have at least one network interface that is currently [...]
  • Watermarking images paperclip’s post-processor

    Jonathan
    8 Apr 2009 | 2:44 pm
    For those of you who wanted to use thoughtbot’s paperclip plugin to manage image uploads but were having trouble watermarking said images, behold! http://github.com/ng/paperclip-watermarking-app/tree/master
  • Dynamically set a domain for a Rails asset host

    Jonathan
    14 Mar 2009 | 3:07 am
    I’ve been wanting to implement an asset host for my Rails app, looking over the API I saw that Rails’ asset_host only supported a single domain. I’m running multiple domains off one Rails app, so this would have been a problem. After a little research, I came up with a solution that would work for [...]
  • add this feed to my.Alltop
    Rails Envy » Home
  • Rails Envy Podcast – Episode #101

    Jason
    20 Nov 2009 | 9:05 am
    Episode #101 Let’s put another shrimp on the barbie! The Rails Envy podcast is brought to you this week by NewRelic. NewRelic provides RPM which is a plugin for rails that allows you to monitor and quickly diagnose problems with your Rails application in real time. Check them out at NewRelic.com. Show Notes Torquebox Torquebox is an enterprise-grade application server that provides scale-oriented services to your Ruby webapps, including turn-key clustering. With its latest release, Torquebox supports all Rack-based Ruby frameworks. Metaprogramming in Ruby: It’s All About the Self…
  • Episode 100

    Jason
    13 Nov 2009 | 2:43 pm
    Episode #100: Mustache edition. And hey, it’s episode 100! The Rails Envy podcast is brought to you this week by NewRelic. NewRelic provides RPM which is a plugin for rails that allows you to monitor and quickly diagnose problems with your Rails application in real time. Check them out at NewRelic.com. Show Notes JRuby 1.4 Final Released JRuby 1.4 has been released. New in this version is a native launcher for JRuby on Windows. Software Craftsmanship Katas Chris Parsons and Corey Haines release the katacasts blog and video cast. Software Craftsmanship Katas is a place dedicated to…
  • Rails Envy Podcast – Episode #099

    Jason
    9 Nov 2009 | 11:37 am
    Episode #99 Like a Boss edition. Here’s a YouTube link (NSFW) for those that haven’t heard it and don’t get the joke. The Rails Envy podcast is brought to you this week by NewRelic. NewRelic provides RPM which is a plugin for rails that allows you to monitor and quickly diagnose problems with your Rails application in real time. Check them out at NewRelic.com. Show Notes RailsConf RFP Open RailsConf 2010 will be held June 7-10, 2010 at the Baltimore Convention Center in Baltimore, MD – and Ruby Central and O’Reilly Media are now accepting proposals for conference…
  • Rails Envy Podcast – Episode #098

    Jason
    28 Oct 2009 | 12:10 pm
    Episode #98- “I leave my syntax out when company comes over.” Important inaccuracy in this week’s show: We have misrepresented Bryan Liles as having written the dm-is-schemaless plugin when, in fact, it’s actually Bryan Smith. Sorry guys! The Rails Envy podcast is brought to you this week by NewRelic. NewRelic provides RPM which is a plugin for rails that allows you to monitor and quickly diagnose problems with your Rails application in real time. Check them out at NewRelic.com. Show Notes Gemcutter will become default host for gems Gemcutter will become the default…
  • Rails Envy Podcast – Episode #097

    Jason
    22 Oct 2009 | 2:32 pm
    Episode #97 Lieutenant Commander Boson reporting for duty. Get the ring tone. The Rails Envy podcast is brought to you this week by NewRelic. NewRelic provides RPM which is a plugin for rails that allows you to monitor and quickly diagnose problems with your Rails application in real time. Check them out at NewRelic.com. Show Notes RPM For Java RPM 2 Now supports Java and Ruby 1.9. nginx push module Nginx HTTP push module – Turn nginx into a long-polling message queuing HTTP push server. Railscast episode on Formtastic Ryan Bates shows how to use Formtastic in your views. The Art of the…
  • add this feed to my.Alltop
    Slash7 with Amy Hoy - Home
  • Doing the Work, with lessons from Magnum PI

    amy
    28 Oct 2009 | 5:46 am
    Introductory interface talks are boring. More importantly, by neccessity, they are the same old content recycled. And recycled uselessly, to no end. Because if the audience members were interested in interface design, they would already know the content of the talk. Or, to put it another way, if they didn't already know the content of the talk, they clearly didn't care. So when I gave a talk last week at the Italian Perl Conference, in Pisa, Italy, I didn't give the type of introductory interface design talk that you'd expect. Instead, I gave a talk entitled: "Doing the Work" In Doing the…
  • Nearly Sold Out - Berlin JavaScript Master Class

    amy
    20 Oct 2009 | 4:14 am
    A quick note for our European friends—especially ones who we'll see at JSConf Europe. Become a JavaScript Master Our one-day JavaScript Master Class is coming to Berlin, November 9, right after JSConf. If you feel like you've got some room to improve your JavaScript when it comes to understanding the hardcore-iest parts of the language, like the deep ins & outs of the object model, or knowing when and how to use closures, or how to make the DOM your bitch (yeah really), you should come. Not to mention, we'll talk about how to handle large JavaScript code bases without tearing your hair…
  • 24-hour tweet drive to #beatcancer

    amy
    16 Oct 2009 | 9:40 am
    <style> .beatcancerbadge{font:16px/22px Arial !important;font-weight:bold !important;color:#317ac0 !important;display:block !important;padding:60px 0 0 240px !important; width:700px !important;height:180px !important;background:left top no-repeat url(http://beatcancereverywhere.com/images/badge.png) !important;text-decoration:none !important;}.beatcancerbadge ul{padding:0 !important;display:inline !important;text-decoration:underline !important;font:16px/22px Arial !important;font-weight:bold !important;text-indent:0 !important;margin:0 !important;}</style>I'm helping to raise funds…
  • How to Write Your Sales Page

    amy
    13 Oct 2009 | 7:54 am
    It's Time to Redesign The Sales Page! Part 2 (Part 1) So, last time on "It's Time to Redesign The Sales Page!" we talked about why I decided the Freckle Time Tracking sales page had to be totally redone. Namely: We weren't proud of the design, so we didn't promote it We didn't believe it was effective at reaching our visitors, so we didn't promote it So these problems break down into two categories: Visual appearance Message/content Because the message/content issue is much harder than the visual appearance, that's where I started. Tune in next time for the design. Pre-work: Why, and Who? To…
  • Pimpin' [Software Projects] Ain't Easy

    amy
    28 Sep 2009 | 8:29 am
    I spent this weekend at CURUCamp—that is, Central European Ruby Camp—here in Vienna. It totally kicked ass, I got to hang out with friends, make new friends, and learn stuff. (Plus, thanks to Jürgen the organizer, I now know a place where I can get a decent mojito in stodgy old Vienna. Good thing, too, cuz I feel a mojito-emergency coming on in the near future. But I digress.) And I gave a short talk of my own: Pimpin' [Software Projects] Ain't Easy. Pimpin' [Software Projects] Ain't Easy It's a theme I keep coming back to, because so many of the people (and projects) I care about are…
 
  • add this feed to my.Alltop
    Softies on Rails - Home
  • Ruby Job Opening

    jeff
    26 Oct 2009 | 8:59 am
    I’ve got a Ruby Software Engineering position open on my team at Leapfrog Online, in Evanston, IL. The ideal Rails candidate has: Real-world experience using MVC frameworks to build high-traffic web sites and applications. While we don’t expect any graphic design skills from our developers, candidates should be well-versed in the world of HTML, CSS and Javascript/Ajax. Knowing how to develop RESTful applications is a big plus. A love of testing and test-driven development. You should know how to write standard Rails unit tests, and/or a popular specification framework like RSpec, shoulda,…
  • Last Call for Rails for Everyone

    jeff
    1 Oct 2009 | 5:53 am
    Technically the registration window has closed, but if you sign up this week we’ll let you in. Register now.
  • Registration Now Open for Essential Javascript

    jeff
    21 Aug 2009 | 4:43 am
    Registration is now open for Essential Javascript with jQuery, a one-day, action-packed, fun-filled workshop for everyone that wants to learn how to integrate Javascript into their .NET, Rails, PHP, or straight-HTML web applications. We’ve secured a great location right in the heart of Chicago’s downtown (right across the street from the Sears Tower, in fact). If you’ve been wanting to learn Javascript, our friendly, inclusive workshop is the place for you. Seats are limited, so register today.
  • RT The Learnometer

    jeff
    16 Aug 2009 | 12:38 pm
    Photo credit New article posted on the Purple blog called The Learnometer.
  • Survey For WindyCityRails Tutorial Attendees

    jeff
    4 Aug 2009 | 1:48 pm
    For those of you coming to the morning tutorial at WindyCityRails, I’d like to customize the session to make it even better for those who are coming. This 3-question survey will take no more than 24 seconds of your time: Click here to take the survey here. For those of you still on the fence, what are you waiting for? It’s coming right up on September 12, 2009, so sign up today.
  • add this feed to my.Alltop
    Polishing Ruby
  • Apparently I Suck

    zenspider
    18 Nov 2009 | 12:35 am
    I just got the following (awesome?) email: Thank you for taking the time to interview with Suzanne for the Ruby on Rails Junior Programmer position. Unfortunately, you have not been selected for further interviews as your experience is not an ideal match with the needs of the company at this time. I wish you the best in your current and future endeavors! The mind... She boggles. If you get contacted by Hire Better Solutions... Run away. Run fast. I talked to the hiring company's CEO on the phone. Hopefully I convinced him that they're not getting their money's worth with this company. Actual…
  • Unit Testing Applications in Cocoa

    zenspider
    27 Oct 2009 | 1:56 pm
    http://chanson.livejournal.com/tag/unit+testing is a wonderful resource for getting unit tests up and running in cocoa (esp under the debugger). One of the comments was a gem and I pulled it out and fixed it up to work a bit better... This converts your project to run your application's unit tests under gdb. I can't get it to work under XCode's script menu, but it should work fine under the system wide script menu. (* To debug the unit tests, in the "General" tab of the executable info window, the "Working Directory" must be set to "Build Products directory" Modify the testFrameworkPath for…
  • osx_keychain version 1.0.0 has been released!

    zenspider
    16 Oct 2009 | 11:35 am
    Provides API and a command line tool to Access the OS X Keychain. The command line tool isn't actually useful (use security instead), but demonstrates the usage quite well. Changes: 1.0.0 / 2009-10-16 1 major enhancement Birthday! http://rubyforge.org/projects/seattlerb
  • omnifocus version 1.3.0 has been released!

    zenspider
    11 Oct 2009 | 3:17 pm
    Synchronizes bug tracking systems to omnifocus. Changes: 1.3.0 / 2009-10-10 1 minor enhancement: Added ability to re-open tasks. (aja) http://rubyforge.org/projects/seattlerb
  • rubyforge version 2.0.0 has been released!

    zenspider
    21 Sep 2009 | 12:18 pm
    A script which automates a limited set of rubyforge operations. Run 'rubyforge help' for complete usage. Setup: For first time users AND upgrades to 0.4.0: rubyforge setup (deletes your username and password, so run sparingly!) edit ~/.rubyforge/user-config.yml rubyforge config For all rubyforge upgrades, run 'rubyforge config' to ensure you have latest. Changes: 2.0.0 / 2009-09-21 Modified to use RubyForge REST API rather than scraping HTML. http://codeforpeople.rubyforge.org/rubyforge/ http://rubyforge.org/projects/codeforpeople/
  • add this feed to my.Alltop
    BuildingWebApps Articles
  • Web 2.0 Expo: TV and Radio with an API

    Michael Slater
    National Public Radio (NPR) is changing what it means to be a news organization. While traditional news organizations want to keep their content close, NPR has taken the approach of making content widely available via an API – an approach they call “brand and release.” They’ve made 250,000 stories, going back 13 years, available through their API. Zack Brand from NPR said that the NPR API is getting about 2 million requests per month, and there are 1,300 registrants (you have to register to get access to the API). Content is available in a variety of formats; so far,…
  • Web 2.0 Expo: Web Developer Tools

    Michael Slater
    Ben Galbraith and Dio Almaer of Ajaxian and the developer tools group at Mozilla gave a wide-ranging talk on web developer tools. They noted that the web often seems more like a hack than a platform — it’s amazing that developers are able to make web apps do the things they do. This is especially true with Ajax raising the bar for interactivity, and sites turning into applications instead of documents. They’re out to make the web a better platform. Some future technologies that have them excited: HTML5 canvas Fast JavaScript — kicked off by Chrome, Firefox’s…
  • Web 2.0 Expo: Social Media

    Michael Slater
    The conference sessions at Web 2.0 Expo had a major emphasis on social media. I only attended a couple of these talks, about which I have brief comments below; at the end of the article, I have links to several others. Social Media Marketing – why it fails and how to fix it This one felt somewhat remedial to me, with the essential points being: Be authentic. You need to be a person, not just a representative of a company. It’s hard to change the marketing culture in an organization to deal well with social media. (A point that I was glad to gloss over, being in my tiny…
  • Web 2.0 Expo San Francisco Spring 2009

    Michael Slater
    March 31 – April 3, San Francisco Last week’s Web 2.0 Expo seemed like a successful event, with a good-sized crowd despite the economic malaise – due in part, no doubt, to unusually aggressive discounting and promotion. With multiple tracks across four days (one day of workshops and three of conference sessions) there was much more to see than any one person could possibly attend. Here’s a few articles that we’ve written about talks at the conference: Web 2.0 Expo: Social Media Web 2.0 Expo: Web Developer Tools TV and Radio with an API Many of the presentations are…
  • Enhancing Conditional Routing in Rails

    Christopher Haupt
    Rails’ routing infrastructure supports the concept of conditional routes: preconditions that must be satisfied before a particular route will trigger. Rails 2.1 supports one built-in condition, HTTP method checking, which is of some use but rather limited. What I needed was to be able to limit certain routes to only trigger when a particular host-name was used to access the application. I thought I’d have to write messy additional logic until a little comment tucked away in ActionController::Routing::RouteSet and ActionController::Routing::Routing caught my eye. Here I briefly…
 
  • add this feed to my.Alltop
    ones zeros majors and minors
  • SQL server has gone away

    Chris Wanstrath
    Garry Tan posted today about a Resque gotcha: Mysql::Error: MySQL server has gone away. You'll get this error if your workers are idle for an extended period of time. They'll lose their MySQL connection and any subsequent statements will fail. This post explains a few possible solutions. For us, automatically re-connecting fits best. We don't care if the connection has gone away. Just stick this code in config/initializers/connection_fix.rb and never worry again! module ActiveRecord::ConnectionAdapters class MysqlAdapter alias_method :execute_without_retry :execute def executeargs…
  • Redis to the Resque

    Chris Wanstrath
  • SORT in Redis

    Chris Wanstrath
    Now that Hurl is open source I thought I'd talk a bit about one of my favorite open source projects: Redis. In Hurl we keep track of all the hurls you make, then show them to you on the "your hurls" page: One of the more fun features is the re-ordering of your Hurls. If I click on the Twitter URL then hit 'Send,' I can re-issue the request and see the new response. The next time I visit the "your hurls" page, the Twitter URL will have moved to the top of my list: This is probably pretty trivial in a SQL database, but Hurl uses Redis - a key/value database. How do we do this kind of sorting?
  • Hurl is Open Source

    Chris Wanstrath
    Yep. Check out Leah's post for details, including the Hurl homepage, Hurl Twitter, and, of course, the live Hurl site.
  • rake start

    Chris Wanstrath
    I'm working on a Sinatra app that uses MongoDB. I'd love to start both Sinatra and MongoDB at the same time, then kill them at the same time, too. Luckily we can use Rake's multitask for this. namespace :mongodb do desc "Start MongoDB for development" task :start do mkdir_p "db" system "mongod --dbpath db/" end end namespace :haystack do desc "Start Haystack for development" task :start do system "shotgun config.ru" end end desc "Start everything." multitask :start => 'mongodb:start' 'haystack:start' Now I can…
  • add this feed to my.Alltop
    Rail Spikes - Home
  • Y Combinator Interview Advice

    Luke Francl
    8 Nov 2009 | 10:07 pm
    Paul Graham emailed YC co-founders to share their interview stories for those who were asked to interview for the W10 batch. Here’s my take. First off, congratulations! You’re probably wondering what to do next, depending on the outcome of the interviews. I’m not going to tell you not to be nervous, because that won’t help. But keep perspective – YC’s not the end-all of the startup world. If you’re dedicated, you can make your company happen (startups did exist before YC, believe it or not). I know one team that got rejected, but decided to move to Silicon Valley anyway. They…
  • Let a human test your app, not (just) unit tests

    Jon
    29 Oct 2009 | 10:06 am
    I’m a big believer in unit testing. We unit test our Rails apps extensively, and we’ve done so for years. On some projects, we do both unit testing and integration testing using Cucumber. I preach unit testing to everyone I can. I’d probably turn down a project if the client wouldn’t let us write tests (though this has never come up, and I don’t think it would be a hard sell). But for a long time, that’s all I did on my projects. Our clients and users would find the bugs that got past the developers. They were, in effect, our QA testers. (I think a lot of small/agile teams are the…
  • Building a Video Delivery Network in 48 hours

    Jon
    28 Aug 2009 | 8:00 am
    Last weekend, I participated in my first Rails Rumble. Rails Rumble is a 48-hour app building contest. We started from scratch Friday evening – you can have concepts and notes on paper, but no code or digital UI assets – and stopped Sunday evening, after 48 hours. You can use open-source code and public web services, and we made liberal use of both. Our team consisted of myself and three of the Sevenwire crew: @fowlduck, @brandonarbini, and @steveheffernan. That’s two developers (Nate and myself), one developer/UI combo (Brandon), and one UI guy (Steve). All in all, a really good mix…
  • ActiveRecord refererential integrity is broken. Let's fix it!

    Jon
    18 Aug 2009 | 5:21 pm
    ActiveRecord supports cascading deletes to preserve referential integrity: 123 class User has_many :posts, :dependent => :destroyend But you really only want cascading deletes about half the time. The other half, you want to actually restrict deletion of a record with dependencies. ActiveRecord doesn’t support this. Think of an e-commerce system where a user has many orders. Once an order has gone through, you shouldn’t be able to delete the user who placed the order. You need a record of the order and the user who placed it. Or even more obvious, think of a lookup table. An Order…
  • Weird Gem Error

    Luke Francl
    9 Aug 2009 | 11:21 pm
    Talk about a hard problem to diagnose! I canceled the installation of Rack 1.0 half way through because I realized I was running the wrong command (I didn’t use sudo like I wanted to). After that, I couldn’t load rack at all, even though I could see it in my gems directory and I could load other gems there. I got a LoadError, like this: irb(main):001:0> require 'rubygems' => true irb(main):002:0> require 'rack' LoadError: no such file to load -- rack from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' from…
  • add this feed to my.Alltop
    Dead Programmer Society
  • Flying Robot: World Tour 2009 Continues

    Ron Evans
    16 Nov 2009 | 8:15 am
    As usual, no blog posts = a lot of other activity here at Flying Robot HQ. Among other personal stuff, my brother Damen Evans and I have been getting ready for the last public demos of @flyingrobot for 2009. And we are going out with style! Later this week, we roll up to San Francisco to present at the prestigious RubyConf! Then, next week @flyingrobot and I will fly off to Madrid, Spain, to do our first European appearance at the awesome-looking Conferencia Rails.Anyhow, if you have been waiting eagerly for more Flying Robot news and gadgets, be patient. We will be unveiling our mysterious…
  • PostgreSQL on Ubuntu on EC2: Backing It All Up

    Ron Evans
    10 Oct 2009 | 11:19 am
    This post continues what I started with "PostgreSQL on Ubuntu on EC2: The Installation Guide". Once you have your PostgreSQL database server instance running, you will need to backup two different things: your database data, and the instance itself. The database data will be backed up using Elastic Block Storage (EBS) snapshots. Once we have the instance running the backups correctly, we will then create an Amazon Machine Image (AMI) that will allow you to launch a new instance to replace the database server in case it goes down.Backing Up The DatabaseFirst, we need to connect to our database…
  • Happy 200 Posts: My 10 Personal Favorites

    Ron Evans
    13 Sep 2009 | 3:42 pm
    I was shocked to discover this morning that this is to be my 200th blog post. Wow! It has been a good run so far since I restarted the Dead Programmer Society in 2006, and I really appreciate the awesome feedback and support that I have received from the community.To commemorate this personal event, here is a list of my top 10 favorite posts, in no particular order:1. "I'd Rather Be A Jazz Programmer"2. "Fear And Loathing At RailsConf 2009"3. "Programming Zombies Will Crush You"4. "The Twitter 1-2-3 Rule"5. "Goldilocks and the Three Icons"6. "Money In The Ghetto"7. "I Speak For The Code"8.
  • PostgreSQL on Ubuntu on EC2: The Installation Guide

    Ron Evans
    15 Aug 2009 | 1:27 am
    For some time, I have had clients hosting a couple different applications on Amazon EC2 using Ubuntu. One of these apps uses PostgreSQL, and has been running without event for quite a while. Yesterday, I got to catch up for lost time, by spending the entire day wrestling with data recovery issues related to a failed apt-get upgrade on an important database server. Luckily, the awesome Eric Hammond was around on IRC, came to my rescue, and coached my thru my self-inflicted pain.If you are not interested in PostgreSQL, you probably just stop here. Nothing to see folks, move along. However, if…
  • The FutureRuby Revolution Will Not Be On AOL - Part 2

    Ron Evans
    25 Jul 2009 | 9:37 am
    FutureRuby Day 2 began in a seemingly calm and reflective way. Coffees were sipped, and hangovers nursed. As the self-inflicted wounds from the Pravda-Vodka-Kalashnikov faded, Pete Forde, our leader and spiritual adviser, began a short sermon.His message was simple: Vegas is a horrible place to hold RailsConf. And we should live in a manner that follows the "Four Agreements". Seriously, yes, he said both of these things.Pete told us of the source of his sudden enlightenment: Portland's Jupiter Hotel. Instead of a Gideon bible, they have copy of Four Agreements in each room. Pete, being a…
 
  • add this feed to my.Alltop
    Intridea - Company Blog
  • Hashie: The Hash Toolkit

    Michael Bleigh
    12 Nov 2009 | 6:13 am
    One of my earliest gems was Mash, a useful tool for creating mocking objects as a Hash. One of the most common problems people had with Mash was a simple one: it conflicted with another class of the same name in extlib! To address this problem as well as give the project some room to grow, Mash is now part of a new toolkit called Hashie. Hashie is available now via Gemcutter and the source, as always, is available on GitHub. To install: gem install hashie Hello, Hashie Hashie is, right now, simply the former Mash code along with a new extended Hash called a Dash. A Dash is a “discrete…
  • Car Finder Becomes a Hit Application for iPhone

    Brendan Lim
    11 Nov 2009 | 1:02 pm
    We released Car Finder just over a week ago and the amount of attention we’ve received is much more than we could have ever anticipated. For those of you who don’t know, Car Finder is an iPhone application that utilizes augmented reality to help you find where you parked your car. Note: Car Finder developer Brendan Lim and his brother (with the dollar) sold separately Throughout this whole process we’ve noticed that the Twitter mentions that came after these news articles proved to play a huge part in Car Finder’s success. Below are a list of a few articles that…
  • Quick Tip: Readable Conditional Validations in Rails

    Michael Bleigh
    3 Nov 2009 | 5:57 am
    This is something that many may already use as a best practice, but if not it’s something simple and convenient to add to your repertoire. Sometimes you may have a model that requires additional information if a certain condition is met. For example, I may require a user to add more information about themselves if they wish to be listed publicly, whereas I would not if they do not wish to be listed. By combining ActiveSupport’s Object#with_options and ActiveRecord’s conditional validations, we can implement this behavior in a straightforward and readable manner (assuming…
  • Use Augmented Reality to Find Your Vehicle With Car Finder for iPhone

    Brendan Lim
    2 Nov 2009 | 1:47 pm
    If you’ve ever parked your vehicle in a large parking lot you’ve realized that it would be great to have something help you memorize where your car was. Intridea’s latest iPhone application, Car Finder, helps you do just that. Unlike the cookie-cutter car finding applications in the App Store, Car Finder helps you find your car using augmented reality. Using the camera, A-GPS and the compass built into the iPhone 3GS, Car Finder allows you to find your car by positioning an overlay on top of a live view of what’s in front of you. Also, when you mark your car Car Finder…
  • Presently Adds SharePoint Integration

    Michael Bleigh
    29 Oct 2009 | 2:47 pm
    We’re always looking for ways to make it easier to integrate Presently into your day-to-day workflow. Today, we’re happy to announce something that will make it much easier for businesses using Microsoft’s SharePoint to integrate Presently. Starting today businesses can use the Presently SharePoint Web Part. The Presently Web Part will allow you to view and post updates to your company’s Presently account from directly inside your Microsoft SharePoint portal. For more information on the installation and usage of the Web Part, you can visit the SharePoint application…
  • add this feed to my.Alltop
    ELC Code Feed
  • Exporting MySQL database

    20 Nov 2009 | 2:44 pm
    Exporting mySQL dumps can sometimes be tricky. Some sites suggest exporting dump like so: mysqldump database_name > dump.sql However, the problem with this method, is that the stream redirect might not be able to handle UTF-8 encoding correctly on certain OSes. I recently had a project that uses exotic characters and some characters would appear garbled up in the database because it was exported this way. The way to export it, with the original characters intact, is to let mysqldump write to disk using the -r flag: mysqldump database_name r dump.sql Ok, I lied. Exporting MySQL dump is…
  • RAILS_ENV set to "test" in development

    20 Nov 2009 | 1:38 pm
    I came across this rather annoying detail early on in one of our projects. Loading development environment (Rails 2.3.4) >> RAILS_ENV => "development" >> ENV[RAILS_ENV] => "development" >> require spec/rails => [] >> RAILS_ENV => "test" >> ENV[RAILS_ENV] => "development" >> exit Turns out that just by requiring 'spec/rails' it was blindly setting the RAILS_ENV constant to 'test' without warning. It sorta makes sense, as you would only really need the rspec gem when running tests, but I like to use the…
  • In the Good Old Days

    18 Nov 2009 | 11:07 pm
    I wanted to generate an Rails app running on 1.2.3 ... so I don't forget here is the command. rails _1.2.3_ app_on_1_2_3 Just make sure the rails 1.2.3 gem is also installed.
  • How to Handle Credential Storage

    18 Nov 2009 | 3:28 am
    This website requires Flash player 9.0.0 or higher.
  • If in doubt, try try again

    12 Nov 2009 | 5:10 pm
    If in doubt, try try agin On some recent projects I have seen the following code similar to: User.find_by_login("noone").id rescue nil So I just wanted to remind people of the try method. User.find_by_login("noone").try(id) Personally I think try communicates the intent of the code.
  • add this feed to my.Alltop
    Josh Huckabee
  • Begging Universities

    jhuckabee
    12 Nov 2009 | 2:48 pm
    My alma mater, Northern Arizona University, has been sending me emails hyping up "something special" that their students have been preparing "just for me". Over the course of a few weeks they've sent a series of these emails about this "special" other email that I need to look out for, and today was the special day. Oh Joy!!! Now, I know times are tough, and I'm pretty sure I've been solicited in the past for donations to NAU. However, today the solicitation struck me a bit differently. First, I spent a lot of money to go to NAU. I'm still paying my student loans, and probably will be for…
  • Structure and Interpretation of Computer Programs (SICP) for Kindle

    jhuckabee
    11 Sep 2009 | 3:22 am
    I just started reading the SICP book (Structure and Interpretation of Computer Programs, by Abelson, Sussman, and Sussman) which MIT Press has so graciously made available on their website. I'm not very fond of sitting in front of a computer screen to read books, so I mirrored their copy locally and converted it into a prc file (using Mobipocket Creator) so I could read it on my Kindle. Here it is for anyone else who wants to save a bit of time. It is provided under Creative Commons Attribution-Noncommercial 3.0 Unported License.
  • Ubiquity Commands Updated

    jhuckabee
    22 Jul 2009 | 3:36 pm
    Ubiquity 0.5 was released a few weeks ago, and I finally got around to updating my commands. If you were using my W3C or Drupal API Ubiquity commands, they are now 0.5 compatible. Please update your command source.
  • March Phoenix Drupal Meetup

    jhuckabee
    3 Mar 2009 | 9:29 am
    The March Phoenix Drupal meetup will be held next Tuesday, March 10th at 7pm. The meetup is moving on to the ASU campus thanks to the help of Chris Yates. Event details can be found on the DrupalPHX group page. Chris will be giving a presentation about the Mars Image Explorer project and how they are utilizing Drupal within that project. There's also been mention of DrupalCon attendees sharing a bit about what went on at the conference. Hope you all can make it.
  • Phoenix Metro Drupal Meetup Next Tuesday

    jhuckabee
    3 Feb 2009 | 11:24 am
    There will be a Phoenix Drupal meetup next Tuesday evening at Macayo's in Tempe. See official event details and sign up HERE. This meeting is a chance for local Drupal developers to get together and discuss what's going on in their Drupal world and Drupal in general. While we are working on a more presentation friendly meeting spot for future meetups, this will give us a chance to at least meet and gauge community interest level. Hope to see you there!
 
  • add this feed to my.Alltop
    Rubyology
  • Rubyology 84: Heroku Addons with Oren Teich

    31 Oct 2009 | 12:01 pm
    @ChrisMatthieu interviews Oren @Teich of Heroku about their new add-on services that just launched on October 29th. These services are like an appstore for deployment options. Check out this fun interview to learn more about super simple cloud deployments!
  • Rubyology 83: Ruby IDE/Editor Deathmatch

    10 Aug 2009 | 3:12 pm
    Roundtable discussion on Ruby IDEs and text editors. Participants: Marc Chung, Preston Lee, Saul Mora, Benjamin Smith. (OpenRain web development ninjas.) Google Group Alternate AAC Version
  • Rubyology 82: Railsconf 2009 Final Day

    12 May 2009 | 8:52 pm
    Chris Matthieu and Saul Mora recap the final day of Railsconf 2009.
  • Rubyology 81: Day 2 of Railsconf 2009

    9 May 2009 | 8:42 pm
    Chris Matthieu and Saul Mora recap day 2 of Railsconf 2009. On location.
  • Rubyology 80: Heroku Interview, RailsConf 2009

    9 May 2009 | 9:42 am
    The Heroku founders were interviewed at Railsconf 2009. We discuss their platform, niche, and business including how they came up with their name. This is probably one of our best interviews yet - hope we are getting the hang of it!
  • add this feed to my.Alltop
    Engine Yard
  • The State of XML Parsing in Ruby (Circa 2009)

    Nick Sieger
    20 Nov 2009 | 10:30 am
    It’s almost the end of 2009, and I have to ask: are we through dealing with XML yet? Although many of us wish we could consume the web through a magic programmer portal that shields us and our code from all the pointy angle brackets, the reality that is the legacy of HTML, Atom and RSS on the web leaves us little choice but to soldier on. So let’s take a look at what Ruby-colored armor is available to us as we continue our quest to slay the XML dragons. Background Historically, Ruby has had a number of options for dealing with structured markup, though oddly none have reached a solid…
  • Key-Value Stores in Ruby: The Wrap Up

    Kirk Haines
    17 Nov 2009 | 10:00 am
    This last article in our key-value series will briefly cover a few interesting topics that could each have had full articles of their own. This means that if they seem interesting to you, follow the links that I provide to get more information on them. Lastly, I’ll wrap up by introducing Moneta, written by Yehuda Katz, which provides a unified API for a wide variety of different Key-Value Stores. If you want to write code that allows the user to choose the store to use, you’ll want to pay attention to Moneta. The difficult part of discussing Key-Value Stores stores today is that…
  • Rails Roadshow Coming Home!

    Leah Silber
    16 Nov 2009 | 4:13 pm
    Earlier this month, the Engine Yard crew took a quick trip around the states, stopping in five different cities to talk about Rails Performance in the Cloud. We visited Boston, Chicago, Austin, Los Angeles and Seattle, and met with a great crowd of technologists in each. We were joined by some of our favorite technology partners, who talked about cloud computing and their different performance-related products. The Roadshow was a fantastic success; attendee feedback was overwhelmingly positive, and on our end, it was great to get out and meet folks in their home cities. Our partners enjoyed…
  • Programming Contest! And the Challenge is…Measure Rails Momentum

    Michael Mullany
    12 Nov 2009 | 5:25 pm
    We announced the Worst App Server Ever (WASE) contest last week, as the second in a series of Engine Yard programming contests. Since then, we’ve heard lots about your efforts to put a basic twitterbot together, and now the time has come to describe the challenge computation. Remember: you have until 5 p.m. Monday to complete your calculations! UPDATE: Challenge calculations submissions should be in the form of a RETWEET to @engineyard of the first message in your wase program from your home twitter account.  The final WASEpoint in your program listing should be @eycontest (so we can…
  • Using the Rubygems Bundler for Your App

    Sam Merritt
    12 Nov 2009 | 10:00 am
    The new Rubygems bundler makes managing your application’s gem dependencies easy. And for applications with many components, it makes separating components’ dependencies easy too. Let’s start off with a simple, two-part application. Part 1 is a Sinatra app that puts JSON-serialized messages into an AMQP queue. Part 2 is a daemon that consumes those messages. Here’s what a Gemfile for this application might look like: gem 'json' gem 'sinatra' source 'http://gems.github.com' gem 'famoseagle-carrot', :require_as => 'carrot' gem 'eventmachine' gem 'amqp' The Sinatra…
 
  • add this feed to my.Alltop
    Saturn Flyer
  • Cache key for collections in ActiveRecord

    Jim Gay
    27 Oct 2009 | 9:01 am
    I’ve been working on the performance of a Rails application and much of my recent work involves simply caching. It was an application that was an excellent proof-of-concept which quickly turned into a production application. We’ve got memcached setup and running and now it’s a speedy little interface. But one thing I knew I needed but wasn’t sure how to do was cache a group of records. Rails fragment caching is super simple for one record: <% cache [object] do %> ... this will be cached based upon your object.cache_key ... <% end > That’s fine and…
  • Changes in Radiant AdminUI for 0.8.1+

    Jim Gay
    19 Sep 2009 | 12:00 pm
    There’s a lot of focus on the visual changes to the Radiant interface, but there are some functional changes that should be discussed too. I’ve started playing with the new AdminUI as I try to understand the changes (since I haven’t had time to take part in the development). The first thing I tackled was figuring out how to rearrange the navigation items and it’s not too easy to understand what’s going on. First, here’s the new structure of the tabs: NavTab #=> [NavSubItem, NavSubItem, ...] NavTab is a subclass of Array and it’s accessed via…
  • Fat Free CRM on Heroku

    Jim Gay
    8 Sep 2009 | 4:46 am
    Heroku is an excellent way to easily deploy Rails applications. But there’s a trick to doing it: it’s a read-only file system. To some, this may be old news, but to others who have come across a project using SASS, you might feel like your out of luck. Fat Free CRM, for example is a great new project, and it uses SASS. Try running it on Heroku and you’ll start getting frustrated. If you’re not familiar with SASS, it automatically generates static CSS files for you in production, meaning it needs write access to the file system. So, what do you do? The good thing is…
  • Why you should use Devver

    Jim Gay
    28 Jul 2009 | 12:21 pm
    For good reason, developers share concern over not only a well-tested application, but also a regularly tested application. If you are managing a group of developers and are responsible for the outcome, wouldn’t you first find a solution to allow your developers to run the test suite whenever they want? If your team members are running tests whenever they want on your massive application it’ll probably slow them down, so of course you’ll implement a continuous integration server. But then you’re left with the requirement that they checkin their code. That could be a…
  • Textpattern on Github

    Jim Gay
    28 Jul 2009 | 10:34 am
    I’m a former user of Textpattern and I’m glad to see it more easily accessible on github. I hope it’ll be easier for other users out there to contribute to the project. My path to abandonment began when I built a real estate management interface on top of Textpattern. It was an interesting experience to say the least. The system is built to provide clear methods like graf() which I’m sure you would guess is a way to display an HTML paragraph element… And of course, for your developing delight there are other methods like sLink(), eLink(), wLink(), dLink(), and…
Log in