• VPS. Каковы особенности работы?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    Фактически вам дают выделенный сервер (который просто не является железным, на то он и виртуальный). Если говорить про digitalocean - там у вас действительно всё своё выделенное (память не шарится, а аллоцируется при старте виртуалки, ядро процессора для вас личное на тарифах от $10, lvm-том с только вашей виртуалкой (фактически - выделенный для вас раздел raid-массива)).

    Всеми настройками внутри системы занимаетесь вы. Более того, хостер даже не отвечает за то, что у вас система запустилась. Если виртуалка грузится до биоса - то свою работу по обеспечению работы сервера хостер выполнил (опустим в этом контексте вопросы про сеть). Если сломали ОС и она не загружается - у вас есть кнопка "переустановить чистую систему". За бэкапы, опять же, отвечаете вы (digitalocean предоставляет платные бэкапы, но они не очень удобны). За безопасность - вы.
    В случае с digitalocean у вас есть доступ к "монитору" виртуалки и загрузочный rescue-livecd. В общем-то всё.

    По поводу того, как настраивать (если речь про стандартный стек LAMP), то:
    1) debian 7 x64
    2) отключение авторизации рута по паролю, использование ssh-ключей
    3) для диагностики установить snoopy, настроить логгирование sftp.
    4) не использовать ftp, использовать только sftp. Желательно, по ключам. В sftp-клиенте ни в коем случае не хранить пароли от аккаунта или ssh ключа.
    5) nginx+apache-mpm-itk + php 5.3 и выше + percona-server вместо mysql
    6) в конфигах виртуалхостов включите open basedir, если сайт будет с этой настройкой работать (эта опция запрещает php-скриптам при обращении к ним по http выходить за пределы указанных в basedir каталогов)
    7) не забудьте включить MatchUser/MatchGroup для виртуалхостов
    8) обязательно настроить default host для apache и nginx, чтобы исключить неконтролируемую конфигами обработку каких либо запросов по http. Обычно вешают 403 или 404 ошибку в качестве дефолта.
    9) не ставить лишний софт, не вводить бездумно команды из случайно найденных в гугле мануалов, если не понимаете что именно эта команда делает.
    10) не ставить софт из исходников, особенно из недоверенных источников.
    11) если на сервере нужна исходящая почта, то корректно настроить ограничения для неё. Например, для exim4 (он предпочтителен в Debian) - раз, два.
    12) убрать за http-auth все лишние административные скрипты - phpmyadmin, админки сайтов, графики, мониторинг и так далее.

    Это исключит почти все возможности атаки на сервер снаружи. В такой конфигурации если вас и взломают, то либо из-за украденного пароля/ключа, либо поломают сам сайт и зальют вредоносные файлы через php-скрипты непосредственно сайта.
    Более того, у меня в такой конфигурации пока не сломали ни одну виртуалку целиком (были проблемы с заражением отдельных сайтов, конечно - но это было сделано явно через php), несмотря на разрешающий всё firewall и стандартный ssh-порт.

    А вообще за настройку всего этого добра под 2-3 сайта админы берут около 500 рублей.
    Ответ написан
    42 комментария
  • Чем RoR лучше PHP?

    rumkin
    @rumkin
    Самое главное не слушайте этот бред про то что все одинаково. Ничего подобного! У ruby есть внятная философия, у php — нет. Это единственное и основное различие, которое, почему-то считают некритичным (тогда как же ruby стал так популярен). PHP развиваться-то начал активно, только после того, как почувствовал конкуренцию. И основная причина этого в том, что в php-сообществе слишком высока доля дилетантов, а Ruby изначально ставит высокую планку. Я разрабатывал на обоих языках, знаю о чем говорю.

    RoR — это веб-фреймворк, так что сравнивать его с целым языком нельзя.
    Но он не один на ruby написано множество приложений для комфортной разработки, работать с которыми поистине удобно: это Vagrant для управления VM, Rake для выполнения задач, Capistrano для деплоя, Chef для управления конфигурациями. Про основные особенности языка вы прочтете в wiki.

    А так да и то, и то язык программирования, можно дальше жевать резину.
    Ответ написан
    Комментировать
  • Чем RoR лучше PHP?

    metamorph
    @metamorph
    RoR = Ruby on Rails - это фреймворк.
    PHP - это язык программирования.
    Вот и всё отличие.
    Ответ написан
    Комментировать
  • Какие "велосипеды" написать на JavaScript для освоения языка?

    shiza36
    @shiza36
    jQuery свою напишите.
    Ответ написан
    Комментировать
  • По каким принципам и как разрабатываются платформы для разработки (типа 1С)?

    Alexufo
    @Alexufo
    противоречивый, сложный, весь компьютерный.
    У вас есть рынок, вам надо стать монополистом - поскольку если ваша цель деньги. Вам скорее надо книги по маркетологии смотреть, поскольку все разработчики в один голос срать хотели на проблемы и глюки с активациями, копиями, серийниками, защит от взлома. Они святой работой занимаются, а тут их заставляют страдать ради денег для дяди (который правда им зп платит)
    Ответ написан
    Комментировать
  • Как стать крутым фронтендером?

    makol
    @makol
    Тот кто работает в два раза больше других, тот двигается по дороге жизни и знаний тоже быстрее других!
    Ответ написан
    Комментировать
  • Как получить опыт для устройства на работу Python Developer?

    zxmd
    @zxmd
    По опыту набора Python разработчиков могу сказать следующее:
    - Свои проекты на github никого кроме вас самих не волнуют. Ну сами судите - если это проект который никто не фалловит никто не форкает и написан еще кривенько - толку от него мало. Если это реально хорошо написанный код - то это можно использовать как ваш образец написания кода. Мне бы это понравилось, кто то это не учтет.
    - Опыт от 1 года - это не требования, это так сказать фильтр, который отсеит тех кто прочитал книжку "Соц сети за 24 часа для новичков".
    - Фриланс - более менее имеет вес. Но тут палка о двух концах. Я лично бывает звоню по фрилансному контракту и интересуюсь о человеке который выполнил заказ. Тоесть тут надо быть точно уверен что никто из ваших клиентов не скажет "да вы что, он нам проект делал полгода и не доделал" - хотя с вашей стороны будет "да они тз 10 раз меняли и вообще не заплатили за работу". Но обычно уже нет возможности оправдаться. Так что фриланс - не однозначная штука.
    - Голый питон - мало кому из работодателей интересен. Интересует скоп технологий. Если это web то Python+Django+PSQL+PIL+South+Elasticsearch(или sphinx)+mongo+lxml+с полсотни библиотек под разные нужды. Но это я говорю уже о сложившемся синьоре питонисте.
    - По поводу джуниоров. Я при просмотре резюме вообще не смотрю на ЯП (если это не 1c или VB) - язык, в особенности питон - дело 2-3 недель в реальном проекте. Опять по своему опыту - часто приходится переучивать народ с PHP, в этом нет ничего сложного. Многие фирмы идут на это, так как рынок питон разрабов очень ограничен. Как говориться - выращивают бабу-ягу в своем коллективе. Тут главное показать то, что хоть у вас нет опыта - вы этот самый опыт желаете получить..
    Ответ написан
    5 комментариев
  • Как запустить Putty в скрытом режиме?

    Anonym
    @Anonym
    Программирую немного )
    Если не ошибаюсь, kitty так умеет.
    Ответ написан
    2 комментария
  • Стартап vs Крупная компания: куда пойти работать?

    xakpc
    @xakpc
    full-stack .net developer, CEO Leecero.com
    Вы простите, но

    В первые 1.5 года только появится макет.

    этот стартап с 90% вероятностью провален.

    Если стартап делается правильно, то скорее всего:
    - работы много и делать ее надо быстро,
    - версии приложения/сайта должны выпускаться - и как можно быстрее
    - в любой момент надо быть готовым что все надо переделывать
    - в любой момент основатель может сделать вираж с мобильного приложения на веб-сайт и вы ему станете не нужным, т.о. вы распрощаетесь очень быстро.

    но зато это весело
    Ответ написан
    Комментировать
  • Стартап vs Крупная компания: куда пойти работать?

    s0ci0pat
    @s0ci0pat
    I'm Awesome
    Предпочитаю крупную компанию.
    Стабильная ЗП, стабильная компания.
    Но это только мое мнение.
    Ответ написан
    Комментировать
  • Как оптимизировать производительность Symfony?

    GHua
    @GHua
    Не думали использовать ESI? Допустим в связке с Varnish-ом.
    Ответ написан
    Комментировать
  • Как правильно отослать письмо с динамическими данными в rails?

    estum
    @estum
    Responce — это на каком языке? :)

    В NotificationMailer:
    def new_responce(responce)
      @responce = responce
      @responce_user = @responce.user
      mail to: @responce.post.user.email #, subject: "Subject",  ...
    end


    В теле письма:
    <%= @responce.price %> @responce_user.name

    В контроллере отправка письма:
    NotificationMailer.new_responce(@responce).deliver

    Это все без оптимизации запросов к БД.
    А вообще это же азы, кури больше манов, особенно про логику моделей.
    Ответ написан
    4 комментария
  • Где можно потренироваться написанию "идеального кода"?

    Mike77
    @Mike77
    lamp sf2 yii разработчик
    патерны твое все
    Ответ написан
    Комментировать
  • Auto-deploy с Git - как можно реализовать?

    Использую репозиторий на BitBucket и разворачиваю с помощью Jenkins'а.
    BitBucket после пуша дергает CI, который обновляет локальную копию и разворачивает на тестовый сервер.
    Ответ написан
    Комментировать
  • Auto-deploy с Git - как можно реализовать?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Вам нужно использовать git-hooks. По соответствующему событию можно:

    - Запускать скрипт, который будет выполнять deploy через ssh.
    - Отправлять специальный запрос на сервер, который будет инициализировать deploy.
    Ответ написан
    Комментировать
  • Как избавиться от мобильного телефона?

    @Smugo
    Нет Усама, ты нас не проведешь! Мы то знаем, что ты жив!!!11
    Ответ написан
    Комментировать
  • Ваша IDE для php + frontend. Преимущества?

    PhpStorm
    PhpStorm представляет собой интеллектуальный редактор для PHP, HTML и JavaScript с возможностями анализа кода на лету, предотвращения ошибок в коде и автоматизированными средствами рефакторинга для PHP и JavaScript. Автодополнение кода в PhpStorm поддерживает спецификацию PHP 5.3, 5.4 и 5.5 (современные и традиционные проекты), включая генераторы, сопрограммы, пространства имен, замыкания, типажи и синтаксис коротких массивов. Имеется полноценный SQL-редактор с возможностью редактирования полученных результатов запросов.

    Удобно работать как с большими проектами, так и с маленькими. Большая гибкость IDE поможет любому программисту настроить среду под себя так, как ему хочется. Удобно и красиво. Советую.
    Ответ написан
    Комментировать