Задать вопрос
  • Какая структура у интернет-проектов Хабрахабр, Смартпрогресс?

    copist
    @copist
    Empower people to give
    «Дьявол в мелочах», — говорят арабы. «Бог в мелочах», — говорят христиане. Те и другие правы. Если вы не уделяете внимания деталям, за ними прячется дьявол. Если вы отдаете им должное, в них являет себя Бог.

    С разработчиками обоих сервисов можно связаться и спросить напрямую :) И пообщаться с их тараканами.

    Они могут начать с любой из перечисленных ниже тем
    1. Как проект появился: актуальность, востребованность, ориентированность на пользователя, удовлетворение потребностей, удобство пользования и как следствие идея и дизайн
    2. Как ведётся разработка: совместная разработка, системы контроля версий, автоматическое тестирование, автоматическое обновление
    3. Как они привлекали пользователей: SEO, реклама, вовлечение, удержание
    4. Как они росли: ориентация на рост, масштабирование, резервирование, кэширование, оптимизация
    5. Как они общаются с пользователями: обратная связь, поддержка пользователей, техническая поддержка
    5. Как они зарабатывают: платные услуги, привлечение и удержание клиентов, коммерческий эффект, эксперименты с пользователями
    6. Как они управляют проектом: перспективы, задачи, планирование работ, риски
    Это всё разные аспекты, но и это ещё не всё.
    Ответ написан
    4 комментария
  • На каких языках лучше написать сайт для турфирмы (нужно чтобы было фильтры поиска, чтобы использовалась статистика и аналитика)?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    Какой цвет подойдет для покраски забора - красный, синий или зеленый? Два последних я не видел.
    Ответ написан
    Комментировать
  • Как удалять пользователя из БД без удаления id?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    ТЕБЕ
    ЭТО
    НЕ НУЖНО
    Ответ написан
    Комментировать
  • Как Вы понимаете junior, middle (developer), senior и есть ли принципиальная разница этих понятий в вебе, эмбедде, геймдеве и других программиннгах?

    @lookid
    Junior : студент старших курсов и без опыта работы. Если с человеком нужно сидеть и постоянно помогать. Можно доверить баги, но никак не рефаторинг или таски на 1-2 недели, то это 100% джуниор. Опыт фултаим: 0.5-1 год. Либо партайм: 1-2 года. Предметную область знает слабо.

    Middle : фиксит баги быстро, может делать таски на 1-2 недели, принимать архитектурные решения, рефакторить. Опыт фултайм: 1-2 года. Предметной областью владеет достаточно, что бы обсуждать с коллегами, спорить, искать решения.

    Senior : Тут либо довольно крутой, скилловый Middle, умеющий очень хорошо кодить и знающий предметную область о-о-очень хорошо. Опыт фултайма 5-7 лет.
    Либо просто Middle, который решил уйти, но его апнули, что бы не уходил. Обычно молодые Senior этот случай.

    есть ли принципиальная разница этих понятий
    Есть немного. В вебе растут быстрее (см. молодых синьеров). В геимдеве посложнее, т.к. область специфичная и набить руку в рендере, физике и прочих PS4SDK дома не получится. Но понятие Software Engineer никто не отменял. Software Engineer считаются довольно универсальными и могут быть Senior в любой предметной области, конечно если это не рокетсаенс, которым Senior в жизни не занимался.
    Ответ написан
    2 комментария
  • Какие существуют способы защиты стилей CSS?

    opium
    @opium
    Просто люблю качественно работать
    мне кажется мания величия затмила ваш мозг глупейшими проблемами, вместо того чтобы код красиво оформить и выкладывать на гитхаб и делиться им, вы решили его зачем то прятать, просто задумайтесь, что хорошего вы сделали в жизни и почему не выкладываете его на гитхаб?
    Ответ написан
    11 комментариев
  • Фриланс на C# - в какую отрасль податься?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    В основном самое прибыльное сейчас (не только дотнет а вообще) - это веб и мобильные приложения. В Toptal-e у нас часто например возникает потребность в Xamarin и Unity

    Если позволяет жизненная ситуация - работайте на опыт. Берите любые проекты за любые деньги (пусть малые). Старайтесь выкладываться на 100%, изучайте все, за что зацепится глаз. Вместо игр / телевизора и тп. - читайте статьи, книги. Есть всякие ресурсы с обучающими видео материалами. Учиться сейчас просто и дешево.
    Ответ написан
    Комментировать
  • Как правильно организовать деплой приложения?

    shebanoff
    @shebanoff
    Я увидел в Вашем вопросе две части.

    Как правильно организовать деплой (выкладку работоспособного кода на сервер)?


    В самом простом случае Вам подойдет связка ssh + git pull на сервере. В этом случае на сервер будут доставлены патчи коммитов, которые есть в репозитории, но еще не появились на сервере, т.е. «только обновления файлов, которые сейчас существуют». Этот метод довольно подробно обсудили в ответах на другой вопрос.

    Если хочется автоматизировать процесс, что похвально, то я вижу три доступных инструмента для этого: Capistrano, Mina (мой персональный фаворит) и Vlad the Deployer. Все три проекта схожи по сути. Принцип их работы таков:
    1. Подключиться к целевому серверу.
    2. Залить обновление кода из репозитория.
    3. Выполнить предписанные Вами инструкции (перезапуск демонов, сброс индексов, обновление структуры БД и прочее).
    4. ...
    5. PROFIT!


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

    Как организовать процесс тестирования?


    Если Вы еще не определились с методикой тестирования (Test Driven Development, Behavior Driven Development, Лень-Driven Development), то Вам следует для начала заняться именно этим.

    Скорее всего, тесты будут выполняться на Вашей локальной машине, пока Вы пишете код. Используя RSpec, я держу открытым Guard. Guard отслеживает изменения в коде и запускает набор юнит-тестов, которые покрывают измененный код. Весь процесс занимает не больше минуты-двух, и особо не напрягает. Как только я вижу провалившийся тест, я меняю код до тех пор, пока он не станет зеленым. Пока тестов мало (это не самый лучший знак, к слову), Вы работаете один, локального запуска перед деплоем может оказаться достаточно — например, чтобы проверить релиз на доступность критического функционала: регистрации, покупки, создание постов и т.п.

    В какой-то момент речь может зайти о Continious Integration. Это возможность иметь стабильный билд в любой отрезок времени, а так же принимать решение о годности каждого отдельного коммита. Сопряжено с деплоем кода на integration-сервер и запуском на нем тестов. Скорее всего, это Вас не интересует, если Вы не работаете в команде. Но, для полноты картины, Вы можете понаблюдать за билдами на Travis CI известных Open Source проектов: Symfony 2 и Ruby on Rails.

    Таким образом


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

    Приведите в порядок Ваш репозиторий с кодом, используйте mina для деплоя и запускайте тесты на Вашей локальной рабочей машине. Как только Вы почувствуете, что этого не достаточно — Вы наверняка уже будете знать, куда шагать дальше.
    Ответ написан
    8 комментариев
  • Бесплатный менеджер задач — какой выбрать?

    www.teamer.ru/
    или
    www.mytinytodo.net/ если нужен на своем хосте сервис
    Ответ написан
    Комментировать