# property

Published articles for property.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## UniFi Travel Router Long-Range (UTR-LR): $99 Travel Router Released

DevFeed: [UniFi Travel Router Long-Range (UTR-LR): $99 Travel Router Released](<https://devfeed.tech/articles/unifi-travel-router-long-range-utr-lr-released-worth-99-17366.md>)

Original publisher: [Read original article](<https://nascompares.com/2026/08/28/unifi-travel-router-long-range-utr-lr-released-worth-99/>)

Author: Rob Andrews

Published: 2026-08-28T13:29:56Z

Content type: news

Language: en

Sources: [NAS Compares](<https://devfeed.tech/sources/nas-compares.md>)

Topics: [UniFi Travel Router](<https://devfeed.tech/topics/unifi-travel-router.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [Network](<https://devfeed.tech/topics/network.md>)

Tags: [10-dbi-antenna](<https://devfeed.tech/tags/10-dbi-antenna.md>), [2x2-mimo](<https://devfeed.tech/tags/2x2-mimo.md>), [4-dbi-antenna](<https://devfeed.tech/tags/4-dbi-antenna.md>), [5g-tethering](<https://devfeed.tech/tags/5g-tethering.md>), [amneziawg](<https://devfeed.tech/tags/amneziawg.md>), [antenna-gain](<https://devfeed.tech/tags/antenna-gain.md>), [business-travel-tech](<https://devfeed.tech/tags/business-travel-tech.md>), [captive-portal](<https://devfeed.tech/tags/captive-portal.md>), [digital-nomad-gear](<https://devfeed.tech/tags/digital-nomad-gear.md>), [directional-antenna](<https://devfeed.tech/tags/directional-antenna.md>), [dual-band-wifi](<https://devfeed.tech/tags/dual-band-wifi.md>), [ethernet-uplink](<https://devfeed.tech/tags/ethernet-uplink.md>), [existing](<https://devfeed.tech/tags/existing.md>), [external-antenna](<https://devfeed.tech/tags/external-antenna.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [geo-based-policy](<https://devfeed.tech/tags/geo-based-policy.md>), [gigabit-ethernet](<https://devfeed.tech/tags/gigabit-ethernet.md>), [high-gain-antenna](<https://devfeed.tech/tags/high-gain-antenna.md>), [hinged-antenna](<https://devfeed.tech/tags/hinged-antenna.md>), [hotel](<https://devfeed.tech/tags/hotel.md>), [hotel-wifi](<https://devfeed.tech/tags/hotel-wifi.md>), [internet](<https://devfeed.tech/tags/internet.md>), [internet-latency-reporting](<https://devfeed.tech/tags/internet-latency-reporting.md>), [lcm-display](<https://devfeed.tech/tags/lcm-display.md>), [location-aware-policies](<https://devfeed.tech/tags/location-aware-policies.md>), [long-range-travel-router](<https://devfeed.tech/tags/long-range-travel-router.md>), [mobile-networking](<https://devfeed.tech/tags/mobile-networking.md>), [multi-uplink](<https://devfeed.tech/tags/multi-uplink.md>), [network](<https://devfeed.tech/tags/network.md>), [network-cloning](<https://devfeed.tech/tags/network-cloning.md>), [networking](<https://devfeed.tech/tags/networking.md>), [office](<https://devfeed.tech/tags/office.md>), [on-site-deployments](<https://devfeed.tech/tags/on-site-deployments.md>), [openvpn-client](<https://devfeed.tech/tags/openvpn-client.md>), [property](<https://devfeed.tech/tags/property.md>), [router](<https://devfeed.tech/tags/router.md>), [travel](<https://devfeed.tech/tags/travel.md>), [uncategorised](<https://devfeed.tech/tags/uncategorised.md>), [unifi](<https://devfeed.tech/tags/unifi.md>), [unifi-travel-router](<https://devfeed.tech/tags/unifi-travel-router.md>)

### AI overview

The UniFi Travel Router Long-Range (UTR-LR) is a compact $99 travel router for creating a private, managed network on shared hotel, rental property, office, or other internet connections. It joins the existing $79 UniFi Travel Router rather than replacing it.

### Source excerpt

What is the UniFi Travel Router LR? The UniFi Travel Router Long-Range, or UTR-LR, is a compact $99 travel router designed to provide a private, managed network when using hotel, rental property, office or other shared internet connections. It joins the existing $79 UniFi Travel Router rather than replacing it, retaining the same general platform [...]

## Waiting for PostgreSQL 19 - SQL Property Graph Queries (SQL/PGQ)

DevFeed: [Waiting for PostgreSQL 19 - SQL Property Graph Queries (SQL/PGQ)](<https://devfeed.tech/articles/waiting-for-postgresql-19-sql-property-graph-queries-sql-pgq-33693.md>)

Original publisher: [Read original article](<https://www.depesz.com/2026/07/31/waiting-for-postgresql-19-sql-property-graph-queries-sql-pgq/>)

Author: depesz

Published: 2026-07-31T16:57:44Z

Content type: opinion

Language: en

Sources: [select \* from depesz;](<https://devfeed.tech/sources/select-from-depesz.md>)

Topics: [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Graphs](<https://devfeed.tech/topics/graphs.md>), [function](<https://devfeed.tech/topics/function.md>), [pattern matching](<https://devfeed.tech/topics/pattern-matching.md>)

Tags: [function](<https://devfeed.tech/tags/function.md>), [graph](<https://devfeed.tech/tags/graph.md>), [graphs](<https://devfeed.tech/tags/graphs.md>), [pattern-matching](<https://devfeed.tech/tags/pattern-matching.md>), [pg19](<https://devfeed.tech/tags/pg19.md>), [pgq](<https://devfeed.tech/tags/pgq.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [property](<https://devfeed.tech/tags/property.md>), [sql](<https://devfeed.tech/tags/sql.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [waiting](<https://devfeed.tech/tags/waiting.md>)

### AI overview

The article discusses PostgreSQL's SQL/PGQ implementation for property graph queries, including GRAPH_TABLE, graph pattern matching, and related DDL commands. It notes that the change was later rolled back and expresses the author's uncertainty about the practical benefits and usability of the syntax.

### Source excerpt

Important update This change has been rolled back. Discussion can be found here. On 16th of March 2026, Peter Eisentraut committed patch: SQL Property Graph Queries (SQL/PGQ) Implementation of SQL property graph queries, according to SQL/PGQ standard (ISO/IEC 9075-16:2023). This adds: - GRAPH_TABLE table function for graph pattern matching - DDL commands ... Continue reading "Waiting for PostgreSQL 19 - SQL Property Graph Queries (SQL/PGQ)"

## OpenXR Introduces Tiered Adopter Fees to Expand Its Ecosystem of Conformant Implementations

DevFeed: [OpenXR Introduces Tiered Adopter Fees to Expand Its Ecosystem of Conformant Implementations](<https://devfeed.tech/articles/openxr-introduces-tiered-adopter-fees-to-expand-its-ecosystem-of-conformant-implementations-15119.md>)

Original publisher: [Read original article](<https://www.khronos.org/blog/openxr-introduces-tiered-adopter-fees>)

Author: jphilips (jeff@khronosgroup.org)

Published: 2026-07-22T15:47:00Z

Content type: release

Language: en

Sources: [Blogs Khronos Blog](<https://devfeed.tech/sources/blogs-khronos-blog.md>)

Topics: [OpenXR](<https://devfeed.tech/topics/openxr.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [company](<https://devfeed.tech/tags/company.md>), [ecosystem](<https://devfeed.tech/tags/ecosystem.md>), [enterprise](<https://devfeed.tech/tags/enterprise.md>), [fees](<https://devfeed.tech/tags/fees.md>), [open](<https://devfeed.tech/tags/open.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openxr](<https://devfeed.tech/tags/openxr.md>), [organization](<https://devfeed.tech/tags/organization.md>), [payment](<https://devfeed.tech/tags/payment.md>), [platform](<https://devfeed.tech/tags/platform.md>), [platforms](<https://devfeed.tech/tags/platforms.md>), [products](<https://devfeed.tech/tags/products.md>), [property](<https://devfeed.tech/tags/property.md>), [technical](<https://devfeed.tech/tags/technical.md>)

### AI overview

Khronos is introducing OpenXR Adopter Program subscription and renewal fees based on company size. The change is intended to make official conformance more accessible to smaller organizations while preserving the existing technical requirements.

### Source excerpt

New company-size-based fees make the formal OpenXR conformance process accessible to smaller implementers while preserving technical rigor.

## The experimental CSS border-shape property for non-rectangular elements

DevFeed: [The experimental CSS border-shape property for non-rectangular elements](<https://devfeed.tech/articles/border-shape-the-future-of-the-non-rectangular-web-28777.md>)

Original publisher: [Read original article](<https://una.im/border-shape/>)

Published: 2026-02-19T00:00:00Z

Content type: tutorial

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [Web platform](<https://devfeed.tech/topics/web-platform.md>), [Chrome Canary](<https://devfeed.tech/topics/chrome-canary.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [chrome-canary](<https://devfeed.tech/tags/chrome-canary.md>), [code](<https://devfeed.tech/tags/code.md>), [css](<https://devfeed.tech/tags/css.md>), [demo](<https://devfeed.tech/tags/demo.md>), [experimental](<https://devfeed.tech/tags/experimental.md>), [property](<https://devfeed.tech/tags/property.md>), [syntax](<https://devfeed.tech/tags/syntax.md>), [web-platform](<https://devfeed.tech/tags/web-platform.md>)

### AI overview

This article introduces the experimental CSS border-shape property, which defines custom border geometry for non-rectangular elements. It explains how backgrounds, borders, outlines, and shadows follow the new shape, compares it with border-radius, and demonstrates creating tooltips with a fallback.

### Source excerpt

Learn about new geometry capabilities with this game-changing experimental CSS feature.

## Testing Loading Skeletons

DevFeed: [Testing Loading Skeletons](<https://devfeed.tech/articles/testing-loading-skeletons-28899.md>)

Original publisher: [Read original article](<https://glebbahmutov.com/blog/testing-loading-skeletons/>)

Author: Gleb Bahmutov

Published: 2025-12-26T05:00:00Z

Content type: tutorial

Language: en

Sources: [Gleb Bahmutov](<https://devfeed.tech/sources/gleb-bahmutov.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Cypress](<https://devfeed.tech/topics/cypress.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [component](<https://devfeed.tech/tags/component.md>), [css](<https://devfeed.tech/tags/css.md>), [cypress](<https://devfeed.tech/tags/cypress.md>), [map](<https://devfeed.tech/tags/map.md>), [products](<https://devfeed.tech/tags/products.md>), [property](<https://devfeed.tech/tags/property.md>), [test](<https://devfeed.tech/tags/test.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

A tutorial on testing loading skeletons with Cypress. It covers verifying that a skeleton appears while data loads, checking its position against the loaded content, and fixing CSS that causes layout shifts.

### Source excerpt

Loading skeletons are displayed while the real data is loading. For example, the login passwords are displayed after 1 second in the GIF

## Selectively running Android UI tests

DevFeed: [Selectively running Android UI tests](<https://devfeed.tech/articles/selectively-running-android-ui-tests-25843.md>)

Original publisher: [Read original article](<https://segunfamisa.com/posts/selectively-run-android-ui-tests>)

Author: Segun Famisa

Published: 2024-12-14T00:00:00Z

Content type: tutorial

Language: en

Sources: [Segun Famisa](<https://devfeed.tech/sources/segun-famisa.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Instrumentation](<https://devfeed.tech/topics/instrumentation.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [android](<https://devfeed.tech/tags/android.md>), [ci](<https://devfeed.tech/tags/ci.md>), [flag](<https://devfeed.tech/tags/flag.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [instrumentation](<https://devfeed.tech/tags/instrumentation.md>), [junit](<https://devfeed.tech/tags/junit.md>), [property](<https://devfeed.tech/tags/property.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [test-lab](<https://devfeed.tech/tags/test-lab.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

This tutorial explains how to selectively run additional checks in Android UI tests. It uses a custom annotation and AndroidJUnitRunner filters to target specific tests, then passes arguments through adb or Gradle so the checks can be enabled only under chosen conditions, such as CI runs.

### Source excerpt

Intro This is really a note for my future self. Recently, I had a situation where I wanted to perform some extra checks after a test has been run. These additional checks are done after each test is run via a Junit rule SpecialRule which is applied to a test suite. For the purpose of illustration, let's say our SpecialRule looks like this: class SpecialRule : TestRule { override fun apply(statement: Statement, desc: Description): Statement { return object : Statement() { override fun evaluate() { try { // Run the test. statement.evaluate() } finally { // Perform extra checks after the test. Log.d("SpecialRule", "performing extra checks") } } } } } However, we were concerned about the run duration of the tests being extended significantly by the extra checks, so we wanted a bit more control. That led to some constraints. We wanted to: be able to selectively perform those checks on specific tests perform those checks only under certain conditions. Constraint #1 - Selectively perform additional checks on specific tests The immediate approach that came to mind was to use a custom annotation - @SpecialTest, and then somehow find a way to target the tests that are annotated with this. Luckily, the AndroidJunitRunner provides various filters to target specific annotations. For example, to run all the tests annotated with @SpecialTest , we will use something like: adb shell am instrument -w -e annotation com.mypackage.SpecialTest com.android.foo/androidx.test.runner.AndroidJUnitRunner If you use Flank to run your tests on Firebase Test Lab, then you can use: --test-targets: "annotation com.mypackage.SpecialTest" Now that we can selectively target the tests, we need to extend our test rule to only perform these checks if the test is annotated with @SpecialTest annotation. Our SpecialRule then becomes something like: class SpecialRule : TestRule { override fun apply(statement: Statement, desc: Description): Statement { return object : Statement() { override fun evaluate() { t

## CSS fix to prevent orphan icons dropping to a new line

DevFeed: [CSS fix to prevent orphan icons dropping to a new line](<https://devfeed.tech/articles/css-fix-to-prevent-orphan-icons-dropping-to-a-new-line-37254.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/css-fix-to-prevent-orphan-icons/>)

Author: Stanko

Published: 2024-11-12T00:00:00Z

Content type: tutorial

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [HTML](<https://devfeed.tech/topics/html.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [css](<https://devfeed.tech/tags/css.md>), [element](<https://devfeed.tech/tags/element.md>), [legibility](<https://devfeed.tech/tags/legibility.md>), [property](<https://devfeed.tech/tags/property.md>)

### AI overview

This tutorial explains how CSS text wrapping can prevent short text or icons from becoming orphaned on a separate line. It presents text-wrap: balance and text-wrap: pretty, noting that pretty uses a slower layout algorithm and is not supported in Firefox or Safari at the time of writing.

### Source excerpt

When an HTML element becomes too narrow, its content starts to wrap into multiple lines. This is intended behavior and works well in many cases. However, for short text, it doesn't look great when the last word or icon drops to the next line, becoming an orphan. For example, you might see something like this: Click here for more info It doesn't look great when the icon is left alone on its own row. Luckily, there's a simple CSS solution. Solution # Only thing we need to add is a single line of CSS: text-wrap: balance; This property tells the browser to wrap the text in a way that best balances the number of characters on each line, enhancing layout quality and legibility. The browser will calculate this for us, preventing orphaned icons or words. text-wrap: pretty # There is also the pretty value for text-wrap, which is even better. It works in a similar way, but the browser will use a slower algorithm that prioritizes better layout over speed. Unfortunately, at the time of writing, pretty is not supported in Firefox nor Safari. However, you can define both values, and browsers that don't support pretty will fall back to balance. text-wrap: balance; text-wrap: pretty; /* This will be ignored by browsers that don't support it. */ Demo # Here's a simple demo. Use the handle on the right to resize the element and see how text breaks with and without the balance property applied. Defaulttext-wrap: balancetext-wrap: pretty Unfortunately your browser doesn't support text-wrap: pretty. Click here for more info A somewhat longer text that will break into multiple lines

## CSS @property and browser support for custom properties

DevFeed: [CSS @property and browser support for custom properties](<https://devfeed.tech/articles/property-next-gen-css-variables-now-with-universal-browser-support-28759.md>)

Original publisher: [Read original article](<https://una.im/2024-07-12-at-property-baseline/>)

Published: 2024-07-12T00:00:00Z

Content type: article

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [css](<https://devfeed.tech/tags/css.md>), [development](<https://devfeed.tech/tags/development.md>), [property](<https://devfeed.tech/tags/property.md>), [variables](<https://devfeed.tech/tags/variables.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

This article discusses the CSS @property feature, describing it as a way to use CSS variables with broad browser support.

### Source excerpt

The CSS Anchor Positioning API is a game-changer in web development because it lets you natively position elements.

## Kotlin Reflection: Method and property references

DevFeed: [Kotlin Reflection: Method and property references](<https://devfeed.tech/articles/kotlin-reflection-method-and-property-references-39214.md>)

Original publisher: [Read original article](<https://kt.academy/article/ak-reflection>)

Published: 2023-10-16T00:15:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [classes](<https://devfeed.tech/topics/classes.md>), [function](<https://devfeed.tech/topics/function.md>), [properties](<https://devfeed.tech/topics/properties.md>)

Tags: [classes](<https://devfeed.tech/tags/classes.md>), [dependency-injection](<https://devfeed.tech/tags/dependency-injection.md>), [functions](<https://devfeed.tech/tags/functions.md>), [gson](<https://devfeed.tech/tags/gson.md>), [interfaces](<https://devfeed.tech/tags/interfaces.md>), [java](<https://devfeed.tech/tags/java.md>), [koin](<https://devfeed.tech/tags/koin.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [property](<https://devfeed.tech/tags/property.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

This tutorial introduces Kotlin reflection, explaining how programs inspect classes, functions, properties, annotations, constructors, and other source-code elements at runtime. It also describes uses in Gson serialization, Koin dependency injection, and the hierarchy of Kotlin reflection reference types.

### Source excerpt

The general hierarchy of Kotlin reference classes, and details about method and property references.

## Four new CSS features for smooth entry and exit animations

DevFeed: [Four new CSS features for smooth entry and exit animations](<https://devfeed.tech/articles/four-new-css-features-for-smooth-entry-and-exit-animations-28752.md>)

Original publisher: [Read original article](<https://una.im/2023-08-16-entry-exit-animations/>)

Published: 2023-08-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [how to create smooth CSS transitions](<https://devfeed.tech/topics/how-to-create-smooth-css-transitions.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [behavior](<https://devfeed.tech/tags/behavior.md>), [css](<https://devfeed.tech/tags/css.md>), [display](<https://devfeed.tech/tags/display.md>), [features](<https://devfeed.tech/tags/features.md>), [property](<https://devfeed.tech/tags/property.md>), [visibility](<https://devfeed.tech/tags/visibility.md>)

### AI overview

The article presents four CSS features for creating smooth entry and exit animations: animating display and content-visibility in keyframe timelines, the transition-behavior property, the @starting-style rule, and the overlay property.

### Source excerpt

These four new features include: animating display and content-visibility on a keyframe timeline, the transition-behavior property, the @starting-style rule, and the overlay property.

## Map as a property delegate

DevFeed: [Map as a property delegate](<https://devfeed.tech/articles/map-as-a-property-delegate-39211.md>)

Original publisher: [Read original article](<https://kt.academy/article/ak-map-delegate>)

Published: 2023-05-08T00:15:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [properties](<https://devfeed.tech/topics/properties.md>), [interface](<https://devfeed.tech/topics/interface.md>), [object](<https://devfeed.tech/topics/object.md>)

Tags: [function](<https://devfeed.tech/tags/function.md>), [interface](<https://devfeed.tech/tags/interface.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [maps](<https://devfeed.tech/tags/maps.md>), [property](<https://devfeed.tech/tags/property.md>), [standard-library](<https://devfeed.tech/tags/standard-library.md>), [state](<https://devfeed.tech/tags/state.md>), [variables](<https://devfeed.tech/tags/variables.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

A Kotlin tutorial explains how Map can act as a read-only property delegate, including use cases for objects with known and dynamically added properties. It also explains variable assignment and shared mutable-object behavior through a community puzzle.

### Source excerpt

How do we use Map as a property delegate, and why the result of a famous puzzler should not be surprising.

## Lazy property delegate

DevFeed: [Lazy property delegate](<https://devfeed.tech/articles/lazy-property-delegate-39210.md>)

Original publisher: [Read original article](<https://kt.academy/article/ak-lazy>)

Published: 2023-03-27T00:15:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [performance-optimization](<https://devfeed.tech/topics/performance-optimization.md>), [properties](<https://devfeed.tech/topics/properties.md>)

Tags: [kotlin](<https://devfeed.tech/tags/kotlin.md>), [lazy](<https://devfeed.tech/tags/lazy.md>), [performance](<https://devfeed.tech/tags/performance.md>), [property](<https://devfeed.tech/tags/property.md>), [regex](<https://devfeed.tech/tags/regex.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

This tutorial explains Kotlin's lazy property delegate, which postpones read-only value initialization until first use. It presents use cases involving expensive object construction, application startup, testing, regular-expression compilation, and computed properties.

### Source excerpt

What is lazy delegate, and what are its real-life use cases.

## Property delegation

DevFeed: [Property delegation](<https://devfeed.tech/articles/property-delegation-39213.md>)

Original publisher: [Read original article](<https://kt.academy/article/ak-property-delegation>)

Published: 2023-03-20T00:15:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [properties](<https://devfeed.tech/topics/properties.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>)

Tags: [behavior](<https://devfeed.tech/tags/behavior.md>), [function](<https://devfeed.tech/tags/function.md>), [implement](<https://devfeed.tech/tags/implement.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [property](<https://devfeed.tech/tags/property.md>), [property-delegation](<https://devfeed.tech/tags/property-delegation.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

This tutorial explains Kotlin property delegation, a feature for extracting reusable property patterns such as lazy, observable, binding, and dependency-injection behaviors. It describes how delegated getters and setters work and how to implement custom property delegates.

### Source excerpt

What is property delegation, how does it work, and how can we implement our custom property delegate.

## Next Billion Fellowship Cohort 3 - Call for applications

DevFeed: [Next Billion Fellowship Cohort 3 - Call for applications](<https://devfeed.tech/articles/next-billion-fellowship-cohort-3-call-for-applications-17058.md>)

Original publisher: [Read original article](<https://blog.ethereum.org/en/2023/03/16/fellowship-cohort-3-applications>)

Author: Next Billion

Published: 2023-03-16T00:00:00Z

Content type: article

Language: en

Sources: [Ethereum Foundation Blog](<https://devfeed.tech/sources/ethereum-foundation-blog.md>)

Topics: [Ethereum](<https://devfeed.tech/topics/ethereum.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [3](<https://devfeed.tech/tags/3.md>), [devices](<https://devfeed.tech/tags/devices.md>), [digital](<https://devfeed.tech/tags/digital.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [next-billion](<https://devfeed.tech/tags/next-billion.md>), [property](<https://devfeed.tech/tags/property.md>), [state](<https://devfeed.tech/tags/state.md>)

### AI overview

The Ethereum Foundation's Next Billion Fellowship Cohort 3 seeks applications from changemakers, visionaries, and pragmatists developing stories, experiments, pilots, or research that explore fairer human cooperation and ways Ethereum could benefit a broader global population.

### Source excerpt

Ethereum is a living entity, distributed across time and space, accessible through our screens and communication devices. What gives it life are the myriad human relationships that have become intertwined with the roots, branches, and leaves of the Ethereum state tree. This single tree encodes immense value, digital property, and...

## Enum classes in Kotlin

DevFeed: [Enum classes in Kotlin](<https://devfeed.tech/articles/enum-classes-in-kotlin-39330.md>)

Original publisher: [Read original article](<https://kt.academy/article/kfde-enum>)

Published: 2023-02-01T00:01:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [enum class](<https://devfeed.tech/topics/enum-class.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>)

Tags: [abstract-class](<https://devfeed.tech/tags/abstract-class.md>), [class](<https://devfeed.tech/tags/class.md>), [constructor](<https://devfeed.tech/tags/constructor.md>), [enum](<https://devfeed.tech/tags/enum.md>), [enum-class](<https://devfeed.tech/tags/enum-class.md>), [enums](<https://devfeed.tech/tags/enums.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [property](<https://devfeed.tech/tags/property.md>), [superclass](<https://devfeed.tech/tags/superclass.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

This Kotlin tutorial explains how to define and use enum classes to represent finite sets of values. It covers enum values and their order, companion object utilities, exhaustive when conditions, stored state, and custom methods.

### Source excerpt

What are enum classes in Kotlin and how do we use them.

## SVG non-scaling circle and rectangle

DevFeed: [SVG non-scaling circle and rectangle](<https://devfeed.tech/articles/svg-non-scaling-circle-and-rectangle-37359.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/svg-non-scaling-circle-and-rectangle/>)

Author: Stanko

Published: 2022-05-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [SVG](<https://devfeed.tech/topics/svg.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [elements](<https://devfeed.tech/tags/elements.md>), [pixels](<https://devfeed.tech/tags/pixels.md>), [property](<https://devfeed.tech/tags/property.md>), [standard](<https://devfeed.tech/tags/standard.md>), [svg](<https://devfeed.tech/tags/svg.md>), [vector](<https://devfeed.tech/tags/vector.md>)

### AI overview

A tutorial explains how to create non-scaling SVG circles and rectangles using non-scaling strokes, line caps, and very short lines. It includes SVG code and discusses browser limitations and outlined shapes.

### Source excerpt

While making a simple SVG chart, I realized I would like to have non-scaling circles for data points. Unfortunately, SVG doesn't support it out of the box. If you are eager to see the result, jump to the examples below or play with the code on Codepen. Non-scaling stroke example # SVG does support non-scaling stroke width by setting vector-effect to non-scaling-stroke. When you set it, strokes will stay the same width no matter the scale of the SVG image. Try resizing your windowOn desktop, you should be able to resize each image on it's own by dragging the bottom right corner, and you'll see that the bottom line always stays 1px, while the upper one scales with the image: Stroke line cap # SVG also allows you to change how your line's ends look like, by using stroke-linecap property. Available options are butt, square and round, and on the image below they are presented in that order. As you can see square and round line caps are sticking out of our line. You probably figured it out, but that is exactly what we are going to use to create non-scaling circles and rectangles. Putting it all together # Up to this point we know that we can have a non-scaling stroke and that we can change its caps to be round and square. If we use a line with no length, sticking parts will join and create a perfect circle (or rectangle). SVG doesn't support lines with length of zero pixels, so we'll set the length to something negligible. The only thing left is to set a thick stroke width to create a shape. Circle # The code below will create a black circle with a radius of 50 and center at { x: 50, y: 50 }. <path d="M 50 50 l 0.0001 0" vectorEffect="non-scaling-stroke" strokeWidth="100" strokeLinecap="round" stroke="black" /> Let me quickly break the code down: d="M 50 50 l 0.0001 0" - this creates a super short line. The first two coordinates (M 50 50) are the line's start and our circle's center. The rest of the code (l 0.0001 0) draws a horizontal line 0.0001px longPlease be aware th

## Effective Kotlin Item 55: Consider associating elements to a map

DevFeed: [Effective Kotlin Item 55: Consider associating elements to a map](<https://devfeed.tech/articles/effective-kotlin-item-55-consider-associating-elements-to-a-map-39271.md>)

Original publisher: [Read original article](<https://kt.academy/article/ek-associate>)

Published: 2021-09-27T00:00:00Z

Content type: tutorial

Language: en

Sources: [Kt. Academy](<https://devfeed.tech/sources/kt-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [data](<https://devfeed.tech/topics/data.md>), [Code](<https://devfeed.tech/topics/code.md>), [identifier](<https://devfeed.tech/topics/identifier.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [class](<https://devfeed.tech/topics/class.md>)

Tags: [complexity](<https://devfeed.tech/tags/complexity.md>), [elements](<https://devfeed.tech/tags/elements.md>), [function](<https://devfeed.tech/tags/function.md>), [hashmap](<https://devfeed.tech/tags/hashmap.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [identifier](<https://devfeed.tech/tags/identifier.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [list](<https://devfeed.tech/tags/list.md>), [map](<https://devfeed.tech/tags/map.md>), [performance](<https://devfeed.tech/tags/performance.md>), [property](<https://devfeed.tech/tags/property.md>), [standard](<https://devfeed.tech/tags/standard.md>), [workshop-learning-programming](<https://devfeed.tech/tags/workshop-learning-programming.md>)

### AI overview

This Effective Kotlin article explains why key-based lookups are usually faster with maps than lists. It covers Kotlin hashmaps, converting iterables to maps with associate and associateBy, and the requirement that map keys be unique.

### Source excerpt

How associateBy is useful to improve the performance of finding elements.

## New aspect-ratio CSS property supported in Chromium, Safari Technology Preview, and Firefox Nightly

DevFeed: [New aspect-ratio CSS property supported in Chromium, Safari Technology Preview, and Firefox Nightly](<https://devfeed.tech/articles/new-aspect-ratio-css-property-supported-in-chromium-safari-technology-preview-and-firefox-nightly-28736.md>)

Original publisher: [Read original article](<https://una.im/2021-01-28-aspect-ratio/>)

Published: 2021-01-28T00:00:00Z

Content type: article

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [Chromium](<https://devfeed.tech/topics/chromium.md>), [Firefox Nightly](<https://devfeed.tech/topics/firefox-nightly.md>)

Tags: [chromium](<https://devfeed.tech/tags/chromium.md>), [css](<https://devfeed.tech/tags/css.md>), [firefox-nightly](<https://devfeed.tech/tags/firefox-nightly.md>), [property](<https://devfeed.tech/tags/property.md>), [safari](<https://devfeed.tech/tags/safari.md>)

### AI overview

The article reports support for the new CSS aspect-ratio property in Chromium, Safari Technology Preview, and Firefox Nightly. The property helps maintain spacing in responsive layouts.

### Source excerpt

The new CSS property that helps maintain spacing in responsive layouts.

## Krate, a better SharedPreferences experience

DevFeed: [Krate, a better SharedPreferences experience](<https://devfeed.tech/articles/krate-a-better-sharedpreferences-experience-27069.md>)

Original publisher: [Read original article](<https://zsmb.co/krate-a-better-sharedpreferences-experience/>)

Author: Márton Braun

Published: 2020-09-09T16:00:00Z

Content type: tutorial

Language: en

Sources: [zsmb.co](<https://devfeed.tech/sources/zsmb-co.md>)

Topics: [Library](<https://devfeed.tech/topics/library.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [delegates](<https://devfeed.tech/tags/delegates.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [marton-braun](<https://devfeed.tech/tags/marton-braun.md>), [property](<https://devfeed.tech/tags/property.md>), [zsmb](<https://devfeed.tech/tags/zsmb.md>), [zsmb-co](<https://devfeed.tech/tags/zsmb-co.md>), [zsmb13](<https://devfeed.tech/tags/zsmb13.md>), [zsmbco](<https://devfeed.tech/tags/zsmbco.md>)

### AI overview

Krate is a Kotlin wrapper library for SharedPreferences that uses delegated properties to make persistent key-value storage simpler. The article explains its basic usage, nullability and default values, and custom implementations.

### Source excerpt

Accessing SharedPreferences using its API directly can be somewhat inconvenient. Krate is a library built on Kotlin delegates to simplify the use of SharedPreferences.

## Examples of Classes in Kotlin

DevFeed: [Examples of Classes in Kotlin](<https://devfeed.tech/articles/examples-of-classes-in-kotlin-25009.md>)

Original publisher: [Read original article](<https://typealias.com/concepts/class/>)

Author: author@typealias.com (Dave Leeds)

Published: 2020-08-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Dave Leeds on Kotlin - typealias.com](<https://devfeed.tech/sources/dave-leeds-on-kotlin-typealias-com.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [classes](<https://devfeed.tech/tags/classes.md>), [code](<https://devfeed.tech/tags/code.md>), [concepts](<https://devfeed.tech/tags/concepts.md>), [constructor](<https://devfeed.tech/tags/constructor.md>), [examples](<https://devfeed.tech/tags/examples.md>), [function](<https://devfeed.tech/tags/function.md>), [generic](<https://devfeed.tech/tags/generic.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [programming](<https://devfeed.tech/tags/programming.md>), [property](<https://devfeed.tech/tags/property.md>), [reference](<https://devfeed.tech/tags/reference.md>), [visibility-modifier](<https://devfeed.tech/tags/visibility-modifier.md>)

### AI overview

A quick reference to creating classes in Kotlin, including a simple class with no properties or functions. It explains that classes combine variables and functions into a single unit.

### Source excerpt

One core concept in Kotlin is a class, which allows you to combine variables and functions into a single unit. This article is a quick reference that shows how to create classes in Kotlin. There's also a full article called Introduction to Classes and Objects, which is a gentle introduction to these concepts, so if you're new to the language, you might want to start there! A Simple Class For a class that has no properties or functions, you can create a class in Kotlin with very little code:

## content-visibility: the New CSS Property that Boosts your Rendering Performance

DevFeed: [content-visibility: the New CSS Property that Boosts your Rendering Performance](<https://devfeed.tech/articles/content-visibility-the-new-css-property-that-boosts-your-rendering-performance-28732.md>)

Original publisher: [Read original article](<https://una.im/2020-08-05-content-visibility/>)

Published: 2020-08-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>)

Tags: [css](<https://devfeed.tech/tags/css.md>), [load](<https://devfeed.tech/tags/load.md>), [performance](<https://devfeed.tech/tags/performance.md>), [property](<https://devfeed.tech/tags/property.md>), [visibility](<https://devfeed.tech/tags/visibility.md>)

### AI overview

The article introduces the CSS content-visibility property and describes how skipping rendering of offscreen content can improve initial load time and rendering performance.

### Source excerpt

Improve initial load time by skipping the rendering of offscreen content.

## The Houdini Properties and Values API is coming to CSS in Chromium 85

DevFeed: [The Houdini Properties and Values API is coming to CSS in Chromium 85](<https://devfeed.tech/articles/property-giving-superpowers-to-css-variables-28731.md>)

Original publisher: [Read original article](<https://una.im/2020-07-21-at-property/>)

Published: 2020-07-21T00:00:00Z

Content type: release

Language: en

Sources: [Una Kravets](<https://devfeed.tech/sources/una-kravets.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [API](<https://devfeed.tech/topics/api.md>), [Chromium](<https://devfeed.tech/topics/chromium.md>), [properties](<https://devfeed.tech/topics/properties.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [chromium](<https://devfeed.tech/tags/chromium.md>), [css](<https://devfeed.tech/tags/css.md>), [properties](<https://devfeed.tech/tags/properties.md>), [property](<https://devfeed.tech/tags/property.md>), [variables](<https://devfeed.tech/tags/variables.md>)

### AI overview

The article covers the arrival of the Houdini Properties and Values API in CSS with Chromium 85.

### Source excerpt

The Houdini Properties and Values API is coming to your CSS file in Chromium 85.

## Introduction to Classes and Objects

DevFeed: [Introduction to Classes and Objects](<https://devfeed.tech/articles/introduction-to-classes-and-objects-25048.md>)

Original publisher: [Read original article](<https://typealias.com/start/kotlin-classes-and-objects/>)

Author: author@typealias.com (Dave Leeds)

Published: 2020-06-29T00:00:00Z

Content type: tutorial

Language: en

Sources: [Dave Leeds on Kotlin - typealias.com](<https://devfeed.tech/sources/dave-leeds-on-kotlin-typealias-com.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>)

Tags: [class](<https://devfeed.tech/tags/class.md>), [classes](<https://devfeed.tech/tags/classes.md>), [constructor](<https://devfeed.tech/tags/constructor.md>), [function](<https://devfeed.tech/tags/function.md>), [introduction](<https://devfeed.tech/tags/introduction.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [learn-to-program](<https://devfeed.tech/tags/learn-to-program.md>), [object](<https://devfeed.tech/tags/object.md>), [programming](<https://devfeed.tech/tags/programming.md>), [property](<https://devfeed.tech/tags/property.md>), [types](<https://devfeed.tech/tags/types.md>), [visibility-modifier](<https://devfeed.tech/tags/visibility-modifier.md>)

### AI overview

A Kotlin tutorial chapter introduces classes as a way to combine related variables and functions into new types. It uses a circle example and begins by defining an empty class before adding members step by step.

### Source excerpt

In Chapter 1, we learned about a variety of types in Kotlin, such as Double, String, and Boolean. Get ready, because in this chapter, we're going to start creating our very own types! We'll put variables and functions together into a class. Let's get started! Putting Variables and Functions Together As you might recall, we started off this book by creating variables to hold things pertaining to a circle, such as its radius and circumference.

## Solidity 0.6.x features: try/catch statement

DevFeed: [Solidity 0.6.x features: try/catch statement](<https://devfeed.tech/articles/solidity-0-6-x-features-try-catch-statement-16886.md>)

Original publisher: [Read original article](<https://blog.ethereum.org/en/2020/01/29/solidity-0-6-try-catch>)

Author: Elena Gesheva

Published: 2020-01-29T00:00:00Z

Content type: tutorial

Language: en

Sources: [Ethereum Foundation Blog](<https://devfeed.tech/sources/ethereum-foundation-blog.md>)

Topics: [Solidity](<https://devfeed.tech/topics/solidity.md>)

Tags: [constructor](<https://devfeed.tech/tags/constructor.md>), [error-handling](<https://devfeed.tech/tags/error-handling.md>), [errors](<https://devfeed.tech/tags/errors.md>), [event](<https://devfeed.tech/tags/event.md>), [exceptions](<https://devfeed.tech/tags/exceptions.md>), [external](<https://devfeed.tech/tags/external.md>), [function](<https://devfeed.tech/tags/function.md>), [parameter](<https://devfeed.tech/tags/parameter.md>), [property](<https://devfeed.tech/tags/property.md>), [research-development](<https://devfeed.tech/tags/research-development.md>), [syntax](<https://devfeed.tech/tags/syntax.md>)

### AI overview

This article explains Solidity 0.6.x try/catch syntax for handling failures in external function calls and contract creation without rolling back state changes made by the calling function. It demonstrates the feature with a factory pattern and explains which errors are and are not caught, including methods for retrieving revert messages.

### Source excerpt

The try/catch syntax introduced in 0.6.0 is arguably the biggest leap in error handling capabilities in Solidity, since reason strings for revert and require were released in v0.4.22. Both try and catch have been reserved keywords since v0.5.9 and now we can use them to handle failures in external function...

[Next page](<https://devfeed.tech/tags/property.md?cursor=WyIyMDIwLTAxLTI5VDAwOjAwOjAwKzAwOjAwIiwgImZiY2E5Y2FhLTdjMWItNDNjMi04NTM4LTZlNGNjNTljN2Y4YyJd>)