PHPNews

head is locked

Yesterday I posted a little historical insight into why the closing </p> tag is optional, but in passing I mentioned you'll not see any new elements proposed for the head element. Though I can't refer to any specifications (partly because I'm writing this from a gym treadmill!), here's the reason why. …

Continue reading »

Written by Remy Sharp - - Aggregated on Friday September 13, 2019


(Why) Some HTML is "optional"

Chris Coyier blogged recently on weird looking HTML . It's a nice short post and I'd say it's worth knowing these optional features (potentially known as defaults). My favourite optional is <script> and not having to include the type attribute. But Chris' first example is the most common, the optional …

Continue reading »

Written by Remy Sharp - - Aggregated on Thursday September 12, 2019


Blocks of Tetris code

In one of my Twitch hour sessions I decided to attempt to build a Tetris clone inspired by news that Tetris turned 35 years old in June 2019. Given it was an hour of coding the game was far from complete but I had the shapes and I had dropping blocks and with around 4 more (offline) hours, I had a fully working …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday September 10, 2019


Offline listings

The other week I finally pushed full offline access to my blog. I'd taken a lot of inspiration from Jeremy Keith's service worker from his blog . One defining feature I wanted to support was that if you were offline and visited that page isn't cached, I wanted to list recent blog posts you had visited. The …

Continue reading »

Written by Remy Sharp - - Aggregated on Thursday September 5, 2019


Transforming text

During the weekend I spent an hour coding a hacky bit of code and I thought it might help one or two other people so I posted it on Twitter (on Sunday at 10am UK no less) and the response was…surprising . I genuinely thought it would only serve me, but some 120+ retweets and 800+ likes it seems like others found a …

Continue reading »

Written by Remy Sharp - - Aggregated on Monday September 2, 2019


The ninth August

August comes around in a flash. The living of life keeps me busy throughout the year. Work during the day, either client or my own making, and family all other times. If I'm honest, I'm a bit of hermit. But then thank god Julie asks me, reminds me, to take the last week of August off. Time to breathe. Time to think …

Continue reading »

Written by Remy Sharp - - Aggregated on Saturday August 24, 2019


Build free code & testing ES module imports

A bit of a mouthful of a post title, but I can assure my future self this post will be worthy of publishing because it'll save future self many angry hours shouting at build tools. The goal: no build tools, which leads to no config, which leads to no waiting around. Let's get the lie out of the way There's a …

Continue reading »

Written by Remy Sharp - - Aggregated on Friday August 16, 2019


An fd trick

If you followed my CLI improved then you'll know I'm a fan of the fd command which I'm able to use for a mass git file rename. Doing a mass rename is typically simple in the command line ( mv *.mjs *.js - though I'm not sure off the top of my head if this will recurse directories, probably not), but doing a …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday August 13, 2019


Redux: Lazy loading youtube embeds

There's a great pragmatic post on dev.to (that Jeremy's link feed put me on to) on how best to embed youtube on your site, specifically to avoid the amount of scripts and tracking that's sent over the wire to your visitor. The trick Arthur Corenzan uses in their solution is to use srcdoc to let the visitor …

Continue reading »

Written by Remy Sharp - - Aggregated on Friday August 9, 2019


Predictably Random

The concept of random is pretty interesting when you think about it from a computer's point of view, because without some external input, random is impossible. Computers (hardware and software) are deterministic. Meaning you give some input and get an output, and if you repeat the input, you'll get the same output. …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday August 6, 2019


Ninja

This is my personal blog and sometimes I'll publish very personal things. It's cathartic for me, but it also places real world events in my digital world. Our cat, Ninja, died tonight. He passed away on his own terms, sleeping outdoors in the sun. He was 14 years old. Ninja was part of a litter of 8 (IIRC) …

Continue reading »

Written by Remy Sharp - - Aggregated on Wednesday July 31, 2019


Buy the coffee

Having been asked my advice on starting a company (usually of one), my advice tends to start with: buy the coffee. Since running my own business I'll always try to buy the coffee when meeting a client or customer. Meaning more that I'll try to pick up the bill after our meeting. But, why? Partly because I …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday July 30, 2019


User agent tunnel vision

Yesterday I published a post that I'd been writing for a while as I considered and compared three web analytics "platforms". Upon posting to twitter I had a few suggestions on alternatives (all of which I had reviewed myself long before), but in particular Fathom came up - one I had dismissed before because it …

Continue reading »

Written by Remy Sharp - - Aggregated on Thursday July 25, 2019


Progressive Enhancement

This post was originally written in 2015, but upon re-reading it today, it still (just about) holds up, so I finally hit publish. I had thought that an EdgeConf panel would be about developers not using JavaScript because they were more interested in building high end web apps, full of WebRTC, Web Audio and the …

Continue reading »

Written by Remy Sharp - - Aggregated on Wednesday July 24, 2019


Analytics, logs and metrics

Netlify just recently launched a simple analytics offering for $9 per site per month. It's a great addition to an amazing platform and when the analytics are enabled, the last 30 days of traffic will be backfilled. It doesn't intend to replace marketing analytics and is (currently) a rather static view of traffic. …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday July 23, 2019


Elsewhere 2019 w28

A few interesting links I came across this week. Ethical Web Principles Found on July 12, 2019 at 17:01 pm I've had this link open in my browser nearly a month after seeing Jeremy posting it. This list makes up the core ethics for working on the web. It's something I feel is worthy of re-reading every week to …

Continue reading »

Written by Remy Sharp - - Aggregated on Saturday July 13, 2019


A thought: Privacy Pollution

This post is very much a stream of thought from a small handful of conversations and triggered by a tweet I saw today. Firefox have launched Track THIS - a "tool" that will launch 100 tabs depending on the persona you select - which I half suspect are based on the Spice Girls personas. The effect of launching …

Continue reading »

Written by Remy Sharp - - Aggregated on Thursday June 27, 2019


Scheduled and draft 11ty posts

This post explains how you can add scheduled publishing to your 11ty blog (with a bonus for drafts). Before I jump in though, 11ty is a surprisingly simple system for generating a static site from very little HTML, and drives content from markdown. Why is this good? Because it lets you, the author, move focus to …

Continue reading »

Written by Remy Sharp - - Aggregated on Wednesday June 26, 2019


Send Outgoing Webmentions

In a recent Twitch session I decided to add Webmentions to my blog, specifically in the flavour of showing "liked" from other websites (though, who am I kidding, it'll just be Twitter…). Amazingly I managed it in 90 minutes (with 3 stream crashes to boot). Adding Webmentions to a site seemed straightforward and …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday June 18, 2019


Reduce spread and the path to unique

As modern JavaScript language features land more and more support I find myself using more and more of the syntactic sugar. I'm a big fan of default arguments but I also really like the ...spread syntax. With that, I've found myself using spread syntax to get a list of unique elements, except until recently, I …

Continue reading »

Written by Remy Sharp - - Aggregated on Saturday June 15, 2019