# ease

Published articles for ease.

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

## ease-in vs ease-out vs ease-in-out: CSS Easing Explained

DevFeed: [ease-in vs ease-out vs ease-in-out: CSS Easing Explained](<https://devfeed.tech/articles/ease-in-vs-ease-out-vs-ease-in-out-css-easing-explained-122429.md>)

Original publisher: [Read original article](<https://markodenic.com/ease-in-vs-ease-out/>)

Author: Marko

Published: 2026-11-08T09:00:00Z

Content type: article

Language: en

Sources: [Marko Denic Blog](<https://devfeed.tech/sources/marko-denic-blog.md>)

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

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [animations](<https://devfeed.tech/tags/animations.md>), [api](<https://devfeed.tech/tags/api.md>), [bounce](<https://devfeed.tech/tags/bounce.md>), [css](<https://devfeed.tech/tags/css.md>), [cubic-bezier](<https://devfeed.tech/tags/cubic-bezier.md>), [custom](<https://devfeed.tech/tags/custom.md>), [demo](<https://devfeed.tech/tags/demo.md>), [ease](<https://devfeed.tech/tags/ease.md>), [easing](<https://devfeed.tech/tags/easing.md>), [function](<https://devfeed.tech/tags/function.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [linear](<https://devfeed.tech/tags/linear.md>), [motion](<https://devfeed.tech/tags/motion.md>), [physics](<https://devfeed.tech/tags/physics.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

CSS easing controls how animation speed changes over time. The text recommends `ease-out` for entering UI elements, `ease-in` for short exits, `ease-in-out` for visible elements moving between positions, and `linear` for constant motion such as spinners; linear movement that starts and stops can look mechanical. Custom `cubic-bezier()` curves can alter the feel or overshoot, while `steps(n)` creates frame-by-frame motion and `linear()` can approximate spring-like bounces. Suggested interface durations range from 100-200 ms for small changes to 250-400 ms for modals, with exits shorter than entrances; the text also advises honoring `prefers-reduced-motion` and animating transform and opacity for smoothness.

### Source excerpt

The difference between ease, ease-in, ease-out, ease-in-out and linear in CSS, with a live demo, when to use each one, custom cubic-bezier() curves, steps() and the new linear() function.

## CoreWeave Adds Skypilot Support for Effortless Multi-Cloud AI Orchestration

DevFeed: [CoreWeave Adds Skypilot Support for Effortless Multi-Cloud AI Orchestration](<https://devfeed.tech/articles/coreweave-adds-skypilot-support-for-effortless-multi-cloud-ai-orchestration-96097.md>)

Original publisher: [Read original article](<https://wf.coreweave.com/blog/coreweave-adds-skypilot-support-for-effortless-multi-cloud-ai-orchestration>)

Author: CoreWeave

Published: 2026-10-22T16:27:39Z

Content type: release

Language: en

Sources: [Coreweave Blog Posts](<https://devfeed.tech/sources/coreweave-blog-posts.md>)

Topics: [skypilot](<https://devfeed.tech/topics/skypilot.md>), [AI Infrastructure](<https://devfeed.tech/topics/ai-infrastructure.md>), [resource orchestration](<https://devfeed.tech/topics/resource-orchestration.md>), [NCCL](<https://devfeed.tech/topics/nccl.md>)

Tags: [2](<https://devfeed.tech/tags/2.md>), [3](<https://devfeed.tech/tags/3.md>), [abstract](<https://devfeed.tech/tags/abstract.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-orchestration](<https://devfeed.tech/tags/ai-orchestration.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [cloud-orchestration](<https://devfeed.tech/tags/cloud-orchestration.md>), [content-type](<https://devfeed.tech/tags/content-type.md>), [coreweave](<https://devfeed.tech/tags/coreweave.md>), [ease](<https://devfeed.tech/tags/ease.md>), [job](<https://devfeed.tech/tags/job.md>), [launch](<https://devfeed.tech/tags/launch.md>), [ml](<https://devfeed.tech/tags/ml.md>), [multi-cloud](<https://devfeed.tech/tags/multi-cloud.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [skypilot](<https://devfeed.tech/tags/skypilot.md>), [speed](<https://devfeed.tech/tags/speed.md>), [support](<https://devfeed.tech/tags/support.md>), [teams](<https://devfeed.tech/tags/teams.md>), [visibility](<https://devfeed.tech/tags/visibility.md>), [with](<https://devfeed.tech/tags/with.md>)

### AI overview

SkyPilot adds CoreWeave as a backend, letting teams launch training, development, and serving jobs on CoreWeave Kubernetes clusters through SkyPilot YAML or CLI. The article describes resource selection, job submission, retries, log streaming, and autoscaling, alongside existing CoreWeave orchestration options SUNK and Kueue. Setup includes following SkyPilot's CoreWeave installation steps, optionally enabling InfiniBand with `network_tier: best` and mounting CoreWeave Object Storage with the `cw://` scheme. The article cites an NCCL example reporting 3.6 Tb/s interconnect bandwidth and storage throughput up to 7 GB/s per GPU; these are presented as example results and stated capabilities.

### Source excerpt

Launch any AI job, anywhere, with minimal friction. CoreWeave adds SkyPilot support for multi-cloud orchestration, unlocking greater ease, speed, and visibility for ML teams.

## Ensemble-Aware Structural Encoding (EASE): Conditioning Protein Encoders on Peptide Conformational Ensembles

DevFeed: [Ensemble-Aware Structural Encoding (EASE): Conditioning Protein Encoders on Peptide Conformational Ensembles](<https://devfeed.tech/articles/ensemble-aware-structural-encoding-ease-conditioning-protein-encoders-on-peptide-conformational-ensembles-94323.md>)

Original publisher: [Read original article](<https://arxiv.org/abs/2610.27638>)

Author: Ruoyao Zhang, Hongxuan Li, Jie Peng, Tianlong Chen

Published: 2026-10-21T04:00:00Z

Content type: article

Language: en

Sources: [arXiv: Machine Learning](<https://devfeed.tech/sources/arxiv-machine-learning.md>)

Topics: [AI Foundation Models](<https://devfeed.tech/topics/ai-foundation-models.md>), [Representation learning](<https://devfeed.tech/topics/representation-learning.md>)

Tags: [abstract](<https://devfeed.tech/tags/abstract.md>), [arxiv](<https://devfeed.tech/tags/arxiv.md>), [central](<https://devfeed.tech/tags/central.md>), [cs-lg](<https://devfeed.tech/tags/cs-lg.md>), [distilling](<https://devfeed.tech/tags/distilling.md>), [ease](<https://devfeed.tech/tags/ease.md>), [encoding](<https://devfeed.tech/tags/encoding.md>), [exchange](<https://devfeed.tech/tags/exchange.md>), [existing](<https://devfeed.tech/tags/existing.md>), [foundation](<https://devfeed.tech/tags/foundation.md>), [foundation-models](<https://devfeed.tech/tags/foundation-models.md>), [framework](<https://devfeed.tech/tags/framework.md>), [hydrogen](<https://devfeed.tech/tags/hydrogen.md>), [information](<https://devfeed.tech/tags/information.md>), [invariant](<https://devfeed.tech/tags/invariant.md>), [key](<https://devfeed.tech/tags/key.md>), [major](<https://devfeed.tech/tags/major.md>), [models](<https://devfeed.tech/tags/models.md>), [multiple](<https://devfeed.tech/tags/multiple.md>), [operator](<https://devfeed.tech/tags/operator.md>), [performance](<https://devfeed.tech/tags/performance.md>)

### AI overview

EASE represents peptides using multiple conformers: it selects central conformers that capture major structural states, encodes them, then combines their representations with a permutation-invariant operator for downstream prediction. Across six peptide property-prediction tasks with leakage-controlled splits, EASE consistently outperformed matched single-structure baselines, with a mean absolute gain of about 3.0% across two structural encoders. Reported gains continued as the number of conformers increased through K=20. The excerpt motivates this approach by noting that a single structure may miss conformational variability relevant to peptide properties.

### Source excerpt

arXiv:2610.27638v1 Announce Type: new Abstract: Protein foundation models provide transferable representations for downstream peptide prediction tasks. However, existing representations typically reduce a peptide to a single sequence or structure, which may miss conformational variability relevant to key peptide properties, including antibacterial activity, hemolysis, toxicity, stability, and binding. For example, protease resistance correlates more strongly with conformational dynamics measured by hydrogen exchange than with average helicity. Therefore, we introduce Ensemble-Aware Structural Encoding (EASE), a framework for effectively extracting structural information from conformational ensembles for peptide representation. To extract useful information from noisy conformers, EASE selects central conformers representing a peptide's major structural states and fuses their individual representations with a permutation-invariant operator to produce a peptide-level representation for downstream prediction. We then evaluate our framework on six peptide property-prediction tasks under leakage-controlled splits. Against matched single-structure baselines, EASE improves performance consistently on six tasks with a mean absolute gain of about 3.0% across two structural encoders. Gains keep growing as we add conformers through K=20. A single peptide conformer therefore provides a limited basis for structural representation, whereas our framework distilling and fusing multiple conformers yields a more informative representation.

## Introducing Duranium: a more reliable postmarketOS

DevFeed: [Introducing Duranium: a more reliable postmarketOS](<https://devfeed.tech/articles/introducing-duranium-a-more-reliable-postmarketos-106685.md>)

Original publisher: [Read original article](<https://nura.eco/blog/2026/03/17/introducing-duranium/>)

Published: 2026-03-17T00:00:00Z

Content type: release

Language: en

Sources: [postmarketOS](<https://devfeed.tech/sources/postmarketos-blog.md>)

Topics: [Tool](<https://devfeed.tech/topics/tool.md>), [free software](<https://devfeed.tech/topics/free-software.md>), [Image](<https://devfeed.tech/topics/image.md>)

Tags: [audio](<https://devfeed.tech/tags/audio.md>), [automatically](<https://devfeed.tech/tags/automatically.md>), [base](<https://devfeed.tech/tags/base.md>), [boot](<https://devfeed.tech/tags/boot.md>), [browser](<https://devfeed.tech/tags/browser.md>), [call](<https://devfeed.tech/tags/call.md>), [complete](<https://devfeed.tech/tags/complete.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [deployment-model](<https://devfeed.tech/tags/deployment-model.md>), [developers](<https://devfeed.tech/tags/developers.md>), [development](<https://devfeed.tech/tags/development.md>), [device](<https://devfeed.tech/tags/device.md>), [driver](<https://devfeed.tech/tags/driver.md>), [ease](<https://devfeed.tech/tags/ease.md>), [flexibility](<https://devfeed.tech/tags/flexibility.md>), [fork](<https://devfeed.tech/tags/fork.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [help](<https://devfeed.tech/tags/help.md>), [nura](<https://devfeed.tech/tags/nura.md>), [postmarketos](<https://devfeed.tech/tags/postmarketos.md>)

### AI overview

Duranium is an experimental immutable postmarketOS variant that installs complete verified system images into alternating A/B slots. Updates leave the running system untouched; the device tries the new slot on reboot and falls back if it fails. The OS in `/usr` is read-only and verified with dm-verity, while configuration, system state, and user files remain writable and persistent. LUKS2 encryption of the data filesystem is required, but Secure Boot and verified boot are planned rather than implemented. UEFI support is required; on Android phones, U-Boot can provide it, though device support varies and storage requirements are substantial. Flatpak is the primary application option; coldbrew installs Alpine packages in the user's home directory, isolated from the core OS. Duranium shares its package base with current postmarketOS, but prioritizes reliability over flexibility and is seeking testers, not yet intended as a dependable daily driver.

### Source excerpt

Image-based updates are nothing to bawk at. Duranium is an immutable variant of postmarketOS, built around the idea that your device should just work, and keep working. You shouldn't need to know what a terminal is to keep your device running. "Immutable" means the core operating system is read-only and can't be modified while it's running. System updates are applied as complete, verified images rather than individual packages. Either the new image works, or the system falls back to the previous one automatically. No partially-applied state. No debugging audio when you need to make a phone call and no fussing with a broken web browser when you just want to doomscroll cat photos. It also means developers can reproduce the exact state of a user's device, making it much easier to track down and fix issues. Reliability and ease of use take priority over flexibility. Some choices that make it robust also mean it has higher hardware requirements and won't run on every device that can boot postmarketOS. Not every device that can boot postmarketOS will be supported. The package base for Duranium is shared with current versions of postmarketOS, and improvements flow into both. Think of it as a different deployment model on top, not a fork. Duranium is still a work in progress. We are looking for testers, not people who need a reliable daily driver just yet. See the Help Wanted section at the end of this post if this interests you! The initial proof-of-concept was funded by NLnet through the NGI initiative. Some ongoing development is funded through the postmarketOS Contributor Support Program. The technical details If the implementation details aren't your thing, feel free to skip to the end. For full details on everything covered here, see the design document. Tooling choices Duranium is built on systemd's image-based OS tooling. If you want the full story on why postmarketOS ships systemd, that's covered here. Specifically: tools like systemd-sysupdate, systemd-repart, and

## Developing an Internal Tool for Our Puzzle Editor

DevFeed: [Developing an Internal Tool for Our Puzzle Editor](<https://devfeed.tech/articles/developing-an-internal-tool-for-our-puzzle-editor-39151.md>)

Original publisher: [Read original article](<https://open.nytimes.com/developing-an-internal-tool-for-our-puzzle-editor-d5dc7a9a6464?source=rss----51e1d1745b32---4>)

Author: The NYT Open Team

Published: 2025-06-02T15:54:44Z

Content type: article

Language: en

Sources: [New York Times](<https://devfeed.tech/sources/new-york-times.md>)

Topics: [Tool](<https://devfeed.tech/topics/tool.md>), [User interface design](<https://devfeed.tech/topics/ui-design.md>), [workflow automation](<https://devfeed.tech/topics/workflow-automation.md>), [Software Testing](<https://devfeed.tech/topics/software-testing.md>)

Tags: [balance](<https://devfeed.tech/tags/balance.md>), [board](<https://devfeed.tech/tags/board.md>), [categories](<https://devfeed.tech/tags/categories.md>), [challenge](<https://devfeed.tech/tags/challenge.md>), [code](<https://devfeed.tech/tags/code.md>), [company](<https://devfeed.tech/tags/company.md>), [created](<https://devfeed.tech/tags/created.md>), [creativity](<https://devfeed.tech/tags/creativity.md>), [curiosity](<https://devfeed.tech/tags/curiosity.md>), [daily](<https://devfeed.tech/tags/daily.md>), [dashboard](<https://devfeed.tech/tags/dashboard.md>), [data](<https://devfeed.tech/tags/data.md>), [data-management](<https://devfeed.tech/tags/data-management.md>), [developing](<https://devfeed.tech/tags/developing.md>), [ease](<https://devfeed.tech/tags/ease.md>), [easy](<https://devfeed.tech/tags/easy.md>), [editor](<https://devfeed.tech/tags/editor.md>), [ergonomics](<https://devfeed.tech/tags/ergonomics.md>), [error](<https://devfeed.tech/tags/error.md>), [internal-tools](<https://devfeed.tech/tags/internal-tools.md>), [puzzle](<https://devfeed.tech/tags/puzzle.md>), [tool](<https://devfeed.tech/tags/tool.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

The Connections Reference Dashboard helps the puzzle editor check how words and categories appeared across more than 700 past and upcoming boards, reducing repeated manual cross-referencing. Its Flask backend fetches puzzle data from the NYT Connections API, caches it on disk to speed later requests and provide redundancy during network issues, and can preload several weeks of future puzzles. A Vue.js interface displays board results and supports date-range and unpublished-board filters. Search covers exact words, regex matches within words, categories, and category titles; word-frequency counts show how often terms recur and their spacing over time. These tools help the editor track reused words and avoid repeating misleading word combinations. The excerpt describes the architecture and features but does not establish measured performance or detail deployment requirements.

### Source excerpt

How we developed a dashboard tool created to help ease the workflow of managing puzzles for our Connections editor.Illustration by Su Yun Song By Shafik Quoraishee and Wyna Liu In the game Connections, every puzzle is a meticulously crafted challenge designed to captivate our audience and spark intellectual curiosity. Developing these puzzles can sometimes be a time consuming and intricate task. Each puzzle requires planning, beginning with conceptualizing fresh categories and plausible misleads, followed by testing the combinations for balance and solvability, and concluding with refinement and publication-ready formatting. The process requires both creativity and quality control. Wyna Liu, the editor of Connections has the responsibility of constructing and reviewing multiple puzzles spanning various dates, ensuring that each board remains consistent, fresh and challenging to our puzzle solvers. This is a challenging endeavor where there isn't much room for error. In order to address the challenge, we developed the Connections Reference Dashboard -- an in company tool aimed at streamlining data management while providing the puzzle editor with an intuitive, aesthetically pleasing interface that enhances the daily workflow. There were two considerations in developing this tool. Firstly was technical work in handling a dynamically changing payload of puzzle data. We wanted to create a rich and visually resonating interface that was easy to navigate and gave a bit of the feel of the Connections game itself. Therefore, everything from the board results to the search interface was designed with these ergonomics in mind. We wanted to create a level of tactility to the tool which was reminiscent of and which reduced the number of manual steps needed to cross reference both categories and words in individual boards. The primary functionality that Wyna was after was the ability to quickly identify words that have appeared in previous Connections boards, as well as their con

## GitHub Models introduces a new prompt editor (GA)

DevFeed: [GitHub Models introduces a new prompt editor (GA)](<https://devfeed.tech/articles/github-models-introduces-a-new-prompt-editor-ga-72791.md>)

Original publisher: [Read original article](<https://github.blog/changelog/2025-01-23-github-models-introduces-a-new-prompt-editor-ga>)

Author: Allison

Published: 2025-01-24T00:16:50Z

Content type: release

Language: en

Sources: [GitHub Changelog](<https://devfeed.tech/sources/github-changelog.md>)

Topics: [Prompt Engineering](<https://devfeed.tech/topics/prompt-engineering.md>), [prompt](<https://devfeed.tech/topics/prompt.md>), [Enhancing AI model performance](<https://devfeed.tech/topics/enhancing-ai-model-performance.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [about](<https://devfeed.tech/tags/about.md>), [addition](<https://devfeed.tech/tags/addition.md>), [can](<https://devfeed.tech/tags/can.md>), [community](<https://devfeed.tech/tags/community.md>), [complexity](<https://devfeed.tech/tags/complexity.md>), [discussions](<https://devfeed.tech/tags/discussions.md>), [ease](<https://devfeed.tech/tags/ease.md>), [editor](<https://devfeed.tech/tags/editor.md>), [efficiency](<https://devfeed.tech/tags/efficiency.md>), [experience](<https://devfeed.tech/tags/experience.md>), [fine](<https://devfeed.tech/tags/fine.md>), [github](<https://devfeed.tech/tags/github.md>), [github-models](<https://devfeed.tech/tags/github-models.md>), [help](<https://devfeed.tech/tags/help.md>), [models](<https://devfeed.tech/tags/models.md>), [powerful](<https://devfeed.tech/tags/powerful.md>), [prompt](<https://devfeed.tech/tags/prompt.md>), [provide](<https://devfeed.tech/tags/provide.md>), [this](<https://devfeed.tech/tags/this.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

GitHub Models' new prompt editor provides a focused space to craft and test prompts, with quick iteration for single-turn message scenarios without the complexity of multi-turn interactions. The excerpt does not specify other features or performance results.

### Source excerpt

You can now access a new prompt editor within GitHub Models, purpose-built to help you iterate, refine, and perfect your prompts. This powerful tool is designed to provide a focused...

## Introducing the GitHub Classroom CLI extension for the GitHub CLI

DevFeed: [Introducing the GitHub Classroom CLI extension for the GitHub CLI](<https://devfeed.tech/articles/introducing-the-github-classroom-cli-extension-for-the-github-cli-73599.md>)

Original publisher: [Read original article](<https://github.blog/changelog/2023-03-23-introducing-the-github-classroom-cli-extension-for-the-github-cli>)

Author: Kevin Duck

Published: 2023-03-23T20:49:10Z

Content type: release

Language: en

Sources: [GitHub Changelog](<https://devfeed.tech/sources/github-changelog.md>)

Topics: [GitHub CLI extension](<https://devfeed.tech/topics/gh-extension.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [capabilities](<https://devfeed.tech/tags/capabilities.md>), [classroom](<https://devfeed.tech/tags/classroom.md>), [cli](<https://devfeed.tech/tags/cli.md>), [clone](<https://devfeed.tech/tags/clone.md>), [command](<https://devfeed.tech/tags/command.md>), [commands](<https://devfeed.tech/tags/commands.md>), [create](<https://devfeed.tech/tags/create.md>), [custom](<https://devfeed.tech/tags/custom.md>), [desktop](<https://devfeed.tech/tags/desktop.md>), [desktop-application](<https://devfeed.tech/tags/desktop-application.md>), [details](<https://devfeed.tech/tags/details.md>), [display](<https://devfeed.tech/tags/display.md>), [ease](<https://devfeed.tech/tags/ease.md>), [extension](<https://devfeed.tech/tags/extension.md>), [features](<https://devfeed.tech/tags/features.md>), [github](<https://devfeed.tech/tags/github.md>), [github-classroom](<https://devfeed.tech/tags/github-classroom.md>), [github-cli](<https://devfeed.tech/tags/github-cli.md>), [simplify](<https://devfeed.tech/tags/simplify.md>), [tooling](<https://devfeed.tech/tags/tooling.md>)

### AI overview

The GitHub Classroom CLI extension adds commands for managing classrooms and assignments. Install it with `gh extension install github/gh-classroom` after installing the GitHub CLI. Commands can list unarchived classrooms, show classroom or assignment details, list assignments and accepted assignments, and clone an assignment's starter repository or students' submissions. Use `-c` to target a classroom; without it, an interactive picker lets you choose one. The article describes cloning student repositories as a scriptable alternative to the Classroom Assistant desktop application.

### Source excerpt

We're thrilled to introduce the GitHub Classroom CLI extension for the GitHub CLI, designed to simplify the lives of teachers everywhere. With this powerful new tooling, teachers can create their...

## Getting Started with Elm 01 - The Very Basics

DevFeed: [Getting Started with Elm 01 - The Very Basics](<https://devfeed.tech/articles/getting-started-with-elm-01-the-very-basics-28164.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/elm/2022/03/29/getting-started-with-elm-01-the-very-basics.html>)

Author: Fuzzygroup

Published: 2022-03-29T12:58:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Elm](<https://devfeed.tech/topics/elm.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [Learning](<https://devfeed.tech/topics/learning.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [back-end](<https://devfeed.tech/tags/back-end.md>), [basics](<https://devfeed.tech/tags/basics.md>), [bootstrap](<https://devfeed.tech/tags/bootstrap.md>), [command](<https://devfeed.tech/tags/command.md>), [console](<https://devfeed.tech/tags/console.md>), [directory](<https://devfeed.tech/tags/directory.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [ease](<https://devfeed.tech/tags/ease.md>), [elm](<https://devfeed.tech/tags/elm.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [functional](<https://devfeed.tech/tags/functional.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [guide](<https://devfeed.tech/tags/guide.md>), [installer](<https://devfeed.tech/tags/installer.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [online](<https://devfeed.tech/tags/online.md>), [project](<https://devfeed.tech/tags/project.md>), [structure](<https://devfeed.tech/tags/structure.md>), [terminal](<https://devfeed.tech/tags/terminal.md>)

### AI overview

The excerpt walks through creating a minimal Elm project and rendering a Bootstrap-backed view. Install Elm to get the `elm` command, create a project directory, and run `elm init`; unlike Rails or Laravel project generators, this initializes a bare skeleton with `elm.json` and `src`. Add Bootstrap with `elm install rundis/elm-bootstrap`, which records the dependency in `elm.json`. Create `src/Main.elm`, import `Html`, `Bootstrap.CDN`, and `Bootstrap.Grid`, then build a container, row, and column containing text. Run `elm reactor` and open `http://localhost:8000/` to browse to the view. The author presents this as an initial tutorial and says they do not yet fully understand parts of the Elm syntax; further work on migrating Laravel views and building an API is planned.

### Source excerpt

Elm is an interesting new front end language technology based on a functional language that generates JavaScript transparently and has a focus on great documentation and ease of learning. A good starting point is the Guide. In this blog post, I'm going to walk through the initial steps. Along the way I'll draw some comparisons to things like Rails or Laravel. My goal in all this is re-implementing a recent project I built with a JavaScript front end and a Laravel back end. I'll us the same Laravel back end to see how Elm stacks up. Installation There is an installer for Elm here which installs the language and binds it to the elm terminal command. Sidebar: Trying Out Elm There is an excellent online console for trying out Elm here: https://elm-lang.org/try Building a Project I keep all my projects organized by their language type so I have a directory structure like: ~/code/elm Within the elm directory you want to start by creating a project directory. Mine is named kit_selector3: cd ~/code/elm mkdir kit_selector3 Once you have a project directory built then you want to to use the init command: elm init Please note that this is very unlike Rails or Laravel which build the project directory when you use their equivalent of elm init (rails new kit_selector3 or composer create-project laravel/laravel kit_selector3). This builds the bare minimum skeleton for an elm project which looks like this: . ├── elm-stuff │ └── 0.19.1 │ ├── Main.elmi │ ├── Main.elmo │ ├── d.dat │ ├── i.dat │ ├── lock │ └── o.dat ├── elm.json └── src The file elm.json is there to handle component installation. Let's Add Bootstrap Support Given that it is the 21st century and virtually anything we build needs to work nicely on a mobile phone, I generally start everything these days with Bootstrap. Happily there is a Bootstrap component for elm. We can argue about CSS grids and such but Bootstrap, well, just plain works. Here's how we get Bootstrap added to our "application" (right now there is so li

## What are we going to do: CO2 edition

DevFeed: [What are we going to do: CO2 edition](<https://devfeed.tech/articles/what-are-we-going-to-do-co2-edition-37116.md>)

Original publisher: [Read original article](<https://shostack.org/blog/what-are-we-going-to-do-co2-edition/>)

Author: Adam

Published: 2021-10-05T00:00:00Z

Content type: opinion

Language: en

Sources: [Shostack & Friends Blog](<https://devfeed.tech/sources/shostack-friends-blog.md>)

Topics: [risk-management](<https://devfeed.tech/topics/risk-management.md>), [Cybersecurity](<https://devfeed.tech/topics/cybersecurity.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>)

Tags: [analysis](<https://devfeed.tech/tags/analysis.md>), [bypass](<https://devfeed.tech/tags/bypass.md>), [carbon](<https://devfeed.tech/tags/carbon.md>), [climate](<https://devfeed.tech/tags/climate.md>), [cost](<https://devfeed.tech/tags/cost.md>), [cybersecurity](<https://devfeed.tech/tags/cybersecurity.md>), [ease](<https://devfeed.tech/tags/ease.md>), [emissions](<https://devfeed.tech/tags/emissions.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [risk-management](<https://devfeed.tech/tags/risk-management.md>), [usability](<https://devfeed.tech/tags/usability.md>)

### AI overview

The article uses Microsoft's evaluation of carbon-removal proposals to discuss how explicit criteria can improve mitigation and risk-management decisions. It applies this idea to cybersecurity threat modeling, including cost, bypass resistance, usability, and unusual circumstances.

### Source excerpt

What happened when Microsoft tried to buy climate abatements

## A Craft CMS Plugin Local Development Environment

DevFeed: [A Craft CMS Plugin Local Development Environment](<https://devfeed.tech/articles/a-craft-cms-plugin-local-development-environment-31232.md>)

Original publisher: [Read original article](<https://nystudio107.com/blog/a-craft-cms-plugin-local-development-environment>)

Author: andrew@nystudio107.com (Andrew Welch)

Published: 2021-04-21T04:00:00Z

Content type: tutorial

Language: en

Sources: [nystudio107](<https://devfeed.tech/sources/nystudio107-articles-on-modern-web-development.md>)

Topics: [Content Management System](<https://devfeed.tech/topics/cms.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [PHP](<https://devfeed.tech/topics/php.md>), [software-development](<https://devfeed.tech/topics/software-development.md>), [Software Testing](<https://devfeed.tech/topics/software-testing.md>), [phpstorm](<https://devfeed.tech/topics/phpstorm.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Database](<https://devfeed.tech/topics/database.md>), [Front end](<https://devfeed.tech/topics/frontend.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [cms](<https://devfeed.tech/tags/cms.md>), [composer](<https://devfeed.tech/tags/composer.md>), [containerized](<https://devfeed.tech/tags/containerized.md>), [craft](<https://devfeed.tech/tags/craft.md>), [debug](<https://devfeed.tech/tags/debug.md>), [details](<https://devfeed.tech/tags/details.md>), [develop](<https://devfeed.tech/tags/develop.md>), [development](<https://devfeed.tech/tags/development.md>), [docker](<https://devfeed.tech/tags/docker.md>), [ease](<https://devfeed.tech/tags/ease.md>), [environment](<https://devfeed.tech/tags/environment.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [insights](<https://devfeed.tech/tags/insights.md>), [local](<https://devfeed.tech/tags/local.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [php](<https://devfeed.tech/tags/php.md>), [phpstorm](<https://devfeed.tech/tags/phpstorm.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [plugin-development](<https://devfeed.tech/tags/plugin-development.md>), [plugins](<https://devfeed.tech/tags/plugins.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [test](<https://devfeed.tech/tags/test.md>)

### AI overview

This tutorial presents a portable, cross-platform Docker development environment for building, debugging, and testing Craft CMS plugins. It covers preconfigured PHP and database environments, testing content, PhpStorm and XDebug support, and plugin development setup.

### Source excerpt

This article details a containerized local development environment that you can use to develop, debug, and test Craft CMS plugins with ease

## Teradata Vantage Now Available on the Google Cloud Marketplace

DevFeed: [Teradata Vantage Now Available on the Google Cloud Marketplace](<https://devfeed.tech/articles/teradata-vantage-now-available-on-the-google-cloud-marketplace-81041.md>)

Original publisher: [Read original article](<https://www.teradata.com/press-releases/2021/vantage-available-on-the-google-cloud-marketplace>)

Author: January Machold

Published: 2021-01-19T08:00:00Z

Content type: release

Language: en

Sources: [Teradata News](<https://devfeed.tech/sources/teradata-news.md>)

Topics: [Google Cloud Platform (GCP)](<https://devfeed.tech/topics/google-cloud.md>), [BigQuery](<https://devfeed.tech/topics/bigquery.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [Cloud Architecture](<https://devfeed.tech/topics/cloud-architecture.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [availability](<https://devfeed.tech/tags/availability.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [cloud-marketplace](<https://devfeed.tech/tags/cloud-marketplace.md>), [cloud-storage](<https://devfeed.tech/tags/cloud-storage.md>), [cost](<https://devfeed.tech/tags/cost.md>), [data](<https://devfeed.tech/tags/data.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [ease](<https://devfeed.tech/tags/ease.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [enterprise](<https://devfeed.tech/tags/enterprise.md>), [google-cloud](<https://devfeed.tech/tags/google-cloud.md>), [google-cloud-marketplace](<https://devfeed.tech/tags/google-cloud-marketplace.md>), [procurement](<https://devfeed.tech/tags/procurement.md>)

### AI overview

Teradata announced that Vantage, its cloud data analytics platform, is available through Google Cloud Marketplace. The marketplace option supports directly negotiated subscriptions and consolidates procurement and billing; Vantage offers elastic scaling of compute and storage, cross-location data querying, and enterprise security features.

### Source excerpt

Enables one-stop shopping and streamlined procurement of Teradata Vantage on Google Cloud

## From Zero to main(): Bare metal Rust

DevFeed: [From Zero to main(): Bare metal Rust](<https://devfeed.tech/articles/from-zero-to-main-bare-metal-rust-47388.md>)

Original publisher: [Read original article](<https://interrupt.memfault.com/blog/zero-to-main-rust-1>)

Author: James Munns

Published: 2019-12-17T00:00:00Z

Content type: tutorial

Language: en

Sources: [Interrupt](<https://devfeed.tech/sources/interrupt.md>)

Topics: [Rust](<https://devfeed.tech/topics/rust.md>), [Embedded Systems](<https://devfeed.tech/topics/embedded-systems.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>), [Assembly](<https://devfeed.tech/topics/assembly.md>)

Tags: [assembly](<https://devfeed.tech/tags/assembly.md>), [bare-metal](<https://devfeed.tech/tags/bare-metal.md>), [c](<https://devfeed.tech/tags/c.md>), [capabilities](<https://devfeed.tech/tags/capabilities.md>), [chip](<https://devfeed.tech/tags/chip.md>), [code](<https://devfeed.tech/tags/code.md>), [development](<https://devfeed.tech/tags/development.md>), [development-board](<https://devfeed.tech/tags/development-board.md>), [ease](<https://devfeed.tech/tags/ease.md>), [embedded-systems](<https://devfeed.tech/tags/embedded-systems.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [microcontroller](<https://devfeed.tech/tags/microcontroller.md>), [processor](<https://devfeed.tech/tags/processor.md>), [programming](<https://devfeed.tech/tags/programming.md>), [prototyping](<https://devfeed.tech/tags/prototyping.md>), [rust](<https://devfeed.tech/tags/rust.md>)

### AI overview

A tutorial that sets up a bare-metal Rust environment on a Cortex-M microcontroller, introduces relevant Rust concepts, and explains how the language supports embedded programming with performance, correctness, static analysis, diagnostics, package management, and documentation tooling.

### Source excerpt

Since 2015, Rust has been redefining what it means to combine the best-in-class aspects of performance, correctness, and developer convenience into one language, without compromise. In this post, we'll bootstrap a Rust environment on a Cortex-M microcontroller from scratch, and explain a few of the language concepts you might not have seen before. Continue reading...

## Reducing the pain of git bisect with Xcode

DevFeed: [Reducing the pain of git bisect with Xcode](<https://devfeed.tech/articles/reducing-the-pain-of-git-bisect-with-xcode-21618.md>)

Original publisher: [Read original article](<http://miqu.me/blog/2017/01/22/reducing-the-pain-of-git-bisect-with-xcode/>)

Author: Miguel Angel Quiñones

Published: 2017-01-22T11:49:01Z

Content type: tutorial

Language: en

Sources: [Miguel Quinones](<https://devfeed.tech/sources/miguel-quinones.md>)

Topics: [Git](<https://devfeed.tech/topics/git.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [cocoapods](<https://devfeed.tech/topics/cocoapods.md>)

Tags: [automate](<https://devfeed.tech/tags/automate.md>), [binary-search](<https://devfeed.tech/tags/binary-search.md>), [cocoapods](<https://devfeed.tech/tags/cocoapods.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [ease](<https://devfeed.tech/tags/ease.md>), [git](<https://devfeed.tech/tags/git.md>), [git-bisect](<https://devfeed.tech/tags/git-bisect.md>), [indexing](<https://devfeed.tech/tags/indexing.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ios-development](<https://devfeed.tech/tags/ios-development.md>), [regression](<https://devfeed.tech/tags/regression.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

Git bisect narrows a regression to a commit by searching between known good and bad revisions, but iOS projects can make each step slow: CocoaPods dependencies may need reinstalling, reproducing bugs may require manual app testing or a device, and Xcode reindexes after source changes. The excerpt recommends automating `pod install` with Git's `post-checkout` hook when Pods are not checked in, and combining `xcodebuild` with ios-sim to build and launch in a simulator, leaving reproduction and good/bad feedback manual. It also recommends small, meaningful commits that each compile; checking in Pods can avoid fetching dependencies but has unspecified disadvantages.

### Source excerpt

There's times when you need to investigate regressions in your project, and you don't know have any clue as why something is happening. Git bisect is the best tool for this cases, but it can be painful to use in non small projects using CocoaPods and Xcode. I want to share what I've been doing to ease the pain. If you never used Git bisect, check this introduction. The git command performs a binary search across your repository history, starting from two known commits you provide to the algorithm: 'Good' and 'Bad'. 'Bad' will usually be your last commit, and 'Good' will be a commit back in the history of your repository, when you know the code was working as expected. For every step of the search you need to tell git if a commit is good or bad, either manually or automatically by running a script. Pain points When we enter the realm of iOS development, there's a some factors that make bisect tedious to use. If you use CocoaPods, and if you don't check in the 'Pods' directory in source control, every time you change branch or bisect selects a new commit, you might need to run pod install in order to have all dependencies available and compile correctly. If you are searching for a regression, chances are you don't have an automated test suite, so you'll need to run your app manually and reproduce the issue you are searching for. There will be cases when you're dealing with a bug that needs an app reinstall or needs to run on device to reproduce. To top all this, Xcode will start the long indexing process every time there's changes to the sources due to change of commit, so your computer will start doing lot of work. All of these nuances makes the process of searching for issues using bisect very tedious and not so 'magical' as it is supposed to be. I've nevertheless used bisect many times to save time otherwise wasted reading code and navigating breakpoints during long debugging sessions. You just need some patience and the will to automate some stuff. Reducing the pa

## Architecture behind our new Search and Explore experience

DevFeed: [Architecture behind our new Search and Explore experience](<https://devfeed.tech/articles/architecture-behind-our-new-search-and-explore-experience-1994.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//architecture-behind-our-new-search-and-explore-experience>)

Published: 2012-12-04T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [search-engines](<https://devfeed.tech/topics/search-engines.md>), [elasticsearch](<https://devfeed.tech/topics/elasticsearch.md>), [software-architecture](<https://devfeed.tech/topics/software-architecture.md>), [Publish-subscribe pattern](<https://devfeed.tech/topics/pubsub.md>), [Business, Industry, Usability, User Experience, User Research, Web Strategy](<https://devfeed.tech/topics/business-industry-usability-user-experience-user-research-web-strategy.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [apache](<https://devfeed.tech/tags/apache.md>), [api](<https://devfeed.tech/tags/api.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [cluster](<https://devfeed.tech/tags/cluster.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [coupling](<https://devfeed.tech/tags/coupling.md>), [crystal](<https://devfeed.tech/tags/crystal.md>), [custom](<https://devfeed.tech/tags/custom.md>), [dashboard](<https://devfeed.tech/tags/dashboard.md>), [data](<https://devfeed.tech/tags/data.md>), [database](<https://devfeed.tech/tags/database.md>), [days](<https://devfeed.tech/tags/days.md>), [design](<https://devfeed.tech/tags/design.md>), [development](<https://devfeed.tech/tags/development.md>), [discovery](<https://devfeed.tech/tags/discovery.md>), [domain](<https://devfeed.tech/tags/domain.md>), [ease](<https://devfeed.tech/tags/ease.md>), [explore](<https://devfeed.tech/tags/explore.md>), [search](<https://devfeed.tech/tags/search.md>), [search-and-discovery](<https://devfeed.tech/tags/search-and-discovery.md>)

### AI overview

SoundCloud replaced its Solr-based search system with ElasticSearch and a separate API-driven indexing service to make updates faster, reindexing easier, and changes less coupled to the main application. The new pipeline treats broker events as triggers but hydrates searchable data from the database, using each event's timestamp as the document version to handle synchronization issues. A full-corpus indexing run took about two hours, while new sounds became searchable in about three seconds. Search ranking uses DiscoRank, a PageRank modification over a graph of entities and activities, evaluated with manually tagged queries and engagement metrics. Suggestions use a separate Lucene Finite State Transducer engine for immediate, type-aware results; Explore emphasizes sound recency to surface what is current in the community.

### Source excerpt

Search is front-and-center in the new SoundCloud, key to the consumer experience. We've made the search box one of the first things you see...

## Don't Create Your Own Mapper, Let AutoMapper Do The Job!

DevFeed: [Don't Create Your Own Mapper, Let AutoMapper Do The Job!](<https://devfeed.tech/articles/don-t-create-your-own-mapper-let-automapper-do-the-job-21174.md>)

Original publisher: [Read original article](<https://juri.dev/blog/2012/11/dont-create-your-own-mapper-let-automapper-do-the-job/>)

Published: 2012-11-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Juri Strumpflohner](<https://devfeed.tech/sources/juri-strumpflohner.md>)

Topics: [NuGet](<https://devfeed.tech/topics/nuget.md>), [Test-driven development](<https://devfeed.tech/topics/tdd.md>)

Tags: [automated](<https://devfeed.tech/tags/automated.md>), [automatically](<https://devfeed.tech/tags/automatically.md>), [based](<https://devfeed.tech/tags/based.md>), [better](<https://devfeed.tech/tags/better.md>), [changes](<https://devfeed.tech/tags/changes.md>), [code](<https://devfeed.tech/tags/code.md>), [complex](<https://devfeed.tech/tags/complex.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [configure](<https://devfeed.tech/tags/configure.md>), [console](<https://devfeed.tech/tags/console.md>), [copy](<https://devfeed.tech/tags/copy.md>), [create](<https://devfeed.tech/tags/create.md>), [custom](<https://devfeed.tech/tags/custom.md>), [docs](<https://devfeed.tech/tags/docs.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [don-t](<https://devfeed.tech/tags/don-t.md>), [ease](<https://devfeed.tech/tags/ease.md>), [job](<https://devfeed.tech/tags/job.md>), [let](<https://devfeed.tech/tags/let.md>), [net](<https://devfeed.tech/tags/net.md>)

### AI overview

The excerpt recommends using AutoMapper for .NET object-to-object mapping instead of maintaining custom mappers and their property-by-property tests, which it says can become tedious and tightly coupled to object structures. It describes defining mappings between source and target types: matching property names are copied automatically, including traversal of lists, while differently named properties can be configured. It also names projection, flattening, custom converters/resolvers/formatters, and inheritance mapping as available options, and points readers to the library documentation. The excerpt ends mid-sentence, so it does not establish the full setup or implementation.

### Source excerpt

Lorem ipsum dolor sit amet