ArtLung Projects

I work on a lot of different stuff. Have a gander.

CSS Battles on YouTube

CSSBattle.dev challenges you to write HTML and CSS to precisely match a given geometric design. I took to this site with a vengeance and am a top 100 players.

They do more formal "battles" periodically but my favorite thing is a daily target A new target rolls out each and every day when the UTC date ticks over. Some folks enjoy a daily crossword puzzle, Wordle, or Gisnep. Me, I like a CSS Battle every day.

91%I record videos of myself writing the code to accomplish these daily challenges. So far I've covered 608 days out of 667 total.

Overall progress and links to each and every video are on the CSS Battles page.

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:

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.

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.

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

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.

The site is mostly in PHP, and I've taken some care to include unit tests with PHPUnit and maintain code quality using PHPCodeSniffer. Large websites are no different than any complicated piece of software and as such deserve care and handling to avoid technical debt. Ido not have a degree in computer science. But as a journeyman programmer who has worked on just about any kind of website that exists I have learned some terrific SDLC practices to maintain code quality and stability.

Smorgasborg

This is similar to the Lab, but for stranger, goofier, and (mostly) non-technical items which I have found useful on the internet.

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:

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 matuzo.at - HTML, CSS and accesibility.

The site maintained with Eleventy and hosted on Netlify.

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 , or click below to load another at random.

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 is available on GitHub: artlung/artlung-tilde-club .

Elsewise

Take a visit down memory lane: Prior Projects