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

A thread 🧵on Resources-for-preparation-Of-Placements (Lecture video links)

**Programming Language Used : C++**

- Programming in C++ - (
https://t.co/gTcLJEMzwx)

- TakeUForward - ( https://t.co/udOwgbpG6O )

- CodeHelp - ( https://t.co/iph5urO1Q3 )

- Ayushi Sharma - ( https://t.co/pJUyl8ViF7 )

- COMPETITIVE PROGRAMMING -

**Programming Language Used : JAVA**

- Programming in JAVA - (https://t.co/fUMecrGVwY)

- Data Structure and Algorithams
- Kunal Kushwaha - (https://t.co/Pkvr5ZMcJ7)
- Pepcoding - (https://t.co/yNoYkSTTfv)
- Durga Sir -

- Anuj Bhaiya - (https://t.co/jHFrsvnwCy)

**Programming Language Used : Python**

- Programming in Python - (https://t.co/6zz3S1MpUO)

- DSA in Python - (https://t.co/vQ1EteJGnm)

- DS-ALGO - (https://t.co/KXE7NZf0ZD)

- Tech With Tim -

- Python Engineer - (https://t.co/VmGtEjiBVE)
**Placement Series**

- C++ - (https://t.co/nCnLHi00BK)

- JAVA - (https://t.co/Pkvr5Zu3uZ)

- JAVA - (https://t.co/pScvzpmlYu)

- PYTHON -
7 GitHub repositories will make you a standout developer from 99% of people:

1. Memphis

An open-source real-time data processing platform.

• Message broker
• Schema Management
• Zero ops
• Cloud-native
• Rapid development
• Significantly lower development time

🔗
https://t.co/w5L2aCM3do


2. The art of command line

Master the command line, in one page.

🔗 https://t.co/uF2RlcUIxb


3. Public APIs

A collective list of free APIs for use in software and web development

🔗 https://t.co/vDRQKBf15V


4. Hover

A collection of CSS3 powered hover effects to be applied to links, buttons, logos, SVG, featured images and so on.

🔗 https://t.co/bIGEEPcMkJ

You May Also Like

These 10 threads will teach you more than reading 100 books

Five billionaires share their top lessons on startups, life and entrepreneurship (1/10)


10 competitive advantages that will trump talent (2/10)


Some harsh truths you probably don’t want to hear (3/10)


10 significant lies you’re told about the world (4/10)