Programming

My Homebrew CMS Was Co-Authored by Cthulhu

I publish this blog and seven other sites with Wordzilla, a CMS I wrote for myself and have never released. I began it 20 years ago and the PHP codebase is best examined in small doses because to look upon its full extent would bring a descent into madness worthy of Yog-Shoggoth. There's a spaghetti of half-implemented features, integrations with long-dead blogging services and random one-off solutions to ancient problems like the spammer from China whose IP block is still banned from ... (read more)

The Hardest Thing About Creating Atom Was Naming It

My RSS Advisory Board blog post marking 20 years of Atom includes an expression I learned during that project's boundless debate among a hundred people about what to name the format. An issue so simple that everyone feels comfortable voicing an opinion is a "bike shed discussion," and the length of discussion will be inversely proportional to its importance. The phrase was popularized by an email from developer Poul-Henning Kamp to a FreeBSD mailing list in 1999. He got it from a 1960s book ... (read more)

What Do I Think of the Pie?

With all the attention the RSS Advisory Board has been getting lately, I've been doing some work on the site, primarily to make it look better on mobile. I also wrote a tutorial on how to read RSS with PHP using SimplePie. For years my sites have used another library called Magpie to do the same thing, which made me wonder why people keep naming RSS libraries after pie. SimplePie co-creator Ryan Parman explained this on his blog: SimplePie is an amalgamation of the phrase "Simple API for Magpie ... (read more)

Fixing 'Call to Undefined Function' Filter_Var() in PHP

I host a lot of websites in the Amazon cloud on EC2. I recently discovered that all email one site was sending was being rated as spam and never seen by the recipient. This meant that new users didn't get the verification email required to complete signup. It appears that EC2 IP addresses can have a dodgy reputation among email providers. Another web publisher described these problems on AWS Developer Forums. Since then I've been rewriting my code to deliver emails with SendGrid, a service ... (read more)

Working from Home? Welcome to My World

Jake Savin has a blog post up about working from home, something he began doing as a developer at UserLand Software in 2000 coding the blogging platform Manila and other products. Though it wasn't a remote position when he began the job, that soon changed: The company actually had an office when I was hired, and I had my own space with a desk and a door, a desktop computer, etc. There were only two of us in the office though, and it quickly became clear to me that the value of driving 35-40 ... (read more)

I'm a ServiceNow Certified Application Developer

I passed the ServiceNow certified application developer test today at the University of Florida after taking the official training course for three days last week. It's a closed-book 90-minute, 60-question test that requires 70% to pass and doesn't reveal your score or the answers you missed. I've been writing custom applications and integrations using JavaScript in the ServiceNow cloud for three years, so I was ready to take the test. But even so, a few questions had me sweating like Albert ... (read more)

I'm a ServiceNow Certified System Administrator

I just passed the test to become a ServiceNow Certified System Administrator. I'm in classes this week to take the test for developer certification next. Certifications are a big deal in the ServiceNow world. I'm in my third year programming on the cloud platform but certification hasn't been a priority. I've been at a startup developing products, which is less about marketing yourself and more about marketing those applications. But I've always wanted to seek certification, so I paid for the ... (read more)

Getting Started with OpenFuego News Bot

OpenFuego is an open source bot from the Nieman Journalism Lab that curates a news feed using 10-15 Twitter users in a desired topic area. The people those users follow are monitored to determine the links that are most interesting to them and a database is created that can be a backend for other sites and services. The software powers Fuego, a web site and Twitter feed of journalism-related links. I want to run a Twitter bot that shares new software and programming links. Today I downloaded ... (read more)

We Have Always Been at War with Comment Spammers

This site continues to get 10-30 comment spams a day, along with the occasional comment to an old post that makes it worthwhile to continue offering the opportunity for reader feedback. I'm thinking about switching to a comment form in which the only way to add bold, italics and links is to use buttons that add the formatting in a markup scheme that nobody else on the planet uses. Comments that use HTML or Markdown would be rejected. Coming up with oddball and ultimately futile anti-spam ... (read more)

Welcome, Readers of the Future

I'm working on the next edition of Sams' Teach Yourself Java in 24 Hours. Java 9 has a new HTTP client package, jdk.incubator.http, that makes it a lot easier to GET and POST to web servers and other software that communicates over HTTP. For a demo, I needed a simple server that could take POST requests and do something with them without requiring a user login. I was about to write one when I realized I already had. This blog takes comments submitted over POST. When the book comes out, I'll be ... (read more)