Skip to content

Instantly share code, notes, and snippets.

@kgust
Created March 13, 2014 13:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kgust/9528194 to your computer and use it in GitHub Desktop.
Save kgust/9528194 to your computer and use it in GitHub Desktop.
Are you doing it wrong? A checklist for software development.

Are you doing it wrong?

This was inspired by

My random list

If you can check everything on this list, congratulations, you are doing it right!

  • Do you have a documentation which tells exactly what your product is?

    You will explain the project to new members anyways, just document what you tell them.

  • Are you proud of your codebase?

  • Are your co-workers proud of the codebase?

  • Do you have a start here documentation for new project members?

  • Is your start here documentation so good that you don't need to explain it further?

  • Can you refactor your code without fearing that your app won't work?

  • Do you have strict conventions about project style(tab/space, indent, naming)

    If you don't eventually your code will be a mess of different styles:

    • Diffs will be polluted by mix of spaces and tabs
    • Code is hard to read
  • Do you know how outdated your project's dependencies are?

    You should have a single meter like: 6/10 of dependencies are outdated

  • Would you be comfortable to show your code to other team members?

    If not, are you coding crap?

  • Can every member of your team handle rough critic of their code?

    Everyone should be able to handle comments like:

    • "Your code looks like shit, because ..."
    • "Your technical choice was bad, because ..."

    If not, members are afraid to give feedback and code will eventually rotten.

Web development related

  • Do you version your product?

    If you don't have a version, you'll eventually be confused what version is deployed to staging/test/prod.

  • Do you have deployment scripts in version control?

  • Do you know how outdated your hosting servers are?

  • Can you easily replicate testing/staging/production environment locally for testing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment