Programowanie - ciekawe sytuacje:)

0

Ciekawi mnie, jak smieszne bledy lub jakies smieszne zdarzenia mieliscie podczas programowania. dla przykladu, przytocze swoje zdarzenie:
jakis duzy czas temu, zaczynalem uczyc sie programowania Delphi. nie mialem jeszcze zadnej duzej wiedzy programistycznej. znalem tylko Pascala. Gdy zabieralem sie do Delphi, nie mialem jeszcze internetu, a jedynymi zrodlami wiedzy byly jakies 3 e-book'i i ksiazka "Turbo Pascal i Delphi dla dzieci od 8 do 88 lat". z ksiazki tej nie raczej nie nauczylem sie zbyt wiele, dlatego przegladalem ebooki. znalazlem w nich taka linijke: button1.width := button1.width + 10; to byla bardzo znaczaca linijka w moim zyciu:) dzieki niej zrozumialem ze jak po nazwie komponentu napisze jakas taka wlasciwosc co jest w okienu po lewej stronie (obect inspector), to bede mogl sobie ja zmienic:) no i tak sie bawilem. po jakims czasie takic hzabaw postanowilem zrobic HTMLEditora. tu wlasnie zaczyna sie to, czego sie chyba najbardziej wstydze: nie wiem dlaczego, ale myslalem ze memo1.seltext to jak sie przypisze jakas wartosc do tego to jest ona wstawiana do memo. no niby racja, ale nie wiedzialem tego, ze moge np zrobic x := memo1.seltext; Chcialem zrobic cos takiego, ze jak zaznacze jakis tekst to, no "kupa", to jak klikne jakis tam klawisz to zamieni mi sie ten text na objety tagami HTML. no niby normalna opcja takiego programu. myslalem dlugi czas jak to zrobic. w miedzyczasie przegladalem rozne moduly dolaczane do Delphi. znalazlem ten odpowidzialny za schowek. Eureka! to bylo rozwiazanie mojego problemu. zapisalem <ort>bierzaca </ort>zawartosc schowka do zmiennej. do schowka, za pomoca procedur klasy TMemo skopiowalem zaznaczony tekst. <ort>wyciagnelem </ort>ten tekst ze schowka i odpowiednio dodalem <ort>takig </ort>html. przywrocilem do schowka poprzednio zapisana zawartosc. :D

to chyba najwiekszy glupota jaka zrobilem. niby jest to sposob, no ale jak sobie przypominam, jak dlugo nad tym myslalem, to ehh... co tu <ort>dozu </ort>gadac;)

czekam na wasze historie:)

0

Karolaq, a ty znowu wymyślasz offtopici :D

Mnie rozbawiła taka sytuacja: chciałem mieć 6 z TI, umówiłem sie z nauczycielem ze jak pokaże mu jakiś mój program to mi postawi 6. Przyniosłem mu Balloon Schootera (prostą gierke w C++) i na lekcji usiadłem z nim przy kompie i musiałem <ort>pokolei </ort>tłumaczyć kod źródłowo co robi ta funkcja, co tamta itd... gdy wszystko mu objasniłem, stwierdził ze da mi 6 i poszedł sobie a kumpel do mnie:

  • ale mu nawkręcałeś :D
  • jakto? :|
  • no że niby to napisałeś [green]
  • ale ja to napisałem :>
  • aha :-|

[diabel]

Druga ciekawostka jaka mi sie przypomina to gdy pierwszy raz trafiłem na 4p (było to dużo wcześniej niż moja data rejestracji pod awatarem) w poszukiwaniu kursów Quick Basica i bardzo mnie ta strona rozczarowała - "to że są działy o Pascalu i C to rozumiem (słyszałem coś o tych językach), ale ze nie ma QuickBasica a jest jakieś tam DELPHI to jakiś skandal! Co to jest w ogóle Delphi - jakiś syf.. dali by Basica a nie świrują" - pomyślałem :D I faktycznie obraziłem sie na tą strone i wróciłem dopiero gdy zaczełem sie uczyć pascala :)

0

no cóż ...
ja miałem tylko kiedyś ochotę przenieść plik wymiany na ram dysk.

a największa głupota jaką zrobiłem to napisanie funkcji kasującej folder gdzie dodałem usuwanie atrybutów wszystkich, zabijanie procesów żeby móc usunąć większość plików, po czym zapomniałem dać instrukcji warunkowej na ".." i odpaliłem na folder na pulpicie. Po kilkunastu sekundach pomyślałem "co się tak długo ta funkcja wykonuje" ale za chwilę już nie miałem problemów z wolnym miejscem na dysku :-/

0

hmm ja jak sie uczylem podstaw (Delphi) to w Timerze mialem:

i:=i+1;
Label1.Caption:=IntToStr(i);

I to mi tak sobie dla jaj co sekunde dodawalo 1 do labela.... i potem wpadlem na pomysł zeby zrobic sobie aby licznik mi sie zniejszał :> no i wymysliłem:

i:=60-(i+1);
Label1.Caption:=IntToStr(i);

[green]

0
  1. najciekawsza moja sytuacja była przy projekcie, który cały czas z qmplem rozwijam. Testowaliśmy po sieci jak chodzi test działania proga w sieci, czyli ogólnie wysłanie wszystkich komend w pętli i sprawdzenie wyników czy sie zgadzają z tym z czym powinny sie zgadzać i... no cóż użycie siecy ethernet 100 na 98% (czyli jakieś 98mb transteru na sekunde) + przypadkowy test funkcji katalogującej do pliku, a wszystko w nieskończonej pętli... i to wszystko przez noc działało... ąż mnie zatkało jak zobaczyłem te messagi, ten plik 9gb... i jednak karta sieciowa też się nagrzewa

  2. Tylko się nie śmiać, ale zwykły edytor tekstów z prostą pomyłką wiążącą się z wyciekiem pamięci prowadzącą do zniszczenia wielu plików na dysku twardym na różnych partycjach to nie science-fiction, to niedouczony c++-programmer-wannabe

  3. wycieki pamięci przy 1,5 gb ramu potrafią wiele zdziałać, np całą zawartość pamieci do pliku zapisać, tylko nie wiem jak to odtworzyc...

0

Noo to ja kiedys nie wiedzialem jak w delphi jakas procedure zrobic to wstawialem buttony i jak chcialem cos zrobic to ButtonXX.Click; Dam rade wszystkim co chca sie nauczyc programowac - czytajcie kursy, nie uczcie sie sami! Bo inaczej bedziecie umiec tyle ile ja.

0

Ja kiedyś nie wiedziałem jak wstawic ' do zmiennej, np. s:=`; to robiłem:
Text w edicie: ', potem s:=Edit.Text; Wtedy nie wiedziałem, ze jest cos takiego jak #39 :D

0

A ja mimo że nadal nie dużo umiem to myślałem kiedyś sobie tak-> <ort>Poco </ort>mi ta pętla for do niczego mi się nie przyda a i tak nie bedzie mi do niczego przydatna :)
No i tak sobie wypelnialem rozne tablice recznie itd. :P

0

Ja długo miałem problemy ze zmiennymi, i zamiast nich używałem TextBox lub Label. Kod był niesamowice zagmatwany. Wszytskie textbox'y i label'e miały ustawione .visalble = false, żeby wyglądało profesjonalnie :P

0
Wolverine napisał(a)

Noo to ja kiedys nie wiedzialem jak w delphi jakas procedure zrobic to wstawialem buttony i jak chcialem cos zrobic to ButtonXX.Click;
no ja robilem tak samo. potem ukrywalem tego buttona. a co do znaku ' robilem podobnie ale ja mialem problem z #13#10

0

if zmienna=true then
zmienna:=false
else
zmienna:=true;
:d

//za malo snu powoduje, ze nie zrozumialem tematu :)

0

Ja raz miałem niezwykłą sytuację, która do tej pory mi się nie powtórzyła. Napisałem prosty program, nie pamiętam już co to było, skompilowałem i działał tak jak trzeba.

0

Masz rację berl, ciekawa sytuacja :) I rzadko spotykana :)

A mi przed momentem zdarzyło się coś bardzo ciekawego. Nakopałem tyle błędów w kodzie, że aż SharpDevelop się powiesił ;) A może to dlatego, że to wersja beta #develop jest? ;)

0

No to u mnie taka sytuacja z niedawnych czasów (tych starszych już nie za bardzo pamiętam): Piszę sobie program do przeglądania zdjęć satelitarnych z maps.google.com. No i tak sobie myślę: "Jak by to ściągnąć? Mógłbym przez TClientSocket, ale średnio mi się chce bawić z tymi wszystkimi nagłówkami itp. No to spróbujmy coś gotowego. Wpadam na 4p, przeszukuję i znajduję dwie metody: jakiś kod na forum i komponent URLDownload czy coś takiego. No ale wolę użyć lekkiego kodu (paręnaście, może kilkadziesiąt linii) niż jakiegoś ciężkiego komponentu o niepotrzebnych całkiem opcjach." No to wklejam kod, odpalam, ale okazuje się, że nic. No to sobie myślę: "Może ktoś się pomylił, użyję tego komponentu, powienien działać, bo popularny jest i innym działa". No to wrzucam komponent, przerabiam kod, ale nic. Trochę się wkurzyłem, przeszukałem kod dwadzieścia razy, no ale nic. W końcu doszedłem do wniosku, że Firewalla mam z innego usera odpalonego. Przełączam się i oczywiście, kilkanaśnie okienek z pytaniem, czy pozwolić połączyć się zmodyfikowanemu od ostatniego razu programowi i jedno, czy pozwolić połączyć się po prostu danej aplikacji :)

0

Dla mnie najśmieszniejsze jest to ze prawie kazdy co zaczyna programowac pisze edytor html :)

0

ja jak zaczynałem programować to zrobiłem ładny program do ciągów arytmetycznych, geometrycznych itp, a w wizualnych program do robienia jatki niewidzialnej. nie jestem stereotypowy

0

Kiedyś pisałem bilard 3D w OpenGL na zaliczenie. Najpierw stworzyłem kod malujący zieloną płaszczyznę stołu. Skompilowałem, odpaliłem, działało. Następnie "zakodowałem" krawędzie stołu, nogi i pomieszczenie w którym się znajdował. Wszystko szło aż nadto gładko. Później dodałem obsługę klawiatury, żeby można było sterować kamerą. Też działało jak trzeba. Przeczytałem na NEHE jak się robi tekstury, zakodowałem, działało zgodnie z opisem. No to pozostały bile. To już bułka z masłem. Jedno polecenie GLUTa i się namalują. Dopisuję, kompiluję uruchamiam, bil nie ma. Kurcze, może coś źle wpisałem? Sprawdzam kod. Nie no, jest dobrze. Przekompilowuję cały projekt od zera. Nie pomaga. Bile się nadal nie malują. Dodaje printf debugi w miejscu gdzie jest rysowanie bil. Logi się wyświetlają, bil nie ma. Może ten GLUT jest jakiś popsuty? Tworzę pusty projekt, przenoszę do niego tylko kod rysujący bile - bile są. GLUT jest dobry. Wracam do tamtego projektu, sprawdzam ustawienia koloru, wyłączam teksturowanie, ustawiam najprostszy wariant oświetlenia. Bil nadal nie ma! Wyświetlam współrzędne rysowania bil na konsolę, wyglądają rozsądnie...

...
...
...

W końcu po kilku godzinach walki bawię się projektem tak od niechcenia, przesuwam kamerę pod stół... a tam bile przyklejone po drugiej stronie stołu. :D Było o jeden minus za dużo...

0

moj najglupszy przypadek mial miejsce pare lat temu i byl niekoniecznie zwiazany z programowaniem. Czesto zdarza mi sie pracowac na kilku komputerach na raz. Po kilkunastu godzinach pracy zaznaczylem w edytorze fragment tekstu i CTRL+C, przesiadlem sie nadruga klawiature i chyba 5 min. wkurzalem sie ze CTRL+V nie dziala. Co te zmeczenie robi z ludzmi...

0

Anubis :D mialem to samo nie raz....
Przewaznie jak programuje po nocach na jednym kompie [nie mam na nim neta] to na drugim przeszukuje neta w poszukiwaniu rozwiazan. Skrot klawiszowy Ctrl+Cna jednym, a na drugim kompie Ctrl+V ;)
Chociaz po 5 sekundach juz dochodze co jest nie tak ;)

0

Ja kiedyś dawno temu z kumplem pisaliśmy gierke w C++ builderze ale co kumpel do mnie wpadł żeby robić ją dalej to coś nie działało i cały czas spędzaliśmy na poprawianiu. A jak poszedł to zaczynało działać... w końcu gierka tak padła, że w ogóle się nie dała skompilować i.... po wielu godzinach skasowaliśmy cały projekt ze złości (a siedzieliśmy nad nim naprawdę dłuuuuuuuuuuuuuuuugo) :D

0

Kiedyś kolega dał mi program do skompilowania składający się z nie więcej niż 10 linijek. Wyskoczyło ponad 1000 błędów kompilacji!

0

Najciekawsze sytuacje hmmm... juz wiem :)

Mam takie Delphi, ze jak napisze jakis program wynaprawiam wszystkie bledy a potem F9 to kompiluje sie i po kompilacji wywala mi jakies error'y to zapisuje projekt, <ort>wylanczam </ort>komputer i wychodze gdzies. Przy kolejnej wizycie przed komputerem odpala Delphi projekt kompiluje sie bez problemów i zadne errory sie nie wywalaja :D

0

Programuję dłużej jak połowę życia, a zwiększać wcinanie bloków kodu (Delphi: [K], [I]) i zmniejszać (Delphi [K], [U]) nauczyłem się jakieś 2 lata temu.

Wcześniej miałem przypadek, że chciałem poukaładać sobie około 5tyś linii mojego kodu i w klikaniu strzałek oraz klawisza [TAB] stałem się mistrzem :), a dziś wystarczyłoby może 5 minut i miałbym zrobione.

0

hehehehee
ja robilem kiedys tak .... pisalem jakies procedury ... no i napisalem sie a potem prosty blad wykrylem ze brakuje jakiegos przecinka bo jak podobny byl kod to sobie kopiowalem tamten poprzedni i przerabialem troche a potem
... [sciana]
bulwers i
poprawianie
(strzałki - end, home - te klawisze zawsze mi sie smiesznie kojarzą heeheh:) )
albo pisalem kodu ................. duzo duzo - jakas prosta gierka wyscigi po prostej drodze - auta = auto. top := auto.top + 1 :D a jak bylo szybciej to znow pisanie auto.top := auto.top + 2; i tak dalej hehehe:D
if predkosc = 1 then
auto. top := auto.top + 1;
if predkosc = 2 then
auto. top := auto.top + 2;

ALE TEGO KODU BYŁO HO HO:D NIE POGADACIE :P

0

Pisałem prostą gierkę w Delphi i chyba w procedurze ataku jednostki było mi potrzebne odwołanie do tej właśnie jednostki [Self, w c++ this ;)]. A jako że nie znałem Self a jednoski były w tablicy, to wymyśliłem:
Do każdej jednostki dodałem pole Boolean i była pętla, która po kolei każdej jednostce ustawiala to pole na true i sprawdzała czy wtedy to pole w sobie samej jest równe true. Jeśli tak - mogłem się odwołać do tego pola w tablicy D:D

0

mi sie kiedys zdarzyl komunikat:
"incopatybile types: integer and integer"
do dzis nie wiem jak to moglo wyjsc :P

0

Nie mówcie.... mi się ostatnio przytrafił niesamowicie poważny błąd okołokomputerowy....

Chcę sformatować partycję pod windowsa98 z dyskietki startowej... wkładam dysk, ustawiam w BIOSie, dysk się ładuje do pamięci i wrescie wpisuję magiczne:

format c:

czekam chwilę, cyferki przeskakują i nagle komunikat:

"Za mało pamięci do kontynuowania operacji."

....

później oczywiście doszedłem do przyczyny - bad sektory i scandisk wymagany, ale w pierwszej chwili pomyślałem że to jakiś Microsoftowy żart. :)

0

To jak temat ożył to i ja dopiszę.

Ostatnio pisałem program do sterowania pilotem PeCeta. No i zrobiłem emulację myszy. Wszystko mi działało; wysłałem znajomemu, który mnie o to prosił, a on mi na to, że jak rusza myszą za pomocą pilota, to mu wygasza się monitor i wyłącza zasilanie dysków (komputer - stacjonarny - wchodził w stan oszczędności energii!) mimo wyłączonych tych opcji.

Do dziś nie wiem czemu.. Przepisałem kod od zera i działa poprawnie.

0

Raz napisałem wirusa który robił śmietnik w rejestrze i usuwał wszytkie wpisy. Jednak zamiast <ort>wziąć </ort>opcje "Build" wziĄłem "RUN".

0

Tak się kończy pisanie wirusów :P

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