pierwszy program - czyli to czego się wstydzimy

0

Zakładam ten temat w celu odświeżenia wspomnień i odejścia choć na chwilę do problemów "wielkiego świata programistycznego". ;)

Temat powstał po to, aby rzesze forumowiczów mogło podzielić się najbardziej skrywaną tajemnicą każdego programisty - pierwszego programu. :) Nie chodzi mi tu o pierwszy sprzedany albo nawet napisany na zajęciach. Mówię o pierwszym dziecku stworzonym w domowym zaciszu, tylko dla siebie. :)

Ja sam zaczynałem na Commodore 64 (10 lat jeszcze nie miałem na pewno :d). Pierwszym działającym programem, innym niż animowane Sprite'y był test wiedzy o... <werble> Kaczorze Donaldzie. Do dziś pamiętam jaką radość sprawił mi mój mały autorski system liczenia punktów. :)

Programem drugim (wiem że miał być jeden, ale oddzielam 8bitowe C64 od późniejszych doznań;) ) był komunikator, pisany w Delphi 3.0 Personal dołączonym do jednego z czasopism. Cały interfejs ograniczał się do jednego przycisku i kontrolki tekstowej. Pamiętam, że przez długi czas (o internecie jeszcze nawet nie marzyłem) dziwiłem się że program nie chce działać jak powinien, pomimo tego że przecież były w nim dwa okienka... Po kilku dniach zrozumiałem że problemem może być to że oba okna do komunikacji były częścią jednego programu i to może powodować "nierealność" działania całego projektu. :) Ale jaką radość sprawił mi sam fakt przesłania informacji z jednego okna do drugiego. :D

Mam nadzieję że więcej osób przyłączy się do tego tematu.

Pozdrawiam i życzę odwagi w wygrzebywaniu brudów. ;)

0

Nieraz mnie kusiło zadać pytanie o pierwszy program. Troszkę więc popiszę. Od zawsze mnie ciekawiło jak się pisze programy. Wiadomo, że po podświetleniu pliku mamy „kaszkę”, tak więc zastanawiałem się czy programista siedzi i tą kaszkę pisze ręcznie. Mijały lata, temat troszkę ucichł. Do czasu aż nie poszedłem do technikum. Był koniec drugiej klasy. Tak od niechcenia zadałem koledze pytanie: jak się pisze programy. On na to mam Pascala i książkę. Dostaniesz na wakacje. I się zaczęło. Wiadomo, na początku hello, Word. Przepisywanie gotowców z książki. Potem troszkę samodzielnych ćwiczeń. Z racji mojej specjalności (podstawy konstrukcji maszyn) stwierdziłem, że ten Pascal to niezłe narzędzie numeryczne do liczenia projektów. Teraz nie pamiętam co było pierwsze, chyba program do obliczeń wytrzymałościowych połączeń wielowypustowych. Proste wzory, ze dwa ify, tablice, pętle. Co ja się nie nawyzywałem. Liczba błędów + struktura algorytmu. Wówczas było to nie do przeskoczenia. Program miał zgoła sto – parę wierszy a pisałem go kilka dni, ale udało się.

0

heh, pierwszy program... hmm, taki "sensowny" pierwszy program, ktory pisalem z wlasnego pomyslu, ale bez zadnej wiedzy, bez pomocy internetu, to byl BatEditor - program do pisania skryptow "powloki" wiersza polecen :P
mozna bylo wstawiac komendy wybrane z listboxa - samo zaznaczenie komendy w listboxie powodowalo wyswietlenie w w polu tekstowym notatki na temat danego polecenia - info bylo brane z:
$ komenda /?
i przechowywane w pliku tekstowym - kazde w innym pliku.
ze to byly czas takie, ze komputer mialem od bardzo krotkiego czasu, a takie pojecia jak ASCII byly mi nieznane, a co dopiero wiedza, jak w polu tekstowy w delphi wstawic "enter". rozwiazalem to w taki smieszny sposob:
w fazie projeektowania wygladu programu wstawialem komponent memo a w nim wpisywalem enter. potem ukrywalem ten komponent i w razie potrzeby, wstawailem jego zawartosc w odpowiednim miejscu :)
jak na to poatrze teraz, az nie wiem czy sie smiac czy plakac.
ale chyba nabardziej odjechane zastosowalem w HTMLEditorze. chcialem zrobic taka fajna funkcje, ze jak klikne buttona, to zaznaczony tekst zostanie umieszczony w tagu, np teskt "blabla" zostanie zamieniony na "blabla"
cala moja wiedza na temat nazw i zastosowania funkcji, procedur, wlasciwosci byla z doswiadczenia. najwiekszym zrodlem informacji byl code insight. wracajac do rozwiazania swojego problemu, zrobile mto tak:
do zmiennej wrzucalem zawartosc ze schowka
do schowka kopiowalem zaznaczony tekst
dodawalem w skopiowanego tekstu tagi a potem je wklejalem, chyba za pomoca seltext, czy jak to sie tam zwie (dawno nie widzialem delphi).
a na koniec przywracalem ze zmiennej pierwotny stan schowka...

to yle chyba z moje smiesznego programowania. mimo wielu rozwiazan, ktore w rzeczywistym swieci nie maja racji bytu, to mile wspominam te czasy - brak internetu, byl wlasnie swietny pod tym wzgledem, bo wszystko musialem wymyslac samemu.

0

No to ja się pochwale :] Moim pierwszym samodzielnym programem był kalkulator. Rozwijałem go dość długo, wszystkie wzory matematyczne <ort>Od razu </ort>musiałem dodać do tego kalkulatora. Później był pad win98 i format. Niestrudzony <ort>zaczełem </ort>kalkulator pisać od nowa, była nawet zamiana różnych jednostek. Tak go rozwijałem do następnego padu systemu.

0

Pierwsze działające coś, to była gra w Pascalu, której latało się helikopterkiem i strzelało do wszystkiego co się, rusza. Tragedia... tryb BGI, zero podziału na funkcje/procedury, zmienne globalne dodawane na chama. To miało w pewnym momencie chyba z ponad 1000 linii kodu, już nie wiedziałem co się kompletnie dzieje, ale działało ;) Później była wersja druga, zrobiona w trybie 13H. Tzn nie robiłem nic w asemblerze, kolega dał mi sterownik BGI do takiego trybu ;) A później następna przy użyciu biblioteki GSVGA. Do dziś mam ochotę zrobić następną wersję w DirectX ;) Cholera... wspomnienia mnie naszły... nie ma mowy - siadam i robię... :D

0

Swoją drogą, skoro widzę że wszyscy piszą o działających projektach (mój "komunikator" nie miał z komunikatorem nic wspólnego :D) to chyba u mnie był to słownik stworzony pod wpływem fascynacji twórczością Tolkiena. Wiem że pozwalał na znajdywanie haseł zarówno w języku elfów jak i ludzi, wyświetlał nawet tekst napisany czcionką elfów. W planach była tablica znaków dla obu języków, ale projekt upadł szybko. To jak to wszystko działało było.. Dzisiaj żałosne - wtedy byłem z siebie dumny (pierwszy OwnerDraw zawsze się pamięta;) ).

[EDIT]

Projekt upał z niewiedzy - tablica znaków okazała się wyzwaniem ponad moje możliwości i wiedzę. :)

0

moj pierwszy program powstawal w dosc ciekawy sposob. w przeciwienstwie do wiekszosci chyba z Was, nie zaczalem interesowac sie programowaniem w wyniku posiadania komputera tylko...w sumie juz nie pamietam jak. dosc ze tego ostatniego nie mialem, a jednak programowalem. zapytacie jak ? na kartce ! bylo tego nie duzo bo chyba kilka, moze kilkanascie A4 (swoja droga, gdzie to teraz jest ?), jednak brak mozliwosci sprawdzenia poprawnosci kodu powodowal, ze w sytuacji znalezienia bledu czesto musialem pisac duzo od nowa :), pamietam jak nad tym sleczalem...w koncu jednak zdobylem komputer. pozornie dobry kod bardzo szybko okazal sie takim nie byc. z takich smieszniejszych rzeczy: program mial sluzyc mojej mamie do kasy. zczytywal z klawiatury rozne kwoty a nastepnie podawal ile musi byc w kasie ktorych banknotow tak zeby mozna bylo wszystkie kwoty czastkowe wyplacic.
(1+1+1+1+1 = 5 ale w kasie musi byc 5 x 1 zlotowek a nie jedna moneta 5ciozlotowa itd).
otoz nie znalem jeszcze wtedy operatora mod. tak wiec obliczanie poszczegolnych nominalow odbywalo sie w ten sposob ze po jednym byly odejmowane od kwoty, do momentu az ta bedzie od tego nominalu mniejsza, wtedy zmienialem nominal rowniez na mniejszy. przy podaniu jakiejs olbrzymiej kwoty program mogl pracowac baaardzo dlugo :). aha, to wszystko bylo pod dosem w pascalu pisane. i zrobilem taki superowy (;D) progressbar i ogromna frajde sprawialo mi patrzenie sie na postep obliczen. gdy w koncu poznalem mod'a (zreszta mozna to bylo zrobic bez jego znajomosci dzielac kwote przez nominal i zaokraglajac w dol), to az zal mi bylo ze go poznalem bo moj progressbar stal sie bezuzyteczny :). jakze przyszlosciowa ;) aplikacja 'Nomilicz' nigdy nie zostala ukonczona...ale duzo sie wtedy nauczylem. natomiast 2gi program to gra 'Statki' o ktorej kiedys tutaj pisalem na forum a z ktorej jestem do dzisiaj dumny i chyba zawsze bede. potem byl 1szy program w delphi, nieukonczony z powodu jego nieudolnosci i koniecznosic przepisania jesli bym go chcial rzeczywiscie napisac. tez nauczylem sie duzo. wychodzi na to ze program ktorym teraz sie zajmuje jest dopiero 4ta 'konkretna' rzecza ktora robie w ogóle :). ale poswiecilem jej juz jak na razie dwa lata.
pozdrawiam i tez czekam na wasze wynurzenia :P

0

hmm... mój pierwszy program... jak miałem 6 lat brat przywiózł kompa jako wakacyjny podarek dla zdolnych studentów... No i zainteresowało mnie. Pierwszy mój program obliczał deltę... następnie rozwinął się do rozwiązywania równań kwadratowych. Był perfekcyjny... No i się rozkręciłem.

0

Hmm, tych, których mógłbym się dziś wstydzić już za bardzo nie pamiętam (staram się nie pamiętać takich rzeczy ;)), za to pierwszy 'poważniejszy' programik który udało mi się napisać to, dosyć szumnie nazwane, 'Brainfuck Real Time IDE' - czyli po ludzku mówiąc, interpreter Brainfucka połączony z IDE - można było wpisywać wszystkie osiem poleceń (nawet obsługiwał pętle :D) + dało się cofać polecenia (tylko pętli nie szło) i zmieniać tryb wyświetlania z liczb na znaki (cała zawartość tablicy danych programu była cały czas widoczna), a jak się już skończyło zapisać efekt pracy do pliku tekstowego.

0

hm... ja tam zaczynałem od C64, BASIC 2.0 :> Pierwszy program... wirus :> /jedyny jakiego w życiu napisałem/. Heh, na rekolekcjach (!) na kartce fragmenty kodu pisałem... Miałem wtedy z 10 lat. Całość zajmowała ze 3 strony A5. Już wtedy chciałem się zajmować bezpieczeństwem /lokalnym/. Jeżeli zaś chodzi o jakość kodu... lepiej nie mówić. Pierwsze programy 'cywilne' to były jakieś loadery i inne takie drobiazgi. Na PC zaś pierwszy program to był edytor... ale nie HTML jak to się przyjęło ale asm /poległem na kolorowaniu składni/. Ostatnio znalazłem wydruk z fragmentem kodu. Rotfl, jak ja mogłem w C++ tak pisać i do tego ze znienawidzonym aktualnie VCL. Bo czy cywilizowanym kodem można nazwać coś w ten deseń?

if (zmienna==0)
zmienna = 1;
else
zmienna = 0;

Ech teraz dostaje białej gorączki na widok takiego kodu - od czego xor? ;P

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0