DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
  1. DZone
  2. Culture and Methodologies
  3. Career Development
  4. Taco-Driven Development

Taco-Driven Development

Cody Powell user avatar by
Cody Powell
·
Jan. 14, 13 · Interview
Like (0)
Save
Tweet
Share
5.34K Views

Join the DZone community and get the full member experience.

Join For Free
We try to have fun together at Famigo.  Every Wednesday we have Taco Twednesday, in which we all leave the office to eat at and review various taco establishments.  (We're also logging these reviews, taking steps towards the world's first big taco data powerhouse.)  I also regularly invite everybody over to my house to make homebrew beer. (Ask about our not-quite-award-winning ale, Electric Brewgaloo.)  Finally, we devote one afternoon a month to Mandatory Fun Day, where one rotating employee plans an afternoon of fun for the rest of the company.
What's the point of all this camaraderie?  Sure, it's fun to get out of the office, it's great for retention, and it helps with recruiting.  We're doing something more important than all of that though when we're having fun, though.  We're doing something that every software organization needs help with: we're learning to listen to each other.

Writing software is an isolating experience.  Many years ago**, I had a job where I'd sit down, I'd put on my headphones, I'd bang away at the keyboard, and I'd go home 10 hours later.  That was all day, every day, for a few years.  Actually, there was an occasional exception.  Sometimes, I'd hit a hard problem and I'd spend 20 or 30 hours at the keyboard before I went home.  I wasn't the exception; the rest of the team was like that too.  And let me tell you, we made some crappy, crappy software.

It was a little surprising at the time, because, individually, we were all smart.  As a group then, shouldn't we have been very smart, making very good software?  Spoiler alert: no.  No one listened to anyone else, and so each person on the team was left on his own to make crucial mistakes.  These mistakes compounded over the years until the product crashed.

Why weren't we talking?  I can only speak anecdotally here.  My teammates were friendly enough, but there were differences when it came to age, outside interests, background, and politics.  All we had to discuss were the typical programming debates (vim vs. emacs, etc.) or company rumors, both of which were charged conversation topics.  In short order, everyone was still talking, but no one was listening.

We had important questions for each other, things like "What do you think of Feature X?", "Do these requirements make sense?", and "What the hell is it we're actually building?"  Even at the time, I knew I should be asking them, but not enough to get me to participate in an awkward conversation with people I didn't know very well.  Collectively, we could've answered those and built something important.  Instead, each of us charged ahead with a deeply flawed idea of what we were building.

Would tacos, beer making, or a go cart outing have fixed that?  Maybe so!  At the very least, it's a shared experience.  It's a starting point.  We could begin having agreeable conversations, starting with questions like "How about these tacos?"  or "Wow, we made some crappy beer, didn't we?" These simple conversations build rapport, and I would now trust my teammate's opinion on something.  All of that is crucial if I want to feel comfortable asking harder questions like, "I can't figure this out; will you help me?" or "Are we building the right thing?"  That is why it's only partly a joke when I say we practice taco-driven development.
**The job in question is wayyyy back in time, and has nothing to do with any recent employers.
IT Conversations (software) Software career teams Trust (business) Data (computing) Electric (software) The Establishment (Pakistan) Homebrew (video games)

Published at DZone with permission of Cody Powell, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Cucumber.js Tutorial With Examples For Selenium JavaScript
  • 10 Easy Steps To Start Using Git and GitHub
  • GitLab vs Jenkins: Which Is the Best CI/CD Tool?
  • Public Key and Private Key Pairs: Know the Technical Difference

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: