Posted on 03.17.14 by Glynnis |

Sponsorship spotlight: Ashe Dryden and Diversity in Tech

Ashe Dryden illustration

Throughout the year, Bendyworks contributes to a number of community-based events including meet-ups, conferences, and even a summer concert series that takes place just outside our office on King Street. This year we’re also sponsoring individuals to support important work being done in the tech community.

One of the first individuals we’ve sponsored is Ashe Dryden, whose amazing work on a variety of initiatives helps increase diversity in the tech community. She’s consulted with companies like Heroku to improve their culture with an eye toward diversity and inclusion …continue reading


Posted on 03.11.14 by Amy |

Sharing lessons learned

shaking hands illustration

There are always many projects happening at Bendyworks, and while we’re a curious and talkative bunch, often our developers and designers don’t have the full picture of what’s happening in other projects. Our main way of sharing project knowledge has been transferring people between projects, until recently.

To deepen the team’s knowledge of each of our projects, we started a client talk series during our weekly tech talk lunches. Bendyworkers present on the client work they’ve been doing (to the extent that our contract allows) and the lessons learned that we can apply to other projects.

Most recen …continue reading


Posted on 02.28.14 by Matt |

UW Big Data Event presents Storm

After hearing from a friend in the Madison Big Data Meetup that Twitter would be sending its engineers to the UW Madison CS Department to talk about Apache Storm, a group of Bendyworkers bundled up against the cold and made the short trek to the UW. Here at Bendyworks we’re pretty excited about Storm, and it was great to join UW undergrads and grad students for the event and learn alongside them.

Bendyworkers at the Twitter Storm event
Photo by @staneja, from Twitter.

Storm is a distributed, real-time computation system often used to process large amounts of data. Twitter created it to work with the firehose of tweets and user da …continue reading


Posted on 02.05.14 by Brad |

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.

First, some background

The Single Responsibility Principle or SRP, is defined by Robert Martin (or, more affectionately, "Uncle Bob") in his book Agile Software Development as the following:

A class should have only one reason to change.

This differs from what one might expect the Principle to prescribe. Personally, I had assumed it to mean that a class should have only one reason to act. While this is not a terrible interpretat …continue reading


Posted on 01.26.14 by Chris |

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. In fact, laziness has been cited as the feature that keeps Haskell functionally pure. This is because if you can’t tell when things are going to be evaluated, you can’t cause side effects (because you don’t know when they’ll happen either).

What is laziness, what does it mean?

Each programming language uses an evaluation strategy to process code. For instance, Ruby is a “pass-by-value strict” language. This means t …continue reading