{"id":5245,"date":"2025-10-20T11:31:45","date_gmt":"2025-10-20T09:31:45","guid":{"rendered":"https:\/\/www.sykorait.com\/?p=5245"},"modified":"2026-03-19T13:23:07","modified_gmt":"2026-03-19T12:23:07","slug":"ai-vibe-coding","status":"publish","type":"post","link":"https:\/\/www.sykorait.com\/de\/ai-vibe-coding\/","title":{"rendered":"AI Vibe Coding"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"5245\" class=\"elementor elementor-5245\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-55dc2ad e-flex e-con-boxed e-con e-parent\" data-id=\"55dc2ad\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ad9c501 e-flex e-con-boxed e-con e-child\" data-id=\"ad9c501\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-24f0cbb elementor-widget elementor-widget-heading\" data-id=\"24f0cbb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">AI Vibe Coding<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-29f03c5 e-flex e-con-boxed e-con e-parent\" data-id=\"29f03c5\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b0d4a51 elementor-widget elementor-widget-post-info\" data-id=\"b0d4a51\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"post-info.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-inline-items elementor-icon-list-items elementor-post-info\">\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-repeater-item-117b676 elementor-inline-item\" itemprop=\"datePublished\">\n\t\t\t\t\t\t<a href=\"https:\/\/www.sykorait.com\/de\/2025\/10\/20\/\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-calendar\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm436-44v-36c0-26.5-21.5-48-48-48h-48V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H160V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H48C21.5 64 0 85.5 0 112v36c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text elementor-post-info__item elementor-post-info__item--type-date\">\n\t\t\t\t\t\t\t\t\t\t<time>Oktober 20, 2025<\/time>\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t<\/li>\n\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0dc8832 e-grid e-con-full e-con e-child\" data-id=\"0dc8832\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-2fc6a92 e-con-full e-flex e-con e-child\" data-id=\"2fc6a92\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8542925 elementor-widget elementor-widget-text-editor\" data-id=\"8542925\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-renderer-start-pos=\"1\">At our company, we\u2019ve been experimenting with this style of development. I&nbsp;wanted to share my own experience \u2014 where it works well, where it struggles.<\/p><p data-renderer-start-pos=\"154\">When vibe coding works, it feels almost magical: the AI knows the project context, touches the right files, and can draft new code pretty quickly. For small things \u2014 internal scripts, simple web pages, profiles, or lightweight automations \u2014 it\u2019s perfect. I\u2019ve used it, for example, to prototype an idea for a&nbsp;customer demo much faster than writing everything by hand.<\/p><p data-renderer-start-pos=\"523\">But there are trade-offs. The AI tends to \u201creach wide\u201d into the codebase. Sometimes it touches files you didn\u2019t ask it to, or even rewrites working code. Even if you explicitly say <em data-renderer-mark=\"true\">don\u2019t touch module X<\/em>, it sometimes does. That means you absolutely need to review every change step by step. Breaking things silently is still too easy.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2d4660b elementor-widget elementor-widget-image\" data-id=\"2d4660b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"768\" height=\"512\" src=\"https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-768x512.jpg\" class=\"attachment-medium_large size-medium_large wp-image-6537\" alt=\"AI vibe coding\" srcset=\"https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-768x512.jpg 768w, https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-300x200.jpg 300w, https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-1024x683.jpg 1024w, https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-1536x1024.jpg 1536w, https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-20-at-11.30.16-scaled-1-2048x1366.jpg 2048w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f217f3e e-con-full e-flex e-con e-child\" data-id=\"f217f3e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-da74c5f e-flex e-con-boxed e-con e-parent\" data-id=\"da74c5f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-a9faa46 e-grid e-con-full e-con e-child\" data-id=\"a9faa46\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-471ca35 e-con-full e-flex e-con e-child\" data-id=\"471ca35\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5cabad6 elementor-widget elementor-widget-heading\" data-id=\"5cabad6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">When it Works ?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3133f85 elementor-widget elementor-widget-text-editor\" data-id=\"3133f85\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-renderer-start-pos=\"873\">AI understands the project context, suggests the right diffs, and gets something running in minutes. For small projects \u2014 internal scripts, simple pages, lightweight automations \u2014 it\u2019s a&nbsp;huge time-saver.<\/p><p data-renderer-start-pos=\"1078\">I\u2019ve even prototyped customer demos in under an hour \u2014 something far beyond what a&nbsp;static mockup could show. That\u2019s where AI shines: breadth over depth, pulling from public patterns to scaffold working code fast.<\/p><p data-renderer-start-pos=\"1292\">For me, the sweet spots are:<\/p><ul class=\"ak-ul\" data-indent-level=\"1\"><li><p data-renderer-start-pos=\"1324\"><strong data-renderer-mark=\"true\">Prototyping<\/strong>: quickly turning ideas into live demos.<\/p><\/li><li><p data-renderer-start-pos=\"1379\"><strong data-renderer-mark=\"true\">Internal tools<\/strong>: e.g. simple registration apps for Teams events.<\/p><\/li><li><p data-renderer-start-pos=\"1446\"><strong data-renderer-mark=\"true\">Small modules<\/strong>: scoped changes you can review in minutes.<\/p><\/li><\/ul><p data-renderer-start-pos=\"1506\">Breaking work into small, modular tasks helps a&nbsp;lot. Ask the AI for a&nbsp;massive feature in one go, and you often end up with spaghetti or unexpected edits across the repo.<\/p><h3>Where It Struggles ?<\/h3><p data-renderer-start-pos=\"1697\">The magic fades on depth. Niche, company-specific logic \u2014 like compliance tweaks in Forge apps \u2014 often trips AI up. Other challenges include:<\/p><ul class=\"ak-ul\" data-indent-level=\"1\"><li><p data-renderer-start-pos=\"1842\"><strong data-renderer-mark=\"true\">Production apps<\/strong>: Debugging is painful if AI spreads changes across backend, frontend, and DB layers. Without clear logs, subtle bugs hide easily.<\/p><\/li><li><p data-renderer-start-pos=\"1991\"><strong data-renderer-mark=\"true\">Team workflows<\/strong>: Multiple devs \u201cjust vibing\u201d without coordination quickly creates merge conflicts and regressions.<\/p><ul class=\"ak-ul\" data-indent-level=\"2\"><li><p data-renderer-start-pos=\"2108\">AI often duplicates logic, reshuffles project structure, or introduces technical debt. If a&nbsp;whole team blindly accepts AI output, codebases can become messy fast.<\/p><\/li><\/ul><\/li><li><p data-renderer-start-pos=\"2276\"><strong data-renderer-mark=\"true\">Overreach<\/strong>: Even when instructed not to touch certain modules, AI sometimes does. Step-by-step review is non-negotiable.<\/p><\/li><li><p data-renderer-start-pos=\"2399\"><strong data-renderer-mark=\"true\">Package\/version issues<\/strong>: AI may suggest libraries with outdated versions or known vulnerabilities, creating hidden supply-chain risks.<\/p><\/li><li><p data-renderer-start-pos=\"2536\"><strong data-renderer-mark=\"true\">Legal\/IP concerns<\/strong>: AI code can be derived from copyrighted sources; laws and case law are still evolving, meaning you could face claims or licensing complications.<\/p><\/li><li><p data-renderer-start-pos=\"2703\"><strong data-renderer-mark=\"true\">Security risks<\/strong>: Auto-suggested dependencies may introduce CVEs or insecure versions, degrading your overall supply-chain security posture.<\/p><\/li><\/ul><h3 id=\"Tools-I\u2019ve-Tried\" data-renderer-start-pos=\"2845\">Tools I\u2019ve Tried<\/h3><ul class=\"ak-ul\" data-indent-level=\"1\"><li><p data-renderer-start-pos=\"2865\">Windsurf \u2013 Great developer experience, understands project context, and works well for modular tasks. <strong data-renderer-mark=\"true\">But you still need to know what you want<\/strong> and structure the work into smaller steps. Large features at once often lead to messy results.<\/p><\/li><li><p data-renderer-start-pos=\"3106\">Rovo Dev Agents (beta) - <strong data-renderer-mark=\"true\">AI Coding tool <\/strong>- in practice, it didn\u2019t yet feel very Atlassian-specific \u2014 more like another AI coding assistant, though with interesting potential inside Atlassian environments (Rovo agents \u2192 automation).<\/p><\/li><\/ul><h3 id=\"Tools-I\u2019ve-Tried\" data-renderer-start-pos=\"2845\">My Bottom Line<\/h3><p data-renderer-start-pos=\"3357\">Vibe coding is like working with a&nbsp;sharp but unpredictable intern: brilliant ideas, questionable follow-through.<\/p><ul class=\"ak-ul\" data-indent-level=\"1\"><li><p data-renderer-start-pos=\"3473\"><strong data-renderer-mark=\"true\">Yes, use it<\/strong> for prototypes, internal tools, and small changes.<\/p><\/li><li><p data-renderer-start-pos=\"3539\"><strong data-renderer-mark=\"true\">No, not blindly in production. Only in a&nbsp;limited way and with strict controls <\/strong>(as it might lead to legal uncertainty, supply-chain risks, security, and long-term maintainability concerns). For complex apps, AI should support \u2014 not replace \u2014 human design, testing, and reviews.<\/p><\/li><\/ul><p data-renderer-start-pos=\"3820\">Done right, it can speed you up 2x. Done wrong, it leaves you with regressions, technical debt, and legal uncertainty.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c581251 e-flex e-con-boxed e-con e-parent\" data-id=\"c581251\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c3ab441 elementor-widget elementor-widget-heading\" data-id=\"c3ab441\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Key Contacts:<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-07155a0 e-con-full e-flex e-con e-child\" data-id=\"07155a0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5e6df93 elementor-author-box--avatar-yes elementor-author-box--name-yes elementor-author-box--biography-yes elementor-author-box--link-no elementor-widget elementor-widget-author-box\" data-id=\"5e6df93\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"author-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-author-box\">\n\t\t\t\t\t\t\t<div  class=\"elementor-author-box__avatar\">\n\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/3afe817ed8f28ca7367d4658390c42a6f2f854b1ff94204e4b016a9a48c046ee?s=300&#038;d=mm&#038;r=g\" alt=\"Bild von Matej \u0160trba\" loading=\"lazy\">\n\t\t\t\t<\/div>\n\t\t\t\n\t\t\t<div class=\"elementor-author-box__text\">\n\t\t\t\t\t\t\t\t\t<div >\n\t\t\t\t\t\t<h4 class=\"elementor-author-box__name\">\n\t\t\t\t\t\t\tMatej \u0160trba\t\t\t\t\t\t<\/h4>\n\t\t\t\t\t<\/div>\n\t\t\t\t\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-author-box__bio\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2d806ae elementor-widget elementor-widget-author-box\" data-id=\"2d806ae\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"author-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-author-box\">\n\t\t\t\t\t\t\t<div  class=\"elementor-author-box__avatar\">\n\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.sykorait.com\/wp-content\/uploads\/2025\/10\/Navrh-bez-nazvu-3-300x300.jpg\" alt=\"Bild von Martin Fischer\" loading=\"lazy\">\n\t\t\t\t<\/div>\n\t\t\t\n\t\t\t<div class=\"elementor-author-box__text\">\n\t\t\t\t\t\t\t\t\t<div >\n\t\t\t\t\t\t<h4 class=\"elementor-author-box__name\">\n\t\t\t\t\t\t\tMartin Fischer\t\t\t\t\t\t<\/h4>\n\t\t\t\t\t<\/div>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>At our company, we\u2019ve been experimenting with this style of development. I&nbsp;wanted to share my own experience \u2014 where it works well, where it struggles. When vibe coding works, it feels almost magical: the AI knows the project context, touches the right files, and can draft new code pretty quickly. For small things \u2014 internal [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":6535,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34],"tags":[],"class_list":["post-5245","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sykorait-blog"],"_links":{"self":[{"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/posts\/5245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/comments?post=5245"}],"version-history":[{"count":19,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/posts\/5245\/revisions"}],"predecessor-version":[{"id":6540,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/posts\/5245\/revisions\/6540"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/media\/6535"}],"wp:attachment":[{"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/media?parent=5245"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/categories?post=5245"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sykorait.com\/de\/wp-json\/wp\/v2\/tags?post=5245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}