I have been writing software for over a decade.

My 5 best advices for developers

that will save you 1000+ hours (🧵):

⚡️ On writing code

Solve the problem *before* writing code.

Clear code >>>> Clever code

Always optimize code for readability

and THEN efficiency (if required)

Remember:

You are not bad at coding.
You just need more practice.
⚡️ On debugging code

Code doesn’t do what you expect

it does what you tell it to do.

Be ready to spend hours bridging the gap.

When debugging:
• Pay attention to error messages
• Use debuggers
• Ask for help when stuck

Prefer refactoring buggy code

over adding new code.
⚡️On testing code

Developers today are expected to:
• write software quickly
• without shipping bugs

Know that some tests are more important than the others.

Start with ad-hoc tests…

But use test automation as much as possible.

Test less. But smarter.
⚡️ On writing documentation

Good code is self-documenting
but you should document tradeoffs
and decisions of your code.

Some tips:
• Automate doc generation
• Document just enough
• Use tests as documentation

Just remember that..
no documentation >> incorrect documentation
⚡️ On code reviews

Code reviews are to ensure that code
• meets required functionality
• adheres best practices

Avoid reviewing large code changes.

Establish a process. Use checklists.

See code reviews as a form of

knowledge sharing.

Learn from feedback.
TL;DR

- On writing code
- On debugging code
- On testing code
- On writing documentation
- On code reviews
That's it!

If you enjoyed this thread:

1. Follow me @codewithvoid

2. Retweet to share it with your audience

https://t.co/KCMShmdeVG

More from Catagory jee

You May Also Like

A brief analysis and comparison of the CSS for Twitter's PWA vs Twitter's legacy desktop website. The difference is dramatic and I'll touch on some reasons why.

Legacy site *downloads* ~630 KB CSS per theme and writing direction.

6,769 rules
9,252 selectors
16.7k declarations
3,370 unique declarations
44 media queries
36 unique colors
50 unique background colors
46 unique font sizes
39 unique z-indices

https://t.co/qyl4Bt1i5x


PWA *incrementally generates* ~30 KB CSS that handles all themes and writing directions.

735 rules
740 selectors
757 declarations
730 unique declarations
0 media queries
11 unique colors
32 unique background colors
15 unique font sizes
7 unique z-indices

https://t.co/w7oNG5KUkJ


The legacy site's CSS is what happens when hundreds of people directly write CSS over many years. Specificity wars, redundancy, a house of cards that can't be fixed. The result is extremely inefficient and error-prone styling that punishes users and developers.

The PWA's CSS is generated on-demand by a JS framework that manages styles and outputs "atomic CSS". The framework can enforce strict constraints and perform optimisations, which is why the CSS is so much smaller and safer. Style conflicts and unbounded CSS growth are avoided.