Re: Edukacja...

Autor: Andrzej Karpinski (KARPIO_at_golem.umcs.lublin.pl)
Data: Tue 07 Jan 1997 - 22:27:15 MET


> bo staram sie ustalic, czy mowimy o:
> 1 pisaniu oprogramowania
> 2 napisaniu podrecznego skryptu jednorazowego uzytku
> 3 stylu programowania z m$

mowimy o korzystaniu z komputerow przez szaraczkow i sposobach wpojenia im
do glowencji podstawowych rzeczy. nauka tp do nich imho nie nalezy, chociaz
wszyscy nie wiedziec czemu za to akurat zabieraja sie w pierwszej kolejnosci.
nie neguje eleganckiego programowania, sam takowe uprawiam, ale bez przesady.
nie moze byc sytuacji, w ktorej zastanawiasz sie dlaczego jednym razem jest
taka petla, a drugim inna, by dojsc do wniosku ze tylko dlatego ze istnieja
akurat dwa rodzaje petli. poza tym czy naprawde piszesz systemy
telekomunikacyjne czy co tam jeszcze, pielegnujesz je przez lata w
wieloosobowej grupie i uzywasz do tego tp?

1 pisanie powaznego oprogramowania powinno byc jak najbardziej
usystematyzowane, czy jak wy wolicie: strukturalne. zgadzam sie. to ulatwia i
oszczedza znacznie wiecej czasu niz Greg'owe 5% (czy moje 105%) czasu jaki
zaoszczedzimy produkujac kod w asm czy czymkolwiek innym. czyli jest sens
pisac strukturalnie, bo inaczej nikt przy zdrowych zmyslach nie potrafilby
zapanowac nad projektem i powstalymi w toku pracy bledami. i tego tez nalezy
uczyc, ale tych ktorym bedzie to potrzebne. oprogramowanie sprzedawane masowo
powinno miec jednak zoptymalizowane najczesciej wykonywane funkcje, procedury
(tutaj widze miejsce dla asm). mam tu na mysli chociazby procedury obslugi
grafiki, ale nie tylko - takze wszystko co sie w petlach dluzej wykonuje.

3 jesli z produktu korzystac bedzie ilestam milionow osob (a m$ ma chyba
powod by takie zalozenie sobie postawic) to zakichanym obowiazkiem wytworcy
programu, systemu czy czegokolwiek innego jest zadbac, by te miliony nie
tracily calych godzin, lat, epok (lacznie sa to przeciez ciezkie pieniadze!)
tylko dlatego, ze zdecydowano sie zastosowac jakis tp aby wypuscic produkt
miesiac wczesniej na rynek. nie mowie tu oczywiscie o przesadzaniu - nikogo
nie namawiam do majacej trwac pol roku optymalizacji procedur wczytywania
znakow z klawiatury w wordzie - zysk bylby cokolwiek watpliwy. jesli jednak
programisci mogliby np. przyspieszyc operacje graficzne badz ogolnie prace
systemu o powiedzmy 20% tracac na to 3-4 m-ce dluzej (realne w przypadku ...
w miejsce kropek kazdy wie co powinien wpisac), rownoczesnie caly czas
testujac produkt przez co uniknie sie ilustam bledow, to jest to obowiazek
autorow. kropka. koniec dowodu.

2 podreczny skrypt jednorazowego uzytku moze byc brzydki, niestrukturalny,
nieefektywny itd. jedyny warunek - ma powstac maksymalnie szybko i dawac
poprawne wyniki oraz pracowac nieco krocej niz sredni czas zycie trzech
pokolen autorow. z tego typu rzeczy korzysta zwykle jedna osoba. strata
tygodnia w oczekiwaniu na wyniki nie jest tu niczym znaczacym zwlaszcza jesli
napisanie tego w ladniejszej (badz wydajniejszej) wersji zajeloby tylko 3 dni
wiecej. takiego programowania powinnismy uczyc masy - szybko i ma dzialac. a
najambitniejszym pozostawic strukturalnosc i wielkie plany. wcale nie mam
aspiracji by tworzyc kolejna wersje windows, chociaz pewnie nawet ze swoim
nieco chorym umyslem po pewnym treningu i przeszkoleniu, w grupie bym
potrafil. kto wie czy nie lepiej niz jolopy (przepraszam) z m$.

> ;)

(-:

> ja tez; nie traktuj mojej wypowiedzi jako agresywnej,
> ale sam narzekasz na m$ czasem, zrozum moje wzburzenie;
> a wzburzam sie z pozycji osoby pracujacej w rejonie
> sasiadujacym z bezpiecznym programowaniem

nie traktuje. na razie jest kulturalnie i mam nadzieje ze tak pozostanie.
nie rozumiem jednak wzburzenia. nie odpowiedziales na moje pytanie - po co
uczyc ludzi tp jak mozna ich nauczyc innych rzeczy (np. do czego sluzy mysz,
jak pliki kopiowac i ze dysk twardy nieco sie rozni od ramu). nauka
programowania imho powinna zaczynac sie dopiero wtedy, gdy uczony ma pewien
zasob wiadomosci nt. komputerow. bo jak mozna korzystac z zaawansowanych
mozliwosci narzedzia gdy nie rozumie sie do czego dane narzedzie sluzy. jak
mozna obierac ziemniaki mlotkiem, uczac sie tego na podstawie cykli rozkladu
skrobi na glukoze w ziemniakach z uwzglednieniem skladu jonowego atomow
tworzocych rozkladajace ja enzymy, i jaki to ma wplyw na otoczenie? :)

karpio



To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 15:51:14 MET DST