I rebuilt my portfolio website twice this year. Here's why.
Tags: webdev, career, portfolio
Published: 2020-12-16 16:39:00

I rebuilt my portfolio website twice this year.

I know how that sounds.

So why did I build my portfolio twice in one year when there are so many other things I could have been spending my time on?

There are a few reasons...

<hr />

This article was originally posted over on [danspratling.dev](https://danspratling.dev), where you can see more articles about my website, design and development process and other projects I've worked on.

<hr />

## Learning how to design

I often use my portfolio website to test out new ideas and concepts, and one of my biggest challenges this year was learning how to design.

And what better way than to redesign my own website?

Specifically, I was learning how to use [figma - an awesome cloud-based design tool](https://www.figma.com/)

Using Figma to design a full website from the ground up helped encourage good working practices like theming & componentization.

[![See the design I created for my new portfolio in Figma](https://www.datocms-assets.com/38195/1608024631-screenshot-2020-12-15-at-09-19-38.png)](https://www.figma.com/file/eVADlbqyz8cBAfqfo4eM1e/Portfolio-Design?node-id=0%3A1)

Could I have done a better job? Absolutely.

But I learned a lot

Understanding the core of how figma works will only make my design process faster in the future and allow me to practice more complex skills next time around 

And for a first attempt using figma, it turned out pretty well with the finished website clocking in at over 700 likes on Twitter
{% twitter 1335897887427923971 %}

## Learning new technologies

A portfolio is the perfect place to try out new technologies which are interesting. 

It's large enough to get really stuck into the new tool (or tools) but small enough to not be overwhelming or too complicated to understand what's going on.

I build my new portfolio using NextJS, TailwindCSS and DatoCMS and before starting the project 3 months ago I'd only used each of these a little.

![NextJS homepage](https://www.datocms-assets.com/38195/1608024664-screenshot2020-12-15at09-23-18.png)

Using my portfolio to practice new skills means I'm able to demonstrate my experience to clients with a real project to back that up so while I was never too worried about learning these tools, practising with a project which matters helps encourage me to understand each tool deeply as I care more about the results.

Skills which can then be passed on to my other work resulting in even higher quality builds. 

## Going Freelance

This was the primary reason I decided to rebuild my website from the ground up.

Going freelance meant a big change to my primary audience, where potential (and repeat) clients become the top priority for my website. My new website needed to show clients exactly what I'm capable of and make it easy for them to hire me. 

Fellow developers are still a core part of my audience, but they became my secondary audience.

And this change meant my old website was almost entirely useless for my new focus, so if I was ever going to rebuild now was the perfect chance.

Combine this with a need for a new design and a desire to learn new technologies and a rebuild was the obvious choice.

## When should you rebuild your website?

If technology has progressed a long way since your website was created and you haven't been actively maintaining it, it's worth considering a rebuild. A fresh start always feels great but it likely isn't always the right choice.

Benefits to rebuilding from scratch:

- You'll likely clear off your technical debt, making the solution far more manageable
- It's an opportunity to try out new things, especially on smaller non-consequential projects

Downsides to rebuilding from scratch:

- It's a lot of effort and very time-consuming!
- It's harder to test where problems have been solved when you start from scratch

[![Dan Spratling's new portfolio website](https://dev-to-uploads.s3.amazonaws.com/i/drjcvfjgdpxw6q36ge6b.png "See it for yourself")](https://danspratling.dev)

<hr />

If you need help rebuilding or maintaining your website, or deciding which option is best for you then [get in touch](https://danspratling.dev/contact)

If you'd like to keep up to date you should follow me on Twitter where you'll be the first to see my newest blog posts (and more).

<hr />