Pull to refresh
148
0
Антон Жиянов @nalgeon

Go, SQLite и разработка софта

Send message

PokiToki: Удобный GPT-бот в телеграме

Reading time4 min
Views25K

PokiToki

За последние месяцы только ленивый не сделал телеграм-бота, который работает с API OpenAI. Были такие статьи и на Хабре.


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


Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments3

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

Reading time10 min
Views22K

Python 3.8+


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


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

Читать дальше →
Total votes 91: ↑89 and ↓2+87
Comments13

SQLite-песочница в браузере

Reading time4 min
Views26K

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

Вот чего хотелось:

— Возможность загрузить готовую базу, а не писать SQL для создания таблиц.
— Подключать как локальные базы, так и удаленные (по url).
— Сохранять базу и запросы в облаке.
— Бесплатно и без регистрации.
— Свежайшая версия SQLite.
— Минимализм.

В итоге сделал сам
Total votes 70: ↑70 and ↓0+70
Comments9

Ищем фильмы, книги и подкасты с помощью Python

Reading time3 min
Views4.9K

Пакет podsearch для поиска подкастов


Apple не особо афиширует, что у iTunes Store и других каталогов есть кривенькое, но простое поисковое API — поэтому я решил о нём написать. Из этой заметки вы узнаете, что API умеет и как его использовать.

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

Юлия → Iuliia. Всё о транслитерации

Reading time8 min
Views62K

Транслитерация


Транслитерация — это запись кириллических слов латиницей (Анна → Anna, Самара → Samara). Её используют в загранпаспортах, водительских удостоверениях, трансграничной доставке, библиотечных каталогах и множестве других международных процессов.


Так вышло, что я недавно окунулся в эту тему, а в Википедии она раскрыта слабо. Поэтому расскажу, что к чему (спойлер — если вы думаете, что с транслитерацией всё плохо, то на самом деле всё ещё хуже).


И конечно, поскольку это Хабр — предложу open-source библиотеки для решения проблемы.

Читать дальше →
Total votes 193: ↑192 and ↓1+191
Comments543

Кортеж здорового человека

Reading time5 min
Views29K

Именованный кортеж
Эта статья — об одном из лучших изобретений Python: именованном кортеже (namedtuple). Мы рассмотрим его приятные особенности, от известных до неочевидных. Уровень погружения в тему будет нарастать постепенно, так что, надеюсь, каждый найдёт для себя что-то интересное. Поехали!

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

Программирование без интернета

Reading time2 min
Views36K

Кафедра гугления
оригинал на xkcd


Топ-3 повседневных вопросов программиста:


  • как сделать Х,
  • почему работает так, а не эдак,
  • как назвать переменную.

С третьим вопросом всё понятно — он неразрешим в принципе. С первыми двумя интереснее.


Чтобы получить ответы, программисты девяностых читали исходники и руководства. Программисты двухтысячных начали активно гуглить. А затем в 2008 появился Stack Overflow, и стал «внешней памятью» для разработчиков. Теперь на 95% вопросов есть готовый ответ: первая ссылка из гугла на Стек.

И что с этим не так?
Total votes 82: ↑46 and ↓36+10
Comments100

Интервью с дизайнером: Ольга Романова

Reading time8 min
Views9K

Интервью с дизайнером: Ольга Романова


Продолжаю серию интервью с дизайнерами интерфейсов. Сегодняшнее — с Ольгой Романовой из «Эльбы». Обсудили:


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

В подарок: гайдлайны для интерфейсов и стикеры с котами для телеграма ツ

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

Интервью с дизайнером: Михаил Озорнин

Reading time5 min
Views10K


Это пилотный выпуск серии интервью с дизайнерами интерфейсов. Не супер-звездами, а обычными ребятами, которые работают над коммерческими и массовыми продуктами и сервисами. Сегодня главный герой — Михаил Озорнин. Он проектирует интерфейсы для мрачных мужчин в костюмах и галстуках. А еще Михаил — выпускник первого набора школы Горбунова.


Интервью, советы начинающим, книги и инструменты
Total votes 25: ↑19 and ↓6+13
Comments5

Радар для покемонов

Reading time3 min
Views80K

Помогите, покемоны


Если вы ни разу не слышали об игре Pokemon Go, можно считать, что вам повезло. Новости о покемонах мелькают в новостных лентах, толпы людей бродят в ночи по кладбищам и воюют за сферы влияния. Только в Москве по данным МТС в Pokemon Go играет 180 000 человек, притом что в России официального запуска еще не было.


Мы в DaData.ru решили посмотреть, чем можем помочь любителям покемонов.

Кое-что получилось
Total votes 61: ↑49 and ↓12+37
Comments47

DaData.ru находит и уничтожает одинаковых людей

Reading time4 min
Views21K


DaData.ru — сервис автоматической проверки, исправления и дедупликации контактных данных (ФИО, адресов, телефонов, email, паспортов).

У меня в телефоне 453 контакта. Среди них встречаются дубли: один и тот же человек записан то как «Леха», то как «Алексей Мегафон», а то и как «Зиновьев, Алексей Иванович». У Лехи указан скайп и день рождения, у «Алексея Николаевича» — емейл и основной мобильный номер, а у «Мегафона» — запасной номер от понятнокакого оператора.

В телефонных контактах дубли неприятны, но не особо напрягают. Хуже, когда такая чехарда начинается с клиентской базой компании.
Дубликаты приходят ночами и мучают маркетологов
Total votes 31: ↑24 and ↓7+17
Comments40

DaData.ru превращает гуиды в адреса и знает всех пацанов на раёне

Reading time2 min
Views50K


DaData.ru — сервис автоматической проверки и исправления контактных данных (ФИО, адресов, телефонов, email, паспортов). Плюс javascript-виджет и API подсказок при вводе адреса, ФИО, организации и банковских реквизитов.

В предыдущем выпуске Дадата прошлась по паспортам и банкам, а за лето взялась помочь интернет-магазинам с доставкой:
  • определять район города;
  • писать районы и города по правилам Почты России;
  • откладывать в сторонку абонентские ящики и адреса «до востребования»;
  • находить адрес до улицы по коду ФИАС.

Читать дальше →
Total votes 44: ↑34 and ↓10+24
Comments56

DaData.ru подсказывает email и определяет город по IP

Reading time1 min
Views15K
DaData.ru — сервис автоматической проверки и исправления контактных данных (ФИО, адресов, телефонов, email). Плюс javascript-виджет и API подсказок при вводе адреса, ФИО и организации.

С предыдущего выпуска Дадата научилась:
  • подсказывать email при вводе,
  • определять город по IP-адресу,
  • распознавать модели автомобилей.

Фичи доступны через пользовательский интерфейс и HTTP API.
Интересно, что там у вас
Total votes 18: ↑16 and ↓2+14
Comments26

Ваш лучший друг, анонимус

Reading time2 min
Views21K


Итак, вы только что запустили свой стартап. Он классный, всем нужен, решает самые насущные проблемы потенциальной аудитории (ну, вы так думаете), выглядит сногсшибательно и супер-удобен в использовании.

Проходит день, неделя, месяц, три… Да, посещаемость неплохая. Да, пользовательская база растет. Но хочется большего. Как понять, чего не хватает вашим пользователям? Какие их потребности сервис не охватывает? Что делать неудобно? А что наоборот, сделано здорово, и менять ни в коем случае не стоит?

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

Почему?
Total votes 51: ↑47 and ↓4+43
Comments52

Делаем адресные формы более привлекательными

Reading time6 min
Views49K


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

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

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

Итак, приступим!
Total votes 73: ↑61 and ↓12+49
Comments108

Проектирование высокопроизводительных систем: о чем не расскажут в книгах

Reading time5 min
Views40K


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

Почему так происходит? Обеспечение высокой производительности и надежности ошибочно почитается многими за «черную магию». И неспроста — чуть ли не в каждой книге или статье на эту тему вы первым делом наткнетесь на утверждение типа «нельзя просто так взять и повысить производительность».

Читать дальше →
Total votes 207: ↑120 and ↓87+33
Comments90

Information

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