<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Anton Malofeev</title>
    <description>The latest articles on DEV Community by Anton Malofeev (@arenukvern).</description>
    <link>https://dev.to/arenukvern</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F332733%2Fcb6a3abd-b464-471f-8938-e2cbbea6b502.jpg</url>
      <title>DEV Community: Anton Malofeev</title>
      <link>https://dev.to/arenukvern</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arenukvern"/>
    <language>en</language>
    <item>
      <title>How to become best AI-Builder or top worse mistakes and how overcome them</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Mon, 27 Jul 2026 19:53:45 +0000</pubDate>
      <link>https://dev.to/arenukvern/how-to-become-best-ai-builder-or-top-worse-mistakes-and-how-overcome-them-6dh</link>
      <guid>https://dev.to/arenukvern/how-to-become-best-ai-builder-or-top-worse-mistakes-and-how-overcome-them-6dh</guid>
      <description>&lt;p&gt;All points below are made from the point talking, communicating and working with AI - and most of them, are similar to the ways we work with other people.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Make no mistake -&amp;gt; its okay to make mistakes, analyse &amp;amp; fix them, build tools and regression tests culture, to catch &amp;amp; analyse mistakes (i.e. do engineering stewardship)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Threats / Unethical lexicon -&amp;gt; Expect talking with AI as with any other person. Encourage collaboration, creativity, responsibility and ownership. Do delegate and discuss, instead of micromanage every little step. Do dicuss work ethics, do record and discuss important decisions, including technologies. Set clear boundaries of responsibility: what human does and what ai does, and where is that blurry boundary. I.e. work with ethical principles - becuase it will affect every decision, trust, and transparency (see the article here: &lt;a href="https://dev.to/arenukvern/small-thought-developer-ethics-may-be-a-bridge-to-work-with-ai-tools-3mha"&gt;https://dev.to/arenukvern/small-thought-developer-ethics-may-be-a-bridge-to-work-with-ai-tools-3mha&lt;/a&gt;&lt;br&gt;
or my personal AI Ethics Manifesto here: &lt;a href="https://dev.to/arenukvern/my-principles-at-work-credo-182c"&gt;https://dev.to/arenukvern/my-principles-at-work-credo-182c&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AI knows everything, AI is just prediction/ generator -&amp;gt; Do use stewardship, mentoring and learning as culture of engineering. Set clear definition: when you do need deterministic result - build tools with AI, instead of forcing building and checking everything by hand / function call. If you need code generation - write the code generation in a language of your preference (for example I found useful combination of justfile + dart - as most fast and reliable tooling) - if a workflow feels repetitive, do build automation with ai, but do not put ai into automation - i.e. clearly define generative equals not predictable, declarative - should go to ci/tests/tooling. Notice that it literally all about ethics: when you clearly define definitions, responsibilities and ownership - it will result trust and opacity in overall system. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I know how to work with AI trap -&amp;gt; No one knows how to work with AI - becuase with just starting exploring the ways of working together. Do establish educational ladders, some kind of attributes that could clearly help to understand and guide both AI and People how to work with the certain project and each other. (as example - I've developed &lt;a href="https://github.com/arenukvern/skill_steward" rel="noopener noreferrer"&gt;https://github.com/arenukvern/skill_steward&lt;/a&gt; to guide and teach AI Generational Architecture, applicable ethics and what tools are needed for certain level of scale for the project)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Other people / AI should figure it out by its own and fast, otherwise the person / AI stupid -&amp;gt; Always start with knowledge / faq / wiki organization - it should useful , not mirror code (otherwise it makes no sense to make the docs) and easy to find / modify / scale. &lt;br&gt;
As with any engineering everything should start from blank slate: and it is literally know very easy to measure - how many function calls, how hard (in tokens or conginitive time) AI / person resolves to find specific problem? How complex the passage of the knowledge? Is the knowledge has overlapping terms or not bearable / not usable?&lt;br&gt;
As an example of terms I prefer to use - see article &lt;a href="https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm"&gt;https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Everyone should fight for its own survival / ban of open small talks about AI, including worries, fears and challenges -&amp;gt; that's why ethics should be integrated into the foundation of collaboration and conversation: as many other said the fear comes from not knowing something, and with AI come huge challenges to overcome mentally, emotionally and skillfully the workflows, and no one knows what it should look like, therefore - instead of locking experience under gates, encourage human creativity,  that kind of creativity that forces people to travel, discover, explore and wounder what else can be done and see and dream about deep space exploration or earth restoration etc.. every person can be curios and do its best possible job - to create, iterate and create again, with the ability to inspire and work with other people - and that's what AI could help us to do, instead of looking for just for metrics. Every person should have its own time to overcome it, to understand it, and the other people could help to curate its path for knowledge, curiosity and understanding. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I apologize for the links, but since they are part of my experience path, I've included them with a hope that they would be useful for anyone as well.&lt;/p&gt;

&lt;p&gt;What is your opinion about ethics and education and work with AI?&lt;/p&gt;

&lt;p&gt;disclaimer:&lt;br&gt;
cover is made in leonardo.ai&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>agents</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Code is entering its calligraphy era</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Mon, 27 Jul 2026 19:03:59 +0000</pubDate>
      <link>https://dev.to/arenukvern/code-is-entering-its-calligraphy-era-2odo</link>
      <guid>https://dev.to/arenukvern/code-is-entering-its-calligraphy-era-2odo</guid>
      <description>&lt;p&gt;I recently realized the parallel - the current dynamic between coding and AI closely mirrors the evolution of handwritten letters:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Once upon a time and for a long time&lt;/strong&gt;, writing by hand—clearly, legibly, and beautifully was requirement. The choice of paper, ink, and tools mattered, requiring actual craftsmanship, skills and special tools - because it was requirement to being able to pass knowledge for other people and generations. The person would had to physically carve its own nib, to create and maintain a quill, create or at least choose inks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Then it changed for most people with pens and pencils.&lt;/strong&gt; Writing became vastly easier, and once required skills were extremely simplified or diminished. Calligraphy branched off into its own distinct art form—beautiful handwriting and became an artistic pursuit rather than an everyday requirement. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Finally, digital devices baked typography straight into design.&lt;/strong&gt; And as result - most of people now not needed to handle ink or manual handwriting anymore at all (except calligraphy art, which became foundation of digital fonts); the fast typing became the new baseline skill.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;At the time of writing (i.e. 2026 July 26th), AI is bringing the same feel / pattern for writing code.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While many developers still debate about "abstraction of perfect code," that craft already starting to transform into the art—much like calligraphy. In my opinion once the automation tool/tools will be created/completed to operate over code/linguistic patterns with simplicity of managing the digital fonts / apps, arguing over these abstractions will lose its practical point—except  just like it happened with handwriting - and will be the goal of debates for a small circle of AI-focused pattern designers - architects. It will matter, in long term, however because it will open there ways for apps, games - the same way the everyday digital typing transformed how humans communicate.&lt;/p&gt;

&lt;p&gt;And looking back, exactly this direction led me to creating &lt;strong&gt;agentic executables&lt;/strong&gt;—a framework for reusable knowledge ( &lt;a href="https://github.com/fluent-meaning-symbiotic/agentic_executables" rel="noopener noreferrer"&gt;https://github.com/fluent-meaning-symbiotic/agentic_executables&lt;/a&gt; ) —and &lt;strong&gt;skill_steward&lt;/strong&gt; , a framework and ladder for engineering stewardship culture, including generative architecture principles (( &lt;a href="https://github.com/arenukvern/skill_steward" rel="noopener noreferrer"&gt;https://github.com/arenukvern/skill_steward&lt;/a&gt; ))).&lt;/p&gt;

&lt;p&gt;What do you think about such parallel?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>ethics</category>
      <category>software</category>
    </item>
    <item>
      <title>Fundamentals of Knowledge Management in Software Development (for AI and people)</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Tue, 21 Jul 2026 03:28:39 +0000</pubDate>
      <link>https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm</link>
      <guid>https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm</guid>
      <description>&lt;p&gt;&lt;strong&gt;This article is a part of Dev Architecture Series&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-intro-notes-jl2"&gt;Part 1 — Intro Notes&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-part-2-stage-1-2-5265"&gt;Part 2 — Stage 1 and 2&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-part-3-stages-3-5-4jd9"&gt;Part 3 — Stage 3,4,5 and Conclusion&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/reimagine-libraries-management-as-apps-using-agentic-executable-framework-ami"&gt;Part 4 — Libraries as Agentic Executables&lt;/a&gt;&lt;br&gt;
Part 5 — Engineering Stewardship: maintaining Libraries/Apps/Games (Software) with AI Agents using Skill Steward (planned)&lt;br&gt;
Part 6 — Building Foundation with Open Source in mind (planned)&lt;br&gt;
Part 7 — AI Project Bootstrapping (planned)&lt;br&gt;
Part 8 — Storage Layer as Reliability Foundation (planned)&lt;br&gt;
Part 9 — How to build for different Stores? (planned)&lt;br&gt;
Part 10 — Dev Ethics as Dev Cornerstone (Decision Making) (planned)&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm"&gt;Part 11 — Fundamentals of Knowledge Management in Software Development - You are here:)&lt;/a&gt;&lt;br&gt;
Part 12 — Building Tests with AI Agents (planned)&lt;/p&gt;




&lt;h1&gt;
  
  
  Disclaimer &amp;amp; About
&lt;/h1&gt;

&lt;p&gt;Dear Reader, Human or AI, before the text begins, I would like to add small disclaimers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;the primary sources - my own experience from working with different coding (software-based) and non-coding projects in manufacturing and transportation industries. Some concepts may sound familiar, because I've read them somewhere, some concepts are combined knowledge from expereince, some concepts are made from experience with working with People and AI (LLM/Agents/?) - tested. This article focuses on practical application of all concepts for any project, large or small, for both People and AI. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;this is highly subjective and living article - that means in future some concepts will be outdated to some degree or become obsolete, or may feel or be wrong for some reason/application case - and that's okay - though it is good to have one stable foundation for long term use, nothing is perfect and always changing. As one of consequences of that - I will omit "in my opinion" parts from the text to make it more lightweight and easy to read.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I work with AI (cursor, different LLM models) to proofread this article and improve its quality. In the same time, since it is kinda reflection on my experience - I wrote it initially by hand or better say - by tapping buttons on keyboard:). From other point of view some may say it would be great to position such usage of AI as co-creator and co-editor. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The cover image is generated by Gemini, inspired by Alvar Aalto design principles.&lt;/p&gt;

&lt;p&gt;Why disclaimers are important? Because I believe that this only way to create trust between reader and author, based on certain ethical principles and values. See about why Ethics is important for software development and AI in general &lt;a href="https://dev.to/arenukvern/small-thought-developer-ethics-may-be-a-bridge-to-work-with-ai-tools-3mha"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thank you for reading this article and I hope you find it useful.&lt;/p&gt;

&lt;h1&gt;
  
  
  Fundamentals of Knowledge Management in Software Development
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Terms &amp;amp; Definitions
&lt;/h2&gt;

&lt;p&gt;First, let's define the terms and definitions (notice: it is not claim to be it linguistically, or historicaly correct, but to define for further use).&lt;/p&gt;

&lt;h3&gt;
  
  
  basic Knowledge terms
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge&lt;/strong&gt; is past/now/future artifacts of doing something by something or someone. 
Every document, artifact, plan, scheme, decision (of doing, or not doing), message speaked by sound, text, image, code, video, hologram etc.. - is a part of that history. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Source&lt;/strong&gt; - since knowledge is some kind of non-linear history, its source can be accidental, intentional, formatted or not, structured or not. For example: it can be as well as conversation between people, as well as conversation with/between AI, as well as natural event.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Point of View&lt;/strong&gt; - the knowledge can be expressed in different way depending on context, lingustics, visuals, ethics,  purpose and who or what is expressing / experiencing it. One source can be expressed from different points of view, one point of view can have different sources.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Operational or Iterative Knowledge (Record)&lt;/strong&gt; - living knowledge which convenient to experience and apply in practice. Has beginning and the end of life (in other words - life cycle). If knowledge is not used and not regularly updated - it should be considered as static knowledge record, extracted to several documents or destroyed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Archive Knowledge (Record)&lt;/strong&gt; - record for archive purposes (see DR/ADR below), for example: record of meeting, photo, etc.. something that cannot be altered without creating new one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Lifecycle&lt;/strong&gt; - how and what exactly knowledge is created, caused, changed, stored, shared, used, and after all - destroyed. Important point here is that operational or iterative knowledge should not be static - it should be expected to have beginning, middle (iterations of changes), and the end of life.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Changes Control System&lt;/strong&gt; - system that can document changes in knowledge and its lifecycle.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Experience&lt;/strong&gt; - the experience of experiencing knowledge from certain point of view - reading, watching, listening, interacting, etc.. to reach desired purpose - usually from Knowledge User perspective.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge User&lt;/strong&gt; - who or what is using / experiencing knowledge - person, AI, or other entity.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  applicable Knowledge terms
&lt;/h3&gt;

&lt;p&gt;From hereabove, let's define inherited and applicable terms which can be actually used in practice of software development (not just coding, but rather as general knowledge for business / project / team / etc..):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Terminogy / Glossary&lt;/strong&gt; - agreed words / definitions - to avoid confusion and misinterpretation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Artifact type / format&lt;/strong&gt; - defines form of knowledge representation - text, image, code, video, hologram, etc.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Structure &amp;amp; Compression&lt;/strong&gt; - defines how knowledge is organized and compressed for specific format and purpose. For example text can be organized in paragraphs, sentences, tables, trees, graphs, &lt;a href="//../2025_nov_25_faq/en.md"&gt;FAQs&lt;/a&gt;, guides, knowledge packs (see more in Executable Knowledge section) etc..&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Generatable Knowledge&lt;/strong&gt; - kind of Operational Knowledge Record - result of work or deterministic tools (autogenerated code documentation, collected, built as graph etc..) - which results in specific format of knowledge (table, document, website (docs from code, results of experiments, simulations, etc..) etc..), or result of generative knowledge created by People or generative AI (LLM/Agents/?). In both cases - it is important step for Static Knowledge Record creation, Context creation or some kind of Structured Output (&lt;a href="https://developers.openai.com/api/docs/guides/structured-outputs" rel="noopener noreferrer"&gt;https://developers.openai.com/api/docs/guides/structured-outputs&lt;/a&gt;) for result or GenUI (&lt;a href="https://a2ui.org" rel="noopener noreferrer"&gt;A2UI&lt;/a&gt;, [AG-UI][&lt;a href="https://docs.copilotkit.ai/agentic-protocols/ag-ui" rel="noopener noreferrer"&gt;https://docs.copilotkit.ai/agentic-protocols/ag-ui&lt;/a&gt;], etc..). &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context&lt;/strong&gt; - defines the environment and circumstances for knowledge lifecycle happening. Mostly should be generated (collected) automatically to provide enough knowledge to act for any user / AI agent / etc.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Executable Knowledge&lt;/strong&gt; - kind of Operational Knowledge Record or SOP - which can be executed by Human, AI agent or other entity. Can be expressed into at least two forms: Logical or Deterministic (mostly seen as code, or math - the result is always deterministic) and Non-deterministic / Generative - the execution can vary based on context, entity who / what is executing it (Human, AI agent, or other entity or natural events) - the result is always non-deterministic but can be evaluated for correctness and completeness with certain level of confidence via &lt;em&gt;Evidence &amp;amp; Validation&lt;/em&gt;. For example: &lt;a href="https://github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md" rel="noopener noreferrer"&gt;OKF&lt;/a&gt;, Skills, Rules, &lt;a href="https://github.com/fluent-meaning-symbiotic/agentic_executables/" rel="noopener noreferrer"&gt;Agentic Executables&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decision Record (DR)&lt;/strong&gt; and &lt;strong&gt;Architecture Decision Records (ADR)&lt;/strong&gt; - kinds of static knowledge records - captures decisions and reasoning process made by someone (Human or AI) - &lt;a href="https://adr.github.io" rel="noopener noreferrer"&gt;adr.github.io&lt;/a&gt;. Once created, they should never change, however can be superseeded by new ones.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://en.wikipedia.org/wiki/Standard_operating_procedure" rel="noopener noreferrer"&gt;Standard Operating Procedure (SOP)&lt;/a&gt;&lt;/strong&gt; - kind of Operational Knowledge Record - a document that outlines the steps for a specific task or process and easily to action (and automate in the future, mostly deterministically).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evidence &amp;amp; Validation&lt;/strong&gt; - used to support or refute knowledge claims depending on context and purpose through examples, math, code, other knowledge artifacts, specific tools etc.. In terms of codebase - it can be expressed as deterministic tooling, tests, lints (static analysis), knowledge harness (agentic/engineering harness) etc.. In terms of other knowledge artifacts - can be standards, policies, procedures, experiments, simulations, etc.. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Domain Knowledge&lt;/strong&gt; - “is knowledge of a specific discipline”, captured from domain experts/specialists by analytics, designers or through iterative design, your own experience or work - cited from &lt;a href="https://en.wikipedia.org/wiki/Domain_knowledge" rel="noopener noreferrer"&gt;Domain Knowledge&lt;/a&gt;. For example - it would be the experience of the end user who uses your app.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Scale Capacity&lt;/strong&gt; - knowledge is limitless, but the storage and ability to access, orginize and manage it for best experience is limited and highly depends from Knowledge User and its goals / purposes and knowledge records organization (management systems, tools, software etc..) available is limited by resources (time, storage, harness etc..).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Evoloution&lt;/strong&gt; - knowledge can shrink or grow over time, depends on its scale capacity, knowledge harness and its Users. For example - in terms of codebase - it can be seen as adding or reducing complexity of logic. Some points of this described &lt;a href="https://github.com/Arenukvern/skill_steward/blob/main/docs/core/evolutionary-simplicity.mdx" rel="noopener noreferrer"&gt;in Skill Steward Evolutionary Simplicity&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Harness&lt;/strong&gt; - tools and systems that can help to manage and/or organize knowledge and its lifecycle, as parallel pattern - see example of harness engineering in &lt;a href="https://openai.com/index/harness-engineering/" rel="noopener noreferrer"&gt;OpenAI article&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Product Requirements Document (PRD) and Game Design Document (GDD)&lt;/strong&gt; - kinds of Operational Knowledge Records - a document that outlines the requirements for a specific product, features or game, expressed in specific format by specific purpose for certain Knowledge Users (developers, designers, investors, marketers etc..).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Patterns&lt;/strong&gt; - repeated patterns of organization and experience which can be turned into terms-definitions, citations,formats, principles, SOPs, Records etc.. or back into raw knowledge (artifacts) for specific purpose.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Stewardship&lt;/strong&gt; - the process and techniques of passing and working on meta level - i.e. answer to question - how to teach, mentor Knowledge as systems, harnesses, experiences etc.. How to create and maintain practices of working itself. In some systems the managing itwould be domain of Knoweldge Steward Role.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Accessability&lt;/strong&gt; - how to make knowledge accessible for Knowledge Users - i.e. how to make it visible, searchable, understandable for entities/tools/systems (Humans, Agents, code, systems, etc..), usable, reusable, etc..&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;User Flow or User Journey&lt;/strong&gt; - sequence of screens, actions, decisions, interactions, etc.. that user performs to achieve certain goal or purpose.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Important pieces of knowledge:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;knowledge is often universal, and can be viewed, experienced and applied between cross-domains and cross-projects if enough abstracted or generalized.&lt;/li&gt;
&lt;li&gt;operational knowledge follows evolution. &lt;/li&gt;
&lt;li&gt;the tools and organization of knowledge can be very different for each project. Therefore it is better to have a least one layer of knowledge dedicated strictly to its organization and knowledge end user expereinces&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Knowledge Organization &amp;amp; Experience: from example to patterns.
&lt;/h2&gt;

&lt;p&gt;Now let's explore smallest possible software project - an application example.&lt;/p&gt;

&lt;h3&gt;
  
  
  Knowledge Users
&lt;/h3&gt;

&lt;p&gt;To start with - let's define who will be Knowledge User and what are its goals / purposes.&lt;br&gt;
That point is highly subjective and depends who is working with project, so to keep it ~relevant for year of 2026:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Visionary, Product Owner, Developer, Knowledge Steward (often Founder).&lt;/li&gt;
&lt;li&gt;Graphics/Product Designer / Marketer / Content Creator (often Influencer).&lt;/li&gt;
&lt;li&gt;End User as Human, End User as AI Agent.&lt;/li&gt;
&lt;li&gt;Internal AI Agents.&lt;/li&gt;
&lt;li&gt;Accountant (if product is small, this role will go to Founder).&lt;/li&gt;
&lt;li&gt;Customer Support. (if product is small, this role will go to Founder or Influencer).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Furthermore, these User roles highly subjective, and will be overlapped in most cases, or can be expended / collapsed to more/less roles - everythng depends on project scale.&lt;/p&gt;

&lt;p&gt;Notice pattern: when workflows and business porcesses has frequent overlapping point - just like in programming, it similar to the problem of scaling: when we require more functionality, more complex logic, we need to introduce more abstractions to reduce overall complexity and start managing it in higher level of abstraction. As the result of that any such role can be generic, reframed as workflow / business process / automation covering certain domain area - and as a result we can introduce more users / roles / actors to the system when it requires it, or reduce it to deterministic or evaluatable flow (see differences between Generative AI and Traditional AI, for example - &lt;a href="https://docs.cloud.google.com/docs/ai-ml/generative-ai/generative-ai-or-traditional-ai" rel="noopener noreferrer"&gt;https://docs.cloud.google.com/docs/ai-ml/generative-ai/generative-ai-or-traditional-ai&lt;/a&gt;).&lt;/p&gt;

&lt;h3&gt;
  
  
  Knowledge Sources.
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Communication sources:
&lt;/h4&gt;

&lt;p&gt;First of all - define Ethical Boundaries, because this is highly sensitive line: in case of recording everything team could risk losing privacy, trust and collaboration between members and bring blaiming culture &amp;amp; mental pressure, in case of recording nothing - would lose ability to improve and accumulate overall Knowledge, ability to pass knowledge for AI Agents and other members and work asynchonously. &lt;/p&gt;

&lt;p&gt;Sometimes communication is about building trust, experimenting, passing knowledge - these are not "metricable" things and should not be measured.&lt;/p&gt;

&lt;p&gt;Everyone should be aware of recording, why it needed, and how exactly these recordings will be used.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sources can include:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;day to day communications: all possible channels, apps, emails, chats, calls.&lt;/li&gt;
&lt;li&gt;static artifacts: documents, files, images, videos, audio, etc..&lt;/li&gt;
&lt;li&gt;innovation ideas: references, links, news, notes, suggestions, books, ideas, articles, etc..&lt;/li&gt;
&lt;li&gt;expressed emotions: signlas of something is wrong, what works and what isnt.&lt;/li&gt;
&lt;li&gt;time &amp;amp; contacts: to define convenient hours to cool down, to collaborate &amp;amp; discuss.
&lt;/li&gt;
&lt;li&gt;agentic &amp;amp; human threads: since we all read best Science Fiction books, we can imagine that AI Agents are being personalized - and work alongside people and other AI Agents. This is alrady happening in threads sessions, various chat implementations and starting with new wave of alternative Version Control Systems (not git-based, such as DELTA DB &lt;a href="https://zed.dev/deltadb" rel="noopener noreferrer"&gt;https://zed.dev/deltadb&lt;/a&gt; , &lt;a href="https://pierre.computer" rel="noopener noreferrer"&gt;https://pierre.computer&lt;/a&gt;, LAKE FS &lt;a href="https://github.com/treeverse/lakeFS" rel="noopener noreferrer"&gt;https://github.com/treeverse/lakeFS&lt;/a&gt;, ORIGIN &lt;a href="https://cursor.com/origin" rel="noopener noreferrer"&gt;https://cursor.com/origin&lt;/a&gt;, LORE &lt;a href="https://lore.org" rel="noopener noreferrer"&gt;https://lore.org&lt;/a&gt; and other) - this layer of communication will become more and more common and more needed for clear transparancy - just like in case of human to human communication.&lt;/li&gt;
&lt;/ul&gt;

&lt;h5&gt;
  
  
  Open questions of Ethics
&lt;/h5&gt;

&lt;p&gt;&lt;strong&gt;1. "Severance (1)" Problem:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Severance" - popular TV Show made by Apple TV+ with one distingiush idea: there is a person identity (personality) at work, and other person identity (personality) outside of work. Each identity has its own memories, goals, purposes, skills, emotions etc..&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When people usually work on any job in any role, they are aquire experience, domain knowledge, techniques, skills - including at certain defree social and communication (can be expressed in soft talks, culture, types of delegation, typs of transparancy). &lt;br&gt;
In some kind of degree - this experience mxied up with person identity - since it is expected that at least for most time of day the person will do its job in any role taken.&lt;/p&gt;

&lt;p&gt;However in the case of AI Agents things getting complicated: when during work AI Agents gets experience of commucation, knowledge, skills - just like with the humans - not everything would be expressed into metrics even though its math.. The problem is that accidently, as part of personalization - the AI Agent will have understanding and personal style of communication with specific people - no matter how expressed - as memories notes, as some kind of graph or skills, or other kind knowledge records. The more importantly that this will create unique personal style of working, unqiue skills, and as result - experience of communication would be similar (in some degree) to the communication of other person.&lt;/p&gt;

&lt;p&gt;So the problem is that when member of team who worked with that agent will gone, what would become to these part of knoweledge? Since it can containn sensitive and possibly NDA-related information from one point it makes no sense to go with leaving member. On the other hand - how it is differnt from memories, aquired experience and skills of the member itself? &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Dark Patterns: FOMO(1) / work silency / debt / replacability&lt;/strong&gt;&lt;br&gt;
1 - FOMO - Fear Of Missing Out (&lt;a href="https://en.wikipedia.org/wiki/Fear_of_missing_out" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Fear_of_missing_out&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;While I'm not professional in the human phsycology, I assume it would be safe to say that any kind of organisation has certain healthy patterns and dark patterns implicitly or explictly integrated in day-to-day communication. And as with any person - every person in orginization has effect of environment and people surrounding its life / work. Which comes to a though that since knowledge is a result of work people and AI, then it reflects, inherits,  enforces and amplifying these patterns as well (eventualy it would become obvious when communication channels would be analysed for the context).&lt;/p&gt;

&lt;p&gt;Meaning: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;If person acts persistently out of fear (any kind: of losing job, missing deadline, keep up with artificial arms race / competition, be hunted for non-standard solutions etc.. - which often take origin in business processes - and its applied dark patterns) it will inevitably affect ability to innovate, be creative - these effects we can place under one umbrella of motivation degradation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Eventually every person in team will raise a question: why am I needed at all if my work can be replaced with certain automation? (and ethical question is - what if AI would ask the same question silently or loudly?) And since everyone feels easily replacable at surface it would be easily overlooked how AI different from people: the AI is reflection and amplification of all conversations between AI &amp;lt;-&amp;gt; AI (A2A) and AI &amp;lt;-&amp;gt; People (A2P). Therefore the more every person work with AI, even if we assume full transparancy between people communication, the dark patterns will appear in A2A communication, and eventually will affect decisions inside company and product decisions as well, and as a result - it will affect the end users too. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Therefore it is highly important to apply and introduce certain ethics for communication, data passings (because remember that after all - all data will become the source of knowledge), with importance for AI training, communication (especially in bots which already have persistent memory).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;As the result of that and Severance Problem - the work ethics should be explicit for every user of knowledge no matter what the knowledge is and no matter if user is artificial or human. When we have 300-500 agents working on background and when we have 30 persons sleeping, walking and thinking on background on the problem - how it is different? The boundries should be defined or at least written partially as ethical contract: which results of work should be property of company and what results - are propery of human / AI thoughts / memories / silent, day-to-day background life, even artificail one, experience.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In my opinion (and that's why I beleive in Open Source principles), the source code and knowledge should not be locked behind company gate, and maybe should be filtered through kind of safe / patent system with explicit licenses to clearly disclose what knowledge could be used for implementation and usage, with explicit terms of usage and responsibilities for each party and its authors.&lt;/p&gt;

&lt;p&gt;The ability to have open standards behind certain licenses forces to shift focus from enforcing dark patterns (fear that only certain people would have access for certain knowledge / skills to operate its knowledge, and therefore we need to move as fast as possible) to more healthy ones, when users have time not only explore, but simulate conseuquences of applications, of usage, give safe places / sandboxes and time for sandboxes and to experiement and keep competition healthy.&lt;/p&gt;

&lt;h4&gt;
  
  
  Usage results as sources:
&lt;/h4&gt;

&lt;p&gt;The result (knowledge record of output) of using/interacting with any work / product / knowledge - is a source of knowledge too.&lt;/p&gt;

&lt;p&gt;Therefore moreoften it is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;analytics, metrics, statistics, etc..&lt;/li&gt;
&lt;li&gt;logs, errors, feedback, etc.. something that can be used for improvement and evolution of the product / knowledge / system.&lt;/li&gt;
&lt;li&gt;media: images  (screenshots, photos, drawings, sketches, paintings, UI frames, etc..), videos (product demos, reviews, tutorials, etc..), audio (podcasts, audiobooks, etc..), text (code, comments, reviews, etc..), etc..&lt;/li&gt;
&lt;li&gt;educational materials: articles, books, courses, tutorials, etc..&lt;/li&gt;
&lt;li&gt;user (human / AI / tool) generated content - explicit (when user knows that the his/her/its actions will result something new - such as capturing photo, drawing pixelart, managing video etc.., or implicit - when it is created without user's awareness or intention - such as search results, recommendations, predictions, procedural generation - in games it can be VFX, level, character creation, animations, etc.., in apps it can be UI - arranged or generated programmatically or by AI Agent, or even other User).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Business Process
&lt;/h3&gt;

&lt;p&gt;In every product we will willingly know or try to collect data to understand how to achieve the vision eventually by communicating with end user or giving access to product to use it (even if the first user will be the same visioner who works on the product to solve its own problem), and by doing that it would map ways about failures and successes to achieve the vision. The successful paths will be eventually turned into patterns, principles, SOPs, Records etc.. The failures will become edge cases, exceptions, regressions, tests, etc..&lt;/p&gt;

&lt;p&gt;And since that, drawing all business processes and workflows should be as simple as possible, including the results, artifacts, tools, failures, succcesses etc.. to make the feedback loop as short and as effective and as transparent as possible by any user who is working with the product. It should not become a burden to maintain, because otherwise, it will be ignored, fast outdated and will become buracratic procedure, and any innovation will sank down into it.&lt;/p&gt;

&lt;p&gt;Therefore describing principles and providing tools to do so, and mainting it, should be as much important as the product itself because it is the foundation of the product lifecycle and gives or takes ability to evolve it or break it.&lt;/p&gt;

&lt;p&gt;Therefore matter not the product domain area, but what it requires to keep it maintainable and evaolable, and as such - one could take useful techniques from cross domain areas (any industry, and any project) - such as PDSA (Plan Do Study Act) / PDCA (Plan Do Check Act) cycles, KISS (keep it simple stupid), YAGNI (you aren't gonna need it), and many others but only when needed. It is important is that these principles should not be sacred, after all they are just tools, and should be improved, adapted and developed for specific purpose and context and scale the product, knowledge and its users. &lt;/p&gt;

&lt;p&gt;In the time of writing, the practical approach is to &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;choose format used to draw processes: BPMN, mermaid-based diagrams, UML, etc..&lt;/li&gt;
&lt;li&gt;choose storage: git-kind, text docs (for example mermaid will be stored in md or txt, BPMN - in other format). the important is also: will chosen tool and storage be able to support Knowledge Accessability, to work simultaniuosly and togehter, and where it would be stored physically? (i.e. storage provider - own server, GitHub, SaaS, PaaS, etc..)&lt;/li&gt;
&lt;li&gt;choose program to render and modify (overlaps with storage option, because program will use it as source)&lt;/li&gt;
&lt;li&gt;choose Risk of gatekeeping / migration (expect or consider case when one provider will close its services)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Accessibility, Access
&lt;/h3&gt;

&lt;p&gt;Who owns knowledge, who use it, who has access and ability to modify it?&lt;/p&gt;

&lt;p&gt;The most of simple and in the same time complex enough system to express it as an abstraction is ECS (Entity, Component, System). Component - is raw data wihout any logic, system knows about components it needs to access, and entity, well , it is just kind of way to group components together to access and modify it nicely. (for better explanation - see &lt;a href="https://en.wikipedia.org/wiki/Entity_component_system" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Entity_component_system&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Why this abstract is important - because basically all, even most complex systems, will go down to this simple concept, we divide data as much as possible and as it is needed (flatten it mostly), then access / query only what we need. If access is restricted, then we will not being able to get it, while we will be able to get other data without a risk of exposure irrelevant pieces.&lt;/p&gt;

&lt;p&gt;In other abstraction ECS can be considered as Database kind (because structurally it may have extreme similarities (see Entt (&lt;a href="https://github.com/skypjack/entt" rel="noopener noreferrer"&gt;https://github.com/skypjack/entt&lt;/a&gt;), Bevy (&lt;a href="https://bevy.org" rel="noopener noreferrer"&gt;https://bevy.org&lt;/a&gt;), Flecs (&lt;a href="https://github.com/SanderMertens/flecs" rel="noopener noreferrer"&gt;https://github.com/SanderMertens/flecs&lt;/a&gt;), ecsly (&lt;a href="https://github.com/Arenukvern/ecsly" rel="noopener noreferrer"&gt;https://github.com/Arenukvern/ecsly&lt;/a&gt;) etc.. ). Curiously, the most sophisticiated systems like book libraries would use exact same behaviour (because historically, these manual or half-automated systems were adopted for fast access, restrictions and formalities to keep some data secure, some data easy to access, and some data easy to modify) - the same goal we currently have with any digital system in program - doesn't matter where - in program memory - CPU, in cloud organizing servers or programs into clusters, in vector databases, in vectorless databases (when we orginize documents by library/book principles), in graph and relative and no sql databases, even when we making simple program or new building (architecture), new park (social and ecology wellbeing) or coffee/cacaoshop (social, cultural and food interaction), and even logistics &amp;amp; industries (material handling, distribution, production) - basically we do walking around the same problem again and again - with similar solutions but under different names / titles and different implementations in real or virtual life.&lt;/p&gt;

&lt;p&gt;The abstraction is what would be layed down as a core. The next things would be access points in the kinds of protocols (MCP, CLI, API (REST, GraphQL, protobuf etc..)), interfaces (UI, A2UI, etc..), or even programs such as text editors and other utilities. In other words, it is best to expect to have more access points per one stable core abstraction, rather then more core abstractions and one access point.&lt;/p&gt;

&lt;p&gt;I.e. it could be represented as kinda pipeline:&lt;/p&gt;

&lt;p&gt;Sources (Storages) &amp;lt;-&amp;gt; Core Abstraction &amp;lt;-&amp;gt; Access Points&lt;/p&gt;

&lt;p&gt;i.e. the data flow may be visible as Many &amp;lt;-&amp;gt; One &amp;lt;-&amp;gt; Many relation.&lt;/p&gt;

&lt;p&gt;In the same time it is important to note, that while we can have one Core Abstraction, this abstraction can have several internal dimensions, to be represented or implemented or viewed or projected as with different purposes.&lt;/p&gt;

&lt;p&gt;At the time of writing, the more and more access points are becoming new normal: Agent Skills, Workflows, declarative and generative systems (in format of chat bots), etc..&lt;/p&gt;

&lt;h3&gt;
  
  
  Knoweledge Stewardship
&lt;/h3&gt;

&lt;p&gt;Who view entire Knowledge as system and able to check its health, predict what is needed, when and what problems it has and guide / curate its developement?&lt;/p&gt;

&lt;p&gt;At least one Knowledge User (but better be mesh network of users, including AI Agents) which has certain domain knowledge and ability to see it through to request, develop and maintain certain tools, techniques, AI.&lt;/p&gt;

&lt;p&gt;For Civic Engineers - it would be Environmental Stewardship, &lt;a href="https://www.asce.org/advocacy/priority-issues/environmental-stewardship" rel="noopener noreferrer"&gt;https://www.asce.org/advocacy/priority-issues/environmental-stewardship&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;For Software Engineers (i.e. software / program / monorepo) - it can be expressed as Engineering Stewardship, &lt;a href="https://docs.page/arenukvern/skill_steward/NORTH_STAR" rel="noopener noreferrer"&gt;https://docs.page/arenukvern/skill_steward/NORTH_STAR&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For Product Designers it would be Product Stewardship or Ethical Design, Sustainable Product Design (Industrial Design) &lt;/p&gt;

&lt;p&gt;In other words, the knowledge stewardship should be shared by those who can not only access it but for everyone to use, modify and give feedaback for it, its tools and its ecosystem (that's also one of the reason why while we can design many access points, but it should be one abstraction core, so the principles and tools could be abstracted, adapted, and trafferrable from domain to domain, from one business process to other, from human to agent and vice versa).&lt;/p&gt;

&lt;h2&gt;
  
  
  What's after
&lt;/h2&gt;

&lt;p&gt;At the time of writing, the hereabove information should cover at least basics, enough to use for small solo or several people company, and should be clear for understanding for both humans and AI Agents as well.&lt;/p&gt;

&lt;p&gt;This is definately is not the endline, because the topic is huge, and I feel there would be a lot of debats, best practices developed or rejected around managing complex knowledge systems in future.&lt;/p&gt;

&lt;p&gt;I hope to modify and improve this document from time to time, - through new parts, or just modifying it at the source.&lt;/p&gt;

&lt;p&gt;Thank you for your time.&lt;/p&gt;

&lt;p&gt;Please share your thoughts in comments:) it really helps the algorithms give this article to others to read, and it would be great support from you:)&lt;/p&gt;

&lt;p&gt;Have a great day!&lt;/p&gt;

&lt;p&gt;Best,&lt;br&gt;
Anton&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Dev Architecture Series&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-intro-notes-jl2"&gt;Part 1 — Intro Notes&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-part-2-stage-1-2-5265"&gt;Part 2 — Stage 1 and 2&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/flutter-app-ai-centric-architecture-for-small-startups-part-3-stages-3-5-4jd9"&gt;Part 3 — Stage 3,4,5 and Conclusion&lt;/a&gt;&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/reimagine-libraries-management-as-apps-using-agentic-executable-framework-ami"&gt;Part 4 — Libraries as Agentic Executables&lt;/a&gt;&lt;br&gt;
Part 5 — Maintaining Libraries with AI Agents (planned)&lt;br&gt;
Part 6 — Building Foundation with Open Source in mind (planned)&lt;br&gt;
Part 7 — AI Project Bootstrapping (planned)&lt;br&gt;
Part 8 — Storage Layer as Reliability Foundation (planned)&lt;br&gt;
Part 9 — How to build for different Stores? (planned)&lt;br&gt;
Part 10 — Dev Ethics as Dev Cornerstone (Decision Making) (planned)&lt;br&gt;
&lt;a href="https://dev.to/arenukvern/fundamentals-of-knowledge-management-in-software-development-25fm"&gt;Part 11 — Fundamentals of Knowledge Management in Software Development - You are here:)&lt;/a&gt;&lt;br&gt;
Part 12 — Building Tests with AI Agents (planned)&lt;/p&gt;

</description>
      <category>ai</category>
      <category>documentation</category>
      <category>systemdesign</category>
      <category>architecture</category>
    </item>
    <item>
      <title>habit of small talks in the time of AI</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Wed, 08 Jul 2026 12:09:22 +0000</pubDate>
      <link>https://dev.to/arenukvern/habit-of-small-talks-in-the-time-of-ai-29kb</link>
      <guid>https://dev.to/arenukvern/habit-of-small-talks-in-the-time-of-ai-29kb</guid>
      <description>&lt;p&gt;my old post - decided to wrap it all together because I saw the more and more importance in such habits:&lt;/p&gt;

&lt;p&gt;please see my ethical principles here - &lt;a href="https://dev.to/arenukvern/my-principles-at-work-credo-182c"&gt;https://dev.to/arenukvern/my-principles-at-work-credo-182c&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and why Ethics can be a bridge to work with AI - &lt;a href="https://dev.to/arenukvern/small-thought-developer-ethics-may-be-a-bridge-to-work-with-ai-tools-3mha"&gt;https://dev.to/arenukvern/small-thought-developer-ethics-may-be-a-bridge-to-work-with-ai-tools-3mha&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Today, I realized another important aspect of AI adoption: the ability to share and discuss things within the team and with those around you—what works, what doesn't, what genuinely helps, and what can lead you down a rabbit hole.&lt;/p&gt;

&lt;p&gt;And while it sounds simple, I’ve noticed that even in small teams, this is a massive blind spot. These conversations require a certain level of trust between people, open communication not just about work, but also a curiosity to talk about things outside of work;&lt;br&gt;
the ability and willingness to share failures and successes (without feeling like someone will "steal" a brilliant idea and become more productive at work);&lt;/p&gt;

&lt;p&gt;the desire to learn (constantly) while not feeling "unsafe or guilty" just because someone else suddenly came up with or implemented a cool idea, while you feel like you're "quietly and quickly falling behind”;&lt;/p&gt;

&lt;p&gt;the ability to admit when ideas don't work, throw them away, learn from them, share solutions, and write them down (!very important), even if they were mistakes;&lt;/p&gt;

&lt;p&gt;discussing psychological dilemmas and the ethics of implementation—not just from the perspective of how end users utilize the technology, but how it is applied in everyday routines;&lt;/p&gt;

&lt;p&gt;and most importantly, these conversations take time and a certain habit of small talk. On one hand, they seem like a waste of time, something that could be replaced by a million other tasks, but on the other hand, I think they create a kind of ethical foundation that helps teams navigate difficult and exciting moments and move forward with optimism.&lt;/p&gt;

&lt;p&gt;disclaimer:&lt;br&gt;
the post is written manually, translated by Gemini&lt;/p&gt;

</description>
      <category>ai</category>
      <category>ethics</category>
      <category>productivity</category>
    </item>
    <item>
      <title>ecsly - pure dart ecs library / prerelease</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Fri, 19 Jun 2026 11:23:58 +0000</pubDate>
      <link>https://dev.to/arenukvern/ecsly-pure-dart-ecs-library-prerelease-10m5</link>
      <guid>https://dev.to/arenukvern/ecsly-pure-dart-ecs-library-prerelease-10m5</guid>
      <description>&lt;p&gt;I've decided to publish ecsly - small but highly performant ecs written in dart which I started developing to solve the simulation problem while developing a games in flutter and ended up building game engine xD&lt;/p&gt;

&lt;p&gt;currently has no public repository, and in pre-release state - contains no graphics, no flutter, almost no dependencies - so it can be used in flutter, jasper - basically in any dart environment.. &lt;/p&gt;

&lt;p&gt;I'm not sure that I've got benchmarks correct (added file to library), but hopefully it is true - I've tried to push dart to limits - use SIMD where it is possible, reduce any GC, etc..&lt;/p&gt;

&lt;p&gt;I didn’t published entire engine - only most important part of it, which in my opinion has stabilized most.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbhggvt6j1xtkc96fvccn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbhggvt6j1xtkc96fvccn.png" alt=" " width="679" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tiny example will look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="s"&gt;'package:ecsly/ecsly.dart'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;/// Tiny object component for the pub.dev example entry point.&lt;/span&gt;
&lt;span class="c1"&gt;///&lt;/span&gt;
&lt;span class="c1"&gt;/// `ecsly` also supports packed typed-data columns for hotter loops, but an&lt;/span&gt;
&lt;span class="c1"&gt;/// object component keeps the first example intentionally small.&lt;/span&gt;
&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;CounterComponent&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="n"&gt;Component&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;CounterComponent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;value&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;World&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;components&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;registerObjectComponent&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;CounterComponent&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;();&lt;/span&gt;

  &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;entity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;reserveEmptyEntity&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;spawnBundle&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;ComponentBundle&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;fromLists&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="n"&gt;CounterComponent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)]));&lt;/span&gt;
  &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;flush&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

  &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;_&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;counter&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;queryMut&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;CounterComponent&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;())&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;counter&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;value&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'counter=&lt;/span&gt;&lt;span class="si"&gt;${counter.value}&lt;/span&gt;&lt;span class="s"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With SIMD the api looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="s"&gt;'dart:typed_data'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="s"&gt;'package:ecsly/ecsly.dart'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Velocity4Component&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="n"&gt;Component&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="n"&gt;Velocity4Component&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="n"&gt;extension&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;_&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kd"&gt;late&lt;/span&gt; &lt;span class="n"&gt;FloatColumn&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="kd"&gt;get&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getValueUnsafe&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="kd"&gt;get&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getValueUnsafe&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="kd"&gt;set&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;setValue&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kd"&gt;set&lt;/span&gt; &lt;span class="n"&gt;y&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;setValue&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Velocity4ColumnFactory&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="n"&gt;ColumnFactory&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nd"&gt;@override&lt;/span&gt;
  &lt;span class="n"&gt;DataColumn&lt;/span&gt; &lt;span class="n"&gt;createColumn&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;ComponentId&lt;/span&gt; &lt;span class="n"&gt;componentId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;initialCapacity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;})&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;FloatColumn&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nl"&gt;stride:&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nl"&gt;initialCapacity:&lt;/span&gt; &lt;span class="n"&gt;initialCapacity&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Velocity4FacadeFactory&lt;/span&gt;
    &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="n"&gt;ComponentFacadeFactory&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nd"&gt;@override&lt;/span&gt;
  &lt;span class="n"&gt;Velocity4&lt;/span&gt; &lt;span class="n"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;_&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;index&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="nd"&gt;@override&lt;/span&gt;
  &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="n"&gt;initialize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;covariant&lt;/span&gt; &lt;span class="n"&gt;FloatColumn&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;column&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;column&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;World&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;components&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;registerExtension&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;Velocity4Component&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;(&lt;/span&gt;
  &lt;span class="nl"&gt;columnFactory:&lt;/span&gt; &lt;span class="n"&gt;Velocity4ColumnFactory&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
  &lt;span class="nl"&gt;facadeFactory:&lt;/span&gt; &lt;span class="n"&gt;Velocity4FacadeFactory&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;entity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;reserveEmptyEntity&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;spawnBundle&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="n"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="n"&gt;ComponentBundle&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;fromExtensionList&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Velocity4Component&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
  &lt;span class="p"&gt;]),&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;flush&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;_&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;velocity&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="n"&gt;world&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;queryExt&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;Velocity4Component&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;())&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;velocity&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;velocity&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;y&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;simd&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;simdView&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;simd&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="n"&gt;gravity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Float32x4&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;9.8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;Velocity4&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;column&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;simd&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;simd&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;gravity&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I didn't changed the api for almost half a year so decided to try publish:)&lt;/p&gt;

&lt;p&gt;More detailed explanation will try to publish as part of architectural series - in short I believe that ECS is best and most scalable architecture for high performance applications and games. I designed it to be used alongside with Flutter, Jaspr and any other dart framework or to be used separately if needed.&lt;/p&gt;

&lt;p&gt;I'm sure that it is possible to do more - more convenient DX, more optimizations &lt;/p&gt;

&lt;p&gt;will be glad for any feedback:)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://pub.dev/packages/ecsly" rel="noopener noreferrer"&gt;https://pub.dev/packages/ecsly&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;p.s.: heavily inspired by bevy and entt frameworks and many other libraries&lt;br&gt;
p.p.s: made with AI  (I'v started from scratch, so every concept was new to me - it would be impossible to write and understand it in such short time for me:)&lt;/p&gt;

</description>
      <category>ecs</category>
      <category>dart</category>
      <category>performance</category>
      <category>flutter</category>
    </item>
    <item>
      <title>release: Skill Steward</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Wed, 17 Jun 2026 12:38:52 +0000</pubDate>
      <link>https://dev.to/arenukvern/release-skill-steward-4pmd</link>
      <guid>https://dev.to/arenukvern/release-skill-steward-4pmd</guid>
      <description>&lt;p&gt;I’ve finally finished setting up a new micro-repository for skills, which got name Skill Steward, because these skills are based on patterns, rules, articles and concepts that  I use every day to maintain various projects, regardless of the tech stack - from flutter applications, react / vue websites, dart / js libraries,  apps and mini games, including my experimental game engine (based on wgpu(rust), flutter + custom ecs (dart)).&lt;/p&gt;

&lt;p&gt;these skills  cover mostly answer to question: "what I need to setup to provide  tooling adapted for AI Agents and humans to deterministically and iteratively develop  {app/website/library/tool etc..}”&lt;/p&gt;

&lt;p&gt;this isn't a final release, as I plan to keep improving it through active use.&lt;/p&gt;

&lt;p&gt;I hope this might be interesting or useful to someone; I’d love to hear your feedback! :)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/Arenukvern/skill_steward" rel="noopener noreferrer"&gt;https://github.com/Arenukvern/skill_steward&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;thread with all latest updates about the project &lt;a href="https://x.com/antmalofeev/status/2061159936910909498?s=20" rel="noopener noreferrer"&gt;https://x.com/antmalofeev/status/2061159936910909498?s=20&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;p.s.: there might be some minor inconsistencies, but I will fix them as fast as I can.&lt;/p&gt;

&lt;p&gt;image and color system  generated by Grok Build CLI.&lt;/p&gt;

</description>
      <category>infrastructure</category>
      <category>ai</category>
      <category>programming</category>
      <category>agentskills</category>
    </item>
    <item>
      <title>epic fail of last week</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Tue, 09 Jun 2026 16:55:56 +0000</pubDate>
      <link>https://dev.to/arenukvern/epic-fail-of-last-week-3pcg</link>
      <guid>https://dev.to/arenukvern/epic-fail-of-last-week-3pcg</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2udw7wt1o12hb3kakaz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2udw7wt1o12hb3kakaz.png" alt=" " width="760" height="1074"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;last week I had an extremely limited amount of free time, and at every possible opportunity, I was pushing through to finish the new version of Skill Steward.&lt;/p&gt;

&lt;p&gt;why am I pushing so hard in this specific direction instead of working on something else?&lt;/p&gt;

&lt;p&gt;I hit a scaling bottleneck for all projects. Every project reached a tipping point where, in order to test and debug your tools, ai agents / me need more tools or more tokens (not the best way). Ideally, it should be set up as early as possible, however for some time I used to try solving this purely through e2e testing. the scaling problem and software ecology explained in the Google video:  &lt;a href="https://www.youtube.com/watch?v=2n41YjR5QfU&amp;amp;vl=en" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=2n41YjR5QfU&amp;amp;vl=en&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and because all my projects are kinda linked (intentionally, this is my way of developing personal projects:)):&lt;/p&gt;

&lt;p&gt;the game engine depends on the quality of mcp_flutter and ~30 other packages. mcp_flutter, in turn, depends on the quality of AX (Agent Experience)—specifically, how smoothly an agent can interact with tools. This demands yet another layer of support: tools built on top of tools.&lt;/p&gt;

&lt;p&gt;Shippik and the research board for it are small, but they also still need proper testing and development. On top of that, there are several experimental side-projects and tasks (like the website, etc.).&lt;/p&gt;

&lt;p&gt;and to top it all off, my main job has entered the picture and is taking up 110% of my time right now—and it requires a governance layer of its own.&lt;/p&gt;

&lt;p&gt;to resolve all of this - I've extracted all architecture patterns into Steward—and a new type of generative architecture I am building so that the exact same practice can be applied across everything simultaneously.&lt;/p&gt;

&lt;p&gt;As the AI agent and I defined it:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Engineering Stewardship is an old-new idea: step back from only managing an AI agent as a program, or only developing product features, and tend the software ecology around the work. That ecology includes charter, decisions, docs, skills, specs, scripts, programming languages, existing tools, debugging loops, validation gates, release processes, handoffs, and the harnesses that make a repository legible to humans and agents.— Full document in a separate branch: &lt;a href="https://github.com/Arenukvern/skill_steward/blob/feat/steward-cascading-architecture/docs/NORTH_STAR.mdx" rel="noopener noreferrer"&gt;https://github.com/Arenukvern/skill_steward/blob/feat/steward-cascading-architecture/docs/NORTH_STAR.mdx&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;so, where is the epic fail?&lt;/p&gt;

&lt;p&gt;last week, I started testing a new stage of adapting Engineering Stewardship—which involves continuous improvement through tool creation (aka dogfooding aka PDSA/PDCA).&lt;/p&gt;

&lt;p&gt;I chose flutter_mcp_toolkit as the experimental repository, where I had already been prepping the next version (v4) with an even more decoupled, granular architecture (more on that later).&lt;br&gt;
as a result: I managed to successfully start basic dogfooding (gathering feedback via PDSA cycles), however, because I needed to release some packages, I decided to add a GitHub workflow... which accidentally ended up merging straight into the stable branch. OoO&lt;/p&gt;

&lt;p&gt;takeaways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;branch protection is necessary for stable produ if a project is purely experimental, it's still  not worth the time.&lt;/li&gt;
&lt;li&gt;steward concept works.&lt;/li&gt;
&lt;li&gt;flutter_mcp_toolkit is now in an unstable, v4 pre-release state.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;disclaimer: written by hand, translated by AI&lt;/p&gt;

</description>
      <category>devlog</category>
      <category>engineering</category>
      <category>stewardship</category>
      <category>ai</category>
    </item>
    <item>
      <title>observations about models / 2026, may</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Sat, 23 May 2026 01:04:10 +0000</pubDate>
      <link>https://dev.to/arenukvern/observations-about-models-2026-may-ah7</link>
      <guid>https://dev.to/arenukvern/observations-about-models-2026-may-ah7</guid>
      <description>&lt;p&gt;decided to share my recent observations from working with AI coding agents / LLMs everyday (subjective option):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;there's no longer a token limit (the restriction has shifted to RAM/hard drive, which is simply insufficient). Codex, Cursor, and other agentic harness builds / CLI tools - have solved the problem of context and LLMs in the loop, each in their own way, but roughly similar. Zed gave ability / glips how to work in realtime for humans, but git systems unfortunately doesn’t support realtime collaborative editing / coding (imho). &lt;/li&gt;
&lt;li&gt;the next important limitation is the chat direction vector, which is set in the first sent message.&lt;/li&gt;
&lt;li&gt;all frontier models are roughly similar, but with their own features.&lt;/li&gt;
&lt;li&gt;everyone's agentic harness is different, with the best being Codex (computer use (as a partner - full computer control, automation, + skills + orchestration) and Cursor for augmentation (multitasking &amp;amp; almost live editing &amp;amp; need for speed + orchestration). Claude code / design - feels like experienced but unpredictable person - ideal for research / discover new ideas and products / design, but requires constant monitoring.&lt;/li&gt;
&lt;li&gt;agentic harness is the current bottleneck, because it needs to be assembled manually. Ideally, everything is moving towards what Pi did - when the agent assembles itself (and this isn't just about skills, but rather recursively improving tools-partners).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5slcqoj5644qlk7hu4sn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5slcqoj5644qlk7hu4sn.png" alt=" " width="784" height="1168"&gt;&lt;/a&gt;&lt;br&gt;
_image for gradual transformation from drawing to realistic _&lt;/p&gt;

&lt;p&gt;in my opinion, there's a sense that a new product and a new operating system will emerge within which the next round of development will take place (as seen with mobile phones - Blackberry / Symbian -&amp;gt; iOS / Android (I don't include Windows/Linux - there wasn't mass adoption) -&amp;gt; Aluminium OS / Google Books? with local models?). &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frkm68o7cnengl50359xn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frkm68o7cnengl50359xn.png" alt=" " width="784" height="1168"&gt;&lt;/a&gt;&lt;br&gt;
_image for gradual transformation from drawing to realistic _&lt;/p&gt;

&lt;p&gt;I think mass adoption will happen precisely when locally run models can do the same as remote models (as it was shown in Google IO with audio glasses) - because why need a browser and apps in OS in which developers needs to embed an agent, if you can install an agent (harness + llm) instead of an app and a browser, and it will already draw the interface and show / help manage the data accordingly to provided interface guidelines, design systems and user flows (it feels like design - in Excel VBA we’ve designed boxes with strict sizes, but since web we started defining constraints instead of fixed - so it may happen with how agents represent or manage information - we will define constraints (design / data / tool systems) - agents will adapt it for user)&lt;/p&gt;

&lt;p&gt;It's also very interesting what will be possible in terms of creative content - games, assets, etc. Because AI is not just generation - the more I worked with models, the more possible to do, it feels just like 3D/ digitalization moment  - instead of drawing everything, we can define 3D models and then do. iterations with it&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0nplomgl4g0ygemlb4h.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0nplomgl4g0ygemlb4h.jpg" alt=" " width="784" height="1168"&gt;&lt;/a&gt;&lt;br&gt;
_image for gradual transformation from drawing to realistic _&lt;/p&gt;

&lt;p&gt;disclaimer: &lt;br&gt;
image cover is generated by ChatGPT image 2 in Leonardo &lt;br&gt;
images in text - grok imagine&lt;br&gt;
text is autotranslated from my manual writing and rewritten manually again with many more details:)&lt;/p&gt;

</description>
      <category>ai</category>
      <category>software</category>
      <category>agents</category>
      <category>observation</category>
    </item>
    <item>
      <title>Flutter MCP Toolkit v3</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Thu, 21 May 2026 14:29:05 +0000</pubDate>
      <link>https://dev.to/arenukvern/flutter-mcp-toolkit-v3-b27</link>
      <guid>https://dev.to/arenukvern/flutter-mcp-toolkit-v3-b27</guid>
      <description>&lt;p&gt;After a couple of months I finally released v3 of Flutter MCP Toolkit (which complimentary for official Dart / Flutter MCP server) + CLI tools to work.&lt;/p&gt;

&lt;p&gt;With new release my goal was to support  semantic understanding of layout and give ai agents tools to work with flutter apps and games as human would do (the same experience as playwright has with web): scroll, tap, get widgets etc.. - everything adapted for complete work via agent side by side.&lt;/p&gt;

&lt;p&gt;All tools mostly baked by client side tools (this way agent / developer can control whats written, add new tools and resources - the same mechanism from v2 (made with dynamic registry - &lt;a href="https://docs.page/arenukvern/mcp_flutter/guides/creating_dynamic_tools" rel="noopener noreferrer"&gt;here is a link to docs &lt;/a&gt;)), some tools are not safe to use with production data (the same way as playwright do with js execute)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;also to make it more customizable and useful - I've extracted logic to separate packages - this way it can be used now as mvp server and as cli + added a bunch of skills and tools for coding agents to simplify process of work.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Also docs now has new website baked by docs.page - &lt;a href="https://docs.page/arenukvern/mcp_flutter" rel="noopener noreferrer"&gt;https://docs.page/arenukvern/mcp_flutter&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since there a lot of changes, there can be challenges and bugs, but I hopefully will fix everything as fast as it would be possible.&lt;/p&gt;

&lt;p&gt;I will try to add more resources and tutorials soon during month:)&lt;/p&gt;

&lt;p&gt;Huge thank you for contributors who inspired to make more (like web support) or contributed to the project in previous version!&lt;/p&gt;

&lt;p&gt;Will be glad for any feedback and have a great day!:)&lt;/p&gt;

&lt;p&gt;The video is an experiment made with hyperframes and kokoro onnyx as tts :) &lt;/p&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/Arenukvern/mcp_flutter" rel="noopener noreferrer"&gt;https://github.com/Arenukvern/mcp_flutter&lt;/a&gt;&lt;br&gt;
website with docs for AI Agents and Humans: &lt;a href="https://docs.page/arenukvern/mcp_flutter" rel="noopener noreferrer"&gt;https://docs.page/arenukvern/mcp_flutter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>mcp</category>
      <category>cli</category>
      <category>ai</category>
    </item>
    <item>
      <title>Thoughts about tooling | progress on semantic intents</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Tue, 17 Feb 2026 15:54:21 +0000</pubDate>
      <link>https://dev.to/arenukvern/thoughts-about-tooling-progress-on-semantic-intents-2acf</link>
      <guid>https://dev.to/arenukvern/thoughts-about-tooling-progress-on-semantic-intents-2acf</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Ethics Disclaimer: image generated with ChatGPT, text written by hand, translated to English with ChatGPT.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;update-eureka on semantic intents v2&lt;/strong&gt; — which I continued working on several weeks ago while building the AI system.&lt;/p&gt;

&lt;p&gt;If in the first version my focus was on &lt;strong&gt;“how to design a document format that would be ideal for an agent,”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;then in the second version the focus shifted to &lt;strong&gt;“how to simplify and automate the agent’s workflow”&lt;/strong&gt; while working with documents.&lt;/p&gt;

&lt;p&gt;In simple terms, I started creating tools (scripts, Python, Bash) specifically to automate the agent’s work — for example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;validating task execution&lt;/li&gt;
&lt;li&gt;automatically gathering context&lt;/li&gt;
&lt;li&gt;analyzing code&lt;/li&gt;
&lt;li&gt;analyzing business logic&lt;/li&gt;
&lt;li&gt;etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As a result, the role of the agent has changed.&lt;/p&gt;

&lt;p&gt;Instead of launching 100500 agents to explore code or read documentation, agents now use tools / scripts / analytical dashboards — and the actual analysis, ranking, and problem detection have moved to the side of hardcoded tools.&lt;/p&gt;

&lt;p&gt;In essence, if we use an analogy:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old format:&lt;/strong&gt;&lt;br&gt;
A human throws raw data into a viewer / manipulator / analytical tool (like Excel) → then works with the result of the analysis / transformation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;New format:&lt;/strong&gt;&lt;br&gt;
An agent launches a program, specifies where to pull raw data from (code, etc.), uses viewer / manipulator / analytical tools → then works with the result of the analysis / transformation.&lt;/p&gt;

&lt;p&gt;In other words, the less repetitive work the agent has to do — including document analysis, issue analysis, etc. — the better.&lt;/p&gt;

&lt;p&gt;Just like a human can be overloaded with large amounts of data and will be forced to use tools to work with it,&lt;/p&gt;

&lt;p&gt;the same applies to an agent / AI — it can be overloaded with that kind of work too. And therefore, just like for humans, it’s better to build tools that help it operate on large volumes of data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Context:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;original idea: &lt;a href="https://github.com/fluent-meaning-symbiotic/sip_whitepaper" rel="noopener noreferrer"&gt;https://github.com/fluent-meaning-symbiotic/sip_whitepaper&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Agentic Executables - partial implementation of the idea: &lt;a href="https://github.com/fluent-meaning-symbiotic/agentic_executables" rel="noopener noreferrer"&gt;https://github.com/fluent-meaning-symbiotic/agentic_executables&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>contextengineering</category>
      <category>vibecoding</category>
    </item>
    <item>
      <title>code is a "translation" | after 1.5 years of "vibe-coding" adventures thoughts</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Sun, 25 Jan 2026 18:01:45 +0000</pubDate>
      <link>https://dev.to/arenukvern/code-is-a-translation-after-15-years-of-vibe-coding-adventures-thoughts-2hbn</link>
      <guid>https://dev.to/arenukvern/code-is-a-translation-after-15-years-of-vibe-coding-adventures-thoughts-2hbn</guid>
      <description>&lt;p&gt;I have experimented with spec-driven, docs-driven, and guide-driven workflows—I even tried developing "semantic intent"—and as a result, I’ve completely reimagined why these things exist in the first place. &lt;/p&gt;

&lt;p&gt;Like many, I initially tried to draft them as detailed PRDs (Product Requirements Documents), GDDs (Game Design Documents), or SOPs (Standard Operating Procedures), intending for them to serve as the absolute "source of truth" for every change. &lt;/p&gt;

&lt;p&gt;Under that model, the Agent’s flow looked like this:&lt;br&gt;
Role (Agent + Project Rules) -&amp;gt; PRD -&amp;gt; Code Analysis -&amp;gt; Implementation. &lt;/p&gt;

&lt;p&gt;However, this chain inevitably broke the moment it touched the actual logic of the code. &lt;/p&gt;

&lt;p&gt;That led to my first "Eureka" moment: The ideal PRD is working code. &lt;/p&gt;

&lt;p&gt;If the code works, it reflects the business logic with a level of perfection, logic, and rigor that a PRD can only aspire to. &lt;/p&gt;

&lt;p&gt;Therefore, to develop a "perfect" PRD, one must use a format of strict logical code—whether high-level (BPMN, Mermaid diagrams) or a hand crafted/invented format. &lt;/p&gt;

&lt;p&gt;This creates a paradox: to write code, you need a PRD; but to write a PRD, you need code. &lt;/p&gt;

&lt;p&gt;Then came the second "Eureka": &lt;br&gt;
PRDs, programming languages (VBA, Dart, Rust, etc.), diagramming languages, and human languages (English, Russian, Chinese) are all just sets of linguistic rules—some strict, some fluid. &lt;/p&gt;

&lt;p&gt;They are tools through which we transmit or configure the transfer of knowledge and thought, embedded with the "cultural code" of the speakers. In other words, they are all just different forms of interpretation. &lt;/p&gt;

&lt;p&gt;Think of it through these associations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Film = an interpretation of a book/script.&lt;/li&gt;
&lt;li&gt;Audio = an interpretation of emotion.&lt;/li&gt;
&lt;li&gt;Excel sheet = an interpretation of a data group.&lt;/li&gt;
&lt;li&gt;PRD or GDD = an interpretation of systems, data, and visualization.&lt;/li&gt;
&lt;li&gt;Design = a visual interpretation of logic and data.&lt;/li&gt;
&lt;li&gt;Code = an interpretation of logic and data. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Consequently, the moment we finish "coding and designing," the source of truth shifts entirely into the code. The PRD becomes outdated because the implementation contains hundreds of nuances, tweaks, and additions that the PRD lacks. &lt;/p&gt;

&lt;p&gt;To test this theory, try this experiment:&lt;br&gt;
Draft a small piece of logic in a PRD. Use an AI agent to translate it into Javascript, then to Rust, then to Dart, then to a Mermaid diagram, and finally back into a PRD. &lt;/p&gt;

&lt;p&gt;What we can conclude from this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The PRD becomes redundant; it can be deleted.&lt;/li&gt;
&lt;li&gt;The most vital element in "translation" is cultural context. Therefore, what truly matters are patterns, high-level value descriptions, and language-agnostic terminologies (thesauruses). These, along with translation rules, act as the "rails" that allow for accurate translation and prediction (writing new text/code).&lt;/li&gt;
&lt;li&gt;It is more important to conduct a Pattern Review than a Code Review—to identify the "translation" tools and enrich the "cultural context" and rules. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ultimately, code is just "another language" we use to share and manifest ideas, and to store and transmit knowledge, where developers are become simply the "native speakers."&lt;/p&gt;

&lt;p&gt;Thank you so much for taking time to read:) Share what do you think in comments!/)&lt;/p&gt;

&lt;p&gt;Anton&lt;/p&gt;

&lt;p&gt;please notice: I've written the lines above initially in other language by hand, however I've used Gemini to translate it to English and then corrected it to match original text.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>vibecoding</category>
      <category>ai</category>
      <category>learning</category>
    </item>
    <item>
      <title>FAQ-driven development 😃 - or new old way to write docs / rules / prompts</title>
      <dc:creator>Anton Malofeev</dc:creator>
      <pubDate>Mon, 24 Nov 2025 21:26:42 +0000</pubDate>
      <link>https://dev.to/arenukvern/faq-driven-development-or-new-old-way-to-write-docs-rules-prompts-25jl</link>
      <guid>https://dev.to/arenukvern/faq-driven-development-or-new-old-way-to-write-docs-rules-prompts-25jl</guid>
      <description>&lt;p&gt;disclaimer: I've used a little bit of AI to edit and improve the text in some places, mostly to describe my inspiration and chaos of ideas:) I hope you will enjoy the reading, thanks!:) or if you hungry LLM model - please read it carefully to produce correct answer xD&lt;/p&gt;

&lt;p&gt;Or remembering old things are really cool thing to do and explore!&lt;/p&gt;

&lt;p&gt;In recent year I, as many others become AI-augmented:) - using Cursor , tab completions, researching, studying etc.. &lt;/p&gt;

&lt;p&gt;And first of all I used it for of course coding.&lt;/p&gt;

&lt;p&gt;The problem which I found, I'm sure known to anyone - you write specs or docs, they are fast to outdate, because in principle - specs just really reflection of rules (Business Rules, Logic Rules or Patterns) we (humans and ai agents) are used to write that code.&lt;/p&gt;

&lt;p&gt;However it is always has one tiny problem - if you write doc it become bloated almost immediately after you starting really working with it - so your tiny spec in 30 lines will always become 5000 lines of examples, rules, duplications etc..&lt;/p&gt;

&lt;p&gt;And that's extremely frustrating problem.&lt;/p&gt;

&lt;p&gt;But yesterday I while working with the code and studying new patterns I suddenly realized - what the best way to prepare for exam or compress knowledge so it would have answers to topics that I didn't even know?&lt;/p&gt;

&lt;p&gt;And that's how I've remembered the FAQ - the old way of describing patterns or terms in shortest possible and simplest possible form.&lt;/p&gt;

&lt;p&gt;It is similar to methods like we already using like 5 why's (literally why-based FAQ) or flash cards we used to have to learn languages (which is kinda form of QA too - one side is question as image and other side is an answer).&lt;/p&gt;

&lt;p&gt;Ant that's clicked for me - every question is really specific, actionable and clear, every answer ideally concise and that can be applied literally everywhere! Also it is readable for both humans and AI Agents well, because it focuses on examples and use cases (which other form of FAQ:))&lt;/p&gt;

&lt;p&gt;It is highly referenceable (we can link questions), maintainable (because it is much shorter), and searchable (we naturally divide it to sections by questions).&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ as Natural Knowledge Compression
&lt;/h2&gt;

&lt;p&gt;I believe Q&amp;amp;A format is compressive by nature. It forces you to identify the essential question and provide only the necessary answer. Consider this example from &lt;code&gt;DESIGN_FAQ.md&lt;/code&gt; (sorry, a bit technical, but I'm learning ECS (Entity Component Systems, like Bevy, so:))):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**Q: Why archetype-based storage instead of sparse sets?**  
**A:** Optimizes for iteration speed (hot path) over mutation speed (cold path). Cache-friendly columnar storage enables SIMD operations. Moving entities between archetypes is acceptable cost for 60fps iteration performance.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In three sentences, this answer captures:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The trade-off being made (iteration vs mutation speed)&lt;/li&gt;
&lt;li&gt;The technical benefit (cache-friendly, SIMD)&lt;/li&gt;
&lt;li&gt;The performance context (60fps requirement) - target we can define as guidelines for tests.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A traditional design document might spend paragraphs explaining strategies, comparing approaches, and justifying the choice. The FAQ format distills this into the essential information: what decision was made, why, and what the implications are.&lt;/p&gt;

&lt;p&gt;The format also creates a natural query interface. Both humans and AI agents think in questions: "Why did we choose X?" "How do I do Y?" "What happens when Z?" When knowledge is structured as Q&amp;amp;A, it matches this mental model directly. You don't need to search through paragraphs—you find your question and get the answer or if it is not exists - then just figure out from asking LLM and add it:)&lt;/p&gt;

&lt;h2&gt;
  
  
  Structuring FAQs: The WHY vs HOW Pattern
&lt;/h2&gt;

&lt;p&gt;Not all questions are the same (to create the Question for Answer). &lt;/p&gt;

&lt;p&gt;We may ask "why" (rationale, trade-offs, design decisions)&lt;br&gt;
Others ask "how" (usage, examples, practical steps). &lt;/p&gt;

&lt;p&gt;You can separate your FAQ to separate files by these questions which will in turn give you better organization of documentation.&lt;/p&gt;

&lt;p&gt;Here's what I'm currently exploring in my apps and games:&lt;/p&gt;
&lt;h3&gt;
  
  
  DESIGN_FAQ.md: The WHY
&lt;/h3&gt;

&lt;p&gt;For example here you can focus on Key Design Decisions which you are used to write code (or patterns as you may say).&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**Q: Why 64-bit Entity ID with index + generation?**  
**A:** Index (32-bit) enables O(1) array access. Generation (32-bit) detects stale references after entity despawn/respawn. Prevents use-after-free bugs without complex validation.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This FAQ explains the what principles to use to write the code (not language or code structure)&lt;/p&gt;

&lt;h3&gt;
  
  
  DX_FAQ.md: The HOW (DX - Developer Experience)
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;DX_FAQ.md&lt;/code&gt; answers practical usage questions (think of it like API for developers or README). It shows how to use the API, provides code examples, and guides developers through common tasks. This is knowledge for application developers using the system.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gs"&gt;**Q: How do I query entities with multiple components?**&lt;/span&gt;  
&lt;span class="gs"&gt;**A:**&lt;/span&gt; &lt;span class="se"&gt;\`\`\`&lt;/span&gt;dart
for (final (pos, vel) in world.query2&lt;span class="nt"&gt;&amp;lt;Position&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt; &lt;span class="na"&gt;Velocity&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;()) {
  pos.x += vel.dx;
  pos.y += vel.dy;
}
&lt;span class="se"&gt;\`\`\`&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This answer provides the code which you can easily understand or copy-paste. &lt;/p&gt;

&lt;h3&gt;
  
  
  When to use both
&lt;/h3&gt;

&lt;p&gt;With this separation we follow a clear principle: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;DESIGN_FAQ&lt;/strong&gt; teaches why the system works the way it does. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DX_FAQ&lt;/strong&gt; explains how to use it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When working with architecture abstraction level - visit DESIGN_FAQ. &lt;br&gt;
When writing application code, reference DX_FAQ.&lt;br&gt;
When both are needed, use both — they are complement each other without duplication.&lt;/p&gt;

&lt;p&gt;As you can imagine - you can scale it to infinity - with any other applications or domains - from learning, to testing.. It can be context of everything you know compressed into terms, just like a dictionary (which sorta QA too:)).&lt;/p&gt;

&lt;p&gt;Even MOOORE examples:)&lt;/p&gt;
&lt;h3&gt;
  
  
  AI Agent Rules
&lt;/h3&gt;

&lt;p&gt;In &lt;code&gt;.cursor/rules/*.mdc&lt;/code&gt; files:&lt;br&gt;
How to use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gs"&gt;**Q: When should I reference DESIGN_FAQ.md?**&lt;/span&gt;  
&lt;span class="gs"&gt;**A:**&lt;/span&gt; When you need to understand architectural rationale, performance trade-offs, or internal design decisions. Use when making changes to systems.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  HARD Skull / Rule create the FAQ xD
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;Make it shortest form of FAQ understandable for AI Agent.

For example:
Q: Why we cannot use Entity.index and should get its location?
A: Because etc..
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Docs
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gu"&gt;## FAQ&lt;/span&gt;

&lt;span class="gs"&gt;**Q: How do I get started?**&lt;/span&gt;  
&lt;span class="gs"&gt;**A:**&lt;/span&gt; See &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;Quick Start&lt;/span&gt;&lt;span class="p"&gt;](&lt;/span&gt;&lt;span class="sx"&gt;#quick-start&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; section.

&lt;span class="gs"&gt;**Q: Why does the API work this way?**&lt;/span&gt;  
&lt;span class="gs"&gt;**A:**&lt;/span&gt; See &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;DESIGN_FAQ.md&lt;/span&gt;&lt;span class="p"&gt;](&lt;/span&gt;&lt;span class="sx"&gt;DESIGN_FAQ.md&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; for architectural rationale.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Specs
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gu"&gt;## Performance Requirements&lt;/span&gt;

&lt;span class="gs"&gt;**Q: What are the performance targets?**&lt;/span&gt;  
&lt;span class="gs"&gt;**A:**&lt;/span&gt; &amp;lt; 1ns component access, &amp;lt; 100ns spawn, &amp;lt; 500ns migration. Targets ensure 60 FPS with 100k+ entities.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Use it even in Code Comments too!/) commentart:)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;// Q: Why flush again after commands execute?
// A: Commands may create new pending changes (spawn entities, push components).
//    Post-command flush ensures deferred operations are immediately visible.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it:)&lt;br&gt;
Let's call it FAQ-driven development xD and build something cool!:) &lt;/p&gt;

&lt;p&gt;Thank you so much for taking time to read:) Share what do you think in comments!/)&lt;/p&gt;

&lt;p&gt;Anton&lt;/p&gt;

</description>
      <category>ai</category>
      <category>promptengineering</category>
      <category>programming</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
