Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V   1 2 3 >  
Reply to this topicStart new topic
> Skrypt konfiguracji ogólnej pisany przez profesionalistów...
Adi32
post
Post #1





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Sam nie jestem profesjonalistą ale ten kod to chyba kpina, pisany w jednej linij...
Może ja czegoś nie wiem, co Wy o tym myślicie?

  1. <?public function __construct() {
  2. global $db;
  3.  
  4. $this->name = 'konfiguracja';
  5. $this->title = 'Konfiguracja serwisu';
  6.  
  7. $db->query("SELECT tresc FROM konfiguracja WHERE nazwa='blokada'");
  8. $res = $db->getNextRow();
  9.  
  10. if ($res['tresc'] == 'tak') {
  11. echo '';
  12. $this->checked = 'checked';
  13. } else {
  14. echo '';
  15. $this->checked = '';
  16. }
  17.  
  18. switch ($_GET['do']) {
  19. default:
  20. $this->show();
  21. break;
  22. }
  23. }
  24.  
  25. public function show() {
  26. global $db;
  27.  
  28. $db->query("SELECT * FROM " . $this->name . " WHERE id_jezyk=%d", $_SESSION['id_jezyk']);
  29. $r = $db->res();
  30.  
  31. for ($i = 0; $i < count($r); $i++) {
  32. if ($r[$i]['id_fraza'] == 1)
  33. $keyw = $r[$i]['tresc'];
  34. if ($r[$i]['id_fraza'] == 2)
  35. $opis = $r[$i]['tresc'];
  36. if ($r[$i]['id_fraza'] == 3)
  37. $tytul = $r[$i]['tresc'];
  38. if ($r[$i]['id_fraza'] == 4)
  39. $email = $r[$i]['tresc'];
  40. if ($r[$i]['id_fraza'] == 5)
  41. $szer = $r[$i]['tresc'];
  42. if ($r[$i]['id_fraza'] == 6)
  43. $wys = $r[$i]['tresc'];
  44. if ($r[$i]['id_fraza'] == 7)
  45. $s1 = $r[$i]['tresc'];
  46. if ($r[$i]['id_fraza'] == 8)
  47. $s2 = $r[$i]['tresc'];
  48. if ($r[$i]['id_fraza'] == 9)
  49. $konto = $r[$i]['tresc'];
  50.  
  51. if ($r[$i]['id_fraza'] == 10)
  52. $licznik = $r[$i]['tresc'];
  53.  
  54. if ($r[$i]['id_fraza'] == 11)
  55. $updateczas = $r[$i]['tresc'];
  56.  
  57. if ($r[$i]['id_fraza'] == 12)
  58. $updateczestosc = $r[$i]['tresc'];
  59. }
  60.  
  61. if (isset($_POST['save'])) { //zapisz do bazy
  62.  
  63. if ($r) {
  64. $db->query("DELETE FROM " . $this->name . " WHERE id_jezyk=%d", $_SESSION['id_jezyk']);
  65. }
  66.  
  67. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 1, $_SESSION['id_jezyk'], $_POST['keyw']);
  68. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 2, $_SESSION['id_jezyk'], $_POST['opis']);
  69. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 3, $_SESSION['id_jezyk'], $_POST['tytul']);
  70. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 4, $_SESSION['id_jezyk'], $_POST['email']);
  71. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 5, $_SESSION['id_jezyk'], $_POST['szer']);
  72. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 6, $_SESSION['id_jezyk'], $_POST['wys']);
  73. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 7, $_SESSION['id_jezyk'], $_POST['szkontakt']);
  74. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 8, $_SESSION['id_jezyk'], $_POST['s2']);
  75. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 9, $_SESSION['id_jezyk'], $_POST['konto']);
  76. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 10, $_SESSION['id_jezyk'], $_POST['licznik']);
  77. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 11, $_SESSION['id_jezyk'], $_POST['updateczas']);
  78. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 12, $_SESSION['id_jezyk'], $_POST['updateczestosc']);
  79.  
  80. if ($_POST['blokada'] == 'tak') {
  81. $db->query("UPDATE konfiguracja SET tresc='tak' WHERE nazwa='blokada'");
  82. } else {
  83. $db->query("UPDATE konfiguracja SET tresc='nie' WHERE nazwa='blokada'");
  84. }
  85.  
  86.  
  87. //pobierz meta
  88. $db->query("SELECT * FROM konfiguracja WHERE id_jezyk=%d", $_SESSION['id_jezyk']);
  89. $mres = $db->res();
  90. if ($mres)
  91. foreach ($mres as $d => $b)
  92. $_SESSION['meta'][$b['id_fraza']] = $b['tresc'];
  93.  
  94. header("location:admin.php?module=" . $this->name . "&msg=Zmiany zapisane");
  95. }
  96. else { //pokaz
  97. ?>
  98. <h1>Konfiguracja serwisu</h1>
  99. <a href="admin.php?module=pomoc&do=<? echo $this->name; ?>">Pomoc</a>
  100. <form action="" method="post">
  101. <table cellpadding="0" cellspacing="0" style="width:90%">
  102. <tr>
  103. <td style="width:200px">Słowa kluczowe: </td>
  104. <td><input type="text" class="pole" size="60" name="keyw" value="<? echo $keyw; ?>" /></td>
  105. </tr>
  106. <tr>
  107. <td >Opis strony: </td>
  108. <td><input type="text" class="pole" size="60" name="opis" value="<? echo $opis; ?>" /></td>
  109. </tr>
  110. <tr>
  111. <td >Tytuł strony: </td>
  112. <td><input type="text" class="pole" size="60" name="tytul" value="<? echo $tytul; ?>" /></td>
  113. </tr>
  114. <tr>
  115. <td >E-mail kontaktowy: </td>
  116. <td><input type="text" class="pole" size="60" name="email" value="<? echo $email; ?>" /></td>
  117. </tr>
  118. <tr>
  119. <td >Licznik: </td>
  120. <td><input type="text" class="pole" size="60" name="licznik" value="<? echo $licznik; ?>" /></td>
  121. </tr>
  122. <tr>
  123. <td >Dane do wpłat: (bank, numer, dane odbiorcy) </td>
  124. <td><textarea style="width: 379px; height: 69px;" name="konto"><? echo $konto; ?></textarea></td>
  125. </tr>
  126. <tr>
  127. <td >Szybki kontakt: </td>
  128. <td><textarea name="szkontakt" /><? echo $s1; ?></textarea></td>
  129. </tr>
  130. <tr>
  131. <td >Update produktów - ostatni: </td>
  132. <td><input type="text" class="pole" size="60" name="updateczas" value="<? echo $updateczas; ?>" /></td>
  133. </tr>
  134. <tr>
  135. <td >Update produktów - częstość (min): </td>
  136. <td><input type="text" class="pole" size="60" name="updateczestosc" value="<? echo $updateczestosc; ?>" /></td>
  137. </tr>
  138.  
  139. </table>
  140. <input type="submit" class="go" name="save" value="Zapisz" />
  141. <input type="button" class="go" name="cancel" value="Anuluj" onclick="window.location='admin.php'" />
  142. </form>


Ten post edytował Adi32 13.07.2012, 08:45:11
Go to the top of the page
+Quote Post
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Ło ja Cię kręcę (IMG:style_emoticons/default/smile.gif) ale po kolei...

  1. global $db; // hmm nie słyszeli o przekazywaniu argumentów...


  1. $db->query("SELECT tresc FROM konfiguracja WHERE nazwa='blokada'"); // wydajność, wydajność i jeszcze raz wydajność (IMG:style_emoticons/default/biggrin.gif)



  1. if ($res['tresc'] == 'tak') {
  2. echo ''; // To echo jest tutaj po to by?(IMG:style_emoticons/default/questionmark.gif)
  3. $this->checked = 'checked';
  4. } else {
  5. echo ''; // To echo jest tutaj po to by?(IMG:style_emoticons/default/questionmark.gif)
  6. $this->checked = '';
  7. }


  1.  
  2. switch ($_GET['do']) { // rozumiem że to jest dodane na zaś?
  3. default:
  4. $this->show();
  5. break;
  6. }
  7. }


  1. for ($i = 0; $i < count($r); $i++) { // a już myślałem że wiedzą co to switch(...)...
  2. if ($r[$i]['id_fraza'] == 1)
  3. $keyw = $r[$i]['tresc'];
  4. if ($r[$i]['id_fraza'] == 2)
  5. $opis = $r[$i]['tresc'];
  6. if ($r[$i]['id_fraza'] == 3)
  7. $tytul = $r[$i]['tresc'];
  8. if ($r[$i]['id_fraza'] == 4)
  9. $email = $r[$i]['tresc'];
  10. if ($r[$i]['id_fraza'] == 5)
  11. $szer = $r[$i]['tresc'];
  12. if ($r[$i]['id_fraza'] == 6)
  13. $wys = $r[$i]['tresc'];
  14. if ($r[$i]['id_fraza'] == 7)
  15. $s1 = $r[$i]['tresc'];
  16. if ($r[$i]['id_fraza'] == 8)
  17. $s2 = $r[$i]['tresc'];
  18. if ($r[$i]['id_fraza'] == 9)


  1. $db->query("UPDATE konfiguracja SET tresc='tak' WHERE nazwa='blokada'"); // brak konsekwencji - raz "$this->name" raz "konfiguracja" ...


Skąd Ty to wziąłeś? Nie mów, że zapłaciłeś tym profesjonalistom? (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Adi32
post
Post #3





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


To jest kod głównego programisty w firmie w której pracuję...
Nie powiem jaka to firma, ale powiem, że musze stąd uciec...

Ten post edytował Adi32 13.07.2012, 08:55:15
Go to the top of the page
+Quote Post
Sephirus
post
Post #4





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Znaczy powiem tak, żeby nie było - luk bezpieczeństwa jakichś mega tu nie ma - ale jest nieład, niedbalstwo i co najgorsze - choć może tu nie najistotniejsze - brak pomyślunku jeśli chodzi o wydajność...

Może się już mu nie chce...

Co do wydajności to to:
  1. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 1, $_SESSION['id_jezyk'], $_POST['keyw']);
  2. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 2, $_SESSION['id_jezyk'], $_POST['opis']);
  3. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 3, $_SESSION['id_jezyk'], $_POST['tytul']);
  4. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 4, $_SESSION['id_jezyk'], $_POST['email']);
  5. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 5, $_SESSION['id_jezyk'], $_POST['szer']);
  6. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 6, $_SESSION['id_jezyk'], $_POST['wys']);
  7. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 7, $_SESSION['id_jezyk'], $_POST['szkontakt']);
  8. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 8, $_SESSION['id_jezyk'], $_POST['s2']);
  9. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 9, $_SESSION['id_jezyk'], $_POST['konto']);
  10. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 10, $_SESSION['id_jezyk'], $_POST['licznik']);
  11. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 11, $_SESSION['id_jezyk'], $_POST['updateczas']);
  12. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 12, $_SESSION['id_jezyk'], $_POST['updateczestosc']);


Można dać w jednym zapytaniu... itd... itp...

No i global $db :/ to mi nie da zasnąć...

Ten post edytował Sephirus 13.07.2012, 08:57:49
Go to the top of the page
+Quote Post
Adi32
post
Post #5





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(Sephirus @ 13.07.2012, 09:56:14 ) *
Może się już mu nie chce...


Szybko zgadłeś, ale edycja i rozwijanie takiego kodu to koszmar...

Edit. Zauważ, że przy każdym zapisie wszystkie pola są kasowane i dodawane na nowo.


Ten post edytował Adi32 13.07.2012, 08:59:26
Go to the top of the page
+Quote Post
m44
post
Post #6





Grupa: Zarejestrowani
Postów: 63
Pomógł: 10
Dołączył: 16.11.2008

Ostrzeżenie: (0%)
-----


Czepiacie się, działać działa! (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
redeemer
post
Post #7





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Cytat(Sephirus @ 13.07.2012, 09:56:14 ) *
Znaczy powiem tak, żeby nie było - luk bezpieczeństwa jakichś mega tu nie ma.
Zależy co to za obiekt $db i jak wygląda metoda query. Jeśli argumenty tej metody nie są escape'owane to mamy SQL injection.
  1. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 2, $_SESSION['id_jezyk'], $_POST['opis']);


Go to the top of the page
+Quote Post
Adi32
post
Post #8





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Zgadza się, ale pocieszenie jest takie, że niezabezpieczone zapytanie są tylko w panelu administracyjnym.
Go to the top of the page
+Quote Post
Sephirus
post
Post #9





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@redeemer - Masz całkowitą rację (IMG:style_emoticons/default/smile.gif)

po prostu biorąc ten kod:

  1. $db->query("INSERT INTO " . $this->name . " (id_fraza,id_jezyk,tresc) VALUES (%d,%d,'%s')", 2, $_SESSION['id_jezyk'], $_POST['opis']);


Założyłem że kolejne argumenty są automatycznie zabezpieczane ale w sumie jak teraz popatrzeć to chyba są walone wprost ... a to jest lipne strasznie...

Cytat
Zgadza się, ale pocieszenie jest takie, że niezabezpieczone zapytanie są tylko w panelu administracyjnym.


heh (IMG:style_emoticons/default/smile.gif) Może to i jakieś pocieszenie ale i tak marne (IMG:style_emoticons/default/tongue.gif) zabezpieczanie powinno być w krwi - zawsze - wszędzie. Nie można myśleć na zasadzie - to jest panel administracyjny a do niego dostęp mam tylko ja, a ja nie mam zamiaru robić SQL-inj. to mogę nie zabezpieczyć (IMG:style_emoticons/default/biggrin.gif) - złe nawyki (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
redeemer
post
Post #10





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Jak napisał Sephirus to że jest to admin, nie ma znaczenia. Można też założyć, że ten obiekt oraz metoda query jest wykorzystywana również w frontendzie.
Go to the top of the page
+Quote Post
Niktoś
post
Post #11





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Nic dodać, nic ująć-kod z optymalnością mało wspólnego.Choć programuje w ASP.NET to nie chwaląc się ,pewnie zrobiłbym to lepiej.Brak pomysłu albo lenistwo -to nie pisał profesjonalista-albo mu się nie chciało i pisał to od ręki wyłączając przy tym część swoich szarych komórek.

  1. switch ($_GET['do']) {
  2. default:
  3. $this->show();
  4. break;
  5. }

Tego to normalnie nie rozumiem-czy to ma być instrukcja wyboru.Jakiś hack and trick?Nie wystarczyło dać if-a?
  1. if ($res['tresc'] == 'tak') {
  2. echo ''; // To echo jest tutaj po to by?questionmark.gif
  3. $this->checked = 'checked';
  4. } else {
  5. echo ''; // To echo jest tutaj po to by?questionmark.gif
  6. $this->checked = '';
  7. }

Gdzie tutaj logika?Jeśli warunek spełniony wyświetl nic jeśli nie, także wyświetl nic

Poza tym o ile to możliwe można poniższe liniki zrobić na poziomie bazy danych:
  1. if ($_POST['blokada'] == 'tak') {
  2. $db->query("UPDATE konfiguracja SET tresc='tak' WHERE nazwa='blokada'");
  3. } else {
  4. $db->query("UPDATE konfiguracja SET tresc='nie' WHERE nazwa='blokada'");
  5. }

Ustawić default(domyślną wartość) dla kolumny treść na 'nie' i jeśli warunek if ($_POST['blokada'] == 'tak') zostałby spełniony zrobić tylko update , else nie musiałoby w ogóle istnieć.
Przykład:
  1. if ($_POST['blokada'] == 'tak') {
  2. $db->query("UPDATE konfiguracja SET tresc='tak' WHERE nazwa='blokada'");
  3. }

Else nie potrzebne gdyż domyślna wartość kolumny tresc jest ustawiona na nie i nie trzeba jej zmieniać.

Ten post edytował Niktoś 13.07.2012, 10:44:53
Go to the top of the page
+Quote Post
Adi32
post
Post #12





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


@Niktoś - ja to wiem i szczerze załamuje mnie to.
To co przedstawiłem to tylko kawałeczek. Ja muszę przy tym pracować.
Tutaj ludzie uważają, że to jest programowanie obiektowe, mówię nie - "przecież są klasy"... (IMG:style_emoticons/default/sad.gif)
Pyta mnie - "split deprecated" - mowie przestarzała, użyj preg_math - "przecież preg_math służy do validacji"... (po aktualizacji PHP)

Ten post edytował Adi32 13.07.2012, 10:54:44
Go to the top of the page
+Quote Post
skowron-line
post
Post #13





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


@Adi32 czepiasz się każdy może mieć gorszy dzień (IMG:style_emoticons/default/smile.gif) buahahaha
Go to the top of the page
+Quote Post
Tuminure
post
Post #14





Grupa: Zarejestrowani
Postów: 178
Pomógł: 49
Dołączył: 16.04.2012
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Cytat
użyj preg_math - "przecież preg_math służy do validacji"

To jakaś nowa matematyczna funkcja (IMG:style_emoticons/default/tongue.gif) ?

Mam nadzieję, że nie starasz się zbyt mocno nad rozwijaniem czegoś takiego (IMG:style_emoticons/default/wink.gif) .
Go to the top of the page
+Quote Post
Adi32
post
Post #15





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(Tuminure @ 13.07.2012, 12:03:09 ) *
To jakaś nowa matematyczna funkcja (IMG:style_emoticons/default/tongue.gif) ?

Mam nadzieję, że nie starasz się zbyt mocno nad rozwijaniem czegoś takiego (IMG:style_emoticons/default/wink.gif) .


Kiedy tu trafiłem pomyślałem, że użyje doświadczenia jakie mam aby to "rozwinąć" ale nie, spotkało się to z oporem gdyż tek kto ma ciepłą posadkę i nikogo nad sobą nie potrzebuje sie uczyć.

Wkleiłem tylko niewielki kawałek kodu nic nie prezentujący żeby nikt się nie przyczepił ale spróbujcie sobie wyobrazić jak wygląda kod sklepu...
Proponowałem Zenda - zapomnij ... "jak chcesz to sam zrób coś prostszego", kto coś łapie wie, że mija się to z celem...
Go to the top of the page
+Quote Post
redeemer
post
Post #16





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


W takim razie szukaj innej firmy, bo niczego się nie nauczysz.
Go to the top of the page
+Quote Post
everth
post
Post #17





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

Ostrzeżenie: (0%)
-----


@Adi32
Jesteś romantykiem. Rzeczywistość jest dużo gorsza niż to co podałeś (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Adi32
post
Post #18





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(redeemer @ 13.07.2012, 12:09:30 ) *
W takim razie szukaj innej firmy, bo niczego się nie nauczysz.


Szukam... Mam nawet zaproszenia na kilka rozmów.

Cytat(everth @ 13.07.2012, 12:09:49 ) *
@Adi32
Jesteś romantykiem. Rzeczywistość jest dużo gorsza niż to co podałeś (IMG:style_emoticons/default/biggrin.gif)


A co dokładniej przez to rozumiesz? Ja rozumiem, że mogą być gorsze kody, ale chyba nie w "profesjonalnej firmie"...
Go to the top of the page
+Quote Post
Niktoś
post
Post #19





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Jak to jest Jego obiektówka, to wklej jakiś kod strukturalny, chciałbym wiedzieć jak wygląda. (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Adi32
post
Post #20





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(Niktoś @ 13.07.2012, 12:12:17 ) *
Jak to jest Jego obiektówka, to wklej jakiś kod strukturalny, chciałbym wiedzieć jak wygląda. (IMG:style_emoticons/default/wink.gif)

Żeby ukazać jego moc musiałbym wkleić całe 500 linij pliku top.
Boje się w ogóle tam zaglądać...

Ten post edytował Adi32 13.07.2012, 11:17:00
Go to the top of the page
+Quote Post
skowron-line
post
Post #21





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 13.07.2012, 10:11:22 ) *
A co dokładniej przez to rozumiesz? Ja rozumiem, że mogą być gorsze kody, ale chyba nie w "profesjonalnej firmie"...

Dobrze że dodałeś cudzysłów bo skoro tak wygląda programowanie w tej firmie to ciężko nazwać ją profesjonalną.
Rzuć linki do arcydzieł tego pana to czempioni od sqlInjection i XSS popracują nad tym (IMG:style_emoticons/default/smile.gif)

A tak już całkiem na poważnie to uciekaj z takiej firmy, Lepiej pracować za mniejsze pieniądze niż uwsteczniać się pisząc takie rzeczy. Co z tego że łykniej doświaczenia na papier jak twoje umiejętności (chociaż tu nabywasz umiejętności pracy z cudzym kodem (IMG:style_emoticons/default/smile.gif) ) się nie rozwiną.
Go to the top of the page
+Quote Post
Niktoś
post
Post #22





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
A tak już całkiem na poważnie to uciekaj z takiej firmy, Lepiej pracować za mniejsze pieniądze niż uwsteczniać się pisząc takie rzeczy. Co z tego że łykniej doświaczenia na papier jak twoje umiejętności (chociaż tu nabywasz umiejętności pracy z cudzym kodem smile.gif ) się nie rozwiną.


Też tak sądzę.Taki proffesjonalista nawet nie powinien szkolić osoby po gimnazjum lub szkole średniej.
Cytat
Pyta mnie - "split deprecated" - mowie przestarzała, użyj preg_math - "przecież preg_math służy do validacji"... (po aktualizacji PHP)

Takich ,rzeczy to on Ciebie się nie powinien w ogóle pytać.Jeśli chodzi o polecenie split() to jest ona depracet dlatego,że w swojej metodzie używa ereg'ów ,należało by użyć polecenia preg_split lub prościej str_split.
Go to the top of the page
+Quote Post
Adi32
post
Post #23





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Można powiedzieć, że trafiłem tu z ulicy... Bez żadnego udokumentowanego doświadczenia ani pracy związanej programowaniem, także chciałem chociaż 2 lata posiedzieć żeby mieć "te 2 lata" w CV ale i tego nie będę miał. Płaca to mniej niz 2k także też nieciekawe tylko problem z pracą w Lublinie...
Go to the top of the page
+Quote Post
m44
post
Post #24





Grupa: Zarejestrowani
Postów: 63
Pomógł: 10
Dołączył: 16.11.2008

Ostrzeżenie: (0%)
-----


Jeszcze nie raz zobaczysz taki kod, a nawet gorszy i jeszcze mający być w swoich założeniach narzędziem do zarabiania kasy, z konkretnymi planami biznesowymi.
Świat jest daleki od doskonałości.
Go to the top of the page
+Quote Post
skowron-line
post
Post #25





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(m44 @ 13.07.2012, 10:36:16 ) *
Jeszcze nie raz zobaczysz taki kod, a nawet gorszy i jeszcze mający być w swoich założeniach narzędziem do zarabiania kasy, z konkretnymi planami biznesowymi.
Świat jest daleki od doskonałości.

Zgadzam się z tym. Często gęsto bywa tak że ludzie strają się pisać piękny kodzić i tak jest ale przychodzi dzień kiedy musza coś na szybko wpisać i wtedy takie babole powstają upchnięte w każde wolne miejsce w pliku. Takie rzeczy można zobaczyć w wielu projektach które na pierwszy rzut oka wydaja się byc profesjonalne i takie są do pewnego pliku / lini.
Go to the top of the page
+Quote Post
toffiak
post
Post #26





Grupa: Zarejestrowani
Postów: 395
Pomógł: 80
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Taki kod można wybaczyć freelancerowi, taka osoba napisze coś dostanie za to pieniądze i nic go już to nie obchodzi, pewnie i tak nigdy już tego nigdy nie zobaczy. Ale jeśli jest to osoba która wie że będzie na tym pracować to sama strzela sobie w kolano. Rozwój/pielęgnacja takiego potworka to męczarnia.
Go to the top of the page
+Quote Post
Sephirus
post
Post #27





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Dla jaj możesz przy jakimś zadaniu zapytac tego swojego profesjonalistę jakiego wzorca projektowego użyłby aby uzyskać dobrą uniwersalność tego co będziesz robił (IMG:style_emoticons/default/biggrin.gif)

Chciałbym zobaczyć jego minę (IMG:style_emoticons/default/tongue.gif)

Swoją drogą z czymś takim spotyka się chyba każdy... Ja w firmie gdzie pracuje też mam parę "starych" aplikacji i ostatnio w jednej z nich napotkałem $HTTP_POST_VARS['...']... pamiętam to sprzed X lat ale dla kogoś kto niedawno zaczął prace z PHP wywołało by to co najmniej ciekawość (IMG:style_emoticons/default/biggrin.gif) Nie mówiąc już o tym, że spora część aplikacji nie jest upgrade'owana a łatana jedynie... jeśli coś działa mniej-więcej jak należy a ma 10 lat to firmie nie chcę się tracić zasobów na upgrade... (IMG:style_emoticons/default/smile.gif) Wtedy dopiero jest kosmos jak trzeba pracować w starym, 10-letnim kodzie strukturalnym pisanym przez takich właśnie "profesjonalistów" (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Adi32
post
Post #28





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(Sephirus @ 13.07.2012, 13:49:44 ) *
ostatnio w jednej z nich napotkałem $HTTP_POST_VARS['...']...


Yymmmnn taaak... Spotykam się z tym często...
W moim przypadku hehe jest wiele gorzej, trzeba zrobić nową stronę - sklep - stawia się ją na tym skrypcie na którym stawiało się ostatni sklep. I w ten sposób nie wiadomo ile osób nawpisywało swoje kwiatuszki do tego "wzoru". Dodatkowo często pojawia się kompletnie nie uważana przeze mnie kwestia "przekazania" projektu innej osobie bo ktoś idzie na tydzień na urlop. W zespole zgranym, który pisze obiektowo jeszcze mogłoby to przejść ale kiedy każdy ma własny zamysł co do metody rozwiązania konkretnego problemu to takie "upłynnienie" pracy nad projektem powoduje nawet kilkukrotne wydłużenie pracy nad stroną gdy zajmuje się nią na zmianę 4 osoby...
Go to the top of the page
+Quote Post
prowseed
post
Post #29





Grupa: Zarejestrowani
Postów: 433
Pomógł: 64
Dołączył: 29.01.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@Adi32
Jeśli pracujesz tam, gdzie myślę, że pracujesz, to powiem tak- nie ładnie jest tak psioczyć na kolegów.
Najpierw poznaj realia pracy pod presją czasu i sens powiedzenia: "czas to pieniądz".

Każdy kod może być piękny, ale jeśli odłożymy go na półkę i po roku okaże się, że trzeba dodać/zmienić w nim funkcjonalność, dopisać cokolwiek, to co- będziesz analizował wszystko od początku i restrukturyzował logikę aplikacji, czy po prostu dopiszesz co masz dopisać i zamkniesz? Jeśli wybierzesz drugą opcję, a z biegiem czasu dojdą kolejne poprawki, to oczywiście- zacznie się robić śmietnik, a naprawa tego śmietnika może być równoznaczna z przepisywaniem wszystkiego od początku.

Dodatkowo nie zapomnij, że ludzie nie pracują nad jednym kodem non-stop. To też ma znaczenie, gdy nagle masz do czegoś wrócić, w między czasie coś tam jeszcze gdzieś poprawić. Często w takich sytuacjach stawia się na prostotę, a nie kompleksowość.

I jeśli ktoś Ci mówi: "to zrób lepszy", to po prostu zrób lepszy. Na pewno nikt Ci nie będzie miał tego za złe, a przyczynisz się do rozwoju w dobrym kierunku. Pytanie tylko, czy czasowo będziesz w stanie się z tym wyrobić. I czy ogarniesz ogrom aplikacji, która bądź co bądź nie skupia się w kilku pliczkach.

Nie oczerniaj kolegów sypiąc jakimiś kodami sprzed dziesięciu lat, które były poprawiane przez n+1 osób. Ktoś czegoś nie zrozumiał na szybko, to po prostu dopisał po swojemu nie chcąc psuć tego, co już działa.
Go to the top of the page
+Quote Post
Niktoś
post
Post #30





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


A ja jestem tego zdania -jeśli coś robisz ,rób to najlepiej lub staraj się robić.Nie widać starania w kodzie , który autor przedstawił. Nie wygląda on na profesjonalny kod .Jeśli robi tak nagminnie to też bym był wkurzony, gdyż poprawiać po kimś to już dodatkowe obciążenie.

Ten post edytował Niktoś 13.07.2012, 22:58:17
Go to the top of the page
+Quote Post
prowseed
post
Post #31





Grupa: Zarejestrowani
Postów: 433
Pomógł: 64
Dołączył: 29.01.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(Niktoś @ 13.07.2012, 23:56:47 ) *
A ja jestem tego zdania -jeśli coś robisz ,rób to najlepiej lub staraj się robić.


A skąd wiesz, że się nie starali? : )
Pewnie, że tak- ja też jestem takiego zdania i zawsze staram się dążyć do perfekcji.
Szkoda tylko, że nie zawsze warunki zewnętrzne mi na to pozwalają...
Go to the top of the page
+Quote Post
paxton
post
Post #32





Grupa: Zarejestrowani
Postów: 66
Pomógł: 1
Dołączył: 22.06.2009
Skąd: Londyn, UK

Ostrzeżenie: (0%)
-----


I dlatego PHP ma taka opinie jaka ma.
Go to the top of the page
+Quote Post
Adi32
post
Post #33





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(prowseed @ 13.07.2012, 23:42:28 ) *
@Adi32
Jeśli pracujesz tam, gdzie myślę, że pracujesz, to powiem tak- nie ładnie jest tak psioczyć na kolegów.
Najpierw poznaj realia pracy pod presją czasu i sens powiedzenia: "czas to pieniądz".

Psioczyć na kolegów a pokazać poziom środowiska swojej spracy to (może niewielka) ale różnica. Znajomi z pracy to świetni ludzie i doskonale znają moje zdanie na temat ich kodów które tu przedstawiłem. Dlatego postanowiłem pokazać "kawałek".

Cytat(prowseed @ 13.07.2012, 23:42:28 ) *
Każdy kod może być piękny, ale jeśli odłożymy go na półkę i po roku okaże się, że trzeba dodać/zmienić w nim funkcjonalność, dopisać cokolwiek, to co- będziesz analizował wszystko od początku i restrukturyzował logikę aplikacji, czy po prostu dopiszesz co masz dopisać i zamkniesz? Jeśli wybierzesz drugą opcję, a z biegiem czasu dojdą kolejne poprawki, to oczywiście- zacznie się robić śmietnik, a naprawa tego śmietnika może być równoznaczna z przepisywaniem wszystkiego od początku.

Chyba nie przyjrzałeś się zbyt dokładnie temu kodowi. Uważasz, że był pisany na szybko? Zrobić to w sposób "normalny" byłoby 2 razy szybciej.
Na tym kodzie pracuje się cały czas a mi znudziło się już przerabianie tego z każdym projektem który przejmuję.

Cytat(prowseed @ 13.07.2012, 23:42:28 ) *
Dodatkowo nie zapomnij, że ludzie nie pracują nad jednym kodem non-stop. To też ma znaczenie, gdy nagle masz do czegoś wrócić, w między czasie coś tam jeszcze gdzieś poprawić. Często w takich sytuacjach stawia się na prostotę, a nie kompleksowość.

Bywa, ale robić to zawsze i wszędzie? Nigdy nie używać wcięć? Tak sie po prostu nie robi...

Cytat(prowseed @ 13.07.2012, 23:42:28 ) *
I jeśli ktoś Ci mówi: "to zrób lepszy", to po prostu zrób lepszy. Na pewno nikt Ci nie będzie miał tego za złe, a przyczynisz się do rozwoju w dobrym kierunku. Pytanie tylko, czy czasowo będziesz w stanie się z tym wyrobić. I czy ogarniesz ogrom aplikacji, która bądź co bądź nie skupia się w kilku pliczkach.

Nie oczerniaj kolegów sypiąc jakimiś kodami sprzed dziesięciu lat, które były poprawiane przez n+1 osób. Ktoś czegoś nie zrozumiał na szybko, to po prostu dopisał po swojemu nie chcąc psuć tego, co już działa.


Rozumiem, że chciałeś pokazać całą sprawę z drugiej strony ale nie masz racji. Są rzeczy które można robić jak sie pisze dla kolegi w domu ale nie gdy pracuje się w "poważnej" firmie. To przyczynia się do kilkukrotnego wydłużenia całych projektów. Skryty napisane w tym roku wyglądają tak samo a rozwinięcie czegokolwiek to koszmar. "Zostałem oszukany", obiecano mi tu rozwój a jest pływanie w kisielu i pogoń za zyskiem. Na nikogo nie psioczę poza złą organizacją firmy.
Go to the top of the page
+Quote Post
Daiquiri
post
Post #34





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Adi32, wiesz każdy może znaleźć jakiegoś "potworka" z realizacji komercyjnej roku 2005 i narzekać na brak profesjonalizmu (IMG:style_emoticons/default/smile.gif) . Nie zrozum mnie źle, nie twierdzę że się mylisz i pracujesz z niedocenianymi geniuszami. Wiem jednak jak potrafi wyglądać realizacja produktów stricte komercyjnych. Istnieje wiele czynników, które (niestety) mogą mieć wpływ na jakość... czas, nagła zmiana "widzimisię" klienta, zmęczenie projektem, który się niemiłosiernie ciągnie i mamy ochotę go zwyczajnie zamknąć itd..

Wiem, że nie powinno nas to usprawiedliwiać, niemniej jednak zdarza się, że coś zostanie dorobione przy pomocy programistycznego odpowiednika taśmy klejącej (IMG:style_emoticons/default/smile.gif) . Pytanie brzmi czy był to szczyt możliwości programisty pracującego na etacie w komfortowych warunkach, czy kod, który powstał na wczoraj i przewrócił cały projekt do góry nogami. Być może ostatecznie firma stwierdziła, że kod jaki będzie taki będzie, ale firma musi zarabiać.

Wiele firm w ofertach pracy umieszcza informację o ogromnych "możliwościach rozwoju", niestety tych możliwości to ani widu ani słychu. Wiecie coś na zasadzie "Młoda, dynamiczna i prężnie rozwijająca się firma poszukuje...". Ostatnio niemalże każda firma poszukująca pracownika jest nie tylko młoda i dynamiczna, ale i prowadzi niebywałą ekspansję pracowniczą (IMG:style_emoticons/default/wink.gif) .

Innymi słowy należy doceniać firmy, które faktycznie pozwalają nam się rozwijać - gdyż, wbrew pozorom, odnoszę wrażenie iż pracodawcom wcale nie przychodzi to tak naturalnie (IMG:style_emoticons/default/smile.gif) .
Go to the top of the page
+Quote Post
!*!
post
Post #35





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Daiquiri)
Wiele firm w ofertach pracy umieszcza informację o ogromnych "możliwościach rozwoju", niestety tych możliwości to ani widu ani słychu. Wiecie coś na zasadzie "Młoda, dynamiczna i prężnie rozwijająca się firma poszukuje...". Ostatnio niemalże każda firma poszukująca pracownika jest nie tylko młoda i dynamiczna, ale i prowadzi niebywałą ekspansję pracowniczą


Oni z ofertami pracy robią dokładnie to samo co z kodem: ctrl+c/ctrl+v i oczywiście obowiązkowo "jesteśmy liderami w branży".

Ten post edytował !*! 14.07.2012, 08:53:53
Go to the top of the page
+Quote Post
Adi32
post
Post #36





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Przykre jest to co piszecie. Miałem kiedyś nauczyciela, który dość ostro powtarzał mi "pisz kod zawsze najwyższej jakości jak potrafisz".
Wziąłem to do siebie bardzo poważnie i zawsze się do tego stosuje.

Cytat
czas, nagła zmiana "widzimisię" klienta, zmęczenie projektem


Właśnie dlatego. Z doświadczenie mimo, że niewielkiego wiem, że w większości sytuacji kod który został napisany wyższej jakości niż niższej jest bardziej podatny na zmiany z powodu "widzimisię" klienta.
Dla mnie pojęcie programowania zamieniło się w swego rodzaju sztukę, przyjemność sprawia tylko w tedy gdy zrobione jest najlepiej jak się da, z pasją.
Bolesne jest wkładanie siebie w kod który zaraz zostanie spiepszony a jeszcze gorsze jest to, że mówicie, że wszędzie tak jest.
Mam nadziję, że sie mylicie.
Go to the top of the page
+Quote Post
!*!
post
Post #37





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Adi32)
Dla mnie pojęcie programowania zamieniło się w swego rodzaju sztukę, przyjemność sprawia tylko w tedy gdy zrobione jest najlepiej jak się da, z pasją.


Wypalisz się w ten sposób.
Go to the top of the page
+Quote Post
Daiquiri
post
Post #38





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Adi32, nikt nie napisał, że tak jest wszędzie. Po prostu zdarza się, że nasza rzeczywistość pisania błyskotliwego kodu w domu i na półkę, zderza się z rzeczywistością, w której Twój kod musi na siebie zarabiać. Ba, w grę wchodzi jeszcze niezbyt sterylne środowisko, w którym cudze błędy (PM stwierdzi, że poprawki naniesiesz w 3 dni, gdzie realny czas to 5) mają wpływ na to co robisz. Tak jak pisałam, jeżeli ktoś daje nam się rozwijać i jeszcze za to płaci - powinniśmy się cieszyć.
Go to the top of the page
+Quote Post
Adi32
post
Post #39





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(!*! @ 14.07.2012, 10:08:00 ) *
Wypalisz się w ten sposób.

Wypalę? A ja myślałem, że taka praca to spełnienie marzeń. Robić coś najlepiej jak się potrafi dążąc do "doskonałości" (wiem, że tu nie ma takiego pojęcia).

Cytat
Adi32, nikt nie napisał, że tak jest wszędzie. Po prostu zdarza się, że nasza rzeczywistość pisania błyskotliwego kodu w domu i na półkę, zderza się z rzeczywistością, w której Twój kod musi na siebie zarabiać. Ba, w grę wchodzi jeszcze niezbyt sterylne środowisko, w którym cudze błędy (PM stwierdzi, że poprawki naniesiesz w 3 dni, gdzie realny czas to 5) mają wpływ na to co robisz. Tak jak pisałam, jeżeli ktoś daje nam się rozwijać i jeszcze za to płaci - powinniśmy się cieszyć.


Ja uważam, że to jest cofanie się. Wszyscy wiemy, że OOP to przyszłość a ja nie mam z tym praktycznie styczności.
Miałem projekt, który był niemożliwy do wykonania w takim terminie jaki podano klientowi. I tu się z Tobą zgodzę, wstyd mi za kod który tam jest ale nie miałem wyjścia. Jak mam tam coś rozwinąć to ciarki mnie przechodzą.
Go to the top of the page
+Quote Post
!*!
post
Post #40





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 14.07.2012, 10:09:56 ) *
Wypalę? A ja myślałem, że taka praca to spełnienie marzeń. Robić coś najlepiej jak się potrafi dążąc do "doskonałości" (wiem, że tu nie ma takiego pojęcia).


Rzeczywistość jest zupełnie inna. W pracy, w zespole wypalenie przychodzi później. I nie zdziw się jak będziesz za jakiś czas pisać kod tak, jak przedstawiłeś wyżej. To w pewnym momencie jest nieuniknione, po prostu zadajesz sobie pytanie "po co mam się męczyć, nie chce mi się".
Jako jednoosobowa działalność, jest jeszcze gorzej, bo masz na głowie nie tylko kod, ale i wszytko inne.
Go to the top of the page
+Quote Post
Adi32
post
Post #41





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(!*! @ 14.07.2012, 10:14:37 ) *
Rzeczywistość jest zupełnie inna. W pracy, w zespole wypalenie przychodzi później. I nie zdziw się jak będziesz za jakiś czas pisać kod tak, jak przedstawiłeś wyżej. To w pewnym momencie jest nieuniknione, po prostu zadajesz sobie pytanie "po co mam się męczyć, nie chce mi się".
Jako jednoosobowa działalność, jest jeszcze gorzej, bo masz na głowie nie tylko kod, ale i wszytko inne.


Twoje sceptyczne podejście widać w wielu Twoich postach. Dlaczego tak pesymistycznie do tego podchodzisz? Czy Ty piszesz taki kod?
Mam nadzieje, że nie masz racji co do tego wypalenia ale jedno wiem na pewno - nigdy nie będę tak pisał. Nawet jakby mi się nie chciało to jest to utrudnianie sobie życia.
Go to the top of the page
+Quote Post
!*!
post
Post #42





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 14.07.2012, 10:21:12 ) *
Twoje sceptyczne podejście widać w wielu Twoich postach. Dlaczego tak pesymistycznie do tego podchodzisz? Czy Ty piszesz taki kod?
Mam nadzieje, że nie masz racji co do tego wypalenia ale jedno wiem na pewno - nigdy nie będę tak pisał. Nawet jakby mi się nie chciało to jest to utrudnianie sobie życia.


Ponieważ pasja programowania i klepania kodu mija z czasem, szczególnie gdy dostajesz kod po kimś, lub musisz napisać coś na wczoraj. Pasje możesz mieć, gdy tworzysz coś swojego, całkowicie od podstaw i nikt Ci niczego nie narzuca, wtedy ok, ale nie oszukujmy się, ile jest takich zleceń? W większości trafia się klient który nie doceni Twojego talentu eleganckiej typografi, 20 godzin spędzenia na obmyślaniu czy logo dać o 20px niżej (IMG:style_emoticons/default/wink.gif) , oraz pięknej dokumentacji kodu, formatowania, już nie wspominając o bebechach słitaśnego PDO.

Zdarza mi się napisać kod na "odwal się" (ten którego nie widać), ale idę o zakład że nie ma tu osoby na forum która mogłaby powiedzieć inaczej, pracującej więcej niż 2 miesiące w wakacje (IMG:style_emoticons/default/wink.gif)

Cytat
nigdy nie będę tak pisał

Nie oszukuj się (IMG:style_emoticons/default/tongue.gif) i nigdy nie mów nigdy...

Cytat
Nawet jakby mi się nie chciało to jest to utrudnianie sobie życia.

Niekoniecznie, jak to co robisz jest jednorazowe.
Go to the top of the page
+Quote Post
irmidjusz
post
Post #43





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


@Adi32 nie daj się przekonać takim zgryźliwym tetrykom jak !*!, który sam już się wypalił zawodowo i teraz wszystkim wmawia, że ich czeka to samo, jeśli nie będą klepać kodu na" odwal się" (IMG:style_emoticons/default/wink.gif) (IMG:style_emoticons/default/smile.gif)

A z tej pracy, jeśli nic się nie zmieni, uciekaj. Nawet nie chodzi o to, że niczego ciekawego tam nie zrobisz, ale po prostu jak zostaniesz, to się z czasem wypalisz i naprawdę nie będzie Ci się chciało. Nie mówiąc już o tym, że zdegenerujesz się do roli klepacza, stracisz jakąkolwiek przyjemność z programowania i nauczysz jedynie "tumiwisizmu".
Go to the top of the page
+Quote Post
prowseed
post
Post #44





Grupa: Zarejestrowani
Postów: 433
Pomógł: 64
Dołączył: 29.01.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 14.07.2012, 10:21:12 ) *
Twoje sceptyczne podejście widać w wielu Twoich postach. Dlaczego tak pesymistycznie do tego podchodzisz? Czy Ty piszesz taki kod?
Mam nadzieje, że nie masz racji co do tego wypalenia ale jedno wiem na pewno - nigdy nie będę tak pisał. Nawet jakby mi się nie chciało to jest to utrudnianie sobie życia.


Hmm, nawiązując do tego, że napisałeś iż jest to Twoja pierwsza praca, wydaje mi się, że zderzyłeś się z czymś co Cię przeraża i popadasz w pewną skrajność. Niestety, w firmach jest tak, że za projekt płaci klient i uwierz mi, go nie obchodzi jak zaprojektujesz dodawanie newsów, go obchodzi by mógł tego newsa dodać i wstawić tam tabelkę i by zrobione to było jak najszybciej, bo ma dużo zamówień z Niemiec. Albo to zaakceptujesz i będziesz starał się przejść przez tą burzę znajdując z czasem złoty środek (jak u Kochanowskiego : ) albo się przestraszysz i odejdziesz, miej tylko na uwadze to, że w różnych firmach jest różnie. W moim przypadku to akurat nie jest pierwsza praca (zaczynałem w wieku 16 lat, ale zgodnie z umową nie mogę powiedzieć gdzie (IMG:style_emoticons/default/smile.gif) ) i patrząc przez pryzmat starej firmy tu gdzie teraz jestem jest o niebo lepiej. Ba, nawet o dwa nieba. Ja akurat pracuję w trochę innym dziale (na pewno z nas żartujecie ;] ) jako grafik i jest fajnie, jestem kreatywnym, moje pomysły wchodzą bezpośrednio w życie, to ja proponuję rozwiązania, ale czasem zdarzy się klient typu "logo większe i na środek" i wtedy pozostaje tylko rozłożyć ręce i ustawić mu to logo na środku... Bo w końcu to jego projekt i on za niego płaci.
Go to the top of the page
+Quote Post
irmidjusz
post
Post #45





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


Cytat(prowseed @ 14.07.2012, 12:39:42 ) *
Niestety, w firmach jest tak, że za projekt płaci klient i uwierz mi, go nie obchodzi jak zaprojektujesz dodawanie newsów, go obchodzi by mógł tego newsa dodać i wstawić tam tabelkę i by zrobione to było jak najszybciej

Niestety, smutna prawda (IMG:style_emoticons/default/sad.gif)

Cytat(prowseed @ 14.07.2012, 12:39:42 ) *
zaczynałem w wieku 16 lat, ale zgodnie z umową nie mogę powiedzieć gdzie (IMG:style_emoticons/default/smile.gif)

Ty świntuszku...
Go to the top of the page
+Quote Post
d3ut3r
post
Post #46





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

Ostrzeżenie: (0%)
-----


Nie można mieszać pisania na szybko , z pisaniem źle, to że do pokoju wpada PM i mówi, że na jutro jest potrzebna poprawka nie oznacz jeszcze, że mamy zapomnieć o podstawach optymalizacji. Tworzenie pustych switchów to przecież nie wynik pośpiechu tylko niechlujstwo lub niedouczenie.

Każdy programista ma lepsze i gorsze dni, ale gorszy dzień nie oznacza zapomnienia podstaw. Jasne wówczas pisze sie wolniej, testuje jeszcze wolniej czasem 1h myślisz nad rozwiązaniem na które wczoraj na pewno wpadłbyś po 10 min zastanowienia.

Na obronę autora przytoczonego skryptu można by powiedzieć, że jeżeli robimy coś "na odwal się" to PM powinien dostać info : "działa, ale wymaga optymalizacji / poprawek" to co on z tym zrobi to jego broszka (IMG:style_emoticons/default/smile.gif) być może nikt nie zgodził się na poprawianie tego ....

Ten post edytował d3ut3r 14.07.2012, 14:30:22
Go to the top of the page
+Quote Post
Pilsener
post
Post #47





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Zawsze mówiłem, że lepszy dobry kod strukturalny niż sieka pełna słów "this" (IMG:style_emoticons/default/thumbsdownsmileyanim.gif)

A co do kodu to hmmm, pracując w dużych korporacjach widywałem dużo gorsze (IMG:style_emoticons/default/smile.gif) Wszystko zależy od tego, kiedy był pisany. Jeśli w czasach zegarów na stronie to można strzelić piwko i się śmiać, sam nieraz jak się nawalę to nachodzi mnie nostalgia, otwieram wtedy swoje stare skrypty i buahaha, ehehehe, hyhyhyhy (IMG:style_emoticons/default/ohno-smiley.gif) a kto nie znał global ten lame (IMG:style_emoticons/default/smile.gif)

Ale jeśli ktoś niedawno popełnił taki kod to hmmm, można strzelić piwko i zastanowić się, czy to programista CNC który dorwał się przypadkiem do PHP (a co ja, w PHP nie napiszę?) czy ktoś zatrzymał się na etapie zegarów na stronie i nie potrafi ruszyć dalej, w stronę imienin i frejmów.

Może to być też działanie celowe i zamierzone - w myśl hasła "jaka płaca taka praca" - przy obowiązującym w większości firm ujemnym budżecie na szkolenia (wyszło PHP 5, więc zrzucamy się na książkę) może to dać taki efekt, możliwe też że mamy tu działanie szatańsko cwane - tworząc kod zrozumiały tylko dla siebie i mocno zawiły zapewniamy sobie kolejne roboczogodziny i wyłączność na pracę nad projektem, niemożliwe staje się możliwe - jesteśmy NIEZASTĄPIENI! (IMG:style_emoticons/default/Lkingsmiley.png) Potem byle hołysz bez paranteli nie rozkmini archaicznego kodzidła, potrzebny będzie pra-pra-pra-parent siegający korzeni pehapa, matuzalem skryptu co wykiełkował prosto z globala (IMG:style_emoticons/default/smile.gif) Młodzież wychowana na jakimś OOP nie da rady (IMG:style_emoticons/default/smile.gif)

Ten post edytował Pilsener 14.07.2012, 17:26:28
Go to the top of the page
+Quote Post
prowseed
post
Post #48





Grupa: Zarejestrowani
Postów: 433
Pomógł: 64
Dołączył: 29.01.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wow, Pilsener, postawiłbym Ci piwko za tą wypowiedź (IMG:style_emoticons/default/smile.gif)

//EDIT
@Adi32
Wracając do tematu, nie chciałem ukazać problemu z drugiej strony. Chciałem pokazać, że ludzie tam siedzący, to nie półgłówki, bo tak zabarwiałeś swoje wypowiedzi...

Ten post edytował prowseed 14.07.2012, 17:50:32
Go to the top of the page
+Quote Post
Adi32
post
Post #49





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


@Pilsener - Również postrawiłbym Ci piwko za tego posta (IMG:style_emoticons/default/smile.gif)
@prowseed - Miałem na myśli wyłącznie niedbalstwo co do pisania w PHP, nie zwracanie uwagi, że ktoś inny będzie się z tym..., zero przemyślenia jak zaprojektować nowy projekt, obrzydzenie do uczenia się noeych rzeczy w tym OOP. Jeżeli moje wypowiedzi wskazywały na coś innego to to jest sprostowanie.
Go to the top of the page
+Quote Post
solificati
post
Post #50





Grupa: Zarejestrowani
Postów: 26
Pomógł: 10
Dołączył: 17.03.2012

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 14.07.2012, 10:12:52 ) *
Wszyscy wiemy, że OOP to przyszłość a ja nie mam z tym praktycznie styczności.

Teraz programowanie funkcyjne jest trendy.
Go to the top of the page
+Quote Post
everth
post
Post #51





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

Ostrzeżenie: (0%)
-----


80% "programistów" (w tym i ja) go nie rozumie więc obiektówka spokojnie wytrzyma jeszcze jedno pokolenie. W każdym razie powinna dożyć do powstania osobliwości

Co do firm - zdarzyło mi się pracować dla firmy która nie stosowała nawet systemu kontroli wersji dla swoich projektów (projekty pączkowały ze starych, ktoś wcześniej to opisał więc to nie jest odosobniony przypadek) - chyba że za takie uznać backupy od święta. Firma nie narzekała na brak dobrych klientów od wielu lat a ja zwątpiłem wtedy w znaczenie terminu "inżynieria oprogramowania".

@Adi32
Może dlatego że Polska to taki kraj "wyrobników kodu". Ma być szybko, tanio i najlepiej na wczoraj. A sporo firm PHPowych w Polsce jest mało nowoczesna. Właściciele jadą na kontaktach które wyrobili sobie w złotych latach 90-tych (hehe, networking) i nawet jak coś większego się rypnie to najwyżej zmiana nazwy firmy, ew. wspólnika.

Możesz uciec z firmy albo dać sobie spokój i odwalać fuszerę - to drugie jest o tyle bezpieczniejsze że z czasem stajesz trudno wymienialny (programista dokumentacją kodu (IMG:style_emoticons/default/biggrin.gif) ) - a perły zawsze możesz tworzyć do szuflady lub na zlecenia (to zresztą też ci przejdzie)
Go to the top of the page
+Quote Post
irmidjusz
post
Post #52





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


hahaha (IMG:style_emoticons/default/biggrin.gif) ja też stawiam Pilsenerowi piwko za tą wypowiedź! (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Theqos
post
Post #53





Grupa: Zarejestrowani
Postów: 49
Pomógł: 8
Dołączył: 5.12.2008

Ostrzeżenie: (0%)
-----


Cytat(Adi32 @ 14.07.2012, 10:03:53 ) *
Przykre jest to co piszecie. Miałem kiedyś nauczyciela, który dość ostro powtarzał mi "pisz kod zawsze najwyższej jakości jak potrafisz".
Wziąłem to do siebie bardzo poważnie i zawsze się do tego stosuje.


Pewnie dlatego jest nauczycielem, a nie pracuje w branży (IMG:style_emoticons/default/wink.gif) Kod najwyższej jakości to można pisać jak ma się duże doświadczenie, więc śmiem wątpić w twoją "jakość" kodu. Jeżeli mogę ci coś poradzić to staraj się pisać lepszy kod niż wczoraj, nie musi to być kod "najwyższej jakości". Mam nadzieję, że nie jesteś tą osobą, która cierpi na wzorcologię i dziedziczy wszystko po wszystkim. I projektuje coś "dwa dni", żeby było "idealne", a tak naprawdę nie ma doświadczenia, żeby wiedzieć co to znaczy. IMHO trzeba napisać trochę złego kodu, żeby się dowiedzieć dlaczego jest zły.

Pozatym masz świetną sytuację, masz dostęp do "złego" kodu. Możesz poćwiczyć refaktoryzację. Możesz zobaczyć co się sprawdza w długim okresie, a co nie. Możesz poćwiczyć współpracę z kolegami po fachu. Może spadną ci kalpki OOP z oczu i nabieżesz trochę szacunku do działajacego kodu.
Go to the top of the page
+Quote Post
konole
post
Post #54





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 21.03.2006
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Najlepszą radą będzie - uciekaj od PHP jak najdalej, to jeden z niewielu języków, gdzie pisze się tak beznadziejny kod i 50% powie ci, że to ok, bo działa. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
d3ut3r
post
Post #55





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

Ostrzeżenie: (0%)
-----


Cytat
Najlepszą radą będzie - uciekaj od PHP jak najdalej, to jeden z niewielu języków, gdzie pisze się tak beznadziejny kod i 50% powie ci, że to ok, bo działa.


A to inne kompilatory / interpretery mają jakieś funkcje zapobiegania pisaniu idiotycznego kodu ? W c++ czy c# też można napisać beznadziejny kod, z tą różnicą, że raz skompilujesz i nikt już tego nie odczyta / nie oceni (IMG:style_emoticons/default/smile.gif)

PHP to narzędzie jak każde inne kwestia umiejętności jego wykorzystania.
Go to the top of the page
+Quote Post
konole
post
Post #56





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 21.03.2006
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Cytat(d3ut3r @ 16.07.2012, 08:31:21 ) *
A to inne kompilatory / interpretery mają jakieś funkcje zapobiegania pisaniu idiotycznego kodu ? W c++ czy c# też można napisać beznadziejny kod, z tą różnicą, że raz skompilujesz i nikt już tego nie odczyta / nie oceni (IMG:style_emoticons/default/smile.gif)

PHP to narzędzie jak każde inne kwestia umiejętności jego wykorzystania.

Inne języki mają społeczeństwo, które tępi takie praktyki. Jak chociażby Python, Ruby, C#.
Go to the top of the page
+Quote Post
Niktoś
post
Post #57





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Inne języki mają społeczeństwo, które tępi takie praktyki. Jak chociażby Python, Ruby, C#.

Tutaj też się to robi, poza tym nie ma sensu przyrównywać innych technologi programowania.To są inne "światy".
Go to the top of the page
+Quote Post
!*!
post
Post #58





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Niktoś @ 16.07.2012, 09:56:09 ) *
Tutaj też się to robi


http://forum.php.pl/index.php?showtopic=201880
Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 08:06