Как стать автором
Обновить
16
9
Савельев Александр @Vordgi

JS Developer

Отправить сообщение

Next.js v15 — Работа над Ошибками

Время на прочтение12 мин
Количество просмотров16K

Привет! Это ставшая уже регулярной рубрика о релизах next.js (читайте релизы по v11, v12, v13, v14). Каждый релиз - набор нового, интересного и спорного. Новая версия не станет исключением. Но всё же новая версия интересна не столько новым функционалом, сколько изменением приоритетов и организации в next.js. И да, как вы уже догадались из названия, в значительной части релиз ценен проработкой ошибок и доработками.

В данной статье я не буду останавливаться на том что такое App Router или серверные компоненты - про это подробно расписано в предыдущих статьях. Только про новую версию и только про новые изменения.

Примечание: в статье отражены самые интересные изменения с призмы автора. Здесь разобраны коммиты и PR в ядро next.js, сообщения разработчиков и задачи, поэтому статья отражает больше изменений, чем представлено официально.

Читать далее
Всего голосов 7: ↑7 и ↓0+9
Комментарии15

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров10K

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


Я затрону не все аспекты. Их очень много, поэтому поговорю о: интерактивных элементах, доступности текста, анимации и изображениях. В статье буду использовать опыт моего незрячего знакомого (привет, Илья). Он внёс бесценный вклад. Уверен, что вам будет интересно. Поехали!

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

Важные аспекты Unicode, о которых должен знать каждый разработчик JavaScript

Уровень сложностиСредний
Время на прочтение22 мин
Количество просмотров9.6K


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


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


Приложив определенные усилия, прочитав кучу статей — я постепенно начал понимать что к чему, и это оказалось не так уж трудно. Хотя, некоторые статьи приходилось перечитывать раза по 3.


Как оказалось, Unicode — это универсальный и удобный стандарт, но работать с ним может быть непросто из-за множества абстрактных терминов.


Если у вас есть пробелы в понимании Unicode, то сейчас самое подходящее время их заполнить! Заварите себе вкусный чай или кофе ☕. И давайте погрузимся в удивительный мир абстракций, символов, астралов (astrals) и суррогатов (surrogates).


В этой статье объясняются основные концепции Unicode, которые создадут необходимую базу для работы с ним.


Вы также узнаете, как JavaScript взаимодействует с Unicode и какие трудности могут возникнуть на этом пути.


А также, каким образом новые функции из ECMAScript 2015 могут помочь в решении этих проблем.


Готовы? Давайте начнем!

Читать дальше →
Всего голосов 43: ↑43 и ↓0+43
Комментарии6

Стартап с нуля: история Github

Время на прочтение8 мин
Количество просмотров5.7K
Это интервью Криса Уонстрота, CEO и сооснователя Github. Данное интервью — часть серии “Bootstrapped, Profitable, & Proud” о компаниях с выручкой более миллиона долларов, обошедшихся без венчурного финансирования на старте и приносящих доход.

Читать дальше →
Всего голосов 142: ↑138 и ↓4+134
Комментарии35

Зачем айтишнику писать статьи?

Время на прочтение17 мин
Количество просмотров16K

Каждый день (да что там, каждый час) кто-то пишет на Хабр, а кто-то его читает. Авторы приходят на Хабр по-разному: чаще через песочницу или корпоративное приглашение, реже через инвайт друга, ещё реже — через общение с кураторами или модераторами. Они пишут обо всём: от сложнейших технических тем до здоровья и лайфхаков борьбы со стрессом. Большинство авторов (реально больше половины) пишут без внешней материальной мотивации: им не платит компания, они не авторы контент-студии и ещё не добрались до ППА. Но они пишут, делятся своим опытом, знаниями, мыслями, идеями и делают мир читателей интереснее, Хабр — лучше и ярче, а себя — более продвинутым. Кто-то пишет одну статью и уходит, кто-то прокачивается до техноевангелиста и становится легендой Хабра. 

Сегодня я постараюсь осмыслить, зачем автору писать статьи (причём не только на Хабр), а вы в комментариях скажете, что тут не так :-)

Читать далее
Всего голосов 31: ↑29 и ↓2+43
Комментарии44

Круто ты попал в ИТ

Время на прочтение53 мин
Количество просмотров70K

Когда я модерирую Хабр, периодами случаются недели или даже месяцы статей «Как войти в айти». Часть из них вызывают дискуссию и одобрение, часть — уходят в минус, довольно большая доля отклоняется из модераторской Песочницы. Как правило, к последним относятся короткие, на несколько абзацев, истории о том, сколько открытий чудных дарует первое открытие лекции по программированию, или, в лучшем случае, первый hello world. В таких условиях не могла не зародиться мысль о том, чтобы узнать, а какие истории стоят за теми, кто уже попал? Всё ли так классно, романтично и вдохновляюще и нет ли случайно разочарований? На наш опрос откликнулось 342 читателя Хабра — и мы получили колоссальное количество историй. И вот они — по-настоящему вдохновляют, радуют, печалят… существуют!

Читать далее
Всего голосов 40: ↑38 и ↓2+57
Комментарии102

Домашний веб-сервер для чайников

Время на прочтение14 мин
Количество просмотров284K

Привет, Хабр! Относительно недавно после пары лет перерыва в айти, потраченных на изучение японского языка, мне пришлось срочно обновлять свои знания на работе. Ну знаете, искать возможности исполнить все хотелки начальника, как и положено эникею. Меня ждало много увлекательных открытий, но при этом, как водится, и немало боли и борьбы с непонятками. Docker, контейнеры, реверс DNS и реверс прокси, получение TLS сертификатов. В какой-то момент я наконец дошёл до удобного решения, которым я теперь хочу поделиться.

В своё время домашний сервер очень облегчил бы мне понимание Docker’а, да и удобство работы с ним неслабо бы повысил. Поэтому возникла идея написать эту статью, после прочтения которой любой человек даже с поверхностными знаниями в информационных технологиях сможет поставить себе постоянно доступный домашний сервер на базе Docker Swarm с удобной веб-мордой, простым получением TLS-сертификатов и Heroku-подобным функционалом (для чего будем использовать PaaS CapRover). 

Статья, в общем-то, рассчитана на новичков, обладающих какими-то техническими знаниями — школьников старших классов, студентов и просто любителей — а потому вряд ли будет интересна серьёзным профессионалам.

Читать далее
Всего голосов 24: ↑22 и ↓2+23
Комментарии29

«Как я придумала термин open source». 3 февраля 1998 года Кристин Питерсон предложила новое название для free software

Время на прочтение8 мин
Количество просмотров2K
image3 февраля 1998 года был изобретён термин open source. Мало кто знает, что его предложила Кристин Питерсон (Christine Peterson), соосновательница Foresight Institute и химик по образованию. Сегодня в день очередной годовщины я решил опубликовать перевод воспоминаний Кристин о том самом легендарном совещании в феврале 1998 года, на котором пытались осуществить ребрендинг «свободного ПО» и сделать термин более понятным и в том числе заинтересовать бизнес. Конечно, там были и Эрик Реймонд, и Брюс Перенс, и другие, но само название ещё не было придумано. Не мне рассказывать какую популярность обрёл этот лаконичный термин, отражавший суть работы с такими свободными программами. Предлагаю вместе с Кристин вспомнить историю, произошедшую в 1998 году.

3 февраля отмечается годовщина появления термина «программное обеспечение с открытым исходным кодом». Поскольку программное обеспечение с открытым исходным кодом становится все более популярным и обеспечивает некоторые из самых важных инноваций нашего времени, мы размышляем о его развитии.

Я являюсь автором термина «программное обеспечение с открытым исходным кодом» и придумала его, когда работала исполнительным директором в Foresight Institute. Не будучи разработчиком программного обеспечения, как все остальные, я благодарна программисту Linux Тодду Андерсону за то, что он поддержал термин и предложил его группе.

Это рассказ с моей точки зрения о том, как я придумала этот термин, как он был предложен, и о том, как на него в последующем отреагировали. Конечно, существует множество рассказов о создании термина, например, от Эрика Реймонда и Ричарда Столлмана, но мой рассказ ещё ни разу не был опубликован до этого момента.

Введение термина «программное обеспечение с открытым исходным кодом» было сознательной попыткой сделать эту область деятельности более понятной для новичков и бизнеса, что считалось необходимым для его распространения среди более широкого сообщества пользователей.
Читать дальше →
Всего голосов 11: ↑7 и ↓4+4
Комментарии10

Бумажный интернет с поисковыми запросами в 1910 году

Время на прочтение6 мин
Количество просмотров6.9K

На этот раз мы расскажем о событиях далекого прошлого.

А именно про Mundaneum – работающий бумажный интернет Поля Отле. 100 лет назад он уже обрабатывал 1500 поисковых запросов в год со всего мира. Это было за 55 лет до того, как Тед Нельсон представил гипертекст, за 79 лет до рождения Всемирной паутины и на 84 года раньше появления W3Catalog.

Прочитайте несколько принципов работы поисковой системы Поля Отле. Знакомо?

Книга – надёжный, но неудобный источник информации, поскольку требует длительного поиска ответа на конкретный вопрос.

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

Документы должны ссылаться друг на друга, раскрывая информацию и дополняя её.

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

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

В соответствии с ними и работал Mundaneum. Это проект, опередивший своё время по всем фронтам – и морально, и технологически. Тем удивительнее, что это была не просто идея, а работающая система. Причём проект действовал с разной мощностью целых 29 лет – с 1910 по 1939-й.

Самое обидное, что его нельзя назвать дедушкой интернета и поисковых систем. Mundaneum был заброшен к началу Второй мировой войны, вскоре умер его создатель, а большинство идей не получили дальнейшей жизни и разрабатывались независимо от него другими учеными. Впрочем, обо всём – по порядку.

Читать далее
Всего голосов 20: ↑19 и ↓1+27
Комментарии16

Кибербезопасность для самых маленьких

Время на прочтение10 мин
Количество просмотров30K

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

Цель статьи - поделиться практиками, которые я применил для защиты данных при поднятии собственного VPS в публичной сети. Всегда, когда твой IP открыт всему Миру напоказ и доступен извне внутренних контуров сети - это означает, что любой прохожий может устроить тебе неприятности: похитить твои данные, завладеть твоим сервером и сломать твое замечательное приложение. Я буду приводить пример атаки, показывать, как ее можно заметить и после этого будем разбирать возможные способы защиты.

Защитить данные!
Всего голосов 22: ↑22 и ↓0+22
Комментарии32

Bash-скрипты: начало

Время на прочтение11 мин
Количество просмотров1.8M
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

Сегодня поговорим о bash-скриптах. Это — сценарии командной строки, написанные для оболочки bash. Существуют и другие оболочки, например — zsh, tcsh, ksh, но мы сосредоточимся на bash. Этот материал предназначен для всех желающих, единственное условие — умение работать в командной строке Linux.


Читать дальше →
Всего голосов 69: ↑61 и ↓8+53
Комментарии123

Погромист. Мои самые эпичные провалы за всю карьеру

Время на прочтение13 мин
Количество просмотров105K

Я люблю критику. Если вы не заметили, я, как старый дед, всё поливаю грязью и всем недоволен.

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

Читать далее
Всего голосов 231: ↑222 и ↓9+269
Комментарии204

GitLab: open source версия Github

Время на прочтение1 мин
Количество просмотров88K
Хотите поднять клон Github на своём собственном сервере с приватными репозиториями за корпоративным файрволом? Теперь вы можете это сделать благодаря появлению open source проекта GitLab. Он является хорошей альтернативой для корпоративной версии Github стоимостью до $5000 в год.

По сравнению с Gitorious, система GitLab отличается приятным интерфейсом и гораздо проще в установке.

13 октября вышла версия 1.0, через неделю обещают выкатить 1.1, а затем новые релизы GitLab 1.2, 1.3 и т.д. будут выходить каждый месяц.
Читать дальше →
Всего голосов 98: ↑95 и ↓3+92
Комментарии62

Способы отслеживания роста навыков программиста

Время на прочтение11 мин
Количество просмотров48K

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

Читать далее
Всего голосов 22: ↑18 и ↓4+16
Комментарии51

Шпаргалка по пакетному менеджеру NPM

Время на прочтение5 мин
Количество просмотров411K

npm — это пакетный менеджер node.js. С его помощью можно управлять модулями и зависимостями.
Небольшая шпаргалка всех моих любимых команд npm:

Читать дальше →
Всего голосов 49: ↑44 и ↓5+39
Комментарии11

Как построить разработку дизайна очень большого и долгого проекта

Время на прочтение7 мин
Количество просмотров80K
Когда проект большой, дизайнеров над ним работает много, одновременно и очень далеко друг от друга — постоянно возникают проблемы.



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

Посмотрим как они выкрутятся?
Читать дальше →
Всего голосов 123: ↑117 и ↓6+111
Комментарии66

Как я оседлала лошадку тревожной прокрастинации, и что из этого вышло

Время на прочтение11 мин
Количество просмотров26K

Бывают такие задачи, которые становятся камнем преткновения, и затыкают запланированное течение дел до такой степени, что формируется что-то похожее на водопад. Другие задачи потоком хлещут поверх затора, но сам камень не сдвигается.

Таким камнем стала для меня эта статья. Я задумала написать её ещё в апреле. Натолкнул меня на эту мысль ролик про прокрастинацию. К концу видео автор прорисовывают связь между прокрастинацией и тревожностью. По ходу просмотра и ревизии собственного опыта и наблюдений, всплыло несколько мыслей про то, откуда что берётся, как связаны между собой тревога, усталость и прокрастинация, и как с этим всем обращаться. И, самое главное, как развернуть это всё себе на пользу.

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

Читать далее
Всего голосов 27: ↑22 и ↓5+26
Комментарии22

Зачем делать копию Facebook под Internet Explorer 6 в 2021 году?

Время на прочтение15 мин
Количество просмотров28K

В августе этого года Microsoft прекращает поддержку Internet Explorer 11, тем самым заканчивает эпоху браузеров, которые несли в себе одну очень важную миссию… скачивали нормальный браузер знакомили людей с когда-то прекрасным местом как интернет.

И, в связи с этим, меня посетила мысль — «А не сделать ли мне современный сайт так, как делали их тогда?». Отличный повод вспомнить как начиналась моя дорога в разработку и поностальгировать за теми годами. Вечер свободный, каких-то сложностей с вёрсткой под Internet Explorer я уже не припомню. Так-то почти 15 лет прошло. Думаю, справлюсь за час сильно не напрягаясь…
Продолжить чтение...
Всего голосов 82: ↑81 и ↓1+109
Комментарии65

Многократное использование UI-компонентов в масштабах организации

Время на прочтение11 мин
Количество просмотров5.8K
Хотя React и другие библиотеки и фреймворки для веб-разработки упрощают многократное использование компонентов, сама собой такая схема работы не налаживается. В этой сфере всё ещё существуют сложные задачи, которые особенно характерны для тех случаев, когда речь идёт о масштабах крупных организаций. Решение этих задач подразумевает необходимость траты сил и времени на согласование деятельности команд разработчиков, занимающимися в организациях различными проектами. В реальности даже найти нужный программисту компонент, разработанный другой командой, это уже очень непросто.



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

  • Реализация возможности поиска компонентов. Где можно найти компонент?
  • Упрощение процесса предоставления общего доступа к компонентам. Как мне предоставить общий доступ к созданным мной компонентам?
  • Улучшение качества компонентов. Соответствует ли компонент требованиям PayPal (речь идёт о доступности, локализации, производительности, о возможностях по рендерингу компонента в мобильных средах)?
  • Поддержка совместной работы над компонентами. Как наладить совместную работу над пользовательским интерфейсом?
Читать дальше →
Всего голосов 18: ↑16 и ↓2+22
Комментарии2

Животное устало

Время на прочтение2 мин
Количество просмотров88K
Животное стареет. Ничего удивительного. Я знала, что в конце концов это произойдёт. Но не предусмотрела никаких мер, чтобы справиться с ситуацией. Реальность подкралась незаметно. И теперь с ней приходится жить…

Оно мечется по ночам, стонет от болячек, не может найти удобное положение для сна. Будит меня слишком рано, по утрам мышцы деревенеют и не хотят двигаться, и оно не может снова заснуть. А если оставить его спокойно посидеть, то оно задремлет прямо посреди дня. Стало сложно найти продукты, совместимые с его пищеварением. Оно отвергает всё больше и больше продуктов, но не соглашается на монотонную диету, которая вроде бы ему подходит. Несмотря на ограниченное питание, существо набирает вес и утолщается в середине. Одновременно теряет силу и гибкость.
Читать дальше →
Всего голосов 188: ↑166 и ↓22+202
Комментарии241
1

Информация

В рейтинге
724-й
Откуда
Тбилиси, Грузия, Грузия
Зарегистрирован
Активность