Tagged "bookmarks"
Solved by CSS Scroll-Driven Animations: Detect if an element can scroll or not
Because Scroll-Driven Animations are only active when there is scrollable overflow, it is possible to use them as a mechanism to detect if an element can scroll or not.
Detecting Hover-Capable Devices
With a greater proliferation of devices than ever before, we developers can no longer rely on viewport size as the factor that determines the styles we serve up to our website users.
How to use Systemd Timers to Schedule the Execution of a Specific Command
If you need to run a command periodically on your Linux server, you might consider using a Systemd timer instead of a cron job. Systemd timers offer more control over your command and are more flexible than Cron jobs. Here's a quick comparison between the two:
The Challenges and Pitfalls of Using Executors in Java
Executors come with their own set of challenges and pitfalls that developers must be aware of to avoid potential issues. In the world of concurrent programming, Java's Executors framework has been a boon for developers looking to manage and coordinate multiple tasks efficiently.
k1r0s/kaop-ts : Simple Yet Powerful Library of ES2016 Decorators with Strongly typed method Interceptors like BeforeMethod, AfterMethod, OnException, etc
Lightweight, solid, framework agnostic and easy to use library written in TypeScript to deal with Cross Cutting Concerns and improve modularity in your code. This library provides a straightforward manner to implement Advices in your app.
Express Zod API
Paulβs notes on how JSON-LD works
We all know what JSON-LD is: JSON with a @context field tacked on top, right? Thatβs pretty much all it is. Except sometimes you see an @id field, which, sure, that makes sense. And sometimes the @context field is multiple URLs, which seems odd β because how do they mix? Well, no worries.
Understanding ActivityPub
In this blog post, Iβm using ActivityPub.Academy (see the announcement post) to explore the ActivityPub protocol.
OpenAPI Typescript Codegen
Node.js library that generates Typescript clients based on the OpenAPI specification. There's no named parameter in JavaScript or TypeScript, because of that, we offer the flag --useOptions to generate code in two different styles.
Dependency injection in Node.js with TypeDI
Dependency injection is an essential concept in object-oriented programming. It is a way to decouple the creation of objects from their usage. In this article, we will learn what dependency injection is and how we can use it in Node.js applications using the TypeDI library.
Dependency injection with Node.js, Express.js and TypeScript
Web frameworks like Spring and ASP.NET Core have dependency injection solutions built in. Unfortunately, thatβs not the case for most Node.js web frameworks, including Express.js.
Temporal "Hello World!" app in TypeScript
This tutorial is a work in progress. Some sections may be incomplete, out of date, or missing. We're working to update it.
How to Use Object Destructuring in JavaScript
The object destructuring is a useful JavaScript feature to extract properties from objects and bind them to variables.
Beta Support for CRDs in the Terraform Provider for Kubernetes
The kubernetes_manifest resource can be used to create any Kubernetes API resource, including custom resource definitions. See the provider documentation page for more information on the additional attributes available for this resource.
CI/CD using Tekton, Argo CD and Knative Serverless Applications
This page is generated using information from: https://github.com/digitalocean/container-blueprints/blob/master/DOKS-CI-CD/README.md. This blueprint will show you how to implement a CI/CD solution using free and popular open source implementations that run on Kubernetes clusters natively.
How To Set Up Argo CD With Terraform To Implement Pure GitOps
Argo CD is an extremely popular declarative, GitOps-based continuous delivery tool. It is an open source tool and part of the Cloud Native Computing Foundation (CNCF). It is effortless to install and set up, and it offers various features and a jazzy UI to manage all your application requirements.
AWS MonitoringβββQuick and Easy
Monitoring your services is production is a must for most serious businesses. People who develop on AWS, typically use AWS Cloudwatch for setting up monitoring. Typical metrics to monitor are latency, faults, invocations, throttles etc.
FaaS on Kubernetes: From AWS Lambda & API Gateway To Knative & Kong API Gateway
Serverless functions are modular pieces of code that respond to a variety of events. It's a fast and efficient way to run single-purpose services/functions.
Mastering AWS CDK Aspects
CDK Aspects are a powerful tool provided by the AWS Cloud Development Kit (CDK). They are utilizing the Visitor Pattern. By applying a CDK Aspect to a specific scope, you get access to every child node within it. You can inspect them or alter them.
CDK for Terraform: Enabling Python & TypeScript Support
Developers are accustomed to using their own tooling and writing in familiar languages.
JavaPoet
JavaPoet is a Java API for generating .java source files. Source file generation can be useful when doing things such as annotation processing or interacting with metadata files (e.g., database schemas, protocol formats).
Annotation Processing 101
In this blog entry I would like to explain how to write an annotation processor. First, I am going to explain to you what annotation processing is, what you can do with that powerful tool and finally what you cannot do with it.
Kubernetes Traffic Engineering with BGP β Andrew Sy Kim
Kubernetes Traffic Engineering with BGP July 23, 2018 Turns out you can use good old BGP to power your Kubernetes network! In this post Iβll cover how to build your Kubernetes network with BGP and how to use it for traffic engineering in your Kubernetes clusters! My hope is that this post gives yo
A Step-by-Step Guide to Connecting Prometheus to pfSense via SNMP
The snmp_exporter is one of the trickier Prometheus components to set up because thereβs a few moving parts involved in a full configuration and because of the need to run an extra tool to generate the snmp.yml config file from the ever-mysterious βMIBSβ.
k3d
What is k3d?ΒΆ k3d is a lightweight wrapper to run k3s (Rancher Labβs minimal Kubernetes distribution) in docker. k3d makes it very easy to create single- and multi-node k3s clusters in docker, e.g. for local development on Kubernetes.
Lightweight Kubernetes
K3s is a highly available, certified Kubernetes distribution designed for production workloads in unattended, resource-constrained, remote locations or inside IoT appliances.
OpenWhisk deployment on a Kubernetes Cluster
Besides the criticism of Serverless computing [1], it is quite popular these days especially the AWS lambda functions. In this blog, we will deploy OpenWhisk one of the popular opensource serverless computing platforms along with Kubernetes to create a serverless computing environment.
These 10 New Features Make Groovy 4.0 AWESOME!
Sealed types, switch expressions, and record types. Here are just a few new features introduced in the latest Groovy 4.0 release. In this video, I want to show you ten things that make Groovy 4.0 amazing. And to keep this video short, weβre not going to dive deep into each of them.
Serverless Land
Getting Started with Java Message Service (JMS)
Remote procedure call (RPC) systems, including Java RMI, are synchronous -- the caller must block and wait until the called method completes execution, and thus offer no potential for developing loosely coupled enterprise applications without the use of multiple threads.
Introducing Test Suites
As projects grow in size and complexity and otherwise mature, they tend to accumulate a large collection of automated tests. Testing your software at multiple levels of granularity is important to surface problems quickly and to increase developer productivity. In Gradle 7.
Overview
JCL is a configurable, dynamic and extensible custom classloader that loads java classes directly from Jar files and other sources. The motivation was to create isolated classloaders, which can be easily integrated with IoC frameworks like Spring and with web applications.
How to use custom ClassLoader to load jars in runtime
To load calsses in runtime java uses ClassLoader mechanism which is based on next core principles: delegation - by default uses parent-first delegation, - child ClassLoader will be used if parent is not able to find or load class.
Retrofitting null-safety onto Java at Meta
Null dereferencing is a common type of programming error in Java. On Android, NullPointerException (NPE) errors are the largest cause of app crashes on Google Play.
Kobee1203/schema-org-java
Schema-org-java is a library for creating schema.org entities. The entities can be easily generated with the maven plugin, programmatically, or in command line.
Java SPI - a simple hello world service
I recently needed a simple example of an SPI implementation I could send around as copy and paste template. After some looking around I found some tutorials, but most of them were rather heavy in the implementation and are thereby loosing the point of being a simple extension system within the JDK.
Modularizing with Micronaut Framework
In this blog post, Iβm going to explain how you can make use of the Micronaut framework to organize your project code in such a way that you can externalize and modularize some of your @Beans. These beans can be used as βcommonβ and can be shared between several projects.
Implementing Plugins with Java's Service Provider Interface
In this article, we are going to talk about Javaβs Service Provider Interface (SPI). We will have a short overview of what the SPI is and describe some cases where we can use it. Then we will give an implementation of an SPI for a practical use case.
Java SPI
Convert SSL .pem to .p12 with or without OpenSSL
Using openssl, the command is... However, I will need to do this often and have written a Java class that handles this and more (my application is mostly .jsp with Tomcat and Apache). When I try run the same command from Java using Runtime.
Transform JSON-LD in Java
In this tutorial, weβll learn how to transform a Java Object to JSON-LD and vice versa. Also learn how to verify the schema of JSON-LD. JSON-LD is a JSON-based format which is used to represent structured data and linked data. Schema of JSON-LD can be found in documentation of schema.org.
JSONLD-JAVA
This is a Java implementation of the JSON-LD 1.0 specification and the JSON-LD-API 1.0 specification. The Options specified by the JSON-LD API Specification are accessible via the com.github.jsonldjava.core.JsonLdOptions class, and each JsonLdProcessor.
An ActivityPub Philosophy
This is going to be a look at my philosophy and views on ActivityPub and why I believe the solutions to ActivityPub criticisms must come from communities. I believe there needs to be a clear way for communities to form and build upon the ActivityPub specification.
RecordBuilder
Java 16 introduces Records. While this version of records is fantastic, it's currently missing some important features normally found in data classes: a builder and "with"ers. This project is an annotation processor that creates: Hat tip to Benji Weber for the Withers idea.
Verifying a Digital Signature
If you have data for which a digital signature was generated, you can verify the authenticity of the signature. To do so, you need In this example you write a VerSig program to verify the signature generated by the GenSig program.
activitypub-mock
A A mock ActivityPub server to use in testing code
delightful-activitypub-development
Frameworks Bonfire: An extensible framework with a big focus on customisation and flexibility. Can be used to build new federated apps while focusing on a specific use case rather than reimplementing lots of boilerplate AGPL-3.
How to implement a basic ActivityPub server
Today weβll be looking at how to connect the protocols powering Mastodon in the simplest way possible to enter the federated network.
How to implement remote following for your ActivityPub project
Recently I contributed an addition to the Bookwyrm social reading software to enable "remote following". Bookwyrm uses the ActivityPub protocol for decentralised online social interaction.
Awaitility
Testing asynchronous systems is hard. Not only does it require handling threads, timeouts and concurrency issues, but the intent of the test code can be obscured by all these details.
Gradle Docker Plugin User Guide & Examples
Gradle plugin for managing Docker images and containers using via its remote API. The heavy lifting of communicating with the Docker remote API is handled by the Docker Java library.
Add Build Info to an 11ty Site
In a recent update to my site, I decided to show a helpful notice in my footer that timestamps my build, writes the abbreviated commit hash from Git, and links to the changeset on my GitHub repo for ease of reference.
Accordion with CSS3
Today weβll experiment some more with the adjacent and general sibling combinator and the :checked pseudo-class. Using hidden inputs and labels, we will create an accordion that will animate the content areas on opening and closing.
JWT.IO
JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. JWT.IO allows you to decode, verify and generate JWT.
Lunr
Designed to be small, yet full featured, Lunr enables you to provide a great search experience without the need for external, server-side, search services. Add powerful language processors to give more accurate results to user queries, or tweak the built-in processors to better fit your content.
Adding Search to your Eleventy Static Site with Lunr
I recently came back from connect.tech (one of my favorite conferences). I had the honor of giving not one, but two different talks. One of them was on static sites, or the JAMstack. This is a topic I've covered many times in the past, but it had been a while since I gave a presentation on it.
Git commits from GitLab CI
Last week I implemented a search functionality for a static website with Lunr.js. The way I implemented the search system, depends on 2 files to work, the pagesData.json and the searchIndex.json.
Husky - Git hooks
How to automatically create a new MR on GitLab with GitLab CI
At fleetster, we have our own instance of GitLab and we rely a lot on GitLab CI.
node-html-markdown
NHM is a fast HTML to markdown converter, compatible with both node and the browser. We had a need to convert gigabytes of HTML daily very quickly. All libraries we found were too slow with node.
Server to Server Auth with Amazon Cognito
Amazon Cognito is a managed service that provides federated identity, access controls, and user management with multi-factor authentication for web and mobile applications.
jEnv - Manage your Java environment
Discover jenv, the command line Java manager
Four Golden Signals for Monitoring Distributed Systems
Read this guide on the four golden signals for distributed systems monitoring and how to effectively monitor your distributed systems.
Stubbing and Mocking in Java with the Spock Testing Framework
Learn how to create true Java unit tests by mocking all external dependencies in your unit tests with the Spock testing framework.
Spock Primer
Spock Mock Cheatsheet | Object Partners
Summary of unit test mocking capabilites and syntax of Spock test framework
Spock with Spring Boot 2.3 and JUnit 5
Recently, in one of my pet projects, I decided to try writing tests using Spock framework. It was a great experience, I enjoyed it a lot. Except for the part of setting it up, which was somewhat annoying.
Java Volatile Keyword
The Java volatile keyword guarantees variable visibility across threads, meaning reads and writes are visible across threads.
Test Containers
An interesting project which provides bindings to manage containers within your tests
AWS Layers and how to install git in your lambda job
Looking at implementing AWS lambda functions to update blog content, for which git access would be a prerequisite
Kotlin Nullable Types vs. Java Optional
When Java 8 introduced the Optional type many years ago, I was happy like a bird. I already knew about the Optional type from variousβ¦
A Framework for deploying WordPress sites with Capistrano 3
A Framework for deploying WordPress sites with Capistrano 3
HTML5 WordPress Starter Theme
Roots: HTML5 WordPress Starter Theme
PHP shell scripts for Magento
A very helpful guide to creating Magento shell scripts the correct way
How To Configure Virtual Memory Swap File on a VPS
Handy guide to creating a swap file
Recent Exploit using Fake Magento Extensions
Recent Exploit using Fake Magento Extensions
CSS character escape sequences
Escaping special characters in CSS
The Dark Corners of Your UI
The Dark Corners of Your UI
Editing Magento Translate.csv File
Theme specific translation changes in Magento
Rewriting a Block Class
Helpful method to override core / third party Magento blocks
Joomla! 3.3.0 Released
Joomla 3.3 is out, with a new minimum requirement of PHP 5.3.10
Joomla! 3.3.0 Released
Joomla 3.3 is out, with a new minimum requirement of PHP 5.3.10
netz98/n98-magerun
Feature rich CLI tool for Magento, including upgrade in Maintentance Mode
Improve the payment experience with animations
Interesting use of animation for payment interactions
The Ebb of the Web
A thought invoking article regarding the future of the web
12 Little-Known CSS Facts
Some lesser known CSS features
How to Deal with Merge Conflicts in Git
How to Deal with Merge Conflicts in Git
drewhunter/EmptyHandles
Helpful Magento module that enables empty results page modifications
Writing to vagrant synced folders
Fix vagrant share file permissions
xkcd: Heartbleed Explanation
The award for best explanation of heartbleed goes to XKCD
HTTPS Mixed Content: Still the Easiest Way to Break SSL
HTTPS Mixed Content: Still the Easiest Way to Break SSL
Better integration for open web apps on Android
Native packaging for web apps with Firefox Mobile
Install Apache Solr 4.4 on Ubuntu 12.04 with Tomcat 7 and MySql Data Import
A guide to installing and configuring a solr instance
How To Create An Admin-Manageable Magento Entity For Brands
Developing a Brand management module for Magento
Avoiding Optional Dependencies
Interesting article regarding avoiding optional dependencies
classyllama/Wiz
Wiz - a CLI interface for Magento
Flexbox Bar Navigation Demo
Flexbox navigation example
Aerotwist - My Performance Audit Workflow
First time I have come across WebPageTest
Only 90s Web Developers Remember This
Ahhh, the <marquee> tag. A true gem.
Continuum
Continuum
The Battle for the Body Field
The Battle for the Body Field
Atom
Beta code editor 'atom', created by github
Protect Against Humans.txt Query-String Scans
Protect Against Humans.txt Query-String Scans
Protect Against Humans.txt Query-String Scans
Protect Against Humans.txt Query-String Scans