PHP кошмари…

Ето нещо много забавно (защото не се е случило на мен, иначе щеше да е трагично):

…Here’s an example in a ’signin-3.php’ file (yes, there’s ’signin-2.php’ which represents an earlier version, etc.).

<select name=”state” style=”width:70px” >
<option value=”">Select</option>
<?
if($ss==”AA”)
{?>
<option value=”AA” selected>AA</option>
<option value=”AA”>AA</option>
<option value=”AB”>AB</option>

<option value=”WY”>WY</option>
<option value=”YT”>YT</option>
<? }
?>
<?
if($ss==”AE”)
{?>
<option value=”AA” >AA</option>
<option value=”AE” selected>AE</option>
<option value=”AK”>AK</option>

and on it continues for another 3500+ lines of crap code. This had to have been done by hand (well probably copy/paste) cause I can’t imagine someone being sharp enough to write a generator script for this boilerplate code not also being able to say ‘ why don’t I just run the generator code on the page itself’…

Вие знаете ли за подобни истории ?

7 мнения за “PHP кошмари…”

  1. То и аз такива кодове съм виждал, че просто не е истина.

  2. Обаче не само индийците пишат такива лайна ;) Скоро имах опит с едни руснаци, а преди това даже с едни българи. Ето весела случка – трябва да се направи search engine за един от проектите, така че да има FTS без да се ползват myISAM таблици, ами Zend_Lucene … единия от „героите“ какво направи – при всяко инстанциране на нов обект (който е searchable), се пуска индексиране на полетата в него ;) Нали можеш да си представиш как изведнуш всички взе да става много, много бавно … сега този същия образ го е написал това в CV-то си като някакво постижение: …Search Engine Framework development (UMLs for Search Engine Framework, Linked with an transparent layer ORM)…

  3. КТ, не мисля че се изразяваш достатъчно правилно :)
    Задачата която ми беше атачната тогава (преди поне 2-3 години май беше това?), беше да има опция за search, а от някой от екипа ми се сподели, че ще е добре да се направи като се прикачи към ORM-то, с annotation.

    Мисля, че като таска е такъв, трябва да се свърши по този начин, а виш ся перформънс, това е работа на администратора как ще оптимизира нещата, не моя, тогава правех каквото ми се каже, така че не виждам нищо лошо, пък и май ти не си спомняш точно как седяха нещата тогава :)

    Също така, кода не беше измислица като тази, а даже беше подреден, допълнен с UML които предложих като драфт, това че никой не го видя преди да го имплементирам и не помисли, че ще е тежко, мисля че пак не е мой проблем :)

    ПС: Не мисля да пиша още по темата, просто исках да ти изясня нещата по случая :)

  4. Много добре си спомням нещата, защотото след като някой катапултира от екипа, познай кой трябваше да чисти лайната и за 3 дена да направи нещо, което да работи, за да са доволни клиентите. Просто от всичко на света едно от нещата които най-много мразя е да чистя след некадърната работа на някой…

    А пък това, че „пърформанса“ е работа на администратора е мръсна глупост – ти напиши някоя боза, която да гълта памет и процесорно време за индексиране на search полетата при всяка инстанция на обект, а пък после чакай администратора да я накара да работи добре ;)

    И накрая, за изясняването на нещата: на мен няма какво да ми се изяснява – имам си глава на раменете ;) Интересно ми е, след като не бях написал конкретно за кого става дума в по-предния ми коментар, ти защо сам се напъхваш в тази „тематика“ ? Щеше да си пише „…един от героите…“ и никой нямаше да зацепи, за кого точно става дума.

  5. Ами защото с един google search и веднага можеш да разбереш линк към CV-то ми, което го бях писал преди доста време, но както и да е, с теб няма да споря. Нямам нито времето, нито желанието, пък и темата не мисля че е за пред други хора :)

    Поздрави,
    Любо :)

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *