Showing posts with label tips. Show all posts
Showing posts with label tips. Show all posts

Больное место. ТЗ as is  

Posted in ,

Или несколько простых советов заказчикам, при выдаче заказа.
Более чем актуально на фрилансе.

Мало кто задумывается, что ТЗ - это такая штука, после которой код остается только физически втоптать и отдать. Но такое ТЗ - это сказка. Это настоящее "Техническое Задание". Мы на него и не претендуем, но..
Сказка ложь, да в ней намек..
Большинство заказчиков описывает буйства своей фантазии в ворде буквально текстом.
Текст очень приятно писать, когда сам все примерно представляешь. Но не является хорошим способом донести например "как должен выглядеть сайт". Но! Когда человек говорит, что он хочет "нечто" - он всегда себе это как-то представляет, ибо абсолютно новых идей не бывает, и всякое новое - это мозайка из кусочков старого. Так вот эти самые осколки надо у заказчика выпросить: "эта штука как вот там, а эта - как вот тут" и т.д. и т.п. Можно попросить прямо сфоткать(заскриншотить) "ту штуку" и намолевать в пэинте сверху свои мысли.

Второй простой способ: Графики. О! Графики - это наше все. Вырисовывать все в каком-нить визио или ещё где - задача не очень благородная. При том нет ничего "неправильного" в том, чтобы заказчик оформил свой мыслепоток ручкой на бумажке и прямо хоть на мобильник зафоткал. (типс: за составление потом ТЗ по таким осколкам можно и денежку взять).

Напоследок. Не стоит брать работу "молча", ибо велика вероятность, что ожидания не сойдутся с результатом. А наивысший восторг заказчика бывает при из совпадении =).
Поэтому синхронизация видения представления о том, что должно получится на выходе - фактически первостипенная задача. При том, что фрилансер сходу проектирует код, БД и прочее. Составление технического ТЗ паралельно составлению формального ТЗ - сильно экономит время.

P.S. Получилось смято. Но тема будет продолжена...
Ибо мне вставать через 4 часа, но новых подписчиков надо порадовать.

PHP tips  

Posted in , ,

Несколько не хитрых типсов по решению хитрых проблем на PHP.
Честно скажу - от PHP у меня на зубах песок образовывается, зато его (PHP) сырость и нелогичность позволяет делать забавные хаки.

Типс о занимаемой мамяти.
В PHP есть вообщем ссылки. И если у вас есть переменная, которая содержит большой объем данных и вы хотите эти данный ещё разок обработать.
(например nl2br($str); и т.д.) - передавайте по ссылке. Просто nl2br(&$str);. Экономия памяти и процессорного времени на копировании данных в функцию и обратно.
(надо будет посчитать в циферках что к чему)

Типс о неровной отдаче.
Когда большой скрипт долго думает - он может отдавать страницу кусками, что выглядит некрасиво. Поэтому такой вывод можно буфферизировать, благо в PHP есть для этого средства. Можно использовать эти два типса вместе. Т.е. буферизировать вывод, сохранив его в переменную, потом проверить например на XSS.
Буферизация смотрится красиво + можно при таком подходе сделать какой-нить "please wait" красивый, или рекламу показать, пока вывод готовится на сервере. (только чтоб таймаут не порвался, ибо данные-то не идут)

Типс о скрытых ошибках.
Никакие ошибки пользователь не должен видеть на вашем сайте.
И для этого не нужно городить нечитаемых ифов и переменных состояния - достаточно просто чуть что выкидывать эксепшн. При том можно написать свой класс эксепшенов, который юудет все логировать. Или логировать через catch(Exception $e) { /* code */ }.
Для пользователя любой лаг может выглядеть например как выкидывание на последнюю посешенную страницу на сайте. Использой везде файринг с "тихим" отловом можно даже защитится от собственных кривых рук.


Спасибо за внимание, надеюсь был ползен.

metanews


Add to Google