Posts categorized as:


Video Messaging in Rails

Check out how to add video messaging to your Rails app and get it up and running on Heroku.

We ♥ Progressive Web Apps II

Progressive Web Apps bring powerful native features like push notifications, offline, and homescreen install to the web.

Webpack v2 Quick Start

We show how to hit the ground running with webpack and start your development with a basic configuration.

We ♥ Progressive Web Apps

Progressive Web Apps bring powerful native features like push notifications, offline, and homescreen install to the web

Tessel: A First Look at JavaScript on Hardware

When a small red circuit board called the Tessel appeared on a crowd-funding site over a year ago, its promise to bring simplicity to hardware hacking caught my eye. It’s now on the market and, with a project percolating in my mind, I ordered one to...

Externally Embedding Ember

We’ve been playing around with Ember since before it was extracted from SproutCore, and it wasn’t until recently that we got this unusual request from one of our clients: “Can you embed an Ember app in an external page like you would Google Analytics...

BendyConf: Bad Estimating Games

Estimation is a crucial but challenging element to managing any software project. Without estimates, we can’t say what stories (or features, in our lingo) are in scope or not in scope for a given development phase. At the same time, the process of...

Why Clojure?

Clojure has been growing in popularity since its first major release in 2008. If you or your company is interested in understanding the value of Clojure at a high level, read on.

Clojure might be the answer if:

Your existing application is written...

Ruby? Rails? Ruby on Rails?

This post is one in a series of blog posts that answer some of the most common questions we get from prospective and current clients. All of the posts in this series are under the Questions tag if you want to view more like this.

As a consultancy...

BendyConf: Introduction To Firefox OS

Josh’s BendyConf talk introduced us to Firefox OS, an open source, web focused mobile operating system developed by Mozilla. Although it has been available for more than a year, this June marked the release of version 2.0, making now a good time to...

Velocity and Working Software

Four inches per minute. Two hundred forty miles per seven years. One and a half millimeters per second. Even without something to compare to, most would consider this an inordinately slow pace. And yet this is the average velocity of an engineering...

Swift Syntax Highlighting Workaround for Blogging

Since Swift was announced less than one week ago, we as a community can’t reasonably expect syntax rules to be pulled into popular highlighting libraries like Pygments yet (though it’s certainly already in the works). You’ll notice in our most recent...

Unit Testing in Swift

Swift, being all the rage these last four days, has definitely livened up our programming chat room quite a bit. With cautious optimism, we (Betsy and Brad) delved into the Xcode beta, curious about the state of testing with Swift. For the purposes...

Conference Review: BayHac 2014

I recently attended BayHac 2014, the Bay Area Haskell Hackathon, and I wanted to cover some of my impressions from the conference. I’m breaking it down by the days and the things that I attended. There’s a ton more on the event page linked above for...

UW Big Data Event presents Storm

After hearing that Twitter would be sending its engineers to the UW to talk about Apache Storm, a group of Bendyworkers bundled up against the cold and made the short trek to the UW.

Single Responsibility Principle & iOS

View Controllers in iOS: we need to talk. You are—without a shadow of a doubt—the worst offender of the Single Responsibility Principle, and that needs to stop.

From Ruby to Haskell, Part 3: Lazy Evaluation

One of the defining characteristics of Haskell— that you often see listed in what sets it apart from other languages— is that it is the only common language that’s lazy.

The Migrationless Migration

If I may impose upon you for a minute, relational algebra is one of those things that, like linear algebra, is a shining intellectual gem.

What can SQL do for you?

What can SQL do for you? Chris shares his thoughts on the changelog on how to take full advantage of relational databases.

Bwoken 2 Beta Released

In response to a great discussion in the bwoken issues forum, I’m happy to announce the first beta of bwoken version 2! The major change, which justified the major version bump, is that bwoken is no longer invoked with rake but instead with bwoken


Imagine yourself at a concert on the streets of Madison, a block away from the Wisconsin State Capitol (known for, among other things, being the largest granite dome in the world), listening to Willy Porter, and waiting for the headliner—Eric Hutchinson

Give Yourself a Security Makeover

While visiting Twilio for a day on my two-week programming pilgrimage I learned that I’ve been pretty insecure. Joël Franusic (@jf) explained that I needed a security makeover. You probably do too! So let’s get started. Follow the suggestions as you...

You Don’t Know Your Visitors, So Stop Pretending

Part 1: What is analytics really?

Web analytics should hurt a little. Not just the pain of seeing your low traffic revealed in hard numbers, but the realization that you don’t really know your visitors.

We programmers tend to be preoccupied by our...

Styleguide Rails

You might as well learn it now, because you’ll be using it in 6 months. Styleguide rails is a cool gem that builds a living, breathing styleguide for your site. You can add it to your project really easily (let’s just do it right now):

gem install

From Ruby to Haskell, Part 1: Testing

You read that right. Or maybe, if you read it as “stop using Ruby and start using Haskell”, you read it wrong. I’m going to show you why I find Haskell to be utterly fascinating and eminently practical.

Foremost, I want to collect some bits and pieces...

Getting Plan 9 running on the Raspberry Pi

More Unix than Unix

Do you like Unix? Do you really like Unix? Well, what if I told you there’s a little-known operating system out there that’s more Unix than even Unix is. Cool, right?

Well it is true! Plan 9 occupies an interesting niche in the...

Testing Security with Brakeman

Security in web applications is not something developers discuss often enough – some think of it as a taboo subject, or something the NOC guys have to deal with. Some treat security as a post deployment afterthought. Sometimes little thought is given...

OMG! Rails Rumble!

Last weekend, three Bendyworkers and a Swink-person (Swink-ee?) participated in the Rails Rumble, a competition to build a web application in just 48 hours. Rather than hacking on the backend like I usually do, I ended up almost exclusively forging...

Cthulhuian Document Preparation With Troff

tl;dr: If you are looking for a lightweight document preparation system in the style of LaTeX, try out troff which is probably already on your system.


Lurking deep in UNIX, even on your shiny new Mac, is the eldritch horror of troff. It waits...

Don’t Say ‘Emacs’ or ‘Vi’

A brief tour of some other editors

Quick, think of your favorite $EDITOR. If you’re anything like me or the people I work with, you’ve got a horse in this race. And again, if you’re anything like myself or my comrades, you’ll probably say Emacs or...

Version Control for Poetic Time Travelers

Matthew McCullough (@matthewmccull) leads Git workshops across the world. He recently visited Madison, Wisconsin to discuss and demonstrate advanced topics such as rerere merging, the reflog, interactive rebase, cherry-pick, show-branch, branch filtering...

The Hidden Life of Stylesheet Preprocessing

Like any piece of art, a stylesheet should be indivisible and bold, but natural. It should arrive to the browser in one elegant file, a succinct connection between page semantics and presentation. Preprocessing distances a stylesheet from the Sturm...

Don’t Play CSS Tetris

“Want to see the future?” Dale Sande (@anotheruiguy) leaned toward me with a conspiratorial gleam in his eye. His laptop was crowded with code and design layouts. He proceeded to show me that I have been doing CSS all wrong.

My first mistake is using...

Bwoken Version 1.1 Released

Version 1.1 of Bwoken has just been released! This feature release includes the ability to run UIAutomation tests on a device rather than the simulator, in addition to a number of internal improvements to Bwoken.

Developers we come across have always...

Introducing Bwoken

Bwoken is a UIAutomation test runner for both iPhone and iPad, which lets you write your tests in CoffeeScript, then run them in bulk from the command line. Watch the video, then head on over to its homepage!

George Boole Returned As a Zombie and is Gnawing on My Brain

This is about that oft-neglected corner of programming, the humble boolean. Perhaps, by thinking about what’s going on in many boolean expressions, we can iron out his quickly-forking complexity. And, oh, what luck! Here’s a slab of boolean logic that...


Note: This article was cross-posted from Brad’s personal blog: Naming Things is Hard

Over the last month at Bendyworks, I’ve been pairing with Jaymes on our latest initiative: adding iOS development to our repertoire. As a Ruby developer learning...

Copyright 2017. Made with love by Bendyworkers in Madison, Wisconsin