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

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

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

Архитектура предприятия, TOGAF 10 и адаптивность организационной структуры

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

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

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

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

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

Как и зачем составлять чек-листы при разработке проекта? Делюсь бесплатными шаблонами чек-листов

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

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

Чек-лист (англ. checklist) — структурированный список задач, элементов, свойств, факторов, полезный инструмент, помогающий упростить и упорядочить работу. Перекочевало оно в русский язык, конечно же, из английского.

Всем привет, я — Саша Комбаров, исполнительный директор в веб-студии. Мы любим браться за сложные, нестандартные проекты. Чтобы разработать продукт высокого качества мы составляем чек-листы на каждый этап разработки. Решили рассказать, как именно это делаем и что это дает. А в конце материала делюсь красивыми чек-листами.

Как составить чек-лист?
Всего голосов 9: ↑7 и ↓2+5
Комментарии12

Как установить СУБД MySQL noinstall ZIP Archive на Windows

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

Самостоятельное изучение программирования, в частности принципов работы с базами данных, к сожалению, предвосхищает многочасовое погружение в многостраничные руководства, которые, как правило, еще и написаны на английском языке. И проблема заключается вовсе не в уровне языковой подготовки. Все, что познается впервые, кажется каким-то непонятным, мудреным, особенно дезориентирует обилие перекрестных ссылок, когда документы, к которым они ведут, еще и ссылаются друг на друга. Руководство по MySQL кишит обилием подобных паутин. В общем, как-то давно я устанавливал и переустанавливал noinstall-версию этой СУБД для личных нужд, но сегодня просто забыл порядок действий. Поиски внятных инструкций на русском в интернете выдали единственную адекватную статью по установке MySQL noinstall archive на Windows за 2016 год на, как мне показалось, одном из заброшенных блогов рунета. Эта ситуация замотивировала меня еще раз досконально пройти весь путь от загрузки дистрибутива, до запуска сервера и более детально изучить соответствующие позиции "мануала". Я пишу эту инструкцию для тех, кто, как и я, желает освоить ручную установку MySQL и немного глубже погрузиться в проблематику данной предметной области, а также всегда иметь перед глазами полноценное, 100%-е, руководство. Я надеюсь, что создание подобных отправных точек снизит порог вхождения для новичков, не имеющих возможности обратиться к кому-то за помощью, и увеличит количество желающих глубже разбираться в функционировании СУБД на примере MySQL.

Дерзновенно читать далее ...
Всего голосов 7: ↑4 и ↓3+4
Комментарии3

Распределённое обучение с PyTorch на кластере для тех, кто спешит

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

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

В качестве инструмента для запуска задач рассматриваются torchrun и MPI.

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

ChatGPT в написании юнит тестов

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

Добро пожаловать в мир инновационных подходов к тестированию программного обеспечения! В данной статье я хочу поделиться своим опытом использования ChatGPT — мощной модели искусственного интеллекта — для написания Unit‑тестов.

Так начал статью ИИ по моей просьбе составить вступление к эссе о том, как использовать ChatGPT при написании Unit‑тестов. Видимо, все‑таки придется писать самому, ибо градус пафоса зашкаливает, а высокопарность вызывает испанский стыд.

В этой статье я расскажу о своих наблюдениях и размышлениях при написании Unit‑тестов с помощью ChatGPT. Я рассмотрю, как использовать ChatGPT для генерации тестовых сценариев, формулировки вопросов о правильности кода, создания заглушек (moq).

Для начала давайте вспомним, что такое Unit‑тесты.

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

При построении запроса для написания Unit‑тестов следует учитывать несколько основных принципов, которые обеспечат эффективность и качество ваших тестов. Вот некоторые из них:

Читать далее
Всего голосов 17: ↑13 и ↓4+9
Комментарии11

Как запомнить что-нибудь навсегда?

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

Привет, это история о разработке самого удобного приложения
для зубрежки английских слов инди-разработчиком. Еще одно?!

– Да, но с GenAI-особенностями и алгоритмами!

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

Обработка больших и очень больших графов

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

Однажды ко мне обратилась одна крупная фруктовая телефонная компания с просьбой подготовить для них курс по Apache Spark продвинутого уровня, и в нем обязательно должен быть раздел про обработку графов (Neo4j не предлагать). На тот момент я знал про классические алгоритмы обработки графов на базе DFS (поиск в глубину) и BFS (поиск в ширину). При этом неотъемлемым условием применения того или иного подхода является локальная поддержка стека (DFS) или очереди (BFS). Следовательно, классические алгоритмы можно применять для обработки графов, которые умещаются в память одной машины.

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

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

Незаменимая роль онбординга в командах разработки

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

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

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

Сможете ли вы отличить собаку от кошки, или Как объяснить проблемы дата-сайентиста коллегам. Часть 3

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

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

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

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

Книги по Kubernetes — что почитать в 2023 году

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

Согласно прошлогоднему отчету Cloud Native Operations, недостаток квалифицированных кадров — одна из ключевых причин, тормозящих внедрение Kubernetes. Этот факт подтверждают аналитики DataDog — по их оценкам, из-за нехватки экспертизы миграцию на контейнерную инфраструктуру откладывает 40% компаний.

Иными словами, в индустрии наблюдается повышенный спрос на специалистов по Kuberentes и есть смысл «прокачиваться» в этом направлении. Поэтому мы подобрали дополнительную профессиональную литературу по теме. В сегодняшней подборке — новые книги про Kubernetes с высокими оценками рецензентов.

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

Как сделать свой AnythingGPT, отвечающий на вопросы так, как вам это необходимо (Python, OpenAI Embeddings, ChatGPT API)

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

Всем привет! Недавно я на практике применил одно интересное решение, которое давно хотел попробовать, и теперь готов рассказать, как своими руками такое можно сделать для любой другой аналогичной задачи. Речь пойдет о создании своей кастомизированной версии ChatGPT, которая отвечает на вопросы, учитывая большую базу знаний, которая по длине не ограничивается размером промта (то есть вы бы не смогли просто добавить всю информацию перед каждым вопросом к ChatGPT). Для этого будем использовать контекстные эмбеддинги от OpenAI (для действительно качественного поиска релеватных вопросов из базы знаний) и сам СhatGPT API (для оборачивания ответов в натуральный человеческие ответы). При этом, также предполагается, что ассистент может отвечать не только на прямо указанные в Q&A вопросы, но и на такие вопросы, на которые смог бы отвечать человек, который ознакомился с Q&A. Кому интересно научиться делать простых ботов, отвечающих по большой базе знаний, добро пожаловать под кат.

Под кат
Всего голосов 12: ↑12 и ↓0+12
Комментарии15

Что такое криптовалюта простыми словами

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

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

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

Криптовалюта! Несколько лет назад это казалось хайповой технологией, которую большинство людей могли спокойно проигнорировать, как гироскутеры или очки виртуальной реальности. Но ее экономическая и культурная власть стала настолько велика, чтобы ее невозможно не замечать. По данным недавнего опроса двадцать процентов взрослых людей и 36 процентов миллениалов владеют криптовалютой. Криптовалютные приложения для торговли входят в топы магазинов App Store или Google Play. Сегодня рынок криптовалют оценивается примерно в 1,75 триллиона долларов - примерно размер Google. Сотрудники крупных компаний и топ-менеджеры с горящими глазами бросают свои удобные работы, чтобы присоединиться к золотой лихорадке криптовалюты.

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

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

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

Волновой алгоритм

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

Волновой алгоритм — алгоритм поиска пути, алгоритм поиска кратчайшего пути. Принадлежит к алгоритмам, основанным на методах поиска в ширину.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии27

Анализ данных по метеорологическим станциям с помощью Pandas

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

В статье будет рассмотрено решение задачи анализа открытых метеорологических данных сервиса meteo.ru Федеральной службы по гидрометеорологии и мониторингу окружающей среды. Анализ будет произведен в Jupyter Notebook при помощи Python библиотеки Pandas, а также будут сделаны выводы относительно того какие изменения произошли в климате за последние 50 лет в нашей стране. Вы узнаете еще одну страшную правду о глобальном потеплении…

Узнать правду
Всего голосов 11: ↑10 и ↓1+11
Комментарии14

C# Linq для GraphQL-запросов

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

Транслятор Expression'ов в GraphQL-запрос.

Реализация библиотеки для трансляции Выражений в GraphQL-запрос с использованием Linq-подобного api.

Обзор и сравнение существующих решений. Создание собственного инструмента.

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

Создание фоновых задач в .NET с запросом состояния запущенного таска

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

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

Читать далее
Всего голосов 7: ↑6 и ↓1+9
Комментарии10

enum class и мой первый раз (использования Source Generator)

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

Приветствую.

Выбор между enum и собственным классом перечислений в C# был для меня сложной темой. Но когда увидел enum class из Kotlin, мое мировоззрение немного поменялось, я захотел иметь их в C#.

Но делать proposal мне не хотелось. И тут я вспомнил про генераторы исходного кода, добавленные в .NET 5, и решил, что пришло время их потрогать.

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

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

Асинхронный ETL-процесс на Python

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

Продолжаю цикл статей по разработке ETL-процессов на Python. На этот раз мы преобразуем синхронный etl-процесс из статьи Пишем ETL-процесс на Python в асинхронный.

Читать
Всего голосов 10: ↑9 и ↓1+9
Комментарии6

Открытая библиотека для работы с документами Microsoft Word формата .docx в мире .Net в 2023 году: Wordroller

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

Свою предыдущую статью на Хабре я написал в 2016 году, и она была посвящена подборку команды стартапа. Примерно в это время я погрузился в историю создания собственного продукта и стало не до создания контента. Так получилось, что в 2020 году мне пришлось сделать свою реализацию библиотеки для создания, редактирования и индексирования документов формата Microsoft Word, стандартизированного как OOXML WordprocessingML и получившего в свое время расширение файла .docx. Именно ей и хотелось бы поделиться с сообществом.

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

yield return

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

А вы никогда не задумывались, что yield return выглядит как-то инородно среди прочего C# кода? Больше нигде не встречается такого странного синтаксиса и такой инструкции, кроме как внутри методов, возвращающих перечисление.

А ещё интересно, сколько же на самом деле стоит перечислять элементы с помощью yield return? И можно ли лучше?

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

Информация

В рейтинге
Не участвует
Откуда
Newmarket, Ontario, Канада
Дата рождения
Зарегистрирован
Активность