• Где можно изучить веб программирование?

    jasonOk
    @jasonOk
    Легче болтать, чем код писать
    Html & CSS — Скачайте любой красивый html шаблон и разберите как в нём устроена вёрстка, как реализованы разные вещи.

    JavaScript — learn.javascript.ru и точно так же берёте небольшую библиотеку, допустим слайдер и пытаетесь сами реализовать похожее и даже лучше. Сразу, естественно, ничего не выйдет.

    PHP — много практики. Ещё один (или не один) блог написать или небольшой магазин, форум.
    Можно попробовать какой-нибудь фреймворк, если есть желание и достаточно уже опыта.

    Для вдохновенияhttps://www.youtube.com/watch?v=atIwagMBDi4 :)
    Ответ написан
    Комментировать
  • Каким способом (книги, курсы, лекции, вебинары и пр.) порекомендуете учить WEB? Расскажете свои истории становления в этой сфере?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    Блин, почему все ответы отрицают книги? Ребят, вы че? Книги это очень крутой инструмент для обучения, такой концентрированной информации сложно найти.
    https://github.com/getify/You-Dont-Know-JS - найдите мне курс или статьи, где содержится почти вся информация о язык JS в легком и доступном виде. Вы можете годы тратить для того, чтобы дойти то тех вещей, что говорятся в этой книге - сами, а можете быстро прочитать книгу. Даже если вы все не запомните, вы будете понимать, что это и как искать.
    Например в C# есть чудесная книга Рихтера CLR via C# - ну вот просто нереально долго будете углубляться в работу платформы без этой книги.
    В CSS есть крутая книга от гуру верстки Лии Веру - CSS-Secrets, можно из без нее до всего дойти самому, но прочитав эту книгу, вы сможете избежать множество проблем и ошибок.
    Еще есть классика вроде банды четырех, программист прагматик, грокаем алгоритмы и.т.д. - все эти книги очень полезны и легки в изучении, не нужно их игнорировать, игнорируйте курсы и статьи, написанные непонятно кем.
    Кто говорит, что
    Теория в этом деле ничего не стоит, опыт - ваше всё.

    не понимает, что книги это не сухая теория, это часто набор практик на основе чужого опыта. Так зачем самому тратить время на получение этого опыта, если можно позаимствовать?
    Ответ написан
  • За какой срок реально с нуля освоить какую-либо сферу программирования?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Учеба - это не время. Учеба это усилия.
    Зависит от вас.
    Ответ написан
    Комментировать
  • Что должен из HTML (4 + 5) знать профессионал Front-End-а?

    Доброго дня.

    Во-первых, не делите HTML на разные версии: сейчас doctype html без версии.
    Во-вторых, так же относитесь и к CSS.
    В-третих, изучайте JavaScript. Особое внимание уделите поддержке новых возможностей языка в старых браузерах и полифилам (polyfills)
    В-четвёртых, посвятите какое-то время, чтобы познакомиться с UI/UX

    И, на сладкое, вот вам карта Современный фронтенд-разработчик (на англ.)
    Ответ написан
    Комментировать
  • И снова курсы веб разработки?

    @galina_nj
    Есть еще сервис https://www.udacity.com/
    Там все курсы на английском, но очень много бесплатного материала

    У них есть план на github, что в какой последовательности проходить
    https://github.com/mikesprague/udacity-nanodegrees...
    с ссылками на бесплатный курс

    Также можете посмотреть на вот эту карту
    https://github.com/kamranahmedse/developer-roadmap

    И еще есть сайт
    https://frontendmasters.gitbooks.io/front-end-deve...
    Там можете найти очень много полезных ссылок на курсы, книжки и т.д
    Ответ написан
    Комментировать
  • Как сделать рандомный массив из 40 уникальных элементов?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Сначала подумал что можно рандомизированный массив засунуть в set...

    Надо наоборот - сначала set, потом массив:

    function randomArr(length, min, max) {
      const values = new Set;
      while (values.size < length) {
        values.add((Math.random() * (max - min + 1) | 0) + min);
      }
      return [...values];
    }
    
    
    const arr = randomArr(40, 1, 100);

    Но вообще, есть и другие методы.

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

    function randomArr(length, min, max) {
      const arr = Array.from({ length: max - min + 1 }, (n, i) => i + min);
      return Array.from({ length }, () => arr.splice(Math.random() * arr.length | 0, 1)[0]);
    }

    Или, создать массив со всеми возможными значениями, перемешать его, взять из начала сколько надо элементов:

    function randomArr(length, min, max) {
      const arr = Array.from({ length: max - min + 1 }, (n, i) => i + min);
    
      for (let i = arr.length; --i > 0; ) {
        const j = Math.random() * (i + 1) | 0;
        [ arr[j], arr[i] ] = [ arr[i], arr[j] ];
      }
    
      return arr.slice(0, length);
    }
    Ответ написан
    1 комментарий
  • Как быстро подтянуть свой уровень веб-разработчика, чтобы соотвествовать требованиям работодателей?

    5angel
    @5angel
    Фронтенд-лид
    Давайте обратимся к данной публикации, чтобы понять примерные тренды, потому что наиболее выгодный вариант – это все же фронтендер.

    Вкратце, полноценный клиентский разработчик должен знать:
    – html5/css3 + bootstrap
    – один-два препроцессора (less/stylus)
    – чистый js и пару-тройку клиентских библиотек или фреймворков (knockout/backbone/angular/react)
    – немного node.js, чтобы уметь пользоваться пакетным менеджером (npm) и билд-менеджером (gulp/grunt)

    Этот список покрывает большинство клиентских задач в средней студии или стартапе.

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

    Другой вопрос – что со всем этим делать.

    Я обычно предлагаю попытаться начать свой маленький проект. Какой-нибудь простенький личный сайт, игру на js (тот же flappy bird или 1048 – много ума здесь не нужно). Посложнее – свою тему или библиотечку. Это будет хорошим практическим опытом, который не стыдно описать в резюме.

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

    Если говорить о личном опыте, то я неплохо подтянул js с помощью codewars – задачки начинаются от самых простых (преобразование строк, перебор массива), до очевидно тяжелых (собственные интерпретаторы и преобразование данных изображения).

    А вот попытка спихнуть на верстальщика UI/UX – это уже экономия со стороны отдельных контор, которые по какой-то причине не хотят нанимать отдельного дизайнера/проектировщика в штат или по контракту. Тут, к сожалению, придется мириться и смотреть статьи по теме – тот же GoodUI.
    Ответ написан
    10 комментариев
  • Как проверить, что знаешь на базовом уровне JavaScript?

    @JSmitty
    Хотите задачку? Ловите.

    Сделать на JS светофор основной (3 цвета) и связанный пешеходный (2 цвета) с кнопкой по запросу пешеходного перехода:
    1) основной включен на зеленый, пешеходный на красный
    2) по нажатию на запрос, через не менее чем 5 секунд на 5 секунд показывается желтый на основном, затем основной - красный, пешеходный зеленый на 15 секунд. После пешеходный на красный, основной сразу на зеленый.
    3) минимальное время зеленого на основном - 60 секунд. Если кнопка запроса перехода нажата ранее 60 секунд с момента включения зеленого - пункт 2 срабатывает через 60 секунд с момента включения зеленого.
    4) после нажатия запроса и до включения зеленого на основном светофоре, кнопка запроса игнорируется.

    Часть задачи - сделать отображение светофоров, и кнопку. Кнопка всегда доступна к нажатию (не ставим атрибут disabled). Другая часть - реализовать асинхронную логику. По возможности на чистом JS (не прибегая к библиотекам).
    Ответ написан
    7 комментариев