Tim Perry

Senior software engineer at resin.io.
Creator of Build Focus, keen open-source contributor, and maintainer of Loglevel, Git‑Confirm and Server Components.

Post on Medium
Lastly, users tend to get a bit complainey about people intercepting and saving everything they type, particularly credit card numbers, passwords and the like. So it’s important that they don’t know you’re doing this. Wink.

I don’t need to worry about covering the boring stuff like privacy and security

Woah there, ok. This is an interesting technique, but it needs some huge warnings on top!

If you’re doing this for real after Spring 2018, you have any EU users, and you’re not extremely careful, then this is illegal and subject to fines of up to 20 million euros or 4% of business turnover, whiche...

HTTPS Is Not Enough at Codemotion Milan

Federate your content just one more step, all by yourself, and making jumping ship a little less scary.

Mastodon has been quietly building popularity for a good few months now, but over the past 48 hours it’s really burst to life, leaping from 25,000 to 40,000+ users in no time at all.

This is an exciting good thing: we’ve been in desperate need of less centralized and walled social networks for a good long time now.

Moving on from Twitter though isn’t easy, as many of us have been there many years, and dumping all your friends there is a high price to pay. What you need, is a way to sync between ...

Because sometimes you want to know if they actually work.

Bash scripts are unloved and underappreciated. Many of us developers spend a lot of time on the command line, and a good shell script is an incredibly powerful thing to drop into & extend your existing workflow.

Shell scripting isn’t easy though. Many of the tools and techniques you might be used to aren’t nearly as effective or well-used on the command line. Testing is a good example: in most languages, there’s a clearly agreed basic approach to testing, and most projects have at least a few tests sprinkled around (though often not a...

CSS-only tabs are a fun topic, and :target is a delightfully elegant declarative approach, except for the bit where it doesn’t work. The #hash links involved jump you around the page by default, and disabling that jumping breaks :target in your CSS, due to poorly defined behaviour in the spec, and corresponding bugs in every browser.

Or so we thought. Turns out there is a way to make this work almost perfectly, despite these bugs, and get perfect CSS-only accessible linkable history-tracking tabs for free.

What? Let’s back up.

What’s :target?

:target is a CSS psuedo-class that matches an element i...

Really enjoyed #dockerbcn, great talk from @doublebyte, and some great discussions all round. Thanks for having me!… https://twitter.com/i/web/status/941418276315426816
Ensure logout works even with invalid credentials, or if not logged in
Upgrade to new reconfix, adding support for GPT (i.e. TX2) configuration
Standalone binary for Resin-CLI
*BREAKING*: Remove support for plugins entirely
Calling all #Barcelona @Docker people: I'm speaking *7pm tonight* at #DockerBCN about how @resin_io makes Docker wo… https://twitter.com/i/web/status/941279904812978176
Sigh @thomasfuchs, I fully agree that net neutrality is a mess for you, but I live in Spain, not the US. The FCC go… https://twitter.com/i/web/status/941256485237088256
Does today's (beautiful) XKCD have a cheeky @OpenROV cameo in panel 14? https://xkcd.com/1928/
https://github.com/zeit/pkg from the @zeithq team is amazing. With near-zero config, it's turned a big fiddly node.js… https://twitter.com/i/web/status/941071836330233857
Fix bug in e2e tests that breaks deployment
Make sure we have the correct version of npm in circle to publish
Make sure we have the correct version of npm in circle to publish
Make sure we use the correct version of npm in circle to publish
Today's my 1 year anniversary at @resin_io! 🎂 Been great so far, learned a huge amount, and I'm *so* excited about… https://twitter.com/i/web/status/940548967691096064
New repo: pimterry/multistage-demos
Anybody feel confident they'd spot this? I'm certainly not. Easy, legal and super effective, youch. https://twitter.com/iangcarroll/status/940281927789146112
Upgrade resin-image-fs to 4.1.1 in reconfixJS
Who's in #Barcelona? I'm speaking at @Docker BCN next week about multistage builds & IoT, come see: https://www.meetup.com/docker-barcelona-spain/events/245156833/
A mountain of thanks to @addaleax - I spent half of yesterday chasing down and building a repro for a painful TLS b… https://twitter.com/i/web/status/938370860221640704
Nice article from @mariusschulz on weak type detection in #TypeScript and how it can save your bacon: https://blog.mariusschulz.com/2017/12/01/typescript-2-4-weak-type-detection
Fix versionbot's changelog mess
Deprecate resin-cli-auth
Various small improvements
Some light fog troubles in Thessaloniki Airport... 🌫🌫🛫🌫🌫 Apparently the gate for my Athens connection just opened,… https://twitter.com/i/web/status/934740392112742400
Thanks for having me @voxxed_thess! Want to try building hardware with JS? My slides are here, dive in: https://speakerdeck.com/pimterry/hardware-hacking-for-js-developers #vdthess
1600 LoRa gateways distributed around the world, freely available to (and built by) the community of… https://twitter.com/i/web/status/934342523660783617
https://www.atlassian.com/team-playbook @Atlassian have published a set of step by step 'plays' for teams facing all sorts of diff… https://twitter.com/i/web/status/934099415383584769
The key thing you need for successful teams: a compelling direction (plus a space to safely communicate) - @SvetP… https://twitter.com/i/web/status/934091436915609600
Nice definition of disability: a mismatch between the features of a person's body, and their environment.… https://twitter.com/i/web/status/934077186772029440