Programmer Weekly - Programmer Weekly - Issue 223

View this email in your browser

Programmer Weekly

Welcome to issue 223 of Programmer Weekly. Let's get straight to the links this week.

Quote of the Week 

"It's tempting to write a long complicated expression instead of two or three shorter ones where the intermediate results are stored in variables. But then every time you look at the long expression you have to pause for a moment to remember what is going on." – Mark Dominus


Reading List

Why GitHub Actually Won
This is an article about why GitHub became the dominant code hosting platform. It discusses the history of GitHub, including its founding and early growth. The article also details some of the technical reasons why GitHub is superior to other code hosting platforms.

Safe C++
SafeC++ is a proposed superset of C++ that aims to provide memory safety guarantees similar to Rust, while maintaining compatibility with existing C++ code. It introduces new features like borrow checking, safe containers, and an opt-in safety model to prevent common security vulnerabilities in C++ programs.

Governing data products using fitness functions
Decentralized data management requires automation to scale governance effectively. Fitness functions are a powerful automated governance technique we've applied to data products within the context of a Data Mesh. Since data products serve as the foundational building blocks (architectural quanta) of a data mesh, ensuring robust governance around them significantly increases the chances of a successful data mesh transformation. In this article, we’ll explore how to implement this technique. We'll start by designing simple tests to assess key architectural characteristics of a data product, and then we'll explore how to automate their execution by leveraging metadata about the data products.

Building LLM-powered applications in Go
The post discusses building LLM-powered applications in Go, highlighting Go's strengths in handling REST and RPC protocols, concurrency, and performance, which are crucial for LLM integration. It presents three variants of a RAG (Retrieval Augmented Generation) server implementation in Go, using direct API calls, LangChainGo, and Genkit, demonstrating Go's versatility in creating efficient LLM-powered applications.

Look out, kids: PHP is the new JavaScript 
The article humorously recounts the author's journey from PHP to JavaScript and back, highlighting Laravel's role in revitalizing PHP's appeal. It showcases Laravel's ease of use and comprehensive features through a hands-on example of building a video player app, suggesting that PHP, particularly with Laravel, is experiencing a resurgence in popularity among developers.

Unlock 1 Million RPS: Experience Triple the Speed with Valkey - part 2
Valkey improved its performance to over 1.19 million requests per second by implementing memory access amortization, which reduces the impact of external memory latency. The technique involves interleaving memory access operations and prefetching, allowing for more parallel memory accesses and better utilization of the processor's speculative execution capabilities.

Why is language documentation still so terrible?
The article criticizes the poor quality of many programming language documentations, highlighting issues like poor organization, lack of search functionality, and inadequate explanations. It praises Rust's documentation as exemplary and suggests other languages should emulate its comprehensive, user-friendly approach, while providing specific critiques of Python, C#, Java, C/C++, Go, and JavaScript documentation.

Should we decompose our monolith?
The article discusses the strategy for managing service architecture in a theoretical company, emphasizing a policy of maintaining business unit-specific monoliths over microservices. It explores the challenges of balancing business growth, efficiency, and technical constraints while providing guidelines for service integration, new service creation, and consolidation of existing services into monoliths.

Engineers Do Not Get To Make Startup Mistakes When They Build Ledgers
The article recounts the author's experience at a fintech startup that made critical accounting errors due to not implementing a proper double-entry ledger system, resulting in "dancing cents" and customer frustration. It then provides a comprehensive overview of how to design and implement a robust double-entry ledger system for fintech applications, emphasizing the importance of proper accounting practices in engineering financial software.

How We Made PostgreSQL Upserts 300x Faster on Compressed Data
Read how we made upsert performance 300x faster on compressed data by moving from PostgreSQL sequential scans to index scans.

Optimising for High Latency Environments
The article discusses strategies for optimizing web performance in high-latency environments, focusing on reducing round-trip times and leveraging modern protocols. It covers techniques such as using CDNs, upgrading to HTTP/2 and HTTP/3, implementing TLS 1.3, avoiding unnecessary connections and redirects, and utilizing caching strategies to mitigate the impact of high latency on web applications.


Watch and Listen

GPUs, from Simulation to Encryption
This podcast episode explores diverse applications of GPUs beyond graphics rendering, featuring Agnès Leroy's career experiences in GPU programming and optimization. It covers a range of GPU uses, from simulating fluid dynamics in hydroelectric power stations to accelerating novel encryption methods, showcasing the versatility of GPUs in complex computational tasks.

Is Tauri the Electron Killer?
Daniel Thompson discusses Tauri, a framework for building small, fast and secure desktop and mobile apps using Rust and webviews instead of Electron. Key topics include improvements in version 2 like mobile support, the plugin system, and custom web views, the release cycle and future roadmap, and designing in the age of AI.

Securing API Servers
Learn key concepts for keeping API servers secure – from CORS to error handling to rate limiting and more. 

Terraform Crash Course for Absolute Beginners | Learn Infrastructure as Code
This Terraform crash course for beginners covers essential concepts like state management, drift detection, and building IaC projects on AWS. By the end, participants gain hands-on experience in using Terraform to automate and manage infrastructure across cloud and on-premises environments.


Interesting Projects, Tools and Libraries

FAIR
A Go library for serving resources fairly.

grgry
A CLI tool designed to perform git operations en masse, allowing you to bulk execute git commands across multiple repositories.

RaspberryPi_WebRTC
Turn your Raspberry Pi into a low-latency home security camera using the v4l2 DMA hardware encoder and WebRTC.

FlowTracker
Track data flowing through Java programs, gain new understanding at a glimpse.

Linutil
Linutil is a distro-agnostic toolbox designed to simplify everyday Linux tasks.

fast-grid
World's most performant DOM-based web table.

Tansu
Tansu is an Apache Kafka API compatible broker with a Postgres storage engine. 

kty
The terminal for Kubernetes.
 
Our Other Newsletters
Python Weekly - A free weekly newsletter featuring the best hand curated news, articles, tools and libraries, new releases, jobs etc related to Python.

Founder Weekly - A free weekly newsletter for entrepreneurs featuring best curated content, must read articles, how to guides, tips and tricks, resources, events and more.
Copyright © 2024 Programmer Weekly, All rights reserved.
You are receiving our weekly newsletter because you signed up at http://www.ProgrammerWeekly.com

Our mailing address is:
Programmer Weekly
Brooklyn
Brooklyn, NY 11228

Add us to your address book


Want to change how you receive these emails?
You can update your preferences or unsubscribe from this list.

Older messages

Programmer Weekly - Issue 222

Thursday, September 12, 2024

View this email in your browser Programmer Weekly Welcome to issue 222 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week "Referential transparency is a very

Programmer Weekly - Issue 221

Thursday, September 5, 2024

View this email in your browser Programmer Weekly Welcome to issue 221 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week "Just as it is a good practice to make

Programmer Weekly - Issue 220

Thursday, August 29, 2024

View this email in your browser Programmer Weekly Welcome to issue 220 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week “It is far easier to design a class to be

Programmer Weekly - Issue 219

Thursday, August 22, 2024

View this email in your browser Programmer Weekly Welcome to issue 219 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week "Be careful to preserve the

Programmer Weekly - Issue 218

Tuesday, August 20, 2024

View this email in your browser Programmer Weekly Welcome to issue 218 of Programmer Weekly. Let's get straight to the links this week. Quote of the Week "Get out of the way of your developers

You Might Also Like

🎉 Black Friday Early Access: 50% OFF

Monday, November 25, 2024

Black Friday discount is now live! Do you want to master Clean Architecture? Only this week, access the 50% Black Friday discount. ​ Here's what's inside: 7+ hours of lessons .NET Aspire coming

Open Pull Request #59

Monday, November 25, 2024

LightRAG, anything-llm, llm, transformers.js and an Intro to monads for software devs ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Last chance to register: SecOps made smarter

Monday, November 25, 2024

Don't miss this opportunity to learn how gen AI can transform your security workflowsㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ elastic | Search. Observe. Protect

SRE Weekly Issue #452

Monday, November 25, 2024

View on sreweekly.com A message from our sponsor, FireHydrant: Practice Makes Prepared: Why Every Minor System Hiccup Is Your Team's Secret Training Ground. https://firehydrant.com/blog/the-hidden-

Corporate Casserole 🥘

Monday, November 25, 2024

How marketing and lobbying inspired Thanksgiving traditions. Here's a version for your browser. Hunting for the end of the long tail • November 24, 2024 Hey all, Ernie here with a classic

WP Weekly 221 - Bluesky - WP Assets on CDN, Limit Font Subsets, ACF Pro Now

Monday, November 25, 2024

Read on Website WP Weekly 221 / Bluesky Have you joined Bluesky, like many other WordPress users, a new place for an online social presence? Also in this issue: CrawlWP, Asset Management Framework,

🤳🏻 We Need More High-End Small Phones — Linux Terminal Setup Tips

Sunday, November 24, 2024

Also: Why I Switched From Google Maps to Apple Maps, and More! How-To Geek Logo November 24, 2024 Did You Know Medieval moats didn't just protect castles from invaders approaching over land, but

JSK Daily for Nov 24, 2024

Sunday, November 24, 2024

JSK Daily for Nov 24, 2024 View this email in your browser A community curated daily e-mail of JavaScript news JavaScript Certification Black Friday Offer – Up to 54% Off! Certificates.dev, the trusted

OpenAI's turbulent early years - Sync #494

Sunday, November 24, 2024

Plus: Anthropic and xAI raise billions of dollars; can a fluffy robot replace a living pet; Chinese reasoning model DeepSeek R1; robot-dog runs full marathon; a $12000 surgery to change eye colour ͏ ͏

Daily Coding Problem: Problem #1618 [Easy]

Sunday, November 24, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Zillow. Let's define a "sevenish" number to be one which is either a power