Pere Pages Soms

I am a programmer with over 10 years experience. My main languages are Javascript and PHP. I have worked in Web Development and Insurance, in Front End and Back End projects, independently and with teams, alongside Designers and Business Analysts.

I believe that programming is both Engineering and Art. I love building software and everything that comes from it: the ability to create something new, useful and appealing is exciting.

I like simplicity, minimalism and quality. For me, code must be easy to read, consistent, testable, short and modular.

I try to write code daily, attend talks weekly and meet colleagues as often as I can.

<This Blog></This Blog>
<eMail>[email protected]</eMail>

Collaborate, Communicate and meet Colleagues

Embrace the Philosophy of the Technologies you use and its Communities

We programmers are supposed to work in teams, therefore the ability to communicate and use standars are vital. Being honest and willing to share.

Which code would I like to find from another colleague?

We must speak the same language. To do so, reading, practicing and talking with colleagues is necessary. We are architects, designers and writers. Selfdiscipline and practice make us improve. Experience is priceless.

Apply Patterns, Practices and recognize "Code Smells"

Of all the various patterns and practices, I love the Paretto principle, compose over inheritance, single area of responsibility, single source of truth... And above all, as I have mentioned, minimalism and simplicity: KISS!! (Keep it simple, stupid).

Code smells; if something sounds or looks bad, it probably is. When something sounds too complex is bad. Good ideas arise from their simplicity and that makes them beautiful. You can only detect this trhough having experience.

Write Beautiful Code

For me, quality is very important. Quality comes from code that does what you want, is maintainable and testable. Code must look neat and attractive. Not everyone can understand the beauty of code, not even many programmers, because to see it and enjoy it you have to have some experience through having collaborated with other colleagues.

In my opinion, beautiful code is short, easy to read and selfdescriptive. A relatively inexperienced person should be able to understand it and change it.

Perform Testing

Nowadays, testing is a key area. A programmer who doesn't know how to write tests, or understand its purpose isn't worth their salt. Tests enable modular and testable code.

The Zen of Python by Tim Peters

  • Beautiful is better than ugly
  • Explicit is better than implicit.
  • Simple is better than complex.
  • Complex is better than complicated.
  • Flat is better than nested.
  • Sparse is better than dense.
  • Readability counts.
  • Special cases aren't special enough to break the rules.
  • Although practicality beats purity.
  • Errors should never pass silently.
  • Unless explicitly silenced.
  • In the face of ambiguity, refuse the temptation to guess.
  • There should be one—and preferably only one—obvious way to do it. Although that way may not be obvious at first unless you're Dutch.
  • Now is better than never.
  • Although never is often better than "right" now.
  • If the implementation is hard to explain, it's a bad idea.
  • If the implementation is easy to explain, it may be a good idea.
  • Namespaces are one honking great idea—let's do more of those!