Архив рубрики ‘Ошибки’ Category

Apr
13
Пару советов по созданию проектов
1 балл2 балла3 балла4 балла5 баллов (6 голоса, средний балл: 2.5 из 5)
Loading ... Loading ...

Создание безопасных приложенийВ частности я буду иметь ввиду проекты на PHP, но некоторые советы возможно применять и к другим языкам.

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

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

Итак, мой набор советов.

  1. Выключайте отображение ошибок на продакшене. Очень частая ошибка, избегайте ее, незачем давать пищу для размышлений для взломщиков. На экран пользователя не должна вообще отображаться какая-либо информация о серверной части, а тем более ошибки. Сделать это можно поместив в .htaccess строку php_flag display_errors Off
  2. Путь на файловой системе. Не используйте никогда директив по типу define (’PATH_ROOT’, ’/hosting/bla-bla/’) . Это глупая стратегия. Каждый раз править настройки при переносе проекта на другой сервер — абсурд. Используйте «магическую константу» __FILE__ , которая моментально вернет путь к текущему файлу (допустим конфигу), от которого можно получить нужный путь к корню проекта.
  3. Ядро проекта. Контроллеры, модели и прочее должно лежать как минимум на уровень выше, чем часть, доступная через веб-браузер. Хорошая стратегия строить приложение так — что директория ядра и директория, указанная в  DOCUMENT_ROOT — лежали на одном уровне (у меня эти папки обычно имеются как application и public). Данное разграничение призвано обезопасить проект от перезаписи файлов через уязвимость в проекте. Хорошей практикой также будет снять бит на запись от имени пользователя, под которым запущен веб-сервер.
  4. Загрузка файлов, изображений и т.д. Допустим, что все загружаемые файлы кладутся в папку uploads в папке public. Тогда первым делом лучше всего положить в папку uploads файлик .htaccess со следующей строкой — php_flag engine off — это поможет защититься от любителей залить бекдор через уязвимость в коде загрузки файлов на сервер. Это конечно слабая защита от загрузки бекдоров на других языках (например на перле), но «школьники» уже не пройдут. А лучше всего конечно делать безопасную загрузку, без уязвимостей. Но на всякий случай рекомендую подстраховаться таким образом — лишним не будет. Строка запрещает выполнение пхп-кода из данной папки и подпапок.
  5. Мультиязычность. Планируйте возможность мультиязычности еще на этапе проектирования и создания приложения, даже если это сейчас и не нужно. Это съекономит много сил и нервов, когда «вдруг» мультиязычность понадобиться, а в ядре ничего не заложено для этого. На подобные грабли в свое время наступил проект connect.ua, не повторяйте чужих ошибок
  6. Оптимизируйте все до того, как появятся нагрузки. Не стоит ждать, пока проект начнет тормозить под нагрузками и только тогда решать вопрос. Поставьте изначально байт-кешеры кода, например eAccelerator (или другие по вкусу), настройте кеширование на стороне клиента (хорошие советы в этом плане можно найти на webo.in) и на сервере. Это даст существенный прирост производительности (иногда порядка 300 и более процентов), что существенно снизит нагрузки и повысит скорость загрузки страниц у пользователей.
  7. Настройте оповещение об измененных файлах за сутки. Я обычно это делаю через помещение в крон строки: 0       0       *       *       *       find /path/to/public/dir -mtime 0 | mailx -s «report :) » my@mail.com > /dev/null 2>&1 , после этого мне раз в сутки приходит список измененных файлов в директории, анализируя который можно понять, все ли хорошо. Тоже самое можно настроить и для ядра проекта. Данный отчет однажды спас меня, когда произошел взлом одного из моих проектов и по всей фс были накиданы бекдоры — через эти списки мне легко удалось всех их удалить, без поднятия проекта из бекапа. Лично для меня — это теперь незаменимая вещь, лог которой я просматриваю раз в сутки обязательно на наличие подозрительных изменений.
  8. Всю разработку ведите на SVN и на дев-сервере. Не стоит делать правок «наживо» на продакшене. Я считаю оптимальным — настроить SVN так, чтобы при комите данные сразу попадали на дев-сервер, где можно еще раз протестировать сделанные изменения. Это очень удобно для разработки и тестирования. Как правило дев-сервер может быть отдельной машиной, но также это может быть и виртуал-хост на той же машине, где и продакшн. Правда последний вариант не рекомендую, т.к. при тестировании могут быть разные ситуации, вплоть до зацикливания кода и нехорошо, когда это влияет на работу текущих пользователей.

Если еще что-то вспомню важное — допишу.

Успехов!

Jul
29
Ошибка заказчиков: заказ у фрилансера, как покупка в магазине
1 балл2 балла3 балла4 балла5 баллов (4 голоса, средний балл: 5 из 5)
Loading ... Loading ...

Ошибки заказчиков Сегодня хотелось бы поговорить о данном типе ошибок.

Очень часто заказчики заблуждаются, считая, что работа фрилансера аналогична покупке в магазине.

Я согласен, что работа фрилансера аналогична работе в сфере обслуживания и я уже однажды писал об этом. Однако это совсем не означает что то, что продает фрилансер есть готовый товар.

Фрилансер в первую очередь продает свой труд (а иногда и идеи), время, которое он вкладывает в создание чего-либо.

А следовательно как любая работа под заказ, работа фрилансера должна оцениваться индивидуально и даже такие вещи, как «дизайн» (который многие заказчики считают именно как создание типичного товара и мол не за что тут платить больше, чем это стоит у других) — должны оцениваться исходя из затраченного времени на его реализацию.

Приведу простой пример: когда вы обращаетесь за созданием одежды под заказ, под свои требования и пожелания, допустим в ателье, с вас в первую очередь возмут предполату и на месте же посчитают, сколько это будет стоить, исходя из ваших требований, а не ориентируясь «на цену картошки за углом».

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

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

В любом случае цена работы фрилансера не должна быть никак привязана к готовой продукции (например многие заказчики удивляются, почему купить лицензию на какую-то готовую CMS стоит дешевле, чем заказать разработку «с нуля» (или на базе фреймворка) у фрилансера), так как эти понятия никак между собой не коррелируют.

Ну а если вы — заказчик и читаете эту статью — рекомендую поменять свое мнение о работе фрилансеров (если конечно вы еще ранее так не сделали), поняв, что работа фрилансера — это работа под индивидуальный заказ (в большинстве случаев), под определенные ваши требования к конечному продукту и поэтому сравнивать заказ у фрилансера с покупкой в магазине готовой продукции  — крайне неверно.

Если Вам встретиться такой заказчик на вашем пути фрилансера — можете смело его отправлять прямо на эту статью и если заказчик адекватен, то он сразу поймет свои ошибки и больше не будет намекать на покупку в магазине.

Успехов!

Jul
20
Одна ошибка и один важный вывод
1 балл2 балла3 балла4 балла5 баллов (4 голоса, средний балл: 4.25 из 5)
Loading ... Loading ...

ВыводПо долгу «службы» мне иногда приходится встречаться с клиентами и подписывать договора на разработку их заказов. Естественно, если клиент из Киева.

Так вот вчера я как и обычно поехал на подобную встречу со своим напарником для подписания договора по второму этапу проекта (проект был разбит на 2 этапа).

Немного о том, как мы работали по проекту: со стороны заказчика выступал представитель, который разбирается в техническом вопросе (действительно разбирается, притензий нет). Соответственно с самим заказчиком общение сводилось практически к минимуму.

Естественно было довольно большое и обширное ТЗ, составленное нами и подписанное всеми сторонами до начала работ (проект портального типа, написание с «нуля»).

Так вот главный вывод, который я сделал после этой встречи: представитель заказчика всегда должен присутствовать на таких встречах.

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

Теперь я четко уверен, что не должно быть таких ситуаций, когда представитель заказчика отсутствует на встрече (не получилось, уехал, заболел и т.д.). Если не получается встретиться в полном составе — встречу лучше перенести на другое время, день, неделю.

Халатное отношение к факту присутствия представителя составило некоторые проблемы понимания между нами и заказчиком просто потому, что заказчик, ввиду своей необознанности в сфере — плохо ориентируется что сделано на данный момент и что еще требуется сделать (в понимании заказчиков ВСЕГДА лежит рабочий сайт с дизайном и всеми удобствами), а как пояснял те или иные моменты представитель — нам было не известно, отсюда и «испорченный телефон» и т.д.

К тому же перед этим им «посчастливилось» работать с недобросовестными реализаторами у которых был заказан корпоративный сайт, что тоже отложило свой отпечаток.

Не делайте чужих ошибок — надеюсь, что мой опыт будет полезен. Конечно не учится тот, кто не ошибается, но иногда лучше не ошибаться на таких вещах.

Apr
20
Что делать, если нет заказов
1 балл2 балла3 балла4 балла5 баллов (12 голоса, средний балл: 4.5 из 5)
Loading ... Loading ...

Что делать?Многие новички во фрилансе сталкиваются с проблемой того, что изначально клиентуры нет и ее не так просто получить.

Поэтому очень часто можно наблюдать, что такие люди ищут совета у более опытных в этом деле коллег.

Но так делают далеко не все. Многие сдаются уже на этом этапе, подумав, что фриланс — сложно или что нормальных заказов во фрилансе нет.

Кстати это действительно сложно. Но мой рассказ сегодня не об этом.

Так вот, чем полезным может заняться новичок, когда попадает на биржи фриланса или просто выходит на «тропу фриланса».

  1. Участвуйте в конкурсах. Мало продуктивно, но поможет «набить руку» на то, чего хотят заказчики.
  2. Сделайте лучше, чем другие. Поможет, если Вы действительно профи своего дела. Сделанную работу можно выставить на суд общественности (например в форуме или блогах) — заказы наверняка появятся сразу.
  3. Поработайте над профилем. Внесите максимум информации о себе — заполните портфолио, оставьте мобильный телефон, емейл, skype, все, что можете. Открытость — залог того, что Вы не кидала и Вам можно доверить заказ. И обязательно заполните портфолио.
  4. Предложите свои услуги. Попробуйте в форуме, блогах или в сообществах предложить свои услуги в роли «подмастерья». Оптимальный вариант для не очень опытных фрилансеров в профессиональном плане.
  5. Беспокойтесь о своем имидже. Делайте ставки грамотно, осмысленно. Не флудите, не пишите откровенный бред и не доставайте заказчиков через приват. Это повысит Ваши шансы на получение первых заказов.
  6. Займитесь самообразованием. Если заказов все-таки нет и выше описанные пункты не подходят — возможно что-то с Вашими навыками. Попробуйте «прокачать» их.

Успехов!

Apr
16
Почему одни фрилансеры довольно успешны, а другие нет
1 балл2 балла3 балла4 балла5 баллов (5 голоса, средний балл: 4.8 из 5)
Loading ... Loading ...

Работа с клиентамиНа это есть несколько причин. И одна из них (и самая главная) – не умение работать с клиентами.

Когда-то года 3 назад я работал в одной фирме, главная суть которой была – обслуживание клиентов. Весь бизнес был построен именно на корректной, приветливой и учтивой работе с клиентами. И это действительно работало!

Клиентов со временем стало очень много, а прибыль фирмы увеличивалась почти каждый месяц. Никаких новых сервисов, фич,  расширения и т.д. Только работа с клиентами “от А до Я”.

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

Думаю, что вы уже догадались в какую сторону я клоню. Фриланс – это тоже сфера обслуживания, только разница в том, что нет личного (визуального) контакта. Однако правила все те же -  корректность, приветливость и учтивость при работе с клиентами. Какое бы ни было настроение, какая бы муха не укусила – сервис и репутация должны быть прежде всего стоять в сознании и не давать переступить черту.

Могу с уверенностью сказать, что у большей части фрилансеров навык работы с клиентами – отсутствует как класс. Можно быть мастером с “золотыми руками”, но без умения работать с клиентами – эти “золотые руки” – стоят ровно 0. И именно эти фрилансеры – никогда не достигнут успеха – их бизнес не будет рости, не будет приводить новых клиентов по рекомендациям старых и т.д. Они обречены на вечный поиск заказов, вместо того, чтобы заказы находили их сами..

Так вот, фрилансеры, что читают сейчас мое это сообщение – остановитесь и переосмыслите то, как Вы работаете с клиентами. Это первая вещь, которую Вы должны “прокачать” в себе, чтобы в дальнейшем не иметь проблем. Никаких технические знания предмета работы не заменят вам умение работать с клиентами.

Шлифуйте свою работу в этой области постоянно – это прямой путь к успеху.

—————————————————————————————-

Хотите больше узнать о принципах работы между заказчиком и исполнителем? Тогда регистрируйтесь на участие на подкаст – завтра мы расскажем об этом во 2 выпуске подкаста о фрилансе.  Время и место – не изменилось.

На подкаст зарегистрировалось 8 человек на данный момент. Всего мест – 20.

—————————————————————————————

Продолжается акция “Задай вопрос – получи ответ”. Суть акции: я отвечаю на любые ваши вопросы относительно фриланса: тайны, работа, клиенты, ставки, как раскрутить свой профиль на биржах фриланса и т.д. Особо детально даю ответ для новичков во фрилансе.

Apr
09
10 самых больших “отмазок” фрилансеров о дедлайне
1 балл2 балла3 балла4 балла5 баллов (4 голоса, средний балл: 4 из 5)
Loading ... Loading ...

Отмазки фрилансеровИногда очень полезно взглянуть на себя со стороны. Смотря на себя со стороны можно постараться исправить свои ошибки и отшлифовать свою работу.

Конечно данные вещи, о которых я сегодня поведу речь не свойственны всем фрилансерам, однако судя по сообщениям на форумах и блогах – эти “отмазки” очень часто озвучиваются клиентам.

Конечно далеко не всегда это “отмазка”, бывают и правдивые ситуации, однако я считаю, что всегда можно предупредить своего клиента о том, что что-то не так идет или попросить кого-то сделать это за вас. Исключение – когда вы в больнице без сознания или умерли (надеюсь, что такого ни с кем не случится). Во всех других ситуациях всегда можно найти способ предупредить клиента о каком-либо форс-мажоре или найти запасной выход.

Не буду тянуть кота за хвост и сразу перейду к сути.

10 самых больших “отмазок” фрилансеров о дедлайне

  1. Моя кошка(собака, золотая рыбка, корова..)  вчера рожала.
  2. Я потерял ТЗ. Пришлите еще раз, пожалуйста.
  3. Я подумал и понял, что надо больше денег..
  4. (Через неделю, пару дней или месяц после дедлайна) Я в аварию попал..
  5. Я вчера очень устал и уснул за компьютером.
  6. Интернет пропал – авария у провайдера (винда слетела, фотошоп сломался, процессор сгорел…)
  7. У меня заболела мама/папа/бабушка/дедушка/сестра/брат …
  8. Вчера был дедлайн по более важному проекту.
  9. Ой какая жалость! Я перепутал дни, думал, что дедлайн завтра!
  10. У меня нет доступа к SVN, почте и т.д.  Я сейчас за другим компом, скинь данные..

—————————————————————————————

Продолжается акция “Задай вопрос – получи ответ”. Суть акции: я отвечаю на любые ваши вопросы относительно фриланса: тайны, работа, клиенты, ставки, как раскрутить свой профиль на биржах фриланса и т.д. Особо детально даю ответ для новичков во фрилансе.

Mar
30
Самая большая ошибка фриланс-дизайнеров с моей точки зрения
1 балл2 балла3 балла4 балла5 баллов (10 голоса, средний балл: 2.5 из 5)
Loading ... Loading ...

Ошибки фриланс-дизайнеровБуквально вчера, просматривая результат работы нашего дизайнера на заказ по редизайну для одной очень известной фирмы по предоставлению хостинга в Украине, окончательно убедился в том, что 99% проблем фриланс-дизайнеров скрыт в том, что они не понимают самого главного, а именно:

Нужно изначально делать не так, как написано в ТЗ, а так, как это должно быть удобно и полезно для конечного пользователя.

Вот только почему-то почти все фриланс-дизайнеры поголовно стремятся сделать “как написано в ТЗ”. Да, выходит не всегда плохо, особенно, если ТЗ сделано грамотно, но без изюминки, без удобства и т.д.

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

(more…)

Dec
27
Как не остаться в дураках: не помогайте незнакомым людям в операциях с деньгами
1 балл2 балла3 балла4 балла5 баллов (2 голоса, средний балл: 5 из 5)
Loading ... Loading ...

droprubbish.jpgСегодня, в одном из блогов на free-lance.ru Ксения Давыдова рассказала историю, как ее, фактически, оставили в дураках после того, как она помогла одному из “заказчиков” с переводом денег.

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

Запомните! Никогда не помогайте малоизвестным людям, что обращаются к Вам в icq или по другим контактам по поводу валютных операций! Рискуете остаться в дураках.

А теперь  об удочке, на которую попалась Ксения.

(more…)

Nov
17
11 наибольших ошибок заказчиков
1 балл2 балла3 балла4 балла5 баллов (3 голоса, средний балл: 5 из 5)
Loading ... Loading ...

internet_marketing_mistakes.jpgТема работы с заказчиками во фрилансе – одна из самых  больных для большинства фрилансеров.

Очень надеюсь, что мой блог читают не только фрилансеры, но и заказчики.

Сегодняшняя заметка для Вас.

Так какие же частые ошибки совершают заказчики? Почему так получается? Как же не допускать таких ошибок?

Дать ответы на эти вопросы я попытаюсь ниже.

(more…)

Nov
10
11 наибольших ошибок фрилансеров
1 балл2 балла3 балла4 балла5 баллов (8 голоса, средний балл: 4.25 из 5)
Loading ... Loading ...

mistake.jpgПришло время взглянуть назад и еще раз повторить пройденный материал, а именно: какие ошибки чаще всего совершают фрилансеры.

1. Переоценивают свои силы

Этим страдают до 90% всех фрилансеров – большая часть из них – начинающие (те, кто только собирается начать – мотайте на ус).

Вы когда-нибудь видели хитрого фрилансера, который попросил бы на задачу, которая делается 2 дня – 2 недели, причем сделал все за 2 дня, а оставшиеся время от 2 недель – гулял?

(more…)