Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Clean Code and Being A Clean Coder

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

Clean Code and Being A Clean Coder

A 2017 talk delivered at Tech In Asia Jakarta while serving as CTO of UrbanIndo.com. The talk explores the difference between bad and clean code, breaking down common mistakes (meaningless names, unused code, bloated methods/classes, inconsistent formatting, duplication, untested code) and the compounding productivity cost they create over time. It also examines why developers avoid writing clean code despite knowing better — from time pressure to ego to unclear ownership — before walking through practical tools and practices: TDD, code review, static analysis, pair programming, and CI/CD.

The second half shifts from code to craft, framing "being a clean coder" as software craftsmanship: passion, career ownership, deliberate practice, and the Boy Scout Rule, alongside the ethics of time management, negotiation, and collaboration. It closes by connecting Software Craftsmanship to the Agile Manifesto, presenting craftsmanship as "raising the bar" beyond Agile's four values — well-crafted software, steadily added value, a community of professionals, and productive partnerships.

📚 References include: The Pragmatic Programmer, Clean Code, The Clean Coder, and The Software Craftsman by Robert C. Martin and others.

Avatar for Petra Barus

Petra Barus

June 24, 2026

More Decks by Petra Barus

Other Decks in Technology

Transcript

  1. 4 4 COMMON MISTAKES MEANINGLESS NAMES UNUSED CODE LONG METHOD

    / CLASS BAD / INCONSISTENT FORMATTING CODE DUPLICATIONS MEANINGLESS COMMENTS NOT TESTED
  2. 7 7 CLEAN CODE ELEGANT EFFICIENT SIMPLE STRAIGHTFORWARD READABLE CLEAR

    AUTOMATICALLY TESTED WRITTEN BY SOMEONE WHO REALLY CARED
  3. 9 9 WHY SHOULD PROGRAMMERS WRITE CLEAN CODE? EASY TO

    READ EASY TO CHANGE EASY FOR NEW TEAM MEMBER TO ONBOARD BROKEN WINDOW PRINCIPLE
  4. 13 13 OTHER REASONS I DON’T WRITE THAT CODE I

    AM ROCKSTAR PROGRAMMER, ALWAYS RIGHT I DON’T KNOW HOW TO DO IT IT’S NOT MY JOB, IT’S OTHER PEOPLE’S JOB
  5. 15 15 TOOLS & BEST PRACTICES TEST DRIVEN DEVELOPMENT CODE

    REVIEWING STATIC CODE ANALYSIS PAIR PROGRAMMING CONTINUOUS INTEGRATION / CONTINUOUS DELIVERY
  6. 20 20 GROWING A CULTURE OF SOFTWARE CRAFTSMANSHIP COMMUNICATE TEAM

    GOAL INTRODUCE TEAM TO THE STAKEHOLDERS GIVE ROOM TO LEARN FROM MISTAKES HELP THE TEAM TO IMPROVE UNDERSTAND TEAM WANT TO DELIVER QUALITY GIVE THE TEAM RESPONSIBILITY APPRENTICESHIP
  7. 22 22 The Agile Manifesto INDIVIDUALS AND INTERACTIONS WORKING SOFTWARE

    CUSTOMER COLLABORATION RESPONDING TO CHANGE OVER PROCESSES AND TOOLS OVER COMPREHENSIVE DOCUMENTATIONS OVER CONTRACT NEGOTIATION OVER FOLLOWING PLANS
  8. 23 23 Software Craftsmanship Manifesto NOT ONLY WORKING SOFTWARE NOT

    ONLY RESPONDING TO CHANGE NOT ONLY INDIVIDUALS AND INTERACTIONS NOT ONLY CUSTOMER COLLABORATION BUT ALSO WELL-CRAFTED SOFTWARE BUT ALSO STEADILY ADDING VALUE BUT ALSO A COMMUNITY OF PROFESSIONALS BUT ALSO PRODUCTIVE PARTNERSHIPS RAISING THE BAR