Blog

Building my site with AI

I built my website using AI. Not a site builder or a drag-and-drop interface, but actual HTML, CSS, JavaScript, and a custom WordPress theme, written and structured with the help of AI tools.

When I lost my job last year, I needed to pull together my portfolio quickly. I tried a bunch of tools like Squarespace for ease of use so I could just focus on my case studies, and Framer to build something modern with no-code tools, but I thought using AI would make for a more interesting experiment. At first I just used AI to help me generate some ideas using HTML, CSS and JS, but I knew I had to use a CMS and ended up using WordPress. I had not built a theme in a while and the last time was before the block editor was in use. This part was fairly easy, simple prompts in both ChatGPT and Claude gave me all the foundational templates I needed to start from. I was really impressed with the ease at which this could be done so I kept going.

I wrote a list of features I wanted my site to have based on ideas I had played around with before, and I used Claude, Perplexity and ChatGPT. None of them alone could output consistently enough to build what I wanted. At first things were really frustrating because I was prompting and making headway and then out of the blue the AIs would hallucinate or just forget everything and stop working sensibly. It drove me mad and I rediscovered what I consider as close to road rage as I had ever experienced, I would never speak to a human the way I furiously typed my distaste for the AIs messing things up.

There are limits to how much AI can output. There is also only so much you can do in a session before things start to collapse. Often AI forced me to take a time-out. I was making good progress and then out of nowhere it would break something that was working perfectly or introduce some random failure. One of the most infuriating behaviours is when it decides to delete huge chunks of code without telling you, entire features just vanish. You only notice much later when you are too far into a new flow to remember what was lost and that one flaw nearly broke me.

I still do a lot of the coding myself. I lean on AI to give me structure, clean things up, check my logic and handle the grunt work. But AI does not do the thinking. I still have to understand the problem, design the solution and make judgment calls. It is not a replacement for my own skills, it is a faster way to scaffold, clean up and iterate, but the mental heavy lifting still needs me.

But it was me who had to learn a valuable lesson. If nothing else let this be the ultimate takeaway from this article, you need to break up tasks like you would if you were building or designing something yourself. One thing at a time. AI cannot handle large prompts even well structured ones without dropping parts. I had to learn to break everything down. That does not mean I was not outraged again. No all the AIs were excellent at fixing one thing and breaking a few others and it got infuriating. I am certain my neighbours must have been terrified of me. I even took a trip to Bali while working on the site and I am sure that while I kept my composure in coffee shops my typing might have scared some of the nomads sipping on their coconuts in the co-working space. But I persisted and chipped away until I had something close to what I have now. I recently did an update aligned to my new branding. But here are some of the features of the site.

I went with a mobile-first approach and scaled up accordingly. WordPress adds some nuances I am still working through but mostly it works.

Snap to scroll and full width and height for content unless the content is longer than that area and then it allows natural scrolling. It is not perfect. Something I do not understand is making it not nearly as smooth as I would like.

The sections throughout the site change colour on scroll. Instead of having solid background blocks, each section smoothly fades from one shade to the next. It adds a more dynamic and polished feel to the scrolling experience.

I’m a huge performance nut, so I rely on CSS variables to reduce redundant code and system fonts to minimise load time. On Apple devices the site uses San Francisco fonts, which feel native and sharp. Android users also get a clean and legible experience thanks to optimised system fonts.

I also implement viewport-aware background images. These automatically adjust based on device size to maintain visual impact without wasting bandwidth. After a recent hosting migration I lost some of these image files, so I’m in the process of re-rendering and re-optimising them now.

The sections have bite-size amounts of information because lets be honest who reads. There is a bunch of scripts for time of day, day of the week, random case studies on the homepage etc.

I originally had different themes load based on time of day but now that I am introducing my brand colours I have only one theme with different colours based on the section you are in.

I am now spending more time refining the content for AI search results and it is challenging every day I learn something new and have to adjust.

I still add features but Ive learned to break them up. A big one I want to work on after all the recent bug fixes is animation. I had some but found it caused browser lag. I used js frameworks but they seem so bloated for me, so looking at an alternative approach.

I am also considering a new navigation which is still my typical floating on the top right on desktop and bottom on mobile I think there might be something fresher I could add. Feel free to share any new user friendly options you might have seen.

Working with AI is not easy. I’ve also tried Bolt, Lovable and a few others, as I’m constantly bombarded with builders, but honestly none of them offer the refinement I can get with just ChatGPT and similar tools when I keep things simple and focus on one task at a time.

A personal site is never truly finished. It grows as your skills grow. For me, building this version with AI wasn’t just a way to ship something fast. It pushed me in ways I never expected despite frustrating me so badly. But I have gotten used to this being the way I work now.

P.S. I am aware there are some bugs, I’ve recently changed servers and I’m updating the content on my site.

September Site Update

It’s been nearly two months since I started working on my new site, and there has been progress, although at times it feels really slow, like I’m going backwards. However, this week feels like there’s been some real progress.

I’ve been using mostly ChatGPT to assist me with coding my site. Perplexity and Claude have so many limitations, it’s become almost impossible to get anything done. o1 is clearly smarter but also reaches its preview limits pretty quickly.

I’ve added some subtle animations to the site. They’re really understated, but that’s exactly what I want. The animations are barely noticeable, which is how I believe animation should be used.

I’ve started adding a lot more content—now you’ll notice more images everywhere. Using compressed images has been a game-changer. I highly recommend using an online app like Squoosh and converting them to WebP. I’m reducing some images by 90% without any noticeable loss in quality.

The more images I add, the more layout issues I encounter. I’ve been adding different images for desktop and mobile, which involves a lot of extra work. I haven’t found a system for this yet, but since this is a personal project and a passion project, everything is custom.

This means a lot more work goes into creating each layout. I know the mobile layouts are a bit of a mess. I’m hoping most people view the site on desktop, but if they do check it on mobile, I hope they understand. The information is there—it’s just a little disorganised.

The work section still has a long way to go, and I’m adding one case study a day, so keep an eye out for major updates. The writing is mostly solid; I’m just adding more screens and figuring out the right layouts for mobile.

The lesson I’ve learned going forward—after being caught off guard with an outdated site when I lost my job—is to always keep my portfolio up to date, whether I’m employed or not. I’m committing to dedicating at least one weekend a month to keeping the portfolio sharp. You can’t let the work get stale. There’s always room for improvement, even if it’s just writing broader articles that expand on the work.

I still have a long way to go, but I believe I’m building something pretty great. Hopefully, you’ll start to see the love going into this site.

Using AI to Build My Site

If you’ve noticed things looking a bit off, that’s because I’m seeing how far I can push AI to build this site.

It started when I was fixing some bugs and got curious. AI’s pretty good at writing, so why not see if it can help build a site I couldn’t do on my own?

Here’s the deal: I come up with all the ideas. AI just executes what I tell it to do. It’s like having a senior engineer who can code faster than I can, but doesn’t think for itself. I’ve been trying out ChatGPT, Claude, and Perplexity for this.

It’s been interesting. AI can quickly turn my ideas into code, even for complex stuff I don’t know how to do myself. But man, the bugs. I’m constantly switching between tools because they all have different quirks and limitations.

The dream is to eventually use this to create cooler stuff for clients without needing a whole team. Right now though, it’s a bit of a mess. But that’s part of the experiment, right?

I’m not documenting every little thing, but I’m thinking about writing it all up or maybe doing a YouTube video once I’m done. Could be helpful for other designers who want to try this out.

It’s a bit of a wild ride, but I’m curious to see where it goes. AI is often pitched as the tool to come up with ideas for your site, but I’d urge you to use it as a high-level coding tool.

Portfolio Updates

I’ve started adding some updates to my Behance portfolio. I’ve never really done a good job of updating my Behance, always randomly throwing a few images up there but never writing a case study. I think this has admittedly been a weak point in my game, and it’s also my least favourite thing to do.

I like to build things, so I put more effort into building my site than adding my work. This is probably why I have no screenshots or videos of my projects. It doesn’t interest me. I like to be recognised and privately enjoy appreciation for my work, but I’m not attention-seeking. I shy away from the spotlight. I know I shouldn’t. It’s why I force myself to make YouTube videos. However, you only have to look at my Instagram to know I post photos of myself reluctantly.

I do need to share my work. For some unknown reason, interviewers really do want to see something before they’ll even have a conversation with me. That’s why I pulled a few projects together and will continue to add more over the next few days.

What I really need to do, though, is pull my portfolio together for my site. But I’m torn. Do I spend huge amounts of time doing that, or do I document my journey so far? I personally find that more interesting. I would think that’s why people would want to meet me. But apparently not.

I also want to focus on making videos for YouTube where I can share my wisdom. I’d rather people get something from me that’s useful and adds value. Then, if people are interested in chatting further, it’s easier as they know what I do.

I’d prefer to just create all day, but without some source of funding, I have to find work that pays and bend to others’ will despite what I think is a pretty impressive career. Until then, I have to keep pulling that portfolio together.

July 2024 Updates

I have been gradually working through some updates to my site now that I have restored an old version of my WordPress theme I built years ago, which served me so well. Here are a few of the things I have updated so far:

Colour Scheme

I have changed the colour scheme from dark grey and orange to dark grey and neon yellow. When you toggle, it means instead of the light version being light grey and orange, it’s now neon yellow with dark grey. It still needs a little love, but progress over perfection.

Work

I have decided to remove the work section from my site. I’m not sure how other people do it, but given the years I’ve been doing this and the type of work I do now, I don’t think adding all the projects my teams have been working on as my portfolio really counts. So, until I figure out the best way to present what I do, I would rather not have this page.

Font Size

I was aiming for a larger font size, almost over-sized, but it didn’t work across all displays. So, I have reduced the sizing where necessary. Hopefully, with a bit more tweaking, it will be just the right balance I’m going for.

Writing

Since I will not be showcasing work, I plan on writing about different experiences as a design leader. Hopefully, these articles will be well received and serve as a good reference for what I do, as well as educate aspiring leaders through my own experiences.

I am focused on creating content right now for LinkedIn and YouTube, as I would like to expand my network where people are, rather than trying to bring them to my site. While that’s likely the end goal, the way people consume content is different and the usefulness of the site is not what it used to be. Still, it’s fun tinkering with code, something I don’t get to do as part of my day job.

Check back soon for more updates and feel free to message me if you have any thoughts you’d like to share.

Reviving my sites design

I was fortunate to have discovered a backup of my sites theme and have mostly restored my site to the original look and feel I did a few years back. There are a few bugs and I’ll need to do some work on replacing images, fixing the dark mode javascript on mobile and of course get stuck into my portfolio.

Huge relief to have a theme I’ve built myself as I know how to edit it far better than I do other peoples themes.

Farewell Media Temple

For almost 20 years I hosted with one company who not only offered a superior hosting solution at an affordable price, but I happened to have won hosting for life through them too. In 2008 I won May 1 reboot and one of the prizes was Grid hosting. So I had not worried about hosting for nearly 2 decades.

Unfortunately for me, Media Temple sold to GoDaddy and they are not giving me hosting anymore. So I’ve lost my hosting of sites and email without any plan on what to do next.

I looked into self hosted platforms like SquareSpace and Framer. But these NoCode solutions seriously challenged me. So I’ve opted to use WordPress.com as I know I can rebuild my site on the platform I’ve been using for over a decade confidently.

So expect a new site soon. Until then, I will be attempting to write posts regardless. I lost all of my data when GoDaddy took my domain, so theres nearly 20 years of content to start again.

If you have been in the online industry as long as I have, you likely also aspired to flexing an (MT) logo on your site, or maybe it was just me. Anyway, I’ll miss the fine folks at MediaTemple, I really valued their service, which I’m now really missing.