Как стать автором
Обновить
147
0
Антон Жиянов @nalgeon

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

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

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

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

PokiToki

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


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


Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии3

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

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

Python 3.8+


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


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

Читать дальше →
Всего голосов 91: ↑89 и ↓2+87
Комментарии13

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

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

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

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

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

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

SQLite — не игрушка

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

Рассказываю, почему SQLite отлично подойдет вам в повседневной работе. И неважно, разработчик вы, аналитик, тестировщик, админ или продакт-менеджер.

Читать далее
Всего голосов 239: ↑237 и ↓2+235
Комментарии89

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

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

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


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

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

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

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

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


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


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


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

Читать дальше →
Всего голосов 193: ↑192 и ↓1+191
Комментарии543

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

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

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

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

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

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

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


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


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

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


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

И что с этим не так?
Всего голосов 82: ↑46 и ↓36+10
Комментарии100

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

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

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


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


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

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

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

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

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


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


Интервью, советы начинающим, книги и инструменты
Всего голосов 25: ↑19 и ↓6+13
Комментарии5

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

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

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


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


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

Кое-что получилось
Всего голосов 61: ↑49 и ↓12+37
Комментарии47

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

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


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

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

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

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

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


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

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

Читать дальше →
Всего голосов 44: ↑34 и ↓10+24
Комментарии56

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

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

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

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

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

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


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

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

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

Почему?
Всего голосов 51: ↑47 и ↓4+43
Комментарии52

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

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


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

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

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

Итак, приступим!
Всего голосов 73: ↑61 и ↓12+49
Комментарии108

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

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


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

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

Читать дальше →
Всего голосов 207: ↑120 и ↓87+33
Комментарии90

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность