Updated June 27, 2025
Welcome. I'm Joe Crawford. I love the web. I live in San Diego, California.
Links to me on other websites, my email address, my phone number, ways to get in touch, are here.
Everybody's carrying around a web browser in their pocket. _Go make a web page!_
And, no, fooling, please sign my guestbook. You _were_ here.
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.
* CSSBattle for JUNE 27 (2025)
* CSSBattle for JUNE 26 (2025)
* CSSBattle for JUNE 25 (2025)
* CSSBattle for JUNE 24 (2025)
* CSSBattle for JUNE 23 (2025)
_artlung.com/cssbattles/_
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 now know peace. #affirmation
(2025-06-27)
* I am enough. #affirmation
(2025-06-26)
* I forgive myself. #affirmation
(2025-06-25)
* Because my higher power has removed from me every single defect of character, I am useful to my higher power and my fellows. #affirmation
(2025-06-24)
* Today I will take care of me #affirmation
(2025-06-23)
* Criticism never changes a thing. #affirmation
(2025-06-22)
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)
_artlung.com/comics/_
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 #031 _in 3 days_
* Front End Study Hall #030 _Jun 17, 2025_
* Front End Study Hall #029 _Jun 3, 2025_
* Front End Study Hall #028 _May 20, 2025_
* Front End Study Hall #027 _May 8, 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.
* WML, WAP, & Microformats Demo (2025-06-18)
* Kanban Task Board in CSS Grid (2025-06-04)
* Ventcheck, a Twitter bot (2025-05-16)
* Safari Mailto Converter (2025-05-15)
* Mid-air footer (2025-03-06)
* Gettysburg Address in HTML. Interactive. (2025-02-21)
* Spoiler Widget (2025-02-12)
* Keystroke to Go to Random Web Page (2024-12-23)
_lab.artlung.com_
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.
* Yesterday at the #IndieWeb HWC Zoom @benji shared a terrific #accessibility checking bookmarklet from Toronto Metropolitan University: https://sa11y.netlify.app/bookmarklet/ #a11y #webDev
(2025-06-27)
* Join us for an #IndieWeb Create Day on July 5, 2025! Hang out virtually in the Zoom and in the chat--work on your personal website, write, share ideas, code, get inspired! https://events.indieweb.org/2025/07/indieweb-create-day-3q2PTCbGioi9
Questions? @ me.
(2025-06-26)
* Made the correct call and went back to bed for a bit.
(2025-06-26)
* I think we're going to find out if an Overton window can be a loop.
NYC voters, I love you. Democratic Socialists, rock on.
(2025-06-25)
* "GIFs, seriously" ~ wherein I talk about GIFs a bit! https://artlung.com/blog/2025/06/25/gifs-seriously/
#geocities #gif #indieweb
...and shout out to @voidmstr
(2025-06-25)
* My girlfriend and I were watching a video describing a website containing a single personâs obsessions documented on their website. The video described that person as âan old man of the internet.â My girlfriend then poked me, saying âthatâs you babe!â
âYes.â I replied.
(2025-06-25)
Smorgasborg
-----------
This is similar to the Lab, but for stranger, goofier, and (mostly) non-technical items which I have found useful on the internet.
* Maarva Andor Has A Posse (2025-04-26)
* IndieWeb Sickos (2025-04-10)
* Guru Meditation (2025-03-15)
* This Man Wants To Clean Your Clothes (Velvet Touch Dry Cleaners & Laundry) Pacific Beach, San Diego California (2025-02-23)
* Illinois State of the State Address, 2025 by Governor J.B. Pritzker (2025-02-19)
* Good Words (2025-02-12)
* Giant Woman (2025-01-27)
* All the Foods I Cannot Eat by Leoh Blooms (2025-01-08)
_smorgasborg.artlung.com_
Likes
-----
Links which I _Like_, recently (RSS). Many of which I have sent webmentions to.
* Joe Crawford liked: Lessons in tech-heresy in the AI Age by Ruslan Osipov :
> It happens when we start treating AI as an infallible oracle rather than the powerful, deeply flawed, and sometimes an outright weird tool. The threats arenât science fiction anymore; theyâre the real-world risks of algorithmic biases getting baked into government policies, a complete lack of accountability when things go wrong, and the potential for some truly catastrophic, unexplainable errors.
(2025-06-27)
* Joe Crawford liked: Generative AI as a Magic System by Tracy Durnell (2025-06-27)
* Joe Crawford liked: Take Two: An Infinite Series by Ross A. Baker (2025-06-27)
* Joe Crawford liked: Webmentions: Exchange data between websites by Christian (2025-06-26)
* Joe Crawford liked: Old School Webcam by Mark Sutherland :
> Using a 1980s camcorder as a webcam in 2023. It works!
(2025-06-26)
* Joe Crawford liked: Hatch a Plan by Todd Presta (2025-06-26)
_artlung.com/likes/_
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:_
* Email from Glitch (2025-06-27)
* GIFs, Seriously. (2025-06-25)
* âTake Twoâ as in Television Production (2025-06-21)
* Turtle! (2025-06-16)
* Pass along music (2025-06-16)
* Put âromanceâ on the shopping list (2025-06-16)
* Facebook Messenger! (2025-06-15)
* Saturday at OB (2025-06-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
Tag Cloud
Blog of the .Day
----------------
Blog of the .Day was created by James. I am now its steward. Every day, a different user-submitted blog is highlighted at random.
Do you have a blog? Blog of the day is on GitHub: artlung/blogofthe.day. If GitHub pull requests and editing JSON intimidate you, know that there are other ways to submit your indie blog.
The blog of the day is alexsirac.com - A French and English blog that's not about tech..
The site maintained with Eleventy and hosted on Netlify.
Tilde Club & HTML 2.0
---------------------
tilde.club/~artlung/ is "retro." It is a single page site. I assure that the code validates to the HTML 2.0 DOCTYPE. That means `CLASS` or `ID` attributes are not allowed. That deprecated 1990s version of HTML still allows for a readable, fairly attractive page. That code is available on GitHub: artlung/artlung-tilde-club .
Blog Headers (2000â)
For as long as I've been blogging I've been making visually distinct blog headers out of my own photos, drawings, typography, quotes, and other artwork. 800x600 pixel wide CRT screens were the norm when I started making these using image-and-table sliced layouts. I have kept and adapted them for the modern web and in so doing sharpened my skills in CSS. View all the headers _over here_ .
Toy Robots _a collection_
-------------------------
1. Maria Robot (1927)
2. Elektro the Moto-Man (1939)
3. Robbie the Dog Robot (1944)
4. Gort (1951)
5. Astro Boy (1952)
6. Astro Boy (blasting) (1952)
7. Astro Boy (visible) (1952)
8. Super Space Giant (mini replica) (1955)
9. Robby the Robot (1956)
10. Gigantor (aka) Tetsujin 28 (1956)
11. Alicia (1959)
12. Rosie the Robot Maid (Jetsons) (1962)
13. Robot "B-9" aka M3-B9 G.U.N.T.E.R. (1965)
14. Sentinel (1965)
15. Super-Adaptoid (1966)
16. Rock 'Em Sock 'Em Robot: Blue Bomber (1966)
17. Rock 'Em Sock 'Em Robot: Red Rocker (1966)
18. Giant Robo (1967)
19. Giant Robo (small) (1967)
20. GR2 (Torozon) (1967)
21. Red Tornado (1968)
22. King Joe (1968)
23. Space Robot (Number 902) (1968\*)
24. Claw (Ding-A-Ling) (1970\*)
25. Kikaider (1972)
26. Aphrodite A (1972)
27. Aphrodite A (mini) (1972)
28. Doublas M2 (1972)
29. Mazinger Z (1972)
30. Mazinger Z (gashopon) (1972)
31. Dewey (1972)
32. Huey (1972)
33. Louie (1972)
34. Doraemon robot cat (1973)
35. Jet Jaguar Super7 (1973)
36. Jet Jaguar Vinyl (1973)
37. Jet Jaguar Vinyl Glow (1973)
38. Analyzer Unit 09 (1974)
39. Robo Gari (ăăăŹăȘ) (1974)
40. Robocon (1974)
41. Getter 1 (1974)
42. Getter 3 (1974)
43. Getter Dragon (1974)
44. Getter Liger (1974)
45. Getter Poseidon (Shogun Warriors) (1974)
46. Getter Poseidon (small die cast) (1974)
47. Getter Poseidon (sofubi) (1974)
48. Getter Robo (1974)
49. Getter Robo (Superdeformed) (1974)
50. Getter Robo 1 Pink Edition (1974)
51. Mechagodzilla (1974)
52. Mechagodzilla (Superdeformed) (1974)
53. Great Mazinger (1974)
54. Venus A (1974)
55. Diana A (1975)
56. Raideen aka Brave Raideen aka Raydeen (superdeformed) (1975)
57. UFO Grendizer aka UFO Robot Grendizer (1975)
58. ZnDc Missler "Zinc Diecast" (year approximated) (1975)
59. Combattler (ChĆdenji Robo Combattler V) (1976)
60. Combattler (gashopon) (1976)
61. Daikƫ Maryƫ aka Kargosaur (1976)
62. Gaiking (1976)
63. Fembot (1976)
64. Dynomutt (1976)
65. Daiapolon (1976)
66. Gamerot (ăŹăĄăăă) (1976)
67. Manhunter (1977)
68. K-9 (1977)
69. Mekanda aka Mechander Robo (1977)
70. Machine Man (Marvel) (1977)
71. C-3PO (Threepio) (1977)
72. Gonk (1977)
73. R2-D2 (1977)
74. Voltes V (Super Electromagnetic Machine Voltes V Mini Action Series) (1977)
75. Voltes V (chibi) (1977)
76. Voltes V (vinyl) (1977)
77. Zambot 3 (1977)
78. Cylon Centurion (1978)
79. Cylon Centurion (Funko Mini) (1978)
80. Muffit II (a Dagget) (1978)
81. Muffit II (a Dagget) (second copy) (1978)
82. H.E.R.B.I.E. (Humanoid Experimental Robot, B-type, Integrated Electronics) (1978)
83. H.E.R.B.I.E. (larger) (1978)
84. Leopardon (1978)
85. Pocket Bot (1978)
86. Daimos (1978)
87. Ash (1979)
88. Maximillian (Black Hole) (1979)
89. Maximillian (Black Hole) (super 7) (1979)
90. Old B.O.B. (1979)
91. Old B.O.B. (super 7) (1979)
92. V.I.N.CENT (1979)
93. V.I.N.CENT (super 7) (1979)
94. Twiki (1979)
95. Robot Spirits RX-75-4 Guntank (1979)
96. DaiDenzin (ăă€ăăłăžăł) (1980)
97. IG-88 (1980)
98. Medical Droid 2-1B (1980)
99. Postler (ăăčăăŒă©ăŒ) (1981)
100. KITT (1982)
101. Dairugger XV (1982)
102. GC-09 Metal Robo 55 (1983)
103. AFC Blinks (1984)
104. Cy-Kill (1984)
105. Vulgar the Destroyer (1984)
106. Egg bot (1984)
107. Mouser (Mobile Offensive Underground Search Excavation and Retrieval Sentries) (1984)
108. T-800 Terminator (1984)
109. T-800 Terminator ("Carl") (1984)
110. Bumblebee (1984)
111. Roll Bot (1985)
112. R.O.B. (Robotic Operating Buddy) (also in Smash Brothers) (1985)
113. Fugitoid (1985)
114. Bishop (pull apart) (1986)
115. Conky 2000 (1986)
116. Arcee (1986)
117. ED-209 (1987)
118. Data (Star Trek:The Next Generation) (1987)
119. R-24 (Captain Rex) (1987)
120. Chromedome (1987)
121. SpotBot (1988)
122. Lore (1989)
123. Blaster T-1000 (1991)
124. T-1000 Terminator (1991)
125. MOGUERA (1994)
126. Transformers Dreadwing (G2) (Decepticon) (1994)
127. Transformers Smokescreen (G2) (Decepticon) (1994)
128. Preston (Cyber-Dog) (1995)
129. Rusty The Boy Robot (1995)
130. Rusty The Boy Robot (wheels) (1995)
131. The Big Guy (1995)
132. Fembot (1997)
133. Sojourner Rover (1997)
134. ASP-704 (1997)
135. Integalactic Robot (1998)
136. Big-O (1999)
137. Bender (1999)
138. Robot Santa (1999)
139. Iron Giant (1999)
140. Iron Giant (machinder edition) (1999)
141. Evila (1999)
142. Pit Droid (DUM-series) (1999)
143. Pneuman (1999)
144. ASIMO (Advanced Step in Innovative Mobility) (2000)
145. Gekkoku 2 (æć
æ© ćŒć· Gekkoki No. 2) (2000)
146. Little Green Bot from Swap Meet (2000\*)
147. Teddy (2001)
148. Roberto (2001)
149. Gir (2001)
150. Super Optimus Prime (Super Mode) (2001)
151. Robo-Chi (Orange Bear) (2002)
152. Spongebob Robot (2002)
153. B.E.N. (Bio Electronic Navigator) (2002)
154. Six (2004)
155. Kikkerland Awika Wind Up (2004)
156. Marvin the Paranoid Android (2005)
157. B2 Super Battle Droid (2005)
158. Imperializer (2006)
159. Scar (Cylon) (2007)
160. Superman's Robot at Fortress of Solitude (2007)
161. Hexbug Ant (Green) (2007)
162. Kikkerland Le Pinch Windup Toy (green) (2007)
163. Kikkerland Le Pinch Windup Toy (yellow) (2007)
164. Mom (Grace Hargreeves) (2007)
165. Plex (2007)
166. Dermot Joshua Gramo (DJ Gramo) (2008)
167. Sketchbot (2008)
168. EVE (Extraterrestrial Vegetation Evaluator) (2008)
169. Wall-E (2008)
170. Josef (2009)
171. BMO (2010)
172. Robot Unicorn (2010)
173. Big Boss Robot Artist (black) (by Giant Robot) (2010)
174. Big Boss Robot Artist (purple) (by Giant Robot) (2010)
175. Schylling Tin Bot X-306 (2010)
176. Sparks (Toy Story 3) (2010)
177. Robot 18 (2010\*)
178. Kikkerland Cranky (2011)
179. Space Robot Wind-Up Party Favor "Galaxy" (2011\*)
180. Batman Robot (ăăăăăł ăăăă) (2012)
181. Robo Shark (2012)
182. Hello Bertie (2012)
183. Gundam Converge 12 RX-79\[G\] Ground Type (2013)
184. Girl Robot (2013)
185. Crimson Typhoon (2013)
186. Gipsy Danger (2013)
187. Baymax (2014)
188. Baymax (armored) (2014)
189. Baymax (green armor) (2014)
190. Bandai Chogokin Sanrio 40th Anniversary Hello Kitty (2014)
191. SP//dr (large) (2014)
192. SP//dr (with Peni Parker) (2014)
193. Vulkira (2014)
194. ROBOT-7 (2014\*)
195. BB-8 (2015)
196. Mad Baron \[(Orange) Vinyl Artist Gacha series 3 by Zollmen\] (2015)
197. Little Blue Wind Up Robot (Suzi-525) (2015\*)
198. Telephone Arms Bot (2015\*)
199. PJ Robot (2016)
200. K-2SO (2016)
201. Dr. Khal's Robot (2017)
202. JOJO Neon Blue (BB-03NB) / gorilla (2017)
203. Orpheus the Robot Wooden Mechanical Puzzle (2017\*)
204. Schylling Happy Mini Tin Robot (2018)
205. L3-37 (2018)
206. Unidentified Dark Red Bot from Wondercon (2018\*)
207. T-Nature by Teagan (2019)
208. D-O (2019)
209. iBoy (2020)
210. Perserverance (2020)
211. Vegan Bot (2021)
212. A-37 (2021)
213. E-92 (2021)
214. R6-W1CH (2021)
215. Sox (2022)
216. B2EMO (2022)
217. Mr. Peanut (2025)