Why cooking every day makes me a better developer

J. P. Solano
4 min readDec 3, 2018

--

Cooking is entertaining for me. I’m not a professional cook, but through years of practice, my dishes and my skills had improved a lot. From typical Venezuelan plates to Mediterranean paella or sushi, my repertoire is not limited and I would always like to learn something new. I was very young when my mom asked me to help her with small tasks until I realized that I could move well in the kitchen. At the same time, I got a bachelor degree in Software Engineer and I have been working as a software developer for different kind of organizations, from the government to small startups and always enjoying the dynamic of software creation. At this point, I’m a specialist in Front-end development.

My daily cooking routine always starts very early in the morning and set one hour to get the lunch ready and packed. This artificial constraint has taught me to manage my resources carefully and to know my limitations. Creativity and improvisation is a normal part of the process while the goal is always to get the lunch ready in an hour. That requires being organized with your tools and has the no-brainer tricks that make you move faster. The use of stocks, some pre-processed spices, and pre-seasoned meats makes the process a sequence of logical steps that always has to end with a result. Sometimes, something doesn’t work as expected or you don’t have the right amount of a product and only have your imagination to fix the problem. Somehow, these same ideas have influenced my developer attitude about problems and preparations. Here there are the same ideas for developers:

  • Setting a timeline: You don’t have unlimited time to fix a problem but the feeling that something needs to be done in a specific time is a powerful motivator.
  • Knowing your tools: You have to learn how a tool works before you even think to use it. I mean, how can you know when to use GraphQL if you don’t have an idea how it works?
  • Knowing your limitations: For example, I’m good with UI, and I’m not too good with Linux commands. This self-awareness only makes me more efficient and allows me to make the right decisions and asking the right questions.
  • Learning some tricks: Being aware of the challenges that may arise, now you have to learn some valuable and reusable tricks: how to make a login/ password UI, how to make a reusable component and when do you need a hash table or an array. Learning that requires time and practice but it will pay off in the end because it saves you time.
  • Being organized: Using the most efficient techniques also save you time. When you use Yeoman to scaffold your React or Angular project, it not only saves you tons of time, it also makes you work in a more organized fashion.
  • Being open to creativity and improvisation: Many times, the tools you have don’t work as expected and you have to decide if trying to find a way to make it work is the right decision or moving on and finding a better solution.
  • Accepting feedback: We love it when somebody we respect recognizes our efforts. The problem starts when the same person doesn’t like something else you might have done. If the criticism is constructive, receiving and understanding it allows you to get improve in your field. The worst thing you can do is to take feedback very personally. You are not your job, your dish or your code. You can only make it and repeat many times until you make it as “perfect” as it can be.
  • Not forgetting your goal: You need to have something ready at the end of your timeframe — this simple rule help to deal with procrastination and interruptions.
  • It’ OK repeat your recipes: We can’t make something new every time. It’s not lack of creativity or originality, it’s more so the only way to master something.
  • Enjoying it: It sounds cliche but it’s true. If you don’t like to cook, that feeling will inevitably end up in the taste of your dish. The same thing happens with coding. If you hate it and don’t see the value of investing the time that is necessary, it will be hard that you become a great developer. You don’t know any successful person in any field that hates what they do because it never happens.
  • Practice makes perfect: It’s the only way to get better in your field. You can buy all the books on coding or cooking, but they will help you very little if you don’t apply your knowledge, put it in practice and continue to learn every day.

--

--

J. P. Solano
J. P. Solano

Written by J. P. Solano

Senior Software Engineer | Front-End Practitioner | AI/ML Interested | 🎙 Podcaster

Responses (1)