robots.thoughtbot.com Archives - 29 May 2017, Monday

  • Join thoughtbot for  WWDC17

    robots.thoughtbot.com 24 May '17, 12am

    Join thoughtbot for  WWDC17 Chad Pytel May 24, 2017 news ios macos apple On June 5th, we’ll be gathering in several of our cities to watch the 2017 Apple WWDC Keynote. We’d love to have you join us. Join us for dinner and drinks in our London studio at 5:30pm BST to watch the Keynote...

    Related:
    1. 17だった rubygems.org 27 May '17, 4am
    2. Takasaki 17 June 2017 railsgirls.com 27 May '17, 11am
  • Recent FormKeep Improvements

    robots.thoughtbot.com 24 May '17, 12am

    Keeping momentum up on a product like FormKeep is not terribly difficult as the feedback we receive from our users is immensely helpful. Some of that feedback has recently helped us ship some high leverage features and updates to FormKeep that we’d love to share with you. Dynamic Redi...

  • Introducing Artboard 1

    robots.thoughtbot.com 23 May '17, 12am

    We’re excited to announce Artboard 1 , a new design event series in our San Francisco office! Join us for workshops, design challenges, and opportunities to make cool and weird things for their own sake. We welcome everyone, whether or not they think of themselves as designers. Our fi...

  • The Remix

    robots.thoughtbot.com 22 May '17, 12am

    Pablo Picasso famously said that “good artists borrow, great artists steal”. The same can be said for interface design. The building blocks for your product are already out there, you just have to find them. Looking at similar products will provide context and highlight knowledge gaps...

  • Real time online activity monitor example with node.js and WebSocket

    robots.thoughtbot.com 21 May '17, 9pm

    The HTML 5 specification introduces the Web Socket interface, which defines a full-duplex communications channel that operates over a single socket and is exposed via a JavaScript interface in HTML 5 compliant browsers. The bi-directional capabilities of Comet and Ajax, unlike Web Soc...

  • Unity Lighting Basics

    robots.thoughtbot.com 19 May '17, 6pm

    Lighting in Unity can be tricky, especially if you’re worried about performance. This guide will cover a few introductory tips that will give you greater control over lighting in your 3D projects while making it run smoothly. Some familiarity with Unity is helpful for this tutorial, b...

    Related:
    1. Unity Lighting Basics robots.thoughtbot.com 18 May '17, 12am
  • Unity Lighting Basics

    robots.thoughtbot.com 18 May '17, 12am

    Lighting in Unity can be tricky, especially if you’re worried about performance. This guide will cover a few introductory tips that will give you greater control over lighting in your 3D projects while making it run smoothly. Some familiarity with Unity is helpful for this tutorial, b...

    Related:
    1. Unity Lighting Basics robots.thoughtbot.com 19 May '17, 6pm
  • Writing a Hypermedia API client in Ruby

    robots.thoughtbot.com 12 May '17, 12am

    Much ink and pixels have been spent discussing the virtues and flaws of Hypermedia for API design. Like with REST , the sheer amount of theory and jargon around the subject can make it hard to understand the potential benefits for you as an API developer, the cost of implementation an...

  • Tell Me When It Closes: Bookmarklet

    robots.thoughtbot.com 09 May '17, 12am

    About a month ago we launched Tell Me When It Closes , a service for getting less noise from GitHub issues/pull requests and more signal. At thoughtbot we believe we can always be improving, from the big issues down to the smallest things like having to copy and paste a URL. The Impet...

  • Untangling Ruby Threads

    robots.thoughtbot.com 08 May '17, 12am

    To ensure all citizens are treated fairly the underlying operating system handles context switching between threads, i.e. when to pause execution of one thread and start or resume execution of another thread. We said above that the GIL prevents multiple Ruby threads within a process f...

  • Design Inspiration: Glossier

    robots.thoughtbot.com 02 May '17, 7pm

    Here is some web and packaging design that I’ve found inspiring. Hopefully, it’ll inspire you too! Glossier is an online skincare and makeup company known for making fun, simple essentials (like Generation G and Boy Brow ). They also have a distinctly youthful, feminine brand, right d...

  • Design Inspiration: Glossier

    robots.thoughtbot.com 26 Apr '17, 12am

    Here is some web and packaging design that I’ve found inspiring. Hopefully, it’ll inspire you too! Glossier is an online skincare and makeup company known for making fun, simple essentials (like Generation G and Boy Brow ). They also have a distinctly youthful, feminine brand, right d...

  • Building a React Native App in Two Days

    robots.thoughtbot.com 25 Apr '17, 4pm

    At the end of the year, thoughtbot hosts Ralphapalooza — a two day internal hackathon to learn and explore new technology (and hopefully ship something while doing so). This year we wanted to do something different, creative and fun but also get it out the door and into the world by t...

  • Building a React Native App in Two Days

    robots.thoughtbot.com 25 Apr '17, 2am

    At the end of the year, thoughtbot hosts Ralphapalooza — a two day internal hackathon to learn and explore new technology (and hopefully ship something while doing so). This year we wanted to do something different, creative and fun but also get it out the door and into the world by t...

  • Liftoff Spinoff

    robots.thoughtbot.com 24 Apr '17, 12am

    Over 4 years ago, I wrote a blog post announcing Liftoff , our tool for customizing Xcode projects with opinionated settings. About a year after that, I wrote another post announcing the 1.0 version of Liftoff, which included project generation and custom templates. Today, I’m writing...

  • Creating A Remote Development Machine

    robots.thoughtbot.com 22 Apr '17, 9pm

    Recently we worked for a client that needed to block external IPs. We had a lot of back-and-forth asking to whitelist the various IPs we might be connecting from, so to make that easier I kicked off an experiment I’d been thinking about for a while. Working hypothesis Using a remote m...

  • The Bike Shirt

    The Bike Shirt

    robots.thoughtbot.com 14 Apr '17, 7pm

    To celebrate thoughtbot’s fifth year recording at RailsConf, we’ve printed a small batch of t-shirts for The Bike Shed ! They feature new artwork, are available in both fitted (below left) and straight cuts (below right), and are printed by our friends at Social Imprints . Pre-orders ...

  • Automatically Collapse Generated Files in GitHub Diffs

    Automatically Collapse Generated Files in GitHub Diffs

    robots.thoughtbot.com 11 Apr '17, 12am

    Not too long ago we introduced Pipe it Down , a Chrome extension to help deal with GitHub pull request diffs with lots of files. The major pain point it addresses for us is dealing with large files automatically generated by Unity. These files rarely get reviewed by a human, but we ha...

  • Following the Path

    robots.thoughtbot.com 10 Apr '17, 12am

    Sometimes you will have multiple versions of a command installed. For example psql from Homebrew and psql from Postgres.app . The which command is is great for finding out which one is being used. Use this info to tweak your $PATH to ensure the right one loads. You can also use the -a...

  • A React Rendering Misconception

    robots.thoughtbot.com 05 Apr '17, 12am

    Part of the misconception was that I didn’t understand that rendering a component and updating the DOM for that component are two separate steps in the lifecycle. The component has to be re-rendered in order for the diffing algorithm to compare it to the previous output. If the output...

  • Wrap Existing Text at 80 Characters in Vim

    robots.thoughtbot.com 04 Apr '17, 9am

    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 Markdown: au BufRead,BufNewFile *.md setlocal textwidth=80 We have that setting in ...

  • Positioning Elements on the Web

    Positioning Elements on the Web

    robots.thoughtbot.com 04 Apr '17, 12am

    Absolute positioning should not be used to layout columns of content. Because the elements are removed form the document flow, that means every time you add content to one section, you may have to adjust the sizes of other sections by hand, and it makes responsive design much more of ...

  • It's About Time (Zones)

    robots.thoughtbot.com 03 Apr '17, 3pm

    that limits the set of zones provided by TZInfo to a meaningful subset of 146 zones. It displays zones with a friendlier name (e.g. “Eastern Time (US & Canada)” instead of “America/New_York”). And together with ActiveSupport::TimeWithZone , Rails provides the same API as Ruby Time ins...

  • Canimal: How we over engineered drinking La Croix

    robots.thoughtbot.com 03 Apr '17, 12am

    At the end of every year, thoughtbot sets aside two days to group together fellow thoughtbotters and build or create something. We call it Ralphapalooza since our logo is a robot named Ralph and it’s a palooza . So this year three of us got together and decided to build Canimal, a can...

  • You Don't Need JavaScript for That!

    robots.thoughtbot.com 31 Mar '17, 7pm

    I often use a few CSS alternatives to common JavaScript interactions when I’m developing the front-end of a website (especially a prototype). There are some projects where downloading a plugin or creating a new file for a few lines of code seems like overkill. Here are some components...

  • Decorating ActiveRecord

    robots.thoughtbot.com 31 Mar '17, 3pm

    object in Rails, you probably want to define the following to ensure the decorator works the way you expect instead of silently delegating to the underlying object:

  • Modeling a Paginated API as a Lazy Stream

    Modeling a Paginated API as a Lazy Stream

    robots.thoughtbot.com 29 Mar '17, 12am

    The API you’re integrating against returns an HTTP 404 response code for pages with no results so the Enumerator stops iterating when it gets a non-successful status code. For other API implementations, it may make sense to check on empty results instead. Some APIs provide links to th...

  • Writing Semantic Markup

    Writing Semantic Markup

    robots.thoughtbot.com 28 Mar '17, 12am

    The history of front-end development is not a short one as computer history goes, but it wasn’t until recently that it has started to get the tools and attention it deserves. Writing markup was mostly ignored as being both cumbersome and yet simplistic. The practice of crafting “the v...

  • Tell Me When It Closes

    Tell Me When It Closes

    robots.thoughtbot.com 28 Mar '17, 12am

    We’re thrilled to announce our newest service: Tell Me When it Closes , a simple, straightforward application that helps you keep up with GitHub discussions without getting lost in the noise. Instead of getting an email for every comment on an issue or PR, get just one email when the ...

  • Getting started with Neat 2.0, a lightweight and flexible Sass grid

    robots.thoughtbot.com 27 Mar '17, 6pm

    Another important distinction is that, similar to many other grid systems, Neat 2.0 columns have the gutters on exterior of the object. Basically this means that if you had a series of 12 columns in a 12 column grid, there will be gutters between each of the grid columns as well as gu...