The PHP Scratchpad
Enjoy coding and debugging in an editor designed for fast feedback and quick iterations. It's like a shell for your application – but with multi-line editing, code completion, and more.
This library contains functional utilities intended for use with PHP 8.1 and later. Its primary tool is the pipe() function, which takes a starting argument and then a series of callables to "pipe" that argument through. Most other functions are utilities that produce a closure that takes the return from a previous pipe() step as its only argument.
A Conflict-free Replicated Data Type (CRDT) is a data structure that simplifies distributed data storage systems and multi-user applications.
Web Components Will Outlive Your #JavaScript Framework (via @jakelazaroff)
https://jakelazaroff.com/words/web-components-will-outlive-your-javascript-framework/
"If we want our work to be accessible in five or ten or even 20 years, we need to use the web with no layers in between. For all its warts, the web has become the most resilient, portable, future-proof computing platform we’ve ever created — at least, if we build with that in mind."
GHOSTERY TRACKER & AD BLOCKER FOR ANY DEVICE
Block ads, cookies, popups & other trackers. Ghostery sets you up for a private, transparent, and fast internet.
PSA: Sizzy is a web browser built for developers. You can set up a bunch of different screen sizes (scaled so you can see them all together), all synchronized as you scroll and navigate. This is a godsend for doing responsive design work.
This is a simple Mastodon/ActivityPub server that has a virtual @website@mastofeeder.com user for every RSS feed in the Internet. Just search for your favourite RSS-enabled website from Mastodon's search and follow the user! All RSS items will be posted as toots.
For years, I've dreamed of being able to create PHP CLI scripts that can be easily distributed without requiring users to have PHP installed on their machines.
But a scripting language needs an interpreter, they said. Not anymore! PHP still can't be compiled for real, there is a trick you can use.
Many modern websites are designed with a mobile-first approach. When these pages render on desktop devices, the content can appear overly large and stretched out. Screen-covering images, large bloated text, and excessive negative space result in long pages requiring more scrolling to consume all content. We call this design trend content dispersion.
Serde (pronounced "seer-dee") is a fast, flexible, powerful, and easy to use serialization and deserialization library for PHP that supports a number of standard formats. It draws inspiration from both Rust's Serde crate and Symfony Serializer, although it is not directly based on either.
At this time, Serde supports serializing PHP objects to and from PHP arrays, JSON, YAML, and CSV files. It also supports serializing to JSON or CSV via a stream. Further support is planned, but by design can also be extended by anyone.
The other day I was working on some sample code to test out an idea that involved an object with an internal nested array. This is a pretty common pattern in PHP: You have some simple one-off internal data structure so you make an informal struct using PHP associative arrays. Maybe you document it in a docblock, or maybe you're a lazy jerk and you don't. (Fight me!) But really, who bothers with defining a class for something that simple?
But that got me wondering, is that common pattern really, you know, good? Are objects actually more expensive or harder to work with than arrays? Or, more to the point, is that true today on PHP 7 given all the optimizations that have happened over the years compared with the bad old days of PHP 4?
So like any good scientist I decided to test it: What I found will shock you!
JMAP is the developer-friendly, open API standard for modern mail clients and applications to manage email faster.
It’s official! JMAP has been published by the Internet Engineering Task Force (IETF).