What are Ethics for?


As any other profession, Software Engineering has its own Code of Ethics. It was developed by the ACM and the IEEE to make the software community a good place to be part of and to make standards of ethic and professional development.

The Code consists in 8 principles:

  1. PUBLIC: Developers shall look for the public well-being. Our projects aren’t made for us, developers, to use it, it’s for the rest of the world, and we must give them something worth to spend time on (and money).
  2. CLIENT AND EMPLOYER: I think the important part of this principle is confidentiality. As workers, we will be asked to work with someone else’s data, and the right thing to do is not to pay interest and mind our own business. But also, it’s possible to be in difficult situations as being asked to work on something illegal or un-ethical, maybe for a big amount of money, who knows. Well, this Code says: Please, decline the offer.
  3. PRODUCT: Basically, do your best, surprise people with your creation.
  4. JUDGEMENT: Support the human values and be honest, very simple.
  5. MANAGEMENT: Developing software isn’t just coding. We must plan, think about the investment, design algorithms, consider the software requirements, the maintenance. There are so many things in the process of developing that we must do to create something amazing!
  6. PROFESSION: The day we decided to join the journey of software engineering we joined a huge community that has decided to do awesome things to make the world a better place. So, don’t let people to think the otherwise.
  7. COLLEAGUES: As I said in the previous principle, this community is full of ideas that we must respect and support. Team work makes wonders in this industry.
  8. SELF: Nobody is perfect, to improve in every aspect of our lives
    really important. Also, software engineering is always changing, and we must keep track or we will “get old”.

I believe the Public and the Self principles are the most important. Why? Because (a) Public is who is going to enjoy/hate/who-knows our projects. We are craftsmen of software, just like artists, our art speaks for ourselves. And (b) What can the world give to you that you can’t get for yourself? There’s another world inside our heads and we must have good relationships with that world as well.