This blog post shows some surprising ways to use Copilot beyond the basics: run terminal commands from Copilot chat or directly in terminal using the Copilot CLI, generate pull request summaries, commit messages and documentation, explain a GitHub repo, bulk close issues, and get help with error messages.
Google's motives for deprecating third-party cookies are likely commercial, not privacy-driven, despite the company's emphasis on protecting user privacy. Apple's App Tracking Transparency privacy policy is an example of how companies can use privacy rhetoric while still collecting data. Google's main motivation for deprecating third-party cookies is to boost its own margins by shifting ad spend from its lower-margin Network business to its higher-margin owned-and-operated channels.
CodeRev is a tool for conducting technical interviews using code reviews rather than coding questions.
Clean code has some language-agnostic fundamentals, such as having a well-organized story, being simple, easy to improve, and well-tested.
A "flow engineering" process, which guides an AI model's problem-solving process by splitting it into well-defined steps, leads to better results for LLMs when it comes to solving coding problems.
ChatGPT Custom Actions can be used to create a personal assistant app. This article details the architecture of one such app and implements a sample app built with Rust and OpenAPI. Users can interact with the app through natural language and use custom actions defined by developers.
Qwik, a web framework, offers a unique approach to managing client-side JavaScript, focusing on "resumability" and loading JavaScript on demand. This method contrasts with React's hydration process by aiming to improve performance and efficiency in web applications. Qwik's strategy reduces initial load times and enhances interactivity by only loading the necessary JavaScript code when needed.
Netflix developed a statistical procedure for A/B testing to detect changes in software performance. The traditional fixed-horizon testing methods are not suitable for this task because they require waiting for a predetermined amount of data before analysis, which can delay the detection of important regressions. The new method, called sequential testing, allows for continuous analysis of data streams and provides guarantees on false positive rates. It has been successfully implemented at Netflix to prevent bugs and performance regressions from reaching production.
This author worked as a software engineer at Amazon from 2019 to 2024. Some of the surprising things they found from working there include how supportive most of their team was, how the company could act both big and small, and how easy it was to move between teams. However, on the negative side, they didn’t like working on a team with a lot of technical debt and having a manager who didn't know much about software engineering.
This article offers tips for creating beautiful slides for tech talks. It emphasizes using good fonts, focusing on powerful editing features like actions and smart objects in Photoshop, and keeping design elements minimal. Slides should have a consistent visual theme and contain visuals. They shouldn’t be overloaded with information.
GitHub Copilot may have negative consequences for accessibility on the web. Examples of how Copilot can generate code that is inaccessible to users with disabilities include using JavaScript to create a link instead of a native HTML link or not using proper ARIA attributes. Copilot is not very transparent about how it works and there needs to be better quality control for tools like it.
Observable 2.0 is a platform focused on building data apps, dashboards, and reports. It comes with Observable Framework, a static site generator that combines the strengths of JavaScript for interactive graphics with any language for data analysis. Framework offers a better user experience with precomputed data for fast loading and beautiful design, a better data architecture with flexible data loaders that run on your servers for security and privacy, and a better developer workflow with files, code review, and offline work.
uv is an extremely fast and efficient Python package installer and resolver designed to replace pip and pip-tools. It boasts 10-100x faster speeds, uses a global cache to save space, and supports a wide range of features like version overrides, conflict tracking, and support for various dependency formats.
Magika is an AI-powered file type detection tool created and open-sourced by Google. It uses an optimized 1MB Keras model that enables precise file identification within milliseconds. Magika is currently used within Google to help improve Google users’ safety by routing Gmail, Drive, and Safe Browsing files to the proper security and content policy scanners.
This article compared LLMs Gemini 1.5 and GPT-4-Turbo-128K on their ability to understand a complex 120K-token codebase. Gemini 1.5 outperformed GPT-4 in almost all aspects, demonstrating a better understanding of the code syntax, memory layout, bug fixes, and removed functions. While neither model achieves true AGI (Artificial General Intelligence), Gemini's ability to navigate large contexts and connect information is impressive.
Hacker News has seen a dramatic rise in Google rankings, likely due to Google's "hidden gem" update prioritizing personal experiences. The site saw a 162% visibility increase in the UK and 75% in the US. This could lead to a potential increase in spam.
Biology is a complex field that has been difficult to predict and engineer. However, recent advancements in AI, lab automation, and CRISPR are making it possible to build more predictive models of biological systems and to edit DNA with greater precision.
A collection of materials to learn more about debuggers, how they work, which technologies are under the hood, and what kind of problems exist in the area.
wddbfs is a tool that allows users to mount an SQLite database as a filesystem, making it easier to inspect and edit the database using familiar file system tools. It currently supports read-only access and converts tables to various file formats like CSV, TSV, and JSON.
iPhone web apps will soon stop functioning in the EU due to Apple's compliance with the DMA, which requires supporting alternative browser engines. Apple has decided that making dedicated web apps is too risky.
Rivian recently made a mistake during an over-the-air software update for its cars that caused infotainment screens to reboot and become unusable for several days. It could have prevented this with better practices like canary deployments, pre-flight checks, and rollback mechanisms, which are common in cloud systems. Frequent small deployments and phased rollouts ensure safe changes in production.
Amazon Prime Video uses a variety of AWS services, including Elemental MediaConnect, MediaLive, and CloudFront, to ingest, encode, package, and deliver video content to millions of users. It also employs redundancy measures and parallelization to ensure that its system is resilient to failures. By doing so, it is able to achieve an expected uptime of 99.999%.
Learning about memory profiling can help you understand how an application uses memory over time and aid in building the right mental model of a program’s behavior. This article defines key terms like memory usage, footprint, VSZ, and RSS and explains how they differ. It also discusses how this information can be used to identify problems and understand the pressure on the memory subsystem.
There are three virtues of a great programmer: laziness, impatience, and hubris. Laziness drives efficiency and clear documentation, impatience fuels proactive and user-friendly solutions, and hubris motivates crafting well-maintained, respected code.
The web development industry's obsession with speed over maintainability ultimately leads to unsustainable situations. It’s important to consider maintainability throughout the development process as it’s much easier to acquire debt than develop on top of an unmaintainable project.
Sponsored
Attending EthDenver? Join XRP Ledger Zone [10] on February 27! Learn how the robust security of the XRP Ledger (XRPL) [10] meets the smart contract programmability of EVM.
2024.02.16·xrplzone-ethdenver.splashthat.com·Sponsor·TLDR Web Dev Google has introduced Gemini 1.5, a large language model with significantly improved performance and new features, like a one million token context window. It's still under testing, but it is available for developers and enterprises in Google’s AI Studio and Google Cloud’s Vertex AI. Gemini 1.5 Pro offers similar performance to Gemini Ultra but is more efficient and opens up new possibilities for tasks like better reasoning, code writing, and problem-solving due to its extensive context.
Fuzzy Search is a frontend library for searching objects by their names and features. Queries are fast and usually take under 10ms to complete.
Zenfetch helps you leverage all the information you've saved, including articles, PDFs, and YouTube videos. It uses AI to organize everything and enables users to have conversations about their saved content, extract information, validate thoughts, and brainstorm ideas.
Keeping a self-hosted project healthy requires constant "code chores" like updating frameworks, fixing bugs, and refactoring code - tasks less exciting than flashy new features. These chores require consistent funding and are often overlooked compared to individual features. Developers should split funds and time between features and essential maintenance as features need ongoing care to remain functional and secure.
Rust is quickly growing in popularity, but C++ is still ideal for many use cases due to its integrations with existing libraries and familiarity with a large number of developers. C++ has more mature compilers, libraries, and knowledge overall. Choosing the right language is best determined by the goal of the project and how familiar existing teams are already with C++ and Rust. Rust is a great choice for those who need strong memory safety and want to use a more modern language.
This article teaches developers how to build a language model from scratch. It outlines the necessary steps and libraries needed to build such a model from start to finish and provides code examples.
2024.02.16·bclarkson-code.github.io·18 min read·TLDR Web Dev OpenAI has introduced Sora, a text-to-video model that can generate videos up to a minute long while maintaining visual quality and adherence to the user’s prompt.
A 20-plus-year-old design flaw in DNSSEC, a security upgrade for DNS, allows attackers to disable DNS servers with a single packet, potentially disrupting internet access for millions.
Unreal Engine 5, a graphical game engine that powers thousands of games today, has been ported to WebGPU.
Everything you need to know about choosing meaningful, readable, and easily searchable names.
Just how much HTML, CSS, and (particularly) JavaScript can a new project afford? The answer is “more than in years past, but much less than frontend developers are still burdening users with”. This post digs deep into this topic, particularly on how updated devices, networks, and new metrics (INP) influence this, particularly for websites that work on low-end devices.
There are two types of readability in code: beginner and expert. Beginner readability focuses on making code easy to understand for those new to programming or a particular language, while expert readability focuses on making code easy to understand for experienced developers. Both types of readability are important, but expert readability is often more important in the long run as it allows developers to write more concise and expressive code.
Advanced SQL techniques such as Common Table Expressions, window functions, and the use of the PARTITION BY command are useful for developers who need to produce business insights and technical designs. This article provides practical examples and exercises for each technique.
Commenters recommend various types of documentation. One type is executable documentation, such as descriptive tests and asserts throughout code. Another is timestamped documentation, like a doc with the last time it was updated or detailed pull requests. Other forms of documentation include Confluence, a documentation repository of Markdown files, and design docs.
The key to becoming a senior engineer isn't just about technical skills - engineers need to build trust through reliability and dependability. Consistently delivering on projects, communicating challenges early, and maintaining a "streak" of successful outcomes builds dependability and trust within teams and it allows senior engineers to be entrusted with complex high-stakes projects.
A monolithic architecture with a focus on cohesive and modular designs to match the team's cognitive load may be favorable for single teams. Conversely, for multiple teams, microservices or similar architectures allow for independent work but require well-designed APIs to mitigate extraneous cognitive load. Software architecture is ideally designed to fit the maximum team cognitive load to avoid overstretching teams and ensure alignment between organizational capacity and architectural decisions.
2024.02.15·fernandovillalba.substack.com·9 min read·TLDR Web Dev Velvette is a JavaScript library that implements common patterns on top of CSS view transitions. It makes it easier to author CSS view transitions by providing useful temporary classes while the transition is active. Velvette can generate unique names and animate between list and detail views.
Reor is an AI note-taking app that automatically connects related notes and answers questions based on them. It offers a semantic search. Everything runs locally, with optional connections to APIs. By embedding notes and utilizing vector similarity, Reor "self-organizes" your ideas, drawing connections and surfacing related notes.
oink.php is a free and open-source API wrapper for PHP - in a single file.
GitHub uses “code scanning autofix,” which uses AI to suggest fixes for security vulnerabilities detected in codebases. The feature integrates into existing code scanning workflows and provides users with suggested fixes directly in pull requests. Autofix prompts LLMs to suggest edits while ensuring code functionality remains unchanged.
Country-code top-level domains (ccTLDs) are managed by individual countries with no standardized regulations, leaving users vulnerable to price hikes, domain cancellations based on changing political climates, and unclear ownership rules. Examples include the recent shutdown of "queer.af" by the Taliban and the Brexit-related issues with ".eu" domains. While some ccTLDs might be useful for local businesses or residents, gTLDs (global TLDs) may be better for their lower risk and more consistent regulations.