Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z programowaniem
Forum PHP.pl > Inne > Hydepark
morpheouss
Witam wszystkich bardzo serdecznie jako nowy członek forum php.pl. Przyznam się iż jest mi odrobinę niezręcznie, gdyż w swoim pierwszym poście proszę od razu o pomoc, jednak mam nadzieję iż okażą mi Państwo wyrozumiałość, oraz pomocną dłoń.

Jestem studentem 3 roku informatyki i siłą rzeczy bardzo lubię programować. Swój pierwszy program napisałem w pascalu uczęszczając jeszcze do gimnazjum. Nie był on co prawda skomplikowany, a za zadanie miał emulować zapewne znane wszystkim dosowe narzędzie jakim jest 'format'. Program działał prawidłowo, nie licząc faktu, że nie świeciła się dioda oraz dysk tak na prawdę nie był formatowany. Jako nieświadomy gimnazjalista poznawałem podstawowe elementy języka programowania jakim są między innymi pentle. Zanim zacząłem studiować poznałem tak pascala, c, c++, htmla, clippera, basica (kolejność przypadkowa).

Myślałem, że na studiach nauczę się czegoś nowego, niestety na pierwszym roku (pascal i c) nie dowiedziałem się niczego nowego. W tym czasie zacząłem jednak swoją przygodę z php - językiem który szybko przypadł mi do gustu i którego podstawy szybko przyswoiłem. Po kilku miesiącach programowania drobnych aplikacji posługując się paradygmatem imperatywnym postanowiłem poznać możliwości programowania objektowego. Zawsze uważałem iż duże projekty najlepiej jest projektować i pisać używając właśnie OOP. Tutaj spotkała mnie mała niespodzianka. Mianowicie obiekty w php są bardzo ubogie w porównaniu do innych języków. Mimo to przyzwyczaiłem się do tego i prawde mówiąc dziś nie wyobrażałbym sobie programowania w innym języku niż php (co nie znaczy, iż nie mógł bym).

W każdym bądź razie z dnia na dzień poznając ów język programowania zdecydowałem się na większy projekt. Nie oczekiwałem od nikogo pomocy, wierzyłem we własne możliwości, ufałem iż to pozwoli mi nabrać wprawy w programowaniu. Chciałbym także w tym miejscu dodać że z rególy sam dochodziłem do tego gdzie popełniłem błąd, dogłębnie analizując problem bądź to nawet metodą prób i błędów. Czasami tylko decydowałem się na skorzystanie ze sprawdzonych metod. Mam tutaj na myśli różnego rodzaju wzorce projektowe, czy algorytmy. Zdarzało się też czasami tak, że korzystałem z jakeigos wzorca projektowego zupełnie nie zdając sobie z tego sprawy. Przy okazji poznawania php dowiedziałem się np co to hermetyzacja - mimo iż używałem jej przed tem, nie zdawałem sobie z tego sprawy i nie wiedziałem do końca nawet, że ma to swoją nazwe.

Z czasem jednak, gdy mój projekt zaczynał przybierać coraz więcej linii kodu, a z toczącej się kóli zmieniał po mału w prawdziwą aplikację zaczynałem zauważać w nim niedogodności. Zdałem sobie sprawę z tego, iż napisana przeze mnie klasa spełnia co prawda założenia, jednak nie jest w pełni optymalna. Zacząłem po mału optymalizować i usprawniać kod - poprawiałem błędy, optymalizowałem kod, dodawałem nowe funkcjonalności i usprawnienia, które miały pomóc w przyszłej implementacji. Doszedłem jednak do takiego momentu, że gdy patrze na własny kod to jedyne co przychodzi mi na myśl to 'matko co za niewypał' czy 'to nie ma prawa działać'. Zupełnie jakbym spojrzał w lustro i powiedział 'co to za brzydal?'. Zacząłem zdawać sobie sprawę z tego, że jestem idealistą, że chciałbym aby kod który napisze był idealny - ale tak sie nie da. Czasami też miewam sytuacje gdy coś sobie zaplanuje, rozrysuje - i wygląda to dobrze, ale gdy przystępuje do pisania wydaje mi się to proste, wręcz banalne, nie skomplikowane, brzydkie - zupełnie jak jakaś średniowieczna technologia. W pewnym momencie zacząłem się zastanawiać, czy to jest jakis problem psychologiczny, czy może tak na prawdę nie potrafię programować?

Nie chciałbym z tego rezygnować - bardzo to lubię i zawsze gdy tylko mam czas albo gdy mi się nudzi sięgam do programowania. Na studiach też nie było z tym nigdy większego problemu - pisałem małe programiki na laboratoriach i większe projekty na zaliczenie. Nie chwaląc się nigdy nie dostałem oceny niższej niż 4,5 - bez względu na to czy było to laboratorium czy wykład, a kolokwia kończyłem jako jeden z pierwszych - jeżeli nie pierwszy - gdyż jako chory idealista zawsze sprawdzałem czy program działa poprawnie, mówiąc potocznie nie wysypuje się, czy robi to co miał robić i czy nie dałoby się tego zrobić prościej.Przyznam szczerze iż nie wiem co mam o tym sądzić i jak sobie z tym poradzić. Moim wielkim marzeniem jest stworzyć jakąś apliakcję którą ludzie uznaliby za lepszą od pozostałych, za użyteczną, szybką i dobrą którą z checią by używali, co może dodałobymi dodatkowych sił i motywację do dalszego pisania, usprawniania i dodawania nowych możliwości.

Z tego miejsca chciałbym Państwa bardzo gorąco prosić o wszelkie komentarze i opinie, a przede wszystkim o pomoc. Mam nadzieję że nie zanudziłem Państwa swoją opowieścią i że przeczytają ją Państwo cała, po czym doradzą coś strudzonemu studentowi, programiście samoukowi. Bardzo dziękuję za poświęcony mi czas oraz uwagę. Dziękuję!
erix
Mogłeś podzielić ten tekst na akapity, cięzko było czytać.

Powiem to tak - nie łam się, cierpisz na kompleks perfekcjonisty, to się da zwalczyć. winksmiley.jpg Każdy tak ma, że wraz ze zdobywaniem doświadczenia coraz krytyczniej patrzy się na swoje pierwsze projekty. Najważniejsza jest właśnie ta świadomość - wiesz, czego nie robić pisząc kolejne.
skowron-line
morpheouss cieszymy się z twojego członkowstwa na forum.php.pl.
morpheouss
Problem jest tego rodzaju drogi erix, iż ja wcale nie miałem na myśli swoich poprzednich aplikacji, a aktualny projekt, gdzie czasami nie mogę patrzeć na kod, który napisałem bagatela dwa tygodnie temu. Najgorsze jest to, że nie wiem jak sobie z tym poradzić.

Adres forum już poprawiłem - proszę o wybaczenie.
Kocurro
Witam na forum smile.gif

I jeśli masz takie dylematy to ... przestań programować. Dla mnie pierwsze 6 miesięcy pracy zawodowej jako programista zaowocowało tym, że nie byłem w stanie patrzeć na komputer po powrocie z pracy.

Teraz nauczyłem się już radzić sobie z tym wszystkim i spokojnie po pracy odpoczywam a potem siadam do komputera i zabieram za inne projekty.

Nawiązując do Twojego pytania - odpuść. Przestań to robić na jakiś czas. Po prostu musisz odpocząć, przemyśleć, pozwolić swojemu mózgowi przeanalizować całą sytuację, wyciągnąć wnioski, nauczyć się itp.

Ile czasu potrzebujesz ? To sprawa indywidualna - zależy od tego jak wygląda Twój styl życia, czy potrafisz odpoczywać czy też imprezujesz nonstop. Tak czy siak - musisz się nauczyć radzić sobie z tym.

Przestań więc programować a za jakiś czas powróć do tego i wtedy uda Ci się rozwiązać problemy.

U mnie szef zawsze przypomina, że jeśli praca nad projektem mnie nuży to muszę zająć się czymś innym by odpocząć i za jakiś czas powrócić do projektu na świeżo smile.gif

pozdrawiam i życzę powodzenia,
Łukasz
Kocurro
Ostatnio katowałem projekt przez dwa tygodnie - w końcu udało mi się go skończyć ... następnego dnia relax a już kolejnego dnia podczas relaxu pomysły jak poprawić ten projekt co dopisać itp. same zaczęły przychodzić do głowy smile.gif

Programowanie to sztuka a sztuka rządzi się swoimi prawami smile.gif

pozdrawiam,
Łukasz
dr_bonzo
Tez jestem perfekcjonista (zloooo) - po prostu musialem sie nauczyc zlewac na to ze mam "tylko" 90% doskonalosci, to jest juz dobrze. Jak teraz cos poprawie na ideal to pozniej przyjdzie funkcjonalnosc ktora mi to zniszczy.
Do tego dochodza terminy "jak nad tym jeszcze posiedze to nie zdaze".
Wiadomo - ze jak potem cos bedzie zbyt wolne to sie to poprawia.
SHiP
I ja też mam kompleks perfekcjonisty winksmiley.jpg. Czasem nawet kod html poprawiam jak mi koleś od designu zły podeśle. A własny silnik rozwijam od kilku lat i zawsze po 3 miesiącach pracy przerabiam go tak, że na poprzednie wersje patrzeć nie mogę smile.gif. I właśnie to w programowaniu jest piękne...

Zrób sobie przerwę. Ja tak robię średnio co 2 miesiące tydzień gracza winksmiley.jpg.

A w przerwie polecam jakąś książkę bo strasznie kłują w oczy: "pentle", "z rególy", "W każdym bądź razie"
Spawnm
niech sięgnie po kurs do nowego języka , mi to pomaga smile.gif
Kocurro
@Spawnm: hmm ... wybacz ale nie mogę się powstrzymać z komentarzem smile.gif ... "to jest zboczone" smile.gif mam nadzieję, że nie uraziłem.

Pozdrawiam,
Łukasz
Pilsener
Cytat
nie mogę patrzeć na kod, który napisałem bagatela dwa tygodnie temu
- to nie patrz winksmiley.jpg Skup się na metodologii, a nie okodowaniu tego - czasem najgorszy kod może realizować algorytm w sposób perfekcyjny, a kod ładny i piękny będzie do kitu. Lepszy własny burdel, niż czyjś porządek - jak piszę kod to wiem, że to g.. jest i sieka, nie spełni oczekiwań nawet początkującego programisty - ale nie piszesz kodu dla programistów, tylko dla parsera, ma działać zgodnie z założeniami i jak działa to lepiej kodu nie oglądać, bo można dostać zawału.

Niestety taki los inżyniera - ciągle by coś poprawiał, usprawniał, naprawiał, dociekał - nielicznych nie obchodzi jak działa pilot, dopóki można nim zmieniać kanały, cała reszta natychmiast go rozkręci i zacznie krytykować "ale z tego .... palant, jak on mógł tak zaimplementować automatyczne wykrywanie marki", bla bla ble - zboczenie zawodowe.
Spawnm
Cytat(Kocurro @ 15.04.2009, 10:59:15 ) *
@Spawnm: hmm ... wybacz ale nie mogę się powstrzymać z komentarzem smile.gif ... "to jest zboczone" smile.gif mam nadzieję, że nie uraziłem.

Pozdrawiam,
Łukasz


Rozwiń myśl winksmiley.jpg
.radex
Cytat(belliash @ 15.04.2009, 15:38:11 ) *
Teraz wiem ze w zyciu nie zamienilbym php na nic innego winksmiley.jpg i wkurzam sie gdy ktos kaze mi cos pisac w innym jezyku. Kiedys popadlem taka manie ze na zajeciach zamiast kodzic w RAD myslalem jakby to zaimplementowac w PHP i powiem Wam ze chyab szybciej bym to napisal w PHP niz wyklikal w borlandzie dopisujac kilka linii kodu w C++ aarambo.gif


[offtopic]
Ta, jasne, i weź teraz napisz program okienkowy (np. przeglądarkę internetową) w php winksmiley.jpg

Tylko nie strasz mnie php-gtk i php-qt tongue.gif
[/offtopic]
LBO
Na kompleks perfekcjonisty ja mam taką radę - audyt kodu. Kod doceniony lub poprawiony na drodze konstruktywnej krytyki, na następny dzień/tydzień, przestaje razić w oczy.

Oraz, co jest faktem, odpoczynek. Po pracy relax to podstawa - pogiercowanie, zakupy (nie te wirtualne) czy nawet wieczór z dziewczyną (hy hy hy winksmiley.jpg ) przy wyłączonym kompie pomaga.

Pozdrawiam, Alan
dr_bonzo
Cytat
Teraz wiem ze w zyciu nie zamienilbym php na nic innego i wkurzam sie gdy ktos kaze mi cos pisac w innym jezyku.

bo nie znasz innego jezyka, chcesz sie ograniczyc do php - prosze bardzo. Ja najlepszy jestem w php, w pozostalych jezykach costam napisze ale nie odbedzie sie bez mek i ciaglego googlowania.
Spawnm
ograniczyć się do php i być ograniczonym .
Zna słabo ,uczy się , googla, z czasem będzie znać dobrze .
dr_bonzo
Cytat(belliash @ 15.04.2009, 20:16:28 ) *
skad wiesz co znam a czego nie znam? pracujesz jako wrozka na 2 etacie?


Wnioskuje na podstawie:
Cytat(belliash)
Teraz wiem ze w zyciu nie zamienilbym php na nic innego i wkurzam sie gdy ktos kaze mi cos pisac w innym jezyku

Tak ze mozesz powiedziec jakie jezyki znasz. Ja bym sie irytowal gdybym nagle mial pisac w assemblerze - bedac programista wysokopoziomowym, natomiast zmiana na ruby/python - to manual i do roboty.


Cytat(belliash)
a jezeli programowanie w innych jezykach jest dla Ciebie meka i musisz googlowac to CI wspolczuje - widocznie nie znasz na tyle innych jezykow aby sie nimi samodzielnie poslugiwac...


No a ty nie umiesz czytac ze zrozumieniem (nie wiem co gorsze) - przeciez napisalem ze nie znam tych jezykow tak jak php - ale poznaje, powoli bo powoli.
Cytat(dr_bonzo)
Ja najlepszy jestem w php, w pozostalych jezykach costam napisze ale nie odbedzie sie bez mek i ciaglego googlowania.


Cytat(belliash)
Mozesz zatem smialo ograniczyc sie do PHP winksmiley.jpg

A po co? I nie chce - tylko mam prace jako programista PHP wiec na nauke innych jezykow mam malo czasu, proste?
erix
Tylko czekać, aż zaczniecie się błotem obrzucać. Macie bana na PW?
LBO
Cytat(belliash @ 15.04.2009, 21:39:55 ) *
[...]


grzeczniej, bo troll z Ciebie wyłazi...
erix
Cytat
gdyby nie fakt ze posty sie w tym forum nie zliczaja pomyslalbym ze je poprostu nabija...

I może trzeba po prostu uwzględnić ten fakt.

Darujcie sobie takie nawalanie. No chyba, że chcecie +10 zobaczyć pod swoim avatarem, nie ma problemu.
Kocurro
A ja zaczynałem od Pascala, potem od niskiego do wysokiego poziomu: Assembler, C, C++, Object Pascal, języki interpretowane (PHP, skrypty shella, Python, Perl), Java, C#, oprócz tego jeszcze Matlab, LabView, języki niskopoziomowe dla układów logicznych. Od dłuższego czasu zabieram się za Prolog'a ale jakoś zabrać nie mogę smile.gif

Oczywiście w międzyczasie jeszcze SQL był smile.gif

Na chwilę obecną ciężko mi znaleźć język, którego nie byłbym w stanie się nauczyć. Myślę, że taka różnorodność jest bardzo dobra dla rozwoju. Nie twierdzę, że każdy z tych języków umiem bardzo dobrze bo bym skłamał takim stwierdzeniem, myślę, że każdy z nich umiem na poziomie wystarczającym. Bardzo lubię programować w PHP'ie i C#, nie znoszę Javy (ale pewnie niedługo to się zmieni - jak na razie to była kwestia g** środowiska w którym tworzyłem).

Aha - zaczynałem od tego, że chciałem napisać własną grę. Do dziś dnia (a minęło już chyba ... o matko 11 rok idzie smile.gif ) nie udało mi się napisać nic lepszego niż kółko i krzyżyk, tetris, breakout i ich wariacje smile.gif Kiedy zaczynałem zabawę nie wiedziałem, że to będzie moją pasją i pracą, wtedy chciałem być kimś innym.

Wiele razy się poddawałem, uważałem, że nie dam rady, odpuszczałem. Potem wracałem i jakoś dawałem radę. Wiele razy miałem tak bardzo dość, że po prostu chciałem komputer za okno wyrzucić smile.gif

Początki były ciężkie - zawsze umiałem mniej niż chciałem ... z czasem nauczyłem się ... żyć z myślą, że zawsze będę umiał mniej niż chcę umieć.

To, że znam tyle języków nie jest niczym szczególnym - na początku wydaje się to być czymś hiper super ... ale z czasem jak się zdobywa doświadczenie, nabywa pewnych nawyków to język staje się tylko narzędziem i nagle uczy się człowiek języków jednego po drugim.

Aaa ... bym zapomniał - ostatnio znalazłem jeden z pierwszych moich kodów naskrobanych w PHP'ie ... nie mogłem przestać się śmiać gdy na niego patrzyłem, był tak naiwnie napisany, taki bałaganiarski ale działał i wtedy to się liczyło.



Najważniejsze to znaleźć własny cel, obraź właściwą ścieżkę i podążać nią nie zważając na przeciwności losu, dążyć do spełnienia marzeń. Nie można się poddawać a każde niepowodzenie należy przyjąć jako naukę i wycisnąć z niej calutki "sok".

Chłopie będzie dobrze - nabierz trochę dystansu do życia, naucz się relaksować, znajdź swoją bezpieczną przystań i działaj. Chwile zwątpienia ma każdy z nas. Najważniejsze by umieć wykorzystać te chwile do naładowania akumulatorków smile.gif




No no no - się rozpisałem ;p wybaczcie, że bardzo nieskładnie napisałem i pewnie odskakuję od tematu ale nigdy nie lubię czytać co napisałem smile.gif


Pozdrawiam serdecznie,
Łukasz
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.