Tag: ‘optymalizacja’

Informatyka dnia codziennego, czyli multum możliwości

piątek, 05.03.2010

Zasadniczo wpis ten nie dotyczy tylko informatyki, ale wszystkiego co nas otacza, co może sprawić nam jakiekolwiek trudności.

Ale zacznijmy od informatyki. Informatyka jest niczym innym jak zaprzęgnięciem maszyn operujących na abstrakcyjnych dla człowieka ciągach zer i jedynek do rozwiązywania „problemów trywialnych” i na ich podstawie rozwiązywać część lub całość problemów. Szczególnie ma to znaczenie w przypadku czynności powtarzalnych, czy też trudnych obliczeniowo.

Pozytywne i negatywne skutki komputeryzacji

    Oczywiście ma to swoje pozytywne i negatywne skutki, choćby:

  • pogarszający się styl pisma odręcznego, bo po co się martwić jeśli wszystkie oficjalne pisma teraz oddaje się w formie wydruku
  • pogarszający się poziom ortografii, bo po co jeśli procesor tekstu poprawi błędy
  • nieumiejętność liczenia w pamięci kiedy jeden z naszych nowych narządów (tel. komórkowy), ma wbudowany kalkulator

Ale tak naprawdę komputer powinien być dla nas ułatwieniem, a w połączeniu z internetem bardzo podnosi komfort naszego życia . I nie jest istotne, że w jakimś stopniu komputer upośledza pewne nasze cechy i zdolności.

Niewykorzystywane ułatwienia

Przerabiając właśnie jeden z najprostszych możliwych programów, w którym jak się zdawało Kanclerzowi naszej uczelni można zrobić każdy chyba rodzaj oprogramowania ;), czyli arkusz kalkulacyjny, musiałem się zmierzyć z myślą bardzo przykrą. Ludzie nie potrafią używać oprogramowania choćby w ułamku ich możliwości.

Jako początkujący programista staram się by każdy mój kod, dzień pod dniu stawał się mądrzejszy. Aby nie powtarzać kodu, przekazywać obiekty i argumenty, dziedziczyć, itp. itd. Pracując na arkuszu kalkulacyjnym w którym nie ma żadnej formuły, a powinno być choćby kilka najprostszych uczułem jakieś takie dziwne ukłucie. Uczucie, że miliardy roboczo-godzin jest marnowanych na całym świecie, pomimo że ludzie posiadają narzędzia ułatwiające (często darmowe), ale nie potrafią wykorzystywać ich możliwości.

Dobrze skonstruowany arkusz kalkulacyjny (jak i każde inne oprogramowanie) może oszczędzić czas, który będzie tracony w sposób wykładniczy bez dobrego arkusza, na bezsensowne modyfikacje wartości, które powinny być wyliczalne za pomocą oprogramowania, a nie przy pomocy kartki i kalkulatora. Tak jest bardziej mądrze, ekologiczne, logicznie, elastycznie, ekonomicznie i ogólnie lepiej, a często nie wymaga wielkiej wiedzy.

Optymalizacja ma wiele zalety, oczywiście jeśli nie wymaga większej pracy niż korzyści. Czasem przecież zasada KISS (Keep It Simple Stupid), znaczy po prostu nie ulepszać (nie komplikować) niepotrzebnie, nie robić tzw. „sztuki dla sztuki”. Wiele lat temu poświęciłem parę dobrych godziny jako praktykant by dojść jak masowo wydrukować koperty na podstawie jakiejś bazy danych osobowych, po paru godzinach z kolegami zrezygnowaliśmy z eksperymentów i wydrukowaliśmy jakieś 200-250 kopert, sztuka po sztuce, z każdym razem zamieniając dane. Gdyby nam się udało do tego dojść ułatwilibyśmy pracę księgowości na wiele miesięcy i lat do przodu, ale możliwe że nie udałoby nam się zdążyć z wykonaniem zadania na czas.

Także po to mamy szare komórki by wybrać co jest lepsze w damy czasie, zważając na wszelkie aspekty, by się nie potrzebnie nie „zakiwać”.

Niewykorzystywane ułatwienia nie związane informatyką

Takie same sposoby powinny być stosowane w innych aspektach życia. Ale oczywiście często nie są. Ludzie w większym czy mniejszym stopniu dążą do optymalizacji, ale nie mniej większość ludzi nie zdaje sobie sprawy z zalet optymalizacji swoich działań. Ma to związek z nieprzyszłościowego podejścia do zagadnień, a czasem zwykłym oczekiwaniem, że ktoś inny rozwiąże nasze problemy (co jest jakimś rozwiązaniem). Czasem małe czynności na początku miesiąca, mogą się przyczynić do dużych oszczędności nerwów i czasu pod koniec miesiąca.

Podsumowanie

W życiu (o ile nie mamy takiej ideologii) powinniśmy jak najbardziej ułatwiać sobie (i innym)  życie, uczyć się jak zrobić więcej, pracując mniej i mając przy tym więcej przyjemności, satysfakcji, a często pieniędzy.

Optymalizujmy nasze działania i programy, ulepszajmy nas samych, ułatwiajmy nasze życie i życie innych ludzi.