Pull to refresh
0
0
Send message

Как рисовать пиктограммы, если сроки поджимают: пошаговая инструкция

Level of difficultyEasy
Reading time4 min
Views8.4K

Привет! Меня зовут Ксюша Ершова, я начинающий UX-проектировщик в Selectel. Моя миссия в компании — сделать интерфейс панели управления удобным и интуитивно понятным для пользователя. А если говорить про локальные задачи, я исследую пользовательский опыт, проектирую интерфейсы, тестирую их и анализирую метрики.

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

Осталось только придумать, какие иконки нужны, и заказать их у дизайнеров. Но жизнь не всегда проста и предсказуема: команда была загружена, а фронтенд находился в минуте от верстки страницы. Ждать было нельзя — на фоне горящих дедлайнов я взяла дело в свои руки. И все оказалось не так сложно, как я себе представляла. В этой статье дам пошаговую схему и расскажу, как создать пиктограмму с нуля и вписать ее в сетку.

Дисклеймер: мы будем рисовать пиктограмму Тирекса потому, что мне нравится Тирекс :) Эта иконка не пойдет в продакшн в Selectel, я создаю ее специально для материала в качестве наглядного примера.
Читать дальше →
Total votes 36: ↑36 and ↓0+47
Comments5

Notion умер, да здравствует Obsidian

Level of difficultyEasy
Reading time4 min
Views42K

Пару дней назад у меня, как и у многих пользователей, появилось предупреждение об уходе Notion из России. Я начал срочно искать альтернативу сервису, которым я пользовался более 5 лет.

В Notion я хранил личные задачи и заметки. Notion был базой знаний моей жизни. Он повидал бюджет на свадьбу и бюджет на переезд. Он даже повидал план ремонта! Это приложение было всегда открыто на моём компьютере.

В статье расскажу, из каких программ я выбирал, почему остановился на Obsidian и как за один вечер с помощью плагинов донастроил сервис, чтобы сохранить интерфейс и большую часть привычного функционала Notion.

Читать далее
Total votes 36: ↑31 and ↓5+31
Comments172

Адекватная латиница для русского языка

Level of difficultyEasy
Reading time11 min
Views11K

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

В первую очередь адекватный стандарт нужен для конвертации названий и имен для международных документов. Очевидно, что паспорта, водительские удостоверения и даже визитки должны быть с нормальными именами, написанным по правилам русского языка, а не английского, немецкого или французского. Сейчас в России и Казахстане используется стандарт конвертации из Британского Географического общества, который был принят столетия назад и предназначался для населенных пунктов, а не имен. И цель была отличать их от английских названий, поэтому, например, вместо очевидной буквы H для русской Х там используется KH — две буквы, которые носители английского языка не умеют читать, поскольку в их языке такого нет. И в русском тоже нет. Этот стандарт не подходит для нормального использования. Он даже не всегда одинаково относится к тем же самым буквам: Ц может превратится в C или в TS. А буква Ё чаще всего становится буквой E.

Второй областью использования является интернет и любые программно-аппаратные системы, где принято использовать латинские буквы. Есть такое понятие — «Человекопонятный URL» — сокращенно ЧПУ. Он используется для удобства пользователя, который может понять содержимое страницы сайта из ее адреса. Сейчас этот формат не стандартизирован и появляется масса вариантов, которые, если быть честным, все-таки больше похожи на стандарты перевода русскоязычных имен для документов на латиницы. Для программистов иногда может быть удобно именовать функции, переменные, таблицы и др. с помощью русских слов, но приходится это делать латинскими буквами. Для этого тоже очень нужен единый адекватный стандарт, который передает особенности русского языка, а не какого-то другого, как происходит это сейчас.

Читать далее
Total votes 43: ↑28 and ↓15+20
Comments198

SSH-Туннели простыми словами

Level of difficultyEasy
Reading time7 min
Views21K

В какой-то момент у меня возникла необходимость разобраться с простыми SSH-туннелями: как из запускать и какие туннели могут помочь мне (обычному web-разработчику). Разобраться в этом удалось и я решил поделиться пояснениями в простой понятной форме.

Читать далее
Total votes 17: ↑16 and ↓1+18
Comments27

Figma закрыла Dev Mode: пути обхода и их краткий обзор

Reading time5 min
Views39K

В июне 2023 года Figma выпустила масштабное обновление: появился режим разработки Dev Mode. Эта функция обеспечивает плавный переход от дизайна к разработке. Такое новшество сразу же пришлось по душе многим. Однако совсем недавно пропала возможность пользоваться режимом бесплатно. Как быть и какие есть альтернативы — рассказываем под катом!
Читать дальше →
Total votes 46: ↑46 and ↓0+46
Comments27

Веб-приложение на Node и Vue, часть 1: структура проекта, API, аутентификация

Reading time13 min
Views93K
Перед вами — первый материал из серии, посвящённой разработке полноценного веб-приложения, которое называется Budget Manager. Основные программные средства, которые будут использованы в ходе работы над ним — это Node.js для сервера, Vue.js для фронтенда, и MongoDB в роли базы данных.



Эти материалы рассчитаны на читателей, которые знакомы с JavaScript, имеют общее представление о Node.js, npm и MongoDB, и хотят изучить связку Node-Vue-MongoDB и сопутствующие технологии. Приложение будем писать с нуля, поэтому запаситесь любимым редактором кода. Для того, чтобы не усложнять проект, мы не будем пользоваться Vuex и постараемся сосредоточиться на самом главном, не отвлекаясь на второстепенные вещи.

Автор этого материала, разработчик из Бразилии, говорит, что ему далеко до JavaScript-гуру, но он, находясь в поиске новых знаний, готов поделиться с другими тем, что ему удалось найти.
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments3

Библиотека контролов для Avalonia UI

Level of difficultyEasy
Reading time8 min
Views12K

Последний год наша команда работала над кроссплатформенной версией САПР Delta Design. В результате этой работы была создана своя библиотека UI контролов для Avalonia, которая поддерживает как ОС Windows, так и ряд систем Linux, включая российские АстраЛинукс, РедОс, а также их модификации под Эльбрус.

Создание единой библиотеки контролов EremexControls.NET позволило компании ЭРЕМЕКС значительно ускорить темпы разработки и показать мультиплатформенную версию САПР Delta Design раньше обещанного срока. Применение готовых типовых блоков дало возможность инженерам фокусироваться на предметной области, не отвлекаясь на другие задачи. Сейчас библиотека контролов используются в трех внутренних проектах компании.

Под катом обзорная статья по новому продукту от компании ЭРЕМЕКС – библиотека компонентов EremexControls.NET для Avalonia UI.

Читать далее
Total votes 46: ↑46 and ↓0+46
Comments31

Причины говнокода во фронтенде. Мнение мимокрокодила

Level of difficultyEasy
Reading time10 min
Views37K

Мне не раз попадались такие проекты, от кода которых берет оторопь. Такое чувство, что сами авторы не смогут объяснить - почему у них все выглядит именно так. В этот момент у меня возникает вопрос: как так получилось? Если вас он тоже волнует, то могу пожелать лишь приятного чтения.

Читать
Total votes 68: ↑56 and ↓12+53
Comments118

Я разработчик, а не компилятор

Level of difficultyEasy
Reading time3 min
Views53K

Недавно у меня было телефонное собеседование, на котором мне задавали разнообразные вопросы по Java. Это стандартное собеседование, и большинство вопросов тоже было вполне стандартным:

Что такое полиморфизм?

В чём разница между List и Set? Когда стоит использовать первое, а когда второе?

Где можно столкнуться со взаимной блокировкой (deadlock)?

В чём разница между строгой и слабой типизацией?

В основном вопросы были вполне закономерными. Лично мне не нравится вопрос про полиморфизм, ведь он настолько тесно связан с большинством объектно-ориентированных языков и наследованием, что многие люди, используя его (например, при переопределении или перегрузке метода), даже не думают «О! Это же полиморфизм в действии!». Вместо этого я бы задал вопрос «Что такое наследование, и где оно используется», потому что в большинстве объектно-ориентированных языков для него есть ключевое слово или паттерн. Но это уже мои личные предпочтения, и я вполне понимаю логику проводившей собеседование компании.

Читать далее
Total votes 118: ↑109 and ↓9+127
Comments201

Публикация локального сервера из дома в интернет

Level of difficultyEasy
Reading time10 min
Views53K

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

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

Мы рассмотрим здесь несколько сценариев - статический белый айпи, динамический белый айпи, и серый. Для серого рассмотрим варианты с готовыми сервисами, с помощью Keenetic и с помощью ssh туннеля. Погнали!

Читать далее
Total votes 57: ↑55 and ↓2+62
Comments97

Как я сделал проект для себя и получил приз от Telegram

Level of difficultyMedium
Reading time12 min
Views20K

Всем привет! Telegram устроил конкурс на разработку мини-приложений, где моя работа заняла призовое место. В конкурсе была высокая конкуренция, так как выбор технологий и идеи для приложения был свободный. В связи с этим Telegram даже увеличил общую стоимость призовых. В этой статье разберём как проходила разработка, с какими сложностями столкнулся и чему научился.

Читать далее
Total votes 33: ↑32 and ↓1+34
Comments15

На пути из Web к Native, часть 1

Level of difficultyMedium
Reading time4 min
Views9.3K

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

Оставь надежду, всяк сюда входящий. Или.. нет..?

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

Я решил поставить перед собой большую цель: давным-давно...

Читать далее
Total votes 14: ↑12 and ↓2+15
Comments17

Запуск аналогов ChatGPT на домашнем ПК в пару кликов и с интерфейсом

Level of difficultyEasy
Reading time6 min
Views216K

--- Обновление статьи 9 Августа 2023 ---

В течении последнего полугода в сфере текстовых нейронок всё кипит - после слитой в сеть модели Llama, aka "ChatGPT у себя на пекарне" люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен, а хорошие по мощности нейронки можно запускать локально.

Основная проблема в том, что всё это требует глубоких технических знаний.

Но в этой статье я расскажу, как запустить добротную нейросеть на домашнем ПК с 16ГБ ОЗУ в несколько кликов. Буквально в несколько кликов - копаться в консоли не придётся.

Читать далее
Total votes 117: ↑116 and ↓1+142
Comments180

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

Reading time6 min
Views16K

Время от времени мы слышим в кругу разработчиков разговоры о “санации пользовательского ввода” с целью предотвращения атак с использованием межсайтового скриптинга. Эта техника, хоть и придумана из лучших побуждений, приводит к ложному чувству безопасности, а иногда и искажает совершенно корректный ввод.

Читать далее
Total votes 17: ↑11 and ↓6+8
Comments153

Укрощаем одноглазого змея. Разбираемся с WireGuard и делаем свой умный VPN

Reading time29 min
Views290K

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


Если ты пользуешься VPN, то и сам наверняка сталкиваешься с блокировками зарубежного трафика. К примеру, могут не открываться pochta.ru, leroymerlin.ru, rt.ru, avito.ru.


Получается мем.



Каждый с этим борется как может. Например, на устройствах Apple родными средствами можно настроить автоматизацию, которая будет запускать VPN, когда открываешь определенные приложения (например, Twitter), а когда выходишь из них — выключать обратно. Но это костыль, а хочется все сделать красиво, да еще и прокачать навык работы с сетью.


Поэтому мы сейчас попробуем «включать VPN чуть-чуть».

Читать дальше →
Total votes 43: ↑42 and ↓1+51
Comments73

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Software Developer, Frontend Developer
Junior
From 65,000 ₽
JavaScript
HTML
CSS
JQuery