Monday, September 11th, 2017
Monday, July 17th, 2017
Sunday, July 2nd, 2017
This is a really great screencast on getting started with React. I think it works well for a few reasons:
- Sarah and Chris aren’t necessarily experts yet in React—that’s good; it means they know from experience what “gotchas” people will encounter.
- They use a practical use-case (a comment form) that’s suited to the technology.
- By doing it all in CodePen, they avoid the disheartening slog of installation and build tools—compare it to this introduction to React.
- They make mistakes. There’s so much to be learned from people sharing “Oh, I thought it would work like that, but it actually works like this.”
There’s a little bit of “here’s one I prepared earlier” but, on the whole, it’s a great step-by-step approach, and one I’ll be returning to if and when I dip my toes into React.
Tuesday, April 25th, 2017
If you’re using Disqus to power the comments on your blog, you might like to know that it’s pulling on loads of nasty tracking scripts. Bad for privacy and bad for performance.
Wednesday, August 31st, 2016
Another style guide generator that parses comments in CSS.
Thursday, May 19th, 2016
Owning my words
When I wrote a few words about progressive enhancement recently, I linked to Karolina’s great article The Web Isn’t Uniform. I was a little reluctant to link to it, not because of the content—which is great—but because of its location on Ev’s blog. I much prefer to link directly to people’s own websites (I have a hunch that those resources tend to last longer too) but I understand that Medium offers a nice low barrier to publishing.
That low barrier comes at a price. It means you have to put up with anyone and everyone weighing in with their own hot takes. The way the site works is that anyone who writes a comment on your article is effectively writing their own article—you don’t get to have any editorial control over what kind of stuff appears together with your words. There is very little in the way of community management once a piece is published.
Karolina’s piece attracted some particularly unsavoury snark—tech bros disagreeing in their brash bullying way. I linked to a few comments, leaving out the worst of the snark, but I couldn’t resist editorialising:
Ah, Medium! Where the opinions of self-entitled dudes flow like rain from the tech heavens.
I knew even when I was writing it that it was unproductive, itself a snarky remark. Two wrongs don’t make a right. But I wanted to acknowledge that not only was bad behaviour happening, but that I was seeing it, and I wasn’t ignoring it. I guess it was mostly intended for Karolina—I wanted to extend some kind of acknowledgment that the cumulative weight of those sneering drive-by reckons is a burden that no one should have to put up with.
Tempted to @-mention orgs who’s employees abuse me in comments under my posts. Then I remember about million more interesting things to do.— fantastic ms. (@fox) April 29, 2016
“Everyday, a dude goes out of their way to tell you you’re wrong. Women’s life on the Internet.” A novel.— fantastic ms. (@fox) April 29, 2016
I’m literally done reading the comments for my article. It saddens me that even high-profile Web folk fails to see what I meant…— fantastic ms. (@fox) April 26, 2016
№1 rule of posting controversial content: NEVER read the comments*— fantastic ms. (@fox) April 25, 2016
*of random dudes who misunderstood the point and are trying to mock you.
I literally wrote JS is great but the point is understanding who you build for and be empathetic. Still people call me a hater.— fantastic ms. (@fox) April 24, 2016
Funny enough it was 98% men trying to tell me I don’t understand how the web works.— fantastic ms. (@fox) April 24, 2016
Guess what? Stop reading in between the lines.
Probably going to have white male dudes tweeting at me how much they disagree for eternity.— fantastic ms. (@fox) April 23, 2016
I knew that when I wrote about Medium being “where the opinions of self-entitled dudes flow like rain from the tech heavens” that I would (rightly) get pushback, and sure enough, I did …on Medium. Not on Twitter or anywhere else, just Medium.
I syndicate my posts to Ev’s blog, so the free-for-all approach to commenting doesn’t bother me that much. The canonical URL for my words remains on my site under my control. But for people posting directly to Medium and then having to put up with other people casually shitting all over their words, it must feel quite disempowering.
I have a similar feeling with Twitter. I syndicate my notes there and if the service disappeared tomorrow, I wouldn’t shed any tears. There’s something very comforting in knowing that any snarky nasty responses to my words are only being thrown at copies. I know a lot of my friends are disheartened about the way that Twitter has changed in recent years. I wish I could articulate how much better it feels to only use Twitter (or Medium or Facebook) as a syndication tool, like RSS.
There is an equal and opposite reaction too. I think it’s easier to fling off some thoughtless remarks when you’re doing it on someone else’s site. I bet you that the discourse on Ev’s blog would be of a much higher quality if you could only respond from your own site. I find I’m more careful with my words when I publish here on adactio.com. I’m taking ownership of what I say.
And when I do lapse and write snarky words like “Ah, Medium! Where the opinions of self-entitled dudes flow like rain from the tech heavens.”, at least I’m owning my own snark. Still, I will endeavour to keep my snark levels down …but that doesn’t mean I’m going to turn a blind eye to bad behaviour.
Wednesday, May 11th, 2016
If you don’t comment your CSS, you’ll confuse other people looking at your code, and, more embarrassingly, you’ll confuse future you. If you do comment CSS, everybody will be less confused, and things will be accidentally broken less often. You will be popular and generally well-liked, and people will remember to send you cards on your birthday. Comment more.
Some good advice here on how to write better comments in CSS.
Wednesday, November 11th, 2015
A tool for generating a pattern library from Markdown comments in CSS. This isn’t the way that I tend to work, but I can see how it would be quite handy.
Tuesday, September 29th, 2015
Here’s an interesting approach to making comments more meaningful:
Instead of blindly publishing whatever people submit, we first ask them to rate the quality and civility on 3 randomly-selected comments, as well as their own. It’s a bit more work for the commenter, but the end result is a community built on trust and respect, not harassment and abuse.
Monday, March 30th, 2015
Proving something that Derek Powazek told us 15 years ago:
When we clearly show what is and is not acceptable, the tone does change. People who want to share thoughtful comments start to feel that theirs are welcome, and people who want to spew hatred start to realize theirs are not.
D’hear that, Reddit?
Saturday, December 20th, 2014
This is a nifty little service: if your site has a webmention endpoint, people can comment on your articles by sending an email.
That means you can comment on any post on my site by sending an email to email@example.com (in the email, include the URL of the post you’re commenting on).
Tuesday, December 2nd, 2014
Stuart has implemented webmentions on his site, which is great. It’s also fitting, as he is the inventor of pingback (of which webmention is a simpler reformulation).
Wednesday, November 19th, 2014
Aaron documents the process of adding webmention support to a static site. He came with an ingenious three-tiered approach:
It’s been a pretty fun mini-project. In the end, I created a useful bit of kit that provides three distinct experiences:
- Static webmentions collected when the site was generated form the baseline experience;
Sunday, August 31st, 2014
In the days before comments on blogs, you could generally have a thoughtful conversation online without everything degenerating into madness and chaos simply because responding to a post required that you wrote a post on your own blog and linked back. This created a certain level of default accountability because if someone wanted to flame you, they had to do it on their own real estate, and couldn’t just crap all over yours anonymously.
Sunday, September 15th, 2013
Let me explain what web mentions are all about…
Basically, it’s an equivalent to pingback. Let’s say I write something here on adactio.com. Suppose that prompts you to write something in response on your own site. A web mention is a way for you to let me know that your response exists.
If you look in the
head of any of my journal posts, you’ll see this
<link rel="webmention" href="http://adactio.com/webmention.php" />
That’s my web mention endpoint: http://adactio.com/webmention.php …it’s kind of like a webhook: a URL that’s intended to be hit by machines rather than people. So when you publish your response to my post, you ping that URL with a POST request that sends two parameters:
target: the URL of my post and
source: the URL of your response.
Ideally your own CMS or blogging system would take care of doing the pinging, but until that’s more widely implemented, I’m providing this form at the end of each of my posts:
Either way, once you ping my web mention endpoint—discoverable through that
link rel="webmention"—with those two parameters, I just need to confirm that your post does indeed contain a link to my post—by making a cURL request and parsing your source—and then I return a server response of 202 (Accepted).
Here’s the code for a minimum viable web mention in PHP.
That’s as far as I got at Indie Web Camp but it was enough for me to start collecting responses to posts.
The next step is to do something with the responses. After all, I’ve already got the source of each response from those cURL requests.
Barnaby has a written a nice straightforward microformats parser in PHP. I’m using that to check the cURLed source for any responses that have been marked up using h-entry. That’s one of the microformats 2 vocabularies—a much simpler way of writing structured content with microformats.
So there you have it. Comments are now open on every journal post on adactio.com …the only catch is that you have to write the comment on your own site. And if you want the content of your post to appear here (instead of just a link) then update your blog post template to include a handful of h-entry classes.
Feel free to use this post as a test. Mark up your blog with h-entry, write a post that links to this URL, and enter the URL of your post in the form below.
Sunday, September 8th, 2013
I’m at Indie Web Camp and we’re onto the second day, which involves hacking on stuff (the first day involved discussing stuff).
I’ve had my head down attempting to implement webmentions on my site—basically a simpler form of pingback.
This probably won’t work, and this is the first basic step, but if you write a reply to this post on your own site, you should be able to ping me by entering your post’s URL into the form under this post.
Now, this is just a first run so all I’m doing is gathering the pings—I’m not actually going to fetch and parse your post; that step can come later. But if you want to help me kick the tires on this, write something on your site that links to this post and then enter your post’s URL below.
Sunday, January 20th, 2013
A wonderful collection of misconceptions, often the result of being myzelled when young.
Thursday, January 6th, 2011
PPK has switched off comments for much the same reason that I hardly ever have comments on adactio.com: our sites are places for us to broadcast rather than have a conversation.
Tuesday, July 20th, 2010
You’ve either poured weeks, months or even years of your life into bringing a product or a service into the world, or you haven’t.
He finishes with:
And the next time someone produces an antenna with a weak spot, or a sticky accelerator, you’re more likely to feel their pain, listen to their words and trust their actions than the braying media who have never shipped anything in their lives.
I’d suggest the opposite is in fact the case: the trouble is that media ships constantly, and therefore becomes inured to the difficulties and delicacies of launching a product of any size or scale.
It’s an excellent point, which Tom readily concedes.
People often think that editors are there to read things and tell people “no.” Saying “no” is a tiny part of the job. Editors are first and foremost there to ship the product without getting sued. They order the raw materials—words, sounds, images—mill them to approved tolerances, and ship.
It’s a rather spiffing conversation and it’s fascinating to see the ideas get bounced around from blog to blog. Notice that none of those blogs allow comments. I’m pretty sure that if they did have comments, the resulting conversation wouldn’t have been nearly as good. As I’ve said before:
I don’t think we should be looking at comments to see conversations. It isn’t much of a conversation when the same person determines the subject matter of every dialogue. The best online conversations I’ve seen have been blog to blog: somebody posts something on their blog; somebody else feels compelled to respond on their own blog. The quality of such a response is nearly always better than a comment on the originating blog for the simple reason that people care more about what appears on their own site than on someone else’s.
But how can we keep track of the conversation? I hear you cry.
I don’t think there’s any one particular technological solution to that problem but the combination of RSS, Delicious, Twitter and other linking tools seem to be doing a pretty decent job. If you dig down deep enough, they’re all using the same fundamental technology: the
a element and the
It’s messy and it’s chaotic but it’s also elegant …because it works. Seeing these kinds of distributed conversations makes me very happy indeed that Tim Berners-Lee shipped his product.
Wednesday, June 16th, 2010
What he said. "The wonderful thing about the web is that anyone can contribute to it. If you have something to say, there are plenty of places to say it. But your right to post to someone else’s site rests with that someone else."