IT Верстальщик
1.17K subscribers
50 photos
1 video
240 links
Авторский блог про веб-разработку

Подборки сервисов, статей и новостей в мире front-end и back-end
Download Telegram
Как ускорить вёрстку?

1) SASS и сетку для него(типа bootstrap)
2) GULP для компиляции , а также его LiveReload и AutoPrefixer, и BrowserSync с его локальным сервером, и Bower (закачка либ)
3) GIT
4) Emmet
5) BEM (БЭМ)
6) Используйте gist от github

- jade (сейчас больше известен как pug) - html-шаблонизатор, синтаксис простой и понятный, поддерживает циклы, инклюды, примеси, переменные, условия и пр. использую как препроцессор и из него генерирую статичные страницы, верстаю в нем.

- less - тут даже говорить нечего, любой css-препроцессор для разработки и скорости при умелом использовании подойдет лучше писанины на нативном css;
Vue или Jquery?

Vue - фреймверк
jQuery - библиотека

Чем удобнее Vue перед jQuery, это поддержка больших приложений, чего нет в jQuery к примеру это роутинг

На Vue можно сделать всё, что можно сделать на jQ.
На jQ можно сделать всё, что можно сделать на Vue, но сложнее.
На чистом JS можно сделать всё, в том числе Vue и jQ (sic!)

JQ помогает решить быстро и легко мелкие задачи по верстке, блок скрыть/показать, слайдер прикрутить. Vue позволяет создавать полноценные веб-приложения, так что для каждой задачи свой инструмент. JQ не плох для мелких манипуляций, а Vue выручает там, где элементы DOM очень завязаны друг на друге и надо быстро перестраивать структуру разметки исходя из логики связей между объектами.

Да и как не крути, vue, jq, angular, react - это все дети JavaScript'a, и если не знать матчасть, то и они не помогут) Надо основы и глубины JS выучить, потом на осознание JQ уйдет неделя, две, и потом еще пара месяцев для Vue, если со всей экосистемой, типа vuex, vue-router, ssr, vue-resource
Лайфхак: в какой последовательности изучать JavaScript

Огромный инструментарий JS и тонны материалов по нему. С чего начать? Расскажем, как изучать JavaScript, и предоставим полезные ссылки.

Читать статью:
Работаете в Trello командой? Попробуйте связку Trello + Telegram

Бот помогает использовать Trello в Telegram для работы с коллегами в групповых чатах или получать уведомления персонально. Нотификации об обновлениях, создание, редактирование и поиск по задачам и карточкам.

@trello_bot
​​Как использовать React для админки Wordpress?

Если вы чувствуете в себе силу и потребность написать админку плагина на реакте, то имеет смысл это сделать. Методику не подскажу, но нужно понимать, что вп не приспособлен для этого. Надо будет поломать голову над тем, как сростить одно с другим. Это гарантированно возможно.

Следует так же держать в голове, что подавляющее большинство разработчиков под вп даже про гит не слышали. Реакт в плагине, может повергнуть их в шок. Если ты занимаешься полным циклом, и поддержку будешь осуществлять сам, то можешь делать всё, что угодно. Но, если ты делаешь плагин на заказ или работаешь в команде, которой этот плагин поддерживать, то стоит крепко подумать. Вопервых заказчик или старшие коллеги могут быть против. Во вторых, вп и кастом, это про разное. Вп берут за дешевизну разработчиков, а разработчик на реакте может стоить дороже, чем весь проект на вп. Но сделать точно стоит, ваша практика дорогого стоит.
​​Выпадающее меню по клику на ванильном JS
​​Что учить Grid или Bootstrap?

Grid - методология, а Bootstrap - набор инструментов.
Ничто не мешает изучить и то и другое.

Плюс Bootstrap - это определенные правила, "стандарт", которые используются на всех сайтах, сделанных с его использованием.
А гриды - кто уже как извернется.

Обратите внимание. что бутстрап — это не только сетка, но и большой набор разных других компонентов. Кроме того, сетка текущей версии основана на css flexbox, который на данный момент поддерживается лучше грида.

Освоить бутстрап даже для начинающего верстальщика — вопрос нескольких дней.
Знание css он не отменяет. Верстальщик, который умеет в бутстрап, но не понимает, как он работает — жалкое зрелище.

У CSS Grid Layout порог вхождения в разы меньше, нежели чем у попсового фреймворка Bootstrap. Дальнейшая поддержка проекта - основная причина, по которой BS является обязательным навыком. Если вы запилите проект на гридах, то проходимцам из смежных областей уже в разы трудней будет поддерживать вашу писанину. Это всё, что нужно знать о хотелках заказчиков и работодателей.
Что до субъективного мнения, то - если не знаешь язык, то лучше фреймворком не пользоваться. Рекомендую предпочтение отдавать изучению языка, дабы не молиться на фреймворки, как на свое спасение при реализации ТЗ.
​​Как изучать верстку c переходом на front-end?

HTML5&CSS3, в любом случае самое первое, что стоит изучить. Html Book - неплохой вариант, для новичка, но всё же в идеале оф. сайт консорциума с документацией www.w3.org
Думаю, для хорошего верстальщика и front-end developer'a важно понимать "кухню".

Есть не плохая книга, мне лично очень нравится, Джон Дакетт "HTML и CSS". Книга не из дешевых, но лично мне очень помогла в изучение основ.

Далее, опять таки на мой взгляд, хотя бы на уровне синтаксиса - изучить JavaScript. Пока не говорю, про библиотеку JQuery. Но она по сути, важна. Книга - Бер Биро, Иегуда Кац "Подробное руководство по продвинутому JavaScript".

В плане опыта, тут уж наверное понятно, верстать и еще раз верстать, по мере решения определенных задач растет скилл, так сказать. Умение искать ответ в Google тоже немаловажный навык.

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

Свой код после верстки, можно проверить на валидаторе оф. сайта консорциума. Просто нужно вставить ссылку туда на свой сайт и он анализирует.

На YouTube, есть видеоуроки по многим направлениям. Из самых крутых на мой взгляд, Sorax и Glo Academy
​​Visual Studio Code — поддерживается компанией Microsoft и полностью поддерживает TypeScript «прямо из коробки». В Visual Studio Code есть интеллектуальное завершение кода и подсветка синтаксиса с помощью технологии автодополнения IntelliSense, также есть встроенный инструмент отладки, встроенная поддержка команд Git, контроль версий и многое другое. Более того, вы можете расширить функциональность редактора путём подключения широкого спектра расширений.
​​Что требуется знать о JavaScript и PHP на собеседовании для html-верстальщика?

Верстальщик - начальная стадия дизайнера или фронтенд-программиста. PHP знать не нужно. Нужно иметь опыт работы с шаблонизаторами.

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

А вот чистый JS знать следует. Но опять же, если речь идет об устройстве в какую-нибудь не профильную организацию (интернет-магазин какой-нибудь), то там так же будет достаточно знания синтаксиса. А вот в более профильные организации могут не взять без достаточного понимания нативного JS.
​​Чем отличается верстальщик от front-end developer?

Верстальщик преобразует графический макет (Photoshop или иной) в набор HTML + CSS + картинки. Иногда к свёрстанному макету может подключить типовые библиотеки Javascript, например, slider для картинок, или всплывающие подсказки (tooltip), или диалоговые окна (dialog/popup).
Знания и навыки:
работа с графическими программами, чтобы понять, как собран макет
знание HTML, HTML5, CSS, CSS3, понятие про веб-шрифты, спрайты и другие технологии
пригодятся знания по HTML-фреймворкам, например, Twitter Bootstrap или Semantic UI
навыки кроссбраузерной вёрстки, чтобы в разных браузерах выглядело и работало одинаково
навыки отзывчивой вёрстки, чтобы можно было использовать на устройствах с разными возможностями и разрешениями
знание типовых решений javascript, чтобы реализовать простейшие вещи, заложенные в макете

Фронтенд-разработчик делает так, чтобы макеты, полученные от верстальщика, были наполнены реальными данными. Если приложение построено как client-side (то есть вся основная логика загружается в виде огромного javascript в браузер, а данные запрашиваются с сервера по AJAX; это называется "толстый клиент"), то фронтенд-разработчику потребуется следующее:
знание HTML, HTML5, CSS, CSS3, понятие про веб-шрифты, спрайты, Comet и другие технологии
глубокое знание Javascript, включая использование готовых фреймворков, библиотек и написание расширений для них, что подразумевает объектно-ориентированное и событийное программирование
знание AJAX, CORS и навык создания тестовых затычек на стороне сервера, чтобы можно было разрабатывать приложение пока бакенд не готов

Если фронтенд строится на стороне сервера, то дополнительно потребуется знать используемый серверный язык программирования (например, Python, Ruby или PHP) и используемый фреймворк (Django, Ruby-on-Rails, Yii). На практике бывало такое, что фронтендер просил в нужной части проекта сделать var_dump от структуры данных, которую надо показать и перечислить серверные методы, которые надо вызвать по нажатию предполагаемых кнопок.

Зачастую фронтенд-разработчик может и сам закодировать эти серверные методы, если не требуется углубляться в серверную логику (отношения в данных, конкретная бизнес-логика, хранение данных, кэширование, очереди, крон-задачи). Я лично таких очень ценю.

И моё личное мнение - фронтенд разработчику не помешают базовые знания про UML. Иногда с ними так тяжело обсуждать обмен данными по AJAX. У них это какой-то непрерывный поток магической энергии, волшебным образом преобразующийся в буковки на экране пользователя, а вот для бакенда это набор отдельных операций, иногда ещё и асинхронный. Диаграммы последовательностей ни читать, ни писать многие не умеют. Таймлайны составлять не умеют.
html5.net Бесплатные адаптивные шаблоны сайтов HTML5 и CSS3
​​Что лучше учить для фриланса: JS или натяжка верстки на CMS?

JavaScript, если планируете стать программистом, HTML/CSS в другом случае.

Натяжка верстки на CMS подразумевает какое-то знание HTML, CSS, JavaScript и серверного языка (PHP в случае WordPress). Т.е. в идеале, если хочется стать full-stack программистом, надо знать все.

Вообще говоря, JavaScript и HTML/CSS - вещи сильно связанные. Однако JavaScript можно использовать и сам по себе (на сервере например), без привязки только к фронтэнду. Область применения JavaScript сейчас большая: фронтенд (jQuery и еще полсотни бибилиотек и фреймворков на любой вкус), бэкенд (Node.js) и даже GUI.

Вы в любом случае потратите время (не думаю, что разобраться с HTML5/CSS3 будет быстрее, чем разобраться с JavaScript - скорей всего наоборот), однако имея в арсенале JavaScript, выбор работы потенциально будет больше, да и оплачиваться такая работа будет заметно выше, чем верстка (пятачок за пучок шаблонов). Хотя хороший фротнендщик тоже дорого стоит.

В любом случае, чтобы вы не выбрали, учите основы - HTML/CSS, а не верстку (хотя вообщем это тоже самое), JavaScript, а не jQuery, Python, а не Django, Ruby, а не Ruby on Rails. Ну и PHP, а не Laravel. Хотя не могу сказать, что последний стоит учить вообще.
​​Что такое HTML5 Canvas и как им пользоваться?

Canvas — элемент HTML5, предназначенный для создания растрового двухмерного изображения при помощи скриптов, обычно на языке JavaScript. Начало отсчёта блока находится слева сверху. От него и строится каждый элемент блока. Размер пространства координат не обязательно отражает размер фактической отображаемой площади.

Используется, как правило, для отрисовки графиков для статей и игрового поля в некоторых браузерных играх. Но также может использоваться для встраивания видео в страницу и создания полноценного плеера.
​​Направление для развития в React

Redux в React-разработке надо знать обязательно. Еще, хорошо знать MobX, так как все больше компаний используют его в новых проектах.

Так же, вам стоит познакомиться с такими инструментами как:
typescript
webpack/babel
react-router
redux-thunk
redux-act (имхо, лучшая упрощалка бойлерпелйта redux)
styled-components
reselect
next/create-react-app
axios
react-helmet
react-portal
classnames
eslint/tslint/prettier/lint-staged/husky
jest
express

Перечисленные инструменты, кроме redux-act, используют в React-разработке чаще всего.
​​20 потрясающих CSS3 техник, библиотек и примеров

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

Изучение той или иной технологии ничем не отличается. Читаете статьи\туториалы. Пишете свой код. Удаляете. Читаете статьи\. Пишете код... и тд.

Читаете доки и пишете функции, которые Вам надо
https://www.npmjs.com/package/gulp - комментарии на каждой строчке. Куча плагинов, которые показано как подключать. Пробуйте писать свой простой сборщик, который препроцессоры собирает. Потом по необходимости будете добавлять модули. Или найдите чужой готовый сборщик и настройте под себя

К примеру в Современной Front-end разаботке предполагается постоянное взаимодействие с Back-end и переформирование визуальной части "на лету" от манипуляций всех пользователей, а не только текущего.

Если говорить про git, npm, webpack и т.д... - то по сути это инструменты помогающие во время разработки - можно обходиться и без них, если можете конечно.
В итоге на выходе мы получаем тот же JS и CSS
​​Как автоматически проверить верстку?

Инструменты для тестирования проектов(GitHub):

1. jest-dom. Это если надо точечно проверить элементы на странице. Удобно, если нет необходимости тестировать прям всё всё всё. Стучишься до нужного элемента и проверяешь его.

2. jest-image-snapshot. Тестирование через скриншоты, отлично помогает при тестировании пользовательского поведения. Там всякие скроллы, ховеры, фокусы и так далее. По сути просто делаешь эталонный скриншот страницы, вбиваешь поведение страницы. После этого при тестировании проверяется, не сломалось ли поведение
​​Чем хорош Ruby?

Чем отличается от PHP или Python? Лучше или хуже? В чем его фишка так сказать?

Краткость, лаконичность и хорошее сообщество. А, ещё любовь к тестам, большая часть рубистов пишет тесты + ещё 30% из низ используют TDD... сначала тесты, потом код. Попробуйте заставить писать PHP-программиста тесты, легче пристрелить.

И еще, во-первых rubygems.
Во-вторых пример из жизни - есть gem. С десяток классов, все друг друга используют.
Возникла необходимость чуть-чуть изменить поведение пары методов одного из классов - так бывает.
Что вы будете делать в случае с php? Вы сделаете локальную копию библиотеки, поломаете методы так, как вам нужно.
В случае с ruby вы можете:
1. Полностью изменить реализацию одного метода конкретного класса
2. Обернуть существующую реализацию своим кодом, с помощью сохранения старого метода под новым именем с помощью alias_method
В-третьих - метапрограммирование. Хотя по значимости это стоило на первое место поставить. Именно благодаря метапрограммированию код на Ruby лаконичен и легко читаем.
В-четвертых, мне просто приятно иметь возможность писать конструкции типа 2.hours.ago