Задать вопрос
  • Как делается backend на Java?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Смотря на каком языке вам удобно кодить конечно же... И на рнр возможно, быстрее получится. Но если в целом владеете java, то можно создать бэкэнд на Spring Boot.
    Мне например, хватило примерно месяца, чтобы на основе этого видеоурока создать небольшой сайт.
    https://www.youtube.com/playlist?list=PLU2ftbIeotG...
    Но разумеется, что изучить полноценно Spring невозможно за месяц и многое придется осваивать еще очень долго...
    Ответ написан
    Комментировать
  • Как правильно маштабировать проект на Amazon AWS?

    crezd
    @crezd
    AWS solution architect
    Вообще то есть "best practices". Да, это использовать Load Balancer и Auto Scaling.
    А вот AMI можно приготовить или как говорят на западе в этом контексте "to bake the image". Есть очень удобный тул от Hashicorp - Packer. С его помощью можно сделать готовый AMI со свежей версией вашего проекта. Далее создаете новый ASG с этим AMI.

    Делаем релиз:
    Старый AS оставляем 100% и плавненько увеличиваем капасити нового AS, доходим до количества инстансов 100%. Трафик идет и на старые инстансы и на новые(со свежим кодом), смотрим логи, всё в порядке? Новая версия встала как надо? Тогда уменьшаем количество инстансов старого AS до нуля. Релиз закончился. Если что то не так с новой версией можно легко ролбекнутся на старую, и даже спустя время(час, день, неделя) можно сделать удобный и четкий роллбек на любой ваш релиз, благо все ASG у вас есть, капасити нужного релиза увеличиваем, не нужного уменьшаем. Это и есть zero downtime deployment. Кстати таким макаром удобно делать A/B тестирование.

    P.S создавать AS тоже можно делать удобно: terraform
    Ответ написан
    Комментировать
  • Как работает ИИ в играх?

    BasmanovDaniil
    @BasmanovDaniil
    Геймдизайнер-телепат
    Подходов к разработке ИИ много, конкретная реализация зависит от конкретной игры, где-то достаточно двух правил, которые реагируют на события, где-то нужно городить поведенческие деревья. Начинают обычно с конечных автоматов, как самых простых в реализации, далее по степени сложности идут поведенческие деревья и Utility AI, про все три можно почитать в статье на гамасутре. Помимо этого, можете почитать pdf-ки со статьями на сайте Game AI Pro. Если больше любите смотреть презентации, то можете заглянуть на канал GDC.

    Выполняется код в отдельных потоках или нет к разработке ИИ не относится, это просто оптимизация, которая используется по ситуации.
    Ответ написан
    Комментировать
  • Какой порядок обучения веб-верстке вы посоветуете?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    По вашим словам кажется, что вы понятия не имеете о том, какой инструмент для чего нужен. Так что рекомендую следующий план:

    HTML: практика -> Pug или любой другой препроцессор -> понять зачем он нужен -> микроданные -> wai-aria
    CSS: практика -> каждый день выкладывать один сверстанный компонент на CodePen -> всякое разное -> изучить внутренности normalize.css -> использовать autoprefixer -> изучать хорошие практики -> написать свою сетку -> познакомиться с БЭМ, RSCSS -> осознать полезность методологий -> препроцессоры (LESS проще, SASS моднее, есть еще много разных) -> PostCSS -> осознать разницу между пре-процессором и пост-процессором
    JS: ES6+ -> Babel -> понять смысл инструмента -> писать много велосипедов -> много велосипедов -> больше велосипедов богу велосипедов -> паттерны проектирования -> тестирование
    Gulp/Grunt и Webpack/Browserify: осознать разницу -> использовать по мере надобности -> научиться автоматизировать все, что можно автоматизировать
    Git, NPM: без комментариев

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

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

    Ну и умение задавать вопросы тоже лишним не будет.
    Ответ написан
    Комментировать
  • Какие есть обучающие ресурсы по фронтенд разработке?

    edward04
    @edward04
    Начинающий ninja frontend
    https://www.youtube.com/channel/UC7enHM_oJRYJOnyJr...
    https://www.youtube.com/channel/UCZeU17nbVfzczAkJV...
    https://www.youtube.com/channel/UCHHw70vvbfyM6xJQo...
    https://www.youtube.com/channel/UCIIt69f5D44s2cdb9...
    tohtml.it/post/74511047203/markup-process

    По нему скучаю искренне и иногда сижу на подоконнику с лате и смотрю на капли дождя, стекающие по стеклу:
    https://www.youtube.com/channel/UCdnFX7mzgup9moXG2...
    Это для общего развития:

    https://stepic.org/course/%D0%90%D0%BD%D0%B0%D0%BB...

    Похожий вопрос:
    Какие задачи нужно уметь выполнять на JS начинающему?

    Ваша библия:
    https://developer.mozilla.org
    Можно докинуть еще:
    webref.ru
    htmlbook.ru
    Просто случайная ссыль
    https://docs.google.com/document/d/1kehaJKKRo7zxYp...
    Еще одна:
    https://github.com/ihorzenich/html5checklist
    Еще какая то штука
    https://github.com/dypsilon/frontend-dev-bookmarks
    Лучшие практики тостеровцев
    Как вы начинаете вёрстку сайта?
    Инструменты
    fredsarmento.me/frontend-tools

    После пары часов выпускания пара из ушей, включить на всю громкость и хоть как то отвлечься от этой жизни
    https://www.youtube.com/channel/UCY0C6A3t3RTUN3BB6...

    На freecodecamp.com неплохо алгоритмы можно потренить

    Ну и конечно
    learn.javascript.ru

    PS
    еще это
    Какие ресурсы с новостями по web-разработки вы знаете?

    PSPS
    Не отвечаю за качество контента под ссылками, может кое что уже outdated.

    https://vk.com/video79753760_171233585

    Удачи, брат
    Ответ написан
    4 комментария
  • По какому принципу создавать приложения django?

    @pacahon
    FYI: Про структуру приложения хорошо написано в Two Scoops of Django: Best Practices for Django 1.8 Да и в целом, если будете писать на django, рекомендую к прочтению. Содержит много полезных ссылок.
    Про философию django можно здесь почитать https://docs.djangoproject.com/en/1.8/misc/design-...
    Ответ написан
    Комментировать
  • Как найти удалённую практику для начинающего python программиста?

    @VictKor
    Игровая индустрия, 3d моделирование
    Вот она извечная проблема начинающего специалиста:) Может попробовать войти в какую-нибудь открытую команду? Это и опыт и знакомства (но вряд ли деньги). Питон он ведь используется не только для веб. Возьмите интересующее вас направления и смотрите на форумах объявлениях о наборах в команду. Допустим, Python используется для скриптов для Blender, его аналог (Boo) на Unity (я кружусь в game dev'е, вот и советую свое).
    Ответ написан
    5 комментариев
  • Как переквалифицироваться из эникейщика в программиста?

    Ronnie_Gardocki
    @Ronnie_Gardocki
    Я у мамы фронтендщик.
    23 года? И столько тлена в словах? Ну ловите мою кулстори, у меня тлена в 23 было куда больше...
    Чуть менее двух лет назад, летом 2013, мне было 23, и я имел НОЛЬ опыта работы (если не считать 2 месяца стажерства в магазине комп техники по практике от универа). Кое-как устроился seo-шником в местную веб-студию, даже не зная что это за работа, во время отправления резюме (гуглил после уже). Конечно, как только приступил к работе, сразу понял что seo это не мое, но это помогло мне через 3 месяца на том же месте стать веб-джуниором. И вот я стал джуном, имея за плечами 4 курса на codecademy и одну, плохо прочитанную, книгу. С космической зп в 12к рублей! Через 5 месяцев я уже приступил к работе по удаленке с другими людьми, где платили 30к, и при этом можно было работать по 15-25 часов в неделю. Это позволило мне читать все интернеты на тему фронтенда, а потом, самое важное, пилить демки на кодпене, засиживаясь до ночи. В марте уволился, отдохнул, и в апреле начал очень лениво заполнять профили на зарубежных фриланс биржах. А потом на меня внезапно свалилось подобие сарафана из-за моих демок, и люди просто стали писать мне с предложением что-нибудь запилить, хотя профили я так и не запилил на биржах. Сейчас пилю 2 проекта, с рейтом в 30$/h, для клиентов пустяковая цифра, а для моего Архангельска это вообще какой-то криминал :)
    Ну а вам, с вашим имеющимся бэкграундом, вообще не знаю чего бояться. Проблемы могут быть, только если окажется что программирование это "не ваше". Если же вы любите это дело, то просто садитесь, и начинайте пахать. В первую очередь на свое саморазвитие, поначалу я бы даже посоветовал искать что-то с удобным графиком/местом работы, ибо "неудобная" офисная жизнь убивает весь энтузиазм как правило. А без энтузиазма на старте никуда не уехать.
    Ответ написан
    16 комментариев
  • Как набрать проекты для портфолио Full stack PHP developer?

    codingal
    @codingal
    Front end и не только
    Если 7 лет опыта, то потратьте выходные или неделю на хоть какое-то КРУД-приложение - что угодно, туду-лист, менеджер закладок, посмотрите на апи какого-нибудь стороннего сервиса и напишите мелкое приложение, которое оттуда будет что-то вытягивать и чтоб с фильтрами, а код на гитхаб.
    По сути, смена специализации - это ваша личная проблема, в которую заказчики вникать не обязаны.
    Покажите свой код, что вы можете и умеете делать работу, в первых заказах сыграйте на срочности - бидьте в числе первых на срочные и дорогие заказы, так вы обойдете людей с рейтингом и отзывами.
    Ответ написан
    Комментировать
  • Какую литературу можно почитать по вопросам: как организовать обучение и эффективно использовать время?

    LiliaV
    @LiliaV
    программист, начинающий сисадмин
    Выделить конкретную задачу и тратить на нее какое-то четко определенное количество времени в день. Таких задач в течение дня может быть несколько.
    Например:
    Я учу испанский 1 час в день, но каждый день. Чтобы закрепить привычку нужно это действие повторять в течение 21 дня, дальше без этой привычки уже даже как-то некомфортно начинаешь себя чувствовать.
    Ответ написан
    1 комментарий
  • С помощью чего прокачать навыки в области создания устройств методом паяльника + программирования?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    В этом деле есть сразу три теоретических направления:
    -программирование, причем системное, а не прикладное.
    -электроника, которая делится на цифровую и аналоговую.

    Соответственно, изучать придется все три направления разом + математику, которая под этим всем лежит.

    Из математики придется подтянуть комбинаторику и математическую логику. Это минимум, чтобы только "встать на старт"

    Из программирования - понадобятся ассемблер и C. Ассемблер можно изучать при помощи замечательного отладчика в AVR-Studio. Материалы -
    easyelectronics.ru,
    сайт Николаева (автора программатора uniprof)
    И еще один сайт, для любителей web 1.0 zps-electronics.com

    Из цифровой схемотехники - вышеназванный easyelectronics и замечательная книжка Пей Ан - Сопряжение ПК с внешними устройствами

    Аналоговая электроника - Хорвиц и Хилл - искусство схемотехники.

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

    Для практики следует собрать:
    Двухтранзисторный мультивибратор. Это такой Hello World! для электронщика
    Кучу схем с применением легендарной К155ЛА3

    Где-то после этого можно пытаться браться за микроконтроллеры.
    Ответ написан
    9 комментариев
  • Какую литературу можно почитать по вопросам: как организовать обучение и эффективно использовать время?

    @Evsign
    Для начала потратить ~ 1 неделю для составление плана обучения. В моём случае - список компетентной и актуальной литературы.
    День проходит по алгоритму:
    1. Проснулся
    2. Помылся, поел
    3. Читать
      • После каждой прочтённой главы составляю карточки в anki по главным и ключевым моментам
      • Если требуется гуглю задачи по теме и решаю до посинения. Пока не будет уверенности в том, что делаю

    4. Вот и обед уже
    5. Продолжаю чтение
    6. Ужин
    7. Чтение
    8. Поскролить пару сайтов
    9. Сон

    Бывают дни, когда чтение полностью заменяется на решение задачек.
    Когда заканчиваю очередную книгу, то прохожу все карточки по предыдущей. Таким образом получается слияние знаний из нескольких сфер или дополнение новых к уже полученным.
    Все эти вещи индивидуальны ... Не вижу смысла тратить время на поиск литературы для обучения обучению. Это бред... Секрет такой: 100% свободного времени посвящать изучению чего-то нового и если чё-то надо, то берёшь и учишь/читаешь. Независимо от обстоятельств... Пока ты будешь этой хуйнёй оптимизаторско-мотиваторской заниматься и спрашивать как учиться/заниматься/пердеть, я очередные 100 стр в книге прочитаю)) Успехов)

    UPD.
    Ну если всё таки хочешь по-просирать время на изучение того, что в 99% потом применять не будешь, то есть книги:
    1. Классика:
      • Getting Things Done

    2. Какая-то чебуйхня:
      • Джош Вайцкин "Искусство учиться"

      Думал больше вспомню))
    Ответ написан
    2 комментария
  • Какую литературу можно почитать по вопросам: как организовать обучение и эффективно использовать время?

    @tomcat1911
    >как успевать читать, практиковаться программировать и учить язык

    Нет смысла делать это по отдельности. Приведу пример, как делаю сам.
    1) Ищем туториал (пошаговое создание чего-нибудь), проходим, попутно улавливая основы.
    2) Делаем что-то свое, глядя в доки, гугля и т.п.
    Потом уже можно и книжки более глубокие почитать для большего понимания.
    Ответ написан
    Комментировать
  • Как супер эргономично организовывать работу?

    ColCh
    @ColCh
    Веб разработчик
    Хааа, кто-то обязательно задумывается об этом. Хотя бы когда-нибудь.

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

    Я храню пароли в запароленной базе KeePass. Для того, чтобы не копировать пароли в\из браузера, есть плагин для Chrome.

    Для SSH и GIT использую запароленные ключи RSA.

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

    Я кое-где читал, что секрет написания больших приложений заключается в том, что "нет никаких больших приложений".
    Нужно уметь разделять функционал по маленьким модулям - тогда всё будет даваться легче.

    Этому можно научиться и на мелких программках. Главное - научиться правильно разделять проект на независимые модули.

    Ну и ещё хочу посоветовать ... тестировать свой код. Раньше я не тестировал ничего - х*як х*як и в продакшн, как говорится.
    Поначалу было все хорошо - вручную прошелся по функционалу сайта; все работает.
    Но потом, в один прекрасный момент, число используемых модулей достигло числа ~1300, а число фишек (функционал) во много раз увеличилось...
    Ну и как сами поняли, тестировать вручную этот ад нереально. Раньше я тестировал сайт от руки около 30 минут, когда тесты выполняются 3 секунды. Чувствуете разницу?

    Так что я советую параллельно с изучением разделения кода на независимые модули изучать так же и тестирование кода.

    Конкретно, как там что и куда - что куда вынести и как это затестировать - нельзя сказать. Это приходит с опытом, к сожалению :( ... так что лучше "стрелять зайцев" на мелких проектах, где понятен состав проекта и можно перерабатывать код, сколько угодно.

    Исчо, советую автоматизировать всё, что можно. Например, сборку проекта, сжатие, тестирование, непрерывная интеграция и т.д.

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

    Я приноровился работать по технике Помидора - 25 минут работаю, 5 отдыхаю. Под конец для себя уставшим почти не чувствую. Когда работал "взахлёб" , т.е. в режиме потока, под конец дня чувствал себя, как выжатый лимон ...

    Ну и изучаёте GIT, GitHub (или BitBucket), учитесь Git Flow и разделению разработки по фичам. Тоже очень полезная вещь.

    Насчёт стульев и т.д. - из-за зарядки, которую я делаю за 5 минут отдыха (между Помидорами), мягкие места не болят :)

    Надеюсь, не сильно от темы потрепался, и мои псевдосоветы будут полезными.
    Ответ написан
    Комментировать
  • Как супер эргономично организовывать работу?

    gephaest
    @gephaest
    PHP, Yii2, Laravel
    Не так давно я тоже задумался над вопросом- как же стать более продуктивным и успевать делать больше? На эту тему можно написать целый трактат, но в рамках ответа обойдусь списком базовых вещей, которые реально сделали меня более продуктивным (вы говорите про эргономичность, но я вижу, что на самом деле вас интересует именно продуктивность).
    Начнем!
    Я обнаружил, что самый сильный прирост в произодительности дали три вещи:
    • Здоровое питание
    • Физические нагрузки
    • Полноценный сон

    Это фундамент высокой продуктивности. Не имеет никакого смысла возводить какие либо другие привычки для повышения продуктивности, если весь дом стоит на хлипком основании. Малейшая стрессовая ситуация и вы возвращаетесь к старому образу жизни.
    Я читал множество комментариев к статьям про различные техники по повышению продуктивности, в которых пользователи жаловались, мол техники не работают. Да, есть вещи, которые для некоторых людей не работают, но правда в том, что 98% людей не сильно отличаются друг от друга. Довольно странно считать себя Д'Артаньяном по всему спектру вопросов :)

    Здоровое питание
    Еда, которую мы употребляем это топливо. Если топливо низкого качества организм будет сбоить и работать не на полную мощность.
    Я начал с того, что сел на диету. На текущий момент я сбросил около 15 кг. Диета так же полезна тем, что прививает вам правильные привычки питания. К ее концу я уже практически перестал напрягать силу воли, чтобы держаться подальше от быстрых углеводов и сладкого.
    Если у вас нет проблем с лишним весом, то задача упрощается, поскольку нет нужды тратить на диету 3-6 месяцев. Тем не менее для любого человека важно питаться здоровой сбалансированной пищей.
    Если у вас лишний вес- избавитесь от него. Но любом случае прививайте правильные привычки питания

    Физические нагрузки
    "В здоровом теле здоровый дух" - гласит известная поговорка. Это на 100% верно, я убедился в этом на своем опыте и опыте друзей. Во-первых физические нагрузки это способ тратить лишнюю энергию (калории), полученную из пищи. Во-вторых вы улучшаете свой мышечный корсет, так к примеру уменьшается нагрузка на позвоночник. Также физические нагрузки увеличивают объем "топливного бака" для мотивации, силы воли и т.п.. Я не знаю, почему это так, но это работает.
    Примерно через полтора месяца тренажерный зал стал для меня уже постоянной привычкой- если я по каким то причинам пропускаю занятия, то чувствую себя дискомфортно. Ввести в свою жизнь постоянные физические нагрузки не так сложно. Если вы хотите этого считайте половина дела сделана!
    Регулярно занимайтесь физическими нагрузками. 2-3 раза в неделю посещать тренажерный зал может каждый.

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

    Думаю я мог бы написать более развернутую статью на мегамозг с продолжением про конкретные техники и инструменты, которые работают, но не уверен, интересно ли это будет публике
    Ответ написан
    Комментировать
  • Как супер эргономично организовывать работу?

    @Arseniy_Ovsyannikov
    у меня в кармане всегда лежит список: три вещи которые мне нужно сделать дома
    и три вещи которые нужно сделать на работе

    с этим списком я научился ставить нужные задачи и не забывать о том зачем я все это делаю
    Ответ написан
    Комментировать
  • Как супер эргономично организовывать работу?

    @thatside
    Из моих подходов:
    1. Программы - предпочитаю пробовать все популярные варианты. В основном то,что не нравится - отсеивается быстро, на уровне "не мое"
    К ускорению работы с ними привыкаю с помощью клавиатуры - запоминаю несколько основных сочетаний клавиш, а дальше новые и новые. Вот недавно для PHPStorm распечатал лист со всеми сокращениями, удобно.
    2. Все данные по работе записываю в электронный блокнот. Раньше пользовался Google Keep, но сейчас оставил его для мелких заметок, а для крупных - OneNote.
    Ответ написан
    3 комментария
  • Как супер эргономично организовывать работу?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    "Пузырьковый" метод приоритетов.
    Какой важнее тот и делайте в первую очередь.
    Можно сделать график в виде матрицы в excel-e.
    Ответ написан
    1 комментарий
  • Шифрование разговора на лету?

    @sdeman
    viber при плохом интернете отлично работает в качестве отправки голосовых сообщений(типа рация), но не всегда безопасно, т.к. сообщения на отобранном телефоне без доп защиты просто прослушать.
    Шифруют голосовые сообщения surespot encrypted messenger(2fours) и telegram.

    whispersystems.org специально для voip звонков и текcта делался.
    Для voip звонков можно использовать типа CSipSimple - Secure call with TLS transport for SIP and SRTP or ZRTP for media.

    Оптимальный вариант с зашифрованными голосовыми сообщениями, как дополнительное удобство - одновременно несколько человек получают:
    Wickr способном защитить от перехвата и дешифрования текстовые и графические,аудио,видео сообщения (исключая голосовых переговоров).

    Возможно появятся голосовые сообщения у текстовых с шифрованием:
    TextSecure, Surespot, Safety Jabber - только сообщения шифрует, BitTorrent Chat, Tor разрабатывает свой защищённый мессенджер.

    Есть ещё режим в Off-The-Record (OTR) для "безопасного" обмена сообщениями например в im+

    Напрямую шифрвание gsm звонка используя android не встречал
    Ответ написан
    Комментировать