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
Lean and Mean Dev with PhpStorm (for Symfony) Video Tutorial Screencast | S
Have you ever written out a long use statement by hand or navigated deep directories to find a file? Then your development is about to get a lot faster. PhpStorm makes modern Php development a joy - especially for Symfony users
Saved
on: 2021-01-28
Here's How I Bootstrapped a SaaS to $10k MRR
Startups are hard, bootstrapping is harder! Here's how I bootstrapped a SaaS product to $10k MRR over the course of 2 years.
Tags:
#business
Saved
on: 2021-01-28
Build your own PSR-4 autoloader
Learn how to build your own autoloader and de-mystify what Composer actually does behind the scenes
Tags:
#php
Saved
on: 2021-01-26
A comprehensive list of UX design methods & deliverables
A map that displays all the touchpoints of the consumer with your brand, as well as the key internal processes involved in it. Useful to visualize the path followed by consumers across multiple…
Saved
on: 2021-01-25
Sign-in form best practices
Use cross-platform browser features to build sign-in forms that are secure, accessible and easy to use.
Tags:
#webdev
Saved
on: 2021-01-25
Software development topics I've changed my mind on after 6 years in the industry - Blogomatano
At some point, I realized I would've argued the exact opposite position on a lot of topics just a few years ago.
Tags:
#programming
Saved
on: 2021-01-24
React Authentication: How to Store JWT in a Cookie | by Ryan Chenkie | Medi
If that’s the case, there’s a decent chance that your API is secured somehow. Maybe you’re making authentication and authorization happen with JSON Web Tokens. If so, there’s also a decent chance…
Saved
on: 2021-01-22
How We Improved SmashingMag Performance — Smashing Magazine
In this article, we’ll take a close look at some of the changes we made on this very site — running on JAMStack with React — to optimize the web performance and improve the Core Web Vitals metrics. With some of the mistakes we’ve made, and some of the unexpected changes that helped boost all the metrics across the board. Hopefully, this little case-study will be useful to you, and perhaps there are one or two techniques that you might be able to apply to your project right away. In the end, performance is all about a sum of all the fine little details, that, when added up, make or break your customer’s experience.
Saved
on: 2021-01-22
MuscleWiki - Simplify your workout
MuscleWiki is a fitness app with a comprehensive exercise library that includes videos and written instructions for over 2000 exercises. With a simple and intuitive bodymap that guides you to exercises for a particular muscle, you can simplify your workout with exercises suitable for beginners, intermediate and advanced fitness enthusiasts.
Tags:
#health
Saved
on: 2021-01-21
Maximally optimizing image loading for the web in 2021
In this post I'll outline 8 image loading optimization techniques to minimize both the bandwidth used for loading images on the web and the...
Saved
on: 2021-01-20
Clean Application Development - Nomad PHP
Presented by Adam Culp @adamculp
Presented on October 24,2013
No matter what level of development we are at in our careers we all face a daily battle to write good code for ourselves and others, deliver finished applications fast to satisfy business, and ensure everything is properly tested to prevent end-user fails. In this talk Adam Culp will discuss what “clean application development” is, and how it can help us win those battles. The talk will provide practical and usable examples to, integrate into your workflow, and continue to grow into good habits.
Saved
on: 2021-01-19
Context switching costs more than we give it credit for. - Thinking Through
(4 min read) Batching things by function can skyrocket your productivity.
Saved
on: 2021-01-18
Death of third party cookies: Enter sandbox from Google
Enter Sandbox: Google's bid to take control of online privacy after the death of third-party cookies. What publishers and advertisers think.
Tags:
#privacy
Saved
on: 2021-01-18
Gitbar - Il podcast dei developer italiani
Gitbar è il podcast per sviluppatori italiani dedicato alla programmazione e allo sviluppo web. Ogni giovedì un nuovo argomento con brainrepo.
Saved
on: 2021-01-15
It’s not legacy code — it’s PHP. Vimeo has been using PHP in production… |
In the last year, Vimeo developers have written backend code in lots of languages — PHP, Go, Ruby, Python, NodeJS, Java, C, C++, and a bit of Rust. In 2004, we started with just one: PHP. It was an…
Saved
on: 2021-01-15
Vite 2, a DX jump into the future | patak
A VitePress powered post about Vite 2 and the importance of the instant feedback loop that it enables
Tags:
#frontend
Saved
on: 2021-01-15
The Greatest Books of All Time
The Greatest Books of All Time. This list is generated by aggregating 618 lists from various critics, authors, experts, and readers.
Tags:
#books
Saved
on: 2021-01-15
Archivio Grafica Italiana
The first systematic digital archive dedicated to the Italian graphic design heritage. A growing overview aimed to spread and promote the culture of quality that distinguishes the Italian design tradition.
Saved
on: 2021-01-13
https://laconicml.com/computer-science-curriculum-youtube-videos/
Saved
on: 2021-01-12
You want overflow: auto, not overflow: scroll | Kilian Valkhof
Every now and then a web developer using a Mac discovers that their beautiful design is littered with scroll bars on other platforms. Either because someone points it out to them or because they attach a mouse to their mac which makes scroll bars appear. Often, MacOS hiding scroll bars by default is blamed for
Saved
on: 2021-01-07
BTI360 | What I've Learned in 45 Years in the Software Industry
BTI360 teammate Joel Goldberg recently retired after working in the software industry for over four decades. When he left he shared with our team some of the lessons he learned over his career. With his...
Tags:
#career
Saved
on: 2021-01-06
新しく、スタジオジブリ5作品の場面写真を追加提供致します - スタジオジブリ|STUDIO GHIBLI
新しく、スタジオジブリ5作品の場面写真を追加提供致します。 スタジオジブリ作品の場面写真ですが、今月は、「風の谷のナウシカ」「天空の城ラピュタ」「おもひでぽろぽろ」「レッドタートル」から50枚ずつ、「On Your Mark」から28枚、合計228枚を本日から提供致します。 なお、9月から順次追加
Tags:
#art
Saved
on: 2021-01-06
How we boosted our traffic by 504.17% with a SEO-Friendly Web Story
Here is what we learned experimenting with web stories. Find out 7 tips to create web-based stories that can push up your organic traffic.
Tags:
#seo
Saved
on: 2021-01-03
A half-hour to learn Rust
In order to increase fluency in a programming language, one has to read a lot of it.
But how can you read a lot of it if you don’t know what it means?
In this article, instead of focusing on one or...
Saved
on: 2021-01-02
No Country for Old Developers | Hacker News
Saved
on: 2020-12-28
Interview advice that got me offers from Google, Microsoft, and Stripe
“What would you say if I asked you to design me a service capable of responding
to thousands of user requests every second and latency was critical?”
“Umm...that you have to solve this problem at work. But you’re out of ideas, and
are looking to interviewees for suggestions”
That’s the actual response I gave the interviewer the first time I was asked a
design question. He had a good laugh. But then still made me design the service.
In the decade since I’ve lost track of how many hours I’ve sp
Tags:
#career
Saved
on: 2020-12-24
How to Favicon in 2021: Six files that fit most needs — Martian Chronicles,
Prefer SVG over PNG, trust browsers to downscale, drop obscure formats—the ultimate, exhaustive guide to favicons for modern web. Includes steps for static HTML and Webpack.
Tags:
#webdev
Saved
on: 2020-12-23
Micro - Micro is a platform for API driven services development
Tags:
#programming
Saved
on: 2020-12-22
Bare-metal Kubernetes with K3s
Learn how to configure K3s on bare-metal to run a Kubernetes cluster with just as much resilience and fault tolerance as a managed service.
Tags:
#k8s
Saved
on: 2020-12-22
Live Coding 12-Factor App
Emily Jiang performs live coding of building 12-factor microservices using MicroProfile programming mode and gets them running Open Liberty and Quarkus.
Saved
on: 2020-12-20
Implementing DDD, CQRS and Event Sourcing
This book explains how to implement DDD, CQRS and Event Sourcing. The concepts are put into practice with standalone examples and a Sample Application.
Saved
on: 2020-12-20
7 Rules for Creating Gorgeous UI – Part 2 (Updated for 2020) – Learn UI Des
How to safely overlay text on images · Making text pop – and un-pop · Only use good fonts · Steal like an artist
Saved
on: 2020-12-18
Refactoring Am I Rent Stabilized
Revisiting the code of a five year old project.
Tags:
#programming
Saved
on: 2020-12-14
Suspenders for trousers - YouTube
Una breve colonna sonora che racchiude pezzi e bands che in questo anno di pandemia mi hanno fatto crescere il desiderio di andare a vedere concerti e di far...
Tags:
#music
Saved
on: 2020-12-10
GitHub repositories to improve your programming skills - DEV
1. Free Programming Books Freely available programming books 167k ⭐ Repo: https://github...
Tags:
#learning
Saved
on: 2020-12-10
Lessons from Running a Sale that Earned 3 Month's Profit in a Week | Cory Z
Tips on running successful Black Friday sales for creators and Indie Hackers
Tags:
#sales
Saved
on: 2020-12-10
fabric Resources Hub
Access a wealth of omnichannel retail resources in fabric's library. Find guides, case studies, and white papers to help you optimize your order management and customer experience.
Tags:
#sw-architecture
Saved
on: 2020-12-09
The Modern JavaScript Tutorial
Modern JavaScript Tutorial: simple, but detailed explanations with examples and tasks, including: closures, document and events, object oriented programming and more.
Saved
on: 2020-12-08
CSS-Only Full-Width Responsive Images 2 Ways | Modern CSS Solutions
Let's look at how to use `background-size` and `object-fit` for similar full-width image effects, and learn when to select one over the other.
Tags:
#css
Saved
on: 2020-12-07
AWS re:Invent 2020 digest — Part 1 | by Adrian Hornsby | Dec, 2020 | Medium
While reInvent just started, the first keynote from Andy Jassy has had a lot of new launches. I know that digesting all the updates takes time and a lot of coffee, so let me help you. Following is a…
Tags:
#aws
Saved
on: 2020-12-03
10 Must-Read Books for Software Engineers - DEV
Besides all the great offerings of the modern world — podcasts, videos, blogs, etc. — reading a good...
Tags:
#books
Saved
on: 2020-12-02
An alternative way to organize the Laravel directory structure // Stefan Ba
In this article, I would like to show you an alternative way to organize your Laravel directory structure. I think the default structure is fine for the most projects. But when it comes down to larger projects I was looking for a different structure.
Saved
on: 2020-12-02
The HTML presentation framework | reveal.js
Documentation and demos for the open source reveal.js HTML presentation framework.
Saved
on: 2020-11-28
https://bhaskargandavabi.medium.com/how-i-passed-2-aws-solution-architect-exams-in-a-month-76d6e612f260
Tags:
#aws
Saved
on: 2020-11-27
CloudConf 2020 Live Streaming
Registrazioni degli interventi live di novembre 2020...
Saved
on: 2020-11-27
Practical Refactoring Tips For Developers That Love Legacy Applications - N
Speaker: Davi Marcondes Moreira @devdropsMany times in our career we have (or we’ll have) to deal with legacy applications, and refactoring is an art specially designed for this scenario. In this lightning talk, I’ll give a few tips that I’ve learned that helped me a lot to find love when dealing with refactoring legacy applications.
Saved
on: 2020-11-24
https://towardsdatascience.com/i-created-my-own-youtube-algorithm-to-stop-me-wasting-time-afd170f4ca3a
Tags:
#videos
Saved
on: 2020-11-24
Building Your Color Palette - Refactoring UI
Learn how to design awesome UIs by yourself using specific tactics explained from a developer's point-of-view.
Tags:
#webdesign
Saved
on: 2020-11-23
Elena Ferrante names her 40 favourite books by female authors | Elena Ferra
List by pseudonymous author of beloved Neapolitan novels includes Zadie Smith, Sally Rooney and several Italian classics
Tags:
#books
Saved
on: 2020-11-21
The Value-Effort Matrix: A framework for thinking about work - Human Who Codes
The Official Web Site of Nicholas C. Zakas
Saved
on: 2020-11-19
Ok Google: please publish your DKIM secret keys – A Few Thoughts on Cryptog
The Internet is a dangerous place in the best of times. Sometimes Internet engineers find ways to mitigate the worst of these threats, and sometimes they fail. Every now and then, however, a major …
Tags:
#security
Saved
on: 2020-11-17
5 most annoying website features I face as a blind person every single day
Tags:
#accessibility
Saved
on: 2020-11-12
Testing Spaghetti - Nomad PHP
Presented by Gemma Anible @ellotheth
Presented on October 23, 2014
The nightmare is at your doorstep! You’ve been tasked with extending a legacy PHP web application, a mash of raw SQL and HTML and PHP all inside out and backwards and spread over a several dozen (or hundred!) files. You know getting the system under test will push the project forward, but where do you start?
Come learn a slow, careful approach to incorporating automated unit tests into untestable code. See how your tests can slip in unobtrusively to take over your codebase from the inside, eating away at the spaghetti and creating a solid platform for future development.
Meet Gemma Anible
Gemma is a software engineer, video gamer and recovering classical violinist who has been developing PHP web applications since before PHP5 (and applications in C, .NET and Delphi since before then). She is passionate about using pragmatic processes and tooling to support developers of all types and skillsets, and her level of excitement over learning new dev technology tends to correlate strongly with her level of caffeination. Gemma and her husband live with their two dogs in New Mexico, where they climb volcanoes for fun.
Saved
on: 2020-11-12
Polypane, the perfect browser for web developers and designers
The browser for ambitious web developers. Build better websites in less time with a stand-alone browser that makes your site more responsive, more accessible and faster.
Saved
on: 2020-11-12
The Service Container, with Christoph Rumpel | The Laravel Podcast
You may not know it, but the service container — also known as the container, the IOC container, the DI container, or just "the application" — is that the core of every Laravel application. It's the glue that holds it all together! In this episode, author of Laravel Core Adventures Christoph Rumpel helps us dig deeply into what the container is and why it's good for you to know about it.
Tags:
#laravel
Saved
on: 2020-11-11
How Go helped save HealthCare.gov featuring Paul Smith, CTO of Ad Hoc (Go Time #154)
Paul Smith (from "Obama's Trauma Team") tells us the tale of how Go played a big role in the rescuing and rebuilding of the HealthCare.gov website. Along the way we learn what the original team did wrong, how the rescue team kept it afloat during huge traffic spikes, and what they've done since to rebuild it to serve t...
Saved
on: 2020-11-10
Getting Started with Dotfiles | Dries Vints
In this blog post I'll explain what dotfiles are, how you can use them and how to start with your own.
Saved
on: 2020-11-09
Lights, Camera, Action! My Tech Setup For Recording Courses & Podcasts — Co
Tags:
#gear
Saved
on: 2020-11-06
Website Ranking Tips - On-Demand Webinar - Moz
Listen in as John Mueller, Webmaster Trends Analyst at Google, and Cyrus Shepard, SEO Consultant at Moz, discuss how even novice website owners and SEOs can increase their chances of ranking higher in search results.
Tags:
#seo
Saved
on: 2020-11-06