Кто как проверяет работу фрилансеров-программистов?

12
LEOnidUKG
На сайте с 25.11.2006
Offline
1677
#11
ext3:
Как смог , как смог :)
Так я тоже не на полном серьезе :)

Благодарю за оценку юмора :)

✅ Трастовых площадок под размещение статей и ссылок. Опыт 15 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Новый аналог AllSubbmitter https://getmanylinks.ru/getmanysubmits.html (Бесплатное демо)
mendel
На сайте с 06.03.2008
Offline
183
#12

Красота кода понятие абстрактное. А вот уязвимость вполне реальна. Скорость работы, кол-во запросов. Это вещи более-менее поддающиеся формализации.

Как вы будете оценивать качество текста?

Если вы носитель языка и знаете тему, то все просто.

Но вот заказали вы статью у копирайтера на тему в которой вы "плаваете", и на языке который вы "читаете со словарем". Как вы оцените качество такого текста? ОК. Поставим вопрос иначе. Если вы язык знаете и тему знаете, и вас просят научить проверять тексты человека который языка почти не знает, и темы не знает. На что вы посоветуете ему обращать внимание? :)

Фактически кроме как привлечением специалистов для оценки решения нет. Вы не являетесь "носителем" php и плохо разбираетесь в предмете "безопасность и эффективность". У вас просто нет другого пути.

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

Тут скорее лучше сравнить с музыкой - бывают разные стили музыки, а бывает хорошая и плохая музыка. Желательно реп давать на рецензию любителю репа, а рок любителю рока. Иначе можно получить критику не качества а стиля. Программисты тоже люди.

PS: Вообще можете почитать топик у меня в подписи. Там короткая статейка о том, что такое плохой код. Но поскольку это дело сильно субъективно, то в основном я описывал вопросы безопасности :)

PPS: вообще замечание о том, что исправлять ошибки дороже чем написать изначально правильно верное. Но не стоит путать исправление ошибок и "вычитку". Просто проверить на ошибки стоит обычно заметно дешевле чем стоимость скрипта. Другое дело что в результате вы можете получить не только исправленные ошибки но и вердикт "лечить бесполезно, проще пристрелить".

PPPS: И если вы даете скрипт на анализ, то человек должен быть доверенным. Потому что вы даете ему свой код. Некоторые умудряются код не давать, но просить анализа. Глупо - цена в разы растет, а качество анализа в те же разы падает.

Шутку любишь над Фомой, так люби и над собой. (с) народ. Бесплатные списки читабельных(!) свободных доменов (http://burzhu.net/showthread.php?t=2976) (5L.com) Сайты, All inclusive. 5* (/ru/forum/962215)
LEOnidUKG
На сайте с 25.11.2006
Offline
1677
#13

mendel, бла-бла-бла :)

Можно лишь пробежаться по основам, чтобы инклуды были верные, да и sql-injection быстренько проверить. Вот и всё.

Остальное это кропотливая работка + тут уже не знания программиста нужны, а хакера. Ибо строят дома и их разрушают разные люди :)

mendel
На сайте с 06.03.2008
Offline
183
#14

LEOnidUKG, чтобы оценить "масштабы бедствия" много времени не надо. XSRF или XSS видно невооруженным взглядом. Не всегда но видно...

Кропотливая работа нужна для того, чтобы найти... потом чтобы исправить или использовать. А вот общий анализ не так ресурсоемок.

Пример:

открываю большой, популярный коммерческий двиг буржуйский. Более двух мегабайт кода со всякими плагинами и т.п.

Открываю и вижу что-то вроде:

$x = $_GET['x'];

$x = (int) $x;

$sql = 'SELECT * FROM `xxx` WHERE x='.$x;

В принципе тут нет уязвимости. Но масштабы проекта дают мне понять, что где-то она есть...

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

(пример реальный, факты лишь чуток подправлены).

LEOnidUKG
На сайте с 25.11.2006
Offline
1677
#15
Но масштабы проекта дают мне понять, что где-то она есть...

А вот давайте ещё не будет забывать, что у хакера нету исходного кода. Поэтому он может долго долбиться даже об ЧПУ. Вот дыра есть, а ЧПУ не даёт ей использоваться.

mendel
На сайте с 06.03.2008
Offline
183
#16

LEOnidUKG, давайте вы оцените качество моей повести, но рукопись я вам не дам. :)

Тема топика немного не о том. Да и потом отсутствие исходников лишь усложняет работу хакера. Увеличивает время, но абсолютно не защищает.

L
На сайте с 24.02.2005
Offline
181
#17

Я программист и код понимаю. Но если я заказал сайт на друпале, мне ядро все что ли просматривать? Под дырками я понимаю больше не то, можно ли его сломать, хотя это тоже, а грамотная оптимизация производительности. Одно дело, когда задача решается 2-3 запросами в БД, другое дело, когда программист по глупости делает 1000 запросов, а узнаю об этом я только тогда, когда хостер мне за нагрузку сайт вырубит. В том же друпале задачу можно решить минимум 3мя способами - плагин, php виджет и изменение кода модуля. Решение вроде одной задачи, а вот безопасность у всех способов разная.

Что касается бета-тестеров - как они поймут, что вот здесь код слишком медленный, а здесь вот можно инъекцию сделать?

LEOnidUKG, на то, как код написан мне абсолютно пофиг, хоть в одну строчку, вопрос был не в этом. А что касается проверки на инъекции, ну-ну, проверьте нормальный движок или фреймворк на все запросы к БД, посмеемся вместе.

Видимо вариант пока такой - на начальном этапе делать как есть, после, если проект взлетел, уже нанимать нормального прогера и контролировать процесс.

WebJunior
На сайте с 11.06.2010
Offline
150
#18
Стоимость исправления кода в десятки раз выше стоимости его первоначального написания.

Это вы про кого говорите? Я лично про фрилансеров. Обычно, человек без проблем исправляет всё, если правки не "глобальны".


LEOnidUKG:
Это как? Найм ещё одно программиста, более опытного?

Нет, просто проверка работы всех заявленных функций. :)

Locker

Бета-тестирование плотное это ответ на - "...не слишком ли криво он написал...".

Мой сайт на этом хостинге - https://tuthost.ua/?from=2558 / Верстаю шаблоны (темы с отзывами: https://searchengines.guru/ru/forum/763758, https://searchengines.guru/ru/forum/600404 ).
L
На сайте с 24.02.2005
Offline
181
#19

У меня есть проект, так я 3 год уже там баги нахожу - а вы говорите бета тестирование :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий