After nine months of learning and building projects, I’m finally creating a portfolio website.
This is different from other projects because it’s not just about code it’s about presenting myself and my work.
Why I Need a Portfolio
To show my work: GitHub is great, but a portfolio lets me present projects in a more polished way.
To practice design: I want to improve my design and CSS skills.
For job applications: When I start applying for jobs, I’ll need a place to showcase my work.
To reflect on progress: Building a portfolio is making me realize how much I’ve learned.
What I’m Including
About section: Who I am, what I’m learning, what I’m interested in.
Projects: My best projects with descriptions, technologies used, and links to code/demos.
Skills: Technologies I’m comfortable with.
Contact: How to reach me.
I’m keeping it simple. I’ve seen portfolios that are too complex and overwhelming.
Design Decisions
Simple and clean: I’m not a designer, so I’m focusing on clarity over complexity.
Mobile-first: I’m designing for mobile first, then adding styles for larger screens.
Fast loading: No heavy images or animations. Just clean, fast HTML and CSS.
Accessible: I’m trying to make it accessible with semantic HTML, good contrast, and keyboard navigation.
Dark mode: I’m adding a dark mode toggle because I like dark mode and it’s fun to implement.
Technical Choices
Plain HTML, CSS, JavaScript: No framework. I want to show I understand the fundamentals.
Responsive design: Using CSS Grid and Flexbox for layouts that work on all screen sizes.
Semantic HTML: Using proper HTML5 elements for better accessibility and SEO.
CSS custom properties: For colors and spacing, making it easy to maintain.
Vanilla JavaScript: For the dark mode toggle and smooth scrolling.
Challenges I’m Facing
Choosing projects to showcase: I’ve built dozens of projects, but most are learning exercises. I have to choose the ones that actually demonstrate skills.
Writing about myself: Describing my skills and experience is harder than I expected. I’m still learning, so what do I say?
Design: Making it look good is challenging. I’m a developer, not a designer.
Content: What to include? What to leave out? How much detail?
Perfectionism: I keep tweaking things instead of shipping. I have to force myself to publish.
What I’m Learning
Content matters more than design: A simple site with good content is better than a fancy site with weak content.
Show, don’t tell: Instead of saying “I know React,” show a project built with React.
Keep it simple: I’m trying to add animations and fancy effects, but simple looks better.
Mobile-first is easier: Designing for mobile first, then adding desktop styles, is easier than the reverse.
Accessibility is important: Using semantic HTML and good contrast makes the site better for everyone.
Mistakes I’m Making
Overthinking the design: I’m spending too much time on design instead of just shipping.
Too much text: My first version has way too much text. I’m cutting it down significantly.
Trying to be perfect: I keep finding things to improve. At some point, I have to just publish.
Not getting feedback: I should show it to others before publishing.
What I’m Proud Of
It’s live: I’m actually finishing and publishing it.
It’s responsive: Works well on mobile, tablet, and desktop.
It’s fast: Loads quickly with no unnecessary bloat.
It represents me: It’s simple and focused, which reflects how I approach development.
What I’ll Improve
Add more projects: As I build more, I’ll add them.
Better project descriptions: I need to explain the problems I solved, not just the technologies I used.
Blog section: I want to add a blog to share what I’m learning.
Better images: My project screenshots could be better.
Testimonials: If I do freelance work, I’ll add client testimonials.
Advice for Building Your Portfolio
Start simple: Don’t try to build the perfect portfolio. Build something simple and improve it over time.
Focus on projects: Your work matters more than fancy design.
Show your best work: Quality over quantity. 3 good projects are better than 10 mediocre ones.
Explain your projects: Don’t just list technologies. Explain what problem you solved and how.
Make it personal: Your portfolio should reflect who you are.
Get feedback: Show it to others and ask for honest feedback.
Ship it: Don’t wait for perfection. Publish and improve over time.
What’s Next
Now that I have a portfolio, I want to:
- Add more projects as I build them
- Improve the design based on feedback
- Add a blog section
- Maybe add animations (subtle ones)
- Keep it updated as I learn new skills
Reflections
Building a portfolio is different from other projects because it’s forcing me to:
- Reflect on what I’ve learned
- Choose my best work
- Present myself professionally
- Think about design and user experience
It’s also making me realize how much I’ve learned in nine months. When I started, I couldn’t have built this. Now it feels straightforward.
That’s progress.
If you’re learning to code, build a portfolio. It doesn’t have to be perfect. It just has to exist.
You can always improve it later.