• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Codemotion Magazine

We code the future. Together

  • Discover
    • Events
    • Community
    • Partners
    • Become a partner
    • Hackathons
  • Magazine
    • Backend
    • Frontend
    • AI/ML
    • DevOps
    • Dev Life
    • Soft Skills
    • Infographics
  • Talent
    • Discover Talent
    • Jobs
    • Manifesto
  • Companies
  • For Business
    • EN
    • IT
    • ES
  • Sign in
ads

Luca FerrettiFebruary 25, 2019

Professional Programmer

CTO
facebooktwitterlinkedinreddit

We will make the world a better place, one line of code at a time. Maybe not all developers are moved by such noble intentions, maybe the best computer minds on the planet right now are working hard just to convince you to click on advertisements, but it is undeniable that the software impacts deeply on the lives of all people. It is therefore important that the software created is always better and for this reason those who make it, those who develop, must aim to become an even better developer.

Of course, not all developers are rock stars and maybe in some work situations the developer is seen by the company as a commodity. As such it is a disposable resource, forced into a situation in which it is impossible to change activity and wages, a situation that does not offer external motivation for itself to improve itself, to come out of mediocrity, real or perceived, which seems to justify the commodity status.

How is it possible to break this pattern and aim for excellence? In the closing keynote of Codemotion Milan 2018, Gabriele Lana, Software Craftsman at CleanCode, told us his point of view on what it means to be a professional developer.

Individuals and Teams

No man is an island. This is all the truer for a profession like that of the developer, which intrinsically requires teamwork. The path for the improvement of oneself starts from here, from the people with whom we are more directly connected, from a working and emotional point of view. In the team you work with you can find the stimuli and the knowledge necessary to learn. Besides, it’s a common opinion that great teams make great people, isn’t it?

Of course, but it is also true that great teams are made by great people and this circular dependence sounds like a “code smell”. What could happen if, with adverse fate, you could not find a great team in which to work?

Enter: the individual. You are you, and the environment around you intervenes only partially to contribute to what you are or how you behave. Only you can change yourself, only you can choose if and how to invest your individuality.
 


 

Speaking of individuality, the transition to character and behaviour, to the “innate” qualities and the way in which we act is a must. As recalled by Gabriele, character and behaviour are both interrelated. Committing yourself to act like a professional would allow you to develop good habits and break bad ones.

Learning and Productivity

How to start investing in yourself, to be a better programmer? Gabriele suggested different ideas for two important areas to start from.

The first area is education. In fact, while it is true that in computer science and programming never fails in providing something new to study or learn, a bleak doubt remains: whether it is nobler and better to devote yourself to the study of foundational knowledge or pragmatic knowledge.

Certainly, foundational knowledge can be more challenging to acquire and maintain, but its difficulty allows you to get out of your own comfort zone and offer advantages that can be useful in the long term. On the other hand, pragmatic knowledge is immediately expendable in the workplace.

Another area of ​​intervention is one’s own productivity, being able to manage time, energy and attention. If it is true that the surrounding environment leads us to frequent context switches, being professionals must lead us to be aware of what is the most important activity to do from time to time.
 


 

In the classic subdivision into quadrants in which the value of their work and dedicated focus are mapped, the goal is obviously to be in areas of maximum value.

Maximising the value when the required focus is low means knowing how to move from the area of ​​busy work to that of collaborative work. For this step, the team and individual retrospectives are helpful. For the similar passage, from useless to deep work, it is helpful to work in time boxes and take as reference the “definition of done”.
 


 

Quoting Gabriele Lana himself, if you want to find the right team, start searching for the right people, but… be right person.

Related Posts

Why Your Development Team Should Follow Best Practices from a Business Perspective

Why Your Development Team Should Follow Best Practices from a Business Perspective

Lorenzo Ermigiotti
July 22, 2021
Codemotion Interview with Chad Arimura

Thinking Like a Founder – meet Chad Arimura

Cate Lawrence
January 15, 2021
collaboration

5 Ways to Foster Collaboration between Developers and Marketers

John Allen
January 5, 2021
cto strategic planning

Ever Wondered How a CTO Masters Leadership and Strategic Planning?

Lorenzo Ermigiotti
January 4, 2021
Share on:facebooktwitterlinkedinreddit

Tagged as:Codemotion Milan

Luca Ferretti
Affezionato al caro vecchio C, passato non troppo recentemente alle più arzigogolate frontiere del Web, Luca Ferretti ha da poco scelto il suo motto su Twitter: I break stuff, I build relationships. È così, tra una ispezione del DOM e una apparizione nella stanza accanto per discutere con il team del frontend di un pixel messo storto, tra una traduzione di Ubuntu e un rebuild dei sorgenti di GNOME (rigorosamente di notte), che trascorre le sue giornate nell'incessante ricerca della perfezione ;-)
Tensor Processing Units: enabling the next generation of fast, affordable AI
Previous Post
Editorial web layouts: how Gutenberg would have used CSS (perhaps)
Next Post

Footer

Discover

  • Events
  • Community
  • Partners
  • Become a partner
  • Hackathons

Magazine

  • Tech articles

Talent

  • Discover talent
  • Jobs

Companies

  • Discover companies

For Business

  • Codemotion for companies

About

  • About us
  • Become a contributor
  • Work with us
  • Contact us

Follow Us

© Copyright Codemotion srl Via Marsala, 29/H, 00185 Roma P.IVA 12392791005 | Privacy policy | Terms and conditions