Hello World, It's Me Again
I feel like I write one of these posts every so many years, but never commit past it.
This time around I'm rebuilding my personal portfolio/whatever site from the ground up for a handfull of reasons.
Great for relearning web basics #
I'm a full stack dev, but it hit me like a ton of bricks when I realized I probably couldn't start fresh without a long wind up period. So I spent a lot of time getting reeducated on what is currently modern web without the crutch of additional frameworks.
In my daily life I work on an existing web application, so not exactly much room to break ground into new web technologies and often times our CSS tends to be additive rather than redesigning full layout patterns with modern tech.
I spent some time reading through Interneting Is Hard to reorient myself with what is available. I took the approach of starting from the beginning, just in case I may miss something. I am thrilled that aspects of front end design that used to be quite painful are now much more straightforward thanks to advances in CSS.
Moving to Eleventy + Github Actions #
I took the chance to learn how to use Eleventy as a static site generator, mostly due to how simple it looked and rather than reinvent the wheel it is working with existing formats so I can move this to another generator or roll my own if necessary.
I know I could have reduced my time for development greatly by using a full blown CMS, but that wouldn't be fun now would it?
Previously I had used Jekyll, but didn't really feel like it was jiving well with me. I recall iterating upon a boilerplate build & deployment system that worked upon a git hook. This ended up putting way too much stress on the dinky server I was using, at one point my hosting provider cut me off entirely.
In this current process, I am using Github Actions to do the build process upon receiving it to the master branch. It performs a build and sends just the new content up to my server - and then does some Docker container scaling to reload it without ever going offline. Kind of neat how stuff has progressed.
Open Source, Work In Progress #
This also gave me a chance to accept that I won't get this right or how I envision it from the get go. In fact, it'll be better if I just start producing content and develop a design around it instead.
To quote Jeffrey Zeldman:
Content precedes design. Design in the absence of content is not design, it's decoration.
— zeldman (@zeldman) May 5, 2008
This is often my first problem: I get so caught up in how it looks I don't even consider how it will interact with the content I need it to present. I spent some time drafting small prototypes in codepen to get the ball rolling, but just enough for some basic type setting.
See the Pen Kitbash Layout Prototype by Michael Springer (@sprngr) on CodePen.
The design itself is named "Kitbash", inspired by the manuals from my hobby of building model kits and the similarity of how development tends to be mashing up and remixing code as you would combine parts from several model kits to make something wholly unique. I felt the design of the manual was something great to take inspiration from, not in a skeuomorphic way but because they have to be clear about what they're presenting to the builder similar to how your design should be able to present your content to the reader without any issues.
While building this out, there were several aspects of the content I hadn't even considered. Rather than be discouraged, I'm publishing it anyway so I can iterate upon it later. This is a work in progress after all.
And in the spirit of helping others learn from what I've learned, this project is open source (at least the code, not my writing or images) on Github.