This article proposes a new approach to software integration called a "Schema Network". Instead of building integrations from scratch using each software’s APIs, Schema Network aims to reuse existing integrations by composing them through a network of apps and integrations. This offers a more efficient, wider coverage of software integrations compared to current methods.
Sponsored
Google Cloud’s upcoming developer conference [13] is packed with immersive learning, community interactions, and a peek into the future of Google Cloud — with a focus on the latest tools for building AI-powered applications [14].
* 500+ sessions [14] (101 - 301 level) across 10 different tracks * Cutting-edge AI demos [15] and interactive learning
ReadySet is a transparent database cache for Postgres & MySQL that has the performance and scalability of an in-memory key-value store. It sits between applications and databases and turns complex SQL reads into fast lookups. ReadySet keeps cached query results in sync with databases automatically by utilizing its existing replication stream.
Remix has announced the stable release of Remix Vite, which offers various new features and improvements built on top of Vite, including an SPA mode, Cloudflare Pages support, a cleaner build output, and better server/client separation.
Google has released Gemma, a new family of open-source AI models that competes with LLaMA 2 and Mistral. The Gemma models offer state-of-the-art performance, are optimized for multiple frameworks and hardware, and come with a Responsible Generative AI Toolkit for developers. Free access is available for research and development through Kaggle, Colab, and Google Cloud credits.
Apple has added PQ3 to iMessage. PQ3 is a new post-quantum cryptographic protocol that offers strong protection against current and future threats from quantum computers. It surpasses the security of all other widely available messaging apps by achieving Level 3 security. PQ3 features post-quantum encryption, a self-healing key mechanism, a hybrid design, and formal verification that ensures security.
A npm package called execution-time-async had malicious code hidden in it that was designed to steal login credentials and passwords from various browsers. The attacker, who has been identified, used various tactics to hide the malicious code, including obfuscation and placing it in a seemingly innocuous test file. They seem to be targeting software developers, possibly through social engineering schemes.
Two tips for building React Router apps: keep action data flat when using JSON, and use specific names for URL params, like “userId” instead of just “id”.
Sync, search, and backup your shell history.
Generative AI is progressing fast and there are a lot of open questions about what the future of development and tech looks like. For example, what app opportunities are emerging, and what role will AI agents play in the future?
Use Ollama to talk to local LLMs in Apple Notes.
Sponsored
This year’s POST/CON [5] (April 30 - May 1st in San Francisco) is the place to be if you’re looking to hear from industry leaders, gain new skills, engage with the community. (BTW, there’s also an awesome after party [5])
100 million people were using ChatGPT weekly by November 2023. Scaling ChatGPT to such a large user base was not an easy feat. OpenAI faced a few key challenges when scaling: managing GPU RAM, avoiding cache misses, finding the right batch size, measuring the right metrics, and handling a shortage of GPUs. The company found that taking a system-wide approach to optimization and being adaptable in the face of changing constraints allowed it to scale efficiently. Many of the lessons learned are applicable to general software systems.
2024.02.21·newsletter.pragmaticengineer.com·21 min read·TLDR Web Dev Bloom Filters are a probabilistic data structures useful for checking membership in a set with efficient space usage. They store information using bits and hash functions and offer fast membership checks. They can give false positives (claiming an item exists when it doesn't), but they never give false negatives (missing an item that exists). In the real world, Bloom filters are commonly used for caching and distributed databases.
SPAs (Single Page Applications) are defined by a core feature: they dynamically rewrite their content as users interact with them instead of the default method of loading entirely new pages from the server. SPAs are able to provide this feature via the History API, a clunky API developed long before SPAs were the norm. The Navigation API is a newly proposed API that completely overhauls this space that promises to be easier to adapt. This page describes the Navigation API at a high level with code examples on popular usages.
Simple architectures can be surprisingly effective, even for large-scale applications. For example, Wave is a $1.7B fintech company with a CRUD app built on a Python monolith and Postgres database. The benefits of this simple architecture include lower cost, easier maintenance, and faster development. There are some areas where complexity is unavoidable, such as telecom integrations. Simple architectures are a good choice for many businesses, especially those that are not ad-supported or businesses without high traffic levels.
Picat is a research language that combines logic programming, imperative programming, and constraint solving. “Planning" in Picat is when the program finds variable mutations to reach a desired end state. Instead of defining algorithms, Picat defines starting states, actions, and final states, allowing the program to find solutions through mutations. Planning helps minimize cost and is best used for applications in AI, robotics, and video games.
Coding interviews are effective for companies despite their limitations because they help minimize the risk of hiring bad candidates. While there are downsides to coding interviews, like pressure and filtering out good candidates who don't perform well, they can be useful for assessing a candidate's problem-solving skills and their potential as a future teammate. Automated assessments aren’t as reliable as they lack human interaction and can’t always catch cheating.
Sponsored
For the past 40 years, MESCIUS (formerly GrapeCity) [12] has been building award-winning developer tools: JavaScript and .NET grids, reporting, spreadsheets, .NET and Java Document APIs, viewers, and mobile controls. These include popular solutions [12] such as ComponentOne, Wijmo, and ActiveReports. Microsoft, Tesla, Disney, and +250K other customers use MESCIUS tools daily.
Hyperdiv is a Python framework for developing reactive browser UI apps. It features built-in components, terse immediate-mode syntax, and minimal tool boilerplate. Hyperdiv supports Markdown, charts, styled web components, local storage, and forms.
Valve has made the Steam Audio SDK fully open-source, with plug-ins included. Steam Audio is an immersive audio solution for games and VR. It has real-time sound propagation, VR integration, and 3D audio capabilities. There are plug-ins to make it compatible with Unity, Unreal Engine, and other game engines.
Dax is a collection of cross-platform shell tools for Deno and Node.js. It allows users to export the shell’s environment to the current process. Dax has support for a global configuration. It brings extra features to Windows that are natively available on Unix-based systems.
Cloud storage performance lags far behind the advancements in SSD technology. Major cloud vendors are offering read/write speeds 10x slower than high-end SSDs available on the market. The reasons for this big difference are unclear but could be due to concerns about SSD durability, lack of demand, or potential disruption to existing cloud storage services.
2024.02.21·databasearchitects.blogspot.com·4 min read·TLDR Web Dev This author spent a year cleaning medical device data from the FDA's 510k database website. The website's interface was outdated and lacked functionalities like fuzzy search and keyboard shortcuts. To save time and improve their workflow, the author wrote userscripts to automate repetitive actions by adding shortcuts for opening search, focusing on search input, and copying device ID.
This article provides twenty examples of how people are using custom GPTs in the workplace to make their teams more productive. It walks through how to create a custom GPT and demonstrates some interesting real-world use cases, such as figuring out internal ownership and technical dependencies, learning from past user research studies, and grading the relevance of search results.
Someone ran a script on BigQuery for historical HTTP Archive data and racked up a $14,000 bill for accessing 2.5 petabytes of data.
Various iOS and macOS developers chime in on the value of Objective C. Many believe it’s still useful to know Objective C even if their apps are primarily written in Swift.
Prettier, a code formatter, never breaks JavaScript/TypeScript code during formatting. This durability comes from its use of prior research by a prominent Haskell developer.
Node developers are wrestling with the decision to enable Corepack (a tool for managing package managers that lets you use npm/yarn/pnpm without having to install them) by default. This has sparked a debate about the possibility of even removing npm from the Node.js binary.
Sponsored
POST/CON 24 (April 30 - May 1 in San Francisco) is the place to be if you’re looking to hear from industry leaders, gain new skills, engage with the global API community…or attend an awesome after-party. (BTW, there’s a 50% discount if you sign up today! [5])
>> Conference and open labs featuring experts from Postman,
This article discusses the evolution and benefits of serverless computing, which was introduced with AWS Lambda in 2014. It covers best practices like designing for failure, optimizing performance, ensuring security, and managing costs. It also highlights common pitfalls, including cold start latency, security complacency, and complexity in managing services.
This article describes a method for serving a website directly from a git repository using a modified reverse proxy. The traditional method uses a web server, such as Github Pages, to serve the latest version of the main branch of a git repository. The new method uses git’s internal object structure and a reverse proxy to retrieve content directly from a remote repository on demand. The pros of this are that it’s more efficient than traditional methods and there is no need to maintain a local copy of the repository, while the drawbacks are that it is more complex and requires a deeper understanding of git internals.
The defineModel macro introduced in Vue 3.4 simplifies hierarchical state management and reduces the need for global state or prop drilling. This article demonstrates how to use defineModel with composables for further code organization and maintainability. defineModel makes state management much easier for teams, enabling them to create clean components that are easy to read and understand.
A former front-end developer shares his experience transitioning to an engineering management role. The pros of the transition include greater impact, more career opportunities, less knowledge rot, and new challenges. However, engineering management roles have to deal with fewer breaks, longer feedback loops, occasional awkward social situations, and having to deal with corporate politics.
A good UI is a function of an organization's ability to deliver on its promises. The Domino's Pizza Tracker, while convenient for users, required significant infrastructure and process changes within Domino's. Compromises are often made between the ideal UI and an organization's reality. This is why startups, with their flexible structures, are better suited for innovative UIs.
Tailwind CSS's core idea of utility-first workflow is harmful because it breaks established best practices and makes code harder to maintain. Tailwind encourages the use of inline styles and vendor-specific language expressions, which can make code messy and difficult to understand. It discourages semantic class names, which are important for maintainability. Developers should consider learning proper CSS and follow established best practices such as "content first" workflow.
Sponsored
How far are you from having 3-minute QA cycles, zero false positives, and human-verified bug reports? Fast track your testing maturity with QA Wolf (4.8/5 in G2) [13]. Get to 80% automated end-to-end test coverage in just 4 months, including unlimited parallel runs on QA Wolf infrastructure + 24-hour
htmz is a minimalist HTML microframework that allows developers to create modular web user interfaces with the familiar simplicity of plain HTML.
Tempo is a JavaScript library that makes it easy to work with Date objects by providing various utilities. It uses JavaScript's Intl.DateTimeFormat to extract complex data like timezones offsets and locale aware date formats to provide an API to format, parse, and manipulate dates.
Peggy is a JavaScript parser generator that delivers swift parsers equipped with error reporting. Developers can use Peggy to build transformers, interpreters, compilers, and beyond.