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: December 2009

Matthew Kocher

Standup 12/16/09

Matthew Kocher
Wednesday, December 16, 2009

Ask for Help

  • “Does anyone know why directory globbing order differs by system architecture?”
    This problem bit this stand up blogger yesterday. An entire directory was required, and on a mac the order is alphabetical. On linux it’s apparently random, most likely based on inode order. Ruby doesn’t gaurantee an order, so something that may “just work” on a mac purely by luck might not work on linux/bsd/windows.
  • “Is anyone using unicorn on EngineYard?”
    Not yet.

Interesting Things

*Keep files continued – The keep file will cause the original file to be retained, so just touching the keep file is fine. No need to mess with sym links or anything of the sort

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Edward Hieatt

SF.TUG, December 2009 edition

Edward Hieatt
Wednesday, December 16, 2009

Yesterday we held a TUG over lunchtime at our San Francisco offices. The subject was “Tracker 101″. Thanks to all those who came; some good questions came up, and we hope you found it useful!

TUG

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

Standup 12/15/09 – Rubymine, Chef, Passenger and more

Matthew Kocher
Tuesday, December 15, 2009

Ask for Help

“How do I get Rubymine to run Selenium tests?”

“sh: java command not found” – Tried setting environment variables in bash.rc. Rubymine doesn’t use bash so it doesn’t get the bash environment. You can set the variables in launchd.conf (be careful of the syntax), start Rubymine from the shell, or set the path in Rubymine.

It was brought up that Chef could be used to maintain these changes, and make it easy to spin up new developer workstations. It’s agreed that it would be better than shell scripts, but unclear if it would be worth the effort.

Interesting Things

  • EngineYard, Chef, keep.appname.conf – appending keep will prevent chef from overwriting the file.
  • BufferedLogger flushes every 1,000 lines – It’s buffered, after all. However, rails uses BufferedLogger by default in production, so when you switch to troubleshooting a a production issue, be aware. “Just poke it 1k times” was offered as a solution, but setting sync equal to true is probably easier.
  • Phusion Passenger/Facebooker/Threads Locals – All requests in passenger run in the same thread, which means the thread locals are shared. Facebooker is storing the facebook session in thread locals, which causes bad things to happen. This was difficult to debug as the team wasn’t using passenger in development.
  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Matthew Kocher

Standup 12/14/2009: The mechanics of helping your visitors tweet

Matthew Kocher
Monday, December 14, 2009

Interesting Things

  • Tweet this has some peculiarities which took some Pivots a while to figure out. The URL you want is http://twitter.com/home?status=this+is+my+tweet – Using www causes a redirect, and leaving off home appears to work, but will lose the message if the user is not currently logged in to twitter and has to go through the log in dialog.

  • A pivot asks if anyone uses the “tweet/share/digg/blog/sharethis/email/overshare” links. Two pivots do, one thinks they’re “rarely used but requisite” and one has added them to a project recently and promises to report back in a few weeks with some log data.

Ask for Help

“Does anyone use Delayed Job with more than one worker process?”

One project is trying to use four workers, and can’t find a way to monitor their individual status. The current solution is to spin them all down and then up, which not optimal. One suggestion is to wrap the entire thing in a rescue block, though this is probably not optimal.

  • 0 Shares
  • Share on Facebook
  • Share on Twitter

opacity (or, a paucity of transparency)

Alex Chaffee
Sunday, December 13, 2009

The rules for how to make parts of your HTML page translucent are kind of hard to understand — in other words, the opacity rules are pretty opaque. (Anyone who can make that into a good pun, let me know and I’ll change the title of this article accordingly.) The following represents the results of a couple of days of empirical research and as such may be incomplete or inadequate, but here goes.

In the brave new HTML5 world, with all the CSS gizmos supported by Safari and Chrome and Firefox, there are now three ways to make things translucent. And none of them works quite the way I naïvely expected.

One. Use the “opacity” CSS attribute. This attribute works pretty well… at first. It applies to an element and all its children, but according to the spec it’s meant to act as an upper bound on the opacity of all its children, and while it can technically be overridden, the overridden value is applied as a multiplier to the previous value, not as a whole separate value. So if you want some fully opaque children inside a translucent container, you can’t get there from here. The children are always going to be at least as transparent as the parent — in other words, they can’t transcend their parent’s transparency.

This is spelled out in detail in https://developer.mozilla.org/En/Useful_CSS_tips/Color_and_Background and as a solution they propose either pulling the child out of the normal hierarchy (ugh — that means you lose all the other CSS inherited styles and positioning), or …

Two. Make an alpha channel PNG and use it as the parent’s background, probably with background-repeat:repeat. This is adequate, except that there’s now another, cleaner way…

Three. For the parent, use background-color: rgba(255, 255, 255, 0.5) (where ’0.5′ is the opacity and ’255,255,255′ is the decimal RGB value) — that will work the same as an alpha PNG but without needing to go round-trip to Photoshop every time you want to change the color or level. Much better.

I have no idea what the level of support for rgba background colors is, but it seems to work in the latest Safari and Firefox so I’m happy.

  • 0 Shares
  • Share on Facebook
  • Share on Twitter

annotate 2.4.0 released

Alex Chaffee
Sunday, December 13, 2009

Remember the annotate_models rake task? Dave Thomas wrote it many years ago and it corrects one of the flaws in ActiveRecord: it describes the schema for a table as a comment inside the Ruby model file that it maps to. Unfortunately Dave hasn’t had time to maintain it, so a couple of years ago I cleaned up some bugs and re-published it as a pastie. Then Cuong Tran made it a gem and put it on Github, and since then, there’s been a whole lotta forkin’ goin’ on!

I recently pulled in a bunch of the forks into ctran’s master branch, and just pushed it to Gemcutter as version 2.4.0. Just run gem sources and make sure http://gemcutter.org is in your list — otherwise do gem source -a http://gemcutter.org — and sudo gem install annotate and it’ll install a binary called annotate in /usr/bin. See the README on github for more info and have fun!

One caveat: ImageMagick installs a tool called annotate too (if you’re using MacPorts it’s in /opt/local/bin/annotate). So if you see

Usage: annotate imagein.jpg imageout.jpg

then put /usr/bin ahead on the path and you’ll get ours instead.

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

NYC Standup Roundup – Week of 12/7

Pivotal Labs
Friday, December 11, 2009

Interesting

   >> false.blank?
   => true
  • blank? first checks to see if a method responds to empty? and if not evaluates !self which in false’s case will always be true. This caused a pair a bit of confusion when trying to validate the completeness of a form that had a checkbox.

  • Railscamp — an all-weekend hackfest — is being held in Rhode Island in March of next year.

  • All API keys were recently reset on Gemcutter due to a security bugfix – in order to publish gems you’ll need to update your gemcutter gem to regenerate your key.

  • Postgres will return an error if you attempt to ORDER BY columns that are not specified in the SELECT. This is painful in cases where you’re using DISTINCT with any kind of JOIN.

  • One team cut their deployment down from 7 minutes to 30 seconds with a few cap recipe tweaks. Most of the time was saved by symlinking gem bundler-related directories to prevent bundler from building native gems on each deploy and by only running database migrations when anything in db/migrate had changed.

  • When using the inherited hook for ActiveRecord::Base, beware of tables that have their name overriden by set_table_name. The inherited hook will execute prior to that statement being evaluated which can cause strange results.

  • Getting Selenium to work with Snow Leopard involves some manual file renaming hackery — for anybody struggling with this there are a couple of posts out there to walk you through the process.

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

SF.TUG: Pivotal Tracker 101

Sean Beckett
Thursday, December 10, 2009

Perhaps you have heard about Pivotal Tracker but you don’t know if it’s a good fit for your organization. Perhaps you are a new user with some questions about how best to use the tool. Perhaps you’ve been using Tracker for a while but are curious about more advanced features. If you’re in San Francisco next Tuesday we can give you answers in person.

The San Francisco Tracker Users Group is having a lunchtime meeting next Tuesday at 12:30 p.m. at the Pivotal Labs office on Market St. Please register on the Meetup site, as seating is limited.

Edward Hieatt, Principal at Pivotal Labs and Pivotal Tracker developer, will give an overview of the idea behind Pivotal Tracker and the common features. Based on time and interest, Edward will go into more detail about advanced features, upcoming features, and the philosophy behind Tracker. We hope to see you there!

Beverages will be provided, but please bring your own lunch.

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

Looking for a new challenge? Come work for Pivotal clients!

Sean Beckett
Thursday, December 10, 2009

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 are short descriptions of Togetherville, a current client of Pivotal Labs, and Honk and ekoVenture, former clients currently looking for developers. All three are based in San Francisco. The full job postings follow.

Togetherville is an early-stage, funded startup at the crossroads of learning, technology and society. Starting with our highly-respected and successful Funders and Advisors, we are building a team that is excited about getting a ground-floor startup experience and is capable of consistently meeting and exceeding the high expectations of success we have set for ourselves. We are extremely passionate about what we’re doing and just as passionately looking for focused and fun people to join our team. We are not hung up how many years of experience you have. We’d rather start with your potential and what you can do and then go from there!

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.

ekoVenture has created an OpenTable-like platform for travel experiences and day activities. Our mission is to take the cool travel experiences that are available, and make them accessible to the average traveler. Think sailing, trekking, kayaking, safari, cycling, wine tasting, culinary trips, cultural trips, voluntourism, eco travel, and more. Right now, more than $30 billion is being transacted on trips in our market and we will grow this number by providing greater access to reputable tour suppliers around the world. Already, more than 450 tour suppliers use this platform and have entered 10,000 trips that serve over 160 countries, all which are live to travelers via ekoVenture.com. v2.0 of ekoVenture is taking our already robust trip platform and adding a layer of innovative social features.

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

Full job postings follow.

Togetherville

Are you interested in using your Ruby on Rails dev skills to change the world?

Togetherville is building our founding tech team. This is your big chance to get into a very early startup and help build its foundation. We want someone who is tired of the same ol’ same ol’ and wants to take their skills and capabilities to the next level as a technology leader and company builder.

You will begin your Togetherville experience working alongside the stellar engineers at Pivotal Labs. This will help you build your skills (and show them off) as we rapidly build out an amazing new way for kids and parents to engage online.

If you are somebody who has:

  • The skills/potential to build an amazing interactive social web environment
  • AMAZING Ruby on Rails skills
  • Comfort with Javascript/DHTML/CSS/AJAX
  • Strong collaborative skills and ability to work in multiple roles both locally and with offshore development teams
  • Experience with/ interest in Agile Software Development/pair programming and Test Driven Development
  • Passion, Strong values, Likability, Intellect and Skill

Then, WE WANT TO TALK TO YOU!

Togetherville is an early-stage, funded startup that is sitting at the crossroads of learning, technology and society. Starting with our highly-respected and successful Funders and Advisors, we are building a team that is excited about getting a ground-floor startup experience and is capable of consistently meeting and exceeding the high expectations of success we have set for ourselves.

We are extremely passionate about what we’re doing and just as passionately looking for focused and fun people to join our team. We are not hung up how many years of experience you have. We’d rather start with your potential and what you can do and then go from there!

If you think this job description was written with you in mind, contact us. We’ll tell you more about Togetherville, the job opening and the change we are making in the world!

Contact – jobs@togetherville.com

Honk

Honk.com is a new online automotive website that will make car shopping fun and social. Consumers experience a new way to explore new cars, focusing on what other real people actually think, not product specifications or biased editorial. Our site is 100% consumer driven with no journalists or former race car drivers telling you what minivan or sedan you should purchase. Instead, users find real people sharing their opinions and experiences. 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. Thankfully, our partners allow (and encourage) us to remain financially independent, unpolitical, and fast-moving… a true start up.

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.

Honk is developing a platform of distributed applications and a destination website that will engage consumers’ existing social networks. To be clear, we are not building yet another community or social network. Many of our social applications will reside on our partners’ sites with the intent to drive users to honk.com for a richer experience, including unique content, interaction, and transaction-oriented tools. We will continue to expand our product over the next twelve months. In addition to deep knowledge of Ruby on Rails and Agile / Test-Driven Development precepts, we hope you have a thorough understanding / are comfortable with:

  • Amazon S3/SQS/EC2
  • CSS/Javascript/JQuery
  • Thin/NGinx/Mongrel
  • RSpec/Webrat/Selenium
  • CSV and XML data feed integration

Previous experience working in online automotive or social media is desired, but definitely not required. Honk is currently located in San Francisco with some ties to Los Angeles. Our ideal candidates should reside in one of these two major metro areas, although we are open to “off site” developers who have the right skills and background.

Please send inquiries to Bruce Krysiak, CTO: techjobs@honk.simplicant.com

EkoVenture

Booming start-up seeks talented and dedicated RoR engineers

About the firm:

ekoVenture has created an OpenTable-like platform for travel experiences and day activities. Think sailing, trekking, kayaking, safari, cycling, wine tasting, culinary trips, cultural trips, voluntourism, eco travel, and more. Already, more than 450 tour suppliers use this platform and have entered 10,000 trips that serve over 160 countries, all which are live to travelers via ekoVenture.com. Trips are available directly to consumers via ekoVenture.com or through distribution partners. v2.0 of ekoVenture is taking our already robust trip platform and adding a layer of innovative social features (which cannot be discussed here).

Our mission is to take the cool travel experiences that are available, and make them accessible to the average traveler. Right now, more than $30 billion is being transacted on trips in our market and we will grow this number by providing greater access to reputable tour suppliers around the world.

Our company is well funded by reputable venture groups, superstar angels, and the world’s most famous and successful entrepreneurs (familiar names).

Although a lot of companies talk about agile software development, we actually implement it (hard-core agile and extreme programming), with pair programming, test-driven development, aggressive refactoring, weekly releases, etc. Whether you already have first-hand experience with agile or are interested in learning agile through our immersive agile boot camp, then ekoVenture is certainly for you!

We practice lean start-up methodologies and our team members are smart, enthusiastic, creative, and obsessed with making a start-up company into household name! This will involve a lot of effort and focus, but thankfully there is delicious late-night Vietnamese food right across the street from our hip offices in Jackson Square. We are making it happen and need incredible engineers to join our already talented team.

About you:

  • Well versed in RoR with a minimum of one year experience;
  • Self-motivated and takes initiative;
  • Loves a place where he/she can make an impact;
  • Extraordinary communication skills;
  • Innovative & creative;
  • Up on the latest trends & plug ins;
  • Enjoys regular tech networking and staying informed;

As a Ruby on Rails developer, you will do the following:

  • Work with product managers, UI designers, QA engineers and other developers to design, implement, document, and test multi-tiered, web-based applications;
  • Work on all layers of our web application, from front-end CSS and server side coding to database development;
  • Troubleshoot and resolve complicated and business-critical technical issues related to function, performance and security;
  • Integrate with third-party web services and data sources;
  • Implement automated tests;
  • Build tools to automate repetitive tasks.

Qualifications:

  • BS/CS or equivalent experience;
  • Experience engineering for high-volume, transaction-oriented, consumer-facing web sites;
  • Rails 2, MySQL 5, CSS, MacOS X, and Linux or OpenSolaris (preferred);
  • JavaScript;
  • Git;
  • Experience with testing frameworks from rspec and Cucumber to Selenium and JsUnit;
  • SQL

We offer:

  • Great compensation negotiable based upon experience
  • Full benefits, two weeks paid time off, and 401K
  • Attractive employee stock option plan (we want you to share in our success)

Cool perks, such as:

  • Company iPhones, mobile service, and 3G Internet connection on laptop
  • Required sabbatical time (in addition to paid time off)
  • Free vacations anywhere in the world through our suppliers’s complementary employee programs
  • Discounted/reimbursed health club memberships at the city’s best facilities
  • Regular company-sponsored local outings such as climbing, sailing, hiking and more

Please send inquiries to jobs@ekoventure.com

  • 0 Shares
  • Share on Facebook
  • Share on Twitter
Christian Sepulveda

Tweed 1.2: Lists, Retweets and more

Christian Sepulveda
Thursday, December 10, 2009

1.2 of Tweed is now available in the App Catalog.

Bugs

  • Timeline markers sometimes not working with searches

Features and Changes

  • List Support
  • new Retweets appear in home timeline (with icon indicator)
  • Preference to use old/new RT style
  • Preference for setting notification frequency
  • Reset Timeline markers button (in Preferences & Accounts)
  • Goto Timeline Marker option (in header popup)
  • Pivotal Labs icon is no longer a link

Lists

  • Lists is a main menu item: shows your lists and lists you follow
  • User Profile: view user’s lists and where they are listed
  • List Profile: view list members and see who is following the list
  • Notifications: select a list you follow for notifications

We will be adding list editing capability (create lists, add members, subscribe to lists, etc.) in another release.

Tweed
Tweed
Tweed
Tweed
Tweed
Tweed

  • 0 Shares
  • Share on Facebook
  • Share on Twitter

Topics

  • agile (783)
  • rails (117)
  • testing (90)
  • ruby (85)
  • ruby on rails (71)
  • jobs (62)
  • javascript (59)
  • techtalk (44)
  • ironblogger (42)
  • rspec (39)
  • bloggerdome (34)
  • productivity (34)
  • activerecord (30)
  • rubymine (30)
  • git (29)
  • gogaruco (29)
  • nyc (27)
  • design (24)
  • mobile (23)
  • pivotal tracker (22)
  • process (21)
  • cucumber (21)
  • jasmine (19)
  • ios (18)
  • tracker ecosystem (17)
  • webos (17)
  • objective-c (17)
  • fun (16)
  • android (16)
  • palm (16)
  • ci (16)
  • "soft" ware (16)
  • bdd (15)
  • tdd (15)
  • cedar (15)
  • rails3 (14)
  • performance (14)
  • css (14)
  • gem (13)
  • mouse-free development (12)
  • selenium (12)
  • goruco (12)
  • bundler (12)
  • api (12)
  • keyboard (11)
  • meetup (11)
  • railsconf (11)
  • nyc-standup (11)
  • capybara (10)
  • mac (10)
Subscribe to Community Feed
  1. ←
  2. 1
  3. 2
  4. 3
  5. 4
  6. →
  • 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 >