I started building a website without really knowing how the whole thing was supposed to work.
I knew what I wanted it to look like. I had ideas for the homepage, the sections, the directory, the posts, the media gallery, and the admin panel. I could describe the features pretty easily. Actually making all of that work was a different story.
The project was Zunheboto Social, a local website I wanted to build around Zunheboto. I initially started with Google AI Studio’s Build mode, mostly because it was much easier for me to explain what I wanted in plain language than to sit down and build everything from scratch.
That part was strangely satisfying. I could say what I wanted, see something appear, notice what was wrong, and ask for changes.
Then I had to actually run the thing. That was when I started finding out how much I did not know.
At one point, the project was basically a website that looked like a website, but getting it to behave like a proper website was another matter. I had to figure out hosting, databases, permissions, files, admin settings, and all the other things I had not really thought about when I started.
I moved the project around. I tried different setups. At one point it was on Render without a proper database setup. Later I moved it to CyberPanel and created a database there.
Then came Termius, SSH, folders, and permission errors.
I remember trying to access the website files and getting a permission denied error. That is one of those messages that is very clear about the problem while telling you absolutely nothing about what you should do next when you are still learning.
So I searched. Then I tried something. Then I searched again.
Eventually, I got the database connected. It was MariaDB, and the connection worked. The site initialized its tables and I finally had the feeling that I was getting somewhere. For a little while, everything seemed much more under control.
Then I found another problem.
I could delete an article or an image from the admin panel, refresh the page, and there it was again. I thought I had deleted it. Apparently, I had only convinced the website to pretend that I had.
There were similar problems elsewhere. I would change admin profile details, save them, and then find the old information back after refreshing. I would upload a profile photo and see it work, only for it to disappear later. The weather API could be saved, but then I would sometimes have to enter the key again before the weather worked.
The homepage builder had its own problems. I wanted to hide sections and rearrange things, but the changes would not always stick. I needed a proper save changes option, because what good is a settings page if the settings forget what I just told them?
These were not the kinds of problems I had imagined when I first started building the site. I also learned that what I saw in the AI Studio preview was not necessarily what I would see after deploying the actual project. That difference caused its own confusion. Something could look right in one place and behave differently somewhere else.
So I kept going back and forth. Look at the site. Notice something wrong. Search for the problem. Try a fix. Refresh. Break something else. Search again.
That became a big part of building the website.
At some point I stopped thinking of the process as one big project that I had to finish and started treating it as a series of small things I had to figure out.
Why isn’t this saving?
Where is this file?
Why does this come back after deletion?
Why did this setting reset?
Why does this work in the preview but not on the real site?
I didn’t know the answers beforehand. Sometimes I barely understood the question until I started looking for it.
There is something odd about learning this way. You can spend an hour fixing a problem that, once you finally understand it, turns out to have a very simple explanation. But that simple explanation was not obvious when you were staring at the error. And then there are the problems that you fix almost by accident. That happened too.
The website slowly became more real. The database worked. The admin panel started making sense. The logo and icon were there. The weather feature worked. The different sections of the site started coming together, and the directory started taking shape.
It still was not some clean process where I knew exactly what I was doing from the beginning. I was figuring it out while I was already inside it. That might actually be the part I find most interesting about building things. You don’t always begin with enough knowledge. Sometimes you begin with an idea, a rough picture of what you want, and the willingness to keep searching when the thing in front of you refuses to work.
I still don’t think I know exactly what I’m doing. But the next time something breaks, I at least have a better idea of where to start looking.

Leave a Reply