``Minden szoftver szívás" - mondta Cox.
A szoftver ipar jelentős része soha nem hallott még a minőségbiztosításról, vagy ha igen, akkor nem hisz benne.
Alan Cox, mint a Swansea Egyetem végzőse, azokról a trendekről beszélt egy az IT Wales által szervezett rendezvényen, amelyek a lehetővé teszik a programozók számára, hogy jobb minőségű szoftvereket készítsenek.
Kiragadva néhány dolgot:A beszédében Cox a szoftver mérnökséget a hardver ipar hasonló területéhez hasonlította.
A szoftverekkel szemben ellenpéldaként a mikroprocesszor cégeket állította:
``Több, mint 100 millió kaput/tranzisztort tesznek egy apró darab szilíciumra. Ezen az apró darab szilíciumon több huzalozás található, mint amennyi vonal van London térképén - és működik. Nagyon nagyon kevés hiba van a mikroproceszorokban.''
Mikor egy szoftver nem úgy működik ahogy kellene, egyszerű és olcsó dolog hozzá frissítést és patchet szállítani. De ezzel probléma van.
``Fogsz egy Windows XP gépet, feldugod az Internetre, átlagosan 20 perced van addig, amíg meg nem fertőződsz valamivel, ha nem vagy tűzfal mögött. Ez jóval kevesebb idő, mint ami ahhoz kell, hogy letöltsd a frissítéseket.''
Akkor mégis hogyan lehetne jobb szoftvereket írni? Cox szerint el kell fogadnunk, hogy a szoftver készítők - bármennyire is jól képzettek - esendőek, és nagy számú hibákat vétenek szoftvereikben. Ennek megfelelően el kell kezdenünk olyan eszközöket használni, amelyek segítségével ezeknek a hibáknak a számát olyan alacsonyan tudjuk tartani, ahogy az csak lehetséges.
Cox néhány tippje és trükkje ahhoz, hogy jobbak legyenek a szoftverek:
- csak végrehajtható kód
- alapértelmezetten bekapcsolt tűzfal
- programozási nyelvek
- ellenőrző eszközök
- típus biztonság
- tainting
- szabály ellenőrzés
- jó csatolófelületek
- matematikai modellek
- ``brute force'' teszterek
- stb.
Alan Cox véleményét a jobb szoftverek írásáról elolvashatod itt.