|
|
|
@ -4,7 +4,95 @@
|
|
|
|
|
- [Disclaimer](./disclaimer.md) |
|
|
|
|
- [Programming](./programming/index.md) |
|
|
|
|
- [Before You Start Writing Code](./programming/before.md) |
|
|
|
|
- [Spec First, Then Code](./programming/spec-first.md) |
|
|
|
|
- [Write Steps as Comments](./programming/steps-as-comments.md) |
|
|
|
|
- [Gherkin Is Your Friend to Understand Expectations](./programming/gherkin.md) |
|
|
|
|
- [Design Patters Are Used to Name Solution, Not Find Them](./programming/patterns-not-solutions.md) |
|
|
|
|
- [Spec First, Then Code](./programming/before/spec-first.md) |
|
|
|
|
- [Write Steps as Comments](./programming/before/steps-as-comments.md) |
|
|
|
|
- [Gherkin Is Your Friend to Understand Expectations](./programming/before/gherkin.md) |
|
|
|
|
- [Design Patters Are Used to Name Solution, Not Find Them](./programming/before/patterns-not-solutions.md) |
|
|
|
|
- [Thinking Data Flow Beats Patterns](./programming/before/data-flow.md) |
|
|
|
|
- [The Magic Number Seven, Plus Or Minus Two](./programming/before/magical-number-seven.md) |
|
|
|
|
- [Cognitive Cost Is The Readability Killer](./programming/before/cognitive-cost.md) |
|
|
|
|
- [Learn The Basics of Functional Programming](./programming/before/functional-programming.md) |
|
|
|
|
- [Shortcuts Are Nice, But Only In The Short Run](./programming/before/understand-shortcuts.md) |
|
|
|
|
- [Debuggers Are Overrated](./programming/before/debuggers.md) |
|
|
|
|
- [Think About The Users](./programming/before/users.md) |
|
|
|
|
- [Testing Software](./programming/testing.md) |
|
|
|
|
- [Unit Tests Are Good, Integration Tests Are Gooder](./programming/testing/integration-tests.md) |
|
|
|
|
- [Testing Every Function Creates Dead Code](./programming/testing/tests-dead-code.md) |
|
|
|
|
- [Tests Make Better APIs](./programming/testing/tests-apis.md) |
|
|
|
|
- [Make Tests That You Know How To Run On The Command Line](./programming/testing/tests-in-the-command-line.md) |
|
|
|
|
- [Good Languages Come With Tests](./programming/testing/languages-tests.md) |
|
|
|
|
- [Documenting your code](./programming/documentation.md) |
|
|
|
|
- [Documentation Is A Love Letter To Your Future Self](./programming/documentation/document-it.md) |
|
|
|
|
- [The Function Documentation Is Its Contract](./programming/documentation/document-is-contract.md) |
|
|
|
|
- [If A Function Description Includes An "And", It's Wrong](./programming/documentation/document-and.md) |
|
|
|
|
- [Good Languages Come With Integrated Documentation](./programming/documentation/languages-docs.md) |
|
|
|
|
- [Source Control](./programming/source-control.md) |
|
|
|
|
- [Always Use A Version Control System](./programming/source-control/always-vcs.md) |
|
|
|
|
- [One Commit Per Change](./programming/source-control/one-change-commit.md) |
|
|
|
|
- [Gerrit Is A Mistake](./programming/source-control/gerrit.md) |
|
|
|
|
- [Git-Flow Is The Way To Go](./programming/source-control/git-flow.md) |
|
|
|
|
- [Project Organization](./programming/organization.md) |
|
|
|
|
- [Organize Your Code by Data/Type, Not Functionality](./programming/organization/project-organization.md) |
|
|
|
|
- [Create Libraries](./programming/organization/libraries.md) |
|
|
|
|
- [Paper Notes Are Actually Helpful](./programming/organization/paper-notes.md) |
|
|
|
|
- [Writing code](./programming/coding.md) |
|
|
|
|
- [Be Ready To Throw Your Code Away](./programming/coding/throw-away.md) |
|
|
|
|
- [Future Thinking Is Future Trashing](./programming/coding/future-trashing.md) |
|
|
|
|
- [Don't Use Booleans As Parameters](./programming/coding/boolean-parameters.md) |
|
|
|
|
- [Beware of Interface Changes](./programming/coding/interface-changes.md) |
|
|
|
|
- [It's Better To Let The Application Crash Than Do Nothing](./programming/coding/crash-it.md) |
|
|
|
|
- [If You Know How To Handle It, Handle It](./programming/coding/handle-it.md) |
|
|
|
|
- [Types Say What Your Data Is](./programming/coding/data-types.md) |
|
|
|
|
- [If Your Data Has a Schema, Use a Structure](./programming/coding/use-structures.md) |
|
|
|
|
- [Don't Mess With Things Outside Your Project](./programming/coding/outside-project.md) |
|
|
|
|
- [Resist The Temptation Of Easy](./programming/coding/resist-easy.md) |
|
|
|
|
- [Start Stupid](./programming/coding/start-stupid.md) |
|
|
|
|
- [Always Use Timezones With Your Dates](./programming/coding/use-timezones.md) |
|
|
|
|
- [Always Use UTF-8 For Your Strings](./programming/coding/use-utf8.md) |
|
|
|
|
- [Optimization Is For Compilers](./programming/coding/optimization.md) |
|
|
|
|
- [Units Makes Things Clear](./programming/coding/units.md) |
|
|
|
|
- [If It Doesn't Run On Your Computer, You Have A Problem](./programming/coding/run-locally.md) |
|
|
|
|
- [Nothing More Permanent Than A Temporary Solution](./programming/coding/permanent-solution.md) |
|
|
|
|
- [Making Things Go](./programming/running.md) |
|
|
|
|
- [The Config File Is Friend](./programming/running/config-file.md) |
|
|
|
|
- [Command Line Options Are Weird, But Helpful](./programming/running/command-line-options.md) |
|
|
|
|
- [Not Just Function Composition, But Application Composition](./programming/running/application-composition.md) |
|
|
|
|
- [Even for Application Composition, Start Stupid](./programming/running/app-composition-stupid.md) |
|
|
|
|
- [Logs Are For Events, Not User Interface](./programming/running/log-events.md) |
|
|
|
|
- [Be Transparent With The User](./programming/running/transparent.md) |
|
|
|
|
- [One Version To Add, One Version To Remove](./programming/running/add-then-remove.md) |
|
|
|
|
- [Learn To Monitor](./programming/running/monitoring.md) |
|
|
|
|
- [Community/Teams](./teams/index.md) |
|
|
|
|
- [A Language Is Much More Than A Language](./teams/languages-are-more.md) |
|
|
|
|
- [Understand And Stay Away From Cargo Cult](./teams/cargo-cult.md) |
|
|
|
|
- ["Right Tool For The Job" Is Just To Push An Agenda](./teams/right-tool-agenda.md) |
|
|
|
|
- [The Right Tool Is More Obvious Than You Think](./teams/right-tool-obvious.md) |
|
|
|
|
- [Code Reviews Are Not For Style](./teams/code-reviews-style.md) |
|
|
|
|
- [Code Formatting Tools Are Ok, But No Silver Bullet](./teams/code-formatters.md) |
|
|
|
|
- [Code Style: Follow It](./teams/code-style.md) |
|
|
|
|
- [... Unless That Code Style Is The Google Code Style](./teams/google-code-style.md) |
|
|
|
|
- [Hero Projects: You'll Have To Do It Yourself](./teams/hero-projects.md) |
|
|
|
|
- [Global Changes Must Be Discussed With The Whole Team First](./teams/team-discussion.md) |
|
|
|
|
- [Personal](./personal/index.md) |
|
|
|
|
- [Companies Look For Specialists But Keep Generalists Longer](./personal/specialists.md) |
|
|
|
|
- [Keep A List of Stupid Bugs That Took More Than 1 Hour To Solve](./personal/stupid-bugs-list.md) |
|
|
|
|
- [When It's Time to Stop, It's Time To Stop](./personal/time-to-stop.md) |
|
|
|
|
- [Code of Conduct Protect YOU, Not THEM](./personal/coc.md) |
|
|
|
|
- [Learn To Say No](./personal/say-no.md) |
|
|
|
|
- [Take Responsibility For The Use Of Your Code](./personal/responsible-code.md) |
|
|
|
|
- [Don't Tell It's Done When It's Not](./personal/not-done.md) |
|
|
|
|
- [People Get Upset About Code And Architecture Quality 'Cause They Care](./personal/people-care.md) |
|
|
|
|
- [You'll Learn About Yourself The Hard Way](./personal/learn-about-yourself.md) |
|
|
|
|
- [Pay Attention On How People React To You](./personal/watch-reactions.md) |
|
|
|
|
- [Don't Confuse Hero Project With Hero Syndrome](./personal/hero-syndrome.md) |
|
|
|
|
- [Beware of Toxic People](./personal/toxic-people.md) |
|
|
|
|
- [Beware of Microaggressions](./personal/microaggressions.md) |
|
|
|
|
- [Toxic/Aggressive People Are Not Fixable -- Unless It's You](./personal/fixable.md) |
|
|
|
|
- [Realize When It's Time To Quit](./personal/quit.md) |
|
|
|
|
- [I.T. World Is Really Small](./personal/small-world.md) |
|
|
|
|
- [Blogging About Your Stupid Solution Is Still Better Than Being Quiet](./personal/blogging.md) |
|
|
|
|
- [Don't Hide Your Stupid Solution](./personal/post-solution.md) |
|
|
|
|
- [Keep A List of Things I Don't Know](./personal/things-i-dont-know.md) |
|
|
|
|
- [You Always Have The Time](./personal/time.md) |
|
|
|
|
- [Own Your Shit](./personal/own-your-shit.md) |
|
|
|
|
- [Don't Defend Bad Code](./personal/bad-code-defense.md) |
|
|
|
|