Leaving the WordPress Project

I’ve decided to leave the WordPress project. Not leave being a user of WordPress. but being part of the WordPress project as a contributor.
A few years ago, there was a call for Component Maintainers, and I asked what a Component Maintainer would have to do. I never quite got an answer, other than, “You are now a component maintainer.” So, for a few years, I tried to be the Pingbacks and Trackbacks component maintainer.
There is only one problem with trying to guide a WordPress component. Someone other than you has to care. Namely, anyone guiding the project overall. I’m not a Core Committer. I’m not involved with anyone in a leadership position. So, I would periodically try to get interest, but none came. So, this week, I decided to tender my resignation. I couldn’t find anyone to tender it to, so I had to do it in chat to ask to be removed.
This is something I think of emblematic of the way the WordPress project has worked for me. You can open a ticket, put a patch in, get no guidance, wait 3 years, and then be told your simple patch is being punted because no one who has commit privileges cares enough to review it. Does not really make me feel like newcomers have support. In defense of this, the project is so big and used by so many it can be easy to get lost in the shuffle.
Pingbacks and Trackbacks are a subcomponent of Comments. Comments in general have not gotten much attention of late. There hasn’t been a comment component meeting in ages, or any major feature work in this area.
But, after years of not making any progress, the other reason I’m pulling back is the direction the WordPress project is going on. For two years, the project has had development of anything not related to the Gutenberg editor pretty much frozen.
At the 2018 State of the Word, it was announced that Phase 2 would turn the Navigation menus, Widgets, and other Theme Content areas to Gutenberg blocks. Phase 3, in 2020, will focus on collaboration and workflows. and Phase 4 on multilingual sites.
I was hopeful when it was implied that the feature freeze was over and that, regardless of having a focus and a goal, other improvements could now get some energy. But, I fear after two years of Gutenberg sucking the oxygen out of everything else, that will take a long time.
I nearly resigned before, when I was contacted and told that all component maintainers should be putting their efforts toward Gutenberg or Gutenberg related matters.
So, I’ve tried Gutenberg. I’ve written some posts with it on sites. I’m not going to knock it and say that it is horrible. I think it has some positives and negatives. But it is indicative of where WordPress is going and what audience it is looking for.
I’m just hoping the project doesn’t change so much that I decide I want to stop using the software entirely. I’ve invested a lot in extending WordPress. But I can’t try to be involved in that direction when it is not the way I want to go.

Using the Last Seen Function in Simple Location

One of the features in Simple Location that doesn’t get much notice is the Last Seen functionality.
Simple Location adds a section to your WordPress user profile called Last Reported Location. It allows you to set the last reported location for a given user.  It reports latitude, longitude, altitude, and whether or not the location is public, private, or protected.
In the Simple Location Settings, you can set this to update each time you publish a post if the location isn’t set as private. So it would reflect the last post you made.
This feature can be used in one of two ways. You can add the Last Seen Widget to your page and display the last place you were seen. Alternatively, this can work in reverse. You can set it so your posts will set post location from the last seen location of the author.
But, what use is that if the only way a to update the Last Seen setting is to set it from a post(creating an endless loop) or to set it manually? If you always want to always set a default location, this can be an option.
However, that doesn’t work for me. So, I built a way to update your location from an outside service.
First, you need an IndieAuth token. If you installed the IndieAuth plugin, you can get one manually under Users->Manage Token.

curl -i -H 'Authorization: Bearer FAKETOKEN' -d "latitude=30&longitude=-115&visibility=public" "https://www.example.com/wp-json/sloc_geo/1.0/user"

Here is an example of updating your location via a curl command line command. It figures out which user based on the user of the token you created.
The parameters currently used are latitude, longitude, altitude(will be automatically derived if not present), and visibility(public, private, protected).
If you are successful, it will return ‘Updated’ and automatically lookup the name of the location you are at.
So, what can you do with this feature? Keeping in mind the day, though I call today Tuesday…Let’s say hypothetically you are in the package delivery business and you want to share your location with the people who are eagerly awaiting your deliveries. You could use this to send your location from your phone to your website to keep the display updated.
Alternatively, if you don’t trust the browser on your computer to know where you are, you could rig up a shortcut on your phone to update the location so it would be accurate if you post, for example on Android with Tasker.
There is more that is needed to enhance this feature. On my list for future is Geofencing…the idea of zones inside which the location would either be set to private or display a generic ‘Home’ or ‘Work’ etc. I already have the code to calculate this, but haven’t figured out how the UI would look. This would allow much more granular controls than the global privacy default.

Simple Location Version 3.5.0 Released

Version 3.5.0 of my location plugin, Simple Location, is now out(forgot to push a fix and had to release 3.5.1 as well). Simple Location is, as time goes on, anything but Simple. It is all about location, including the weather at your location. It adds this to posts, and offers several simple widgets to show current weather and current location on the homescreen.
The new version completely redesigns the interface inside the post editor to work in both classic and Gutenberg. It doesn’t integrate with Gutenberg in any way. It relies on Gutenberg’s compatibility functionality. Because of that, the box with the Gutenberg settings is now in the sidebar, rather than below, and expands to show the various options.
The interfaces with weather APIs like DarkSky and OpenWeatherMap were reorganized to improve the quality of the return data. And all data will be stored going forward in international units. While I am a Fahrenheit and Feet user, most of the world isn’t. So everything will be converted on the fly for display for those of us in the imperial system, making it much less fragile. Flip a setting and it changes.
Simple Location uses the WordPress REST API, and there are new endpoints for frontend use. The geocoding endpoint now has an option to return the weather as part of the lookup instead of requiring a second request. New abilities to lookup by airport code are also built in, mostly for the current conditions widgets. This will be fully functional in a future version.
For those of you worried about hitting or being charged for API usage on commercial sites, I added a simple weather provider courtesy of the U.S. National Weather Service. This will only work with locations inside the United States. It finds the nearest NWS Weather Station to you and uses the current conditions from that location.
There is a new Weather Station widget, split from the other Weather Widget, which allows you to display from a specific station.
There are a lot of good features here, but there will be more in future. So try it out.

Parkeology Challenge November 2018

On Wednesday, November 28th, I participated in the Parkeology Challenge. It is a marathon of sorts where you try to ride every ride at Walt Disney World in a single day. That is 4 different parks, and 49 rides…although only 46 were in the challenge this week due long-term closures. You can only use things available to the average guest.
In order for the people who run Parkeology to certify the results, you have to provide a Twitter record of same. That was handled by one of my four teammates, but I kept a recording on my site of all of the locations I was in. This would be my timeline for the day. The pictures are backed up from the original challenge.
To see the individual posts, you can click here.

It was a day I can honestly say I will not soon forget.

Challengers Meetup at end of Night

Parkeology Challenge 2018 in Brief


To all the awesome teams that ran the @Parkeology today we offer a huge congratulations! It was freezing, rides broke down, hours were lost and you still crushed it! Thanks, we look forward to seeing you again soon!” via Twitter.
A few facts

  •  The Park Operating Hours for the Day Determines Difficulty. Less than 18 hours is considered Expert.
  • The last completion of the challenge was August 18th, though there have been many attempts since.
  • Over 39,000 steps
  • Over 17 miles of walking
  • The numbers above are based on my phone. My watch actually has a higher number.
  • There were 10 teams competing that day. Only one other team had 4 people on it.
  • The range of completed rides were 11-42. The other 4 person team got 42.
  • 6 Teams Completed the 3 Parks We Did. It seems like a lot of people were looking to complete on that day, which is a rarity.

 

Syndication Links 4.0.0 Released

Today, from my hotel room in Berlin, Germany, where I am preparing to attend Indiewebcamp Berlin, my first European Indiewebcamp, I released Syndication Links 4.0.0.
The major version number change is because in this version, Syndication Links takes on a new role. As promised previously, I’ve built new syndication code and added supported for Bridgy and Indienews, which both uses Webmentions to trigger a syndication action. This is disabled by default.
As my first live use outside of testing, I’m using the plugin to send this post to Indienews and Twitter(via Bridgy).
The new code adds the concept of a syndication provider, which, when registered, adds the provider as a syndication target for Micropub clients as well as adds it to the WordPress classic editor as a series of checkboxes, er postone for each service.
The Bridgy Publish plugin I announced deprecation on had additional options on a per post and a global level. While the global settings will be coming back in a future version, I likely will not bring back the per-post settings.
Instead, I’d like to add more intelligence behind these decisions, based on other properties of the post. A checkbox is all you should need. The same with auto-syndication. If you decide you want everything to go to Twitter or some site, it shouldn’t check the box…there shouldn’t be a box at all. It should just go, even if there are some more parameters to make that decision…type of post, etc.
So, you are either all in, or in on a per post basis.
I look forward to feedback. This is only the beginning. I hope to do what I did for displaying syndication links, and interface with existing plugins in addition to writing my own integrations.

Announced My Website Version 3.0

Back in April, I announced Version 2.0 of this website, since I relaunched it. Now I announce Version 3.0. I wrote the code again, which continues to be a learning experience.

But in order to finish it, I needed to bring it live, so I could test out the various options I’m experimenting with. There is a lot similar to the previous edition. For now, the links to various syndication and communications methods, as well as a search box, are shared on the menu bar with the various ways to filter content.

In addition to Articles, longer form text like this, you can see the types of notes I’ve been filing. There is still more to do to clean that up. A lot of it is based on a custom plugin for WordPress I wrote to add Likes, Replies, and other common conventions, as well as the necessary markup for them. My development of this site and its plugins is why I now have the Github link to that work.

The site is continuing to iterate, and I’m continuing to learn. In the meantime, comments are appreciated. I have more to do. Writing pieces like this is aspirational.

  • Such as bring back the syndication links on individual posts, which involves rewriting that, which is another plugin
  • I have two other options coded for a banner image to test
  • The Bio on the Sidebar is still part of a bunch of behind the scenes development I want to do

 


Screenshot from 2014-09-06 23:49:10

 

And all of this…and I haven’t actually been writing much. Oh, well.