Как стать автором
Обновить

Первый Rosbank Online Meetup для опытных frontend-разработчиков

Блог компании Росбанк Разработка веб-сайтов *JavaScript *Angular *ReactJS *

2 декабря в 19:00 Гильдия Росбанка по Frontend проведет первый онлайн-митап, на котором выступят опытные frontend-разработчики из Росбанка, X5 Tech и Леруа Мерлен.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 734
Комментарии 0

Разработка в одни руки. Доклады frontend meetup от Evrone

Блог компании Evrone Разработка веб-сайтов *CSS *JavaScript *Конференции

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 662
Комментарии 0

Онлайн-митап: организация и поддержка дизайн-систем

Веб-дизайн *Разработка веб-сайтов *Интерфейсы *Usability *Дизайн

8 декабря в 18:00 состоится онлайн-митап SuperJob Tech Experience. Обсудим главные вопросы вокруг дизайн-систем, а также поделимся опытом их построения и сопровождения, вместе со спикерами из компаний Skyeng, Ростелеком и Контур.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 70
Комментарии 0

БЭМ, следующий уровень

Разработка веб-сайтов *
Из песочницы
По мотивам статьи на Хабре и флейма вокруг нее. Статья написана для тех кто хочет попробовать БЭМ, но не знает с какой стороны за него взяться. При первом взгляде на БЭМ, он кажется логичным и невероятно удобным. Но при попытке реализовать пользователь сталкивается с препятствиями, которые нивелируют все достоинства. Я не знаю как и почему создавалась эта методология, меня это не парит, если использовать правильно, то это прикольно, я же не задумываюсь для чего когда-то строили автомобиль или самолет, зато сейчас им пользоваться удобно, это же просто удобный инструмент. Знаю только, что при создании, никто не собирался стили и классы писать одним полотном.

Я попытаюсь рассмотреть один из многих вариантов применения методологии БЭМ на практике, который не только соответствует духу, но и рекомендациям создателей.
Читать дальше →
Всего голосов 13: ↑6 и ↓7 -1
Просмотры 8.3K
Комментарии 8

JSter – все, что нужно для Javascript

Разработка веб-сайтов *JavaScript *
Насколько сложно собрать все Javascript библиотеки в одном месте? Задача, конечно, непростая, у веб-разработчика из солнечной Финляндии Juho Vepsäläinen ушло на это около семи месяцев. Его проект JSWiki содержит более 30 категорий, в которых перечислены самые разнообразные проекты для frontend разработки. Сколько библиотек и утилит там упомянуто посчитать очень трудно. Прежде всего, потому что каталог слабо структурирован и не содержит практически ничего кроме ссылок.

Тем не менее, JSWiki послужила нам отличной базой для нового проекта JSter. Вместе с Juho Vepsäläinen мы разработали самый полный открытый Javascript каталог. В нем уже почти 700 библиотек (в основном open-source) и любой пользователь может дополнить список.
Читать дальше →
Всего голосов 52: ↑44 и ↓8 +36
Просмотры 14K
Комментарии 41

AngularJS vs IML

JavaScript *.NET *C# *
Из песочницы
image

disclaimer: сравнение не подразумевает поднятие “холивара”, а делает обзор задач, решаемых одним инструментом в сравнении с другим. Я не являюсь знатоком всех тонкостей angularJs, но прочитав 10 статьей обзора этого инструмента, привожу альтернативный пример решения тех же самых задач на IML.
Читать дальше →
Всего голосов 30: ↑8 и ↓22 -14
Просмотры 8.4K
Комментарии 68

Масштабирование наоборот: БЭМ-методология Яндекса на небольших проектах

Блог компании Яндекс CSS *JavaScript *
В разработке интерфейсов отдельные фреймворки уже не так важны: когда инструменты доступны, наша задача сводится к выбору нужных. Чтобы сделать правильный выбор, следует начать с общего подхода, с методологии. Большинство методологий, однако, разработаны крупными компаниями. Применимы ли они в маленьких проектах или для успешного использования их нужно переизобретать заново?

Скорее всего, вы уже знаете об одной из таких методологий, разработанной Яндексом, — БЭМ. БЭМ утверждает, что трёх сущностей (блоков, элементов и модификаторов) достаточно для написания HTML и CSS, задания структуры кода и компонентной структуры с последующим масштабированием проекта до самого высокого уровня.

Я проработал в Яндексе достаточно долго и видел, как эта методология работает на больших проектах. В Яндексе БЭМ используют для разработки CSS- и JavaScript-компонент, с помощью этой методологии также пишут шаблоны и задают зависимости между компонентами. Есть БЭМ-инструменты, поощряются различные эксперименты с кодом, исследования. В масштабах большой компании эти трудозатраты окупаются и дают Яндексу возможность быстро и качественно разрабатывать сотни сервисов одновременно.

Могут ли маленькие команды получить от БЭМ то же самое? Я совершенно не был в этом уверен. Всё же БЭМ — абстракция, которая поставляется вместе с инструментами и технологиями. Для маленькой компании польза от переключения на «полный стек» этих технологий — сомнительна, многие из инструментов изначально приспособлены под крупные и сложные задачи. Быть может, тогда полезной окажется сама идея, сама методология?

Изначально эта моя статья была опубликована в известном многим журнале Smashing Magazine. Но я решил, что и на Хабре она может быть интересна, ведь многие здесь занимаются собственными небольшими проектами.

Читать дальше →
Всего голосов 87: ↑77 и ↓10 +67
Просмотры 61K
Комментарии 54

Мысли вслух о TypeScript

Разработка веб-сайтов *JavaScript *Программирование *TypeScript *
Прошло уже некоторое время, как я впервые познакомился и подружился с TypeScript. В те времена версия еще не перевалила за единицу. А недавно вышел релиз 1.7. За это время мы привыкли друг к другу и пережили много успехов и разочарований. Мне хочется немного поделиться своими впечатлениями и размышлениями по поводу этого диалекта JavaScript как самостоятельного языка. Идея подобного поста возникла у меня спонтанно при обсуждении очередного холивара с коллегами.

Итак, что же такое собственно TypeScript — наверно уже ни для кого не секрет. Но все же, хочу упомянуть, что это попытка Microsoft принести в JavaScript статическую типизацию. Примеры кода и задачи, которые он позволяет решать, можно посмотреть на официальном сайте или здесь на хабре, благо статей написано уже не мало. На хабре уже есть статья подобного рода TypeScript: общие впечатления, поэтому, чтобы не повторяться, я решил выделить плюсы и минусы работы с языком, опираясь на свой личный опыт. Вспомнить и перечислить плюсы и минусы языка оказалось довольно непросто.
Читать дальше →
Всего голосов 18: ↑11 и ↓7 +4
Просмотры 36K
Комментарии 33

NativeScript, что за зверь и для чего он нужен?

JavaScript *Разработка мобильных приложений *TypeScript *
Recovery mode
Доброго времени суток, хабражители, меня зовут Владимир Миленко, я frontend-инженер в компании Иннософт, географически расположенной в городе Иннополис и являющейся резидентом особой экономической зоны г. Иннополис.

Сегодня я поведаю о таком звере, как NativeScript(да, он изменился, да, сильно). NativeScript — фреймворк для кроссплатформенной разработки, придерживающийся концепции write once — use everywhere, и, возможно, у него получилось!

Читать дальше →
Всего голосов 46: ↑36 и ↓10 +26
Просмотры 55K
Комментарии 54

Жизнь фронтендера в Spotify

Блог компании 2ГИС Блог компании CodeFest Разработка веб-сайтов *CSS *JavaScript *


Изображения — это, как правило, самая «тяжелая» статика в вебе. Многие фронтендеры знают об адаптивных изображениях, которые позволяют использовать определённые изображения для разных разрешений. Но это не единственный их плюс, ведь то, как и когда мы их загружаем, тоже влияет на скорость вашего веб-приложения.

На FrontFest 2017 к нам приезжает Хосе М. Перес (Jose M. Perez) из Spotify, с докладом «Progressive Image Rendering». Он расскажет о техниках прогрессивного рендеринга, основанных на плейсхолдерах, доминирующих цветах, размытых изображениях и ленивой загрузке, которые помогут улучшить производительность.

Накануне конференции мы поговорили с Хосе про веб-стек, релизы и управление процессами в Spotify, отношение к Open Source и погоду в Испании, Швеции и России.
Поехали!
Всего голосов 23: ↑21 и ↓2 +19
Просмотры 11K
Комментарии 7

Шесть вопросов спикерам FrontFest

Блог компании 2ГИС Блог компании CodeFest Разработка веб-сайтов *JavaScript *HTML *


Пару лет назад на CodeFest мы придумали экспертную зону. Ну, как придумали — наверняка подглядели на зарубежной конференции, но уже забыли на какой. Так вот, экспертная зона — то место, куда идёт спикер после своего доклада и ещё как минимум один слот (время доклада + вопросы) общается с участниками. Зачем мы так сделали? Чтобы увеличить время общения участников со спикером. Немудрено, что в кулуарах задавать вопросы проще, чем из зала.

На FrontFest мы пошли дальше и решили «разогреть» спикеров заранее — придумали шесть вопросов про технологии, будущее веба, работу и хобби. Знакомьтесь, задавайте свои вопросы в комментариях, приходите общаться лично на FrontFest!
Читать дальше →
Всего голосов 23: ↑22 и ↓1 +21
Просмотры 4K
Комментарии 0

Зачем нужны алгоритмы и паттерны

Блог компании HTML Academy Разработка веб-сайтов *JavaScript *


Нужны ли фронтендеру алгоритмы и паттерны проектирования?

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

Давайте разберемся!
Всего голосов 27: ↑6 и ↓21 -15
Просмотры 12K
Комментарии 17

Typescript. Свойства доступные только для чтения

Разработка веб-сайтов *JavaScript *TypeScript *

Перевод. Оригинал по ссылке.


В версии Typescript 2.0 был добавлен модификатор readonly. Свойствам помеченным модификатором readonly значение может быть присвоено только в момент инициализации, или в конструкторе того же класса. Любые другие присваивания значении запрещены.

Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 9.1K
Комментарии 7

Typescript. Тип object

Разработка веб-сайтов *JavaScript *TypeScript *
Перевод

В TypeScript версии 2.2 был введён новый тип object. Он описывает любой непримитивный тип.
Следующие типы принято считать примитивными в JavaScript:


  • boolean
  • number
  • string
  • symbol
  • null
  • undefined

Все остальные типы принято считать непримитивными.

Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 50K
Комментарии 19

GeekBrains открывает набор на бесплатные курсы подготовки программистов

Блог компании VK Ruby *JavaScript *Ruby on Rails *


Всем привет! Мы открываем набор на бесплатные курсы обучения для Ruby и Frontend-разработчиков. Для участия необходимо пройти конкурс. Пять лучших выпускников пройдут стажировку у нас и останутся работать в офисе. Заявки на обучение принимаются по 17 июня включительно. Подробности набора и программа обучения – под катом.

Читать дальше →
Всего голосов 22: ↑18 и ↓4 +14
Просмотры 15K
Комментарии 30

Сделаем веб снова великим

Разработка веб-сайтов *Open source *JavaScript *Программирование *TypeScript *
Перевод
image

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

Доходит до абсурда, чтобы создать простую форму ввода пользовательских данных приходится конфигурировать сначала babel, потом webpack, а затем еще и разбираться с настройками специфичными для выбранного фреймворка… А это пожалуй слишком много новых слов для новичка в команде, которому поручили эту простую на вид задачку. Нет, скорее всего проект уже будет настроен и сконфигурирован и новичка конечно же не бросят одного на произвол судьбы вкратце рассказав ему что по чем. Но стоит признать, что это действительно стало слишком сложно и мы похоже тратим значительную часть времени на все эти системы сборки и борьбу с конфигурацией.
Читать дальше →
Всего голосов 18: ↑11 и ↓7 +4
Просмотры 8.8K
Комментарии 43

В погоне за веб стандартами

Разработка веб-сайтов *Open source *JavaScript *TypeScript *
Перевод
Мы уже рассказывали с какими проблемами мы сталкиваемся занимаясь фронтенд разработкой в 2018 году. Давайте посмотрим как далеко мы уходим от стандартов когда пишем наш код



и как мы можем решить эту проблему.
Читать дальше →
Всего голосов 33: ↑23 и ↓10 +13
Просмотры 6.5K
Комментарии 27

Winter frontend meetup в OZON

Блог компании Ozon Tech Разработка веб-сайтов *JavaScript *
image

Привет, Хабр! 13 декабря встречаемся в офисе OZON, чтобы поговорить о фронтенде (с перерывами на пиццу и пиво, конечно). Разработчики из OZON, Яндекса и Альфа-Банка расскажут о том, как объединить зоопарк систем, провести рефакторинг, переехать на Typescript и внести свой вклад в развитие комьюнити.
Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Просмотры 2.9K
Комментарии 0

Redux. Простой как грабли

JavaScript *ReactJS *
Мне уже доводилось заглядывать в репозиторий библиотеки redux, но откуда-то появилась мысль углубиться в его реализацию. Своим в некотором роде шокирующим или даже разочаровывающим открытием я хотел бы поделиться с сообществом.

TL;DR: базовая логика redux помещается в 7 строк JS кода.

О redux вкратце (вольный перевод заголовка на гитхабе):
Redux — библиотека управления состоянием для приложений, написанных на JavaScript.

Она помогает писать приложения, которые ведут себя стабильно/предсказуемо, работают на разных окружениях (клиент/сервер/нативный код) и легко тестируемы.
Я склонировал репозиторий redux, открыл в редакторе папку с исходниками (игнорируя docs, examples и прочее) и взялся за ножницы клавишу Delete:

  • Удалил все комментарии из кода
    Каждый метод библиотеки задокументирован с помощью JSDoc весьма подробно
  • Убрал валидацию и логирование ошибок
    В каждом методе жёстко контролируются входные параметры с выведением очень приятных глазу подробных комментариев в консоль
  • Убрал методы bindActionCreators, subscribe, replaceReducer и observable.

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

А теперь давайте разберём то, что осталось
Читать дальше →
Всего голосов 52: ↑49 и ↓3 +46
Просмотры 169K
Комментарии 159

Изучаем принцип работы единиц измерения em на примере задачи «Верстка гибкого прелоадера»

CSS *HTML *

Я люблю придумывать различные элементы интерфейса, и однажды мне захотелось сделать прелоадер.


Для его реализации мне потребовалась следующая разметка:


<div class="preloader"></div>

Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 5.4K
Комментарии 12