Welcome. I'm Joe Crawford. I love the web. I live in San Diego, California.
Everybody's carrying around a web browser in their pocket. Go make a web page!
Find out more about me: artlung.com/about. And sign my guestbook. Only if you were here.
ART, TOYS, PROJECTS
Projects of mine: artlung.com/projects
Clicky fun toy interactive things: artlung.com/toys and the Weird Web October 2025 collection is where some of those came from. You ought to go make a web page!
Art I've put into the world to show people: artlung.com/art
I have a Now page to encapsulate what's new and now and present tense.
I've updated my resume/CV: artlung.com/cv
My statement on how I use or don't use "AI"
How is this site made? See the colophon
I'm everywhere, I'm everywhere. Or rather, artlung.com/elsewhere
There are thousands of urls on this site. More than ten thousand. artlung.com/site-index
Blogging
I'm a blogger. artlung.com/blog (RSS Feed), I appreciate the power of a blog. Blogging has inspired books and movies. Blogging has brought people tv careers, political power. Blogging got me on the radio, twice. It also has connected me with people who became life-long friends.
Some recent posts:
- Senior Yearbook Photo (2026-01-17)
- Waveride (2026-01-07)
- New Year; New Site; New Finger (2026-01-03)
- A new kind of scam spam: let me use your US Upwork account and take a cut (2025-12-19)
- Memories of Blogger Getting Bought (2025-12-17)
- Feckless and Useless and Totalitarian and Liars (2025-12-17)
- LIFE HAPPENS (an incredible talk on open source maintaining) (2025-12-15)
- IndieWeb Camp San Diego 2025: Typewritten Checkin! (2025-12-14)
Blog Archives
- 2001
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2002
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2003
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2004
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2005
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2006
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2007
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2008
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2009
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2010
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2011
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2012
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2013
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2014
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2015
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2016
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2017
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2018
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2019
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2020
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2021
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2022
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2023
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2024
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2025
- 01 02 03 04 05 06 07 08 09 10 11 12
- 2026
- 01 02 03 04 05 06 07 08 09 10 11 12
Tag Cloud
CSS Battles on YouTube
Want to watch me write code to do the daily targets on CSSBattle.dev ? You are in luck. And I wrote about it: 110 Hours of CSS Battle.
Here are the latest battles I've recorded.
Affirmations Bot
I've experimented with several social media bots over the years. The latest is Affirmations Bot and it sends out affirmations daily to Mastodon (RSS Feed) and Bluesky. I've collected many over the years from support groups, books, and some I've written myself.
Recently posted affirmations:
I am in charge of my life. #affirmations
(2026-01-18)All that I am is all that has happened to me. #affirmations
(2026-01-17)I make my choices based on my needs. #affirmations
(2026-01-16)I will not be intimidated for me. #affirmations
(2026-01-15)Remember that recovery is a process; sometimes you will falter, slip into old, unhealthy behaviors, or fall back into self-destructive patterns. #affirmations
(2026-01-14)I will seek out friends today. #affirmations
(2026-01-13)
The IndieWeb blog carnival I hosted on the theme of affirmations in February 2025 had excellent participation. Read more blogs!
Comics
I've always drawn, but I've only been making comics for the web for a few years. I find it really satisfying to start with an idea and follow it through to completion.
- “USE IT.” (2025-01-24)
- I hate billionaire Nazis. (2025-01-22)
- “spite swimming | sanity swimming” (one-sheet) (2024-11-25)
- “Our Lady of the Cloud” (2024-11-19)
- “Once upon a time… in Aztlán” (2024-11-15)
- “SILENCE” (2024-11-13)
- “ALTERNATIVE FUTURES” (2024-11-13)
- Surrounded. Diary #webcomic (2023-07-31)
- “GEMINI” (2023-06-21)
- spite swimming | sanity swimming (2022 – 2023) (2023-06-17)
Reels
Front End Study Hall
I host an open forum for learning CSS & HTML called Front End Study Hall under the aegis of the IndieWeb. If CSS and HTML are of interest to you, and you like to explore and learn and experiment, you are welcome to join us. Meetings are held on Zoom.
- Front End Study Hall #045 in 11 days
- Front End Study Hall #044 Jan 15, 2026
- Front End Study Hall #043 Dec 30, 2025
- Front End Study Hall #042 Dec 11, 2025
- Front End Study Hall #041 Nov 25, 2025
View my IndieWeb profile which is mirrored here.
WordPress
I've used WordPress since it was b2. Much of this site—but not this page—is powered by WordPress using a custom theme and plugins that I've written. In 2010 I created a plugin—Open Graph Protocol Tools—still in the WordPress plugin repository. I've enjoyed every WordPress win and suffered every WordPress indignity. I've debugged shortcodes, worked with child themes, used Multisite. Woocommerce, and created themes from scratch. I've been gratified to help people migrate from Blogger FTP to WordPress, and Import Instagram photos to WordPress. And I've tackled the nastiest malware infestations and fixed the most tedious Mojibake problems. Many people dislike WordPress. I like it. (Also, the WordPress CLI is among my favorite development tools).
ArtLung Lab
The Lab started as a part of this website. I post experiments in web programming there. Here are the latest.
Ever since I've had a web page I have tinkered with HTML. The Lab lab.artlung.com (RSS Feed) collects experiments and explainers I've made over the years. The source code for the site is available on GitHub: artlung/lab.artlung.com. When I learn something new or find some interesting oddity about the web, I will create a page for it on the lab. I left it fallow for many years but returned to it with a passion in 2024.
- Bookmarklet Pattern (2025-10-26)
- Upside Down Web Page Bookmarklet (2025-10-13)
- Squish Stretch Bookmarklet (2025-10-05)
- IndieWeb.org Webmention Bookmarklet (2025-09-26)
- Slideorama Pinwheels (2025-07-17)
- WML, WAP, & Microformats Demo (2025-06-18)
- Kanban Task Board in CSS Grid (2025-06-04)
- Ventcheck, a Twitter bot (2025-05-16)
Social Media
I'm active on a few different platforms. Lately I'm posting more to Mastodon and Bluesky and less on Instagram. I was once a very active user of Twitter (now X), but avoid it now. More links here.
Here are a few recent posts from Mastodon.
I got to look at the yearbook for my senior year in high school and so I wrote about my feelings about the entry for me. https://artlung.com/blog/2026/01/17/senior-yearbook-photo/
(2026-01-17)Is there a bad time to listen to Ana Tijoux's 1977? No. https://www.youtube.com/watch?v=yiQ7S38nKog
(2026-01-15)Battle of Minnesota.
Battle of Minneapolis.In a rational United States these would sound like jokes.
I’m not laughing.
(2026-01-15)Based on conversations about white space entities today with @reillypascal during the Eastern #IndieWeb meetup I created a CodePen to explore some of them. If you know of more, holler and I'll update. https://codepen.io/artlung/pen/ByzpzWB
(2026-01-15)“ABOLISH ICE” is the moderate position when the institution is an ongoing health danger to folks in the USA.
(2026-01-14)It's an excellent day to remember the time when Scott Adams met Metafilter and learned zero things from it. https://mefiwiki.com/wiki/Scott_Adams,_plannedchaos
(2026-01-13)
Bodysurfing
I love the water. I try to ride waves as daily as possible year round. Some weeks it's six sessions, and some weeks two.