Pull to refresh
4
0
Valery Semenenko @hiperteksto

Frontend Developer

Send message

Изучение TypeScript — Полное руководство для начинающих. Часть 1 — Введение и примитивные типы данных

Reading time5 min
Views82K

Всем привет. Меня зовут Лихопой Кирилл и я - Fullstack-разработчик.

Представляю вашему вниманию cвою первую статью на Хабре, a точне перевод англоязычной статьи, на тему изучения TypeScript (TS, Тайпскрипт).

Другие части:
Часть 2 - Ссылочные типы данных
Часть 3 - Классы и интерфейсы
Часть 4 - Литералы и дженерики
Часть 5 - Строгий режим и сужение типов

Читать далее
Total votes 12: ↑8 and ↓4+7
Comments9

Angular Universal: работа в крупном e-commerce

Reading time10 min
Views6.4K

Привет, меня зовут Дмитрий Дружков, я тимлид фронтенд команды в Утконос Онлайн. В этой статье я расскажу, чем полезен Angular Universal в e-commerce проектах, как выбрать вид рендеринга, как выглядит первоначальная настройка технологии на примере нашего сайта и шаги по ускорению, а также раскрою плюсы и минусы Universal. Статья будет интересна тем, кто:

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

Как надёжно удалить аккаунты Facebook и других соцсетей. Все уходят в Telegram

Reading time6 min
Views28K
© Glenn Harvey, из статьи «Можно ли спасти социальные медиа?»

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

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

… и так далее.

Больше всего денег предлагают за разработку методов, как заработать ещё больше денег. Так устроено современное общество потребления, а лучшего миропорядка человечество ещё не придумало. Разработчики осознают проблему, но продолжают работать в фирмах с сомнительной репутацией.
Читать дальше →
Total votes 59: ↑45 and ↓14+52
Comments111

Английский — это просто

Reading time3 min
Views15K

Меня зовут Денис, я являюсь Sysadmin/DevOps в небольшой шведской компании. Работаю удаленно 3 года. В Otus преподаю курс, связанный с мониторингом в Linux. Очень часто я слышу вопрос: «на работе на английском общаетесь? Как у тебя с языком?» Я думаю понятно, что не на шведском ).

Давайте обо всём по порядку.

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

Некоторое время назад, работая фрилансером, решил попробовать Upwork (toptal тоже штурмовал). И когда начал работать с англоязычными заказчиками, мои знания очень пригодились. Но все же я живу в русскоязычной среде, трудности возникали, куда же без них. Приходилось бороться и преодолевать.

Когда только начинал работать с зарубежными клиентами, несмотря на знания языка, я практически каждое предложение проверял в переводчике google translate или yandex translate. Со временем эта паранойя прошла. Одновременно я брал уроки, чтобы улучшить язык, именно разговорные навыки, потому что изначально я больше мог только вести переписку, но общаться было страшновато. Несмотря на тот факт, что я бывал в командировках по Европе и, конечно, прокачал язык.

И вот я бы хотел поделиться своим опытом изучения языка, какие приемы использую. Может, кто-то найдет что-то для себя полезное.

Читать далее
Total votes 13: ↑7 and ↓6+2
Comments11

Простой способ создания и переиспользования модальных диалогов во Vue 3

Reading time5 min
Views7.6K

image


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


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

Читать дальше →
Total votes 1: ↑1 and ↓0+1
Comments4

Авторизация в PostgreSQL. Часть 1 — Роли и Привилегии

Reading time11 min
Views34K
image

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

Несмотря на важность темы, авторизация в базе данных являлась моим слабым местом в начале карьеры. NoSQL был самым крутым парнем на районе, а мир веб-разработки соблазняли фреймворки (например Rails), которые давали более приятный опыт разработки, нежели сложные SQL-скрипты. Но мир меняется. SQL и реляционные базы данных снова оказались в центре внимания, поэтому важно научиться пользоваться ими безопасно и эффективно. В этой серии статей я раскрою основные области авторизации в базах данных с акцентом на PostgreSQL, поскольку это одна из самых зрелых и функциональных СУБД с открытым исходным кодом.
Читать дальше →
Total votes 10: ↑7 and ↓3+6
Comments1

Объяснение микрофронтендов

Reading time4 min
Views27K

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

Микрофронтенды могут быть следующей важной вехой в фронтенд разработке.

Давайте я вам расскажу почему!

Читать далее
Total votes 4: ↑2 and ↓20
Comments7

Как я делал сайт визитку на Angular

Reading time26 min
Views18K

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

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

Копаемся в TypeScript: пишем свои Utility Types. Ключевое слово infer

Reading time7 min
Views5K

Йо, Хабр! Меня зовут Алексей Акулов. Я разрабатываю клиентскую часть продукта BIMeister.

Почти каждый сталкивался с типами Partial или Record. Там таких еще много, но суть в том, что они входят в ту самую группу Utility Types. Такие штуки представляют из себя разные преобразования одних типов в другие. Partial помечает все поля опциональными. Record отдает тип с бесконечным числом полей одного типа. Тут, вроде, понятно, но как писать собственные? Что такое infer? Как он может нам помочь?

Читать далее
Total votes 8: ↑7 and ↓1+7
Comments2

TRY / CATCH в PostgreSQL

Reading time2 min
Views22K

Во встроенном процедурном языке PL/pgSQL для СУБД PostgreSQL отсутствуют привычные операторы TRY / CATCH для для перехвата исключений возникающих в коде во время выполнения. Аналогом является оператор EXCEPTION.

Читать далее
Total votes 7: ↑6 and ↓1+8
Comments6

Погружаемся в CSS: как использовать :where ()

Reading time6 min
Views11K

Функция :where() помогает писать меньше кода, применять стили ко всему списку и снимает головную боль при использовании CSS reset. В статье разберёмся, как это работает, и посмотрим на примеры использования.

Читать далее
Total votes 17: ↑15 and ↓2+15
Comments6

WebRTC для всех и каждого. Часть 2

Reading time30 min
Views13K



Привет, друзья!


Представляю вашему вниманию вторую часть перевода этой замечательной книги по WebRTC. Данная часть посвящена безопасности, процессу установки соединения и обмену медиаданными (части 4-6 оригинала).


Ссылка на первую часть перевода.


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 7: ↑5 and ↓2+5
Comments4

А как настроен ваш умный дом? Homekit, Яндекс дом, голосовые сценарии, web интерфейс с управлением и аналитикой

Reading time6 min
Views10K

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

В качестве основной системы выбрал контроллер с ПО Z-Way на основе платы расширения RaZberry 7 Pro.

Плата позволяет мини-компьютеру Raspberry Pi управлять оборудованием умного дома Z-Wave. Есть встроенная интеграция с HomeKit, Яндекс Алисой, Google Home и понятный web интерфейс. Совместим с Raspberry Pi 1/2/3A/3B/3A+/3B+/4B и даже возможно подключить к Orange Pi.

Нужно только установить ПО Z-Way. Я использовался имеющийся у меня Raspbery Pi 3b+.

Читать далее
Total votes 9: ↑8 and ↓1+12
Comments15

Docker: заметки веб-разработчика. Итерация четвертая

Reading time7 min
Views12K


Привет, друзья!


В этой статье я продолжаю (и заканчиваю) делиться с вами заметками о Docker.


Заметки состоят из 4 частей: 2 теоретических и 2 практических.


Если быть более конкретным:


  • первая часть посвящена Docker, Docker CLI и Dockerfile;
  • во второй части рассказывается о Docker Compose;
  • в третьей части мы разрабатываем приложение, состоящее из трех сервисов: клиента на React, админки на Vue и сервера на Express, и базы данных PostgreSQL, взаимодействие с которой осуществляется с помощью Prisma.

В этой заключительной части мы "контейнеризуем" наше приложение.


Репозиторий с кодом приложения.


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 7: ↑4 and ↓3+4
Comments0

WebRTC для всех и каждого. Часть 1

Reading time26 min
Views61K



Привет, друзья!


Представляю вашему вниманию первую часть перевода этой замечательной книги по WebRTC. Данная часть посвящена тому, что такое WebRTC, процессу сигнализации и установки соединения (первые 3 части оригинала).


Справедливости ради следует отметить, что на Хабре уже публиковался "вольный" перевод первых 2 частей оригинала (часть 1, часть 2), но автор по какой-то причине решил не продолжать. Я, свою очередь, решил начать с самого начала, без лишних вольностей и сокращений.


Ссылка на вторую часть перевода.


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments6

Основы и практика CSS Grid Layout:  как использовать двумерную раскладку для повседневных задач

Reading time11 min
Views58K

Наш фронтенд-разработчик Данила Абрамов @DanilAbr подготовил материал для новичков и практикующих разработчиков, у которых не было возможности разобраться с Grid. В первой части статьи — основные CSS-свойства и принципы раскладки, без которых невозможно понять Grid. Если вы знакомы с основами, переходите сразу со второй части — там примеры решения реальных задач.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments3

Angular без CLI Туториал

Reading time12 min
Views7.4K

Фреймворк Angular используется при создании SPA и предлагает большое количество инструментов как для создания, непосредственно, элементов интерфейса, так и CLI для создания и управления структурой файлов, относящихся к приложению.

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

Я задался таким вопросом, и, после изучения этого вопроса я собрал это в туториал.

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

Ruby: cheatsheet для изучения

Reading time14 min
Views60K
Это — статья-roadmap-cheatsheet для изучающих Ruby. Вместо того, чтобы рассказывать очередной how-to я постараюсь расписать все те вещи, которые, на мой взгляд, можно изложить кратко и емко, с упором на то, что программисту пришедшему с других языков и платформ может показаться не очевидным, антипоисковым и просто затратным по времени на изучение без подсказок — на остальное просто дам ссылки. Не смотря на то, что в природе существует множество туториалов/кастов/книг/чего угодно по чему угодно — именно такого формата мне самому всегда не хватает. И по сути, это те вещи, которые чаще всего рассказываю при вопросах «а как оно вообще?», «с чего начать?», «а как делается такая вот штука?», «а какой gem лучше?». Кстати, пока работал над этой статьей на Хабре появилась похожая про Python — видимо, идея витает в воздухе.
Читать дальше →
Total votes 49: ↑49 and ↓0+49
Comments20

Где искать работу в IT?

Reading time5 min
Views213K

Ты решил «Войти в Айти» или уже работаешь в IT и хочешь найти место получше. Где же найти работу и не потратить на это несколько месяцев?

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

Читать далее
Total votes 14: ↑7 and ↓7+5
Comments18
1
23 ...

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity

Specialization

Frontend Developer
Lead
Angular
TypeScript
Vue.js