Как стать автором
Обновить
4
0

Пользователь

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

Четыре принципа разработки ПО, которым я научился на горьком опыте

Время на прочтение4 мин
Количество просмотров22K
Недавно я спроектировал и написал огромный сервис, и в прошлом месяце (наконец-то) состоялся его запуск. В процессе проектирования и имплементации я обнаружил, что ряд закономерностей, которые я приведу ниже, раз за разом всплывает в самых разных сценариях.

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

Хотелось бы отметить здесь одну вещь: разумеется, для каждого из принципов есть свое место и время. Как и во всех прочих случаях, важно учитывать нюансы. Я склонен держаться этих заключений в общем случае, по той причине что, как я вижу по опыту инспекции кода и документации, люди часто принимают противоположный образ действия как вариант по умолчанию.
Читать дальше →
Всего голосов 47: ↑45 и ↓2+54
Комментарии29

Тотемные утки и шаманские бубны: есть ли у разработчиков свои ритуалы и приметы?

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.1K

Баги, баги, баги... Как же их много... Немудрено и фобию заиметь. И ведь никогда не знаешь, чем обернётся очередная ошибка в коде. Страх перед неизвестным, желание держать всё под контролем — закономерные спутники магического мышления. Но подождите, какие ещё магические ритуалы в 21 веке? Тем более у программистов...

Читать далее
Всего голосов 19: ↑18 и ↓1+20
Комментарии14

Пишем чат-бот для работы с PDF

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

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

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

Мы можем избежать риска недостоверных данных в ChatGPT, внедрив работу модели через RAG. В нашем материале мы подробно объясним, как создать чат-бота для взаимодействия с документами из вашего хранилища с помощью LangChain.

Приступим (:

Читать далее
Всего голосов 12: ↑11 и ↓1+13
Комментарии7

Может ли расширение Вселенной оказаться иллюзией?

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

В 1920-х годах произошли два события, которые проложили путь к нашему современному пониманию Вселенной. С теоретической стороны подоспел вывод о том, что если ваша Вселенная подчиняется законам Общей теории относительности и в среднем равномерно заполнена материей и энергией, то она не может быть статичной и стабильной, а должна либо расширяться, либо сжиматься. С наблюдательной стороны мы начали находить галактики за пределами Млечного Пути и быстро установили, что (в среднем) чем дальше от нас они находятся, тем быстрее удаляются.

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

Но является ли расширяющаяся Вселенная абсолютной необходимостью, или есть способ обойти её? В новой интересной работе, которая недавно получила широкую огласку, физик-теоретик Лукас Ломбризер утверждает, что расширяющуюся Вселенную можно "убрать", манипулируя уравнениями общей теории относительности. По его сценарию, наблюдаемое космическое расширение окажется всего лишь миражом. Но соответствует ли это уже известным нам научным данным? Давайте разберёмся.

Читать далее
Всего голосов 19: ↑17 и ↓2+21
Комментарии23

Эта неделя в мире Java (3 ноября)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров8.6K

Java-дайджест за последнюю неделю (3 ноября):

• Spring, Jakarta, Web

• IDE и редакторы

• Тестирование

• Статьи и подкасты

• Обзор статей на Хабре

Волшебно. Читать далее
Всего голосов 14: ↑13 и ↓1+17
Комментарии2

«Клиентов нужно не искать, а создавать»: погружение в Telegram API через TDLib

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

Сперва я рассказывал простые вещи о Telegram Bot API и делал интересных ботов — виртуальную подругу и друга для заказа шавермы. Затем коснулся тестовых серверов и юзерботов. И наконец, пришла пора заглянуть глубже — узнать, как сделать свой клиент для Telegram. Что такое TL-схема и TDLib? Об этом мы сегодня и узнаем.

Данная статья не только поможет тем, кто решил написать свой клиент для Telegram, но и немного расширит кругозор остальным: MTProto — это не приевшийся JSON API. Добро пожаловать под кат!

Готовы показать свои знания в IT? Примите участие в IT-кроссворде Selectel, выиграйте 10 000 рублей на аренду серверов и эксклюзивный мерч Selectel.

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

Искусственный интеллект на Python с использованием TensorFlow и Keras

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров43K

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

Одним из ключевых инструментов для реализации нейро-сетевых архитектур и алгоритмов глубокого обучения является язык программирования Python. Благодаря наличию мощных библиотек, таких как TensorFlow и Keras, создание и обучение нейронных сетей на Python стало достаточно простым.

TensorFlow - это библиотека для машинного обучения, разработанная компанией Google. Она позволяет определять, тренировать и запускать нейронные сети различных архитектур. Keras - библиотека глубокого обучения высокого уровня, может использовать TensorFlow в качестве бэкенда. Keras упрощает создание моделей нейросетей благодаря удобному API.

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

Изучив эту статью, читатели получат представление о том, как при помощи Python и рассматриваемых библиотек можно создавать эффективные модели искусственного интеллекта.

Читать далее
Всего голосов 14: ↑7 и ↓70
Комментарии13

Поиск пересечений между отрезком и прямой или прямой и прямой в трехмерном пространстве

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.7K

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

Блин классно, хочу ознакомиться
Всего голосов 7: ↑4 и ↓3+3
Комментарии14

Как мне захотелось систематизировать виды тестирования

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров30K

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

Читать далее
Всего голосов 33: ↑33 и ↓0+33
Комментарии29

Орнитологи нашли у врановых способность оперировать статистической логикой

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

ВорОны и вОроны (известные под общим названием врановые) привлекают внимание людей благодаря своему интеллекту: они демонстрируют разные трюки, имитируют речь или устраивают «похороны». Благодаря результатам нового исследования наше представление об их возможностях продолжает расширяться: учёные из Тюбингенского университета впервые обнаружили, что вороны могут оперировать статистикой. Эти результаты могут помочь учёным лучше понять эволюцию интеллекта (а нам, возможно, лучше понять, что происходит у нас в голове).

Вороны, численность которых превышает 27 млн особей, практически повсеместно распространены на территории Северной Америки и Евразии. Их громкое «карканье» трудно не заметить, причём тон этих криков меняется в зависимости от того, что птицы хотят сообщить. Как и другие хищные птицы, вороны обладают большим для своего размера мозгом и особенно выраженным передним мозгом, который у человека связан со статистическим и аналитическим мышлением. Благодаря этим качествам орнитологи и специалисты по поведению животных обнаружили у ворон различные «интеллектуальные» действия, например, использование веток в качестве инструментов для извлечения жуков из коры деревьев. Некоторые специалисты даже классифицировали ворон как обладающих интеллектом, равным уровню 7-летнего ребёнка.

Читать далее
Всего голосов 13: ↑12 и ↓1+20
Комментарии41

Введение в теорию компиляторов: лексический анализ языка Pascal средствами C#

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

Введение


В последнее время большинство новичков в программировании начинают с высокоуровневых языков, таких, как Java, Python, C#, или любой другой язык, содержащий в себе “джентльменский набор” в виде сборщика мусора, готовых структур данных и так далее. Конечно, такой подход имеет свои плюсы, но, как правило, начинающий разработчик, использующий готовый функционал языка, упускает самое главное – его устройство и механизмы работы и имплементации.
Читать дальше →
Всего голосов 5: ↑3 и ↓2+3
Комментарии7

Создание статического анализатора для C# на основе Roslyn API

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

После прочтения этой статьи вы будете обладать знаниями для создания своего собственного статического анализатора для C# кода, благодаря ему вы сможете найти потенциальные ошибки и уязвимости в исходном коде своих и не только проектов. Заинтригованы? Что ж, давайте начнём.

Читать далее
Всего голосов 15: ↑14 и ↓1+15
Комментарии2

Проект «Стикольщик», или сказ о том, как я создал чат-бота, общающегося стикерами

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

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

Хотелось сделать не просто ещё одну реализацию, а что-то иное. В результате выбор пал на стикеры. С одной стороны, более примитивный и первобытный способ общения, с другой – меньшая вероятность бредогенерации, т.к. картинка оставляет больше простора для додумывания смыслов.

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

Telegram бот и использование Google Cloud Vision

Время на прочтение3 мин
Количество просмотров8.8K
Всем привет! Недавно я уже писал статью про интеграцию своего бота с IBM Watson, а в этой статье рассмотрю интеграцию с Google Cloud Vision для распознавания котиков и более подробно опишу внутренности своего бота.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии2

Пишем мультиплатформенного бота для перевода денег с карты на карту с помощью Microsoft Bot Framework V1

Время на прочтение8 мин
Количество просмотров16K
Во время конференции Microsoft Build 2016 был анонсирован Microsoft Bot Framework (сессия с Build 2016: видео). С его помощью можно создать бота (на C# или Node.js), которого потом можно подключить к различным каналам / приложениям: СМС, Skype, Telegram, Slack и т.д. Мы пишем бота, используя Bot Builder SDK от Microsoft, а все проблемы взаимодействия с третьесторонними API берет на себя Bot Connector (см. изображение). Звучит красиво, попробуем создать простого бота, который мог бы переводить деньги с карты на карту (логику перевода возьмем у Альфа Банка — тестовый стенд, описание API: Альфа Банк), испытав все прелести продукта, находящегося в альфа-версии.

Disclaimer: во время написания статьи Microsoft выпустил новую версию фреймворка, так что ждите вторую серию: мигрируем бота с v1 на V3.


Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии21

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность