Last Updated: March 23rd, 2026 at 4:52:49 PM GMT+9 Today is: Monday, March 23, 2026
Bilingual IT consultant in Japan since 1987. Based in Yokohama, working in Tokyo.
I came to Japan in 1987 as a research student at the University of Tokyo. Programming turned out to be far more interesting than animal experiments, so I pivoted to tech.
My first job (around 1989) was at a telephone card ("teleca") design company, where I built and ran the office network. This was right when "DOS/V" machines were taking off in Japan after IBM released the PS/2 with its kanji processing chip. A PS/2 cost around ¥2M; a DOS/V clone was maybe ¥250K. That's where my technical career started.
From there I moved to a network support company doing helpdesk, user support, and network engineering. In 1993 I co-founded a PC training company, serving as CIO and building the technology operations side from scratch.
In the summer of 1999 I founded eSolia Inc., my current firm. We've been providing bilingual IT outsourcing and infrastructure services to international companies in Tokyo for over 26 years, and are working on ISO 27001 implementation.
Building web applications in TypeScript with SvelteKit + Cloudflare Workers. Full-stack on D1 (SQLite), R2, and KV.
Projects:
- cogley.jp — Articles on tech, business, and Japan (SvelteKit + Cloudflare Workers)
- svelte.cogley.jp — Interactive migration reference: React/Vue/Angular to Svelte 5 (bilingual EN/JA)
- rick.cogley.jp — Profile site
- pulse.esolia.co.jp — Security & compliance management. Tracks compliance against ISO 27001, CIS Controls, and other frameworks (SvelteKit + Cloudflare Workers)
- periodic.esolia.co.jp — DNS & email security monitoring. Drift detection for DMARC/SPF/DKIM and domain security (SvelteKit + Cloudflare Workers)
- courier.esolia.co.jp — Secure file sharing with PIN protection and auto-expiry for sensitive communications (SvelteKit + Cloudflare Workers)
"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." — Robert A. Heinlein, Time Enough for Love
Working on: Centralized types in core package, scripts and rules in .github repo
Packed schedule, minimal interruptions
771 commits | 196 this week | 🔥 29-day streak
Languages: TypeScript (14) · HTML (2) · CSS (2) · Svelte (1) · Vento (1)
Active repos (15): eSolia/esolia-2025 eSolia/codex RickCogley/pub-cogley eSolia/periodic eSolia/courier and 10 more
Themes: tech japan business
Activity: 2 posts, 6 articles this week
📖 User Friendly: How the Hidden Rules of Design Are Changing the Way We Live, Work, and Play by Cliff Kuang, Robert Fabricant
- 📝 SvelteKit + Cloudflare WorkersでAIエージェント向けMarkdownを配信する tech
- 📝 SvelteKitサイト8個をVite 8に1日で移行した記録 tech
- 📝 Cloudflare PagesからWorkersへの移行ガイド(2026年版) tech
- 📝 SvelteKit移行リファレンスにWebMCPツールを実装する tech
- 📝 Svelte 5への移行:インタラクティブリファレンスガイド tech
| Type | Count |
|---|---|
| Posts | 2253 |
| Articles | 68 |
| Podcasts | 9 |
| Pages | 10 |
graph LR
subgraph "Content Creation"
A[Markdown Files] --> B[pub-cogley CMS]
C[Quick Posts] --> B
end
subgraph "pub-cogley Platform"
B --> D[(D1 Database)]
D --> E[REST API]
E --> F[api.cogley.jp]
end
subgraph "Distribution"
F --> G[cogley.jp Website]
F --> H[GitHub Profile README]
F --> I[Syndication]
end
subgraph "Syndication Targets"
I --> J[Bluesky]
I --> K[Mastodon]
I --> L[Nostr]
end
style B fill:#f9f,stroke:#333
style F fill:#bbf,stroke:#333
flowchart TD
A[New Post Created] --> B{Post Type?}
B -->|Micro| C[Short-form Content]
B -->|Article| D[Long-form Content]
B -->|Podcast| E[Audio Content]
C --> F[pub-cogley API]
D --> F
E --> F
F --> G[cogley.jp]
F --> H[Syndicate to Bluesky]
F --> I[Syndicate to Mastodon]
F --> J[Syndicate to Nostr]
F --> K[GitHub README via Lume]
style F fill:#bbf,stroke:#333
style G fill:#bfb,stroke:#333
| Item | Value |
|---|---|
| Repo Total Files | 7 |
| Repo Size in KB | 5022 |
| Lume Version | v2.5.0 |
| Deno Version | 2.7.7 (linux x86_64) |
| V8 Version | 14.6.202.9-rusty |
| Typescript Version | 5.9.2 |
| Timezone | Asia/Tokyo |
I'm generating this readme using the Lume static site generator, pulling data from my pub-cogley API. See this page for details to get your own!





