{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "brianjdevries.com",
        "display_name": "Welcome",
        "primary_country_code": "",
        "category_name": "Search Engines"
    },
    "metrics": {
        "global_rank": 7414,
        "country_rank": 3766,
        "category_rank": 10,
        "daily_pageviews_per_visitor": 3.4,
        "daily_time_on_site_seconds": 215,
        "bounce_rate": 32.26,
        "search_visits_percent": 61.08,
        "total_sites_linking_in": 3,
        "monthly_unique_visitors": 216,
        "recorded_at": "2026-04-16 23:41:14"
    },
    "audit": {
        "score": 92
    },
    "traffic_sources": {
        "direct_percent": 23.73,
        "search_percent": 51.53,
        "social_percent": 2.82,
        "referral_percent": 14.32,
        "email_percent": 3.38,
        "paid_percent": 4.22
    },
    "seo_profile": {
        "backlinks_total": 3,
        "referring_domains": 3,
        "dofollow_backlinks_percent": 66.67,
        "organic_keywords": 72,
        "indexed_pages": 36,
        "page_speed_score": 98,
        "mobile_friendliness_score": 89,
        "authority_score": 39,
        "spam_risk_score": 45
    },
    "crawl_report": {
        "robots_status": 200,
        "sitemap_status": 200,
        "sitemap_total_urls": 36,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [],
        "created_at": "2026-04-16 23:41:14"
    },
    "keywords": [
        {
            "keyword": "Welcome",
            "position": 21,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "Welcome search engines",
            "position": 23,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "Welcome reviews",
            "position": 25,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "welcome",
            "position": 27,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "brianjdevries",
            "position": 29,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "brian",
            "position": 31,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "devries",
            "position": 33,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        },
        {
            "keyword": "about",
            "position": 35,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:02",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 14,
        "label": "Weak",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 17,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 12,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 2,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 7,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 4,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 4,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 94,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 39,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 100,
                "max": 100
            }
        ],
        "authority_score": 41,
        "quality_score": 94,
        "reputation_score": 39,
        "safety_score": 100,
        "confidence_score": 100,
        "fraud_score": 0,
        "authority_signals": {
            "backlinks": 3,
            "referring_domains": 3,
            "organic_keywords": 72,
            "indexed_pages": 36,
            "monthly_visitors": 216,
            "global_rank": 7414,
            "engagement_score": 74,
            "crawl_quality_score": 100,
            "brand_completeness_score": 62,
            "link_diversity_score": 94,
            "technical_reliability_score": 95,
            "whois_score": 60,
            "whois_age_years": 5.7,
            "whois_stability_score": 100,
            "spam_penalty": 6
        },
        "whois_signals": {
            "age_years": 5.7,
            "days_to_expiry": 121,
            "days_since_last_registry_update": 258,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 2,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 4,
            "status_count": 2
        }
    },
    "authority_score": 41,
    "trust_score": 16,
    "domain_tags": {
        "primary_tag": "Phish",
        "primary_tag_score": 96,
        "primary_candidate": "Phish",
        "primary_candidate_score": 96,
        "tag_codes": "Phish,D",
        "tags": [
            {
                "code": "Phish",
                "label": "Phishing risk",
                "tone": "scam",
                "description": "Credential-harvesting or account-verification bait signals were detected.",
                "reason": "Account-verification or credential-harvesting cues were detected.",
                "message": "Overwhelming phishing-style signals were detected with very little ambiguity.",
                "priority": 96,
                "score": 96,
                "match_percent": 96,
                "threshold_band": "severe"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic",
                "description": "Strong signs of phishing, malware, or other harmful behaviour were detected.",
                "reason": "Multiple high-risk signals pushed this domain into the dangerous range.",
                "message": "Overwhelming dangerous signals were detected with very little contradictory evidence.",
                "priority": 95,
                "score": 95,
                "match_percent": 95,
                "threshold_band": "severe"
            }
        ],
        "tag_breakdown": [
            {
                "code": "Phish",
                "label": "Phishing risk",
                "tone": "scam",
                "description": "Credential-harvesting or account-verification bait signals were detected.",
                "reason": "Account-verification or credential-harvesting cues were detected.",
                "message": "Overwhelming phishing-style signals were detected with very little ambiguity.",
                "priority": 96,
                "score": 96,
                "match_percent": 96,
                "threshold_band": "severe"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic",
                "description": "Strong signs of phishing, malware, or other harmful behaviour were detected.",
                "reason": "Multiple high-risk signals pushed this domain into the dangerous range.",
                "message": "Overwhelming dangerous signals were detected with very little contradictory evidence.",
                "priority": 95,
                "score": 95,
                "match_percent": 95,
                "threshold_band": "severe"
            },
            {
                "code": "Infra",
                "label": "Risky infrastructure",
                "tone": "caution",
                "description": "The hosting / registrar / nameserver neighbourhood looks unusually risky.",
                "reason": "The infrastructure neighbourhood looks riskier than normal.",
                "message": "Infrastructure risk does not currently stand out.",
                "priority": 4,
                "score": 4,
                "match_percent": 4,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 17,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Phishing risk (96% match) because account-verification or credential-harvesting cues were detected.",
        "external_intel": {
            "domain": "brianjdevries.com",
            "candidate_tag": "D",
            "checked_at": "2026-04-19T15:10:02+00:00",
            "status": "queued",
            "snapshot_version": 9,
            "summary": "External intelligence is now manual-only. Use Refresh data to trigger search and review intelligence gathering for this domain.",
            "search_intelligence": {
                "queries": [],
                "providers": [],
                "results_found": 0,
                "results": [],
                "source_mix": [],
                "entity_coverage_score": 0
            },
            "review_intelligence": {
                "documents_fetched": 0,
                "documents": [],
                "facts": [],
                "ignored_candidates": [],
                "source_diversity": 0,
                "elapsed_ms": 0,
                "candidates_considered": 0,
                "fetch_success_rate": 0,
                "avg_source_trust": 0,
                "avg_entity_score": 0
            },
            "evidence": {
                "scores": [],
                "counts": [],
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 0,
                "freshness_score": 0,
                "confidence": 0,
                "documents_fetched": 0,
                "fact_count": 0,
                "avg_source_trust": 0,
                "avg_entity_score": 0,
                "fetch_success_rate": 0,
                "exact_match_score": 0,
                "query_coverage_score": 0
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": [],
                "evidence_quality": "low",
                "state_label": "Inconclusive",
                "state_reason": "Search and review intelligence has not produced enough qualified evidence yet to harden the verdict."
            },
            "signals": {
                "scores": [],
                "counts": [],
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": []
            },
            "citations": [],
            "urlscan": [],
            "provider_enrichment": {
                "providers": [],
                "facts": [],
                "citations": [],
                "highlights": [],
                "quality": {
                    "provider_diversity_score": 0,
                    "provider_confidence_score": 0,
                    "provider_fact_count": 0
                }
            },
            "eligibility": [],
            "cooldown": [],
            "debug": []
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": [],
            "evidence_quality": "low",
            "state_label": "Inconclusive",
            "state_reason": "Search and review intelligence has not produced enough qualified evidence yet to harden the verdict."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "Phish · 96%",
                "tone": "scam",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "17/100",
                "tone": "spam",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "41/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "38/100",
                "tone": "caution",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "89/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "38/100",
                "tone": "spam",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "31/100",
                "tone": "caution",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "4/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "5.7 years",
                        "tone": "good",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "121",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC off · privacy off",
                        "tone": "caution",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "3",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "3",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "72",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "36",
                        "tone": "caution",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "62/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 395 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "418",
                        "tone": "caution",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "0 schema · meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "16 internal · 2 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "98/100 · 89/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Search and review intelligence has not produced enough qualified evidence yet to harden the verdict."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 5.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness."
        ],
        "risks": [
            "Trust score is currently very low.",
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 60,
    "whois": {
        "current": {
            "id": 16589,
            "domain": "brianjdevries.com",
            "source_type": "rdap",
            "rdap_url": "https://rdap.verisign.com/com/v1/domain/BRIANJDEVRIES.COM",
            "registrar_name": "Squarespace Domains II LLC",
            "registrar_handle": "895",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abuse-complaints@squarespace.com",
            "created_date": "2020-08-18 15:10:07",
            "updated_date": "2025-08-03 18:38:50",
            "expires_date": "2026-08-18 15:10:07",
            "nameservers_json": "[\"dns1.p01.nsone.net\",\"dns2.p01.nsone.net\",\"dns3.p01.nsone.net\",\"dns4.p01.nsone.net\"]",
            "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "444f6ae2b65882126dfd889222e183a6a4c3662dbe48c91f48cca2da2afcd8ab",
            "history_count": 2,
            "last_checked_at": "2026-04-16 23:41:08",
            "last_changed_at": "2026-04-16 23:41:08",
            "created_at": "2026-03-17 07:41:58",
            "updated_at": "2026-04-16 23:41:09"
        },
        "history": [
            {
                "id": 84486,
                "domain": "brianjdevries.com",
                "source_type": "rdap",
                "registrar_name": "Squarespace Domains II LLC",
                "registrar_handle": "895",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse-complaints@squarespace.com",
                "created_date": "2020-08-18 15:10:07",
                "updated_date": "2025-08-03 18:38:50",
                "expires_date": "2026-08-18 15:10:07",
                "nameservers_json": "[\"dns1.p01.nsone.net\",\"dns2.p01.nsone.net\",\"dns3.p01.nsone.net\",\"dns4.p01.nsone.net\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "444f6ae2b65882126dfd889222e183a6a4c3662dbe48c91f48cca2da2afcd8ab",
                "checked_at": "2026-04-16 23:41:08",
                "change_summary": "Periodic WHOIS snapshot refreshed with no major field changes.",
                "created_at": "2026-04-16 23:41:08"
            },
            {
                "id": 16902,
                "domain": "brianjdevries.com",
                "source_type": "rdap",
                "registrar_name": "Squarespace Domains II LLC",
                "registrar_handle": "895",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse-complaints@squarespace.com",
                "created_date": "2020-08-18 15:10:07",
                "updated_date": "2025-08-03 18:38:50",
                "expires_date": "2026-08-18 15:10:07",
                "nameservers_json": "[\"dns1.p01.nsone.net\",\"dns2.p01.nsone.net\",\"dns3.p01.nsone.net\",\"dns4.p01.nsone.net\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "444f6ae2b65882126dfd889222e183a6a4c3662dbe48c91f48cca2da2afcd8ab",
                "checked_at": "2026-03-17 07:41:58",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-17 07:41:58"
            }
        ],
        "signals": {
            "age_years": 5.7,
            "days_to_expiry": 121,
            "days_since_last_registry_update": 258,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 2,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 4,
            "status_count": 2
        }
    },
    "discovered_domain": {
        "id": 80951,
        "domain": "brianjdevries.com",
        "first_seen_at": "2026-03-15 20:24:51",
        "last_crawled_at": "2026-04-16 23:41:14",
        "last_title": "Welcome | Brian DeVries",
        "last_http_status": 200,
        "discovered_from_domain": "personalsit.es",
        "depth": 0,
        "backlinks_count": 3,
        "rating_cache": 24,
        "spam_score": 24,
        "risk_label": "good",
        "category_name": "Search Engines",
        "primary_country_code": "",
        "internal_links_count": 16,
        "external_links_count": 2,
        "social_profiles_count": 0,
        "content_word_count": 418,
        "title_quality_score": 81,
        "has_meta_description": 1,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 395,
        "robots_status": 200,
        "sitemap_status": 200,
        "sitemap_total_urls": 36,
        "quality_score": 89,
        "site_name": "",
        "canonical_domain": "",
        "favicon_present": 1,
        "schema_org_count": 0,
        "noindex_detected": 0,
        "feed_links_count": 1,
        "https_working": 1,
        "estimated_authority_score": 36,
        "trust_score": 16,
        "nsfw_score": 0,
        "overall_rank_estimate": 2598394,
        "primary_tag": "D",
        "tag_codes": "D,Phish",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 0,
        "legitimacy_score": 63,
        "infrastructure_risk_score": 4,
        "score_confidence": 100,
        "tag_confidence": 72,
        "category_confidence": 99,
        "deep_crawl_pages": 40,
        "resolved_ip": "63.176.8.218",
        "category_candidates_json": "[{\"category\":\"Search Engines\",\"score\":100},{\"category\":\"Personal: Personal Sites & Homepages\",\"score\":28},{\"category\":\"E-commerce\",\"score\":17},{\"category\":\"Personal: Blogs & Journals\",\"score\":17}]",
        "page_signals_json": "[{\"path\":\"/about\",\"status\":200,\"title\":\"Hey! I'm Brian. | Brian DeVries\",\"word_count\":252,\"summary_text\":\"Hey! I'm Brian. | Brian DeVries Hey! I&#39;m Brian. | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Hey! I&#39;m Brian. Thanks for stopping by. Read on to find out how exciting or boring I really am. If you're looking for information about my professional life, check out my career page. A bit about me Growing up, I was able to learn a lot about fixing, building, and making things from my mom, dad, uncles, and grandpas. If it involved using your hands, you could convince me to give it a try! I learned things like crocheting, baking, woodworking, farming, plumbing, and auto repair. My grandpa even hired me during the summers from 7th-12th grade to help him around the farm. If you want to learn a lot and work hard, ask a farmer for a job, ha! From there, I went to college in Grand Ra\",\"classification_terms\":[\"about\",\"about me\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/contact\",\"status\":200,\"title\":\"Contact Me | Brian DeVries\",\"word_count\":79,\"summary_text\":\"Contact Me | Brian DeVries Contact Me | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Contact Me Howdy! Consider saying hi! I removed all analytics and tracking from this site to respect your privacy and reduce javascript, so the only way I know you stopped by is if you message me 😛 Email (personal) 📧 brian@brianjdevries.com Email (website design) 📧 brian@techcarpenter.com LinkedIn 👨‍💼 Brian's LinkedIn Github 💻 github.com/techcarpenter Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"contact\",\"about\",\"privacy\",\"support\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/about/\",\"status\":200,\"title\":\"Hey! I'm Brian. | Brian DeVries\",\"word_count\":252,\"summary_text\":\"Hey! I'm Brian. | Brian DeVries Hey! I&#39;m Brian. | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Hey! I&#39;m Brian. Thanks for stopping by. Read on to find out how exciting or boring I really am. If you're looking for information about my professional life, check out my career page. A bit about me Growing up, I was able to learn a lot about fixing, building, and making things from my mom, dad, uncles, and grandpas. If it involved using your hands, you could convince me to give it a try! I learned things like crocheting, baking, woodworking, farming, plumbing, and auto repair. My grandpa even hired me during the summers from 7th-12th grade to help him around the farm. If you want to learn a lot and work hard, ask a farmer for a job, ha! From there, I went to college in Grand Ra\",\"classification_terms\":[\"about\",\"about me\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/blog/\",\"status\":200,\"title\":\"Blog | Brian DeVries\",\"word_count\":142,\"summary_text\":\"Blog | Brian DeVries Blog | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Blog 2024 An Evening Gym Dec 21 My latest endeavor Jun 18 Nine year wedding anniversary Jun 13 April 2024 May 04 House Sketch Apr 18 I&#39;ll read it Apr 02 Removed web analytics Mar 26 Reducing my online presence Mar 14 2023 Dinosaurs Aug 01 2022 December Update (2022) Dec 08 How to add a custom search bar to your eleventy website with duckduckgo Oct 19 2021 10 ways to consume less content Jun 07 2020 My target audience and my one thing Nov 16 Making Progress Oct 26 Cold Showers and Habit Building Sep 28 New Routine Sep 15 Produce More, Consume Less Sep 13 Website building blocks Sep 07 You&#39;re Being Watched Aug 24 Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"blog\",\"about\",\"contact\",\"support\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":1},{\"path\":\"/notes/\",\"status\":200,\"title\":\"Notes | Brian DeVries\",\"word_count\":420,\"summary_text\":\"Notes | Brian DeVries Notes | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Notes reply At the end of July I built a small container pond with my two oldest sons on the side of the house by our wildflowers. I wanted to provide a natural place for creatures to have access to water and maybe even invite some lesser-seen guests to my yard like frogs. Well, after a few weeks I have my first amphibious visitor! This frog showed up on its own and has stuck around for 3 days so far. And I saw my first hummingbird since we bought this house. I'm looking forward to more visitors! 14:24 Thu Aug 14 2025 +00:00 reply Man, it's been a while! A lot has happened since I last posted in January, but I wanted to share a pic of my garden that I planted around the beginning of June. Not bad\",\"classification_terms\":[\"notes\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/now/\",\"status\":200,\"title\":\"What I'm doing now | Brian DeVries\",\"word_count\":284,\"summary_text\":\"What I'm doing now | Brian DeVries What I&#39;m doing now | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon What I&#39;m doing now Last updated: November 5, 2025 I'm working as a Software Engineer for Meijer. I work remotely, but have been able to meet many of my coworkers since HQ is only 20 minutes away. C#, SQL, and .NET Building websites for clients at techcarpenter.org Raising my three sons (ages 7, 5, and 2) with my wife. Expecting my fourth son to arrive in late January 2026! Running a self-hosted server on my local network. I've been working on several cross-stitch designs. Some I've given away as gifts, others I'm making for myself. My two oldest sons have shown some interest in learning so I've been teaching then to cross-stitch too! 🧵🪡 Doing lots of puzzles, melting bead pat\",\"classification_terms\":[\"now\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":1},{\"path\":\"/links/\",\"status\":200,\"title\":\"More Links | Brian DeVries\",\"word_count\":58,\"summary_text\":\"More Links | Brian DeVries More Links | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon More Links Here's a list of pertinent links on my site and elsewhere. Pages 📧 Contact ⌚ Now 🏢 Work experience 👨🏼‍💼 Career 🔨 Projects 🙏🏼 Supporters 🔎 Search Others Ko-fi Github Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"links\",\"about\",\"contact\",\"support\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/blog/2024/12/21/an-evening-gym/\",\"status\":200,\"title\":\"An Evening Gym | Brian DeVries\",\"word_count\":373,\"summary_text\":\"An Evening Gym | Brian DeVries An Evening Gym | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon An Evening Gym December 21, 2024 I sit on a fold-out camp chair in the gymnasium. My ears pick up the constant echo of balls hitting the floor while several voices bounce of the walls. Children are running back and forth. Intense fluorescent white light beats down from the high ceilings. The scent of freshly cleaned court gently brushes my nose. Cool air from outside floods into the gym, refreshing all inside. This is my six-year-old son's basketball practice. The scene reminds me of my own many evening practices as a middle and high school athlete. The coaches instruct with a firm voice; There isn't any time for explanation during the drills. Several groups are running various drills, c\",\"classification_terms\":[\"blog/2024/12/21/an-evening-gym\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/blog/2024/06/18/my-latest-endeavor/\",\"status\":200,\"title\":\"My latest endeavor | Brian DeVries\",\"word_count\":414,\"summary_text\":\"My latest endeavor | Brian DeVries My latest endeavor | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon My latest endeavor June 18, 2024 For the last 6 years, I've had a bit of an entrepreneurial spirit. I like trying new things, and it's fun to make money from my efforts as well. Over the years, I've made money from woodworking, programming, graphic design, and more. Now I've found another fun avenue to explore: custom stickers. Everyone likes stickers, right? They're fun, easy to store and distribute, and economical. Stickers are a good way to share a message or promote a brand and customers love them. I've been working to help small businesses promote themselves with their own custom stickers. Whether customers already have a design or need one, I have been able to help! Here is the\",\"classification_terms\":[\"blog/2024/06/18/my-latest-endeavor\",\"about\",\"help\",\"blog\",\"store\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/blog/2024/06/13/nine-year-wedding-anniversary/\",\"status\":200,\"title\":\"Nine year wedding anniversary | Brian DeVries\",\"word_count\":233,\"summary_text\":\"Nine year wedding anniversary | Brian DeVries Nine year wedding anniversary | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Nine year wedding anniversary June 13, 2024 To my lovely, beautiful wife Hannah. Happy Anniversary Hannah! ❤ I can't imagine living life without you. We've laughed together, cried together, prayed together, and so much more. Thank you for being a constant through the ups and downs of life. When we got married half way into college, I don't think either of us could have predicted just how much God would bless us. Our three sons definitely test our patience at times, but they've also brought immeasurable joy into our lives. I'm thankful for you. I look forward to making more memories together. Love, Brian Thanks for reading! Shoot me an email with your thoughts or just to sa\",\"classification_terms\":[\"blog/2024/06/13/nine-year-wedding-anniversary\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/notes/20250814142400/\",\"status\":200,\"title\":\"Notes | Brian DeVries\",\"word_count\":144,\"summary_text\":\"Notes | Brian DeVries Notes | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Note ⬅ All Notes reply At the end of July I built a small container pond with my two oldest sons on the side of the house by our wildflowers. I wanted to provide a natural place for creatures to have access to water and maybe even invite some lesser-seen guests to my yard like frogs. Well, after a few weeks I have my first amphibious visitor! This frog showed up on its own and has stuck around for 3 days so far. And I saw my first hummingbird since we bought this house. I'm looking forward to more visitors! 14:24 Thu Aug 14 2025 +00:00 dayjs.extend(window.dayjs_plugin_utc); let title = document.querySelector(\\\".note__time\\\"); title.innerText = dayjs(new Date(title.dateTime)).format(\\\"HH:mm ddd MMM D\",\"classification_terms\":[\"notes/20250814142400\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/notes/20250705182300/\",\"status\":200,\"title\":\"Notes | Brian DeVries\",\"word_count\":93,\"summary_text\":\"Notes | Brian DeVries Notes | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Note ⬅ All Notes reply Man, it's been a while! A lot has happened since I last posted in January, but I wanted to share a pic of my garden that I planted around the beginning of June. Not bad for the first attempt since we bought this house. 18:23 Sat Jul 05 2025 +00:00 dayjs.extend(window.dayjs_plugin_utc); let title = document.querySelector(\\\".note__time\\\"); title.innerText = dayjs(new Date(title.dateTime)).format(\\\"HH:mm ddd MMM DD YYYY\\\"); Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"notes/20250705182300\",\"about\",\"contact\",\"support\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/notes/20250106151700/\",\"status\":200,\"title\":\"Notes | Brian DeVries\",\"word_count\":124,\"summary_text\":\"Notes | Brian DeVries Notes | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Note ⬅ All Notes reply I finished crocheting a pair of fingerless gloves to wear while at my computer in the basement so I can still type. They're 100% merino wool so they're warm, but they do make it a little difficult to type. Hopefully I get used to them because I think they turned out pretty well! These types of gloves remind me of the hobo in The Polar Express, but I'm not too concerned about looking fashionable 😜 15:17 Mon Jan 06 2025 +00:00 dayjs.extend(window.dayjs_plugin_utc); let title = document.querySelector(\\\".note__time\\\"); title.innerText = dayjs(new Date(title.dateTime)).format(\\\"HH:mm ddd MMM DD YYYY\\\"); Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"notes/20250106151700\",\"about\",\"contact\",\"support\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/contact/\",\"status\":200,\"title\":\"Contact Me | Brian DeVries\",\"word_count\":79,\"summary_text\":\"Contact Me | Brian DeVries Contact Me | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Contact Me Howdy! Consider saying hi! I removed all analytics and tracking from this site to respect your privacy and reduce javascript, so the only way I know you stopped by is if you message me 😛 Email (personal) 📧 brian@brianjdevries.com Email (website design) 📧 brian@techcarpenter.com LinkedIn 👨‍💼 Brian's LinkedIn Github 💻 github.com/techcarpenter Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"contact\",\"about\",\"privacy\",\"support\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/style-guide/\",\"status\":200,\"title\":\"Site Style Guide | Brian DeVries\",\"word_count\":604,\"summary_text\":\"Site Style Guide | Brian DeVries Site Style Guide | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Site Style Guide Colors Vermillion Dark Light Demos This is a basic demo This is a demo with a new label. Typography Headers and Text Top Level Header This is a paragraph to give sense of the flow of a document that has headers. There shouldn't be a huge gap around the headers, but enough to make text readable and let the headers stand out! Second Level Header This is a paragraph to give sense of the flow of a document that has headers. There shouldn't be a huge gap around the headers, but enough to make text readable and let the headers stand out! Third Level Header This is a paragraph to give sense of the flow of a document that has headers. There shouldn't be a huge gap around the h\",\"classification_terms\":[\"style-guide\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/supporters/\",\"status\":200,\"title\":\"Supporters 🎉 | Brian DeVries\",\"word_count\":87,\"summary_text\":\"Supporters 🎉 | Brian DeVries Supporters 🎉 | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Supporters 🎉 So far I have one very generous monthly supporter. A huge thank you to Manu! Monthly supporters Manuel Moreale (First supporter! 🙏🏼) If you have found value in any of my work and/or would like to support me in reaching my goal of paying off all student debt, you can check out my ko-fi page! Support Me on Ko-fi Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"supporters\",\"about\",\"contact\",\"support\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/career/\",\"status\":200,\"title\":\"Career | Brian DeVries\",\"word_count\":404,\"summary_text\":\"Career | Brian DeVries Career | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Career I'm Brian DeVries, a developer who's been shipping code since 2018. Here are some things I've done in that time: Integrated a preventative maintenance tracker with the internal wiki at Gentex Wrote .NET applications to test physical HomeLink garage door openers and auto-dimming rear view mirrors at Gentex Received a SAFe Agile Practitioner certification (scrum, kanban, product owners, etc.) Completed 6 FreeCodeCamp certifications Built multiple APIs to expose database procedures to 3rd party vendors at Meijer Helped port a Windows Forms desktop app to a Vue webapp for Life Storage Now Extra Space Set up my own DNS server with a Raspberry Pi Contributed to the open source project Foam (pul\",\"classification_terms\":[\"career\",\"about\",\"help\",\"shipping\",\"api\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/removed-web-analytics/\",\"status\":200,\"title\":\"Removed web analytics | Brian DeVries\",\"word_count\":289,\"summary_text\":\"Removed web analytics | Brian DeVries Removed web analytics | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Removed web analytics March 26, 2024 I removed web analytics from my site. Despite using a more privacy-focused web analytics provider than Google, I realized I was still tracking people who visited my site. And I don't love the idea of doing that. So I removed the analytics script. No more page view info, no anonymized location data, no trends, no nothin'. And I'm done considering SEO or the algorithms at all when I write. Websites should be made for people, not search engines and machines. I understand the desire to know the data of page views and search terms. That's why I had analytics in the first place. But if some people who visit my site are blocking trackers, I'm not gett\",\"classification_terms\":[\"blog/removed-web-analytics\",\"about\",\"privacy\",\"terms\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2024/05/04/april-2024/\",\"status\":200,\"title\":\"April 2024 | Brian DeVries\",\"word_count\":454,\"summary_text\":\"April 2024 | Brian DeVries April 2024 | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon April 2024 May 4, 2024 Sometimes I find it hard to remember what I did in the last month. Keeping track of my plans and accomplishments on my calendar and in my journal helps me when I feel like I haven't done anything recently. It's similar to a &quot;done&quot; list, where you record what you've accomplished to keep yourself motivated. Anyway, here are some of the things I was up to last month: My oldest son started spring soccer We got a trampoline on facebook marketplace for $50 The kids absolutely LOVE it My youngest son got a helmet to fix a flat spot on his head My dog got groomed, she was looking pretty shaggy 4 out of 5 in my family survived a stomach illness 😬 I went up north near\",\"classification_terms\":[\"blog/2024/05/04/april-2024\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2024/04/18/house-sketch/\",\"status\":200,\"title\":\"House Sketch | Brian DeVries\",\"word_count\":176,\"summary_text\":\"House Sketch | Brian DeVries House Sketch | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon House Sketch April 18, 2024 I drew a sketch of a house that looks similar to mine today. I don't consider myself an artist, but I do enjoy drawing occassionally and learned how to digitize them recently so here it is. That's me waving in the front there 🙂 Thanks for reading! Shoot me an email with your thoughts or just to say hello. ← Previous I&#39;ll read it Next → April 2024 .next-previous-post { margin: 5rem auto; display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; } .next-post { text-align: right; } .previous-post { text-align: left; } .next-post, .previous-post { border: 2px solid var(--vermillion); display: block; padding: 0.5rem; text-decoration: none; } .next-post:hover, .\",\"classification_terms\":[\"blog/2024/04/18/house-sketch\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2024/04/02/i-ll-read-it/\",\"status\":200,\"title\":\"I'll read it | Brian DeVries\",\"word_count\":348,\"summary_text\":\"I'll read it | Brian DeVries I&#39;ll read it | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon I&#39;ll read it April 2, 2024 I enjoy learning about people through their personal websites. It's a piece of them put on the web for others to find and connect through. But many people don't have their own space on the web outside of social media. Nowhere to call &quot;home&quot; online. Maybe this is your situation right now. Maybe you've thought about setting up a website, but you don't know what to write about or you simply don't know where to start. If that describes you, I want to encourage you to write about whatever you want. Then send it to me, and I'll be your first reader. It doesn't have to be polished or meet a word count minimum. I have been trying to unlearn the stiff, a\",\"classification_terms\":[\"blog/2024/04/02/i-ll-read-it\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2024/03/26/removed-web-analytics/\",\"status\":200,\"title\":\"Removed web analytics | Brian DeVries\",\"word_count\":289,\"summary_text\":\"Removed web analytics | Brian DeVries Removed web analytics | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Removed web analytics March 26, 2024 I removed web analytics from my site. Despite using a more privacy-focused web analytics provider than Google, I realized I was still tracking people who visited my site. And I don't love the idea of doing that. So I removed the analytics script. No more page view info, no anonymized location data, no trends, no nothin'. And I'm done considering SEO or the algorithms at all when I write. Websites should be made for people, not search engines and machines. I understand the desire to know the data of page views and search terms. That's why I had analytics in the first place. But if some people who visit my site are blocking trackers, I'm not gett\",\"classification_terms\":[\"blog/2024/03/26/removed-web-analytics\",\"about\",\"privacy\",\"terms\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2024/03/14/reducing-online-presence/\",\"status\":200,\"title\":\"Reducing my online presence | Brian DeVries\",\"word_count\":630,\"summary_text\":\"Reducing my online presence | Brian DeVries Reducing my online presence | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Reducing my online presence March 14, 2024 I have contemplated the value of social media in my life for a while now. The first social media account I signed up for was Facebook in 2009 when I was going into high school. Since then, I've had accounts on several other platforms including Snapchat, Twitter, Reddit, Instagram, etc. While there have been some good things to come from being a part of these online platforms, the experience has overall has been net-negative. Over time, I've learned that social media apps are not designed for you and me. They're designed to extract information and/or money from us through data collection and ad revenue while using behavioral psycholo\",\"classification_terms\":[\"blog/2024/03/14/reducing-online-presence\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2023/08/01/dinosaurs/\",\"status\":200,\"title\":\"Dinosaurs | Brian DeVries\",\"word_count\":204,\"summary_text\":\"Dinosaurs | Brian DeVries Dinosaurs | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Dinosaurs August 1, 2023 My oldest son recently turned 5 years old, and like many boys his age, he is very excited about dinosaurs. He can tell you the names of dinosaurs I've never heard of! His attention to detail and the descriptive language he uses to compare them is so fun to hear. But perhaps the best part is how he's improved his drawings of them. The Tyrannosaurus Rex has never looked sooo good 😎 Thanks for reading! Shoot me an email with your thoughts or just to say hello. ← Previous December Update (2022) Next → Reducing my online presence .next-previous-post { margin: 5rem auto; display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; } .next-post { text-align: right; } .previou\",\"classification_terms\":[\"blog/2023/08/01/dinosaurs\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2022/12/08/december-update-2022/\",\"status\":200,\"title\":\"December Update (2022) | Brian DeVries\",\"word_count\":1040,\"summary_text\":\"December Update (2022) | Brian DeVries December Update (2022) | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon December Update (2022) December 8, 2022 Well, here we are a quarter of the way through December. My kids have informed me we only have 17 days until Christmas (from the Christmas countdown tree) and it doesn't feel like we got access to our house almost 2 months ago already! It's been a busy, fun time for us. Anyway, I wanted to sit down and reflect on all the things we've already done since moving in. I have a few reasons for wanting to do this. First, I often forget how much progress has been made when there's so much that still needs to be done. Second, I wanted to record some of these items for future reference anyway, why not share them with anyone who is interested? And thi\",\"classification_terms\":[\"blog/2022/12/08/december-update-2022\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2022/10/19/custom-duckduckgo-search-bar/\",\"status\":200,\"title\":\"How to add a custom search bar to your eleventy website with duckduckgo | Brian DeVries\",\"word_count\":567,\"summary_text\":\"How to add a custom search bar to your eleventy website with duckduckgo | Brian DeVries How to add a custom search bar to your eleventy website with duckduckgo | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon How to add a custom search bar to your eleventy website with duckduckgo October 19, 2022 A few weeks ago, I was sprucing up my website's &quot;404 Not Found&quot; page. I had seen some useful 404 pages that offered other web pages to check out instead of just a dead end. One addition I thought would be nice was a custom search bar. It turned out to be effortless with DuckDuckGo. Customize results page Duckduckgo offers several query parameters that affect the search results of the page. Go here to find the full list of query parameters. Here are the parameters I'm interested in: Parameter Purpose search: The search term, entered by\",\"classification_terms\":[\"blog/2022/10/19/custom-duckduckgo-search-bar\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2021/06/07/info-addict/\",\"status\":200,\"title\":\"10 ways to consume less content | Brian DeVries\",\"word_count\":1000,\"summary_text\":\"10 ways to consume less content | Brian DeVries 10 ways to consume less content | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon 10 ways to consume less content June 7, 2021 I have an addiction. No, I don't go to anonymous meetings to support others or to get support. This addiction isn't thought of as destructive like drugs or alcohol. But it does affect me on a daily basis. I'm addicted to information You might be thinking, &quot;But information is a good thing, right?&quot; Often at the heart of all addictions are things that aren't bad. But when obsessed upon or distorted, they can be debilitating and destructive. For example, alcohol isn't impairing in modest quantities, but it is when you drink too much. Food is necessary to sustain our bodies, but it causes obesity when you eat too much. Se\",\"classification_terms\":[\"blog/2021/06/07/info-addict\",\"about\",\"support\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/11/16/my-target-audience-and-my-one-thing/\",\"status\":200,\"title\":\"My target audience and my one thing | Brian DeVries\",\"word_count\":502,\"summary_text\":\"My target audience and my one thing | Brian DeVries My target audience and my one thing | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon My target audience and my one thing November 16, 2020 I've spent a lot of time thinking about who my target audience is. Originally I thought I should write content specifically for developers. Then I thought I should perhaps write about woodworking or other projects I work on. Now it's whatever I feel like writing about. The truth is that I'm writing for anyone interested in me as a person and for myself. The purpose of writing I want to use writing to process my thoughts. That is my purpose for writing at this point. As a result, I will gain clarity. A byproduct of writing is that I will get better at it too. As I improve, I might find new opportunities to employ m\",\"classification_terms\":[\"blog/2020/11/16/my-target-audience-and-my-one-thing\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/10/26/making-progress/\",\"status\":200,\"title\":\"Making Progress | Brian DeVries\",\"word_count\":740,\"summary_text\":\"Making Progress | Brian DeVries Making Progress | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Making Progress October 26, 2020 Ahoy, readers! Now that it's been over a month with a newborn (2nd kiddo born 9/15), I have an updated daily routine. Clearly I was being ambitious before. Interrupted sleep makes it difficult to get up at 4:45AM... 😂 Here's my current routine: Start Time Item 6:00AM : 🌄 Wake up, get ready for day 6:15AM : 📖 Devotions 6:45AM : 👨‍👦‍👦 👨‍👩‍👦‍👦 Get kids up, then Family time 7:30AM : 👨‍💻 Day job 4:30PM : 🥘 👨‍👩‍👦‍👦 Dinner, Family time 7:30PM : 🛌 👶 Diedrick in bed, then Hold Rhett til feeding 8:00PM : 💑 💻 Watch TV show with wife, Work on app 10:15PM : 🛌 Get ready for bed 10:30PM : 😴 Sleep There are aspects of this routine I don't love. My preference would be to\",\"classification_terms\":[\"blog/2020/10/26/making-progress\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/09/28/cold-showers-and-habit-building/\",\"status\":200,\"title\":\"Cold Showers and Habit Building | Brian DeVries\",\"word_count\":840,\"summary_text\":\"Cold Showers and Habit Building | Brian DeVries Cold Showers and Habit Building | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Cold Showers and Habit Building September 28, 2020 For over 2 months now, I've been turning the water to its coldest setting for 1 minute at the end of my shower. What started as a desire to build resilience has taught me valuable lessons about building habits and consistency. Start Small When I first started my cold shower endeavor, I felt ready to go to the max. I thought, &quot;Why not prove that I'm super tough already and can do 1 minute of cold right away?&quot; But I had tried to do cold showers before. And, you guessed it, I didn't stick with it for more than a week. I wanted this time around to be different. I found an app by a guy named Wim Hof who is known for\",\"classification_terms\":[\"blog/2020/09/28/cold-showers-and-habit-building\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/09/15/new-routine/\",\"status\":200,\"title\":\"New Routine | Brian DeVries\",\"word_count\":534,\"summary_text\":\"New Routine | Brian DeVries New Routine | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon New Routine September 15, 2020 I want to be consistently moving forward towards freedom. Financial freedom, time freedom, location freedom. It will not be without its challenges, but I think it's worthy to strive for. I need to get into a daily routine or schedule, but my second son is about to be born (my wife is getting induced TODAY). I'm not sure how that is going to affect the process quite yet. But if consistency is what I'm trying to achieve, a daily schedule/routine will help ensure that happens. Of course, Hannah and I need to be on the same page about what I want my schedule to be. My goals and routines can't be separate from her. When I change my daily routine, it affects my fami\",\"classification_terms\":[\"blog/2020/09/15/new-routine\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/09/13/produce-more-consume-less/\",\"status\":200,\"title\":\"Produce More, Consume Less | Brian DeVries\",\"word_count\":521,\"summary_text\":\"Produce More, Consume Less | Brian DeVries Produce More, Consume Less | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Produce More, Consume Less September 13, 2020 Long-term thinking yields greater results. But short-term results feel more urgent. I get caught up in coming up with my next endeavor to make a quick buck on the side. I need to stop chasing the quick money and start investing in an asset for the long-term. I like building websites and working with software. How can I leverage those skills to build a product? Consistent execution is paramount. Anyone can find an idea, but the execution is what counts. Brainstorming ideas is something I enjoy doing. I have long lists of ideas. I've talked with friends and family about several of them. I've been known to jump from idea to idea, hob\",\"classification_terms\":[\"blog/2020/09/13/produce-more-consume-less\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/09/07/website-building-blocks/\",\"status\":200,\"title\":\"Website building blocks | Brian DeVries\",\"word_count\":731,\"summary_text\":\"Website building blocks | Brian DeVries Website building blocks | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Website building blocks September 7, 2020 You visit websites every day, but you might not know what the basic building blocks are. Websites are built with 3 fundamental pieces: HTML, CSS, and JavaScript. HTML elements are the bones of the web page. CSS is the skin and appearance of the site. JavaScript acts as the muscles, running functional scripts to execute logic. I'll show you how to take a look at source HTML of a website. View web page source html When I press F12 in my browser, the Developer Tools window will open. Before learning about HTML and web development, this window would only pop up by accident. When the Developer Tools window is open, you can see all the markup\",\"classification_terms\":[\"blog/2020/09/07/website-building-blocks\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/2020/08/24/online-privacy/\",\"status\":200,\"title\":\"You're Being Watched | Brian DeVries\",\"word_count\":678,\"summary_text\":\"You're Being Watched | Brian DeVries You&#39;re Being Watched | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon You&#39;re Being Watched August 24, 2020 I've been more conscious about online privacy lately. Maybe it's because I'm building more websites and have to consider traffic analytics. Or it might be due to the ever-present advertisements that mysteriously match searches on other platforms. Whatever it is, I'm not a fan of all the tracking. We know these large companies are tracking us. But we don't do anything about it. Why? Let's think about that. Services that track us So we know online tracking is a thing. We have at least heard about 'cookies' on websites. But do we know what they're for? Many websites say, &quot;Accept our cookies so we can provide you the best experience on\",\"classification_terms\":[\"blog/2020/08/24/online-privacy\",\"about\",\"privacy\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/notes/20250104150300/\",\"status\":200,\"title\":\"Notes | Brian DeVries\",\"word_count\":180,\"summary_text\":\"Notes | Brian DeVries Notes | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Note ⬅ All Notes reply This is my first note! I'm hoping to use notes on this website to post fleeting thoughts and ideas rather than waiting to have time to write full posts. I've been reflecting on how I have a lot of hobbies and interests. It's difficult for me to &quot;pick a lane&quot; so to speak. I end up spending money to get all set up with a new interest, only to jump ship after completing the one project I had in mind. This isn't always the case, but it's happened more times than I care to admit 😅 A couple interests have been constants though: woodworking and programming. I'm not necessarily going to stop expanding my interests and trying new things, but it's good to know what I consis\",\"classification_terms\":[\"notes/20250104150300\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/work-history/\",\"status\":200,\"title\":\"Work Experience | Brian DeVries\",\"word_count\":712,\"summary_text\":\"Work Experience | Brian DeVries Work Experience | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Work Experience Software Engineer Meijer - Walker, MI August 2023 - Present Responsibilities Design, code, test, and implement Azure-based and on-premise systems Perform unit tests, monitor results, and take required corrective actions as needed Work within the SAFe Agile framework and utilize CI/CD best practices Assist product owners in systems analysis and creation or updating of documentation for all business processes Implement new application authentication method on internal web applications Enable merchandisers at Meijer through web interfaces and data flow Application Developer Life Storage (now Extra Space) - Remote to Buffalo, NY August 2021 - July 2023 Internal Web Applicati\",\"classification_terms\":[\"work-history\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/projects/\",\"status\":200,\"title\":\"Projects | Brian DeVries\",\"word_count\":188,\"summary_text\":\"Projects | Brian DeVries Projects | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Projects brianjdevries.com August 2020 - Present Demo (source) Summary This is my personal website. It's a constant work in progress, but I enjoy trying new things with it! I also write occasionally on my blog. Tech Built using Eleventy, a simpler static site generator Deployed on Netlify Topple May 2020 - August 2021 Demo (source) Summary I have student debt and wanted to create a way to plan and track my progress paying it off. Most other solutions only create a projection, but I'm working to make an app that keeps up with you. Tech Implemented Frontend with Vue (including Vuex and Vue-router) Code base written primarily with Typescript Plotly.js package for charts Tailwind CSS used for styl\",\"classification_terms\":[\"projects\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/search/\",\"status\":200,\"title\":\"Search | Brian DeVries\",\"word_count\":40,\"summary_text\":\"Search | Brian DeVries Search | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Search window.addEventListener('DOMContentLoaded', (event) => { new PagefindUI({ element: \\\"#search\\\", showSubResults: true, showImages: false }); }); Now &#8226; Contact &#8226; Style Guide &#8226; Supporters Support Me on Ko-fi\",\"classification_terms\":[\"search\",\"about\",\"contact\",\"support\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":2},{\"path\":\"/blog/cold-showers-and-habit-building/\",\"status\":200,\"title\":\"Cold Showers and Habit Building | Brian DeVries\",\"word_count\":840,\"summary_text\":\"Cold Showers and Habit Building | Brian DeVries Cold Showers and Habit Building | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon Cold Showers and Habit Building September 28, 2020 For over 2 months now, I've been turning the water to its coldest setting for 1 minute at the end of my shower. What started as a desire to build resilience has taught me valuable lessons about building habits and consistency. Start Small When I first started my cold shower endeavor, I felt ready to go to the max. I thought, &quot;Why not prove that I'm super tough already and can do 1 minute of cold right away?&quot; But I had tried to do cold showers before. And, you guessed it, I didn't stick with it for more than a week. I wanted this time around to be different. I found an app by a guy named Wim Hof who is known for\",\"classification_terms\":[\"blog/cold-showers-and-habit-building\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":3},{\"path\":\"/blog/new-routine/\",\"status\":200,\"title\":\"New Routine | Brian DeVries\",\"word_count\":534,\"summary_text\":\"New Routine | Brian DeVries New Routine | Brian DeVries Skip to the content Brian DeVries HomeAboutBlogNotesNowMore... Feed icon New Routine September 15, 2020 I want to be consistently moving forward towards freedom. Financial freedom, time freedom, location freedom. It will not be without its challenges, but I think it's worthy to strive for. I need to get into a daily routine or schedule, but my second son is about to be born (my wife is getting induced TODAY). I'm not sure how that is going to affect the process quite yet. But if consistency is what I'm trying to achieve, a daily schedule/routine will help ensure that happens. Of course, Hannah and I need to be on the same page about what I want my schedule to be. My goals and routines can't be separate from her. When I change my daily routine, it affects my fami\",\"classification_terms\":[\"blog/new-routine\",\"about\",\"help\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":1,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":3}]",
        "score_reasons_json": "[\"Overall rating is now capped by evidence confidence to prevent inflated scores from thin signals.\"]",
        "route_domain": "brianjdevries.com",
        "display_domain": "brianjdevries.com"
    },
    "explainability": {
        "summary": "brianjdevries.com currently scores 14/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "High confidence",
                "tone": "good",
                "detail": "100/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "caution",
                "detail": "60/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 94/100."
            },
            {
                "label": "Reputation system",
                "points": "+13.3",
                "tone": "risk",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 39/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-63.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "41/100 · trust 16/100",
                "tone": "risk",
                "detail": "216 monthly visitors, 72 organic keywords, brand completeness 62/100, engagement 74/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "3 referring domains",
                "tone": "good",
                "detail": "3 backlinks across 3 referring domains. Diversity 94/100; spam penalty 6."
            },
            {
                "label": "Registry and domain stability",
                "value": "5.7 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 5.7 years · registrar Squarespace Domains II LLC · expires in 121 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 0/100",
                "tone": "good",
                "detail": "Primary tag Phish · safety 100/100 · fraud 0/100."
            }
        ],
        "positives": [
            "Established domain age: 5.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence.",
            "HTTPS is working, so the site clears a basic transport-security check."
        ],
        "risks": [
            "Trust score is currently very low.",
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-16 23:41:14",
                "tone": "caution",
                "detail": "Crawl and page content sample. Age: 2d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-16 23:41:08",
                "tone": "caution",
                "detail": "Registry profile and stability signals. Age: 2d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 15:10:02",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 15:10:02",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 77,
        "fraud_clamp_penalty": 63,
        "final_score": 14
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-19T15:10:02+00:00",
        "domain": "brianjdevries.com",
        "display_name": "Welcome",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 14,
        "authority_score": 41,
        "trust_score": 16,
        "safety_score": 100,
        "fraud_score": 0,
        "confidence_score": 100,
        "traffic_confidence": 60,
        "last_crawled_at": "2026-04-16 23:41:14",
        "crawl_blocked": false,
        "summary": "brianjdevries.com currently scores 14/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "High confidence",
                "tone": "good",
                "detail": "100/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "caution",
                "detail": "60/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 5.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence."
        ],
        "top_risk_signals": [
            "Trust score is currently very low.",
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-16 23:41:14",
                "tone": "caution",
                "detail": "Crawl and page content sample. Age: 2d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-16 23:41:08",
                "tone": "caution",
                "detail": "Registry profile and stability signals. Age: 2d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 15:10:02",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 15:10:02",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "Phish",
                "label": "Phishing risk",
                "tone": "scam"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-19T19:25:25+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/brianjdevries.com/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "brianjdevries.com",
        "status": "idle",
        "submitted_at": null,
        "completed_at": null,
        "last_checked_at": null,
        "last_error": "",
        "submitted_url": "https://brianjdevries.com/",
        "uuid": "",
        "result_url": "",
        "api_result_url": "",
        "visibility": "public",
        "summary": "No urlscan.io report has been requested for this domain yet.",
        "report": [],
        "report_summary": [],
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}