PHPNews

ffconf v11: a roundup

ffconf 2019, our eleventh version wrapped up last Friday and it's fair to say that even now as I write, I feel full of love from the people that took part and made the day what it was. As always, we snapped up a picture of all our amazing attendees, waving their hands in the air, like they just don't care! I love …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday November 12, 2019


Nice imports with Next.js

During my React based development, I'll find myself importing a module from '../../../components/Widget' and that ../../../ is anyone's guess if it's right first time or not. Except I discovered that Next.js (which is what I do most of my React dev with) ships with a trick up its sleeve. Alias Next.js uses a …

Continue reading »

Written by Remy Sharp - - Aggregated on Monday November 4, 2019


My #WebStory

This month in 2019, the W3C turns 25 and in their blog post they encourage others to share their own web stories. So here's mine. It starts in the 80s with a Sinclair ZX81. (Yes, I'm going to rewind this far back!). Childhood I was lucky/privileged enough to grow up in a household that had home computers …

Continue reading »

Written by Remy Sharp - - Aggregated on Thursday October 31, 2019


Listing your most used commands

A fun little command line task is to retrospectively look back at all the commands you run to which you use all the time. You'll find similar solutions to this on sites like StackOverflow, but they're not quite right. Since quite often commands are piped together the solutions generally ignore the piped commands. So …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday October 8, 2019


Blog service workers and the chicken and the egg

I posted a blog the other week explaining the process I had in place for showing recently viewed posts whilst the visitor was offline. Being a clever clogs I also included a link to the offline page to show that the post they were reading was also already in the "recently viewed". Except there was a small catch. …

Continue reading »

Written by Remy Sharp - - Aggregated on Tuesday October 1, 2019


Moving on

Today we, my family, leave the place we've called home for just shy of 10 years. We're moving house - not far and still in walking distance from the kids school, but it's much more than a little relocation. It's the next stage of our lives, and I wanted to take a moment for that past decade. Fair warning I've …

Continue reading »

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


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