• Совет: Python Intermediate Developer?

    @Sizar
    У меня все точно так же, прям идентичная ситуация. Если бы ты потратил это время на изучение Java, то уже работал бы джавистом, зарабатывал бы, были бы перспективы и рост. Обидно за потерянное время? Мне вот частично да.
    Тебя без строго математического образования топ вуза (МГУ, ВШЭ, МФТИ) не возьмут. Вечерку мехмата МГУ очень мало кто может закончить, учиться 4 года, стоит миллион. С очного в data science мало кто идет по многим причинам, в том числе не берут. Python в data science это вообще просто инструмент, там кодить не надо как программист, там математика и мышление аналитика. Посмотри по каким материалам готовятся в ШАД и что там они делают (там тоже мало кто тянет, сложно), вот это про data science. С твоим бэкграундом тебя не возьмут уже, конкуренция большая, среди них много аспирантов.
    И ты это понял и решил податься в веб, ведь питон знаешь, а там он как собаке пятая нога, там PHP с JS царь и бог, и работа эта плохая, если откровенно и бесперспективная.
    Так вот:)) Т.е. без шансов. Некоторые, кто сейчас там, буквально с младших классов участвовали в математических олимпиадах (родители тащили), и ботаны (в хорошем смысле) там все. Так-то эта тема конечно лучше чем энтерпрайз и сайтоклепство.
    Ответ написан
    4 комментария
  • Что изучить в комплексе с курсами Javarush, чтобы можно было брать заказы на фрилансе или куда-то устроиться как Java Junior?

    @bubuxDD
    Ну человек ты конечно замахнулся)

    А теперь серьезно, я тоже начинал с этих курсов поэтому опишу свой опыт. Пригодиться тем кто не хочет наступать на грабли. Начинал с них когда интерфейс был на силверлайте и лекций было очень и очень мало, впервые стартовали реальные проекты. Но это было давно и как сейчас там обстоят дела не знаю. Всего прошел 30 уровней.
    Итак конкретно за курсы
    1) Они помогли научится кодить на джава.(дополнительно к курсам смотрел головоча, по многопоточности и еще паре тем, в книгах читал интересующие главы)
    2) Они научили не боятся программирования. Как бы странно это не звучало.
    3) Дали основные понятия по алгоритмам и ооп.(основные не значит достаточные:) )
    4) В целом самый главный плюс они хорошо структурированы и при возникновении проблем есть сообщество которое поможет. Ведь нет ничего хуже чем то состояние когда пропадает мотивация из-за слишком сложной задачи а спросить не у кого(За мои годы обучения это оказалось самым важным плюсом при выборе любых учебных материалов)

    Потом была стажировка у Кислина(Каким-то чудом удалось туда попасть от джавараш)
    Здесь научился строить более менее работающие приложения. И перестал боятся библиотек, фрейморков и прочего. Главное для меня что было вынесено со стажировки это умене соединять разные технологии(К примеру теперь в моих глазах нет ужаса если вдруг узнаю что мне нужно сделать возможность обмена данными для линукс приложеня написанного на с++, с веб-приложением на java которое будет отдавать данные мобильникам. То есть присутствует понимание как работают технологии).

    Потом я устроился на работу))))))

    По времени на ближайшие пол года, просто проходите курсы на javarush. Плюс htmlacademy - на нем курсы по html, css. В этом же заходе изучайте sql по книге издательства o'relly -"Изучаем sql"
    Если есть стажировка хорошо, если нету покупаем у Кислина topjava. После javarush это наиболее предпочтительный вариант, первая рассылка за плату остальные бесплатные так что если не уложитесь в сроки можно не беспокоиться у вас всегда будет свежая версия проекта, если паникер забэкапите эти 3 гига данных. На этом этапе главное усвоить то как технологии работают вместе и то как важно выбирать правильную архитектуру. На это уйдет еще пол года.
    (Данные сроки актуальны если заниматься кодингом по 6 часов ежедневно, ну в воскресенье можно расслабиться:) )
    Английский нужен, учить однозначно. Lingualeo плюс Пимслер плюс учебник плюс сериалы на инглише. На то что бы подтянуть на норм уровень уйдет месяца 4-5.

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

    Матан - жуть, но если хотите быть супер сеньёром с космической зп. Учить придеться как бы не плевались и не писали что он не нужен . Так как алгоритмы, и нове технологии тот же искусственный интеллект это один сплошной матан. Да и очень много мест где на самом деле матан нужен, даже если прямо в вакансиях это не указывают. Мой совет хотите расти как профессионал, учите.

    junior, mid, senior - это указание уровня опыта. Забугорный аналог наших младший, старший - сотрудник. Такие уровни деления по знаниям приняты почти во всех областях на западе(веб, мобилы, десткоп, наука)

    Ну и чисто бытовой совет, старайтесь хорошо кушать, высыпаться и не забивать свою голову программухой. Оставьте себе свободное время это поможет не охладеть. Вот к примеру есть такие кадры которые пишут что они 12 часов 7 дней в неделю батрачат код и через 3 года пропихиваются на джуна в контору "рога копыта" и Там уже растут как профы батрача код по 16 часов в сутки. Это не полезный пример. Голова постоянна забита новыми знаниями, кругом каша и ничего не разложено по полочкам. Вот и выходит что по 12 часов занимаются а толку ноль. Только устают потом и выгорают. Как мне кажеться наиболее удобный распорядок дня это когда часиков в 8-9 вечера ложишься спать, встаешь в 3-4 утра. Выходишь на прогулку дышишь свежим воздухом и топаешь кодить, а лучше учить что-нибудь на свежую голову, это классно и информация лучше усваивается. Кодишь часа 4 потом универ, работа(нужное подчеркнуть). А вечером делаешь какую-нибудь рутину, типа накодить какой-нибудь фигни которая особых умственных способностей не требует. Главное не зарывайтесь. И делайте перерывы между технологиями. К примеру поучили жабу два месяца, а потом следующую недельку вообще ничего не кодите. Это поможет сберечь психологическое здоровье, а утренние прогулки физическое))))

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

    Ответ конечно скомканный получился, но если что-то интересует спрашивайте подскажу. Так как сам был недавно студентом.
    Ответ написан
    Комментировать
  • Чем сисадмин отличается от devops?

    @InoMono
    Просто разные профессии. Хоть и смежные.

    Разные знания, навыки и инструменты.

    От того что вы хороший сисадмин - вы не сможете сразу стать девопсом. Нужно снова учиться.

    Это разные по сути профессии.

    Типовое отличие: программист дает сисадмину код. Тот поднимает MySQL, nginx, php. Настраивает это хозяйство и натравливает на код программиста.

    Ops пишет указания для Ansible, которые делают вышеописанное.

    DevOps настроил Kubernetes и GoCD и пр. так что программист отправляет код в git, а далее само запускается и тестирование и деплой

    Ключевая особенность DevOps - автоматизированный CI/CD. Автоматизированный по максимуму
    Ответ написан
  • Как сделать доступ к сайту только по домену?

    Примерно так должно работать.

    server {
      listen 80 default_server;
      listen [::]:80 default_server;
      return 444;
    }
    
    server {
      listen 80;
      listen [::]:80;
      server_name  vashdomain.com;
    
      error_page  403 /error/404.html;
      error_page  404 /error/404.html;
      error_page  500 502 503 504 /error/50x.html;
      
      location / {
        proxy_pass http://127.0.0.1:4567;
        proxy_http_version 1.1;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_cache_bypass $http_upgrade;
      }
    }
    Ответ написан
    1 комментарий
  • Локальная разработка и Docker?

    @yaBliznyk
    Предлагаю вам присмотреться к проекту Laradock
    1. Отличная документация на сайте
    2. Есть все необходимое из коробки
    3. Более чем полностью пригодно для прода
    4. Сразу привыкаешь к best practice

    Позволяет не зависеть от ОС и держать её в чистоте (никаких сервисов для разработки кроме IDE)
    Вы очень быстро разберетесь в том, что происходит. Возможно откроете для себя пару полезных сервисов.
    Ответ написан
    1 комментарий
  • Стоит ли использовать Docker на продакшене?

    @de1m
    У нас пять серверов в hetzner и несколько больших во внутреней сети, на них на всех крутяться контейнеры для разных вещей(mysql, mssql, bind, openvpn, etc). Начали со всем этим, где-то года три назад. Проблемы были, но небольшие и они уже исправлены, последние где-то месяцев 10 я ничего не вспомню.
    Если вы хотите CI/CD, то смотрите в сторону kubernetes. Его главный плюс, что можно всем управлять через API. Мы к этой идеи тоже пришли и я буквально неделю назад закончил установку kubernetes'а на трех серверах у hetzner и начал туда переводить наши сервисы.
    У докера я вижу два главных преимушества:
    1. Очень чёткое разделение между данными и системой. Выводишь нужные данные на volumes и делаешь с них бэкапы. Если сервер сгорел, заливаешь образы для docker'а и накатываешь данные и готово.
    2. Повторяемость окружения.
    Ответ написан
    1 комментарий
  • Как запустить mysql в docker контейнере?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    docker-compose exec powder-mysql mysql аргументы
    Ответ написан
    4 комментария
  • Как установить Xhprof, если его не устраивает версия php5-common?

    @xtreme
    Снимаю порчу по SSH :)
    К сожалению, дебиана под рукой нет, но, насколько я помню, в aptitude можно было выбрать версию пакета, если запустить aptitude без параметров. В твоем случае надо просто поставить соответствующую версию пакета, у которой в зависимостях стоит текущая версия php.
    А вообще, на боевых серверах профилировать - как-то неправильно. Я бы, наверное, сделал отдельный сервер для профилирования, и потом либо без реальных коннектов обошелся, либо завернул часть боевого трафика.
    Ответ написан
    4 комментария
  • Что удобнее для программирования?

    @evgeniy_lm
    Существует такая наука - эргономика. Эта наука определяет параметры рабочего места в т.ч. и РМ программиста. Так вот согласно законов этой науки ноутбук не соответствует требованиям чуть более чем полностью.
    Программировать, как в прочим делать все что угодно за ноутбуком не стоит. Для работы нужен стационарный компьютер. В крайнем случае если тебе необходим ноут (частые поездки, работа вне дома и пр.) стоит подумать о покупке стандартной клавиатуры и монитора. Ноут начинающему программисту подойдет любой на какой хватит денег с учетом вышеизложенных рекомендаций.

    ПОМНИ! Ноутбук это не великое счастье, а неизбежное зло.
    Ответ написан
    Комментировать
  • Как в go получить результат sql запроса по частям?

    tiabc
    @tiabc
    Бизнес-партнер и консультант по технологиям
    Позволяет по дефолту, но не по тысяче строк, а в виде курсора, который двигается при каждом вызове rows.Next(), о чем подробнее можно прочитать в документации database/sql:
    https://golang.org/pkg/database/sql/#Rows

    Там же есть пример, который это иллюстрирует:
    rows, err := db.Query("SELECT ...")
    ...
    defer rows.Close()
    for rows.Next() {
        var id int
        var name string
        err = rows.Scan(&id, &name)
        ...
    }
    err = rows.Err() // get any error encountered during iteration
    ...


    Только в Go для конкретных баз данных написаны разные драйверы: https://github.com/golang/go/wiki/SQLDrivers
    И хорошо бы заранее проверить в исходниках, что драйвер, который вы используете, действительно использует курсор внутри, а не считывает, например, сразу все в слайс и выдает элементы из него по одному.
    Ответ написан
    Комментировать
  • Как лучше парсить большой объём?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. Зачем вы мучаете каждую минуту ресурс-донор?!!!!
    Если какие-то посты там мониторите, то достаточно мониторить RSS/Atom-ленту каждые 3-5 минут, а при появлении изменения - уже закачивать новый контент по линку из новости для дальнейшего парсинга к себе.
    2. Кравлер должен парсить Round-Robin'ом ("каруселью"): линк ресурса 1 -> линк ресурса 2 -> ... ->линк ресурса N->LOOP (начинаем сначала). А не проходить все линки ОДНОГО ресурса забивая ему канал!
    3. Качественный ресурс - необходимо кравлеру прикинуться обычным пользователем: не запрашивать часто, под одной сессией смотреть 5-6 слинкованных страниц.

    Тогда Вам спокойно хватит 2-3 прокси-адресов на долгое время.
    Ответ написан
    2 комментария
  • Как учитывать теги структуры при выдаче JSON в gin-gonic?

    @FireGM
    Для этого достаточно убрать пробел в в `json: "id"`. Должно быть `json:"id"`
    P.s. И для net/http ваш пример так же не работал бы.
    Ответ написан
    1 комментарий
  • Как вы считаете - переезд дата центра в рабочий день - это нормально?

    @hubramubr
    Да, это нормально.

    Более того - именно так и нужно делать, именно в рабочий день с утра.

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

    Переезд должен начинаться в рабочий день, причем именно с утра.

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

    Если уж вам так принципиальна доступность вашего сайта - то вы сами вручную создаете копию и включаете эту копию в другом датацентре на время пеезда.

    Я кажется знаю о каком хостере идет речь.
    )))

    Конкретно они:

    1. Предупредили за 2 недели.

    2. Предложили тем, для кого крайне важна безперебойная работа - специальные условия переезда (правда, со сменой IP-адреса).

    Для всех же ленивых клиентов -не требуется никаких телодвижений.
    Сидеть и ждать.
    Ответ написан
  • Как правильно построить структуру IT-компании?

    selivanov_pavel
    @selivanov_pavel
    Linux admin
    > Клиенты всячески не желают работать через Redmine, а стараются "ставить" задачи в skype и email.

    redmine вроде умеет заводить задачи по получению e-mail на определённый адрес. Потом достаточно в задачу отписываться, и на адрес прийдут соотв. уведомления. Через скайп формулировать задачу и скидывать в тот же redmine. В общем, задачу можно вести в тикетнице, и клиенту будут автоматически прилетать оттуда артефакты. Ну как все серьёзные компании делают: "по вашему обращению заведена заявка #NNNNN Вы будете уведомлены, когда что-то изменится".
    Ответ написан
    Комментировать
  • Как правильно построить структуру IT-компании?

    kumaxim
    @kumaxim
    Web-программист
    Первое - определите максимально четко сферу ответственности продажников и проджектов. Продажник для Вас ищет нового клиента: Директ, Авито, холодный прозвон и т.д. Находит - подписывает договор, выставляет счет, может быть берет деньги (если наличные), закрывает акт.

    Задача от клиента "А мне вот тут нужно еще красную кнопочку" - это вопрос к проджекту. Пускай сейлз прямо говорит клиенту, что все что идет после первоначального ТЗ обсуждается с проджектом. Он только по бумаге поможет, если надо будет(доп.соглашение, счет, акт).

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

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

    То, что у Вас сейчас (выросли из 2-х профи в целую компанию) называется кризисом молодого руководителя. Проходит он через 6-12 месяцев, кучу нервов, потраченного в пустую времени и денег. Вы набивайте шишки, нарабатывайте управленческий опыт. Может быть Ваша компания развалится, но как минимум знание о том как делать не нужно, Вы из этого вынесите.
    Ответ написан
    Комментировать
  • Расчет расстояния между точками?

    dimasmagadan
    @dimasmagadan
    вы не поверите
    но ровно первый запрос в гугле по "google maps api distance between two points"
    выдал ссылку на описание, как это сделать
    https://developers.google.com/maps/documentation/d...

    а запрос по "google maps calculate distance between 2 locations" (если вам нужно считать расстояние не по дороге, а напрямую между точками) первой ссылкой дал
    stackoverflow.com/questions/1502590/calculate-dist...
    там сразу кусок кода готовый
    Ответ написан
    4 комментария
  • Как в WordPress сделать вывод без шаблона?

    dimasmagadan
    @dimasmagadan
    несколько вариантов:
    1 добавить свой кастомный endpoint через Rewrite API
    сможете ловить запросы вида site.ru/wc-api/...
    2 использовать admin-ajax.php как точку входа
    отправлять запросы к site.ru/wp-admin/admin-ajax.php?action=wc-api...
    3 использовать кастомный роут для REST API
    что-то вроде такого site.ru/wp-json/wc-api/...
    4 повесить фильтр на page_template или что-то похожее
    подменять шаблон страница на нужный, если isset($_GET['wc-api']) && $_GET['wc-api']=='wc_plugin'
    5 повесить фильтр на вывод rss
    и выводить нужное, если isset($_GET['wc-api']) && $_GET['wc-api']=='wc_plugin' и обращаются вот так
    site.ru/hello-world/feed/?wc-api...
    Ответ написан
    Комментировать
  • Существует ли система управления Open Source проектом?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Просто добавьте их как разработчиков проекта на GitHub.
    Все изменения через pull request, чтобы как минимум 1-2 делали review.
    Идеи обсуждаются в issues, реализации в pull requests.
    Вы как автор проекта имеете право вето на изменения если того хотите, но в целом разработчики будут заниматься всем сами.
    Так же можно сделать организацию в GitHub, там более удобно можно разграничивать доступы.

    К примеру, есть проект HybridAuth, в какой-то момент разработчик перестал в нём что либо делать. Через некоторое время стало понятно что ещё немного и проект загнется - в итоге достучались до разработчика и он передал управление троим добровольцам - теперь они вместе с остальными разработчиками сами решают что и куда двигать. По сути ваша ситуация.
    Ответ написан
    5 комментариев