This author participated in a coding challenge to count the occurrences of a specific byte in a large stream of data and found that interleaving the processing of successive 4K pages significantly improved the performance by utilizing the Streamer prefetcher in the Intel processor.
Copying is a fundamental aspect of design, as shown by the Eames chair, Steve Jobs' Apple products, and John Carmack's video games. Copying can be a way to learn, a challenge to overcome, or a source of new ideas. Some people have used copying to improve themselves, build community, or subvert authority, while others have struggled against it.
There are FAANG-level salaries available in finance, trading, crypto, and high-growth startups.
Sponsored
Tired of getting bogged down in pixel-perfect tweaks instead of building interesting features? Had enough back and forth with marketers and designers? Read the new Ebook by builder.io [10] to learn how top dev teams have broken free from the limitations of traditional headless CMSs with the help of AI and visual development
Papermark is an open-source document sharing solution with built-in analytics and custom domains.
why-is-node-running is a tool that helps identify the active handles keeping a Node.js process running by logging them. It can be installed locally or globally and used either as a dependency in your code or as a standalone CLI tool.
LLMs demand a lot of energy, but researchers are finding ways to reduce their size by quantization - representing model parameters with only 1 or -1. The two main approaches are post-training quantization (PTQ) and quantization-aware training (QAT). PTQ is currently more popular. Despite lower perplexity scores, 1-bit LLMs are much more energy efficient and faster on customized chips.
ASCII is a standard for representing characters with 7-bit binary values. It is the most popular character encoding format. ASCII uses a well-organized table with control codes, space, numbers, shifted numbers, and letters that all follow logical patterns. The table's design is aesthetically pleasing and reflects a hidden history of computing, with historical artifacts like the DEL character and the placement of the space character showcasing consideration for sorting and readability.
Software projects that adopt Agile practices are 268 percent more likely to fail than those that do not.
Wiz, a cloud security startup, has abandoned a $23 billion acquisition deal with Google due to antitrust and investor concerns, and will instead pursue an IPO as it tries to reach $1B in annual recurring revenue.
The Ignore button in Windows 3.1 attempted to recover a crashed application by skipping the instruction that caused the general protection fault and resuming execution.
Google URL Shortener will stop serving goo.gl links on August 25, 2025 - an interstitial page will start appearing for some links on August 23, 2024.
2024.07.23·developers.googleblog.com·2 min read·TLDR Web Dev Sponsored
Does shipping digital experiences quickly mean compromising on quality? Not necessarily. AI and visual development create new ways to build, iterate upon, and optimize applications and websites.
On July 19, CrowdStrike released a sensor configuration update to Windows systems that triggered a logic error resulting in system crashes and blue screens. The issue was caused by an updated Channel File 291 (a config file) that controls how Falcon evaluates named pipe execution. CrowdStrike has corrected the error and updated the file, but billions of systems are still affected.
Box shadows in CSS can be used to create a variety of effects beyond simple drop shadows, such as layered shadows, rounded corners, and 3D-like effects. They can be combined and animated to create complex visuals, such as bouncing balls and simulated 3D objects. This article goes over how to and how not to use box shadows. Using box shadows for such advanced effects can be performance-intensive, especially when blurring or transparency is involved.
Node's spawn function can be slow due to its blocking nature. Using the Node cluster module or worker threads can improve spawn performance, but may have drawbacks like isolated processes or added overhead. Moving spawn calls to child processes and using abstract sockets or process.send for communication can help performance in this case.
Overplanning in software projects can lead to overcomplication, overengineering, and wasted time. Prototyping is better because it helps identify unknown challenges and bottlenecks. It's better to build a minimum viable product (MVP) and iterate based on real-world feedback than to strive for perfection on paper.
This author disagrees with blaming software engineers for the CrowdStrike outage, instead placing responsibility on CEOs, customers, government regulations, middle management, and the board of directors. These parties prioritized profits over quality and failed to give the software engineers the respect and resources they needed to do their jobs properly.
Reddit users share their positive experiences transitioning from tech lead back to senior engineer roles. The transition improved work-life balance and a renewed focus on technical skills for many.
Sponsored
Over 2/3rd of dev teams test less than 50% of their workflows, causing bugs to sneak out. QA Wolf [11] gets your organization to 80% automated E2E test coverage in less than 4 months.
rr is a C/C++ debugging tool for Linux that records program executions and allows for deterministic replay, replacing gdb. It also enhances gdb with efficient reverse-execution for easier debugging.
Nextra is a simple, powerful, and flexible site generation framework. It uses Next.js and Markdown.
Fakemail is a fake SMTP server for software integration testing.
A recent study by the Data Provenance Initiative found a significant decrease in the availability of web data for training AI models. This is due to many websites restricting data usage through methods like the Robots Exclusion Protocol or changing their terms of service. This data scarcity will be tough for AI companies who rely on large datasets to train and improve their models.
Running untrusted JavaScript code within an application can open up a world of customization but also exposes the platform to security risks. There are various methods to mitigate these risks, including time-boxing execution with Web Workers, disallowing global objects, and using isolated virtual machines. Developers can also opt for server-side options like Docker or WebAssembly.
Leading foundries Intel, Samsung, and TSMC are differentiating themselves with unique approaches to 3D chip design and packaging. Intel focuses on developing "sockets" for chiplets, Samsung is creating mini-consortia of chiplet providers, and TSMC offers a variety of packaging options and a new design language called 3Dblox. These foundries are also working on new technologies like custom HBM, backside power delivery, and glass substrates to address challenges in performance, power delivery, and signal integrity.
Bloomberg terminals have not been disrupted due to their extensive high-quality datasets, a user experience loved by users, strong network effects, and role as the infrastructure of global finance.
There are a large number of fake reviews on the Mac App Store for cheap top paid apps, all of which were posted around the same time period, that may have been purchased by a single developer to camouflage their own app's fake reviews.
An open-source distributed object storage service tailored for self-hosting.
A C compiler written in Zig.
* Fostering a culture of observability * Ensuring scalability and flexibility
* Managing cost without sacrificing visibility
Sponsored
Observability is non-negotiable when you're working with microservices. But if it's not managed correctly, it can become a budget and time sink that's hard to justify.
This article goes over major software bugs in the real world. For example, the Ariane 5 rocket exploded in 1996 due to a software error, causing a major financial loss and delaying scientific research. An airline was grounded for 3 hours due to an uncaught SQLException in its core system, highlighting the importance of error handling and system isolation. The Boeing 737 MAX crashes were partially caused by a flawed software system (MCAS).
2024.07.19·newsletter.techworld-with-milan.com·10 min read·TLDR Web Dev Uber created Odin to automate and simplify the management of its giant data storage infrastructure. Odin is designed to be declarative and self-healing, continuously working to align the actual state of workloads with their intended goal states. Odin's control plane is divided into global and host-level components, with two agents - one technology-agnostic and the other technology-specific - working together to manage workload scheduling, cluster topology, and resource allocation.
Closures combined with the useCallback hook in React can cause hidden memory leaks by holding onto large objects in the component's context, preventing garbage collection. Memoized functions may inadvertently reference each other and shared data, creating an endless chain of closures. To avoid such issues, keep closure scopes small, avoid unnecessary memoization, and consider using useRef for large objects.
Post-Architecture is an approach to software development that prioritizes incremental design over premature abstraction. It focuses on procedural programming with a functional flavor, focusing on data structures rather than code patterns, and identifying data flows to guide development.
Trust is necessary for effective collaboration as teams grow. A lack of trust can hinder productivity. Trust allows for efficient delegation and decision-making, especially in high-pressure situations. However, building trust isn't easy because it requires proactive effort, being reliable, sharing mental models, communicating openly, and giving feedback.
Functional CSS, or utility-first CSS, simplifies styling by using small, reusable classes for specific purposes. Tailwind CSS and Tachyons are examples of functional CSS frameworks. They're still popular today because of how easy they are to pick up and use.
Sponsored
Just getting started with Sentry for a Node project? This workshop [11] is for you. Learn how to configure a Sentry project [11], upload source maps to un-minified stack trace, add event context with custom tags, set up effective alerts, and search across spans with tracing.
Devzat is a custom SSH server that takes you to a chat instead of a shell prompt.
NativeLink is an efficient build cache and remote execution system that makes software compilation and testing faster. It optimizes build processes for projects of all sizes by caching build artifacts and distributing tasks across multiple machines.
Flowchart Fun allows you to turn text into visual flowcharts.
Bell Labs was a highly successful industrial research lab that made numerous groundbreaking inventions and discoveries in the 20th century. Its success was due to several factors, including being a subsidiary of AT&T, a government-sanctioned monopoly, which allowed for long-term research projects and a broad research scope. The lab also benefited from historical circumstances like the advancement of quantum mechanics and the influx of talented European physicists after WWII. However, the lab's decline began after the breakup of AT&T in 1982, as it was repeatedly reorganized and faced increasing financial pressure.
2024.07.19·construction-physics.com·32 min read·TLDR Web Dev