• Как стать хорошим Big Data / Data Scientist'ом в России?

    ZloyHobbit
    @ZloyHobbit
    Смотря что вы понимаете под "хорошим DS специалистом".
    В идеале для этого надо окончить сильный технический вуз, отлично знать матанализ, линейную алгебру (матрицы это туда), дискретную математику, математическую статистику, теорию вероятности, теорию алгоритмов, и.т.д. и.т.п.
    А потом знать R, python, с++ и все используемые в работе библиотеки и инструменты.

    Проблема большей части курсов, от того же ШАДа, что они раситчаны на студентов физтеха, которым уже дана очень серьезная математическая подготовка. Большая часть людей, прослушав эти курсы, научится применять стандартные инструменты в стандартных ситуация, абсолютно не понимая, какая математика за всем этим стоит, и как ее можно модифицировать. Это не специалисты, а ремесленики дата сайна, которых на хайпе расплодилось очень много.
    Хотите быть крутым исследователем - учите математику и становитесь математиком.
    Ответ написан
    10 комментариев
  • Каковы этапы разработки игры?

    BasmanovDaniil
    @BasmanovDaniil
    Геймдизайнер-телепат
    Наиболее популярная схема деления это:
    1. Прототипирование
    2. Пре-продакшн
    3. Продакшн
    4. Закрытый бета-тест
    5. Soft launch
    6. Релиз

    Фаза прототипирования подразумевает написание кучи маленьких прототипов, которые выражают какую-то часть будущей игры. Например, у вас есть идея классного управления для персонажа, которое станет основной фишкой. Берёте и делаете на кубиках пяток вариантов реализации, убеждаетесь, что идея годная/какашка, продолжаете/прекращаете разработку. Суть этого этапа - минимальными средствами в кратчайшие сроки проверить все свои предположения и, если повезёт, найти новые идеи.

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

    Продакшн это этап, во время которого выполняется основная работа. К этому моменту вы уже чётко знаете что, сколько и как вы делаете. В этой фазе уже нельзя менять планы, все эксперименты надо было делать раньше. Конечно, может получиться и так, что несмотря на все усилия спустя месяцы и годы игра не складывается, в таких случаях процесс разработки откатывают на шаг-два назад. Например, так было с Prey, Overwatch и Rainbow Six Siege.

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

    Мягкий запуск это по сути открытый бета-тест, но, в контексте мобилок и социалочек, игроки могут даже не знать в какую игру играют. В мобильной разработке популярна практика запуска игр на малых рынках под другим именем. Например, в какой-нибудь Новой Зеландии с другими иконками. Это позволяет дать игру в руки реальным пользователям, но в случае провала не портить репутацию своей компании. Во время этого этапа тасуют кнопки в интерфейсе, развлекаются с A/B-тестированием и в целом пытаются оценить возможные результаты от полноценного релиза. Если прогнозы печальные, то игру могут и похоронить, чтобы не тратить впустую деньги на продвижение.

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

    Что касаемо экономики игры, она должна быть описана хотя бы в общих чертах к середине пре-продакшена. Монетизацию нельзя просто взять и прилепить к игре, все механики должны её поддерживать. Например, вы решили, что будете делать фритуплей. Какой фритуплей? Если будете продавать шапки, то все купившие шапки должны иметь возможность ими хвастаться перед другими игроками. А раз нужно хвастаться, то скорее всего нужна фича или две, следовательно, программисты должны о них знать как можно раньше. Опять-таки никто не мешает сделать прототип монетизации, хоть на бумаге.
    Ответ написан
    2 комментария
  • Стоит ли идти на русские биржи фриланса?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    Общайтесь через переводчики, простыми фразами, для начала будет достаточно в процессе и язык подучите. В принципе если очень хочется можно и на русскоязычных биржах работать, но цена таска там выходит ощутимо ниже чем на глобальных. Чтоб хватало на жизнь зависит от ваших запросов, места проживания и что вы умеете делать. Можно и за пол года рейтинг набить хороший и за пару лет не вылезти из 10 баксовых тасков, только от вас зависит, но приготовьтесь с пол года жить на свои накопления, первые задачи сложнее всего получить и за них мало платят, если вы не спец экстра класса, у которого есть имя за пределами биржи.
    Ответ написан
    4 комментария
  • Какое перспективное направление в программировании для фриланса и иммиграции?

    afanasiy_nikitin
    @afanasiy_nikitin
    путешественник туда-сюда
    Во-первых, хотел бы порекомендовать книгу Чеда Фаулера "The Passionate Programmer: Creating a Remarkable Career in Software Development" (на русском: "Программист-фанатик", Питер, февраль 2015). Несмотря на свое название, она не столько о программировании, сколько о личностном росте, саморазвитии и прагматичном стремлении к совершенству, читать рекомендуется всем и каждому.
    Во-вторых, есть масса аналитических исследований в области IT, в последне время их особенно много из-за "кризиса", например ...о стагнации, образовании и востребованных профессиях.

    Если думаете об эмиграции (а выезд заграницу на ПМЖ это именно эмиграция), то тут есть 2 нюанса.
    Первый заключается в самой сложности переезда в другую страну с другими законами, налогами, климатом, языком, культурой, и тд, а тёплых мест хватает и в России (об этом миллион статей на том же Хабре).
    Второй - переезжать в другие страны имеет смысл в том случае, если вы собираетесь работать на окладе в офисе, например в крупной европейской/азиатской компании на высокой должности на территории работодателя. Фрилансеру же реальная польза от пеерезда весьма сомнительная (опять же, налоги в России - одни из самых низких).

    По поводу трендов и языков могу сказать следующее: если вы собираетесь жить и работать со стратегическим расчетом на карьерный рост, развитие и прибыльную должность в отдаленном будущем, то стоит задуматься о сложных, но актуальных технологиях, нацеленных в первую очередь на крупный бизнес (биржи, банковский сектор, системы аналитики и прогнозирования, ИИ, инетрнет вещей, etc.).

    Сейчас мир программирования равивается в двух основных полярных направлениях: низкоуровневое - ПЛИС и самодостаточные микроконтроллеры ("умная железка в каждую вещь"), и, противоположное ему - высокоуровневое проектирование и ФП. В первом случае много физики, во втором - матана, дискрета, теории категорий и всего такого.
    Лично мне ближе второй вариант, поэтому я для себя выбрал технологии, основанные на Java (почему именно Java - пояснил ниже в комментарии): Scala, Lift, ФП, функционально-ориентированное проектирование, мета-программирование, DSL, вот это всё.

    По поводу "готовых решений" лично я наблюдаю обратный процесс: люди стараются отказываться от универсальных готовых решений в пользу гибких, компактных и заточенных под конкретную бизнес-логику (опять же DSL и DDD).
    Но начать всё же рекомендую с Фаулера. Затем Р. Мартин "Clean coder" (на русском "Идеальный программист. Как стать профессионалом разработки ПО"), само собой МакКонелл, Крэг Ларман, и прочие бестселлеры.
    Да, и не забудьте книгу Грега МакКоена "Эссенциализм...", очень полезная вещь в наше время. Личностный рост и саморазвитие сейчас не менее важно (а иногда и важнее) просто "программирования".
    Ответ написан
    8 комментариев
  • В сфере IT для новичков нет перспектив?

    @nApoBo3
    Это сложный вопрос. На первый взгляд на низовых позициях в ИТ дикая конкуренция. С другой стороны, она дикая но совершенно беззубая, поскольку уровень кандидатов соответствует дворнику.
    Месяц назад искал себе помощника помощника, кандидатов море, уровень ниже плинтуса, не знают ничего совсем, две кнопки выучили и вот уже ИТ специалист.
    Работа, это все таки не школа и не институт, тут вы в замен тоже что-то должны дать, т.е. должны делать какую-то работу полностью самостоятельно и с должным качеством. Если вы что-то умеете делать самостоятельно и полностью понимаете процесс, то вот такую работу и ищите. То что кто-то может next, next, finish, поставить windows ИТ специалистом данного человека не делает.

    Вот и получается, конкуренция дикая, но среди перспективных ее практически нет.
    А перспективные это те, кто понимают, чтобы получить нужно сначала вложить, и много, и регулярно вкладывают в себя.
    Ответ написан
    3 комментария
  • Какая должна быть посещаемость сайта?

    DIHALT
    @DIHALT
    Адсенс это так, на пиво. Яндекс директ немного получше, но тоже копейки. А вот продать тематическое место это уже существенно.

    У меня около 10к в сутки. Директ дает около 200 баксов в месяц. Тематика — электроника.
    Ответ написан
    3 комментария
  • Разработка электроники VS веб-разработка: куда податься?

    @GRISCOM
    Электронщик, программист
    Я например начинал с электроники, потом начал использовать МК, перешел плавно в программирование, потом в веб разработку. И сейчас бывает иногда, что проекты сам под ключ делаю, начиная с того что свою плату для терминала разрабатываю и паяю, и заканчивая написанием серверного софта и веб интерфейса для работы сети этих самых терминалов. Однозначно программирование более комфортный и высокооплачиваемый вид заработка. Но знание электроники, дает неплохое преимущество. Даже если вдруг экстренная ситуация, сервер допустим накрылся бп к примеру или на мамке что то, разобрал, продиагностировал, отремонтировал, запустил.
    Ответ написан
    Комментировать
  • Разработка электроники VS веб-разработка: куда податься?

    begemot_sun
    @begemot_sun
    Программист в душе.
    Я бы сказал так:
    Сейчас каждый дурак веб-разработчик с супер пупер умениями аля php/apache/mysql/memcache/redis/mongo/yii/symfony/python/highload и т.п.

    Вакансий, да много, но и большая конкуренция. С другой стороны вот вы знаете ТОЭ, разводку плат, схемотехнику, ОУ и т.п. ? А многие этого не знают. Я скажу так, программистов как грязи, железячников меньше, так почему бы не быть программистом-железячником ? Попробуйте идти в разработку для микроконтроллеров, Arduino, VSDL и т.п. ведь программист-железячник это лучше чем просто программист, и просто железячник.

    Т.е. основная мысль -- не терять специализации. Даже веб-программист может специализироваться на миллионе вещей.
    Ответ написан
    Комментировать
  • Разработка электроники VS веб-разработка: куда податься?

    @Mirn
    Сам занимаюсь программированием для железок и для ПК в том числе.
    Работаю в фирме а так же делаю свои "умные" часы в свободное от работы время. И вижу чего добились другие так же, и вижу что большинство успехов связано либо с железом либо с совмещением железа и софта. Никому не нужен пятсотпервый ещё один "классный архиватор", но все хотят какие нибудь качественные и надёжные гаджеты, предметы, и просто порой качественную мебель которая не пахнет и не токсична (для детей). Все устали от китая, очень устали, не везде есть икея.

    Если делать свой бизнес то по-моему только связанный с товаром или электроникой.
    Для этого даже не нужно сильно дорогое оборудование, на работе стоит из дорого осциллограф лекрой за 300к, и отладки для ПЛИС за 30к. Но можно вполне спокойно найти usb осцилл за 20к уже приличный, остальное на 10к потянет.

    У электроники ещё есть плюсы:
    1. Однозначно проще веба
    2. Реально сделать что-то самому.
    3. Реально растиражирвать и получить прибыль быстро, и вложить её в развитие.
    4. Среда в которой крутится твой код не поменяется если сам не сменишь МК/ПЛИС/Распебри/Ардуину. Поэтому сойдёт даже быдлокод - главное чтоб у клиента работало,
    5. Поэтому можно быстрее проверить чем веб.

    Двоём даже можно сделать такое:
    https://www.youtube.com/watch?v=gnjd8yujyKE
    https://www.youtube.com/watch?v=J6XkECIYV3I
    Мы сделали за три года, тратя в среднем 2 часа в день.

    PS. "-малое количество компаний, отрасль слабо развивается" - это плюс, ниша не занята, дерзай! Делай!
    Ответ написан
    1 комментарий
  • Что изучать, на что тратить свободное время, чтобы в будущем стать востребованным программистом с нормальным заработком?

    lexxpavlov
    @lexxpavlov
    Программист, преподаватель
    Ответ на вопрос будет сильно зависеть от того, в каком направлении вы думаете развиваться.
    Будет ли это сетевое программирование? Тогда это си, в основном.
    Может быть, веб-программирование? Тогда тут могут быть php, javascript, python, ruby.
    Захотите разрабатывать программы на десктоп? Вам нужны c# или java.
    На мобильные платформы? тогда java и objective c (плюс swift).
    Или податься в разработку игр? Тогда либо c++, либо с# (для Юнити - наверное, самой популярной платформе).
    Хотите экзотики? Приглядитесь к функциональным языкам - Erlang и Haskell.
    Разработка железа и драйверов для железа? тогда си (без плюсов) и ассемблер.
    Определитесь, что вы хотите, потому что всё объять не получится. Выберите один (или два) направления и добейтесь хорошего уровня в нём. А потом вам будет уже легче двигаться дальше.

    Мой совет - попробуйте изучать C# или Java (они во многом похожи) для софта, или Javascript и php/python для веб-приложений и сайтов.

    Добавлю, что очень правильный совет дал @tsarevfs - помимо языка программирования, хороший программист должен знать несколько инструментов - и в первую очередь, это система контроля версий, например, git. Плюс юнит-тестирование (хотя это можно начать изучать позже, через годик-два). Плюс - нужно хорошо знать свою IDE, в которой работаете; не вздумайте работать в блокнотиках!

    Ещё помимо практики нужно знать теорию - читайте Макконнелла, Фаулера, Мартина, Бека.
    Подпишитесь на хабре на пару десятков хабов и регулярно читайте всё подряд. Через годик ваш уровень понимания статей сильно вырастет.

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

    UPD. Важное дополнение из обсуждения в комментариях (спасибо @Argentum88 @Deerenaros )
    Чтобы стать профессионалом и "востребованным программистом с нормальным заработком", нужно очень хорошо понимать внутреннее устройство тех систем (платформ, фреймворков), на которых идёт работа.
    Для этого нужно заглядывать вглубь. Изучив различные мейнстрим-инструменты, посмотреть на аналогичные менее популярные системы. Изучать исходный код используемых open-source библиотек. Написать свою подобную систему. Для web - написать свою CMS (хотя бы базовую). Для десктоп-программ - попробовать программировать без навороченных библиотек, которые делают рутинную работу за программиста. Для разработчика игр - сделать простую игру на базовом инструментарии платформы, где всё придётся делать своими руками.
    Всё это даст возможность проникнуться, почему всё делается именно так, даст понимание взаимосвязей разных частей программы.
    А потом, осознав это, выбрать один из уже готовых инструментов, и продолжать писать на нём, уже обладая более глубоким его пониманием.
    Ответ написан
    21 комментарий
  • Где можно посмотреть проекты и вообще что-нибудь интересное по электронике?

    veydlin
    @veydlin
    Мне никогда не жалко средств на свое любопытство
    Комментировать
  • Как кто пробился на фриланс-биржах?

    kumaxim
    @kumaxim
    Web-программист
    Лично я вижу проблему самой большой рыбы в маленьком пруду.
    Я думаю, что до этого ты работал в офисе, возможно, джуном. По какой-то причине ты ушел из команды и ты решил зайти на фриланс, например, на upwork и споткнулся.

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

    Ценность - это некий товар или услуга, которая помогает другому человеку решать его задачу. Ты написал, что

    Специализируюсь на верстке адаптивных сайтов - bootstrap, flexbox, контент-менеджменте.


    Однако, это не ценность, а твоё умение, которое ты хочешь монетизировать. Ценностью для твоего клиента будет целевой покупатель, которого он закроет через свой сайт. Сайт - это один из элементов его воронки продаж. Он - это один из источников его покупателей. Следовательно, когда ты говоришь техническим языком, ты цепляешь только тех.специалистов на бирже и отсекаешь всех остальных людей, которые в этом не разбираются.

    ОК, давай сменим твой оффер, с "Специализируюсь на верстке адаптивных сайтов - bootstrap, flexbox, контент-менеджменте." на "Создание продающих веб-сайтов, адаптированных под ПК, планшеты и смартфоны".

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

    Затем, начинаешь откликаться на проекты. В первом этапе твоя задача взять 10 работ, причем все равно с каким прайсом, пусть хоть $10. Сейчас, ты нарабатываешь фидбек от других пользователей. На любой бирже есть два типа людей: те, кому надо подешевле и те, кому надо. Сначала, ты работаешь на 1-ю категорию. На 2-ю ты переключишься попозже.

    Закрыв 10 проектов у тебя появляется опыт и понимание того, какие вообще люди обитают на Upwork и каковы их потребности. Ты поймешь, сколько вообще одна работа у тебя занимает времени, какие могут быть задержки во время исполнения, что вообще надо клиентам и т.п. У тебя появится понимание общей картины происходящих событий. После 1-го этапа люди увидят, что ты не просто можешь языком молоть, но и действительно умеешь делать то, о чем заявляешь.

    Далее ты либо работаешь с оффером(увеличивать цену, сделать какие-то доп.ценности) либо меняешь нишу и повторяешь сначала.
    Ответ написан
    5 комментариев
  • Стоит ли заниматься ремонтом цифровой техники?

    @yayashitoya
    Хочу спросить, кто в теме, реально ли такие высокие зарплаты? В чем вообще заключается сложность работы и трудно ли освоить ремонт?

    Вы совершаете банальнейшую ошибку:

    • Есть низкоквалифицированные низкооплачиваемые специалисты.
    • И высококвалифицированные выскокооплачиваемые.


    От того, что кому-то платят много - вовсе не означает, что так платят любому неумехе.

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

    К тому веду: чтобы хорошо платили - нужно быть специалистом.
    Чтобы стать специалистом - нужно время.

    Есть, впрочем, отрасли-исключения.
    Но не надолго.

    Просто подумайте:
    Если где-то работать совсем уж легко можно любому человеку с улицы и платят много, то как скоро эти "с улицы" заполнят и переполнят рынок труда по данной специализации?
    Ответ написан
    Комментировать
  • Электроника. С чего начать?

    R6MF49T2
    @R6MF49T2
    радиоинженер
    easyelectronics.ru/
    we.easyelectronics.ru/
    datagor.ru/
    www.uschema.com/
    marsohod.org/
    diy.elektroda.eu/
    licrym.org/

    Из того куда заглядываю время от времени.

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

    @komjaga
    Программист встроенного ПО
    Посоветую классику "Искусство схемотехники" П. Хоровиц, У. Хилл
    www.ozon.ru/context/detail/id/4446097

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

    @LampTester
    Специальность в самом общем случае называется "инженер-разработчик", "инженер-конструктор", "инженер-электронщик", "разработчик РЭА", "эмбеддер"/"инженер-разработчик встроенных систем".

    Однако учтите, что в реальности над условным летающим костюмом работала бы целая команда - электронщики, конструкторы, программисты, специалисты по двигателям, аэродинамике, сервоприводам, технологи, промышленные дизайнеры, etc. А еще монтажники и рабочие. В одиночку такие вещи можно сделать только в кино. :)

    Кроме того, если вы ожидаете, что придете в ВУЗ, а там вот так вот бац - и научат быть классным разработчиком, я вас разочарую. Сам я, когда шел на радиофакультет, тоже думал, что встречу там что-то типа радиофорума, этакой тусовки понимающих и увлеченных людей, однако добро пожаловать в суровую реальность:

    • большинство обучающихся сами не понимают, зачем пришли на специальность - поступили просто потому, что не прошли по конкурсу на что-то более престижное (а на инженерные специальности конкурс традиционно ниже, чем на менеджерские);

    • преподаватели, даже действительно классные, вынуждены ориентироваться на эту массу, и порой пропускать самое интересное - иначе 90% потока надо просто отчислить, а тогда кафедра останется без студентов и ее закроют;

    • учебные программы безнадежно устарели.


    Я уже не буду говорить про то, что часто лаборатории больше напоминают музей - сейчас в крупных ВУЗах с оснащением уже получше.

    С преподавателями тоже не всегда все хорошо. В аспирантуре остаются в основном те, кто по факту не может работать по специальности - ну, вы поняли. Зарплата ассистента (фактически, преподаватель без ученой степени) составляет в районе 5 - 7 т.р., притом что инженеру платят как минимум на порядок больше, так что все выпускники, умеющие хоть что-то, уходят на производство, где их отрывают с руками. А вот те, кто прилежно делали все домашние задания и ничего больше - те идут работать в макдональдс или учиться дальше, в аспирантуру. А потом преподавать, да. Исключения есть, но их мало.

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

    Так что не ждите, что вас научат - читайте профильную литературу, задавайте вопросы знающим людям, берите паяльник в руки, и вперед. Конечно, для полной уверенности в собственном будущем вам понадобится красивая бумажка-диплом; чтобы получить ее, достаточно поступить в любой ВУЗ, имеющий факультет с названием типа "радиотехника", "проектирование РЭА" или вроде того.
    Ответ написан
    Комментировать
  • В каких ВУЗах можно научиться созданию электронных устройств?

    @AnotherReality
    В университетах этому не научат -- это иллюзия! Только непосредственная работа над задачами и проектами. А так то профессия называется Инженер-электронщик или Embedded Engineer. Базово нужно знать математики, физику, химию. Профильно: аналоговая схемотехника, цифровая схемотехника, цифровая обработка сигналов, микроконтроллеры, ПЛИС, проектирование печатных плат, программирование и т.д. Не начинайте с ардуино, это дно, купите nucleo, разберите что за элементы там, почему такие (достаточно документацию почитать), как программировать и вперед =)
    Ответ написан
    2 комментария
  • Как переквалифицироваться в электронщика?

    @tugo
    В каком вы городе? Если из Питера, могу подсказать, куда обратиться.

    Вам нужен хороший учитель. Тогда вы будете очень быстро прогрессировать.

    Насчет требований в вакансиях "физика, электротехника, электроника" - не берите в голову. ВО рассматривают у кандидатов без опыта, да и то, пишут для того, чтобы что-то было написано в вакансии, типа выбирать будут. В резюме выпячивайте имеющийся опыт и большое желание заниматься электроникой.
    Да и вообще, требования вакансий близко к сердцу не принимайте. Туда пишут все подряд, все страшные слова которые знают. Просто шлите резюме.
    Переквалификация возможна, было бы желание, у вас только самое начало пути.
    Легко берут на работу в различных военных институтах, НИИ, НПФ. У них острая нехватка кадров. При этом деньги могут быть, а могут и не быть в такой конторе.
    Ответ написан
    3 комментария