• Как использовать контроль версий для сайта на обычном хостинге?

    PafNutY
    @PafNutY
    Люблю кодить в своё удовольствие
    Описанная проблема - это только вершина айсберга.
    Вам необходимо поменять подход к самой разработке.
    Пока клиент будет лазить в код и на FTP — вы не сможете нормально работать с git.
    Пока сайт клиента будет на шаред-хостинге — вы не сможете нормально работать с git.

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

    В общем то попробуйте, поймёте, что что-то не то и в итоге придёте к нормальному решению :)
    Ответ написан
    2 комментария
  • Как использовать контроль версий для сайта на обычном хостинге?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Как использовать контроль версий для сайта на обычном хостинге?

    Передельно просто. Рецепт такой:
    1. Берёте любой, можно самый дешевый VPS (если своего сервера нет)
    2. Настраиваете там GIT'репозитории в нужном количестве
    3. В каждый репозиторий, кладёте скрипт-хук, который будет выгружать изменившиеся файлы на нужны FTP-сервер (судя по ссылкам выше, подобные решения есть уже или в готовом или в полу-готовом виде).

    То есть, Вам навсего нужно ознакомиться с механизмом "хуков" гита, как мне видится. И можно ещё пожалуй, ознакомиться с FTP-клиентами запускаемыми из консоли, или механизмом монтирования FTP как файловой системы... Вариантов много, Вам нужно просто выбрать.
    Ответ написан
    2 комментария
  • Знаете ли вы программистов которые в одиночку создали крутой проект?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Один человек вполне может создать крутой проект, и таких проектов тысячи.
    Но на определенном этапе, он подключает дополнительных людей, делегируя им отдельные обязанности.

    Например Джон Кармак создал первый 3д-шутер, создал 3д-движок, создал множество уникальных технологий, касающихся 3д, но ему помогали делать другие вещи. Уровни, графику, маркетинг.

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

    IMHO вопрос не нужен.
    Ответ написан
    Комментировать
  • Бесплатная программа для создания кликабельных прототипов?

    kn1ght_t
    @kn1ght_t
    Axure
    30 дней бесплатно, потом можно и запиратить
    Ответ написан
    Комментировать
  • Как правильно администрировать VPS?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Ни в коем случае не ставить никаких ISP Manager / Vesta / CPanel, иначе никогда не научитесь тому, чему хотите научиться. Кроме того, они жрут ресурсы. Даже Vesta, которая самая легкая, их жрет прилично, а я сильно сомневаюсь, что у вас VPS c 8+ Gb памяти.

    Изучать надо по урокам и статьям, читая мануалы и best practices по каждому package. Порядок, плюс-минус, таков:

    - развернули ось
    - сделали сразу апдейты
    - создали и настроили swap
    - поменяли пароль рута на что-нибудь супер-мега-сложное (его мы использовать все равно не будем)
    - создали себе обычного юзера с паролем нормальной сложности (он будет использоваться для sudo)
    - дали юзеру права sudo
    - закрутили гайки по SSH - сменили порт, запретили вход руту и вход по паролю (только по ssh-ключам), разрешили вход только одному своему новому логину
    - настроили UFW - простой, но эффективный firewall на основе iptables - default deny, allow http, https, свой кастомный ssh-порт. Если логиниться будете только из нескольких мест (офис, дом) - можно вообще ssh разрешить только на эти IP.
    - sudo dpkg-reconfigure tzdata чтобы установить свою временную зону, так логи потом легче читать и понимать
    - настроили logrotate
    - настроили logwatch
    - настроили Postfix, чтобы сервер вам письма мог слать (мы его настраиваем на внешний мейлер, например Mandrill, чтобы все письма точно в спам не падали)
    - настроили fail2ban (потом, после установки и настройки веб-сервера и сайтов, в fail2ban можно дополнения писать, например мы на WordPress-сайтах мониторим попытки авторизации в админку и блочим тем же fail2ban)
    - дальше ставим все что нужно - Git, Nginx, HHVM, PHP5-FPM, MariaDB, Memcached/Redis и так далее.

    Регулярно заходите на сервер, делайте apt-get update && apt-get dist-upgrade.

    p.s.: это по ubuntu/debian, для других систем все то же самое, но packages и команды могут немного отличаться
    Ответ написан
    26 комментариев
  • На каком ЯП проще начать удаленную работу или фриланс?

    Vapaamies
    @Vapaamies
    Разработчик будущей ОС для ПК размером 250 МБ
    Попробуй вписаться кому-нибудь и фрилансеров подмастерьем. Время от времени попадаются такие объявления (речь не про "ищу партнеров для супер-пупер стартапа"). На реальных задачах быстро найдется пересечение "что нравится" со "что нужно".
    Ответ написан
    2 комментария
  • Первый рабочий день программист. С чего начать?

    mak-oleg
    @mak-oleg
    I believe in god, for the rest i pay in cash!
    1. Придти на рабочее место.
    2. Принести с собой настоящую кружку программиста, объемом не менее 0,5 литра
    3. Наполнить ее крепким кофе
    4. Выйти в сеть интернет
    5. Поделится на форумах программистов в какую ж..... вы попали и что вам с этим делать, и ваш призыв не останется без ответа и поддержки
    Ответ написан
    Комментировать
  • Какой язык программирования подходит для заработока?

    Serhioromano
    @Serhioromano
    Web Developer
    реально ли в ИТ сфере без английского?)


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

    9
    Какой язык программирования подходит для заработока?


    Здесь есть 2 ответна на ваш ворос в зависимости от того как быстро вы хотите начать зарабатывать. Если вы хотите зарабатывать немедленно то РНР. На этот язык сейчас большой спрос. Учить легко.

    Если вы хотите зарабатывать в следующем десятилении то ЯваСкрипт. Это то на чем будет народ писать ближайшее время как в веб, так и настольные приложения на все платформы. И потом фронтенд разработка сейчас в тренде, и будет трендить еще несколько лет. Так что без работы не останитесь.
    Ответ написан
    2 комментария
  • Какой язык программирования подходит для заработока?

    Petroveg
    @Petroveg
    Миром правят маленькие с#@&ки
    Моя первая девушка была из моего же класса. Увы, с ней я так и не смог толком понять, что такое — быть мужчиной. Ну там на 8 марта да на ДР цветочки подарить — это понятно, но на большее фантазии так и не хватало.

    Я решил бросить её как только школу закончу, а то скучно и беспесперктивняк какой-то... Да и шашни я с ней завёл, только чтобы мужчиной стать, а с этим беда — кроме @#$лей от её бывшего (из параллельного класса) я толком никакой школы и не получил.

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

    Потом мне посоветовали один клуб — типа оттуда никто одиноким не уходил, начал там зависать:) Круто! Мне 3 раза дали. Ну точнее 2, один раз девушка отрубилась и уснула у меня дома, но я решил, что она согласна. По-любому согласна, раз приехала. А с одной из них даже наметился романчег:)

    Меня правда смущает, что друзья стали посмеиваться надо мной, когда мою подругу увидели... Посоветовали другой клуб, где девчонки круче. Но у меня нет денег на этот клуб, хотя там и правда покрасивше будут...

    Посоветуйте — есть ли какой-нибудь клуб, где девчонки как из второго, а цены как из первого? Очень нужно.
    Ответ написан
    19 комментариев
  • Что нужно знать, чтобы стать хакером?

    @Loreweil
    Во-первых, нужно знать английский на уровне advanced. Ибо большинство актуальной литературы именно на этом языке.

    Начать советую с книжки Hacking Exposed. Можно скачать курс CEH с рутрекера. Но он, ИМХО, не очень, книга лучше. Скачать дистрибутив Kali Linux, изучать тулзы, которые в него входят, в первую очередь nmap.
    Изучить Metasploit (входит в Kali Linux). Для этого написана хорошая книга Metasploit Toolkit for Penetration Testing, Exploit Development, & Vulnerability Research.
    Записаться на курсы на такие или на такие.

    Изучая вышеприведенные материалы, когда будешь понимать, что есть пробелы в определенных знаниях (сетевые протоколы, программирование, операционные системы, криптография), подтягивать эти знания через википедию, литературу, курсы. Как-то так.
    Ответ написан
    2 комментария
  • 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 комментария
  • Какая есть лаконичная книга по Java и Android?

    @nonrblGyN4ik
    Думаю, все, что вы хотите, можете найти в этой книге. В ней с самых первых страниц рассматриваются основные моменты(и не только) на примере создания приложений( от легкий к сложным). Книга отлично подходит новичкам.

    Так же посмотрите эту книгу, в ней вы изучаете и параллельно пишите приложения на изучаемую тему.Кажется там 7-8 приложений охватывающие разные возможности Android.

    Рекомендую первую книгу для обучения, она, во первых новее, и в ней более подробно объясняют основные моменты. В обеих книгах необходимы начальные знания Java.
    Ответ написан
    3 комментария
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Правда, что в университете, как и в школе (я про информатику и программирование) не дают практически никаких существенных знаний?

    Да, это правда. За редкими исключениями в университетах ничему полезному в программировании не учат и надеяться на это не стоит.

    Какой язык выбрать для дальнейшего изучения

    C++ достаточно сложный, особенно для начинающего, но я все равно советую его освоить. Сам, тоже, классе в 9-10м учил C++ по книгам Шилдта и Страуструпа. Это было сложно, но оно того стоило, хотя сейчас я и не программирую на C++ (больше на Python), но это был очень полезный опыт.

    После того, как я выберу язык окончательно

    Дальше будет легче, каждый следующий язык программирования, по моему опыту, осваивается быстрее и приятнее предыдущего (хотя конечно многое от самого языка зависит).
    В любом случае стоит попробовать что-нибудь вроде Java/C++, потом что-то интерпретируемое вроде Python и выбрать, что больше нравится. В таком подходе не вижу ничего плохого.
    Ответ написан
    Комментировать
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    @andrej97
    Собрат) Также учусь в 9-ом классе и аналогичная мечта.
    Могу ли я с вами познакомится, скиньте вк или скайп (как тебе удобнее)
    Ответ написан
    2 комментария
  • Не то. Удаляйте. Где тут кнопка "в /tmp"?

    И ради бога, никаких видеоуроков от Евгения Попова!
    Ответ написан
    1 комментарий
  • Каковы перспективы Junior'а в маленьком городе?

    @dimafeng
    А почему не поучаствовать в opensource? Или за бесплатно помогать кому-нибудь в проектах?
    Ответ написан
    Комментировать
  • За что дали 200 ГБ на Яндекс.Диске?

    Deliaz
    @Deliaz


    Мы внимательно отслеживаем ситуацию с обновлением приложения для Windows. На сегодняшний день большинство пользователей уже проапгрейдились до стабильной версии 1.1.8. и продолжают работать с программой.

    Всех, кто успел получить нестабильные версии Яндекс.Диска (от 1.1.5. до 1.1.7.), мы предупреждаем по электронной почте о возможных сбоях в работе операционной системы и объясняем, как нужно поступить.

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

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

    Команда Яндекс.Диска
    Ответ написан
    2 комментария
  • Каковы перспективы Junior'а в маленьком городе?

    @FoxInSox
    Имхо, ни один из пунктов именно вам не подходит. Предложу свой:

    6. Продолжайте учить Java, но только не просто читая и решая типовые задачи, а начните свой проект. Не слишком сложный, не нужно писать свой "3Д вижок который сделает революцию" или свою операционную систему, а просто проект который охватывал бы ту или иную сферу, но качественно. Например, напишите клон сервиса Dropbox: серверную часть, веб клиент и Android клиент. Там вам и многоточное программирование, и сервлеты, и БД и UI, и работа с сетью и много чего еще. Только обязательно(!) доведите до конца. Android приложение в ГуглПлей, для сервиса арендуйте домен за 500р в год. И дальше снова начинайте делать новый проект.

    Не торопитесь стать джуниором и зарабатывать "деньги", им вы успеете стать еще много раз. Равномерно, спокойно и в свое удовольствие самосовершеснтвуйтесь.
    Ответ написан
    2 комментария