Writing better Regular Expressions in PHP • PHP.Watch
How to write more readable, self-explanatory, and effective regular expressions in PHP.
Saved
on: 2021-06-16
Making Instagram.com faster: Part 1 | by Glenn Conner | Instagram Engineeri
In recent years, instagram.com has seen a lot of changes — we’ve launched stories, filters, creation tools, notifications, and direct messaging as well as myriad other features and enhancements…
Saved
on: 2021-06-07
Pushing the boundaries of Eloquent
My experience building advanced reporting with Eloquent
Tags:
#laravel
Saved
on: 2021-06-05
Our Favourite Uses of Typography in Watches
We examine the interesting and creative ways type has been used across the horological world...
Tags:
#art
Saved
on: 2021-06-03
Core Web Vitals Tracking via GA4, BigQuery and Google Data Studio
Step by step instructions to start gathering your own detailed Core Web Vitals data and use it to generate advanced reports.
Saved
on: 2021-06-01
(1) Robert G. Reeve su Twitter: "I'm back from a week at my mom's house and
I'm back from a week at my mom's house and now I'm getting ads for her toothpaste brand, the brand I've been putting in my mouth for a week. We never talked about this brand or googled it or anything like that.
As a privacy tech worker, let me explain why this is happening. 🧵
Saved
on: 2021-05-31
What it means to run a monolith on AWS Lambda
A stable software development model combined with the elasticity of serverless solutions.
Saved
on: 2021-05-31
Deep Dive into Reactive Programming with RxJS
RxJS helps developers author declarative code for handling side effects and asynchronous actions with continuous data streams and subscriptions.
Tags:
#rxjs
Saved
on: 2021-05-25
wickedblocks
A collection of hundreds of fully responsive Talwind blocks & components. Ready to copy-paste into your Tailwind project.
Saved
on: 2021-05-25
Links on Performance | CSS-Tricks
Making GitHub’s new homepage fast and performant — Tobias Ahlin describes how the scrolling effects are done more performantly thanks to IntersectionObserver
Saved
on: 2021-05-25
A Single Div
A CSS drawing experiment to see what’s possible with a single div.
Saved
on: 2021-05-24
Find N 1 problems instantly by disabling lazy loading | Laravel News
Learn about the strict lazy loading setting that allows you to disable it entirely for non-production environments.
Saved
on: 2021-05-22
Create a Blog with Nuxt Content - NuxtJS
The Content module is a git files based headless CMS that provides powerful features when it comes to write blogs, documentation sites or just adding content to any regular website. In this post we will go through most of the benefits of this module and discover how we can create a blog with it.
Saved
on: 2021-05-21
Lightning-Fast Web Performance: an online lecture series from Scott Jehl
An online lecture course by Scott Jehl.
Saved
on: 2021-05-20
DOM Events
A visualizer to help you learn how the DOM Event system works through exploration
Tags:
#webdev
Saved
on: 2021-05-19
The data model behind Notion's flexibility
Notion’s data model enables the product’s most foundational component: blocks. Through blocks, we allow users more flexibility over their information.
Saved
on: 2021-05-19
Modern Javascript: Everything you missed over the last 10 years by Sandro T
JavaScript has come a long way since I knew it as the “D” in DHTML. For anyone like me, who’s been reluctant to use the latest syntax that could require polyfills or a transpiler, I’ve written this cheatsheet to get you caught up on all the goodness that’s widely supported in modern browsers.
Tags:
#javascript
Saved
on: 2021-05-15
Tuning Nginx and PHP-FPM… The Right Way - Nomad PHP
Presented by Evan Coury @EvanDotPro
Presented on December 18, 2014
More and more large companies and websites are switching over to Nginx + PHP-FPM for increased performance and more efficient resource utilization. When properly tuned, this duo can be a perfect match for high traffic situations. However, it only takes one small oversight in the configuration to bring your site to a grinding halt under high load. Join Evan Coury, owner of Roave, as he shares all of his tips and tricks learned throughout years of high scalability consulting and running several extremely high traffic websites. We’ll cover how to optimally tune PHP-FPM worker pools, sysctl, and Nginx to get the most out of your servers. Additionally, we’ll cover adding additional capacity to handle traffic spikes, load balancing, and more.
Meet Evan Coury
Evan Coury is a core contributor and long-time user of Zend Framework who is perhaps most well known in the community for authoring the all-new ZF2 module system. He is currently a professional software architect, independent consultant, and owner of Roave, LLC, a full-service web development consulting firm specializing in PHP and Zend Framework. Evan is a strong proponent of free, open source software and also runs the successful SMSCloud.com international SMS gateway.
Saved
on: 2021-05-06
HTML Tips
In this article I’ll share some tips and advice about HTML.
Tags:
#webdev
Saved
on: 2021-05-06
? How Basecamp blew up - Platformer
Inside the all-hands meeting that led a third of the company to quit, and an executive to resign
Tags:
#politics
Saved
on: 2021-05-04
Keep controllers clean by using form requests in Laravel - Freek Van der He
Most people use form requests solely for validation, but they can also help to keep your controllers clean. Here's how we use them in Mailcoach
Tags:
#laravel
Saved
on: 2021-05-04
Google’s FLoC Is a Terrible Idea | Electronic Frontier Foundation
Update, April 9, 2021 : We've launched Am I FLoCed, a new site that will tell you whether your Chrome browser has been turned into a guinea pig for Federated Learning of Cohorts or FLoC, Google’s latest targeted advertising experiment. The third-party cookie is dying, and Google is trying to create...
Saved
on: 2021-05-04
Practical SQL for Data Analysis
Pandas is by far the most popular tool for data analysis. It's packed with useful features, it's battle tested and widely accepted. However, pandas comes at a cost which is often overlooked. SQL databases has been around since the 1970s. They contain many features that most developers never heard of, and I want to bring some of them to light.
Tags:
#sql
Saved
on: 2021-05-03
Hosting SQLite databases on Github Pages - (or IPFS or any static file hoster) - phiresky's blog
I was writing a tiny website to display statistics of how much sponsored content a Youtube creator has over time when I noticed that I often write a small tool as a website that queries some data from a database and then displays it in a graph, a table, or similar. But if you want to use a
Saved
on: 2021-05-03
The Humble Element And Core Web Vitals — Smashing Magazine
Images have also been a key part of the web. They communicate ideas instantly, but they are also a lot heavier than text to load. This means that it’s essential to get loading and displaying them right, if you want to give your users a fantastic first impression. An excerpt from Addy Osmani's new book (also, check a free PDF preview). We’re happy and honored to have teamed up with Addy to publish a dedicated book on image optimization, and the book is now finally here!
Saved
on: 2021-04-30
Do not mock what you do not own | The PHP Consulting Company
Saved
on: 2021-04-26
FFmpeg cheat sheet
FFmpeg cheat sheet. GitHub Gist: instantly share code, notes, and snippets.
Saved
on: 2021-04-25
Getting my blog ready for Core Web Vitals & Page Experience - Paul Bakaus'
Saved
on: 2021-04-24
Tackling the Beast: How to Gradually Upgrade a Legacy Code Base to PHP 7 -
Presented by Ann Gaffigan (@anngaff)
December 21, 2017
Hypothetically speaking, what if you wanted to change all of the lightbulbs in your house to use LED bulbs, but your current wiring didn’t support LED bulbs? You would need to re-wire your house, which would take a long time. In the meantime, you wouldn’t have any working electricity. Is there a better way? What if there was an adapter that could transition LED to work with old wiring if necessary, or if the wiring was new, just work as usual? That’s a metaphor for how I figured out how to gradually upgrade a legacy (LAMP) code base to be compliant with PHP 7.0. Since PHP deprecated the MySQL extension functions as of PHP 5.5.0 and removed in 7.0, we needed to transition a LOT of code in a legacy system to use the modern MySQLi extension functions. In trying to figure out how to upgrade the code base without ceasing new development on the system, we decided to use an adapter database class to allow us to transition gradually. In this session, we’ll explain how the adapter class works and also the rules we put in place to ensure there was an end to the transition tunnel.
Saved
on: 2021-04-24
Tiptap
A suite of open source content editing and real-time collaboration tools for developers building apps like Notion or Google Docs.
Saved
on: 2021-04-23
Why we use `!important` with Tailwind — Sebastian De Deyne
Tl;dr: We use !important because it solves annoying specificity issues. Despite being overkill in most situations, we haven't come across any practical drawbacks from globally enabling it.
If you want to learn more about how we came to that conclusion and how CSS specificity…
Tags:
#tailwindcss
Saved
on: 2021-04-21
Intrinsic Typography is the Future of Styling Text on the Web | CSS-Tricks
The way we style text hasn’t changed much over the years. There have been numerous advancements to help make things more flexible, like layouts, but in terms
Saved
on: 2021-04-21
The Almost-Complete Guide to Cumulative Layout Shift
This is Jess B Peck's personal website. SEO, Analytics, big data, small data, and the web.
Saved
on: 2021-04-20
lofi.cafe - lofi music 🎧
Lofi music streams for studying, working, and relaxing.
Tags:
#music
Saved
on: 2021-04-14
Laravel Custom Validation: one of the fields required, but not both - Larav
Tags:
#laravel
Saved
on: 2021-04-12
This Web Site is a Tech Talk—zachleat.com
A post by Zach Leatherman (zachleat)
Tags:
#talks
Saved
on: 2021-04-01
Using Laravel View Components – Beyond Code
Learn how to use Laravel's view components effectively.
Tags:
#laravel
Saved
on: 2021-03-30
Beyond Design Patterns - Nomad PHP
Presented by Anthony Ferrara @ircmaxell
Presented on July 24, 2014
Many people teach design patterns as a fundamental step to Object Oriented Programming. They are so universally seen as important that almost every single programming conference that I have been to has had at least one talk about them. They are quite often used as interview questions to test a candidate’s OOP knowledge. However, just like inheritance, they are not needed for OOP. And just like inheritance, they are a distraction rather than a foundation. Instead of focusing on patterns, I suggest focusing on learning about abstraction and communication. Why? Come and find out!
Tags:
#php
Saved
on: 2021-03-29
Deploy Your PHP App with Docker - Nomad PHP
Presented by Asmir MustaficThis talk explains how to develop and deploy to production your application built with Docker.The presentation starts from the development environment and passing by Continuous Integration arrives to Production.It shows an workflow that allows to compose many tools and best practices to obtain fast development and no downtimes.
Saved
on: 2021-03-29
Vite with Laravel: Using React — Sebastian De Deyne
Vite supports JSX out of the box (you might have to rename .js files to .jsx), so there are no additional steps to get started with React. However, you'll probably want to enable React Refresh for a better development experience.
React Refresh lets you edit components without…
Saved
on: 2021-03-26
CoScreen: Collaborative Screen Sharing by Datadog
Bring your team closer to you. One click to share and remote control any window. Get things done together like never before.
Tags:
#tools
Saved
on: 2021-03-26
SQLite is not a toy database | Anton Zhiyanov
Here is why SQLite is a perfect tool for you - whether you are a developer, data analyst, or geek.
Tags:
#sqlite
Saved
on: 2021-03-25
From semantic CSS to Tailwind - Refactoring the Netlify UI codebase
In 2021, we're taking on the challenge of refactoring the CSS of our entire UI codebase to Tailwind. Learn more about how we're going to achieve this.
Tags:
#tailwindcss
Saved
on: 2021-03-24
GroovePizza
Groove Pizza is a playful tool for creating grooves using math concepts like shapes, angles, and patterns. Start working with one of the special pizza presets and add/remove toppings to adjust the groove, or click on the Shape Pizza tab and drag various shapes onto the big circle to play and explore math-inspired grooves. Share your creation on social media, or continue your groove over at the online digital audio workstation at Soundtrap.com.
Saved
on: 2021-03-24
Laravel SMTP Crack | Laravel News
Spammers have one goal, send as much spam as cheaply as possible, with good IP's that are not blocked, and we've been hearing more and more reports of Laravel apps getting their SMTP credentials hacked and then the attackers using those to send junk.
Tags:
#laravel
Saved
on: 2021-03-23
100ms - 40ms - 1ms: Maximizing response caching in Laravel | Samuel Štanc
23 founder @archtechx
Saved
on: 2021-03-17
Setup Step Debugging in PHP with Xdebug 3 and Docker Compose - Matthew Sett
In versions of Xdebug before version 3 setting up step debugging for code inside Docker containers has often been challenging to say the least. However, in version 3 it’s become almost trivial. In this short tutorial, I’ll step you through what you need to do, regardless of the (supported) text editor or IDE you’re using.
Saved
on: 2021-03-11
How CLS optimizations increased Yahoo! JAPAN News's page views per session
Using Search Console and Lighthouse to monitor Core Web Vitals, they discovered opportunities for optimizing CLS score by 0.2 which led to 15% increase in page views per session, 13% longer session duration, and 1.72 percentage point decrease in bounce rate.
Saved
on: 2021-03-10
content-visibility: the new CSS property that boosts your rendering perform
The CSS content-visibility property enables web content rendering performance benefits by skipping rendering of off-screen content. This article shows you how to use this new CSS property for faster initial load times, using the auto keyword. You will also learn about the CSS Containment Spec and other values for content-visibility that give you more control over how your content renders in the browser.
Saved
on: 2021-03-08
FFmpeg from Zero to Hero by Nick Ferrando
If you ever wondered how the developers of YouTube or Vimeo cope with billions of video uploads or how Netflix processes its catalogue at scale or, again, if you want to discover how to create and develop your own video platform, you may want to know...
Saved
on: 2021-03-07
Nodes – a new way to create with code | https://nodes.io
Nodes is a new way to create with code.
Saved
on: 2021-03-07
Find International Jobs: Explore Global Career Opportunities | Relocate.me
Browse the latest international jobs and discover exciting global career opportunities. Find your next job abroad here.
Saved
on: 2021-03-06
When Objects Are Not Enough
Alan Kay mentions in a talk that the Smalltalk don't scale quite well to big teams and infrastructure. However, he had some ideas on how to make OOP scale.
Saved
on: 2021-03-05
HTTPWTF
HTTP is fundamental to modern development, from frontend to backend to mobile. But like any widespread mature standard, it's got some funky skeletons in the...
Tags:
#webdev
Saved
on: 2021-03-04
Material Symbols and Icons - Google Fonts
Material Symbols are our newest icons consolidating over 2,500 glyphs in a single font file with a wide range of design variants.
Tags:
#webdev
Saved
on: 2021-03-03
Code analysis tools to help with upgrading an app to a newer PHP version? :
Saved
on: 2021-03-03
Testing your controllers when you have a decoupled core — Matthias Noback -
A lot can happen in 9 years. Back then I was still advocating that you should unit-test your controllers and that setter injection is very helpful when replacing controller dependencies with test doubles. I’ve changed my mind: constructor injection is the right way for any service object, including controllers. And controllers shouldn’t be unit tested, because:
Those unit tests tend to be a one-to-one copy of the controller code itself. There is no healthy distance between the test and the implementation. Controllers need some form of integrated testing, because by zooming in on the class-level, you don’t know if the controller will behave well when the application is actually used. Is the routing configuration correct? Can the framework resolve all of the controller’s arguments? Will dependencies be injected properly? And so on. The alternative I mentioned in 2012 is to write functional tests for your controller. But this is not preferable in the end. These tests are slow and fragile, because you end up invoking much more code than just the domain logic.
Saved
on: 2021-03-02
A monorepo approach to larger modules in Laravel and Lambda
The mindset of modularized applications applied to monoliths.
Saved
on: 2021-03-01
Ultimate Cheatsheet Compilation - DEV Community
Hi everyone 👋 Today I wanted to share with you the Ultimate Cheatsheet Compilation. I hope...
Saved
on: 2021-02-28
Free Software, Not Free Support: My Reply Template — beberlei.de
Over the last weeks I have seen a few people tweet or write about the burden of
open-source maintainership or being a public person in a programming community.
Saved
on: 2021-02-27
Domain-Driven Laravel (eBook)
This book maps the concepts and ideas in DDD and transposes those concepts into clean, testable and quality code to prototype and work effectively alongside the Laravel framework. Readers will learn to implement the concepts and patterns present in DDL as a complete web application.
Saved
on: 2021-02-26
Does it belong in the application or domain layer? — Matthias Noback - Blog
Where should it go? If you’re one of those people who make a separation between an application and a domain layer in their code base (like I do), then a question you’ll often have is: does this service go in the application or in the domain layer? It sometimes makes you wonder if the distinction between these layers is superficial after all. I’m not going to write again about what the layers mean, but here is how I decide if a service goes into Application or Domain:
Tags:
#programming
Saved
on: 2021-02-25
Automatio - No-code Web Automation Tool
Automatio is the most powerful no-code web scraper and web automation tool that allows you to seamlessly create bots and crawlers without writing a single line of code.
Tags:
#tools
Saved
on: 2021-02-23
Talk review: Thomas Pierrain at DDD Africa — Matthias Noback - Blog
As a rather unusual pastime for the Saturday night I attended the third Domain-Driven Design Africa online meetup. Thomas Pierrain a.k.a. use case driven spoke about his adaptation of Hexagonal architecture. “It’s not by the book,” as he said, but it solves a lot of the issues he encountered over the years. I’ll try to summarize his approach here, but I recommend watching the full talk as well.
Hexagonal architecture Hexagonal architecture makes a distinction between the use cases of an application, and how they are connected to their surrounding infrastructure. Domain logic is represented by pure code (in the FP sense of the word), surrounded by a set of adapters that expose the use cases of the application to actual users and connect the application to databases, messages queues, and so on.
Saved
on: 2021-02-23
Mistakes I've Made as an Engineering Manager | CSS-Tricks
I’ve been a manager for many years at companies of different scale. Through these experiences, I’ve done my share of learning, and made some mistakes along
Saved
on: 2021-02-22
When to use empty in PHP? I’d say never — beberlei.de
This article contains a list of alternatives to use instead of empty expression.
Tags:
#php
Saved
on: 2021-02-19
? Weekend Project: Online Book Site | Alisha.co
Saved
on: 2021-02-19
Identify All the Things With UUIDs! - Nomad PHP
Speaker: Ben RamseyUniversally unique identifiers (UUIDs) are a fun and exciting way to identify things. We can issue UUIDs forever and never run out; they’re practically unique! Join this whirlwind adventure in search of the perfect identifier to find out why UUIDs might be good for your projects.
Tags:
#php
Saved
on: 2021-02-18
Successful refactoring projects - Prepare to stop at any time — Matthias No
Refactoring projects A common case of refactoring-gone-wrong is when refactoring becomes a large project in a branch that can never be merged because the refactoring project is never completed. The refactoring project is considered a separate project, and soon starts to feel like “The Big Rewrite That Always Fails” from programming literature.
The work happens in a branch because people actually fear the change. They want to see it before they believe it, and review every single part of it before it can be merged. This process may take months. Meanwhile, other developers keep making changes to the main branch, so merging the refactoring branch is going to be a very tedious, if not dangerous thing to do. A task that, on its own, can cause the failure of the refactoring project itself.
Tags:
#programming
Saved
on: 2021-02-17
Should we use a framework? — Matthias Noback - Blog
Since I’ve been writing a lot about decoupled application development it made sense that one of my readers asked the following question: “Why should we use a framework?” The quick answer is: because you need it. A summary of the reasons:
It would be too much work to replace all the work that the framework does for you with code written by yourself. Software development is too costly for this. Framework maintainers have fixed many issues before you even encountered them. They have done everything to make the code secure, and when a new security issue pops up, they fix it so you can just pull the latest version of the framework. By not using a framework you will be decoupled from Symfony, Laravel, etc. but you will be coupled to Your Own Framework, which is a bigger problem since you’re the maintainer and it’s likely that you won’t actually maintain it (in my experience, this is what often happens to projects that use their own home-grown framework). So, yes, you/we need a framework. At the same time you may want to write framework-decoupled code whenever possible.
Saved
on: 2021-02-17
"Tailwind CSS: From Zero to Production" on YouTube – Tailwind CSS
Today we're excited to release Tailwind CSS: From Zero to Production, a new screencast series that teaches you everything you need to know to go from zero to production with Tailwind CSS v2.0.
Saved
on: 2021-02-17
Functorio
You might have heard people say that functional programming is more academic, and real engineering is done in imperative style. I’m going to show you that real engineering is functional, and …
Tags:
#functional-programming
Saved
on: 2021-02-16
Symfony Lock and Messenger component - Happyr developer blog
Saved
on: 2021-02-15
Why I Built Litestream
Despite an exponential increase in computing power, our applications require more machines than ever because of architectural decisions made 25 years ago. You can eliminate much of your complexity and cost by using SQLite & Litestream for your production applications.
Saved
on: 2021-02-12
CSS transitions and hover animations, an interactive guide
This comprehensive guide shows how to use CSS transitions! A back-to-basics look at the fundamental building blocks we need to create microinteractions and other animations.
Tags:
#css
Saved
on: 2021-02-09
The Rubinoos im Audimax, Hamburg 1978 - Events - Rockpalast - Fernsehen - W
The Rubinoos aus dem kalifornischen Berkeley feiern Ende der Siebziger ihre ersten Erfolge außerhalb der Vereinigten Staaten. Der Rockpalast schnappte zu und filmte ihren Auftritt im Audimax in Hamburg, wo die Band mit ihrem Power Pop ihr Publikum zum Tanzen brachte.
Tags:
#music
Saved
on: 2021-02-09
Introducing Clerk: All of user management, not just authentication
The task came with a sense of helplessness. We knew what "great" looked like, but it was impractical to build all of that functionality.
Saved
on: 2021-02-09
AWS Cheat Sheets - Tutorials Dojo
AWS Cheat Sheets
Our AWS cheat sheets were created to give you a bird's eye view of the important AWS services that you need to know by heart to be able to pass the different AWS certification exams such as the AWS Certified Cloud Practitioner, AWS Certified Solutions Architect Associate, as well as the other Associate,
Tags:
#aws
Saved
on: 2021-02-05
The great SameSite confusion
In this post, I dissect a common misconception about the SameSite cookie attribute and I explore its potential impact on Web security.
TL;DR ¶ The SameSite cookie attribute is not well understood. Conflating site and origin is a common but harmful mistake. The concept of site is more difficult to apprehend than meets the eye. Some requests are cross-origin but same-site. SameSite only has effects on cross-site requests. SameSite paints a target on your subdomains’ back. Misguided practitioners may unduly eschew SameSite=Strict. The advent of SameSite ¶ You undoubtedly have heard of the SameSite cookie attribute. It made headlines when, in February 2020, Chrome started rolling out changes to SameSite’s default behaviour. Intended as a defence-in-depth mechanism against cross-site attacks, such as cross-site request forgery (CSRF) and cross-site script inclusion (XSSI), SameSite had been lying dormant at the heart of implementing browsers since its inception in 2016.
Saved
on: 2021-02-05
Things You Can Do With CSS Today — Smashing Magazine
The present and future of CSS are very bright indeed and if you take a pragmatic, progressive approach to your CSS, then things will continue to get better and better on your projects, too. Some of the really handy powers CSS gives you might have slipped you by, so in this article, Andy Bell will take a look into masonry layout, :is selector, clamp(), ch and ex units, updated text decoration, and a few other useful CSS properties.
Tags:
#css
Saved
on: 2021-02-04
About | Divio Documentation
Find the software documentation system for Divio. Includes comprehensive tutorials, how-to guides, technical reference and explanation. Learn more here.
Tags:
#programming
Saved
on: 2021-02-03
7 bite-sized tips for reliable web automation and scraping selectors
If you’re like most developers, you’ve probably encountered Cascading Style Sheet (CSS) selectors for styling webpages. For example, the following CSS rule combines a paragraph element selector p…
Tags:
#webdev
Saved
on: 2021-02-02
My approach to using z-index. The last time I got straight to the… | by Dav
To set the scene, I’ll run through a simplified example that highlights some of the problems that z-index can solve, and cause. Here’s the codepen, if you’re curious. But you know what, that header…
Tags:
#css
Saved
on: 2021-01-31