Trace: programming_is_craftsmanship

Table of Contents


Programming is craftsmanship and requires skills

Many managers think that programming is easy, it's just a bunch of for, if, else and switch clauses after all, isn't it ?

But coding is difficult because it is mainly about TAKING DECISIONS ALL THE TIME.

Driving is easy because you don't have to take decisions about the way to turn the steering wheel; walking is easy, you don't even have to think about it; Drilling a 10 mm hole into a wall is easy because the goal is clear and because you don't have many options to achieve it…

Software is difficult and is craftsmanship because there are always many ways to achieve the same task. Take the simplest example I can think about : an addition function : we want to add a and b to get c=a+b.

* Should I code this the object-oriented way ( a.add(b) ) or the procedural way ( add(a,b) ) ?

* How should I name this ? add() ? sum() ? How should I name the arguments ?

* How should I document the function ? is there some project conventions about it ?

* Should I return the sum or store it into the object itself ?

* Should I code this test first (TDD) ? write an UT afterwards or write no test at all ?

* Does my code scale well ? does it use a lot of memory ?

* Which visibility for this function ? private, public, package ?

* Should I handle exceptions (a is null for instance) or from the caller ?

* Should the arguments be immutable ?

* Is it thread-safe ?

* Should this function be injected within an utility class ?

* If I'm coding in object oriented, is it SOLID compliant ? what about inheritance ? …

* … tens of others questions any good coder should ask to himself

If all of this decisions could be taken by a machine, coders would not be required at all because we would just generate code (and we sometimes do it using MDD technologies, mainly for code skeletons with low added value).

We -coders- would then all be searching for a new job. But, AFAIK, this is not the case, we are still needed, still relevant. All companies still need costly software craftsmen !

Q.E.D. ;-)

I can't agree more with the manifesto for software craftsmanship.

Discussion

BandungBandung, 2016/06/13 03:43

I joined just read article http://www.obatbenjolanasamurat.serbaalami.com/cara-mengatasi-mual-saat-puasa/

BandungBandung, 2016/06/14 03:57

thanks for share, http://qnc.obatgondokalami.com/obat-patah-tulang-selangka-herbal/

jhonsjhons, 2016/06/14 08:27

bismillah sing barokah, http://obatgondokalami.com/cara-mengobati-tumor-rahang/

TempurTempur, 2016/06/15 04:40

syukuri, nikmati, berbagi http://www.obatbenjolandileherherbal.com/

TempurTempur, 2016/06/16 03:44

informasi yang sangat berguna, http://www.obatbenjolanasamurat.serbaalami.com/obat-benjolan-tumor-jinak-di-payudara/

BandungBandung, 2016/06/16 07:56

thanks for share, http://obatbenjolanasamuratampuh.blogspot.com/

TempurTempur, 2016/06/17 05:08

Jum'at penuh berkah dan rizki http://ahlinya-sirosis.blogspot.com/2014/08/obat-tbc-kelenjar-untuk-ibu-hamil.html

BandungBandung, 2016/06/18 03:28

saturday is money, bismillah http://qnc.obatgondokalami.com/pengobatan-herbal-hamil-anggur-secara-alami/

YusufYusuf, 2016/06/21 04:21

semoga dilimpahkan banyak rezeki http://serbaalami.com/cara-tepat-mengobati-gejala-stroke/

yudaherbal.com sumo.ly/kRvHyudaherbal.com sumo.ly/kRvH, 2016/06/25 06:20

selamat menjalankan ibadah puasa bagi semua umat ISLAM

http://sumo.ly/kRvH

TempurTempur, 2016/06/27 08:12

bismillah semoga berkah, http://serbaalami.com/pengobatan-kista-di-bawah-lidah/

jhonsjhons, 2016/06/28 05:03

berita yang sangat bagus dan bermanfaat, http://qnc.obatgondokalami.com/cara-mengobati-psoriasis-di-kepala/

jhonsjhons, 2016/06/29 05:30

berita yang bisa saya ambil hikmahnya dan semoga berguna, http://www.obatbenjolandileherherbal.com/cara-mengobati-benjolan-lipoma-tanpa-operasi/

TempurTempur, 2016/06/29 08:42

Bismillah, semoga aya miliknya http://obatuntukanak1.blogspot.com/2015/04/obat-bengkak-kaki-akibat-diabetes.html

TempurTempur, 2016/07/01 03:49

Berita yang sangat bermanfaat untuk menambah wawasan, http://serbaalami.com/obat-herbal-untuk-sakit-buah-zakar/

MaungMaung, 2016/07/13 03:04

YA ALLOHU, YAA ROZZAAQU, YAA WAHHAABU http://www.obatbenjolandileherherbal.com/pengobatan-alternatif-untuk-menyembuhkan-amandel/

jhonsjhons, 2016/07/14 03:19

semoga dilancarkan dalam mencari rizki, http://obatbenjolanasamuratmujarab.blogspot.com/2016/07/obat-polip-rahim-herbal.html

Enter your comment. Wiki syntax is allowed:
 
blog_tech/5/programming_is_craftsmanship.txt · Last modified: 2016/06/12 16:16 by admin