[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"post-security-by-design-not-at-the-end":3,"$fXeC77ibo_YuG-ZnFG3hwyaNC83zFAKw-FvBNoL2JrIM":19},{"slug":4,"title":5,"excerpt":6,"category":7,"author":8,"readingTime":9,"coverImage":10,"bodyHtml":11,"metaTitle":12,"metaDescription":13,"date":14,"modified":15,"translations":16},"security-by-design-not-at-the-end","Security by design: why a check at the end of a project arrives too late","A security audit a week before launch finds faults that can no longer be fixed cheaply. How threats get handled while they are still cheap.","Guides","MightCore","7 min",null,"\u003Cp>\u003Cstrong>A security flaw found during design costs a conversation. The same flaw found after launch costs a rewrite and a notification to customers.\u003C\u002Fstrong> The difference is not in the flaw, but in when it surfaced.\u003C\u002Fp>\n\u003Cp>The usual sequence runs like this: the project gets built, somebody orders an audit a week before launch, the audit finds authorisation is checked in the wrong place — and fixing it means touching half the application. The date is already running, so the finding is \"logged for later\". Later does not come.\u003C\u002Fp>\n\n\u003Ch2>What \"security by design\" means\u003C\u002Fh2>\n\u003Cp>Not more documents. One extra step before a feature is written: go through what could be abused, and turn each answer into a concrete requirement.\u003C\u002Fp>\n\u003Cp>For an ordinary application this fits into fifteen minutes, and the questions are always similar:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Who is allowed to do this?\u003C\u002Fstrong> And is it checked on the server, or is a button merely hidden?\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What if someone edits the ID in the URL?\u003C\u002Fstrong> Do they see somebody else's data, or get refused?\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What if they send a different amount than the one on screen?\u003C\u002Fstrong> Does the client's number decide, or does the server compute its own?\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What if they run it a thousand times a minute?\u003C\u002Fstrong> And what if they run it twice at once?\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What reaches the log?\u003C\u002Fstrong> Does a password, a token or full personal data end up in it?\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Ch2>A threat has to become a test\u003C\u002Fh2>\n\u003Cp>This is the difference between security by design and security in a slide deck. A measure that exists only as a sentence in a document disappears at the first refactor and nobody notices.\u003C\u002Fp>\n\u003Cp>So every answer should end in a test: a test that an unauthorised user is refused; a test that someone else's ID returns an error rather than data; a test that an amount sent by the client is ignored. When somebody removes that check by accident six months later, the build fails — not the customer.\u003C\u002Fp>\n\n\u003Ch2>Three things that fail most often in practice\u003C\u002Fh2>\n\u003Cp>They are not exotic attacks. They are three ordinary ones:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Authorisation at the wrong layer.\u003C\u002Fstrong> The interface hides a button while the endpoint stays open. Hiding something in the UI is not access control.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Trusting input from the client.\u003C\u002Fstrong> Price, discount, quantity or the sender's identity arrive from the browser and the server takes them at face value. Anything from a client is a proposal, not a fact.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Secrets and personal data in logs.\u003C\u002Fstrong> The whole request gets logged \"just in case\", token included. That log is then copied to places where the same rules do not apply.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Ch2>When NIS2 and GDPR are the reason\u003C\u002Fh2>\n\u003Cp>Some companies start caring about security because of regulation. That is a legitimate reason, and it overlaps technically with what is sensible anyway: knowing where which data sits, who can reach it, and keeping a record of what happened to it.\u003C\u002Fp>\n\u003Cp>What you will not get from us is an assessment of whether a particular obligation applies to you and to what extent. That belongs with your lawyer — we prepare the technical groundwork and the measures, not the legal reading.\u003C\u002Fp>\n\n\u003Ch2>An audit makes sense, just not as the first step\u003C\u002Fh2>\n\u003Cp>We do review finished solutions independently, and it is worth doing — when taking a system over from another supplier, ahead of a larger launch, or when the operator changes. We go through authentication, authorisation, input handling, dependencies and configuration, and you get findings ranked by real impact with a suggested fix.\u003C\u002Fp>\n\u003Cp>It is simply not a substitute for the first step. An audit tells you what is wrong. Security by design keeps the list short.\u003C\u002Fp>\n\n\u003Ch2>How we do it\u003C\u002Fh2>\n\u003Cp>We work through threats for every feature, endpoint and data model, and they become acceptance criteria that turn into tests. Data is encrypted in transit and at rest, access is granted by role, and sensitive operations are written to a separate audit trail that cannot be rewritten from inside the application.\u003C\u002Fp>\n\u003Cp>If you are taking over somebody else's system, or about to launch something where a leak would hurt, \u003Ca href=\"\u002Fcontact\">write to us\u003C\u002Fa>. More about this area is on our \u003Ca href=\"\u002Fservices\">services page\u003C\u002Fa>.\u003C\u002Fp>","Security by design in software: threats, measures and tests","Why a security review at the end of a project arrives too late, how threats are worked through during design, and what turns them into testable criteria.","2026-11-03T00:00:00.000Z","2026-10-20T04:47:54.853Z",{"sk":17,"cs":18},"bezpecnost-v-navrhu-nie-na-konci","bezpecnost-v-navrhu-ne-na-konci",[20,26,31,36,37,42,47,52,57,62,67,72,77,82,86,92,98,102,107,113,118,124,129,136,142,147,152,157,162,166,170,175,180,184,190,195,199,204,209,214,219,223,228,233,238,243,249,255,260,265,270,275,280,285,290,295,300,305,310,315,320,325,330,334,339,344],{"slug":21,"title":22,"excerpt":23,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":25},"do-you-really-need-a-mobile-app","A mobile app: when you really need one and when a website will do","An app in a store costs more than people expect — and often solves what a site that works properly on a phone already handles. How to tell before investing.","6 min","2026-11-24T00:00:00.000Z",{"slug":27,"title":28,"excerpt":29,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":30},"a-second-opinion-on-a-software-quote","A second opinion on a software quote: what to check before you sign","Development quotes are hard to compare — the numbers line up, the scope does not. What is missing most often, and the questions worth asking.","2026-11-17T00:00:00.000Z",{"slug":32,"title":33,"excerpt":34,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":35},"operations-and-support-after-launch","Operations and support: what happens to an application after you launch it","Launch is not the end of a project, it is the start of operations. On monitoring, backups, availability, and what a support agreement should actually contain.","2026-11-10T00:00:00.000Z",{"slug":4,"title":5,"excerpt":6,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":14},{"slug":38,"title":39,"excerpt":40,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":41},"data-warehouse-and-business-intelligence","Data warehouse and business intelligence: why two reports never agree","Sales reports one number, finance reports another, and both are \"right\". Where that gap comes from and what a data warehouse does about it.","2026-10-27T00:00:00.000Z",{"slug":43,"title":44,"excerpt":45,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":46},"digital-forms-that-save-the-work","Digital forms: when collecting data should not end in an inbox","A PDF to download, fill in, sign, scan and email. How to replace that loop with a form that sends the data straight where it belongs.","2026-10-20T00:00:00.000Z",{"slug":48,"title":49,"excerpt":50,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":51},"enterprise-and-software-architecture","Enterprise and software architecture: the value of a plan that is not code","Architecture is not a diagram for a slide deck. It is a decision about what will be cheap to change and what will be expensive — written down before the money goes in.","2026-10-13T00:00:00.000Z",{"slug":53,"title":54,"excerpt":55,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":56},"system-integrations-in-practice","System integrations: why data does not move between programs on its own","The shop, the warehouse, accounting and the CRM do not understand each other, and a person with a spreadsheet export stands in between. What an integration that lasts actually looks like.","2026-10-06T00:00:00.000Z",{"slug":58,"title":59,"excerpt":60,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":61},"cloud-or-your-own-server-for-ai","Cloud or your own server for AI: when each one pays off","Your own hardware looks cheaper until you count the work around it. What actually decides the question — and why it is not the price of the metal.","2026-09-22T00:00:00.000Z",{"slug":63,"title":64,"excerpt":65,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":66},"where-your-data-goes-with-ai-hosting","Where your data goes once you send it to an AI model","The important question about an AI application is not which model you use, but which data leaves your system. And what happens to it there.","2026-09-15T00:00:00.000Z",{"slug":68,"title":69,"excerpt":70,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":71},"what-running-an-ai-application-costs","What running an AI application costs, and why nobody knows up front","An AI bill grows with how much you ask the model, not with how many people use it. What the cost is made of and how to keep it in hand.","2026-09-08T00:00:00.000Z",{"slug":73,"title":74,"excerpt":75,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":76},"seo-in-the-age-of-ai-search","SEO in the age of AI search: data, llms.txt and answer-first","Classic SEO did not vanish, it expanded. How structured data, llms.txt and answer-first content decide visibility in search engines and in AI.","2026-07-18T00:00:00.000Z",{"slug":78,"title":79,"excerpt":80,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":81},"ai-agents-when-they-pay-off-and-when-not","AI agents: when they pay off and when they do not","An agent is not a guarantee of progress, just a system with more autonomy. When it fits, and how to deploy it without needless risk.","2026-07-08T00:00:00.000Z",{"slug":83,"title":84,"excerpt":85,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":81},"how-to-talk-to-a-language-model-prompting-in-practice","How to talk to a model: prompting without incantations","Prompt engineering is not a list of magic phrases. It is the ability to say exactly what you want — which is harder than it sounds.",{"slug":87,"title":88,"excerpt":89,"category":90,"author":8,"readingTime":24,"coverImage":10,"date":91},"website-and-software-audit","Website and software audit: an independent read while fixing is cheap","A slow site, holes and technical debt cost you money quietly — and in the age of AI search, visibility too. An audit names them, backs it with numbers and ranks by impact.","Services","2026-07-01T00:00:00.000Z",{"slug":93,"title":94,"excerpt":95,"category":96,"author":8,"readingTime":9,"coverImage":10,"date":97},"how-to-choose-a-language-model-and-control-costs","Choosing a language model and keeping costs under control","Benchmarks tell you almost nothing useful. What actually decides a model choice, and where the costs nobody predicted come from.","Engineering","2026-06-30T00:00:00.000Z",{"slug":99,"title":100,"excerpt":101,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":97},"how-to-get-into-chatgpt-and-perplexity-answers","How to get into ChatGPT and Perplexity answers (AEO\u002FGEO)","AI assistants increasingly replace classic search. How to prepare content so ChatGPT, Perplexity and Google AI Overviews cite you.",{"slug":103,"title":104,"excerpt":105,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":106},"ai-orchestrators-building-a-reliable-flow","AI orchestrators: building a reliable flow from models and tools","One prompt is fine for a demo, not for production. What an orchestrator does and when your company actually needs one.","2026-06-24T00:00:00.000Z",{"slug":108,"title":109,"excerpt":110,"category":111,"author":8,"readingTime":24,"coverImage":10,"date":112},"why-we-charge-for-value-not-hours","Why we charge for value, not hours","Billing by the hour rewards slowness and punishes experience. Here is why we look at what a solution brings the business, not what it cost us.","How we work","2026-06-17T00:00:00.000Z",{"slug":114,"title":115,"excerpt":116,"category":96,"author":8,"readingTime":117,"coverImage":10,"date":112},"programming-in-the-age-of-ai-what-actually-changed","Programming in the age of AI: what actually changed","No, it did not replace developers. But it changed where they spend their time — and not all of those changes are comfortable.","9 min",{"slug":119,"title":120,"excerpt":121,"category":122,"author":8,"readingTime":9,"coverImage":10,"date":123},"ai-model-for-your-brand-complete-guide","An AI model for your brand: the complete guide","From brief through avatar creation to the first campaign — step by step.","AI UGC","2026-06-16T00:00:00.000Z",{"slug":125,"title":126,"excerpt":127,"category":90,"author":8,"readingTime":24,"coverImage":10,"date":128},"ai-integrations-for-business","AI integrations for business: where AI truly saves, and where it is pointless","AI is not a magic dust. We show where it genuinely helps in business processes and how to deploy it without risk.","2026-06-03T00:00:00.000Z",{"slug":130,"title":131,"excerpt":132,"category":133,"author":8,"readingTime":134,"coverImage":10,"date":135},"case-study-cleago","Case study: Cleago — a platform built on context","How we designed and built a solution for Cleago (www.cleago.sk) by first understanding the context and only then coding.","Case studies","5 min","2026-06-02T00:00:00.000Z",{"slug":137,"title":138,"excerpt":139,"category":140,"author":8,"readingTime":24,"coverImage":10,"date":141},"where-not-to-use-ai-and-why-nobody-tells-you","Where not to use AI (and why nobody tells you)","A company selling AI has little incentive to talk about its limits. Let us fix that — these are the places AI simply does not belong.","For business","2026-05-27T00:00:00.000Z",{"slug":143,"title":144,"excerpt":145,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":146},"application-review-and-audit","Application review and audit: an independent look at your software","What works, what is a risk and what will be expensive. What an independent application audit looks like and what you actually get from it.","2026-05-26T00:00:00.000Z",{"slug":148,"title":149,"excerpt":150,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":151},"how-to-choose-an-llm-for-your-company","How to choose a language model (LLM) for your company","Asking which model is best is the wrong question. What to actually decide on — quality, cost, latency, privacy.","2026-05-20T00:00:00.000Z",{"slug":153,"title":154,"excerpt":155,"category":111,"author":8,"readingTime":156,"coverImage":10,"date":151},"how-to-spot-a-good-software-vendor-and-the-red-flags","How to spot a good software vendor (and the red flags)","You spot a good vendor by what they do before the contract is signed, not by their portfolio. Here are the signs of trust and the warning signs.","8 min",{"slug":158,"title":159,"excerpt":160,"category":122,"author":8,"readingTime":134,"coverImage":10,"date":161},"ai-model-consistent-brand-across-campaigns","A consistent brand with an AI model across campaigns","An AI model can be a brand's steady face — if you handle consistency and transparency the right way. Here is how.","2026-05-19T00:00:00.000Z",{"slug":163,"title":164,"excerpt":165,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":161},"hosting-ai-applications","Hosting AI applications: running models, APIs and data safely","Model, API and data in one secure place. What reliable hosting of AI applications involves and how not to get a shocking model-call bill.",{"slug":167,"title":168,"excerpt":169,"category":133,"author":8,"readingTime":134,"coverImage":10,"date":161},"case-study-product-photos","Case study: 80% less time spent creating product photos","A real example of deploying AI photos in an online store — from brief to results.",{"slug":171,"title":172,"excerpt":173,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":174},"ai-mentoring-for-companies","AI mentoring for companies: teaching a team to actually use AI","Buying an AI tool does not change a team. What practical AI mentoring looks like, where AI helps and where it is just needless complication.","2026-05-12T00:00:00.000Z",{"slug":176,"title":177,"excerpt":178,"category":90,"author":8,"readingTime":24,"coverImage":10,"date":179},"internal-tools-automation","Internal tools and automation: stop paying for manual work","How many hours a month do you retype data between systems? An internal tool does it for you — and pays for itself.","2026-05-06T00:00:00.000Z",{"slug":181,"title":182,"excerpt":183,"category":140,"author":8,"readingTime":156,"coverImage":10,"date":179},"where-ai-actually-fits-in-a-company","Where AI actually fits in a company (and where it is just flashy)","Concrete applications across departments — what works today, what needs preparation, and what is still a demo rather than a tool.",{"slug":185,"title":186,"excerpt":187,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":189},"rest-vs-graphql-for-online-stores","REST vs. GraphQL API for modern online stores","When to choose which approach and what the impact on performance and development is.","Development","2026-04-21T00:00:00.000Z",{"slug":191,"title":192,"excerpt":193,"category":111,"author":8,"readingTime":9,"coverImage":10,"date":194},"fixed-price-or-hourly-which-is-better-for-the-client","Fixed price or hourly: which is better for the client","A fixed price moves the risk to the vendor, hourly moves it to the client. Here is when each fits — and why neither is always the right one.","2026-04-15T00:00:00.000Z",{"slug":196,"title":197,"excerpt":198,"category":140,"author":8,"readingTime":117,"coverImage":10,"date":194},"how-to-bring-ai-into-your-company-first-steps","How to bring AI into your company without wasting the money","Most AI projects do not fail on technology. They fail because nobody said what was supposed to get better. Where to start instead.",{"slug":200,"title":201,"excerpt":202,"category":133,"author":8,"readingTime":24,"coverImage":10,"date":203},"case-study-monolith-to-modular-migration","Case study: from a monolith to a modular architecture with no downtime","An illustrative example of gradually modernising an older application — where every change was risky and maintenance expensive.","2026-04-14T00:00:00.000Z",{"slug":205,"title":206,"excerpt":207,"category":90,"author":8,"readingTime":24,"coverImage":10,"date":208},"custom-e-commerce","Custom e-commerce: when the template starts throttling your sales","A rented template gets you going, then holds you back. When a custom e-shop pays off and how it lifts conversion.","2026-04-08T00:00:00.000Z",{"slug":210,"title":211,"excerpt":212,"category":7,"author":8,"readingTime":156,"coverImage":10,"date":213},"ai-agents-and-tool-calling-when-it-makes-sense","AI agents and tool calling: when it makes sense and when it does not","An agent is a model allowed to act. That is interesting and dangerous in equal measure. How it works, and where to be careful.","2026-03-25T00:00:00.000Z",{"slug":215,"title":216,"excerpt":217,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":218},"context-driven-development-context-gathering-in-practice","Context Driven Development in practice: how gathering context changes the outcome","The most expensive mistakes come from a misunderstood brief. Here is what the context gathering that prevents them looks like.","2026-03-17T00:00:00.000Z",{"slug":220,"title":221,"excerpt":222,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":218},"when-an-application-audit-pays-off","When it pays to have your application reviewed — and what an audit actually gives you","You have software that runs, but you are not sure of its state? When an independent audit makes sense and what its output looks like.",{"slug":224,"title":225,"excerpt":226,"category":90,"author":8,"readingTime":24,"coverImage":10,"date":227},"custom-web-applications","Custom web apps: when off-the-shelf stops being enough","Boxed tools will limit you sooner or later. When a custom web app pays off — and how we ship one in weeks.","2026-03-12T00:00:00.000Z",{"slug":229,"title":230,"excerpt":231,"category":111,"author":8,"readingTime":24,"coverImage":10,"date":232},"what-happens-in-a-first-software-consultation","What happens in a first consultation, and what you take away","A first consultation is not a sales call. It is an hour spent understanding your problem — and you often leave with a clearer view, even if we never start.","2026-03-11T00:00:00.000Z",{"slug":234,"title":235,"excerpt":236,"category":7,"author":8,"readingTime":117,"coverImage":10,"date":237},"how-to-orchestrate-language-models-in-practice","Orchestrating language models: from one prompt to a system","One prompt is a demo. An application is something else. On splitting work, routing between models, and where to leave ordinary code alone.","2026-03-04T00:00:00.000Z",{"slug":239,"title":240,"excerpt":241,"category":7,"author":8,"readingTime":134,"coverImage":10,"date":242},"digitalising-accounting-e-invoicing","Digitalising accounting: e-invoicing and what it brings","Electronic invoicing and reporting are becoming the standard. What it means for businesses and how to prepare without panic.","2026-02-17T00:00:00.000Z",{"slug":244,"title":245,"excerpt":246,"category":247,"author":8,"readingTime":156,"coverImage":10,"date":248},"what-is-an-llm-large-language-model-explained","What an LLM is: large language models without the mystique","How does a program that predicts the next word end up writing working code? A look at what actually happens inside a language model.","Fundamentals","2026-02-11T00:00:00.000Z",{"slug":250,"title":251,"excerpt":252,"category":253,"author":8,"readingTime":134,"coverImage":10,"date":254},"how-ai-cuts-video-production-costs","How AI cuts the cost of video content production","Concrete numbers and a workflow for creating AI videos for online stores.","Marketing","2026-02-10T00:00:00.000Z",{"slug":256,"title":257,"excerpt":258,"category":111,"author":8,"readingTime":9,"coverImage":10,"date":259},"why-context-comes-before-code","Why context comes before code","Most software does not fail on the code; it fails because the wrong thing got built. Here is why everything we do starts with understanding the context.","2026-02-04T00:00:00.000Z",{"slug":261,"title":262,"excerpt":263,"category":247,"author":8,"readingTime":9,"coverImage":10,"date":264},"what-is-artificial-intelligence-explained-without-the-marketing","What artificial intelligence is (and what it is not)","The word AI now means everything, and therefore nothing. Here is what is actually behind it, and where technology ends and marketing begins.","2026-01-21T00:00:00.000Z",{"slug":266,"title":267,"excerpt":268,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":269},"vector-databases-and-embeddings","Vector databases and embeddings: how machines grasp meaning","Semantic search sits behind many AI features. Here is what embeddings are and why modern data work rests on them.","2026-01-20T00:00:00.000Z",{"slug":271,"title":272,"excerpt":273,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":274},"ai-development-trends-2026","Trends in AI development for 2026","What awaits companies in the area of AI agents, automation and infrastructure.","2026-01-14T00:00:00.000Z",{"slug":276,"title":277,"excerpt":278,"category":133,"author":8,"readingTime":134,"coverImage":10,"date":279},"case-study-ai-product-photography-cosmetics","Case study: AI product photography for a cosmetics e-shop","An illustrative example of how AI content replaced repeated photoshoots and brought a consistent visual identity across seasons.","2025-12-09T00:00:00.000Z",{"slug":281,"title":282,"excerpt":283,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":284},"integrating-ai-into-existing-systems","How to integrate AI into existing systems without a rewrite","You do not have to throw away working software to use AI. Here is an approach that adds value step by step, with low risk.","2025-11-18T00:00:00.000Z",{"slug":286,"title":287,"excerpt":288,"category":7,"author":8,"readingTime":9,"coverImage":10,"date":289},"gdpr-and-ai-content","GDPR and AI content: what to watch out for","The legal minimum for companies working with AI content and personal data.","2025-11-11T00:00:00.000Z",{"slug":291,"title":292,"excerpt":293,"category":122,"author":8,"readingTime":24,"coverImage":10,"date":294},"virtual-ai-models","Virtual AI models: the future of advertising or a passing trend?","The possibilities, limits and ethics of virtual influencers for brands.","2025-10-20T00:00:00.000Z",{"slug":296,"title":297,"excerpt":298,"category":122,"author":8,"readingTime":134,"coverImage":10,"date":299},"ai-ugc-in-performance-marketing","AI UGC: content creation at scale, fast and cheap","How to produce dozens of content variants with AI at a fraction of the time and cost. You run the marketing — we make the content you deploy.","2025-10-14T00:00:00.000Z",{"slug":301,"title":302,"excerpt":303,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":304},"llm-hallucinations-how-to-limit-them","LLM hallucinations and how to limit them in practice","Why AI sometimes states nonsense with confidence, and the techniques we use to keep output trustworthy.","2025-09-16T00:00:00.000Z",{"slug":306,"title":307,"excerpt":308,"category":122,"author":8,"readingTime":134,"coverImage":10,"date":309},"what-is-ai-ugc","What AI UGC is and why the whole world is talking about it","An introduction to AI-generated UGC and its impact on advertising and customer trust.","2025-09-15T00:00:00.000Z",{"slug":311,"title":312,"excerpt":313,"category":133,"author":8,"readingTime":24,"coverImage":10,"date":314},"case-study-b2b-eshop-faster-delivery","Case study: a B2B e-shop ready in weeks, not months","An illustrative example of how context gathering and AI execution shortened a wholesale e-shop build — without cutting quality.","2025-08-19T00:00:00.000Z",{"slug":316,"title":317,"excerpt":318,"category":253,"author":8,"readingTime":134,"coverImage":10,"date":319},"ai-in-marketing-from-experiment-to-results","AI in marketing: from experiment to real results","How to move from \"playing with AI\" to a measurable return on investment.","2025-08-06T00:00:00.000Z",{"slug":321,"title":322,"excerpt":323,"category":7,"author":8,"readingTime":134,"coverImage":10,"date":324},"ai-invoice-processing-in-accounting","AI invoice processing: from scan to posting","Intelligent document processing cuts the routine of retyping invoices. How it works and where AI has its limits.","2025-07-15T00:00:00.000Z",{"slug":326,"title":327,"excerpt":328,"category":7,"author":8,"readingTime":24,"coverImage":10,"date":329},"rag-why-context-decides-ai-quality","RAG: why context decides the quality of AI output","Retrieval-Augmented Generation connects a language model to your own data. Here is how it works and when to use it.","2025-06-18T00:00:00.000Z",{"slug":331,"title":332,"excerpt":333,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":329},"shopsys-vs-custom-build","ShopSys vs. a custom build: when a framework pays off","A decision framework for e-shop owners facing the choice of platform.",{"slug":335,"title":336,"excerpt":337,"category":253,"author":8,"readingTime":134,"coverImage":10,"date":338},"how-ai-is-changing-e-commerce","How AI is changing e-commerce","Practical examples of AI in product content, search and personalisation for online stores.","2025-05-21T00:00:00.000Z",{"slug":340,"title":341,"excerpt":342,"category":188,"author":8,"readingTime":9,"coverImage":10,"date":343},"context-driven-development-a-new-approach","Context Driven Development: a new approach to building software","An explanation of the CDD methodology from gathering context to deployment — step by step.","2025-04-09T00:00:00.000Z",{"slug":345,"title":346,"excerpt":347,"category":188,"author":8,"readingTime":24,"coverImage":10,"date":348},"why-overpriced-software-development-is-over","Why the era of overpriced software development is over","How AI and a context-driven approach are changing the economics of building software — and why paying for inflated hours no longer makes sense.","2025-03-12T00:00:00.000Z"]