Best of RustSeptember 2024

  1. 1
    Article
    Avatar of communityCommunity Picks·2y

    Warp: Your terminal, reimagined

    Warp is a new terminal built with Rust, offering a fast and intuitive experience. It includes features like autocompletion, command history navigation, and customizable themes. Users praise its speed, modern UI, and efficient workflows. Warp is currently in early access but has already become a favorite among developers.

  2. 2
    Article
    Avatar of communityCommunity Picks·2y

    How to make your Express.js APIs 9x faster with Encore.ts

    Encore.ts is an open-source backend framework for TypeScript that offers significant performance improvements over Express.js. It features a high-performance Rust runtime and built-in functionalities, making it type-safe and faster. This guide outlines the steps to migrate an Express.js app to Encore.ts using strategies like forklift and full migrations, providing a performance boost and simplifying dependency management.

  3. 3
    Article
    Avatar of bytesdevBytes by ui.dev·2y

    I like rusty JavaScript

    Rspack has emerged as a high-performance JavaScript bundler written in Rust, promising to be a faster and compatible alternative to webpack. ByteDance developers initiated it to solve performance issues with large monolithic apps. With features like lazy compilation and improved plugin compatibility, Rspack aims to simplify build processes and boost efficiency. QA Wolf offers a solution for faster and more reliable software testing by automating the process and speeding up test cycles.

  4. 4
    Article
    Avatar of evolvedevevolvedev·2y

    Building a Neural Network from Scratch in Rust

    Learn to build a neural network from scratch in Rust, including steps for initialization, forward pass, backpropagation, and training using the XOR dataset.

  5. 5
    Article
    Avatar of hnHacker News·2y

    The Modern CLI Renaissance

    In recent years, there's been a resurgence in the development of command line interface (CLI) tools, driven by advancements in terminal capabilities and user demands for improved usability. This trend is characterized by rethinking and reinventing long-standing tools to offer better out-of-the-box experiences, more helpful error messages, and streamlined common use cases. The article discusses the historical development of CLI tools, lessons learned over decades, and the impact of modern programming languages like Rust and Go in this renaissance.

  6. 6
    Article
    Avatar of hnHacker News·2y

    Dune Shell

    Learn how to install the Dune Shell using Cargo and set up the environment by creating a .dune-prelude file in the $HOME directory. This file allows you to set environment variables, define functions, or run shell commands every time a new shell session starts.

  7. 7
    Article
    Avatar of asayerasayer·2y

    Cross-Platform Development with Flutter Rust Bridge

    Developing a cross-platform battery test application by leveraging Flutter's UI toolkit and Rust's performance. The project involves setting up the development environment, creating a Rust backend, and integrating it with a Flutter front end. The article covers installation steps for Flutter and Rust, building the Rust library, and compiling it for use in Flutter, along with the creation and deployment of the user interface.

  8. 8
    Video
    Avatar of letsgetrustyLet's Get Rusty·2y

    Top 5 Rust books you MUST READ!

    Get introduced to five essential Rust books designed to take you from a beginner to a competent Rust developer. The recommendations include titles like 'Rust for Rust Stations' by John Jensa, which delves into advanced Rust concepts, and 'Rust in Action' by Tim McNamara, which focuses on practical, hands-on projects. Other notable mentions are 'Zero to Production in Rust' for backend development, 'Idiomatic Rust' for writing clean and efficient code, and 'Programming Rust' for a comprehensive guide. Honorable mentions include books on concurrent programming, security, and WebAssembly.

  9. 9
    Article
    Avatar of vikingsoftwareViking Software·2y

    Battle of the Backends

    This post discusses the pros and cons of various programming languages for web backend development, including Rust, Go, C#, and Python. The author highlights Rust's advantages in dependency handling but notes its ecosystem's immaturity. Go is praised for its environment, but its stagnation in updates is a concern. C# is appreciated for its ease of development but criticized for occasional performance issues. Python is deemed suitable only if there's existing developer expertise. A strong stance is taken against using Javascript for backends.

  10. 10
    Video
    Avatar of letsgetrustyLet's Get Rusty·2y

    The genius of Rust constructors

    Rust has made bold design choices by eliminating traditional constructors used in languages like C++ and Java. Instead, it prioritizes explicit initialization, simplicity, and composition over inheritance. This design minimizes common pitfalls associated with object creation and error handling in traditional OOP languages. Rust's strict requirement for explicit field initialization enhances safety and prevents undefined behavior. Additionally, Rust supports creating objects with default values through its default trait. These features make Rust a compelling choice for developers from higher-level languages.

  11. 11
    Article
    Avatar of hnHacker News·2y

    Open-source DataDog + PostHog for AI agents / RAG apps. Fast, reliable and insightful. Written in Rust 🦀. YC S24.

    Laminar is an OpenTelemetry-based framework designed for easy instrumentation of LLM and vector DB calls. Featuring semantic events-based analytics, Laminar turns pipeline outputs into insightful metrics. Built with Rust and incorporating RabbitMQ, Postgres, and Clickhouse, it aims to provide scalable and efficient event and trace analytics. Users can start quickly with a managed platform or set up locally using Docker Compose.

  12. 12
    Article
    Avatar of hnHacker News·2y

    How Discord Stores Trillions of Messages

    Discord initially used Cassandra to store its rapidly growing number of messages but faced significant performance issues as the database scaled. After experimenting with and seeing improvements, Discord decided to switch to ScyllaDB. This new database, written in C++, offered better performance and reduced maintenance complexity, addressing many issues encountered with Cassandra. To manage traffic spikes and improve read efficiency, Discord also implemented intermediary data services using Rust, which allowed for safer and more efficient concurrency. The transition has significantly enhanced performance and stability, enabling Discord to handle trillions of messages reliably.

  13. 13
    Article
    Avatar of communityCommunity Picks·2y

    Biome v1.9 Anniversary Release

    Biome celebrates its first anniversary with the release of v1.9, introducing stable CSS and GraphQL formatter and linter, a new experimental search command using GritQL, and enhanced JavaScript formatting and linting rules. The update also includes .editorconfig support, and a new version of the VSCode plugin. Future plans include addressing long-standing issues in a major 2.0 release.

  14. 14
    Article
    Avatar of lobstersLobsters·2y

    Design Patterns Are Temporary, Language Features Are Forever

    Design patterns are useful but can sometimes be overcomplicated. The post discusses the author's journey in understanding design patterns like the visitor pattern, and how language features like pattern matching in Rust and new features in Java 21 simplify problem solving. Through exploring modern features in Java, the author finds more efficient ways to implement functionality that would traditionally require design patterns, emphasizing the evolving nature of programming languages.

  15. 15
    Article
    Avatar of thnThe Hacker News·2y

    Google's Shift to Rust Programming Cuts Android Memory Vulnerabilities by 52%

    Google's transition to memory-safe languages like Rust has significantly reduced memory vulnerabilities in Android, dropping from 76% to 24% over six years. The company highlights that adopting Safe Coding principles and focusing on new memory-safe code over rewrites makes the approach scalable and cost-effective. Additionally, Google's strategy includes offering interoperability between Rust, C++, and Kotlin, aiming for a paradigm shift in coding practices to enhance security.

  16. 16
    Video
    Avatar of letsgetrustyLet's Get Rusty·2y

    Rust stole C++'s best features

    Rust incorporates C++'s resource management model (RAII), zero-cost abstractions, and generic programming, while addressing common pitfalls such as memory safety. However, Rust faces challenges in ecosystem growth and compatibility compared to the well-established C++.

  17. 17
    Video
    Avatar of youtubeYouTube·2y

    Zap (Zig) vs Actix (Rust): Performance Benchmark in Kubernetes #207

    This post benchmarks the performance of Rust's Actix and Zig's Zap frameworks when deployed in Kubernetes. The focus is on CPU and memory usage, client latency, and request handling efficiency. The comparison reveals that Rust uses fewer resources and handles more requests before failing. Detailed graphs illustrate the performance metrics, highlighting significant differences in CPU and memory consumption.

  18. 18
    Article
    Avatar of logrocketLogRocket·2y

    Tauri adoption guide: Overview, examples, and alternatives

    Tauri is a toolkit designed for building lightweight, secure, and cross-platform desktop applications using web technologies. Unlike Electron, Tauri leverages the host operating system’s native webview, resulting in smaller and more efficient applications. This guide explores Tauri’s capabilities, architecture, and how it compares to other tools like Electron. Additionally, it provides a hands-on quickstart for setting up a new Tauri project and highlights key features such as custom commands, error handling, and integrating front-end frameworks for UI development. Tauri's architecture, using Rust for the backend, offers significant benefits in performance and security.

  19. 19
    Article
    Avatar of insiderustblogInside Rust Blog·2y

    Save the Date: Rust All Hands 2025

    Rust All Hands 2025 is scheduled to take place in Utrecht, the Netherlands as part of Rust Week 2025. The event will celebrate 10 years of Rust on 15 May 2025, followed by the main Rust All Hands event on 16 and 17 May 2025, all hosted by RustNL. Interested participants are encouraged to register their interest, with formal invitations to follow later.

  20. 20
    Article
    Avatar of communityCommunity Picks·2y

    A desktop application to manage multiple active node.js versions.

    nvm-desktop is a desktop application for managing multiple active Node.js versions, allowing users to quickly install and switch between different versions for individual projects. It uses `nvmd-command`, built with Rust, to intelligently identify the correct Node.js version. The application supports both macOS and Windows, enables setting node versions per project, and allows command-line management. Detailed instructions are provided for installation, uninstallation, development, and handling macOS issues.

  21. 21
    Video
    Avatar of christitustechChris Titus Tech·2y

    The Linux Utility v1.0

    Chris Titus introduces a new Linux Utility script with a Rust wrapper designed to simplify various Linux tasks. The utility allows users to quickly set up and customize their Linux environments. It includes scripts written in bash and integrates seamlessly across different Linux distributions like Fedora, Debian, and Arch. Chris emphasizes the importance of open-source collaboration and invites contributors to help improve the tool further.

  22. 22
    Article
    Avatar of lobstersLobsters·2y

    sminez/ad: an adaptable text editor

    The post introduces 'ad' (A.D.), an experimental text editor combining the modal interface of 'vi' and 'kakoune' with the extensibility of Plan9's 'Acme.' Despite being highly unstable and incomplete, 'ad' aims to implement unique features like structural regular expressions and external command usage. The detailed breakdown includes several internal modules such as buffer, exec, fsys, and trie. It reflects the author's journey of creating a simple, hackable editor inspired by vim and Acme, while pondering its potential future structuring.

  23. 23
    Article
    Avatar of brevzinBarry's C++ Blog·2y

    Code Generation in Rust vs C++26

    The post compares how Rust and the upcoming C++26 handle code generation and reflection. While C++26 is working on integrating reflection capabilities, Rust excels in code generation using declarative and procedural macros. Key examples include pretty-printing structs and JSON serialization, highlighting the differences in syntax and library design between the two languages. The discussion emphasizes how Rust's derive macros inject necessary implementations automatically, whereas C++ uses introspection to achieve similar results with less boilerplate code.

  24. 24
    Article
    Avatar of ntietznicole@web·2y

    Rust needs a web framework for lazy developers

    Rust lacks a comprehensive web framework similar to Django, making it challenging for developers to create web applications with minimal effort. The author argues for the need of a Rust web framework that includes essential features like routing, templating, static file serving, logins, permissions, database interface, and admin tooling, among others. Existing Rust frameworks either focus on minimalism or single-page apps, requiring extensive manual setup. A new web toolkit called 'nicole's web toolkit' is proposed to streamline development with pre-configured tools and features.

  25. 25
    Article
    Avatar of freecodecampfreeCodeCamp·2y

    What is Speedy Web Compiler? SWC Explained With Examples

    SWC (Speedy Web Compiler) is a powerful tool for optimizing JavaScript and TypeScript code. Created by a South Korean developer for better speed and efficiency, SWC uses Rust for its compilation process. It parses, transforms, and generates optimized code, ensuring better performance and compatibility. SWC is integrated with popular frameworks like Next.js, and offers significant performance improvements and optimized outputs.