An Archive of Pee Breaks, Dark Mode Epiphanies, and SEO Obsessions
This is not my usual blog post. It’s more a memoir-meets-tech-confessional. An archive post that old D.C. may or may not stumble upon in the future — depending on if AI has killed off humanity or not. (In other words, fan-service stuff is everywhere else on this website but here 🤣!)
Over the last eight years, it became apparent that people were no longer reading blogs and were mainly focusing on social media. I was guilty of it too. So my website sat there, abandoned with its aging code and steadily time-decaying blog.
Then early last year, I decided to give it a little love. No longer would it serve as a way of getting me possible clients for voiceover work (as it had in the early aughts), but instead it would fully embrace being a résumé website, video library, fan-service destination (while I still have fans). But there was a problem. The theme I had purchased back in 2005 was way out of date. My website was large enough to depress me whenever I thought about migrating it to a new theme.
And then it hit me: ChatGPT. Does it really do code well? I tested it on a little thing that had bugged me for years. It fixed it in five minutes. From that moment on, I was hooked. Monotropic focus and flow took over!

My very first website (made in Flash) Circa 2002. That “20 years” was aspirational then – fake it ’til you make it, baybee!
That was the first round — 18-hour days and very few pee breaks. Then came random fixes as I saw my efforts paying off with Google. But this year I realized there was more I could do on the SEO front. Schema! A pedantic, fussy little bitch that even ChatGPT struggled to get just perfect for Google. But by God, we did it — probably because of my limited pee breaks. Another monotropic jag.
Just as that part was wrapping up, I had a thought — right as I was going to bed — that I wished my website had a dark mode. I woke up realizing my website should always be in dark mode. And thus, the bladder suffered again.
That led to another period of tinkering and back to the SEO side. But I think I’m done? God, I hope I’m done!
Today I exported all of my chats out of ChatGPT and fed it the JSON so it could estimate time, subjects, etc. I really wanted to know how much of my life I just threw at this. So below is a lot of stuff you probably won’t want to read. But it shows everything we went through. At the bottom is the really interesting part. I would never have paid the money needed to do what I did to this website. I would’ve just gotten some other prebuilt theme, transferred things over, used a whole bunch of plug-ins to help with SEO, crossed my fingers, and gone about my life.
But I didn’t. And I don’t think my brain became mush by using ChatGPT through all of this. I learned how to interact with it to get clear results. I learned to think more logically with it, because it can sometimes get lost up its own butthole. And I learned a lot about what Google likes and doesn’t like.
I also know there are people who will be upset that I used it this much because of the environmental factors tied to artificial intelligence. That’s a whole other blog post I hope to do one day. I’ll just leave it at this: if anything can help us figure out how to reverse course on our environmental spiral, it’s artificial intelligence. The very thing that will probably solve its own issue of needing so much energy.
Anyway, all the technobabble is below for any nerds out there who dig this kind of thang! Nartana Nólë? Take it away!
The DC Douglas Kick-Ass Website Refresh
Scope: From the initial child-theme PHP fixes through full custom JSON-LD, internal linking strategy, navigation/UX refresh, video tracking parity, Algolia search setup, and performance/analytics decisions.
High-Level Summary
- PHP & Child Theme (core templates and hooks)
- Modernized the old purchased theme via the child theme: cleaned
functions.php
, added targetedadd_action
/add_filter
hooks, and removed dead/duplicate code. - Template-level tweaks (header/footer, conditional enqueues) to keep front-end lean and controllable.
- Safe overrides for
.htaccess
,robots.txt
, and header meta output without breaking theme updates. - WTF Translation: I basically gave my ancient website a colonic, plucked its eyebrows, and taught it not to soil itself during updates.
- Modernized the old purchased theme via the child theme: cleaned
- Schema & Structured Data (sitewide JSON-LD)
- Disabled Rank Math’s auto schema and replaced it with a single master PHP function injecting custom JSON-LD in
wp_head
. - Implemented comprehensive types: WebSite, WebPage, Person (actor + VO occupations), LocalBusiness/Service (VO services), Event, Review, VideoObject, FAQPage.
- Deepened entity signals: robust
sameAs
,subjectOf
,knowsAbout
fields to strengthen Google’s entity understanding for D.C. Douglas. - Per-page specialization (e.g., Voiceover main page, watch pages) and bespoke schemas, ensuring no conflicting/duplicate blocks.
- WTF Translation: I taught Google who I am, what I do, and why I’m fabulous—basically yelling “LOOK AT ME” in fluent robot-speak.
- Disabled Rank Math’s auto schema and replaced it with a single master PHP function injecting custom JSON-LD in
- SEO & Internal Linking (strategy overhaul)
- Replaced early “strict silo” linking with a contextual, pillar-centric approach.
- Removed auto-inserted links (Link Whisper/LinkBoss/Linksy residues).
- Built and ran SSH/PHP scripts and CSV exports to map orphaned content, incoming/outgoing links, anchors, and priority pages, then executed a targeted internal-link pass to push authority to pillar/strategic posts.
- WTF Translation: I rearranged the furniture so guests stop wandering into the broom closet and instead admire the chandelier.
- Design & UX (navigation, layout, components)
- Landing page refresh: aesthetic-first above the fold for users; SEO blocks below for Google.
- Mega menu & header spacing fixes (desktop vs mobile); stable search-bar placement.
- Buttons unified across the site (
.btnDCMAIN
,.btnDC
,.btnDCsm
) with consistent hover transitions and no layout breakage. - Minor CSS hardening to prevent regressions across templates and parent/child overlaps.
- WTF Translation: I redecorated so the house looks posh upstairs, while the basement is neatly labeled for the tax inspector.
- Video & Media (playlists, tracking, metadata)
- FV Player cleanup: playlist placement/layout and tracking parity (fixed Plausible events for self-hosted videos to match YouTube items).
- Verified Open Graph / VideoObject metadata so social/Google previews are accurate and deduplicated.
- WTF Translation: I tamed the unruly video gremlins so they stop screaming in different directions and sing together in chorus.
- Performance & Speed (measured, targeted edits)
- Resource tuning for media workloads in
.htaccess
(memory, upload/post size, execution time) to stabilize heavy pages without global bloat. - Script loading trims (async/conditional enqueues) to avoid unnecessary payload on non-media pages.
- Kept Core Web Vitals steady while adding new features (no indiscriminate “tuning” that risks regressions).
- WTF Translation: I put my website on a diet: fewer donuts, more jogging, and no collapsing mid-sentence.
- Resource tuning for media workloads in
- Search (Algolia) & Indexing
- Clarified plugin vs hosted crawler responsibilities; cleaned indices; fixed autocomplete configuration and re-indexing flow.
- Avoided over-indexing artifacts (duplicate pages, parent/child template quirks) and reconciled sitemap/crawler expectations.
- WTF Translation: I taught the search bar to stop acting like a drunk butler who insists the wine cellar is in the attic.
- Analytics (keep it lightweight)
- Chose Plausible over GA4 to protect performance and privacy; confirmed no SEO ranking benefit to using GA.
- Identified that real “path viewing” requires session tools (e.g., Clarity/Hotjar) if ever needed—kept them off by default to avoid page bloat.
- WTF Translation: I installed a tiny spy instead of the fat, nosy one, so Google doesn’t eat my biscuits while counting them.
- PR Content
- Crafted/positioned content with careful internal linking (no unnecessary attention-magnets).
- Used NewsArticle schema variant for clarity and search presentation.
- WTF Translation: I polished my press clippings so they shine like gold teeth without blinding the neighbors.
- Automation & CLI (repeatable ops)
- Hardened SSH workflow (keyed login, optional auto-
cd
). - “Chatty” WP-CLI/PHP scripts for bulk audits (links, missing externals, schema checks) with progress output so you can monitor live.
- WTF Translation: I built a polite robot that announces every chore it does, like Jeeves but with a keyboard fetish.
- Hardened SSH workflow (keyed login, optional auto-
Effort by Category (Estimated)
Method: Sessionized chat timestamps & content; time shares allocated by topic within sessions. Figures reflect ChatGPT-recorded activity only.
Category | Hours (+/-) | Share |
---|---|---|
Schema & Structured Data | 412.5 h | 46.82% |
Design & UX | 147.0 h | 16.68% |
Automation & CLI | 73.6 h | 8.35% |
Video & Media | 71.9 h | 8.16% |
PHP & Child Theme | 58.4 h | 6.63% |
SEO & Internal Linking | 41.7 h | 4.73% |
PR Content Clean-up | 26.8 h | 3.04% |
Search (Algolia) & Indexing | 13.2 h | 1.50% |
Performance & Speed | 7.2 h | 0.82% |
Analytics | 7.1 h | 0.81% |
Total | ~881 h | 100% |
What It Would Cost to Hire a Dev Company Instead
Agencies introduce coordination/QA/process overhead. A realistic time multiplier is ~2× of owner-led work.
- Estimated agency hours: ~1,762 h (2× of 881.1 h)
Blended Rate Scenario | Estimated Cost (2×) |
---|---|
$60/h (freelancers/offshore) | $105.7k |
$100/h (small shop) | $176.2k |
$125/h (boutique agency) | $220.2k |
$200/h (mid/high-tier agency) | $352.4k |
Interpretation: Outsourcing the same scope at ~2× overhead would likely have cost in the $176k–$220k range for typical boutique agencies, with lean freelancer mixes closer to ~$106k and mid/high-tier agencies at ~$350k+.
My Actual Cost
Approach & Hours | Cost |
---|---|
D.C.+ChatGPT ~881 h | Labor (at $30/h): ~$26,430 ChatGPT subscription: $20 × 17 months = $340 Total: ~$16,340 |
Agency or Dev ~1,762 h (2× est.) | Labor (median rate): $112.50 Total: $198,225 |