» »

Kalkulatorji na sto in en način

Kalkulatorji na sto in en način

WorseThanFailure - Mnogi gotovo poznate spletno stran Worse Than Failure, bivši The Daily WTF, katere glavni namen je zbiranje vseh čudaškosti, na katere naletijo razvijalci programske opreme pri takih in drugačnih podjetjih. Tako ni nobeno naključje, da je tam zbranih nekaj najbolj nemogočih primerov programske kode, kar jih je zmožna izpljuniti človeška pamet. Ravno zato so se pred dobrima dvema tednoma v ekipi odločili, da bodo razpisali majhen natečaj, katerega cilj je bil dokaj preprost: sprogramirati kalkulator, ki bi zamenjal Windowsovega na čimbolj nekonvencionalen način, s čimbolj hroščato kodo, ki bo še pa vedno delovala.

Pred nekaj dnevi je tako komisija končno prišla iz svoje temnice ter objavila dvanajst najboljših med več kot sto poslanimi programčki. Finalisti so bili:

  1. Stephen Oberholzer: Kalkulator s štirimi funkcijami, za katerega je značilno, da še nikoli ni slišal za matematiko s plavajočo vejico.
  2. Dan U: FileSystemHashMapNotepadCalculator, ki povzema Linux filozofijo uporabe že obstoječih orodij v op. sistemu. Tako programček odpre Windowsov kalkulator, skopira rezultat računa na odložišče, odpre Notepad, prilepi rezultat ter ga shrani v ustrezno mapo na C: particiji. Zatem samo še naloži rezultat iz te datoteke in ga prikaže.
  3. Keith Lucas: Estimator, ki se ponaša s svojo server-client arhitekturo. Vsakič ko uporabnik pritisne na gumb, se pošlje sporočilo na enega izmed 16 odprtih portov na strežniku (vsak port za svoj gumb). Ko je pritisnjen gumb '=', se sestavi izraz v LISPu in nato poračuna. Rezultat je zatem poslan v obliki XMLja klientu.
  4. Welbog: TerseCalc, zasnovan za računalnike brez matematičnega koprocesorja.
  5. Dave C: WebCalc, ki teče v oknu brskalnika, s pomočjo AJAXa sestavlja izraz, dokler uporabnik ne pritisne '='. Zatem izraz pošlje Googlu, dobljene podatke obdela in izpiše rezultat.
  6. Ivan Milyakov: OCRCAL, pri katerem uporabnik riše številke na ustrezna mesta, kjer jih kalkulator prepozna in izračuna. Vključuje tudi konfiguracijsko datoteko v jasni angleščini, kjer so opisane vse številke in tako omogoča dodajanje poljubnih znakov.
  7. Rube Goldberg: Kalkulator, za katerega so decimalne številke nepotrebno kompliciranje in tako predstavlja vse številke kot ulomke. Obenem je zaradi večje hitrosti napisan v assemblerju ter uporablja predpomnjenje v obliki XML datotek.
  8. Greg D: Univerzalni kalkulator, ki je pripravljen za vse matematične probleme vseh časov, zahvaljujoč uporabi ločenih knjižnic za še tako majhno malenkost. Podpora dodajanju svojih števil je samo plus.
  9. Terry: Kalkulator, ki se drži starega dobro poznanega uporabniškega vmesnika, uporablja namreč kar fotografijo namiznega kalkulatorja. Za računanje uporablja rekurzivne funkcije, ki seveda tečejo v ločeni niti. Seveda program za thread safety še slišal ni in porablja več RAMa kot Vista.
  10. Denis Ferron: FerronCalc, ki je v celoti baziran na C++ predlogah in uporablja state machine, čeprav ni nobene potrebe za to.
  11. Rodolpho St. John: VICE, ki bi moral biti zmožen teči na praktično katerikoli platformi. Programska koda se namreč začne z virtualnim tranzistorjem ter virtualno povezavo, se nadaljuje čez virtualna stikala, multiplekserje, križišča ter še kaj. Tako avtor dejansko v programski kodi zasnoval preprost procesor, ki zmore seštevati, odštevati in množiti 32-bitna števila.
  12. James NG: ExtensibleCalc, ki je opremljen s celim kupom različnih načinov za računanje, med drugim s takim, kjer moramo na koncu sami vtipkati rezultat.
Našteti primeri bolj ali manj jasno pokažejo vse grozote, ki se lahko zgodijo pri razvoju programske opreme. Na strani od vsakega izmed kalkulatorjev je tudi izvorna koda in preveden program za preizkus.

7 komentarjev

njok ::

Haha, sem se zabaval s temi prispevki zadnje dni, ja. VICE je state-of-the-art kos softvera. :)

jlpktnst ::

über

še komentarji so zabavni

pa branja je za več tednov

d0rK ::

A lahka kdo priproci kksn kul kalkulatorcek, po moznsti standalone exe file.



Basic opercije, ni nujno da je graficen in pa da kaze ze vpisana stevila.

balocom ::

zakaj jim nism svojga poslov:D :\ ...
..zna si zapoment kaj hočeš, a se pri 6. operaciji sesuje>:D
V svetu brez googla bi bil najbolj uporabljen ukaz v bash-u ukaz man

mercho ::

:D

najbl sta mi všeč Estimator in FileSystemHashMapNotepadCalculator

njok ::

Mavrik ::

Ma, v bistvu se mi zmagovalni ne zdi nič kaj posebej poseben ali sploh vreden omembe med temi. Niti izvirne ideje nima. Prej bi dal kakemu VICEu ali unemu tipu, ki je v ASCIIju narisal logično vezje, te pa napisal parser, ki to poparsa in izvede.
The truth is rarely pure and never simple.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Znanstveni kalkulatorji

Oddelek: Kaj kupiti
286675 (4972) matichy
»

grafična: softmod vs. original

Oddelek: Navijanje
181290 (980) x45
»

Kalkulatorji na sto in en način

Oddelek: Novice / Ostala programska oprema
74033 (2805) Mavrik
»

Netko 2005

Oddelek: Novice / Omrežja / internet
232886 (2224) comet
»

FAQ

Oddelek: Hlajenje in modifikacije
126502 (4245) OwcA

Več podobnih tem