Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Spectrum dla magistra

Rozczuliły mnie teksty macminika opisujące historię Spectrum. Sam mam bogatą kolekcję wspomnień związanych z użytkowaniem tych zabawek. Jedna z takich historii bezpośrednio wiąże się z moim akademickim, a co za tym idzie, i zawodowym bytem.

Swoją edukację akademicką rozpocząłem już dosyć dawno temu, w 1980 roku. Był to czas historycznie trudny i ciekawy zarazem. Nie tylko z powodów politycznych. Był to czas, gdy szczytem technologicznej nowoczesności był stereofoniczny magnetofon Finezja i radziecki kalkulator Elektronika z funkcjami matematycznymi. Studiowałem wytrwale przez całe sześć lat, w tym dwa razy na pierwszym roku. I właśnie gdy po raz drugi przyswajałem sobie materiał pierwszego roku dane mi było zapoznać się z wyjątkowym na tamte czasy komputerem ZX-81.

Już wtedy byłem zafascynowany programowaniem na moim kalkulatorze HP-33C, w którym można było utworzyć sekwencję 49 poleceń, dzięki czemu można było zautomatyzować powtarzalne obliczenia np. podczas ćwiczeń w laboratorium. Spisywało się to doskonale przy rachunku liczb zespolonych i dawało mi spory handicap w stosunku do moich kolegów. Poza tym kalkulator stosował Odwrotną Notację Polską (RPN), co z kolei było powodem niekończących się pojedynków i sporów z posiadaczami kalkulatorów Texas Instruments, które oferowały możliwość programowania w 80 krokach, ale w trybie klasycznym. W praktyce okazywało się, że tam, gdzie ja mieściłem się w 49 instrukcjach, "teksasowcom" czasami brakowało jednego lub dwóch kroków do uzyskania tego samego efektu.

Gdy w moje ręce trafił ZX-81 było to jak olśnienie - niewyobrażalna ilość dostępnej pamięci, normalna klawiatura, cały ekran TV do dyspozycji. A do tego można było pograć w jakieś kretyńskie "ping-pongi". Całymi nocami wymyślałem sobie matematyczne problemy, które potem wytrwale rozwiązywałem tworząc do nich programy, w których następnie szukałem błędów i niedoróbek tylko po to, żeby mieć powód do napisania wszystkiego od nowa. Zabawa była fantastyczna, ale i irytująca - do dyspozycji był tylko wyjątkowo prymitywny BASIC.

Przez cały okres studiów starałem się być na bieżąco z każdym pojawiającym się nowym sprzętem - Spectrum 16k, 48k, 48k Plus, Commodore VIC-20, C64, C128, Amstrad, Schneider, Acorn, Atari i jeszcze całe stada mniej znanych gościły na moim biurku i doprowadzały do szału moją byłą żonę, bo nierzadko wolałem spędzić noc nad klawiaturą niż w bardziej rodzinny sposób. Moja słabość do tych urządzeń szybko stała się "tajemnicą poliszynszyla", także dla moich wykładowców.

Jeden z nich, nazwijmy go dr B., zapragnął się habilitować. Żeby to osiągnąć musiał wykazać się swoją pracą naukową, wynikami badań i analiz. W tym celu tradycyjnie wykorzystywało się wtedy pracę magistrantów, którym jako prace magisterskie zlecano tematy związane z bieżącymi potrzebami promotora lub recenzenta. Dr B. wiedząc, że całkiem sprawnie poruszam się wśród komputerów, zapragnął ubarwić swoją publikację efektownymi (wg ówczesnych kryteriów) wykresami. Sam w stopniu dobrym opanował tylko maszynę do pisania więc dużo się nie zastanawiając zaproponował mi do magisterki temat "Analiza stanów nieustalonych w przekształtniku fazowym w fazie rozruchu". Nie wnikając w meritum tematu napiszą tylko, że wynikiem było rozwiązanie układu kilku równań różniczkowych dla różnych parametrów początkowych. Tylko pozornie było to zadanie skomplikowane, wszystko sprowadzało się do zastosowania jednego z wielu algorytmów rozwiązywania tego typu problemów.

Ale tu faktycznie zaczynały się schody. Bardzo szybko okazało się, że Spectrum 48k jakim dysponował pan doktor w rozsądny sposób trawi jedynie najprostsze algorytmy iteracyjne - wybór padł na zmodyfikowaną metodę Eulera. Prosta do zaprogramowania w BASIC-u okazała się jedyną, która jako tako dała się zaimplementować. Dla danych testowych wszystko wyglądało super, na ekranie w rozsądnym czasie pojawiał się ładny wykres, który można było wydrukować na maleńkiej drukarce piezoelektrycznej. Cud, miód i orzeszki.

Niestety, metoda Eulera obciążona jest sporym błędem jeżeli krok iteracji jest zbyt duży. Wykresy testowe nijak nie przystawały do oczekiwanych wyników. Niezbędne było zmniejszanie kroku iteracji, a to skutkowało niemiłosiernym wydłużeniem czasu obliczeń. Wystarczy powiedzieć, że dla optymalnych parametrów wejściowych po 24-godzinnej pracy na ekranie pojawiał się fragment wykresu o długości 2mm w pierwszym półokresie. Żeby wynik uznać za wiarygodny niezbędne było przejście co najmniej dwóch okresów, a wykresów w cyklu badań musiałem wykonać 36! Masakra!

Pan dr B. absolutnie nie przyjmował do wiadomości moich tłumaczeń. Wydawało mu się niemożliwe, żeby coś, co jest nazywane komputerem nie poradziło sobie z elementarnym problemem matematycznym. Orzekł, że na pewno mam błąd w programie i że trzeba to koniecznie sprawdzić. Tak trafiłem do ośrodka ZETO, w którym na PDP-11 przepisałem program do jakiegoś FORTH-a czy FORTRAN-a (nie było to zbyt trudne). Minikomputer poradził sobie z jednym wykresem w czasie ok. 30 minut i wypluł z drukarki wierszowej metrową wstęgę papieru zadrukowaną znakami ASCII w kształcie z grubsza przypominającym wykres.

Oczywiście w takiej postaci efekt był nie do przyjęcia, takie wykresy to mógł mieć każdy. A panu doktorowi chodziło o takie ładniutkie wykresiki, które można by wkleić do swojej pracy i pochwalić się przed kolegami. I postawił mnie przed koniecznością rozwiązania problemu.

Pominę wszystkie kolejne próby, jedynie przepisanie programu pod CPM na Commodore 128 dało zdecydowanie lepsze wyniki, ale i tak daleko im było do zachowania rozsądnych terminów - zamiast 3-4 dni jeden wykres powstawał "tylko" w ciągu ok. 30 godzin. Byłem załamany.

Temat pracy otrzymałem jeszcze na czwartym roku, rok później gdy zbliżał się czerwcowy termin obrony pracy, moje wykresy były nadal w sferze planów i poszukiwań. Teoretycznie mogłem mieć już gotowe wszystkie, ale w praktyce nie wyglądało to tak prosto. Każdy wykres musiał spełniać pewne określone warunki, więc każdy z nich powinien powstać w przynajmniej 4-5 wariantach. Byle błąd lub niedopatrzenie, awaria prądu, cokolwiek niespodziewanego wydłużało cały proces. Byłem autentycznie załamany i zniechęcony. Sytuacja zgęstniała do tego stopnia, że bardzo wyrozumiały do tej pory dziekan mojego wydziału skreślił mnie z listy studentów za niezłożenie pracy w terminie.

To była już kompletna katastrofa. Szybka wizyta w dziekanacie i po krótkiej rozmowie z dziekanem ustalony dodatkowy termin obrony. Ostateczny.

Formalnie od czerwca nie byłem już studentem, a praktycznie już od lutego musiałem chodzić tylko na seminaria. Czasu miałem więc dużo i wykorzystałem to do podjęcia pracy w jednej z pierwszych w moim mieście poważnych firm komputerowych. Właściciel z gatunku post-cinkciarskiego neofity biznesu handlował na dużą skalę sprzętem "importowanym" z Singapuru, Korei i Tajwanu. Był w tym naprawdę dobry. Zatrudniał młodych zdolnych pasjonatów i płacił im całkiem dobre pieniądze. Złapałem Pana Boga za nogi.

Bonusem, którego początkowo nie dostrzegałem była możliwość pracy na sprzęcie klasy XT i AT (286). Dopiero przyparty do muru dostrzegłem swoją szansę właśnie w DOS-ie. Skądś wykombinowałem jakiś kompilator, to był Pascal lub coś pokrewnego. W miarę szybko przepisałem program, przetestowałem i... sukces! Przychodząc o 7 rano do pracy odpalałem proces i ok. godziny 12 miałem gotowy jeden wykres. Z promotorem wynegocjowałem zmniejszenie ich liczby do 24 i w ten sposób przez dwa letnie miesiące wyprodukowałem te nieszczęsne wykresy w komplecie. Chociaż drukowane przez Print Screen wyglądały jak psu z gardła wyjęte, to dla mnie były prawdziwymi dziełami sztuki.

Dokładnie w tym samym czasie swoją pracę pisał mój przyjaciel, nawet temat miał podobny tyle, że z dziedziny telekomunikacji. Jej wynikiem też miały być wykresy, ale ładniejsze od moich - w trzech wymiarach. Ten przyjaciel jeszcze bardziej zakręcony na punkcie komputerów niż ja, był posiadaczem jednego z pierwszych w naszym kraju komputera Macintosh. Słynna "lodóweczka" technologicznie przewyższała wszystko z czym miałem styczność. Piękny graficzny interfejs użytkownika z zestawem całkiem funkcjonalnych programów, myszka i do kompletu wielka i ciężka mozaikowa drukarka Apple. Po prostu cudo na tle tajwańskiej tandety składanej w mojej firmie.

Gdy pokazał mi wyniki swojej pracy, najpierw na ekranie, a później na wydruku, poczułem się jak ubogi krewny z prowincji. To był majstersztyk. I cieszyłem się jedynie, że nie widzi tego mój promotor - byłby gotów zmusić mnie do wywalenie tych 3000$ tylko po to, żeby zaspokoić swoją "wykresową" próżność.

PS.
Tak, wiem. Zastosowanie innego algorytmu mogło całą sytuację radykalnie zmienić na lepsze. Jednak błąd z wyborem popełniony na początku ciągnął się za mną przez cały czas. Ponadto moje umiejętności programistyczne nie były najwyższe, a dostępność innych języków programowania na sprzęcie klasy Spectrum była praktycznie żadna. Oczywiście z czasem sytuacja ulegała szybkiej zmianie, ale ja uparcie trwałem z tym swoim błędem pierworodnym. Niestety.
 

sprzęt hobby inne

Komentarze

0 nowych
  #1 25.10.2014 02:42

Świetny wpis.
Nie dało się z PDP przenieść samych wyników jakoś na Spectrum, żeby je tylko zwizualizował? Może w PDP było jakieś RS232 czy coś?

fiesta   15 #2 25.10.2014 08:37

Niejeden naukowy projekt się wysypał i umarł śmiercią naturalną z powodu źle przyjętych na samym początku założeń, nie byłeś pierwszy i na pewno nie ostatni. Możliwe że wcześniejsze konsultacje z Twoim przyjacielem oszczędziły by Ci wielu nieprzespanych nocy, bo wystarczył by rzut obcego oka i wskazanie odpowiedniej metody. Ale to się nazywało pracą magisterską, teraz "magistery" nawet na kierunkach informatycznych mają problemy z edycją pracy zerżniętej z neta w Wordzie :P A dowody na poparcie mojej tezy można bardzo szybko znaleźć na naszym forum ...

Autor edytował komentarz.
Ayaritsu   5 #3 25.10.2014 09:42

@fiesta
Ciężko mi się nie zgodzić. Teraz właśnie jestem na 4 roku, niedawno się broniłem i...widać było, że wielu moich znajomych jak najwięcej kopiowało z neta. W sumie ich rozumiem częściowo, bo tematy były takie...hm...kiepskie. Mi się udało złapać w miarę fajny, którego nie mogłem "skopiować" z neta, w związku z tym, iż miałem napisać program, którego nie było jeszcze w necie, a przynajmniej nie w formie dostępnej:)

Zobaczymy jeszcze jak to będzie na magisterce:) teoretycznie mógłbym rozwijać ten program dalej, ale problem byłby z częścią teoretyczną, bo część bym musiał skopiować od...samego siebie:)

Co do tematu. Fajna widać, że są osoby, które nie poddają się w swoich założeniach i walczą do końca:) Chodź czasem rozwiązanie przychodzi przez przypadek:) Z chęcią bym się pobawił takimi starymi komputerkami, aby zobaczyć przez co przechodzili moi poprzednicy:)

Siplas   8 #4 25.10.2014 12:36

@Anonim (niezalogowany): Niestety nie dało się. Spectrum ze światem zewnętrznym komunikował się przez kasetę magnetofonową. Z kolei PDP w ZETO to była maszyna, do której dostęp był ściśle limitowany. Trzeba było zapisywać się na konkretną godzinę, kilka dni wcześniej, a obsługiwał wszystko pracownik zakładu. O podłączaniu czegokolwiek nie było nawet mowy...

fiesta   15 #5 25.10.2014 13:15

@Siplas: ". Z kolei PDP w ZETO to była maszyna, do której dostęp był ściśle limitowany. Trzeba było zapisywać się na konkretną godzinę, kilka dni wcześniej, a obsługiwał wszystko pracownik zakładu. O podłączaniu czegokolwiek nie było nawet mowy..."
Ale wytłumacz to młodemu, który nie ma zielonego pojęcia o metodologii badań naukowych, przyleci ci na forum z bzdurną ankietą oderwaną od rzeczywistości, bez zgody dziekanatu na prowadzenie badań, nie mówiąc o zgodzie admina forum na badania na forum.

Po zamknięciu tematu święte oburzenie, że jakim prawem, że moderacja niszczy w zarodku świeżo narodzoną "myśl naukową" :P

kozodoj   9 #6 25.10.2014 13:32

Kwestia techniczna - dobre prace magisterskie, czy inżynierskie, muszą być jakoś zakotwiczone w bieżących badaniach wykonywanych w danej jednostce, czy też po prostu przez promotora. Pieniądze w nauce nie biorą się znikąd, więc nie można ich ot tak zmarnować na wydumane problemy. Dopóki promotor nie kradnie takich wyników (czyli bierze jako swoje, pomijając wszelkie zasługi studenta) dopóty wszystko jest w porządku. Studenci czasem wykazują wyjątkowe przywiązanie do swoich wyników, uważają, że należą tylko do nich. Owszem, praca magisterska ma być pracą samodzielną, ale prawda jest taka, że prawie żaden (nawet z tych wybitnych) student nie jest w stanie wymyślić sobie tematu pracy, zwykle nie umieją jej poprawnie napisać, nie umieją zanalizować statystycznie danych i tak dalej. Nie umieją też upublicznić tych danych - więc podsumowując udział studenta w ostatecznej publikacji (bo tylko dane opublikowane mają wartość - badania robione do szuflady nie mają sensu) nie da się ukryć, że mieści się on zwykle w zakresie od "znikomy" do "mały"...
To tak dla uporządkowania - nie sugeruję, że autor wpisu tak postępował.

Siplas   8 #7 25.10.2014 14:01

@kozodoj: Pełna zgoda, tak było i prawdopodobnie tak nadal jest. Nie kwestionuję takiego działania, w mojej historii troszkę ironizuję z motywów mojego promotora - nie chodziło o nowe wyniki badań czy nową interpretację (nie ja pierwszy wykonywałem tę pracę), ale o estetykę wykresów. Nie zmienia to oczywiście faktu, że wykonanie tej pracy wymagało realnego zaangażowania i pewnej poznawczej dociekliwości :)

Siplas   8 #8 25.10.2014 14:11

@kozodoj: I jeszcze jedno, w tamtych czasach (myślę, że dzisiaj jest tak samo) bywali na każdej uczelni wybitni naukowcy, którzy wybierali sobie najlepszych studentów i przydzielali im prace magisterskie bezpośrednio związane z ich badaniami. Dla takiego studenta była to duża nobilitacja. Na moim wydziale też był taki pan docent, który dzisiaj już z tytułem profesorskim jest wybitnym międzynarodowym specjalistą od napędów magnetycznych i urzęduje na jednym z amerykańskich uniwersytetów. Był wyjątkowo apodyktyczny i nielubiany, ale każdy z nas po cichu liczył, że właśnie jemu pan docent da temat do pracy magisterskiej. Mi niestety nie dał ;)

macminik   16 #9 25.10.2014 14:32

@Siplas: nie było Pendrive'a ?

mmm777   5 #10 25.10.2014 15:19

Wyliczone na PDP dane na drukarkę, w jakiejś postaci różnicowej, by było mniej do wpisywania. Potem programik na ZX, do wklepania ich i zapisania na kasetę. W końcu na ZX to ile by mogło być najwięcej punktów w wykresie? 64? Na Spectrum? 256? Pewnie by było mniej, niż strona maszynopisu.

Siplas   8 #11 25.10.2014 16:56

@mmm777: Fakt, dzisiaj brzmi to rozsądnie i racjonalnie, ale wtedy jakoś nie przyszło mi do głowy :] Ciekawe dlaczego? :D

pocolog   12 #12 25.10.2014 17:46

Bardzo ciekawy wpis. Czytalem z zapartym tchem jak dreszczowiec :)

mmm777   5 #13 25.10.2014 17:50

@Siplas: `ja nie mam czasu na naostrzenie siekiery, bo ja muszę rąbać'

Siplas   8 #14 25.10.2014 19:04

@mmm777: No i wszystko jasne ;)

  #15 25.10.2014 19:05

@mmm777: Ciekawe co by padło pierwsze klawiatura czy pamięć/ula w Spectrum od takiego intensywnego wykorzystywania ;-)

GBM MODERATOR BLOGA  20 #16 25.10.2014 20:09

Świetny tekst, a opis tego jak w latach 80-tych pisało się magisterkę... jejciu, naprawdę wtedy trzeba było się namęczyć, a nie pykać pyk i w kilka dni zrobione... ;)

Czytałem z zapartym tchem, a ponadto uważam że jest to świetny wpis, które daaawno nie było na DP.

@Siplas: Mam nadzieję, że nie poprzestaniesz na tym jednym wpisie - z przyjemnością będę czytał Twoje kolejne co do przygód z tego typu sprzętami :)

Autor edytował komentarz.
moh3r   11 #17 25.10.2014 20:51

Bardzo ciekawa historia, przyjemnie się czytało. Dzięki.

Shaki81 MODERATOR BLOGA  38 #18 25.10.2014 21:03

Kapitalny wpis. Mam nadzieje, że miałeś więcej takich przygód i je opiszesz. Swoja drogą brakło kilku grafik.

Siplas   8 #19 25.10.2014 21:56

Jeżeli mnie pamięć nie zawiedzie i przypomnę sobie jakieś ciekawe sytuacje, to na pewno spróbuję je opisać. Chociaż obawiam się, żeby nie okazały się wtórne. Mam jednak pewną historię, która nie dotyczyła bezpośrednio mnie, a jednego z moich przyjaciół. Postaram się w wolnej chwili opisać sytuację, która dla wielu (może nawet dla większości) dzisiejszych młodych adeptów informatyki może okazać się raczej niecodzienna.

Dziękuję za wszystkie miłe słowa i przychylne opinie, fajnie się to czyta ;)

Pangrys WSPÓŁPRACOWNIK  19 #20 26.10.2014 00:01

@Siplas: Nie obawiaj się, warto pisać by nasze wspomnienia żyły dalej :)

flaszer   10 #21 26.10.2014 12:42

@GBM: to nie jest wcale pyk pyk, nawet dzisiaj ??

GBM MODERATOR BLOGA  20 #22 26.10.2014 16:25

@flaszer: Tak, dokładnie tak. Porównując brak Internetu i swobodnego dostępu do GROMU informacji z tamtych lat, gdzie człowiek był ograniczony wyłącznie do bibliotek. Podejrzewam, że również i tam nie zawsze dało radę znaleźć odpowiednią pozycję, która odpowie na nasze pytanie np. do pracy magisterskiej ;)

A teraz... pykasz pyk z wygodnego fotela, a horyzonty do zdobycia nowej wiedzy poszerzasz za pośrednictwem... myszki i klawiatury :)

moh3r   11 #23 26.10.2014 16:28

@GBM: Ale nadal nie jest to kilka dni.

GBM MODERATOR BLOGA  20 #24 26.10.2014 16:42

@moh3r: Okej, może kilka dni to jest zbyt odważnie powiedziane ;)

flaszer   10 #25 26.10.2014 21:55

@GBM: wybacz za zmyłkę, to nie miało być pytanie a stwierdzenie ;-) odnośnie stopnia skomplikowania pracy to zauważ, ze żyjemy w znacznie bardziej rozwiniętych czasach to i same zagadnienia są nieraz bardziej złożone :-)