
Кратко (TL;DR): OpenCode классно задуман, но сейчас страдает от нестабильности и плохой работой с моделями/контекстом. Droid от FactoryЧитать полностью »

Кратко (TL;DR): OpenCode классно задуман, но сейчас страдает от нестабильности и плохой работой с моделями/контекстом. Droid от FactoryЧитать полностью »
За последние десятилетия технологический прогресс изменил экономику и бизнес. Алгоритмы управляют логистикой, искусственный интеллект анализирует документы и генерирует код, а данные передаются через API — интерфейсы, позволяющие программам взаимодействовать друг с другом. Один из примеров — LLM API (Large Language Model API), который позволяет каждому из нас подключаться к большим языковым моделям, к примеру, ChatGPT и использовать их для создания текста, обработки информации и принятия решений.

Американская интернет-корпорация объявила о продолжении совместной работы с популярным бизнес-центром для стартапов, расположенным в столице Германии. В частности, Factory известна тем, что в здании расположены европейские представительства таких популярных компаний родом из Силиконовой Долины, как Uber и Twitter.
Читать полностью »
ИТ-технологии в современном мире развиваются стремительными темпами и все больше проникают во все сферы деятельности человеческой цивилизации. Применяемые технологии и оборудование становятся все более сложными и непонятными для человека без специализированной подготовки. Не обошла эта тенденция и промышленные предприятия. Среди основных ИТ систем находящихся непосредственно на производстве следует выделить следующие:
• Внутриконтроллерные сети, применяемые на высокоавтоматизированных производствах для связи внутри и между участками, для получения данных с полевых устройств и элементов автоматики;
• АСУ ТП — группа решений технических и программных средств, предназначенных для автоматизации управления технологическим оборудованием на промышленных предприятиях. Одним из ключевых компонентов данной системы является SCADA;
• WMS — система управления, обеспечивающая автоматизацию и оптимизацию всех процессов складской работы профильного предприятия;
• MES — специализированное прикладное программное-аппаратное обеспечение, предназначенное для решения задач синхронизации, координации, анализа и оптимизации выпуска продукции в рамках какого-либо производства;
• Оконечное оборудование ERP — системы планирования ресурсов предприятия, позволяющей посредством целого комплекса интегрированных приложений создать единую информационную среду с целью автоматизации всех сфер деятельности предприятия от планирования бизнес-процессов до контроля над их реализацией и последующего анализа достигнутых результатов.
В текущем проекте стала часто возникать необходимость конструирования множеств разнообразных объектов по каким-то идентификаторам. Была написана одна фабрика для какого-то множества, другая. Потом пришло понимание, что мы делаем одно и то же и нужно какое-то повторяемое решение.
Проект базируется на Qt, который, как известно, имеет развитые механизмы работы с метаданными. Тем не менее конструирование объектов через QMetaObject нас не удовлетворяло по двум причинам: во-первых конструируемые объекты должны быть QObject'ами, а во-вторых при конструировании мы получаем указатель на QObject, который так или иначе придется преобразовывать, что чисто эстетически некрасиво.
Проанализировав круг задач пришли к выводу, что мы хотим иметь статическую фабрику в базовых классах некоторых множеств наследников. Т.е. писать что-то в таком духе:
BaseClass * instance = BaseClass::factory()->build("derived_name");
При этом, мы не хотим писать каждый раз много однообразного служебного кода. Да, мы ленивые.
И конечно же мы не хотим чтобы фабрика или базовый класс знали о всех наследниках. Читать полностью »

В последнее время в сообществе Scala-разработчиков стали уделять всё большее внимание шаблону проектирования Type classes. Он помогает бороться с лишними зависимостями и в то же время делать код чище. Ниже на примерах я покажу, как его применять и какие у такого подхода есть преимущества.
Статься расчитана не только на программистов, пишущих на Scala, но и на Java — возможно, они получат для себя ответ, как, хотя бы в теории, выглядит решение для многих прикладных задач, в котором компоненты не связаны между собой и расширяемы уже после написания. Также это может быть интересно разработчикам и проектировщикам на любых других языках.
Читать полностью »
Erlang Factory Lite приезжает в Москву 22 июня 2012 года.
Erlang Factory Lite — это «миниконференция» на полдня-день на определенную тему или без темы (в то время как на полноценных конференциях выступления разделяются на несколько общих тем).
Московская конференция проводится при участии Яндекса. Если вы хотите выступить с докладом, заполните форму докладчика: http://www.erlang-factory.com/conference/Moscow2012/submit_talk
Если вы просто хотите прийти послушать, как выступают другие, зарегистрироваться можно тут: https://www.erlang-factory.com/conference/Moscow2012/register. Конференция бесплатна.
Читать полностью »