Pull to refresh
14
0
Илья @Gorily

Программист

Send message

Как правильно верстать в 2022 году. Часть 1

Reading time11 min
Views88K

Меня зовут Николай, я Frontend-разработчик IT-компании Relog. Хочу рассказать о самых распространённых ошибках в вёрстке современных проектов.

Дело в том, что лишь малая часть современных фронтендеров обращает внимание на работу с HTML и CSS, предпочитая готовые решения, вроде UI-библиотек и систем сеток. Но эти решения неидеальные и приходится дописывать обёртки вокруг них, видоизменять код, переписывать стили и совершать прочие действия для соответствия требованиям проекта. Тут-то и начинаются проблемы: вёрстка местами становится избыточной, стили переназначются через important и с каждым релизом проект всё сложней поддерживать. Я уже не говорю об удобстве использования и доступности. Об этом думают вообще в последнюю очередь.

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

Читать далее
Total votes 48: ↑46 and ↓2+44
Comments42

Как сделать интерактивную карту с маршрутами на Python

Reading time7 min
Views29K

Распространённая задача программистов в работе с геопространственными данными — отобразить маршруты между различными точками. Решением, которое может понадобиться в разработке веб-сайта, делимся к старту курса по Fullstack-разработке на Python.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments5

Инструменты для решения NER-задач для русского языка

Reading time5 min
Views5.1K

Зачастую приходится работать с большими объемами документов, к примеру, исполнительными листами, заявлениями, договорами, из текстов которых нам необходимо извлечь весьма конкретную информацию: ФИО, даты рождения, наименования должности, паспортные данные, адрес, ИНН и наименование компаний, даты подписания документов и так далее. Всё это относится к задаче распознавания именованных сущностей (NER). Какие инструменты могут помочь нам в решении данной задачи для русского языка?

Пожалуй, первое что приходит в голову Data Scientist’у, когда речь идет о NLP или конкретно NER-задачах — это проекты DeepPavlov. Немного углубимся в данную тему, разберем все по порядку.

DeepPavlov — это фреймворк (open source), который помогает в разработке различных голосовых ботов, соответственно, решая различные NLP задачи.

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

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

Уязвимость Safari 15 может легко раскрыть вашу личность любому веб-сайту

Reading time6 min
Views7.6K

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

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

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

48 полноценных бесплатных книг для программистов (happy developer's day)

Reading time2 min
Views107K

Привет, Хабр! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию. Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг: .NET, Алгоритмы, Android, iOS, Angular, C, C++, C#, JS, Linux, Python. В целом, найдется почти любая тема, которая приходит в голову.

Дисклеймер. Все эти книги взяты с одного ресурса, который существует за счет донейшенов. Получить книги можно без осуществления донейшенов, ресурс полностью бесплатный, пожертвования опциональны. Все книги написаны на основе контента со StackOverflow и являются код-ориентированными. Книги со временем обновляются. По ссылкам -- книги, актуальные на 15.09.2021.

Читать далее
Total votes 100: ↑99 and ↓1+98
Comments55

ruT5, ruRoBERTa, ruBERT: как мы обучили серию моделей для русского языка

Reading time5 min
Views21K


В зоопарке русскоязычных моделей прибавление: в открытом доступе появилась модель text2text-генерации ruT5 и модели-энкодеры ruRoBERTa и ruBERT, формирующие семантическое пространство текста. Модели можно использовать для создания классификаторов текстов, кластеризации, извлечения информации, суммаризации и многих других NLP-задач.

Ещё в начале пути создания виртуальных ассистентов Салют мы, команда NLP R&D SberDevices, поняли, что нужно обучать базовые языковые модели для русского языка, ориентируясь на успешные модели для английского. Опыта в этом, надо сказать, у нас было немного. Прошло два года, и сейчас мы обучили множество моделей, которыми хотим поделиться с вами.

С нашими «гптшками» вы уже знакомы, и про них мы уже рассказывали. Сейчас мы решили расширить наш открытый зоопарк и остальными моделями. Их все легко дообучать и использовать в проме на одной GPU, в том числе в Colab. Мы надеемся, что эти модели будут полезны русскому NLP-сообществу и помогут родиться многим интересным решениям.

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

Все модели размещены в формате PyTorch-Transformers. Вы можете скачать их в HF transformers.

Colab с примерами.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments12

Поддержание аккуратной истории в Git с помощью интерактивного rebase

Reading time5 min
Views42K

Interactive rebase — один из самых универсальных инструментов Git'а. В этой статье от автора Git-клиента Tower рассказывается, как корректировать сообщения при коммитах и исправлять свои ошибки.

Читать далее
Total votes 55: ↑54 and ↓1+53
Comments44

Как победить гроссмейстера, не умея играть в шахматы. Про злоупотребление доказательства с нулевым знанием

Reading time4 min
Views11K

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

Читать далее
Total votes 31: ↑28 and ↓3+25
Comments23

Защита .Net кода от реверс инженеринга с помощью ConfuserEx 0.6.0

Reading time10 min
Views10K

В статье рассказывается об опыте боевого применения обфускатора ConfuserEx 0.6.0 для защиты сервиса .Net под Windows и Mono. Дело было в далеком 2016 году, но, я думаю, тема не потеряла актуальность и сейчас.

Читать дальше →
Total votes 15: ↑12 and ↓3+9
Comments15

Сравниваем работу open source Python — библиотек для распознавания именованных сущностей

Reading time13 min
Views22K

Введение


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

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

Распознавание именованных сущностей


Несколько слов о самой проблеме. Named Entity Recognition (NER) — это направление технологии обработки человеческого языка, программная реализация которой позволяет находить в речи и тексте опредмеченные категории слов и словосочетаний. Сначала это были географические наименования, имена людей, организаций, адреса, однако в настоящее время это понятие сильной расширилось и с помощью NER мы ищем в тексте относительные и абсолютные даты, числа, номера и т.д.
Выявление именованных сущностей — это «ворота» в человеческий язык, оно позволяет выявлять и обрабатывать намерения человека, устанавливать связи слов в его речи и реальным миром.

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

В двух словах: Лучшие практики Async/Await в .NET

Reading time11 min
Views39K
В преддверии старта курса «Разработчик C#» подготовили перевод интересного материала.




Async/Await — Введение


Языковая конструкция Async/Await существует со времен C# версии 5.0 (2012) и быстро стала одним из столпов современного программирования на .NET — любой уважающий себя C# разработчик, должен использовать ее для повышения производительности приложений, общей отзывчивости и разборчивости кода.

Async/Await делает обманчиво простым внедрение асинхронного кода и избавляет программиста от необходимости разбираться в деталях его обработки, но многие ли из нас действительно знают, как она работает, и каковы преимущества и недостатки этого метода? Существует много полезной информации, но она разобщена, поэтому я решил написать эту статью.

Ну что ж, давайте углубимся в тему.
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments27

Утечка персональных данных предположительно сотрудников ОАО «РЖД»

Reading time1 min
Views74K

Неизвестные, опубликовали в свободном доступе персональные данные 703,000 человек, предположительно сотрудников ОАО «РЖД».


Читать дальше →
Total votes 62: ↑60 and ↓2+58
Comments98

Узнаем паспортные данные физического лица по ФИО (если есть залоговое имущество)

Reading time1 min
Views456K
А так же узнаем ФИО и паспортные данные по номеру автомобиля если он взят в кредит.
Без регистрации и СМС.
Читать дальше →
Total votes 102: ↑98 and ↓4+94
Comments87

Контактная сварка для аккумуляторов 18650

Reading time5 min
Views91K
Небольшая статья про самостоятельное изготовление аппарата для контактной сварки аккумуляторов (18650 и аналогичных). С помощью подобного устройства можно в домашних условиях и из подручных материалов сваривать и ремонтировать аккумуляторные батареи и сборки. Дешево, сердито и доступно каждому.


Total votes 86: ↑85 and ↓1+84
Comments78

Рекомендации по использованию SQLite на мобильных устройствах

Reading time4 min
Views29K
В буржунете есть интересный документ по оптимизации SQLite на платформе BlackBerry. Однако, идеи, которые в нем содержатся, вообще говоря, относятся к любой мобильной платформе. Мы решили развить этот список и создать эдакий эталонный текст в рунете с набором полезных, вводных советов для программирования SQLite под мобильными устройствами. Принимаем ваши предложения в комментариях.

Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments17

Удачная модель ветвления для Git

Reading time10 min
Views979K
Перевод статьи Vincent Driessen: A successful Git branching model

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



В качестве инструмента управления версиями всего исходного кода она использует Git.

Читать дальше →
Total votes 180: ↑171 and ↓9+162
Comments105

Кроссплатформенная разработка с помощью .NET, реактивного программирования, шаблона MVVM и кодогенерации

Reading time13 min
Views26K
Reactive MVVM and .NET Standard

Сегодня платформа .NET является по-настоящему универсальным инструментом – с её помощью можно решать широчайший круг задач, включая разработку прикладных приложений для популярных операционных систем, таких, как Windows, Linux, MacOS, Android и iOS. В настоящей статье рассмотрим архитектуру кроссплатформенных .NET приложений с использованием шаблона проектирования MVVM и реактивного программирования. Познакомимся с библиотеками ReactiveUI и Fody, научимся реализовывать интерфейс INotifyPropertyChanged с помощью атрибутов, затронем основы AvaloniaUI, Xamarin Forms, Universal Windows Platform, Windows Presentation Foundation и .NET Standard, изучим эффективные инструменты для модульного тестирования слоёв модели и модели представления приложения.

Материал является адаптацией статей "Reactive MVVM For The .NET Platform" и "Cross-Platform .NET Apps Via Reactive MVVM Approach", опубликованных автором ранее на ресурсе Medium. Примеры кода доступны на GitHub.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments7

Наша книжная полка С#-программиста. А что у вас?

Reading time6 min
Views54K
Привет!

Будущие студенты Veeam Academy часто спрашивают нас о книгах, которые были бы полезны при подготовке к поступлению на наш курс по программированию на С#. Обычно мы рекомендуем несколько источников, сопровождая их своими комментариями, почему именно они будут полезны.

Однако большинство книг по программированию – это 1К+ страниц, и для их прочтения «от корки до корки» понадобится не один месяц и, возможно, даже не один год! Поэтому все наши рекомендации для абитуриентов Академии Veeam служат лишь ориентиром, а не обязательным требованием.

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

image
Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments18

Для ИТ-ишников. Если у вас устают глаза, покраснения, раздражение. Возможно эта статья для вас

Reading time3 min
Views107K


Я с 2004 года работаю в ИТ-сфере. Как и вы я провожу много времени за экраном монитора (даже двух). А если это релиз, дедлайн или срочный вопрос, то время работы за компьютером плавно перерастает в большую часть суток.

Недавно меня спросил один знакомый, как это все выдерживают мои глаза и зрение остается хорошим?! Я всегда отвечаю, что годы тренировок помогают. Думаете это сарказм? Только отчасти:) На самом деле это тренировки.
Читать дальше →
Total votes 42: ↑37 and ↓5+32
Comments98

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity