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

0

Jeden z moich pierwszych programów był plikiem bat mającym ułatwiać prace z komputerem. Ot taki choice i ify... bardzo mile go wspominam bo był pierwszym w którym pokusiłem się o numeracje wersji ;]

Drugi jeden z pierwszych to prawdziwa siara.. przykro mi chłopaki ale wasze programy wcale nie są wstydliwe ! Mój program był wybitny! Był to Basic na C64, program do nauki tabliczki mnożenia.. nie pamiętam dokłądnie jak go pisałem, ale to było coś w stylu:

(...)
print "Wybrałeś mnożenie przez 4"
print "1: 4x1";
print "2: 4x2";
print "3: 4x3";
print "4: 4x4";
(...)
if (a = 1) print "Wynik: 4";
if (a = 2) print "Wynik: 8";
if (a = 3) print "Wynik: 12";
if (a = 4) print "Wynik: 16";
(...)

Oł je! Prawdziwe brutalne programowanie! Kto mnie przebije?! :D

0

Mój pierwszy program... Hello World w Pascalu :P A takim pierwszym, który "coś robił" to była to skromna przeglądarka pisana w Delphi 5. Menu, pasek stanu, lista plików z danego katalogu, można było sobie zdjęcie otworzyć, potem "zapisać jako" . Nawet były scrollbary do TImage, w których można było przewijać obrazek i checkbox "czy dostosować do wymiarów okna". :)

// dopisane: oczywiście ten checkbox nie był zaprogramowany tak:

CB.Checked := (not CB.Checked);

Tylko:

if CB.Checked = true then
  CB.Checked := false
else
  CB.Checked := true;

(+ instrukcje dla TImage) :D

0

hmm, może nie tyle pierwszy program, ale bardziej skrypt (bat) - animacja oparta tylko na echo i cls, od tego się zaczęło i naprawdę długo bo kilka latek robiłem "programy" tylko i wyłącznie w standardowych poleceniach dosa - zrodziło się wtedy dużo domowych i czasem dziwnych rozwiązań umożliwiających zrobienie dużo rzeczy jak np generator liczb pseudolosowych i nawet paru gier - warcaby, prostej gry planszowej, logiki (z takiej starej nokii), chińczyka
No po kilku latkach znalazłem na drugim komputerze na dysku Turbo Pascala 7.0 - nie mam pojęcia skąd on się tam wziął - prawdopodobnie wgrali go goście z komputerowego wgrywając system ...
Wtedy dopiero zacząłem naukę jakiegoś prawdziwszego języka programowania - znalazłem opcję Run po której uruchomieniu program poinformował mnie że brakuje enda, wpisałem go, potem zapytał o begin, potem otworzyłem helpa i szukałem znajomych poleceń z dosa ... w ten (dziwny) sposób się ucząc doszedłem po paru minutach do Hello world ...
Długi czas z pascala korzystałem głównie tylko po to żeby dorobić sobie poleceń brakujących mi w dosie, a dalej częściowo jechałem na batach.
Tja ...

Wstydzę się nie tyle pierwszych programów (bo trudno mi powiedzieć który mój twór był programem i który był pierwszy), ale pierwszego programu w TP z użyciem myszki, do której długo nie mogłem znaleźć funkcji obsługujących. W końcu znalazłem jakieś funkcje zdaje się do trybu tekstowego, a w ukochanym BGI mnożyłem wartość wskazania *7 czy 8 zdaje się co nie dawało możliwości zbyt dokładnego wybrania położenia czegokolwiek ...
Też bardzo lubiałem różne paski postępu ale niestety nigdy nie zrobiłem operacji na tyle skomplikowanych żeby to trwało na tyle długo żeby się tym nacieszyć, więc ... co wskazanie wywoływałem pewien plik który mnie na komputerze nawiedzał, a działał zawsze po pół minuty i nic na pozór nie robił. Potem okazało się że był to wirus, a przez te pół minuty wyszukiwał nowe pliki do zarażenia ... (co mnie w sumie nie przeraziło, ważne że nacieszyłem się paskiem postępu :))

0

Hmm, nie wiem czy to byl moj pierwszy program ale niech bedzie:

C64, czasy basica, pewnego dnia wypozyczylem z biblioteki ksiazke o instalacji i obsludze Windows 98, kilka dni pozniej kumpel zaproponowal mi pojscie do tzw kafejki (wtedy nie wiedzialem co to jest), tam oczywiscie prawdziwe PCty z Win98 (czy tam 95, nie pamietam), no i se mysle, kurde jaki ten Windows fajny! Nie to co "load tape" czy jak to sie tam robilo w C64 zeby program zaladowac z kasety :) No wiec po przyjsciu do domu odpalilem moja maszyne i zaczalem klepac program ktory w ascii wyswietlal jakies prostokaty (okna) a w nich jakies opcje w stylu wlasnie tego "load tape", za jakis czas doszlo zmienianie koloru a nawet... kursor sterowany joistikiem! - Wtedy pamietam, ze zeby wyswietlic jakas grafike to trzeba bylo sie naliczyc wprowadzajac jakiegos sprajta do pamieci :) Tak wiec generalnie wyszlo na to, ze ten program nie robil nic pozytecznego :) (potem dowiedzialem sie, ze jest cos takiego jak GeOS, ale niegdy nie udalo mi sie go zdobyc).

0

ja podobnie prawie jak reszta :P. bardzo chcialem robic pliki exe, spedzilem kilka dni studiujac helpa windowsowego (start -> pomoc), ale nic mi sie nie udalo znalezc... postanowilem wiec tworzyc pliki htm - dalem start -> wyszukaj i "pliki htm", dowiedzialem sie, ze od przechodzenia do nowej linii jest fraza "" i innych kwiatkow ;). Mimo to po niedlugim czasie stworzylem (nieistniejaca juz) strone mojej podstawowki (na ramkach, a co!)

prawdziwsze "programy" to byly wlasnie bat-y. Nauka podobnie - start-wyszukaj (nie mialem wtedy internetu, kafejek na osiedlu tez nie). po niedlugim czasie temat powrócił wraz z kolejnym numerem CD-ACTION, w ktorym byl kurs TP7... zafascynowany uruchomilem "znajomosci" zeby zdobyc ten egzotyczny program, po niecalym miesiacu dwie sliczne dyskietki z TP7 wyladowaly na moim biurku :)

pierwsze proby byly oplakane - probowalem przepisac hello world... niestety nikt mi nie powiedzial, w co sie lapie tekst... w gazecie bylo formatowanie a'la word - bylem przekonany, ze stringa otwiera znaczek "`", a zamya normalny apostrof - dobre kilkadziesiat minut sie nad tym meczylem... ale w koncu udalo sie - napisalem swoj wlasny kalkulator, ktory mial nawet funkcje rozwiazywania prostych rownan z niewiadoma x, a rozkladanie liczb dziesietnych na binarne zajmowalo mu na moim 486 naprawde duzo czasu i progressbar byl przydatny :D

gdy poszedlem do 1 klasy gimnazjum, otworzyli u nas kafejkę intenetową... po dłuższych poszukiwaniach, jak programować w Delphi (miałem też "po znajomości" delphi 2) znalazłem pewną fajną stronę - programowanie.of.pl. Był na niej kurs (który do dzisiaj początkującym polecam) pewnego Adama B. jak napisać własny edytor tekstu ;). Nad swoim pracowałem dosyć długo, nawet "szyfrowanie" napisalem i auto aktualizacje przez internet (to juz jak neta mialem przez modem i Adam uruchomil forum). Niestety wszystkie moje starocia zginely wraz z moim starym dyskiem...

ehh, jak dobrze sobie powspominac :)

0

Pierwszy program: jakiś szit w Basicu na Atari

Drugi program: gra tekstowa oparta o pliki BAT (na sprzęcie klasy 286)

0

Moim pierwszym/i byly programiki w basicu na C64, pisane na podstawie jakichs wiekowych czasopism. Powazniejsze to asm na C64 i pierwsza wiedza o przerwaniach - zegarek analogowy na pelny ekran w trybie graficznym odliczajacy godzine :)

0

skoro nikt jeszcze tak daleko nie zaszedl to i ja sie pochwale :) nie pamietam jaki, przyjmijmy ze to bylo klasyczne 'hello world', ale pamietam na czym: ZX Spectrum z zawrotna iloscia pamieci czyli 48kB :)

basica nauczylem sie w pewnym momencie na tyle dobrze, ze programy potem pisalem jak zreszta nie jeden przedmowca na kartkach a przepisywalem, gdy wracalem do domu po prostu przepisywalem

0

Hehe, ja też podobnie, pierwsze linie kodu napisałem na ZX Spectrum (dokładniej, na timexie), z tym że to było gdzieś w okolicach zerówki - pierwszej klasy podstawówki, i za dobrze nie pamiętam co to było. Głównie to przepisywałem i bawiłem się różnościami z książeczki "Przewodnik po ZX Spectrum" (pamiętam, bo jeszcze mam tą książkę :P).

0

W sumie pisanie na kartce było wygodniejsze. Dla tych co nie mieli przyjemności pisać w Basicu - nie było czegoś takiego jak edytor, aby poprawić linijkę trzeba było wylistować program, i napisać pod spodem od nowa linijkę w której był błąd.

list
10 print "♥"
20 print "hello wolrd"
ready
20 print "hello world"
run

:)

0

Taa, dlatego sie pisalo co 10 np zeby mozna bylo pozniej cos wstawic pomiedzy :))

0
Wolverine napisał(a)

Taa, dlatego sie pisalo co 10 np zeby mozna bylo pozniej cos wstawic pomiedzy :))

Problem zaczynał się gdy trzeba było wstawić więcej niż 9 instrukcji ;P Niby można było GOTO wstawić ale...
paskudnie się taki kod czytało. Na szczęście były narzędzia do zmiany oraz automatycznego numerowania linii :> Jak pamiętam to np. Final II i III to oferował... Ech, Final III to było cudo - prawie jak windows... prawie :D

0
deus napisał(a)

Problem zaczynał się gdy trzeba było wstawić więcej niż 9 instrukcji ;P

10, czy 19 to nie problem - wystarczylo przepisac linie np. 160 na 169 miejsce... tyle tylko, ze ja basica zaczalem "poznawac" jak juz drugiego pc mialem ;). I to na amstradzie bez stacji dyskietek. dopiero potem byl c64c/g

0

Ech, to były czasy. Chyba byłem w 4. klasie podstawówki, jak mi ojciec dał poprogramować w QBASICu... Program miał chyba z 10 linii. Wczytywał 2 liczby i wyświetlał ich sumę, różnicę, iloczyn i iloraz.
Natomiast pierwszy samodzielny program, który robił coś konkretnego napisałem w Basicu na ZX Spectrum w 7. klasie i było to coś w rodzaju koła fortuny - wciskało się literkę i jej wystąpienia odsłaniały się na ekranie.

Problem w tym, że do 1. liceum nie miałem kompa w domu, więc mogłem tylko korzystać z tych okazji, gdy ojciec przynosił laptopa z pracy. A w szkole mieli ZX Spectrum. Później, jak miałem PCta, to już wciągnęło mnie na maksa. Przerzuciłem się na C i Pascala, napisałem Tetris dla dwóch osób, który mam do dzisiaj (kod jest paskudny - wszystko w jednym pliku, ale błędów w działaniu poważniejszych nie znalazłem)... W 3. klasie Delphi, zaraz później C++, a na studiach Java. Teraz bawię się w J2EE i na razie mi się nie znudziło. Ciekawe, co będzie następne...

0

Normalnie wam chłopaki pozazdrościć ;-)

0

Ja zaczynałem od Visual Basic'a w Wordzie (nie mialem pc w domu, w szkole się bawiłem:P)
Potem był basic na amstradzie (jak mi stacja dyskietek padła :P)
A później już delphi, pascal, php a od kilku lat C i Assembler :]

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