Zach BrockZach Brock
How to make Firebug 1.4 behave sanely
edit Posted by Zach Brock on Monday July 06, 2009 at 11:33PM

As has been noted a few times, the new activation model in Firebug 1.4 is kind of psychotic. The main problem seems to be that the Firebug developers have disconnected the formerly linked concepts of "open" and "activated" for a few reasons that make sense to the developers, but make no sense to the users. Unless you've really internalized how Firebug works under the hood (and there are probably a few dozen people like that in the world), Firebug now seems to randomly choose whether it's going to be open or closed when you visit a page. Not fun.

The workaround that we've found is to force firebug to be active on all pages. You can do this by right clicking the Firebug icon in the bottom right and checking "On for all web pages". This makes Firebug behave mostly like the old way where the panel would stay open as you browsed around until you closed it. The big caveat is that it only stays closed if you use the firebug icon in the bottom right of your window, not the close panel button.

On for all web pages

This will slow your browser down a lot on ajax heavy sites like Pivotal Tracker or Gmail. You can get around that to a certain extent by disabling the Net tab on those domains, which will keep it from displaying every XHR request.

disable net panel

Hopefully this helps, and hopefully the Firebug 1.4 final release has a saner activation model...

Rob OlsonRob Olson
Using assert_select and friends in Helper Tests
edit Posted by Rob Olson on Monday July 06, 2009 at 08:19PM

Assertions such as assert_select, assert_tag, and css_select are powerful tools in view tests. Since view helpers generate a chunk of HTML, it is sometimes practical to use these assertions to test their return value.

If you attempt to use assert_select it will fail because there has not been a call to render, as is done in a view test. To get around this you can store the result of the helper method in @response.body. Once @response.body is populated, the assertions will work like expected.

Update: For people using RSpec, Pat Maddox posted a helpful suggestion in the comments showing how to use have_tag to accomplish the same thing in RSpec style.

Example

describe TagsHelper do
  describe "#tag_list"
    describe "when the user is not an admin"

      it "should not have links to delete the tags" do
        @response.body = helper.tag_list
        assert_select "a", 0
      end

    end
  end
end

Abhijit HiremagalurAbhijit Hiremagalur
Standup Blog 02/07/2009: RM 1.1.1 + Java 1.6 on OS X Solved, Pivotal video, PDF Libraries
edit Posted by Abhijit Hiremagalur on Monday July 06, 2009 at 09:01AM

Interesting Things

Help

"What Ruby PDF libraries are people using?"

  • Especially for HTML to PDF generation

Jeff DeanJeff Dean
Introducing ActiveApi - A sane way to translate your data to xml
edit Posted by Jeff Dean on Sunday July 05, 2009 at 08:04PM

ActiveApi allows you to define a schema in Ruby, and use that schema to convert ruby objects to xml. An example looks like this:

Schema.version(:v1) do |schema|
  schema.define :article do |t|
    t.attribute :id
    t.string :title
    t.date :published_on
    t.has_many :comments
  end
end

Rob OlsonRob Olson
Use Autospec to Your Advantage
edit Posted by Rob Olson on Saturday July 04, 2009 at 11:15PM

I like Autotest because it allows me to stay within my code editor and let my test suite run automatically in the background. After each run I get a nice, unobtrusive, growl notification informing me whether my most recent change caused the tests to fail or pass.

It used to be that setting up and configuring Autotest for the OS X with pretty growl notifications was a nontrivial task. I remember that I spent several hours getting it working a year ago. However, there has been several developments with Autotest in recent months that greatly simplify the process. One of those enhancements is that Autotest can now use FSEvent introduced in OS X Leopard so that it no longer has to continuously poll the filesystem. This has the advantage of vastly reducing Autotest's CPU usage when idle.

Josh SusserJosh Susser
Becoming more flexible
edit Posted by Josh Susser on Wednesday July 01, 2009 at 02:32PM

Our friends at Engine Yard have just launched the beta of their new cloud hosting product, Flex. If you're familiar with their Solo product you'll find Flex to be pretty similar, just more... flexible. Where solo lets you run your Ruby on Rails application on an Engine Yard stack on an Amazon EC2 instance, Flex lets you run it on a cluster of EC2 instances.

In the last month I've put a handful of applications up on Solo, mostly demo or staging servers for doing story acceptance and release testing. Solo is great for that. After you've gone through the setup process once, you can easily spool up a server for a few hours when you need it on just a few minutes notice, then turn it off when it's not needed anymore. Flex gives you that same kind of adaptability, allowing you to add instances to your cluster to match traffic demands as needed.

Last week I got my first production application running on Flex. The Pivotal Labs company website is now hosted on Flex, and it's humming along quite nicely. There were a few rough spots to work through since we were working with a pre-release product, but I'm pretty happy with our setup now. Since Flex is new, I thought it might be useful to share some of the things my fellow pivots and I learned getting things running there.

Parker ThompsonParker Thompson
Need a Job? Come Work With Pivotal Clients
edit Posted by Parker Thompson on Wednesday July 01, 2009 at 10:12AM

At Pivotal Labs, one of the services we provide is bootstrapping startups, including helping them interview and hire. We currently have clients looking for skilled engineers to build their development teams. This is an excellent opportunity to learn Extreme Programming by working side-by-side with Pivotal's talented and experienced developers while at the same time getting in on the ground floor of a small and dynamic product team.

Pivotal Labs and our clients place a strong emphasis on Agile development and its many aspects: Pair Programming, Test-Driven Development, rapid iterations, and frequent refactoring. General technical requirements include serious web development experience, and a significant subset of Ruby, Rails, CSS, JavaScript, or MySQL.

Here's a short description of ekoVenture, oneforty, Honk, and Mavenlink, Pivotal Labs clients currently looking for developers. Their full job postings follow at the end of this post.

ekoVenture is the world’s first social marketplace for adventure, experiential and active travel, a $250 billion market. Utilizing the best social networking technology on the web, we allow users to share their travel experiences, meet other travelers, and book trips online in real-time. Our revolutionary marketplace also features a comprehensive inventory management backend platform for tour suppliers, enabling them to manage their entire business and sell trips or drive leads directly online – this is already implemented across 500 tour suppliers…and adding several each day.

oneforty is a Twitter ecosystem/API venture with considerable traction. oneforty comes with all the excitement and opportunity of a Techstars startup backed by talented and successful investors/advisers who have built some of the best known companies on the web. The founder authored Twitter for Dummies and does tons of press and public speaking and the investors and advisors include Guy Kawasaki, Laura Rippy, Jeff Bennett and many others. oneforty has closed their angel round and is looking for RoR developers fired up about building something that will be highly visible and well-promoted.

Mavenlink is a funded startup that is changing the way people find experts who can help them and is providing the necessary tools to get their work done online. We are founded on the principle that virtually everybody needs qualified professional services that are readily accessible, affordable, and there when they need them. We’ve been working with Pivotal Labs to get our product launched, so we’re serious about being agile and we’ve got the right engineering process in place. This is a unique opportunity to join the Mavenlink team and contribute significantly to the direction of the company. We're looking for someone who is not only passionate about development, but also shares our vision for the tools and capabilities necessary for making remote work better than working in person for both the client and the maven.

Honk.com is a new online automotive website that will make car shopping fun and social. We will enable consumers to experience a new way to explore new cars. We have partnered with a top social website to deliver this new way of car shopping and are funded by one of the largest media companies in the world. Our small team is made up of an experienced group of humble, efficient, and hyper-passionate individuals who are veterans of the automotive industry and social media space. We are proud of our ego-less culture, one that promotes team thinking, not individual accolades. If you're interested in helping prove that social media and car buying go hand in hand, social networks serve a bigger purpose than keeping up with one's day, and a small team can outdo the work of an army - then we may have a seat waiting for you.

If you are interested or for more information please contact each company directly. This is an exclusive service provided to our clients, no external companies or recruiters please.

Full job postings follow.

Other articles: