# machine

Published articles for machine.

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

## Dependent Types and the Challenge of Automating Proofs

DevFeed: [Dependent Types and the Challenge of Automating Proofs](<https://devfeed.tech/articles/we-have-proof-automation-now-36616.md>)

Original publisher: [Read original article](<http://www.imperialviolet.org/2026/07/26/zstd-lean.html>)

Author: Adam Langley

Published: 2026-07-26T00:00:00Z

Content type: opinion

Language: en

Sources: [ImperialViolet](<https://devfeed.tech/sources/imperialviolet.md>)

Topics: [Programming language](<https://devfeed.tech/topics/programming-language.md>), [Lean](<https://devfeed.tech/topics/lean.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Coq](<https://devfeed.tech/topics/coq.md>)

Tags: [interactive](<https://devfeed.tech/tags/interactive.md>), [language](<https://devfeed.tech/tags/language.md>), [machine](<https://devfeed.tech/tags/machine.md>), [programming](<https://devfeed.tech/tags/programming.md>), [programming-language](<https://devfeed.tech/tags/programming-language.md>)

### AI overview

The article discusses dependently typed languages such as Coq, Rocq, and Lean, which can encode subtle invariants in a type system. It explains that writing and checking proofs can require substantial effort, contributing to the niche status of these languages and motivating attempts to automate proof obligations.

### Source excerpt

I've long had a soft spot for dependently-typed languages like Coq Rocq and Lean. They offer the possibility of a type system capable of encoding and enforcing arbitrarily subtle invariants. The sort of thing that, in regular languages, ends up (at best) as a comment, and which quickly gets lost as the size of the team grows. Then you get subtle misunderstandings and components that don't quite fit together. It's often the case that those components have grown to a sufficient size that, when the problem is noticed, aligning either of them is a wearying prospect. Perhaps, say dependent types seductively, you could write those invariants formally and have a machine check them. (p.s. Coq changed its name! I remember many years ago at a Coq conference in Princeton, I tried suggesting that, in an English-speaking world, having a programming language called Coq was an impediment. I don't think the audience agreed at the time. I also joked that many of the talks there sounded like a speech by Tyrion Lannister, there being so many Coqs and Hoares. A joke that was hilarious and timely, even though it fell completely flat, coming as it did before the final season of that show and our collective memory-holing of it.) The problem has always been that with great type-system power comes great proof effort. I can certainly attest to entire days spent proving really quite simple things. Doing proofs is actually quite fun: it's challenging, interactive, and there's a clear goal. But gosh, does it take a lot of time, especially if, like me, you don't know what you're doing. There's also the periodic, galling experience, at the end of many hours of effort, where you realise that the goal that you're trying to prove is, in fact, false. The classic result here is the retrospective from the seL4 effort that found that, even though the project was large enough for the engineers to develop considerable experience, they spent about 10 times as much time proving as they did designing and imp

## Worth Reading: Microsoft Cloud Security, Neuro-Symbolic AI, Linux 7.0, and AI-Driven Cybercrime

DevFeed: [Worth Reading: Microsoft Cloud Security, Neuro-Symbolic AI, Linux 7.0, and AI-Driven Cybercrime](<https://devfeed.tech/articles/worth-reading-042226-10912.md>)

Original publisher: [Read original article](<https://rule11.tech/wr-042226/>)

Author: Russ

Published: 2026-04-22T12:11:04Z

Content type: article

Language: en

Sources: [rule 11 reader](<https://devfeed.tech/sources/rule-11-reader.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Cybercrime](<https://devfeed.tech/topics/cybercrime.md>), [Cybersecurity](<https://devfeed.tech/topics/cybersecurity.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Neural Network](<https://devfeed.tech/topics/neural-network.md>)

Tags: [artificial-intelligence](<https://devfeed.tech/tags/artificial-intelligence.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [cybercrime](<https://devfeed.tech/tags/cybercrime.md>), [cybersecurity](<https://devfeed.tech/tags/cybersecurity.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [machine](<https://devfeed.tech/tags/machine.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [networking](<https://devfeed.tech/tags/networking.md>), [neural](<https://devfeed.tech/tags/neural.md>), [worth-reading](<https://devfeed.tech/tags/worth-reading.md>)

### AI overview

This roundup covers a federal cybersecurity assessment of a major Microsoft cloud offering, the evolution of neuro-symbolic artificial intelligence, the Linux 7.0 kernel release, and the threat of AI-driven cybercrime to small businesses.

### Source excerpt

In late 2024, the federal government's cybersecurity evaluators rendered a troubling verdict on one of Microsoft's biggest cloud computing offerings. This report explores the evolution and current state of neuro- symbolic artificial intelligence, an approach that integrates neural network capabilities with symbolic reasoning. The Linux 7.0 kernel is now out, and it's one of the most impactful releases in years for networking professionals. The human-speed defense of small business is being obliterated by the machine-speed offense of AI-driven cybercrime. Today, what large companies treat as a manageable risk is a terminal expense for small enterprises, with 60% of small enterprises shutting down within six months of a major attack. The original frustration was familiar. You build on one provider, they change pricing, deprecate an API, or just aren't the right tool anymore, and migrating is brutal.

## Compiling Ruby To Machine Language

DevFeed: [Compiling Ruby To Machine Language](<https://devfeed.tech/articles/compiling-ruby-to-machine-language-31808.md>)

Original publisher: [Read original article](<https://patshaughnessy.net/2025/11/17/compiling-ruby-to-machine-language>)

Author: Pat Shaughnessy

Published: 2025-11-17T00:00:00Z

Content type: article

Language: en

Sources: [Pat Shaughnessy](<https://devfeed.tech/sources/pat-shaughnessy.md>)

Topics: [Ruby](<https://devfeed.tech/topics/ruby.md>), [JIT](<https://devfeed.tech/topics/jit.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Assembly](<https://devfeed.tech/topics/assembly.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [compiler](<https://devfeed.tech/tags/compiler.md>), [jit](<https://devfeed.tech/tags/jit.md>), [machine](<https://devfeed.tech/tags/machine.md>), [performance](<https://devfeed.tech/tags/performance.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [rust](<https://devfeed.tech/tags/rust.md>), [updating-ruby-under-a-microscope](<https://devfeed.tech/tags/updating-ruby-under-a-microscope.md>)

### AI overview

This excerpt explains how Ruby's YJIT compiler identifies frequently called functions and blocks, counts executions, and compiles hot YARV instruction sequences into machine language. It also describes thresholds used for small Ruby programs and Ruby on Rails web applications, along with YJIT blocks.

### Source excerpt

I've started working on a new edition of Ruby Under a Microscope that covers Ruby 3.x. I'm working on this in my spare time, so it will take a while. Leave a comment or drop me a line and I'll email you when it's finished. Here's an excerpt

## Continuous Thought Machine: Sakana AI's experimental architecture for time-based neural computation

DevFeed: [Continuous Thought Machine: Sakana AI's experimental architecture for time-based neural computation](<https://devfeed.tech/articles/continuous-thought-machine-sakana-ai-24020.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/redmadrobot/articles/916364/>)

Author: redmadrobot (red\_mad\_robot)

Published: 2025-06-06T16:44:09Z

Content type: article

Language: ru

Sources: [Redmadrobot EN](<https://devfeed.tech/sources/redmadrobot-en.md>), [Redmadrobot RU](<https://devfeed.tech/sources/redmadrobot-ru.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Machine learning](<https://devfeed.tech/topics/machine-learning.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [cifar-10](<https://devfeed.tech/tags/cifar-10.md>), [ctm](<https://devfeed.tech/tags/ctm.md>), [cv](<https://devfeed.tech/tags/cv.md>), [lstm](<https://devfeed.tech/tags/lstm.md>), [machine](<https://devfeed.tech/tags/machine.md>), [ml](<https://devfeed.tech/tags/ml.md>), [nlm](<https://devfeed.tech/tags/nlm.md>), [rl](<https://devfeed.tech/tags/rl.md>), [sakana](<https://devfeed.tech/tags/sakana.md>), [sakanaai](<https://devfeed.tech/tags/sakanaai.md>), [tag-13e2af703774](<https://devfeed.tech/tags/tag-13e2af703774.md>), [tag-68e701e78517](<https://devfeed.tech/tags/tag-68e701e78517.md>)

### AI overview

The article examines Sakana AI's experimental Continuous Thought Machine (CTM), an architecture that makes internal temporal dynamics and neural synchronization central to computation. It describes iterative reasoning through internal states and ticks, while noting that the model is resource-intensive, unstable without careful tuning, and not intended to replace transformers.

### Source excerpt

Аналитический центр red_mad_robot продолжает следить за архитектурными прорывами в мире AI. В этот раз -- экспериментальная модель от команды Sakana AI, которая предлагает мыслить не в терминах слоёв, а в терминах времени. Их Continuous Thought Machine (CTM) -- попытка встроить в нейросеть внутреннюю динамику, вдохновлённую человеческим мозгом. Разбираем, как устроена архитектура, что такое "внутренние тики" и зачем нейросети синхронизировать собственные мысли -- на примерах из CV, сортировки, Q&A и RL. Читать далее

## Understanding and Observing the BGP Connect State

DevFeed: [Understanding and Observing the BGP Connect State](<https://devfeed.tech/articles/the-curious-case-of-the-bgp-connect-state-11112.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/01/bgp-connect-state/>)

Published: 2025-01-30T06:55:00Z

Content type: article

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [BGP](<https://devfeed.tech/topics/bgp.md>), [Finite-state machine](<https://devfeed.tech/topics/finite-state-machine.md>), [Cisco](<https://devfeed.tech/topics/cisco.md>)

Tags: [arp](<https://devfeed.tech/tags/arp.md>), [bgp](<https://devfeed.tech/tags/bgp.md>), [cisco](<https://devfeed.tech/tags/cisco.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [machine](<https://devfeed.tech/tags/machine.md>), [mpls](<https://devfeed.tech/tags/mpls.md>), [state](<https://devfeed.tech/tags/state.md>), [tcp](<https://devfeed.tech/tags/tcp.md>)

### AI overview

The article explains why the BGP Connect state is difficult to observe, especially on Cisco IOS, whose implementation predates the state and does not display it. It describes the BGP state transitions and conditions that can cause a peer to remain in Connect long enough to observe, including dropped TCP SYN packets and certain routing or filtering configurations.

### Source excerpt

I got this question from Paul: Have you ever seen a BGP peer in the "Connect" state? In 20 years, I have never been able to see or reproduce this state, nor any mention in a debug/log. I am starting to believe that all the documentation is BS, and this does not exist. The BGP Finite State Machine (FSM) (at least the one defined in RFC 4271 and amended in RFC 9687) is "a bit" hard to grasp but the basics haven't changed from the ancient days of RFC 1771: Read more ...

## Zed Adds Remote Development Over SSH

DevFeed: [Zed Adds Remote Development Over SSH](<https://devfeed.tech/articles/ssh-remoting-is-here-13530.md>)

Original publisher: [Read original article](<https://zed.dev/blog/remote-development>)

Author: Conrad Irwin

Published: 2024-10-30T00:00:00Z

Content type: article

Language: en

Sources: [Zed Industries - Blog](<https://devfeed.tech/sources/zed-industries-blog.md>)

Topics: [remote-development](<https://devfeed.tech/topics/remote-development.md>), [ssh](<https://devfeed.tech/topics/ssh.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [development](<https://devfeed.tech/tags/development.md>), [linux](<https://devfeed.tech/tags/linux.md>), [machine](<https://devfeed.tech/tags/machine.md>), [projects](<https://devfeed.tech/tags/projects.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [rebuilds](<https://devfeed.tech/tags/rebuilds.md>), [remote](<https://devfeed.tech/tags/remote.md>), [remote-development](<https://devfeed.tech/tags/remote-development.md>), [server](<https://devfeed.tech/tags/server.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [synchronization](<https://devfeed.tech/tags/synchronization.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

Zed adds remote development over SSH, keeping the user interface local while running language servers, tasks, and terminals on the remote machine. The article explains connection maintenance, remote server installation and compatibility, reconnection behavior, local backups, and collaboration support.

### Source excerpt

Zed can now be used to edit over SSH.

## Espresso Machine PID controller using ESP32 and RainMaker

DevFeed: [Espresso Machine PID controller using ESP32 and RainMaker](<https://devfeed.tech/articles/espresso-machine-pid-controller-using-esp32-and-rainmaker-13663.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2024/06/espresso-machine/>)

Author: John Lee

Published: 2024-06-19T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [cost](<https://devfeed.tech/tags/cost.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [espresso](<https://devfeed.tech/tags/espresso.md>), [machine](<https://devfeed.tech/tags/machine.md>), [rainmaker](<https://devfeed.tech/tags/rainmaker.md>)

### AI overview

This article describes upgrading a low-cost espresso machine with an ESP32 for control and connectivity. It discusses coffee channeling, pre-infusion, and using a PID controller algorithm to improve brewing consistency.

### Source excerpt

This article is about upgrading a regular low cost Espresso machine by adding an ESP32 for both control and connectivity.

## Git Version Control Tutorial: A Beginner's Guide to Git Version Control

DevFeed: [Git Version Control Tutorial: A Beginner's Guide to Git Version Control](<https://devfeed.tech/articles/git-version-control-tutorial-a-beginner-s-guide-to-git-version-control-28417.md>)

Original publisher: [Read original article](<https://banes.dev/git-version-control-tutorial-a-beginners-guide-to-git-version-control/>)

Author: admin

Published: 2024-05-03T07:28:35Z

Content type: tutorial

Language: en

Sources: [Posts on Chris Banes](<https://devfeed.tech/sources/posts-on-chris-banes.md>)

Topics: [Git](<https://devfeed.tech/topics/git.md>), [version-control](<https://devfeed.tech/topics/version-control.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [coding](<https://devfeed.tech/topics/coding.md>), [Development](<https://devfeed.tech/topics/development.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [beginner](<https://devfeed.tech/tags/beginner.md>), [code](<https://devfeed.tech/tags/code.md>), [coding](<https://devfeed.tech/tags/coding.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [commands](<https://devfeed.tech/tags/commands.md>), [commit](<https://devfeed.tech/tags/commit.md>), [core](<https://devfeed.tech/tags/core.md>), [developers](<https://devfeed.tech/tags/developers.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [distributed-system](<https://devfeed.tech/tags/distributed-system.md>), [efficiency](<https://devfeed.tech/tags/efficiency.md>), [files](<https://devfeed.tech/tags/files.md>), [git](<https://devfeed.tech/tags/git.md>), [guide](<https://devfeed.tech/tags/guide.md>), [machine](<https://devfeed.tech/tags/machine.md>), [merge](<https://devfeed.tech/tags/merge.md>), [projects](<https://devfeed.tech/tags/projects.md>), [repository](<https://devfeed.tech/tags/repository.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [version-control](<https://devfeed.tech/tags/version-control.md>)

### AI overview

A beginner-focused tutorial explaining Git as a distributed version control system for tracking changes, managing repositories, creating commits and branches, and collaborating with other developers.

### Source excerpt

Have you ever worked on a project and accidentally overwritten your progress? Maybe you spent hours coding a new feature, then realized you needed to go back to a previous version. This is where git version control can help! Git is a lifesaver for developers, allowing you to track changes, collaborate effectively, and ensure you [...]

## Behind AWS S3's Massive Scale

DevFeed: [Behind AWS S3's Massive Scale](<https://devfeed.tech/articles/behind-aws-s3-s-massive-scale-33599.md>)

Original publisher: [Read original article](<https://highscalability.com/behind-aws-s3s-massive-scale/>)

Author: ByteByteGo

Published: 2024-03-06T16:15:44Z

Content type: article

Language: en

Sources: [High Scalability](<https://devfeed.tech/sources/high-scalability-3.md>)

Topics: [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [Data Infrastructure](<https://devfeed.tech/topics/data-infrastructure.md>), [Microservices](<https://devfeed.tech/topics/microservices.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [aws](<https://devfeed.tech/tags/aws.md>), [aws-s3](<https://devfeed.tech/tags/aws-s3.md>), [cloud-native](<https://devfeed.tech/tags/cloud-native.md>), [machine](<https://devfeed.tech/tags/machine.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [replication](<https://devfeed.tech/tags/replication.md>), [s3](<https://devfeed.tech/tags/s3.md>), [service](<https://devfeed.tech/tags/service.md>), [storage](<https://devfeed.tech/tags/storage.md>)

### AI overview

This guest article examines how AWS S3 grew from a storage service into a massive-scale backbone for analytics, machine learning, backups, and other cloud-native data infrastructure. It outlines S3's growth, major feature milestones, and a high-level architecture involving front-end, namespace, storage, and storage-management services.

### Source excerpt

This is a guest article by Stanislav Kozlovski, an Apache Kafka Committer. If you would like to connect with Stanislav, you can do so on Twitter and LinkedIn. AWS S3 is a service every engineer is familiar with. It's the service that popularized the notion of cold-storage

## Open Sourcing Transformer Embeddings

DevFeed: [Open Sourcing Transformer Embeddings](<https://devfeed.tech/articles/open-sourcing-transformer-embeddings-24578.md>)

Original publisher: [Read original article](<https://medium.com/headspace-engineering/open-sourcing-transformer-embeddings-3c8cf6f4e540?source=rss-3da90e297190------2>)

Author: Headspace

Published: 2022-11-02T20:56:38Z

Content type: release

Language: en

Sources: [Stories by Headspace on Medium](<https://devfeed.tech/sources/stories-by-headspace-on-medium.md>)

Topics: [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [Transformer](<https://devfeed.tech/topics/transformer.md>), [Natural language processing](<https://devfeed.tech/topics/nlp.md>), [Python](<https://devfeed.tech/topics/python.md>), [tokenization](<https://devfeed.tech/topics/tokenization.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [PyTorch](<https://devfeed.tech/topics/pytorch.md>)

Tags: [embeddings](<https://devfeed.tech/tags/embeddings.md>), [inference](<https://devfeed.tech/tags/inference.md>), [machine](<https://devfeed.tech/tags/machine.md>), [machine-learning](<https://devfeed.tech/tags/machine-learning.md>), [naturallanguageprocessing](<https://devfeed.tech/tags/naturallanguageprocessing.md>), [nlp](<https://devfeed.tech/tags/nlp.md>), [open](<https://devfeed.tech/tags/open.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [pypi](<https://devfeed.tech/tags/pypi.md>), [python](<https://devfeed.tech/tags/python.md>), [pytorch](<https://devfeed.tech/tags/pytorch.md>), [s3](<https://devfeed.tech/tags/s3.md>), [tokenization](<https://devfeed.tech/tags/tokenization.md>), [training](<https://devfeed.tech/tags/training.md>)

### AI overview

Headspace Health open-sources transformer-embeddings, an internal Python package, and publishes it to PyPI. The package supports pooled embeddings for phrases, sentences, paragraphs, and documents, with configurable pooling and batch sizes, CPU or GPU execution, and S3 export.

### Source excerpt

Photo by Jr Korpa on UnsplashBy Setu Shah, Staff Machine Learning Engineer The Data Science team at Headspace Health is a heavy user of building, training and production-izing transformer-based NLP models. Depending on the application, our NLP models operate at varying levels of atomicity: token, word, phrase, sentence, paragraph and document. A lot of our models rely on embeddings from off-the-shelf Transformer-based models, while some are fine-tuned for the application we are building for. Similarly, as a part of our work, we often try out different models during exploration, while comparing various pooling methods. About 18 months ago, we discovered the need for a streamlined way to use embeddings across our work for our exploration and production use cases. That is when we started building transformer-embeddings, an internal Python package that made it easy to interact with transformer-based models that are built using PyTorch. Today, we are open-sourcing this package and publishing it to PyPI to make it easy for anyone in the transformer and NLP communities to be able to use aggregated and pooled embeddings for phrases, sentences and paragraphs and documents, at varying levels of aggregation, in any of their applications. You should use this if you want to... Automatically apply tokenization (with the model defaults) before your model's forward pass. Stack outputs from the model into a single, iterable array that map 1:1 with your input. Simplify interactions with any transformer model available on the HuggingFace Model Hub for exploration and inference. Easily apply and compare the impact of different pooling strategies (mean, max, min, pooler) on your downstream tasks. Use your model on CPUs or GPUs, without worrying about if you asked PyTorch to use the right device. Export the model and additional artifacts (custom scikit-learn / tree-based models, model cards, etc.) to S3. Customize batch sizes for different models as you play with them. You should not use t

## LLVM IR: The Esperanto of Computer Languages

DevFeed: [LLVM IR: The Esperanto of Computer Languages](<https://devfeed.tech/articles/llvm-ir-the-esperanto-of-computer-languages-31804.md>)

Original publisher: [Read original article](<https://patshaughnessy.net/2022/2/19/llvm-ir-the-esperanto-of-computer-languages>)

Author: Pat Shaughnessy

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

Content type: article

Language: en

Sources: [Pat Shaughnessy](<https://devfeed.tech/sources/pat-shaughnessy.md>)

Topics: [LLVM](<https://devfeed.tech/topics/llvm.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Crystal](<https://devfeed.tech/topics/crystal.md>), [C](<https://devfeed.tech/topics/c.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Swift](<https://devfeed.tech/topics/swift.md>)

Tags: [c](<https://devfeed.tech/tags/c.md>), [code](<https://devfeed.tech/tags/code.md>), [compiler](<https://devfeed.tech/tags/compiler.md>), [compilers](<https://devfeed.tech/tags/compilers.md>), [crystal](<https://devfeed.tech/tags/crystal.md>), [llvm](<https://devfeed.tech/tags/llvm.md>), [machine](<https://devfeed.tech/tags/machine.md>), [rust](<https://devfeed.tech/tags/rust.md>), [swift](<https://devfeed.tech/tags/swift.md>)

### AI overview

This article explains LLVM IR as an intermediate machine language used by compilers. It describes how languages such as Rust, Swift, Clang-based C, and Crystal can be translated into LLVM IR before LLVM converts it into target-specific machine language.

### Source excerpt

Esperanto grammar is logical and self consistent, designed to be easy to learn.

## Transforming Nested Loops into a Single Loop with State

DevFeed: [Transforming Nested Loops into a Single Loop with State](<https://devfeed.tech/articles/loopy-21790.md>)

Original publisher: [Read original article](<http://blog.cleancoder.com/uncle-bob/2020/09/30/loopy.html>)

Published: 2020-09-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [Robert C. Martin](<https://devfeed.tech/sources/robert-c-martin.md>), [The Clean Code Blog](<https://devfeed.tech/sources/the-clean-code-blog.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [Clojure](<https://devfeed.tech/topics/clojure.md>), [Finite-state machine](<https://devfeed.tech/topics/finite-state-machine.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [clojure](<https://devfeed.tech/tags/clojure.md>), [code](<https://devfeed.tech/tags/code.md>), [flow](<https://devfeed.tech/tags/flow.md>), [go](<https://devfeed.tech/tags/go.md>), [i](<https://devfeed.tech/tags/i.md>), [journey](<https://devfeed.tech/tags/journey.md>), [loops](<https://devfeed.tech/tags/loops.md>), [machine](<https://devfeed.tech/tags/machine.md>), [model](<https://devfeed.tech/tags/model.md>), [state](<https://devfeed.tech/tags/state.md>)

### AI overview

This article compares the standard Java solution to the Prime Factors Kata with a Clojure implementation using a single recursive loop. It then shows how nested-loop behavior can be represented with state and transformed into a single loop, culminating in a Moore model finite-state machine.

### Source excerpt

The following is a segment of a journey. It has no obvious beginning point, nor does it actually end up anywhere. The value, if any, is in the journey itself. The code below is the standard solution to the Prime Factors Kata. public List<Integer> factorsOf(int n) { ArrayList<Integer> factors = new ArrayList<>(); for (int d = 2; n > 1; d++) for (; n % d == 0; n /= d) factors.add(d); return factors; } However, I was doing this kata in Clojure the other day and I wound up with a different solution. It looked like this: (defn prime-factors [n] (loop [n n d 2 factors []] (if (> n 1) (if (zero? (mod n d)) (recur (/ n d) d (conj factors d)) (recur n (inc d) factors)) factors))) The algorithm is pretty much the same. I mean if you tracked the value of n, d, and factors they would go through the same changes. On the other hand the code in Java is a doubly nested loop; but the code in Clojure is a single recursive loop with two recursion points. That's interesting. I could write the recursive algorithm in Java like this: private List<Integer> factorsOf(int n) { return factorsOf(n, 2, new ArrayList<Integer>()); } private List<Integer> factorsOf(int n, int d, List<Integer> factors) { if (n>1) { if (n%d == 0) { factors.add(d); return factorsOf(n/d, d, factors); } else { return factorsOf(n, d+1, factors); } } return factors; } And then, since this is tail recursive, I could rewrite it as a straight loop. private List<Integer> factorsOf(int n, int d, List<Integer> factors) { while (true) { if (n > 1) { if (n % d == 0) { factors.add(d); n /= d; } else { d++; } } else return factors; } } For all intents and purposes this code executes the same algorithm as the standard solution; but it does not have a doubly nested loop. We have transformed the code from a doubly nested loop, to a single loop, without affecting the algorithm. Is this always possible? In other words: given a program with a nested loop, is there a way to write the same program with a single loop? The answer to that is

## Managing dotfiles and secret with chezmoi

DevFeed: [Managing dotfiles and secret with chezmoi](<https://devfeed.tech/articles/managing-dotfiles-and-secret-with-chezmoi-26073.md>)

Original publisher: [Read original article](<https://blog.arkey.fr/2020/04/01/manage_dotfiles_with_chezmoi/>)

Author: brice.dutheil@gmail.com (Brice Dutheil)

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

Content type: tutorial

Language: en

Sources: [The Coffee Workshop](<https://devfeed.tech/sources/the-coffee-workshop.md>)

Topics: [chezmoi](<https://devfeed.tech/topics/chezmoi.md>), [dotfiles](<https://devfeed.tech/topics/dotfiles.md>), [Git](<https://devfeed.tech/topics/git.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [commands](<https://devfeed.tech/tags/commands.md>), [files](<https://devfeed.tech/tags/files.md>), [git](<https://devfeed.tech/tags/git.md>), [machine](<https://devfeed.tech/tags/machine.md>), [password](<https://devfeed.tech/tags/password.md>), [secrets](<https://devfeed.tech/tags/secrets.md>), [work](<https://devfeed.tech/tags/work.md>)

### AI overview

A tutorial on using chezmoi to manage dotfiles across machines, synchronize them through Git, compare and apply changes, and handle secret-containing files with templating and 1Password.

### Source excerpt

Every once in a while, you may need to bootstrap a new machine, and along with it to reconfigure home directory's dot files. Various approaches already exist, using simple archive, git the home directory, gnu stow (symlinks), etc.

## R&D At Curalate: A Case Study of Deep Metric Embedding

DevFeed: [R&D At Curalate: A Case Study of Deep Metric Embedding](<https://devfeed.tech/articles/r-d-at-curalate-a-case-study-of-deep-metric-embedding-26522.md>)

Original publisher: [Read original article](<http://engineering.curalate.com/2018/02/01/deep-metric-embedding.html>)

Published: 2018-02-01T10:11:36Z

Content type: article

Language: en

Sources: [Curalate](<https://devfeed.tech/sources/curalate.md>)

Topics: [Computer vision](<https://devfeed.tech/topics/computer-vision.md>), [Deep learning](<https://devfeed.tech/topics/deep-learning.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [dataset](<https://devfeed.tech/topics/dataset.md>)

Tags: [case-study](<https://devfeed.tech/tags/case-study.md>), [computer](<https://devfeed.tech/tags/computer.md>), [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [deep](<https://devfeed.tech/tags/deep.md>), [deep-learning](<https://devfeed.tech/tags/deep-learning.md>), [e-commerce](<https://devfeed.tech/tags/e-commerce.md>), [embedding](<https://devfeed.tech/tags/embedding.md>), [learning](<https://devfeed.tech/tags/learning.md>), [machine](<https://devfeed.tech/tags/machine.md>), [metric](<https://devfeed.tech/tags/metric.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [research](<https://devfeed.tech/tags/research.md>), [vision](<https://devfeed.tech/tags/vision.md>)

### AI overview

A Curalate engineering case study describes building a visual search engine to identify clients' products in user-generated photos. It explains how a literature review led the team to use deep metric learning, which learns image embeddings that place images of the same product close together in Euclidean space.

### Source excerpt

At Curalate, we make social sell for hundreds of the world's largest brands and retailers. Our Fanreel product is a good example of this; it empowers brands to collect, curate, and publish social user-generated photos to their e-commerce site. A vital step in this pipeline is connecting the user generated content (UGC) to the product on our client's web site. Automating this process requires cutting edge computer vision techniques whose implementation details are not always clear, especially for production use cases. In this post, I review how we leveraged Curalate's R&D principles to build a visual search engine that identifies which of our clients' products are in user generated photos. The resulting system allows our clients to quickly connect user generated content to their e-comm site, enabling the UGC to generate revenue immediately upon distribution. Step 1: Do Your Homework We start every R&D project by hitting the books and catching up on the relevant research. This lets us understand what is feasible, the (rough) computational costs, and any pitfalls of various techniques. In this case, our goal is to find which products are in any UGC image using only the product images from the client's e-comm site. This is extremely difficult: UGC photos have dramatic lighting conditions, generally contain multiple objects or clutter, and may have undergone non rigid transformations (especially if it's a garment). Knowing we had a difficult problem on our hands, we did an extensive literature review on papers from leading computer vision conferences, journals, and even arxiv to ensure we have a good understanding of the state of the art. One approach stood out in the literature review: deep metric learning. Deep metric learning is a deep learning technique that learns an embedding function that, when applied to images of the same product, produces feature vectors that are close together in Euclidean space. This technique is perfect for our use case: we can train the sys

## Robotics Analytics @ Target

DevFeed: [Robotics Analytics @ Target](<https://devfeed.tech/articles/robotics-analytics-target-20395.md>)

Original publisher: [Read original article](<https://target.github.io/analytics/robotics-analytics>)

Author: Target Brands, Inc

Published: 2015-04-09T05:00:00Z

Content type: article

Language: en

Sources: [Target](<https://devfeed.tech/sources/target.md>)

Topics: [Robotics](<https://devfeed.tech/topics/robotics.md>), [data](<https://devfeed.tech/topics/data.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [systems](<https://devfeed.tech/topics/systems.md>), [FIRST Robotics Competition](<https://devfeed.tech/topics/first-robotics-competition.md>)

Tags: [analytics](<https://devfeed.tech/tags/analytics.md>), [automation](<https://devfeed.tech/tags/automation.md>), [big-data](<https://devfeed.tech/tags/big-data.md>), [data](<https://devfeed.tech/tags/data.md>), [distribution](<https://devfeed.tech/tags/distribution.md>), [machine](<https://devfeed.tech/tags/machine.md>), [network](<https://devfeed.tech/tags/network.md>), [robotics](<https://devfeed.tech/tags/robotics.md>), [servers](<https://devfeed.tech/tags/servers.md>), [supply-chain](<https://devfeed.tech/tags/supply-chain.md>), [visualization](<https://devfeed.tech/tags/visualization.md>)

### AI overview

The article describes robotics and automation in Target distribution centers, where automated systems generate machine data. It explains that engineers faced a cumbersome manual process involving spreadsheets, macros, distributed files, and difficult server access to gather and visualize that data.

### Source excerpt

One important part of a retailer is their supply chain network. In order to sell a product in our stores, or online at Target.com, we need to have a well run and maintained network to move all of those products from one place to another. It may not sound like a complex problem to ship products from a distribution center to a store, but as soon as you start to have multiple vendors with multiple stores (not to mention online orders that go directly to a guest's home) it becomes increasingly complex. Retailers get products from companies, referred to as vendors, and then distribute the products to stores through central locations, referred to as distribution centers (DCs). In order to improve throughput of our supply chain network we expand our distribution network by building new distribution centers or we increasing the efficiency of the current network. A great way to improve performance of a DC is to put robots and other automation equipment in it. High tech equipment like this requires high skilled labor to maintain and manage the equipment. These highly automated systems run on servers and other control equipment and they produce a lot of machine data that can lead to valuable insights. Robotics has always been an interest of mine, starting with my experience in high school with the FIRST Robotics Competition and continuing today as I volunteer with FIRST. When I first joined Target right out of school with a degree in Electrical Engineering my curiosity and interest in robotics led me to get to know some of the engineers who worked on the robotics systems within Target's DCs. I mentioned to them that I was working with a tool called Splunk that did a good job of aggregating data from different sources to a central location with a visualization platform built in. The engineers said they had a very cumbersome, inconsistent manual process which involved multiple spreadsheets and home grown macros to gather and visualize data. The data was spread out through multip

## P vs. NP, A Primer (And a Proof Written in Racket)

DevFeed: [P vs. NP, A Primer (And a Proof Written in Racket)](<https://devfeed.tech/articles/p-vs-np-a-primer-and-a-proof-written-in-racket-40263.md>)

Original publisher: [Read original article](<https://www.jeremykun.com/2012/02/23/p-vs-np-a-primer-and-a-proof-written-in-racket/>)

Published: 2012-02-23T19:57:35Z

Content type: tutorial

Language: en

Sources: [Jeremy Kun](<https://devfeed.tech/sources/jeremy-kun.md>)

Topics: [Computing](<https://devfeed.tech/topics/computing.md>), [Algorithms, Complexity](<https://devfeed.tech/topics/algorithms-complexity.md>), [Racket](<https://devfeed.tech/topics/racket.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [algorithms](<https://devfeed.tech/tags/algorithms.md>), [analysis](<https://devfeed.tech/tags/analysis.md>), [big-o-notation](<https://devfeed.tech/tags/big-o-notation.md>), [class](<https://devfeed.tech/tags/class.md>), [computational-complexity](<https://devfeed.tech/tags/computational-complexity.md>), [computing](<https://devfeed.tech/tags/computing.md>), [decidability](<https://devfeed.tech/tags/decidability.md>), [efficiency](<https://devfeed.tech/tags/efficiency.md>), [fast](<https://devfeed.tech/tags/fast.md>), [halting-problem](<https://devfeed.tech/tags/halting-problem.md>), [input](<https://devfeed.tech/tags/input.md>), [language](<https://devfeed.tech/tags/language.md>), [machine](<https://devfeed.tech/tags/machine.md>), [np-completeness](<https://devfeed.tech/tags/np-completeness.md>), [p-versus-np](<https://devfeed.tech/tags/p-versus-np.md>), [primer](<https://devfeed.tech/tags/primer.md>), [racket](<https://devfeed.tech/tags/racket.md>), [solve](<https://devfeed.tech/tags/solve.md>), [theory](<https://devfeed.tech/tags/theory.md>), [turing-machine](<https://devfeed.tech/tags/turing-machine.md>), [turing-machines](<https://devfeed.tech/tags/turing-machines.md>)

### AI overview

A primer on the distinction between decidability and computational efficiency, introducing the complexity class P and its definition in terms of polynomial-time decision by a Turing machine. It also discusses efficient algorithms and gives a card-sorting example.

### Source excerpt

Decidability Versus Efficiency In the early days of computing theory, the important questions were primarily about decidability. What sorts of problems are beyond the power of a Turing machine to solve? As we saw in our last primer on Turing machines, the halting problem is such an example: it can never be solved a finite amount of time by a Turing machine. However, more recently (in the past half-century) the focus of computing theory has shifted away from possibility in favor of determining feasibility.

## Turing Machines--A Primer

DevFeed: [Turing Machines--A Primer](<https://devfeed.tech/articles/turing-machines-a-primer-40218.md>)

Original publisher: [Read original article](<https://www.jeremykun.com/2011/07/04/turing-machines-a-primer/>)

Published: 2011-07-04T16:35:44Z

Content type: tutorial

Language: en

Sources: [Jeremy Kun](<https://devfeed.tech/sources/jeremy-kun.md>)

Topics: [Automaton](<https://devfeed.tech/topics/automaton.md>), [function](<https://devfeed.tech/topics/function.md>)

Tags: [acceptance](<https://devfeed.tech/tags/acceptance.md>), [computability-theory](<https://devfeed.tech/tags/computability-theory.md>), [computers](<https://devfeed.tech/tags/computers.md>), [concepts](<https://devfeed.tech/tags/concepts.md>), [decidability](<https://devfeed.tech/tags/decidability.md>), [halting-problem](<https://devfeed.tech/tags/halting-problem.md>), [input](<https://devfeed.tech/tags/input.md>), [machine](<https://devfeed.tech/tags/machine.md>), [mathematics](<https://devfeed.tech/tags/mathematics.md>), [primer](<https://devfeed.tech/tags/primer.md>), [process](<https://devfeed.tech/tags/process.md>), [pushdown-automata](<https://devfeed.tech/tags/pushdown-automata.md>), [state](<https://devfeed.tech/tags/state.md>), [symbols](<https://devfeed.tech/tags/symbols.md>), [turing-machines](<https://devfeed.tech/tags/turing-machines.md>)

### AI overview

This tutorial introduces Turing machines as a model of computation. It defines their states, tape symbols, input symbols, initial state, accepting and rejecting states, and transition function, then explains how the tape, read-write head, state transitions, and halting behavior work.

### Source excerpt

We assume the reader is familiar with the concepts of determinism and finite automata, or has read the corresponding primer on this blog. The Mother of All Computers Last time we saw some models for computation, and saw in turn how limited they were. Now, we open Pandrora's hard drive: Definition: A Turing machine is a tuple $ (S, \Gamma, \Sigma, s_0, F, \tau)$, where $ S$ is a set of states, $ \Gamma$ is a set of tape symbols, including a special blank symbol $ b$, $ \Sigma \subset \Gamma$ is a set of input symbols, not including $ b$, $ s_0$ is the initial state, $ A \subset S$ is a set of accepting states, $ R \subset S$ is a set of rejecting states, $ \tau: S - (A \cup R) \times \Gamma \to S \times \Gamma \times \left \{ L, R \right \}$ is a partial function called the transition function, where $ L, R$ correspond to "left shift" and "right shift," respectively.

## Using X forwarding with screen by proxying $DISPLAY

DevFeed: [Using X forwarding with screen by proxying $DISPLAY](<https://devfeed.tech/articles/using-x-forwarding-with-screen-by-proxying-display-21907.md>)

Original publisher: [Read original article](<https://blog.nelhage.com/2010/05/using-x-forwarding-with-screen/>)

Author: Nelson Elhage

Published: 2010-05-30T20:25:52Z

Content type: tutorial

Language: en

Sources: [Nelson Elhage](<https://devfeed.tech/sources/nelson-elhage.md>)

Topics: [Shell](<https://devfeed.tech/topics/shell.md>), [Script](<https://devfeed.tech/topics/script.md>), [Processes](<https://devfeed.tech/topics/processes.md>)

Tags: [local](<https://devfeed.tech/tags/local.md>), [machine](<https://devfeed.tech/tags/machine.md>), [processes](<https://devfeed.tech/tags/processes.md>), [remote](<https://devfeed.tech/tags/remote.md>), [running](<https://devfeed.tech/tags/running.md>), [script](<https://devfeed.tech/tags/script.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

This article presents a shell script that proxies the X11 DISPLAY connection used by screen sessions. It allows graphical programs launched in a persistent remote session to use the most recent X-forwarded connection, while preserving already active windows and terminating obsolete proxy listeners.

### Source excerpt

If you're reading this blog, I probably don't have to explain why I love GNU screen. I can keep a long-running session going on a server somewhere, and log in and resume my session without losing any state. I also love X-forwarding. I love being able to log into a remote server and work in a shell there, but still pop up graphical windows (for instance, gitk's) on my local machine when I need to.

## How eBay Could Have Built a Social Network for Collectors

DevFeed: [How eBay Could Have Built a Social Network for Collectors](<https://devfeed.tech/articles/how-ebay-missed-the-boat-41054.md>)

Original publisher: [Read original article](<https://www.craigkerstiens.com/2008/08/08/How-Ebay-Missed-the-Boat/>)

Author: Map

Published: 2008-08-08T07:05:21Z

Content type: opinion

Language: en

Sources: [Craig Kerstiens](<https://devfeed.tech/sources/craig-kerstiens.md>)

Topics: [Users](<https://devfeed.tech/topics/users.md>), [networking](<https://devfeed.tech/topics/networking.md>), [amazon](<https://devfeed.tech/topics/amazon.md>)

Tags: [amazon](<https://devfeed.tech/tags/amazon.md>), [community](<https://devfeed.tech/tags/community.md>), [engagement](<https://devfeed.tech/tags/engagement.md>), [machine](<https://devfeed.tech/tags/machine.md>), [people](<https://devfeed.tech/tags/people.md>), [product](<https://devfeed.tech/tags/product.md>), [sales](<https://devfeed.tech/tags/sales.md>), [users](<https://devfeed.tech/tags/users.md>)

### AI overview

This opinion article argues that eBay could have used its devoted user base and product-category communities to build an early social network for collectors. The author suggests that user interaction could have increased engagement and sales, offering an alternative to Amazon's machine-learning-based recommendations.

### Source excerpt

At a conversation today we got into a discussion about how ebay can compete with amazon. Which alone is enough content for an entire post, as they really aren't playing the same game so not really competing. Instead I'd like to talk about where the conversation progressed to. To me the most interesting thing about ebay isn't how they won the long tail, or how users are unhappy with the increasing costs placed on them. Instead its more at the level of where they really lost out. You see, ebay had a devoted following back around 2000. Millions of people would visit their site, buy items, focus on their feedback rating, often spending time in the same category. While at the time most of this was indeed innovative, they stopped there. If they had only taken it a step futher and exposed the final piece of the puzzle by allowing users to interact with each other. If they had developed a network of users that could communicate with each other, that shared interests based on product categories, they could have easily been one of the largest early social networking sites out there. As facebook initially exploded as a social network for college students, and other more recent ones focusing on younger crowds, meanwhile you have linkedin to as a professional network. Ebay could have very much been the network for collectors, or anyone purchasing similar items. Not only would have this increased user engagement, it would have driven more sales. Take for example if I'm a fan of a particular brand of jeans. I may be very proud of the brand I've found, but recently discovered some that were newer and more hip. Well I'm going to be a bit more hesitant to share that with my friends I hang out with as I want to be the one that's hip versus everyone else having them as well. However if I have a similar community that I connect with online, I can share this information, build a repoire with them, and still maintain my step ahead of friends. It allows your users to become you product rec