You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.3 KiB
4.3 KiB
+++ transparent = true title = "Things I Learnt The Hard Way (In 30 Years of Software Development)" template = "section-contentless.html" +++
-
Programming
- Before you start writing code...
- Spec First, Then Code
- Write Steps as Comments
- Gherkin Is Your Friend to Understand Expectations
- Design Patters Are Used to Name Solution, Not Find Them
- Thinking Data Flow Beats Patterns
- The Magic Number Seven, Plus Or Minus Two
- Cognitive Cost Is The Readability Killer
- Learn The Basics of Functional Programming
- Shortcuts Are Nice, But Only In The Short Run
- Debuggers Are Overrated
- Think About The Users
- Testing Software
- Documenting your code
- Source Control
- Project Organization
- Writing code
- Be Ready To Throw Your Code Away
- Future Thinking Is Future Trashing
- Don't Use Booleans As Parameters
- Beware of Interface Changes
- It's Better To Let The Application Crash Than Do Nothing
- If You Know How To Handle It, Handle It
- Types Say What Your Data Is
- If Your Data Has a Schema, Use a Structure
- Don't Mess With Things Outside Your Project
- Resist The Temptation Of Easy
- Start Stupid
- Always Use Timezones With Your Dates
- Always Use UTF-8 For Your Strings
- Optimization Is For Compilers
- Units Makes Things Clear
- If It Doesn't Run On Your Computer, You Have A Problem
- Making Things Go
- Before you start writing code...
-
Community/Teams
- A Language Is Much More Than A Language
- Understand And Stay Away From Cargo Cult
- "Right Tool For The Job" Is Just To Push An Agenda
- The Right Tool Is More Obvious Than You Think
- Code Reviews Are Not For Style
- Code Formatting Tools Are Ok, But No Silver Bullet
- Code Style: Follow It
- ... Unless That Code Style Is The Google Code Style
-
Personal
- Companies Look For Specialists But Keep Generalists Longer
- Keep A List of Stupid Bugs That Took More Than 1 Hour To Solve
- When It's Time to Stop, It's Time To Stop
- Code of Conduct Protect YOU, Not THEM
- Learn To Say No
- Take Responsibility For The Use Of Your Code
- Don't Tell It's Done When It's Not
- People Get Upset About Code And Architecture Quality 'Cause They Care
- You'll Learn About Yourself The Hard Way
- Pay Attention On How People React To You
- Beware of Toxic People
- Beware of Microaggressions