# 👨‍💻 Becoming A Disciplined Developer

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1662192092894/Gf0p9MOQu.png align="center")
**Discipline** is a key for achieving work toward a **goal**. Rome wasn't built in one day it required long tedious and consistent effort.This thought can be applied to your developer's journey.

# The disciplined developer👨‍💻
The disciplined developer  is a **philosophy** about being a **consistent** developer.Let's walk through the meaning of this idea. Note that this is **personal** and by no mean universal. In order to progress I think you should aim for an ideal model.

# The purpose 🎯
Firstly it benefits you as an individual. As you know practices makes perfect.You surely heard or read about the theory of the 10 000 hours. **Malcom Gladwell** stated that it takes 10 000 hours to come a master in a field. There has been a lot of discussion about this but he makes a great point.
![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1662192183715/1v5DDOxmX.png align="left")
**Practice** helps you to become **better** but there is more.
For instance if I am using the wrong technique for 10k hours I won't become better.
It means that they are others parameters impacting your progression.
There is also the level of focus.Being fully **focused** on a task helps you to perform better.
Try to learn all instrument at once you simply cannot be a whole orchestra by yourself (at the beginning at least).This apply to programming as well.
All this concept are very generic and can pretty much apply to wide variety of fields.
I will leverage concepts from books and personal experiences to apply it to **programming**.
# Mastering project management 🗂️
![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1662192257131/gGjehUNM2.png align="left")
Project management is boring but useful.This an area where I need practice.I think working with a system for your project is a key component.You organize your clothes in your wardrobe to retrieve them later. As it's hard to practice regularly having a system helps.
It allows you to :
- **remove friction **
- **stop wasting time**
- **clearer vision**

Making your project easy makes it easy to work on.

# Tune your tools 🛠️

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1662192346241/tJ3XnVbOM.png align="left")
As a developer you must focus on valuable work.Like a **craftsman** you have to know your tools.Removing physical barrier to do work also helps you achieve more. My choice for the tools that I use for programming is **balance** between efficiency and comfiness.
Coming first your setup. Of course as a programmer your setup is at the base of your tool chain.First get a good PC, a nice chair and great peripherals that's the basis.For the OS, 
I personally use Linux(Manjaro) for programming which great. For example I don't have trouble installing libraries and I can use the terminal do get things done quickly. I use Vs code as an **IDE** because I do a lot of different stuff and it allows to centralize everything quickly. For my project management I use **Notion** as I can keep track of tasks and keep a logbook.Take your time in finding what suits you best be **curious** and look at others developers setup to stay updated.
# Be Water 🌊

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1662192388159/mG9Lz_1fO.png align="left")
> Empty your mind. Be formless, shapeless, like water. You put water into a cup, it becomes the cup.Bruce Lee

Being consistent for me is not like a being a monk. Being disciplined as a developer is constantly searching for **improvements**. For example, technologies or evolving new technologies appears.You cannot practice the exact same thing you have to build resilience.Try new tools new approaches new languages. Your knowledge as a developer must no be monolithic, instead you should cultivate your difference.I strongly advise you too to discuss with other developer. It will offers you a wider perspective and new vision over technologies.Because your journey is unique, constantly searching and going outside of your technical comfort zone will make you stand out.
## Conclusion 🔚
Being disciplined can help you tremendously as a developer.
To summarize it quickly:
- practice regularly
- reduce friction to work
- be curious 

I love to hear your opinion on the subject in the comments.
This article is just about talking about my vision of being a better developer.Let me know what did you think about it.

*Side note : This was my last article in the 4articles4week writeathon it has been such a great experience as a starting writer*

See you later !
![moon-knight-fall-backwards.gif](https://c.tenor.com/5pMEApeRaQQAAAAC/moon-knight-fall-backwards.gif align="left")
