Pivotal Labs

Main menu

Skip to primary content
Skip to secondary content
  • About
  • Case Studies
  • Team
    • Executives
    • Locations
      • San Francisco (HQ)
      • Boston
      • Boulder
      • Denver
      • London
      • Los Angeles
      • New York
  • Community
    • Blogs
    • Tech Talks
    • Events
  • Careers
    • Lifestyle
    • Principles & Practices
    • Benefits
    • FAQ
    • Apply
  • Contact
    • Press Room
    • Press Releases
    • In The News
    • Press Kit
  • All
  • Labs
  • Standup
  • Tracker

Monthly Archives: February 2011

Pivotal Labs

Standup 2011-02-28: The Cowbell Isn't Going To Ring Itself

Pivotal Labs
Monday, February 28, 2011

Ask for Help

“jQuery throwing a syntax error when using is("[data-foo]")?”

Has anyone seen jQuery throw a syntax error when passing a data- attribute name to the is() function? This code often works, but started throwing a syntax error after some markup was removed and then re-inserted into the DOM:

$("#foo").attr("data-bar") = 5;
$("#foo").is("[data-bar]");

Interesting Things

  • Rails 3.0.5 has been released.
  • The Nordic Ruby Conference call for proposals ends today, so hurry up and submit.
  • Rails Conf 2011, which is being held in my hometown of Bal-ti-more, just announced its keynote speakers. Check them out.
  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Dan Podsedly

Public projects directory and feed coming to Tracker

Dan Podsedly
Monday, February 28, 2011

We’re launching a new public projects directory in Pivotal Tracker this Friday. If you own or use public projects in Tracker, continue reading, as these projects are about to get much easier to discover.

This new directory, linked to from the Pivotal Tracker front page, will show a featured public project at the top, a list of the most active projects, and a live feed of all public project activity. The directory will also allow you to search for public projects by name, project description, or project member name.

What are public projects?

Public projects are just like other projects in Tracker, but they can be viewed by anyone. If you’re using Tracker to manage and collaborate around an open source project, for example, a public project gives you a great way to increase visibility into your efforts, and give the world a live view of progress and priorities. Best of all, public projects are completely free, with an unlimited number of collaborators!

How can I tell if my project is public?

When you’re in a project that’s public, you’ll see (Public) at the end of the project name. You can also see which of your projects are public on the View All Projects page – there is an indicator next to the name of each project that is public.

How do I change my project to be public or private?

By default, all projects in Pivotal Tracker are private, and visible only to the people that you explicitly invite as members. To allow anyone to view your project, even people who are not signed in to Tracker, you can make your project public. To do that, or to make a public project private again, visit the Settings page for your project, and change the Public Access option.

There are many active public projects in Pivotal Tracker already! This new directory will allow you to explore them, and see what everyone else in the open source community is up to. We’ll be featuring a few projects at a time at the top of the page in this new directory, let us know if you’d like us to feature your project!

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Matthew Kocher

EC2 AMI Building Adeventures

Matthew Kocher
Sunday, February 27, 2011

As rails developers we’re often presented with the task of finding the right ops solution for clients. While Heroku has turned out to be a great answer for many of our clients, there are others who don’t fit in the (very well made) fixed size box that Heroku has built.

For these projects, the best answer we’ve found is going the devops route using chef solo. The first problem encountered is “how do I bootstrap my servers”, which by its very nature is a hard problem that requires a fairly through understanding of both your projects needs, operations and chef. The best answer has been to ignore bootstrapping at the beginning, and use chef to document/automate what’s really different about your app.

Getting from servers being a bunch-o-magic-bits to a 15 minute bootstrapping followed by a chef run is where most of the value of automated configuration is.

However, this answer doesn’t satisfy the primal urge to automate everything. To that end, I’m embarking on a side project of bootstrapping a rails server from scratch with chef solo. My hope is that it will be useful as a starting point for rails projects looking to automate their infrastructure. I turned over some turtles, and found the stack ended when I had to chose which AMI to boot up on EC2.

I chose Centos in hopes of leveraging the knowledge of operations experts, and went looking for a basic AMI. There are thousands out there, but what I really wanted was something fully documented in code. Amazon provides “standard” images which are centos based, but they’re too much of a collection of “magic bits” for my tastes. Rightscale is nice enough to give out their scripts, and I’ve adapted them (by way of Nicky Peeters ) to build the barest of bare centos AMIs.

The biggest hurdle was getting a 32 bit AMI that was as close as possible to a 64 bit AMI. I had the urge to standardize on the 64bit only, but the price difference is fairly substantial.

I figured this was a one afternoon project, but it turned into a full two weekend project as I learned many things about EC2, Centos and Linux.

Lessons learned or relearned:

  • EC2 requires different /etc/fstab’s for different instance types.

  • EC2 does not use the AMI’s installed kernel by default, and which one you pick is important. If your centos install hangs at “Creating /dev”, this is probably the reason. PV-Grub looks interesting, but I didn’t want to add another moving part yet.

  • A special ldconfig is necessary on 32bit servers, but seems to break 64bit servers. If you’re seeing linker errors durring the boot up process, this might be the problem.

  • The version of yum used to create the image is important – using the yum provided with an earlier 5.x point release did not yield a bootable 5.5 Centos image.

  • The version of amazon’s AMI building tools is important. The –kernel option is not available in older versions of the bundle command, which didn’t turn out to be necessary but did cause problems. There may have been another reason which currently escapes my memory. The script now installs them at the beginning of the run.

  • /dev/ptmx needs to be created by hand on 64bit servers, but is unnecessary or already created on 32bit servers. /dev/ptmx provides psudo terminals for SSH – you can’t get into your server 64bit server without creating one.

Further questions:

  • Is everything above really true? Is there anything that can be left out or simplified?

  • How do I make a matching vagrant box from the same script?

  • EBS Backed AMIs seem to be better in many ways. Can the same script be pointed at an EBS volume?

As this is my first pass, I’m not sharing prebuilt AMI’s yet as they’re likely to change fairly rapidly.

The script is available on github.

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Nathan Wilmes

Standup 2/24/2001-2/25/2001

Nathan Wilmes
Friday, February 25, 2011

Ask for Help

“bundle install seems very slow everytime, but bundle check seems fast. Why doesn’t bundle install use bundle check before doing its thing?”

Consensus was that this seemed like a good idea.

“When setting up a cc.rb box, the box could not connect to Github, yielding the ‘You don’t exist, go away!’ message. How do we fix this situation? We can get to github through the command line without any issues.”

  • One thing to check is your protocol. The git protocol is closest to SSH and obeys most of the settings SSH does.
  • Also check your agent forwarding settings. Is your box explicitly doing everything that it should?

“In Rails 2.3, we tried mocking a has_one association. However, it looks like the association isn’t mocking. Why?”

Rails 2.3 associations have a proxy object that delegate to lower level objects. This proxy isn’t mockable, but the target (proxy_target) is.

“What is the current best of breed passenger config beyond what you get from the passenger site?”

Recommendations were given for mod_speed.

“What are some easy ways to implement CSS spriting on my site?”

For a quick definition of CSS sprites, look here. Recommendations included Compass/SASS.

Interesting Things

  • jQuery 1.5.1 is out! It is the first jQuery that explicitly supports IE 9, so it’s recommended for next generation web site development.
  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Sean Beckett

SocialStay Seeks Sr. Software Developer in Santa Barbara, CA

Sean Beckett
Thursday, February 24, 2011

At Pivotal Labs, one of the services we provide our clients is helping them interview and hire. 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.

SocialStay, is looking for Rails and Mobile developers to join their team in Santa Barbara, CA. The full job posting follows.

Do you like working on the cutting edge? Do you find yourself torn between web and mobile development? Do you write tests in your sleep, eat ruby for breakfast and live to refactor? Then SocialStay just might be the place for you!

SocialStay is a funded startup located in beautiful Santa Barbara, CA. Our founders are experienced entrepreneurs with a history of success. Our platform is right at the intersection of everything cutting edge in the technology space — We’re developing a web application in Ruby on Rails to configure and generate mobile applications for iPhone, Android and Blackberry. Our first target market is the hospitality industry and they’ve been signing up like crazy just to get their hands on our tech.

We’re forming a core local team of ninja-like, rockstar-ish, pirate-esque developers in Santa Barbara, CA.

Requirements

  • Strong Computer Science Background You haven’t worked with our technology because we’re inventing it. Number one requirement is a strong CS background and the ability to adapt.
  • Experience With Agile Development Or a strong curiosity / desire to learn. We do serious agile: test driven development, continuous integration, weekly sprints, aggressive refactoring and a heap of collaboration. Best part — developers define the process from day 1.
  • Experience Building Web Applications -OR- Building Hardcore Mobile Apps If you’re a badass at one and have always been curious about the other, this is a great opportunity for you! By Hardcore Mobile Apps, we mean apps that have a server component.

Technology Stack

  • Ruby on Rails 3
  • Javascript (both for web and mobile app development)
  • jQuery
  • Appcelerator
  • Mobile Platforms (iPhone, Android, Blackberry)
  • Git
  • EngineYard
  • MySql

Compensation

  • Bay Area Competitive Salary + Stock Options

We’re big believers in kicking ass at our jobs and having fun while doing it. This is your chance to get in early at Santa Barbara’s next big tech company.

If you’re a talented and enthusiastic developer looking for a brand new challenge, drop us a line: jobs@socialstay.com

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Nathan Wilmes

Standup 2/23/2011 – mocking AJAX for jQuery 1.5

Nathan Wilmes
Wednesday, February 23, 2011

Ask for Help

“When I tried to clear cookies on IE8, the cookies stuck around anyway. I was only able to delete them through the developer toolbar. What’s going on?”

The consensus theory was that the developer toolbar might be affecting IE8′s cookie behavior (IE8 is not known for its robust extensions). More investigation seems in order.

Interesting Things

  • After upgrading to Bundler 1.0.10/Rubygems 1.5.2, build time on one of our projects shrank by 2 minutes. Hurrah for caching!
  • jQuery 1.5 changed its AJAX implementation, causing us to upgrade our mock Jasmine library. Our jQuery 1.5 fork is here.
  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Sean Beckett

ModCloth.com Seeks Ruby Engineers in San Francisco

Sean Beckett
Tuesday, February 22, 2011

At Pivotal Labs, one of the services we provide our clients is helping them interview and hire. 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.

Modcloth.com, rated the 2nd fasted growing retail company in the nation by Inc. Magazine, is a distributor of independent designer fashion and décor. ModCloth.com is looking for Ruby on Rails developers to join their team in San Francisco. The full job posting follows.

Our San Francisco office is looking for Software Engineers ideally proficient in Ruby and Rails. Our team utilizes agile practices, paired programming, and test-driven development to build new exciting features for our rapidly growing site that attracts over one million unique visitors every month! We strive for a healthy work/life balance, play ping-pong during breaks, and are always looking to learn something new.

Please visit our Career Page to apply and be sure to include a cover letter letting us know why you can’t wait to join the ModCloth Engineering team.

Are you an expert Java Developer without production Ruby experience? That’s okay! We’re interested in speaking with you too.

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Sean Beckett

StageIt Seeks Rails Developers in San Francisco

Sean Beckett
Tuesday, February 22, 2011

At Pivotal Labs, one of the services we provide our clients is helping them interview and hire. 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.

StageIt is looking for developers to be part of a newly minted technology team in San Francisco. Come join the company that’s disrupting the music space in ways not seen since Napster (and we’re legal). StageIt is a new, Web-based platform created for artists by artists that empowers them to deliver and monetize interactive live experiences directly from their laptop.

The full job posting follows.

“A new kind of pay-per-view” – Billboard Magazine.

“Running it all from a laptop makes it easier for us to pull off and more intimate of an experience for the fans.” – Jonathan Davis, KORN.

“An exciting technology platform for songwriters, musicians and creators in the entertainment space that we feel exemplifies the future of the digital space.” – Richard Conlon, SVP, BMI.

StageIt, with offices in Hollywood and San Francisco, is looking to hire web developers to join its growing team and take the vision to the next level.

Our founder and CEO, Evan Lowenstein, a multi-platinum recording artist-turned-entrepreneur, has built a team of individuals who are equally passionate about music, artists and technology. You have the opportunity to join the company at a time where you will be working directly with Evan while building on his vision for the way live online performances should be experienced.

It’s an exciting time for the company: the site is taking off and we’re expecting a ton of growth this year. We’ve already had performances from the likes of Jimmy Buffett, Korn, Plain White T’s as well as some of the coolest emerging artists around. And this year we’re going to add some ambitious new features. If you’re a developer and you like music, you should check us out.

We’re building the site in Ruby on Rails and HTML/JavaScript/CSS in the browser. Knowledge of those technologies is obviously a plus, but don’t be shy if you’re not an expert with them yet: we’re looking for smart people who can learn quickly, and our method of teamwork will help you become productive fast. We’re hiring for senior and junior roles; for the senior role you’ll probably have several years of web development under your belt, but we’re open to less for the junior role. We’re currently working with Pivotal Labs to get the benefits of their experience and development processes, so you’re sure to learn a lot and deepen your knowledge of software development methodology. You’ll work in a fast-paced test-driven environment with other dedicated technologists who are keen to build strong, robust software for the long-term. Requirements come straight from Evan as user stories; you’ll work in a pair to turn them around quickly. We like to build software iteratively and design incrementally so we can respond quickly to the emerging needs of the user community.

Pay and equity is competitive. Benefits include health, subsidized membership at the Sports Club LA in the Four Seasons, and of course you get to hang out with and meet rockstars.

Send over your resume to jobs@stageit.com and let’s talk!

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Sean Beckett

New Tech Talk: What Technology Wants

Sean Beckett
Tuesday, February 22, 2011

Kevin Kelly, Founding Executive Editor of Wired Magazine and noted technologist, presents the ideas from latest book, “What Technology Wants.”

“It suggests that technology as a whole is not just a jumble of wires and metal but a living, evolving organism that has its own unconscious needs and tendencies.

…This new theory of technology offers three practical lessons: By listening to what technology wants we can better prepare ourselves and our children for the inevitable technologies to come. By adopting the principles of pro-action and engagement, we can steer technologies into their best roles. And by aligning ourselves with the long-term imperatives of this near-living system, we can capture its full gifts.”

See all our talks at http://pivotallabs.com/talks

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Pivotal Labs

Standup 2/18/11 – Overriding Object#hash to change how Hashes store things

Pivotal Labs
Friday, February 18, 2011

Interesting Things

If you want to override how an object is stored in a Hash internally, you can override the Object#hash and Object#eql? methods. Hash always uses Object#hash in its internal hashtable. Try to keep this assertion in mind too:

foo.hash.should == bar.hash if foo.eql?(bar)

Instead of inventing some reliable algorithm to generate your hash code, you can call #hash on a object that can serve as a proxy hash generator. For example, if your object has a #name method, your #hash method could return name.hash.

  • 0 Shares
  • Share on Facebook
  • Share on Twitter

Topics

  • agile (781)
  • rails (113)
  • testing (88)
  • ruby (83)
  • ruby on rails (70)
  • jobs (62)
  • javascript (55)
  • techtalk (44)
  • rspec (38)
  • ironblogger (32)
  • productivity (30)
  • activerecord (29)
  • gogaruco (29)
  • git (28)
  • nyc (27)
  • rubymine (26)
  • bloggerdome (23)
  • mobile (22)
  • process (21)
  • pivotal tracker (21)
  • cucumber (20)
  • design (19)
  • jasmine (19)
  • ios (18)
  • webos (17)
  • objective-c (17)
  • android (16)
  • tracker ecosystem (16)
  • palm (16)
  • "soft" ware (16)
  • fun (15)
  • ci (15)
  • cedar (15)
  • rails3 (14)
  • performance (14)
  • bdd (14)
  • gem (13)
  • css (13)
  • tdd (13)
  • selenium (12)
  • goruco (12)
  • bundler (12)
  • meetup (11)
  • railsconf (11)
  • nyc-standup (11)
  • capybara (10)
  • mac (10)
  • mojo (10)
  • chef (10)
  • api (10)
Subscribe to Community Feed
  1. 1
  2. 2
  3. 3
  4. 4
  5. →
  • About
  • Case Studies
  • Team
  • Community
  • Careers
  • Contact
  • Labs
  • Events

Contact Us

contact@pivotallabs.com
+1 415-77-PIVOT
TwitterLinkedInFacebook

Pivotal Tracker

Tracker is the award-winning agile project management tool that enables real-time collaboration around a shared, prioritized backlog.
Visit pivotaltracker.com >