robots.thoughtbot.com Archives - 16 April 2013, Tuesday

In this week’s podcast, Ben Orenstein is joined by Chad Fowler, author, speaker, and CTO of 6wunderkinder. Ben and Chad discuss Chad’s recent move to Berlin and 6wunderkinder, what a CTO does, getting back to coding, the early Ruby community, who Chad wants to hire, predicting success...

August 2, 2011 dancroak apache bench dynos heroku performance load testing 7 minute ab: impatient man’s load tests for a Heroku app We’ve been working with a client who recently launched a new service. The launch entailed their marketing team sending batches of emails to a 1 million+ ...

Related:

April 6, 2013 lailawinner rvm rbenv ruby Using rbenv to manage rubies and gems We recently switched from RVM to rbenv for managing Ruby versions. > “Make each program do one thing well.” - Tenet #2 of The UNIX Philosophy Why consider switching to rbenv? The UNIX philosophy espouses an...

The new design includes a new layout, which is much more appropriate for a book. We updated the typeface and font size to improve the experience when reading the book on a screen as opposed to a printed page. The margin size is also greatly reduced, making it easier to zoom in on a la...

thoughtbot’s Ben Orenstein is joined by Scott Orn, venture capitalist at Lighthouse Capital Partners by day, and co-founder of Ben’s Friends by night. Ben and Scott discuss building a community, the future of Ben’s Friends, and how running the site helps him be a better VC, teaching p...

July 28, 2009 dancroak anti-pattern testing Mystery Guest The xUnit Test Patterns: Refactoring Test Code book has an ASTOUNDING amount of testing knowledge. The patterns are also at xunitpatterns.com . Here’s an example. You’re having trouble understanding the behavior a test is verif...

April 7, 2013 dancroak vim style guide Wrap existing text at 80 characters in vim You have an existing block of text or code in vim. You want to re-format it to wrap to 80-characters. :set textwidth=80 You might want this setting to apply automatically within certain file types like M...

April 5, 2013 jyurek ruby debugging unix processes Using GDB to inspect a running Ruby process This job shouldn’t be taking this long! That’s not a great thing to have to say, is it? However, I bet you’ve said it before and may not have immediately know why. With liberal use of puts a...

November 3, 2012 gfontenot ios xcode llvm Xcode Build Settings Part 1: Preprocessing That screen. You know the one. The table of text. The one with scary sounding terms such as Mach-O Type and Rez Search Paths . The one you’re probably avoiding right now, for fear that changing one of...

April 6, 2013 lailawinner rvm rbenv ruby Using rbenv to manage rubies and gems We recently switched from RVM to rbenv for managing Ruby versions. “Make each program do one thing well.” - Precept #2 of The UNIX Philosophy Why consider switching to rbenv? The UNIX philosophy espouses an...

when the GPU is used for compositing and rendering graphics, such as the case for OpenGL and the Core Animation/UIKit implementations built on top of it. Until recently, hardware acceleration was a major advantage that iOS held over Android; most animations in the latter felt noticeab...

Related:

April 5, 2013 jyurek ruby debugging gdb Using GDB to inspect a running Ruby. This job shouldn’t be taking this long! Well, that’s not a great thing to have to say, is it? But I bet more than a few of you have said it before, and not many of you knew exactly why at the time. Oh, sure, ...

The problem with nil is that it’s hard to know when to expect it. As a developer coming onto this project, or as a developer coming back to a piece of code after a while, it’s hard to know which methods might return nil. A method named membership_for sounds like it should return a Mem...

Related:

April 3, 2013 drapergeek shoulda matchers shoulda open source Shoulda Matchers 2.0 Shoulda Matchers has been around for a long time. Unfortunately, it’s starting to suffer from feature bloat so we’re narrowing its focus to keep releases fast and the maintenance burden low. Removing De...

April 3, 2013 cpytel playbook workshop thoughtbot Introducing The Playbook Online Workshop We’ve been offering a video version of The Playbook for some time, and now we’re happy to announce the evolution of that concept, the new Playbook Workshop . This workshop is the real-time, expa...

This week, Ben Orenstein is joined by Peter Moldave, attorney at Gesmer Updegrove to discuss attorney client privilege, what not to do with email, the similarities between lawyers and programmers, how he got into law, his history with technology, and his time as a corporate lawyer at ...

I tend to build quick little games to learn new ideas, frameworks, languages, etc. For Redis pub/sub I chose to emulate IRC, since “channels” are essentially the same concept for an IRC server. A user connects, talks into a channel, and if others are there, they get the message. This ...

September 30, 2011 gabebw zsh dotfiles bash shell cd cd’ing to frequently-used directories in ZSH Josh just dropped some sweet, sweet ZSH knowledge. I spend a lot of time in the directories under $HOME/thoughtbot/ and $HOME/src , and to get there I type (for example) cd ~/thoughtbot/h...

March 30, 2013 gfontenot ios design Designing for iOS: Blending modes Let’s say that we have an app that makes use of image assets for icons, custom progress bars, etc. Now we want to allow users to theme the app, and these images need to conform to this new color scheme. The obvious ...

Hey Denver! Our CTO, Joe Ferris, is going to be in Denver next week and we’d like to have a beer with you. We’ll be joining some of our friends over at SendGrid in their spiffy Denver office for good local beer and a talk on “Improving Performance for Real-Time Requests”.

January 13, 2011 qrush scaling rails Fetching source index for http://rubygems.org/ Like you, I’ve sat at my terminal watching Bundler emit this post’s title and do nothing for quite a while. Imagine what we could be doing instead of waiting for dependencies to resolve! I’m out of ide...

Related:

March 25, 2013 ruby ruby on rails ruby science backbone.js workshops Episode 41: This is the sausage being made This week Ben Orenstein in joined by thoughtbot CEO, Chad Pytel, to discuss thoughbot’s books, online and in-person training programs, other educational products, and the la...

Related:

Tips for writing your own Rails engine While converting Clearance to a Rails engine was easy, once we were there, we found it wasn’t Valhalla. We fixed the bugs while using the engine internally on a few apps. Here are the lessons we learned. Keep them in mind if you’re thinking of wr...

Ben is joined by Bryan Helmkamp, the founder of CodeClimate. In Bryan’s second appearance on the podcast, Ben and Bryan discuss the architecture behind CodeClimate, scaling the service, and growing the business. They also discuss speaking at conferences, proposal selection, two factor...

March 17, 2013 hrward rspec webmock testing sinatra http rack-test service-oriented How to test Sinatra based Web Services Sinatra is a fantastic lightweight framework for building web services. We’ll use it as the server framework for the HTTP endpoints in our Service Oriented Archit...

March 16, 2013 joelq backbone backbone.js backbone template Backbone.js Templates Without Logic or Interpolation Traditional Backbone.js templates typically interpolate a few values and have a little basic logic, but even the simplest of these templates knows too much. It is the view’...