← Go to devlog
Studio 8 Minuten Lesezeit

How AI Helped Build jessa.studio

Jessa Studio - Kompaktlogo

jessa.studio was the first project in which I used generative AI on an unusually large scale.

I had already been using such models as support in software development. In my professional environment, they assist with tasks such as code completion, testing and documentation. There, they are one tool among several. With this website, I wanted to find out how far this kind of collaboration could be taken across an entire project.

The result did not emerge from a single prompt. I did not enter a short description and receive a finished website in return.

It began with my own requirements: the site was meant to feel calm and personal, preserve my anonymity and provide space for different kinds of projects. It should not resemble a large company, nor should it look like a generic developer portfolio. These requirements formed the basis of the first draft.

That draft was a starting point for discussion, not a finished result.

From a General Idea to Concrete Decisions

At the beginning, many of my ideas were more like a direction than a precise specification. I knew how the website should feel, but I did not always know how each element should be implemented, either technically or visually.

This was where the support proved particularly useful. Questions helped make the requirements more precise. From there came suggestions for page structure, functionality and technical architecture. Mockups made abstract ideas visible before time was invested in their implementation.

Only then did the actual selection begin.

I accepted some suggestions, changed others and rejected several. The logo was chosen from multiple variants and later refined manually by me. Spacing, typography and page elements were adjusted repeatedly. The way I presented myself on the About page was also not a straightforward process.

A completely artificial portrait of an invented person did not feel right to me. At the same time, I did not want to publish an unaltered photograph of myself. The final illustration is therefore based on one of my own images, but it was stylistically modified and anonymised. Even that result only emerged after several rounds of correction.

The speed at which alternatives could be generated shortened the path between a rough idea and a concrete decision. The decision itself still had to be mine.

Different Roles in a One-Person Project

In a small personal project, tasks rarely remain neatly separated.

I was the client because I defined the goals and requirements. I was the developer because I had to assess, modify and take responsibility for the code. I made the design decisions and refined the result. I am also the editor of the content, even when I receive help with structure and phrasing.

A generative model can take on fragments of different roles within such a process. It can provide drafts, explain technical approaches, structure text or search for possible causes of errors. It does not, however, take responsibility for the outcome.

For that reason, I do not have complete applications generated and then use them without review. Generated code is read, assessed and modified where necessary. This also includes discarding suggestions that may appear technically plausible but do not fit the project.

My experience as a developer remains necessary. Without it, I would hardly be able to tell whether a solution is merely presented convincingly or is actually suitable.

Less Searching, Not Less Responsibility

Without this support, I probably would have started the website anyway. I would have created the theoretical concept and handled much of the programming myself.

The result would likely have remained considerably more static. Some sections would have been simplified because of limited time or unfamiliarity with certain systems. Other functions might not have been implemented at all.

The obstacle in projects like this is often not that the required knowledge is fundamentally inaccessible. It is distributed across documentation, forums, blog posts and videos. To answer a single concrete question, it may be necessary to search through numerous sources and first determine which of them are relevant to the actual problem.

A language model brings much of that access together in one place. I can ask a specific question, answer follow-up questions and adapt a proposed solution to my own situation. This saves a substantial part of the preliminary search.

That does not make documentation or other sources obsolete. Models can be wrong, rely on outdated information or fill gaps with assumptions that merely sound convincing. Important information still has to be checked. The main benefit is reaching a usable starting point more quickly.

For a project developed in my spare time, this difference matters. Time that would otherwise be spent searching for an entry point can instead be used to assess and implement a solution.

Context Does Not End with the Source Code

The limits of such models become particularly clear when a project did not begin recently or when important context exists outside the code.

In my professional environment, applications are developed for a manufacturing company. There, it is not enough for a function to work correctly in formal terms. Applications have to be reliable, fast, durable and usable under less-than-ideal conditions. Errors must be handled properly. Controls need to be easy to find on touchscreens. Workflows follow real production processes rather than general conventions for modern consumer interfaces.

A model only sees what it is explicitly given.

It does not automatically know the operational processes, earlier decisions, unusual edge cases or the habits of the people who use an application every day. Older projects also contain years of accumulated context that cannot be fully included in a single request.

This knowledge is part of human work. It does not exist entirely in the source code or in technical documentation. It develops through experience with actual working conditions.

That is why I consider the idea that a company could dismiss employees and then replace their work with a model to be fundamentally flawed. When people leave, knowledge disappears with them — knowledge that may never have been available to the model.

Anyone who sees AI only as a means of reducing staff misunderstands not only the human contribution, but also the actual strength of the technology.

Support Instead of Enforced Replacement

I see generative models as an addition to human work. They can accelerate individual tasks, provide alternatives and make knowledge more accessible. In doing so, they can enable people to realise projects for which they would otherwise lack time, money or specialised knowledge.

That does not mean their use is always appropriate.

When employees are pressured into using AI without a genuine benefit, it becomes just another imposed system. When companies mainly use the technology to reduce staff and lower costs, support turns into rationalisation. And when decisions are delegated to models even though no one can properly assess the results, responsibility is lost.

Technology is not independent of the intentions of the people and companies that develop and deploy it. The same foundations can be used to build useful tools, manipulative systems or poor automated decisions.

I am therefore less interested in the claim that AI will replace people. A more useful question is which tasks it can support, and under what conditions that support genuinely benefits the people doing the work.

A Problematic Foundation

The practical benefits do not resolve the question of how many present-day models were created.

They were trained on very large quantities of text, images, source code and other material. Some of this content was created by people who did not explicitly agree to their work being used in this way. Artists, developers, writers and other creative professionals often had no control over that use and received no form of participation or compensation.

For me, this cannot simply be dismissed by pointing out that the technology is useful.

At the same time, I do not believe it would be sensible to reject every possibility created by the technology for that reason alone. The more important questions are how training data should be acquired in the future, how transparent providers should be and how creators can retain control and receive appropriate compensation.

There is also the concentration of power among a small number of large providers. Their interests do not necessarily align with those of the people whose work contributed to the training data or whose working conditions are being changed by new business models.

I do not have a complete solution to this conflict. It remains present even when I use a model sensibly for a private project.

Why I Dislike the Term “AI”

I use the term “artificial intelligence” because it has become widely established. I do not find it particularly accurate.

The term quickly creates the impression of a system that thinks, understands or possesses a consciousness similar to that of a human being. That is not how I work with current models. To me, they are systems that generate text, images or other results based on learned patterns and make relationships between information more accessible.

They can produce remarkably useful results. That does not mean they understand a subject in the same way a person does.

I would prefer future development to focus less on the narrative of an artificial employee or an allegedly independent thinking entity. It would be more useful to improve the reliability of existing knowledge, present relationships more clearly, make sources easier to trace and reduce false information.

There is considerable potential in this, particularly in science and research. Research groups around the world often work in parallel on related problems. Findings are distributed across institutions, publications and incompatible systems. Tools that make this knowledge easier to combine and access could reduce unnecessary duplication and accelerate research.

That still requires reliable data, professional oversight and clear rules. A model alone does not solve these problems.

What This Means for jessa.studio

Without extensive support from generative models, the development of this website would have taken longer and would probably have remained simpler in several areas. I might have needed external help or postponed certain ideas once again.

The model did not take responsibility or make the important decisions for me. It shortened research, showed possible approaches and helped with implementation.

For me, that is the sensible use of such systems: not as a replacement for experience, judgement and human context, but as a tool that can give an individual more possibilities.


Note: This article was also created with the support of a language model. The content, positions and examples are my own. The model assisted with structure, wording and stylistic revision.

Conversation

0 comments

Comments are reviewed before publication. Be constructive and stay on topic.

Leave a comment

Your email address is used only for moderation and is never displayed.

At least 10 characters. A maximum of two links is allowed.