41554 blogs · [ { "id": "01a087cd-7f18-73d3-89d0-9925f9a7df21", "title": "Using NVIDIA Management Library (NVML) in Rust", "url": "https://rabzelj.com/blog/rust-nvml-crate-intro", "published_at": "2026-06-02T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925f9fc9679", "title": "How to Debug a Deadlock", "url": "https://rabzelj.com/blog/rust-debug-deadlock", "published_at": "2026-03-09T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fa1c970f", "title": "Async Primitives for TypeScript", "url": "https://rabzelj.com/blog/temelj-typescript-async-utilities", "published_at": "2026-03-07T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fa7fa575", "title": "Trying to Build a Serverless Platform using Firecracker", "url": "https://rabzelj.com/blog/serverless-platform-firecracker-vm", "published_at": "2026-02-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fad1a044", "title": "Building a Vector Database in Rust: LSM-VEC", "url": "https://rabzelj.com/blog/building-vector-database-lsm-vec", "published_at": "2026-02-23T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fadff37a", "title": "A Result Type for TypeScript", "url": "https://rabzelj.com/blog/typescript-result-monad-type", "published_at": "2026-02-11T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fbd08208", "title": "Generating Sitemaps in TanStack Start", "url": "https://rabzelj.com/blog/tanstack-start-sitemap-generation", "published_at": "2026-01-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fc712954", "title": "Blockwise Parallel Transformer for Large Context Models | Paper Notes", "url": "https://rabzelj.com/blog/blockwise-parallel-transformer-for-large-context-models-paper-notes", "published_at": "2025-10-17T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fca3e6d0", "title": "Fast Inference from Transformers via Speculative Decoding | Paper Notes", "url": "https://rabzelj.com/blog/fast-inference-from-transformers-via-speculative-decoding-paper-notes", "published_at": "2025-09-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fd5c1492", "title": "Fast Transformer Decoding: One Write-Head is All You Need | Paper Notes", "url": "https://rabzelj.com/blog/fast-transformer-decoding-one-write-head-is-all-you-need-paper-notes", "published_at": "2025-09-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925fe2b0db7", "title": "GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints | Paper Notes", "url": "https://rabzelj.com/blog/gqa-training-generalized-multi-query-transformer-models-from-multi-head-checkpoints-paper-notes", "published_at": "2025-09-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925feb42ee4", "title": "Ring Attention with Blockwise Transformers for Near-Infinite Context | Paper Notes", "url": "https://rabzelj.com/blog/ring-attention-with-blockwise-transformers-for-near-infinite-context-paper-notes", "published_at": "2025-09-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925feb8c730", "title": "Effective Long-Context Scaling of Foundation Models | Paper Notes", "url": "https://rabzelj.com/blog/effective-long-context-scaling-of-foundation-models-paper-notes", "published_at": "2025-09-09T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925ff58b041", "title": "YaRN: Efficient Context Window Extension of Large Language Models | Paper Notes", "url": "https://rabzelj.com/blog/yarn-efficient-context-window-extension-of-large-language-models-paper-notes", "published_at": "2025-09-06T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925ffb7e935", "title": "Leave No Context Behind: Efficient Infinite Context Transformers with Infini-attention | Paper Notes", "url": "https://rabzelj.com/blog/leave-no-context-behind-efficient-infinite-context-transformers-with-infini-attention-paper-notes", "published_at": "2025-08-29T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9925ffe9a1ad", "title": "FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness | Paper Notes", "url": "https://rabzelj.com/blog/flashattention-fast-and-memory-efficient-exact-attention-with-io-awareness-paper-notes", "published_at": "2025-08-28T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992600c9a502", "title": "Longformer: The Long-Document Transformer | Paper Notes", "url": "https://rabzelj.com/blog/longformer-the-long-document-transformer-paper-notes", "published_at": "2025-08-28T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992601928499", "title": "ReAct: Synergizing Reasoning and Acting in Language Models | Paper Notes", "url": "https://rabzelj.com/blog/react-synergizing-reasoning-and-acting-in-language-models-paper-notes", "published_at": "2025-08-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926019c326d", "title": "RoFormer: Enhanced Transformer with Rotary Position Embedding | Paper Notes", "url": "https://rabzelj.com/blog/roformer-enhanced-transformer-with-rotary-position-embedding-paper-notes", "published_at": "2025-08-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992602281a01", "title": "The Impact of Positional Encoding on Length Generalization in Transformers | Paper Notes", "url": "https://rabzelj.com/blog/the-impact-of-positional-encoding-on-length-generalization-in-transformers-paper-notes", "published_at": "2025-08-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992602b8a035", "title": "Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation | Paper Notes", "url": "https://rabzelj.com/blog/train-short-test-long-attention-with-linear-biases-enables-input-length-extrapolation-paper-notes", "published_at": "2025-08-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992602e97c01", "title": "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models | Paper Notes", "url": "https://rabzelj.com/blog/chain-of-thought-prompting-elicits-reasoning-in-large-language-models-paper-notes", "published_at": "2025-08-26T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260375d1f2", "title": "Tree of Thoughts: Deliberate Problem Solving with Large Language Models | Paper Notes", "url": "https://rabzelj.com/blog/tree-of-thoughts-deliberate-problem-solving-with-large-language-models-paper-notes", "published_at": "2025-08-26T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992603f7f60c", "title": "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer | Paper Notes", "url": "https://rabzelj.com/blog/exploring-the-limits-of-transfer-learning-with-a-unified-text-to-text-transformer-paper-notes", "published_at": "2025-08-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260407e5b0", "title": "Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer | Paper Notes", "url": "https://rabzelj.com/blog/outrageously-large-neural-networks-the-sparsely-gated-mixture-of-experts-layer-paper-notes", "published_at": "2025-08-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992604df6b66", "title": "Language Models are Few-Shot Learners | Paper Notes", "url": "https://rabzelj.com/blog/language-models-are-few-shot-learners-paper-notes", "published_at": "2025-08-21T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992605b60c4f", "title": "Language Models are Unsupervised Multitask Learners | Paper Notes", "url": "https://rabzelj.com/blog/language-models-are-unsupervised-multitask-learners-paper-notes", "published_at": "2025-08-20T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260612cc5b", "title": "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding | Paper Notes", "url": "https://rabzelj.com/blog/bert-pre-training-deep-bidirectional-transformers-for-language-understanding-paper-notes", "published_at": "2025-08-19T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992606ff2883", "title": "Improving Language Understanding by Generative Pre-Training | Paper Notes", "url": "https://rabzelj.com/blog/improving-language-understanding-by-generative-pre-training-paper-notes", "published_at": "2025-08-14T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992607711cbb", "title": "Attention Is All You Need | Paper Notes", "url": "https://rabzelj.com/blog/attention-is-all-you-need-paper-notes", "published_at": "2025-08-12T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260851a944", "title": "Neural Machine Translation by Jointly Learning to Align and Translate | Paper Notes", "url": "https://rabzelj.com/blog/neural-machine-translation-by-jointly-learning-to-align-and-translate-paper-notes", "published_at": "2025-08-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926085a4af2", "title": "Seed Diffusion: A Large-Scale Diffusion Language Model with High-Speed Inference | Paper Notes", "url": "https://rabzelj.com/blog/seed-diffusion-a-large-scale-diffusion-language-model-with-high-speed-inference-paper-notes", "published_at": "2025-08-07T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926090b42c0", "title": "Sequence to Sequence Learning with Neural Networks | Paper Notes", "url": "https://rabzelj.com/blog/sequence-to-sequence-learning-with-neural-networks-paper-notes", "published_at": "2025-08-06T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926097dc964", "title": "GloVe: Global Vectors for Word Representation | Paper Notes", "url": "https://rabzelj.com/blog/glove-global-vectors-for-word-representation-paper-notes", "published_at": "2025-07-30T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992609fcaf76", "title": "Efficient Estimation of Word Representations in Vector Space | Paper Notes", "url": "https://rabzelj.com/blog/efficient-estimation-of-word-representations-in-vector-space-paper-notes", "published_at": "2025-07-20T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260a4cbd09", "title": "Pointers Are Not Just Integers - Provenance", "url": "https://rabzelj.com/blog/pointer-provenance-not-just-integers", "published_at": "2025-02-26T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260aae0999", "title": "Building a Real-Time Bluesky Trending Hashtag System With Arroyo, NATS, and Rust", "url": "https://rabzelj.com/blog/building-bluesky-trending-hashtags", "published_at": "2025-02-20T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260b600243", "title": "From a Monolith to Microservices", "url": "https://rabzelj.com/blog/from-monoliths-to-microservices", "published_at": "2025-02-17T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260b74c257", "title": "How To Use Raylib in Rust With Your Own Bindings", "url": "https://rabzelj.com/blog/rust-zig-raylib-ffi-custom-bindings", "published_at": "2025-02-14T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260bbab9b4", "title": "Introduction to Intelligent Agent Architectures", "url": "https://rabzelj.com/blog/introduction-intelligent-agent-architectures", "published_at": "2025-02-04T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260c1d71d0", "title": "Validate Next.js Server Actions with Zod", "url": "https://rabzelj.com/blog/nextjs-validate-server-action-zod", "published_at": "2025-01-26T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260d1c88fc", "title": "Working With CUDA in Rust - Basic FFI", "url": "https://rabzelj.com/blog/how-to-rust-cuda-basic-ffi", "published_at": "2024-12-07T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260df0d799", "title": "PostgreSQL and process-per-connection", "url": "https://rabzelj.com/blog/postgres-process-per-connection", "published_at": "2024-10-18T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260ea1d01d", "title": "Mojo Outperforms Rust?", "url": "https://rabzelj.com/blog/mojo-rust-ai", "published_at": "2024-02-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260ebfa125", "title": "How I Use Declarative Macros in Rust", "url": "https://rabzelj.com/blog/quick-tips-rust-declarative-macros", "published_at": "2023-11-29T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260f8ee0e9", "title": "Running Next.js Standalone App With Sharp Inside Docker", "url": "https://rabzelj.com/blog/nextjs-standalone-docker-sharp-installation", "published_at": "2023-11-26T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99260fbc7073", "title": "Error Handling Pattern with React and Redux-Saga", "url": "https://rabzelj.com/blog/redux-saga-error-handling", "published_at": "2021-01-06T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261030d2b6", "title": "Generating Realistic Test Traffic Using Markov Chains", "url": "https://rabzelj.com/blog/markov-chains-test-traffic", "published_at": "2020-10-28T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261117c06d", "title": "Why Should Microservices Be Idempotent", "url": "https://rabzelj.com/blog/why-idempotent-microservices", "published_at": "2020-10-02T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992611207e99", "title": "Rate Limiting in Rust Using Redis", "url": "https://rabzelj.com/blog/rust-redis-rate-limiting", "published_at": "2020-07-19T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992611f78d21", "title": "Event Versioning with Rust", "url": "https://rabzelj.com/blog/event-versioning-rust", "published_at": "2020-06-23T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992612f70adc", "title": "Building a Real-time Chat App in Rust and React", "url": "https://rabzelj.com/blog/rust-react-realtime-chat", "published_at": "2020-05-20T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926137ffd0f", "title": "N+1 Queries in GraphQL Using PostgreSQL Window Functions", "url": "https://rabzelj.com/blog/graphql-postgresql-window-functions", "published_at": "2018-07-23T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261423eecc", "title": "Dependency Injection in Go", "url": "https://rabzelj.com/blog/go-dependency-injection", "published_at": "2018-07-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926142dbb40", "title": "Real-time Chat with GraphQL Subscriptions in Go", "url": "https://rabzelj.com/blog/go-graphql-realtime-chat", "published_at": "2018-06-20T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992614df8009", "title": "Using GraphQL with Microservices in Go", "url": "https://rabzelj.com/blog/go-graphql-gateway-microservices", "published_at": "2018-06-14T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261562cdd6", "title": "Building a Microservices Application in Go Following the CQRS Pattern", "url": "https://rabzelj.com/blog/go-microservices-cqrs-docker", "published_at": "2018-05-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926160285df", "title": "How to Build a Search Service with Go and Elasticsearch", "url": "https://rabzelj.com/blog/go-elastic-search-service", "published_at": "2018-03-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992616dfed8e", "title": "Building a URL Shortener with Go and AWS Lambda", "url": "https://rabzelj.com/blog/go-url-shortener-lambda", "published_at": "2018-03-13T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992617603788", "title": "How to Build a Self-hosted Leaderboard with Unreal Engine 4", "url": "https://rabzelj.com/blog/unreal-engine-selfhosted-leaderboard", "published_at": "2018-02-25T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926176bb5dc", "title": "Building a Real-time Collaborative Drawing App in Go", "url": "https://rabzelj.com/blog/realtime-collaborative-drawing-go", "published_at": "2017-11-22T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261835d9ff", "title": "Generating Unique 64 bit IDs with Go on Kubernetes", "url": "https://rabzelj.com/blog/generating-unique-ids-kubernetes", "published_at": "2017-11-06T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992618deefb3", "title": "Multi-Stage Docker Builds for Kubernetes", "url": "https://rabzelj.com/blog/multi-stage-docker-builds-kubernetes", "published_at": "2017-10-31T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-992619640513", "title": "Getting Started with Microservices using Go, gRPC and Kubernetes", "url": "https://rabzelj.com/blog/getting-started-microservices-go-grpc-kubernetes", "published_at": "2017-10-27T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-9926199744aa", "title": "Build an Image Recognition API with Go and TensorFlow", "url": "https://rabzelj.com/blog/image-recognition-api-go-tensorflow", "published_at": "2017-10-18T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261a176a45", "title": "How to Keep Your Development Environment Clean", "url": "https://rabzelj.com/blog/clean-development-environment-docker", "published_at": "2017-10-10T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261a96c0c9", "title": "Create a GraphQL Server with Go and Google App Engine", "url": "https://rabzelj.com/blog/graphql-server-go-google-app-engine", "published_at": "2017-10-02T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261a9b1adf", "title": "Build a Todo List with Angular and Google App Engine - Part 2", "url": "https://rabzelj.com/blog/todo-list-angular-google-app-engine-part-2", "published_at": "2017-09-01T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261b6b0576", "title": "Build a Todo List with Angular and Google App Engine - Part 1", "url": "https://rabzelj.com/blog/todo-list-angular-google-app-engine-part-1", "published_at": "2017-08-30T00:00:00+00:00" }, { "id": "01a087cd-7f18-73d3-89d0-99261c4238a4", "title": "Hello, World! - A Not So Short Blog Post Title Length Here", "url": "https://rabzelj.com/blog/hello-world", "published_at": "2015-01-01T00:00:00+00:00" } ] posts Claim your blog
Back to rabzelj.com
Blog · corpus.blog/blogs/rabzelj.com/posts

rabzelj.com

rabzelj.com

2026

2025

2024

2023

2021

2020

2018

2017

2015