• Существуют ли заочные курсы или стажировка по анализу данных на русском языке?

    @lPolar
    data scientist
    ИМХО, тут есть несколько аспектов:
    1. Как написал brainick , математический бэкграунд и английский в data science практически обязателен.
    Причин этому несколько: отсутствие хорошей литературы на русском языке (как по теории, так и по программированию), обилие английских терминов (lift/top/cross-validation и прочие), значение которых в переводной литературе порой объяснятся весьма туманно.
    2. Если говорить о конкретной литературе, которую стоит почитать, я бы выделил несколько уровней:
    Уровень 0
    1. Бизнес-аналитика - Паклин, Орешков (самое базовое и обзорное введение)
    2. Статистика/Тервер ( по мне, хороши книги Айвазяна/Мхитаряна)
    3. SQL - в обязательном порядке. Мне в свое время помогла книга "SQL для простых смертных"
    4. Изучаем Python - М. Лутц (наиболее полная книга по языку, все что нужно для data science здесь точно есть)
    5. Программируем коллективный разум (к слову сказать, вот в этой книге отличный перевод)
    Уровень 1
    1. Математические основы машинного обучения и прогнозирования - Вьюгин (книга сложная, без подготовки по учебникам НМУ на тему анализа и линейной алгебры лучше не подходить)
    2. Python for Data Analysis (pandas во всей красе, тут нечего добавить)
    3. Примеры и статьи по построению моделей в sklearn - на хабре в последнее время часто мелькают статьи на эту тему, там все достаточно хорошо расписано.
    Уровень 2
    1. Hadoop и иже с ним ("Hadoop в действии", "Programming Pig")
    2. Apache Spark - достаточно почитать описание Python API.
    Тут есть еще один момент - не стоит слишком привязываться к одному языку и фреймворку.
    Одна из неприятных проблем python+pandas+sklearn заключается в том, что эта связка слабо масштабируется - при 2-3-4 гб данных становится сложно разместить их в оперативной памяти. Я знаю про chunk-reading+partial_fit, но точность таких моделей оставляет желать лучшего.
    С другой стороны, если обрабатывать эти данные в pyspark, то теряется все удобство pandas.DataFrame и так далее. Отрасль data science быстро развивается и обрастает новыми технологиями, так что нужно все время держать руку на пульсе.
    UPD: в spark 1.3 появились DataFrame.
    Ответ написан
    4 комментария
  • Как учить веб дизайн?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    • Веб дизайн совсем не обязательно включает в себя верстку. Верстальщики всегда найдутся.
    • Курсы фотошопа? Полезное дело конечно, но не более того. Фотошоп - это всего лишь инструмент. Чуть более продвинутый чем лист бумаги с карандашом и фломастерами (или мольберт с красками)
    • Самое главное, о чем все забывают - это учиться рисовать, учиться видеть красивый и удобный интерфейс, учиться делать мокапы и продумывать логику сайтов и приложений, изучать юзабилити, работу с цветом, композицией, типографику и многое многое другое.
    Ответ написан
    Комментировать
  • Как учить веб дизайн?

    Sanes
    @Sanes
    Очевидно же. Отфильтровать найденные видео по запросу "Веб" и как можно больше практиковать. По вёрстке рекомендую видео от Sorax.
    Ответ написан
    Комментировать
  • Как выбрать узкую специализацию?

    @den4eg11
    Я для себя решил, что не стану углубляться только в одном направлении, и это касается всего, не только программирования. Интересно знать всего понемногу, и во всех сферах попробовать себя, когда идей много, зацикливаться на одной сфере деятельности не хочется, я для себя нашел призвание - менеджер проектов. Пока работаю только над своими идеями, попутно изучая разные направления. Ведь когда хочешь реализовать что-либо, но не можешь объяснить помощникам/работникам или предлагаешь глупые идеи из-за недостаточных знаний, это плохо сказывается на реализации. Стараюсь достигнуть как минимум уровня "знаю, что мне нужно и как, но не умею это сделать хорошо".
    Ответ написан
    Комментировать
  • За какое время можно изучить javascript?

    Boniface
    @Boniface
    Если под моим руководством, то через 2 недели будите писать на нем приложения :)

    В остальном все индивидуально. Под капотом JS сложный для понимания (замыкания, scope, модели событий и т.д.).
    Ответ написан
    2 комментария
  • За какое время можно изучить javascript?

    @Itvanya
    Скажу вам так : я уже долгое время занимаюсь фронт-эндом, мы пишем веб-приложения, 2d-3d игры, сайты и так далее. JS был моим следующим языком после Java. И, говоря честно, JS - абсолютно всеобъемлющий язык, который хорошо выучить очень непросто(гораздо сложнее, чем тот же Java). По-началу, смотря на этот код, половина из которого занимается только фиксами кросс-браузерности становится тошно, потом попроще, но ввиду "особой особенности" js и его прототипно-ориентированности, многие просто хотят вырвать себе глаза, что и делают любые программисты, переходящий с c/c++/c#/Java(любой другой более классический язык). Чтобы писать хорошие модули на JS, могут понадобится годы разработки. Объективно, если сидеть по 2-3 часа в день, результативно заниматься, то можно освоить js и самые начальные паттерны за 4-6 месяцев. Изучение Angular - вообще отдельная тема, которую так быстро ты не освоишь. Angular - это вам не убогий jQuery, от которого реально тошнит, Angular - это по сути отдельное изучение JS заново. Вот как-то так.
    Ответ написан
    7 комментариев
  • Какие дисциплины изучать программисту чтобы меньше зависеть от языков и технологий?

    @endemic
    Как писали выше - боле абстракнтные понятия:
    Алгоритмы, Паттерны, Какие-то межъязыковые вещи типа многопоточности, рефлексии, метапрограммирования (generic в C#/Java, template в C++).

    Некоторые люди рекомендуют джентельменский набор:
    1. Компилируемый язык (пока C++ без вариантов, но скоро будет Rust, надеюсь)
    2. VM язык (Java или C#)
    3. Скриптовый язык (Perl, Python)
    4. SQL
    5. Веб: HTML/CSS и JavaScript на базовом уровне

    Средние знания всего вышеперечисленного позволяют быть более менее в курсе дел и даже если вылезет что-то новое - подстроиться. Нужно только правильно расставить акценты.
    Ответ написан
    3 комментария
  • Какие хорошие книги и материалы по проектированию интерфейсов и сайтов можно изучить?

    badlittleduck
    @badlittleduck
    UX/UI дизайнер. Основатель и руководитель 1Point
    Составил список книг по проектированию и юзабилити www.usability.by/books
    Ответ написан
    Комментировать
  • Можете подсказать практичный список литературы по разработке драйверов для linux и вообще по работе в ядре?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    The Linux Kernel Module Programming Guide: https://sysprog21.github.io/lkmpg/
    Linux Device Drivers: lwn.net/Kernel/LDD3
    Understanding the Linux Kernel: https://doc.lagout.org/operating%20system%20/linux...
    Linux Kernel Development: https://raw.githubusercontent.com/jyfc/ebook/maste...
    Understanding the Linux Virtual Memory Manager: https://www.kernel.org/doc/gorman/pdf/understand.pdf
    Unreliable Guide To Locking: https://www.kernel.org/pub/linux/kernel/people/rus...

    Содержимое каталога Documentation в ядре.
    https://lwn.net/Kernel/Index/ для точечного погружения в отдельные топики.
    Каталог doc с kernel.org: https://www.kernel.org/doc/
    Ответ написан
    2 комментария
  • Какие хорошие книги и материалы по проектированию интерфейсов и сайтов можно изучить?

    laughedelic
    @laughedelic
    Помимо уже упомянутого, обязательно
    Джеф Раскин "Интерфейс: новые направления в проектировании компьютерных систем."
    Ответ написан
    Комментировать
  • Какие хорошие книги и материалы по проектированию интерфейсов и сайтов можно изучить?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Есть не только книги, например:
    https://developer.apple.com/design/tips/
    www.google.com/design
    Ответ написан
    Комментировать
  • Какие хорошие книги и материалы по проектированию интерфейсов и сайтов можно изучить?

    @Sanderos
    Например:
    1. Алан Купер "Об интерфейсе. Основы проектирования взаимодействия"
    2. Джесс Гарретт "Элементы опыта взаимодействия"
    3. Билл Скотт, Тереза Нейл "Проектирование веб-интерфейсов". Издательство O'REILLY
    4. Стив Круг "Не заставляйте меня думать!"
    5. "designing, web usability, the practice of simplicity" Якоб Нильсен
    ...и т.д.

    + почитайте книги по рекламе. Если вы хотите заниматься проектированием, то у вас должно быть хорошее понимание рынка не только разработки, но и рекламы.
    Ответ написан
    Комментировать
  • Каков план личностного развития C++ программиста с нуля?

    @Sapien2
    Читаете по порядку:
    Страуструп
    Майерс
    Саттер
    Александреску
    Дальше сами разберетесь.
    Ответ написан
    Комментировать
  • Каков план личностного развития C++ программиста с нуля?

    PixRaider
    @PixRaider
    Не так важен С++, как важен сначала С, чтобы получить понимание работы программ на низком уровне. Потом имеет смысл двигаться в сторону ООП головного мозга, изучая С++ и паттерны проектирования. ASM, WinAPI и прочих динозавров имеет смысл трогать только если есть много свободного времени и зубодробильная мотивация стать "архитектором Матрицы".
    А дальше все само: выплывет сначала на какой-нибудь удобный фрэймверк типа Qt (но возможно черт дернет и в .NET c C#), а от него и до Java рукой подать.
    К практической части от Lol4t0 всецело присоединяюсь.
    Ответ написан
    Комментировать
  • Каков план личностного развития C++ программиста с нуля?

    afiskon
    @afiskon
    Си (в том числе Posix, WinAPI), затем элементы C++ - классы, наследование, шаблоны, затем STL - алгоритмы, контейнеры, по желанию - на ассемблере также можно пописать немного, в частности пригодится при отладке к примеру. Затем, когда надоест, забываете как страшный сон и пишите на Java.
    Ответ написан
    Комментировать
  • Как правильно учить Javascript?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Вы наверное слышали, что каждый уважающий себя программист обязан написать несколько велосипедов? И JavaScript-программисты тоже так делают и еще как! Так вот в этом нет ничего плохого, это отличное самообучение.

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

    Не пытайтесь брать сразу сложные вещи, начинайте с малого. Как заметили выше, не смотрите пока что на очень сложные книжки, их читать сейчас почти бесполезно.
    Ответ написан
    6 комментариев
  • Учу Java. Как развиваться?

    mrstrictly
    @mrstrictly

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

    Отложите алгоритмы и TDD на последнюю очередь -- это безусловно очень важные темы, но для вашей цели не первоочередные.
    Познакомьтесь с паттернами (GoF) и "Рефакторингом" Фаулера.
    Прочитайте вдумчиво английское издание Effective Java Джошуа Блоха. Не загромождайте (поначалу) голову паззлерами.
    Ну и, наконец, сформируйте то, что нужно работодателю -- кругозор. Получите представление о вещах, вращающихся вокруг Java. Вот вам набор ключевых слов: Java Collections Framework, Java EE, Spring Framework, Maven, Glassfish, JDBC... Не нужно углубляться. Осознайте, что это такое. Изучите туториалы.

    Я считаю, для поставленной цели этого достаточно.

    Ответ написан
    Комментировать
  • Книги по java

    @DmitriyLuckyman
    Философия java (Брюс Эккель) www.ozon.ru/context/detail/id/4073388/
    Совершенный код (С. Макконнелл) www.ozon.ru/context/detail/id/3159814/
    Паттерны проектирования (Банда четырех) www.ozon.ru/context/detail/id/2457392/
    Рефакторинг (Мартин Фаулер) www.ozon.ru/context/detail/id/1308678/
    Алгоритмы. Построение и анализ (Кормен) www.ozon.ru/context/detail/id/2429691/

    Я считаю, что эти книги как минимум один раз необходимо прочитать, а потом по мере необходимости заглядывать:)
    Ответ написан
    2 комментария
  • PHP: с чего начать, как учить и что в итоге знать?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    На первые несколько пунктов попробую написать рекомендации в свободной форме.


    Первое и самое главное — чтобы хорошо изучить программирование на РНР, надо хорошо изучить программирование. Это очень важная вещь. Большая часть людей, пишущих на РНР, не имеют ни малейшего представления о программировании. Даже о таких базовых вещах, как форматирование кода, отладка, профайлинг, обработка ошибок, файловые операции. Можно заметить, что я не говорю об ООП. Это совсем отдельная тема, ООП надо учить специально. К сожалению, из 100 человек, которые говорят, что знают ООП, 90 являются банальными копипастерами, выучившими синтаксис, но не понимающими смысла объектов. Но чтобы играть в шахматы, недостаточно знать, как ходят фигуры.


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

    Вообще, РНР можно использовать очень по-разному. И для каждого случая это будет свой язык.
    • Можно склепать гостевую или сайт-визитку на «голом» РНР — и ничего плохого или позорного в этом нет. Наоборот — это плюс языка, который годится и для таких целей, не таща за собой пару миллионов строк кода ради сайта из пятисот.
    • Можно написать профессиональный портал, взяв за основу какой-то из существующих фреймворков, и заниматься его развитием.
    • Можно написать кастомный хайлоад проект, для которого нужно будет писать собственный фреймворк опять на голом РНР.
    • Можно, как уже говорилось, клепать сайты на основе какой-нибудь ЦМС.


    Вариантов масса! поэтому нужно определиться сначала, чего хочется.


    Там выше говорили про JS+CSS — не надо слушать, это полная ерунда. Фронтенд программирование — совсем отдельная вещь, куда больше визуальная, чем абстрактная. И, слава богу, все больше работодателей начинают понимать это. Хотя опять же — если фрилансишь и на все руки мастер — то без этого никуда.

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


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


    Теперь по остальным

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

    Фреймворки — обязательно. Тут, правда, стоит проблема выбора, но принципиальной разницы между ними нет. Yii — неплохой выбор.

    Гитхаб тебе не нужен, знать его не обязательно. Знать надо git.
    А вот что является обязательным для веб-программиста — это умение пользоваться гуглем. Хотя бы на уровне умения скопипастить в поисковую форму сообщение об ошибке или написать вопрос «Что такое git» ;-)

    Потому что для работы в команде какую-либо систему контроля версий знать надо, а git является стандартом де-факто. Понимать принцип работы и базовые команды — чекаут, коммит, пуш.
    Ответ написан
    2 комментария