~/devreads

15 Aug 2023

14 Aug 2023

David Walsh 1 min read

As more of the JavaScript developers write becomes asynchronous, it’s only natural to need to wait for conditions to be met. This is especially true in a world with asynchronous testing of conditions which don’t provide an explicit await. I’ve written about waitForever, waitForTime, and JavaScript Polling in the past, but I wanted to have a more modern way of…

11 Aug 2023

David Walsh 1 min read

One of the larger downloads when requesting a webpage are custom fonts. There are many great techniques for lazy loading fonts to improve performance for those on poor connections. By getting insight into what fonts the user has available, we can avoid loading custom fonts. That’s where queryLocalFonts comes in — an native JavaScript function to gather user font information.…

10 Aug 2023

1 min read

Table of Contents In the last article in this series, we defined some custom lowering passes that modified an MLIR program. Notably, we accomplished that by implementing the required interfaces of the MLIR API directly. This is not the way that most MLIR developers work. Instead, they use a code generation tool called tablegen to generate boilerplate for them, and…

1 min read

Table of Contents This series is an introduction to MLIR and an onboarding tutorial for the HEIR project. Last time we saw how to run and test a basic lowering. This time we will write some simple passes to illustrate the various parts of the MLIR API and the pass infrastructure. As mentioned previously, the main work in MLIR is…

1 min read

Table of Contents Last time, we covered a Bazel build system setup for an MLIR project. This time we’ll give an overview of a simple lowering and show how end-to-end tests work in MLIR. All of the code for this article is contained in this pull request on GitHub, and the commits are nicely organized and quite readable. Two of…

1 min read

Table of Contents As we announced recently, my team at Google has started a new effort to build production-worthy engineering tools for Fully Homomorphic Encryption (FHE). One focal point of this, and one which I’ll be focusing on as long as Google is willing to pay me to do so, is building out a compiler toolchain for FHE in the…

1 min read

Today my team at Google published an article on Google’s Developers Blog with some updates on what we’ve been doing with fully homomorphic encryption (FHE). There’s fun stuff in there, including work on video processing FHE, compiling ML models to FHE, an FHE implementation for TPUs, and improvements to the compiler I wrote about earlier this year. TODO: add mower…

9 Aug 2023

8 Aug 2023

Ilya Grigorik 3 min read

Separate social, info-sharing, and decision-making meetings. Effective meetings require a process owner, agenda, preread, and curated attendees.

decsion makingmeetingsleadership

Nic Raboy 1 min read

As seen in a previous tutorial, creating a serverless function for AWS Lambda with Java and MongoDB isn't too complicated of a task. In fact, you can get it done with around 35 lines of code! However,... The post Serverless Development with Kotlin, AWS Lambda, and MongoDB Atlas appeared first on MongoDB.

Ben Dean-Kawamura 5 min read

This blog post will walk through how we developed UniFFI: a Rust library for auto-generating foreign language bindings. We will walk through some of the issues that arose along the way and how we handled them. The post Autogenerating Rust-JS bindings with UniFFI appeared first on Mozilla Hacks - the Web developer blog.

featured articlefirefoxjavascriptrustuniffi

0xADADA 2 min read

Denis Villeneuve, expert of visual storytelling, frequently employs the panning shot with an extensive use of the parallax effect to immerse viewers in his films, allowing them to experience a sense of place, scale, and depth like never before. He uses these teqniques most visibly in “Blade Runner 2049” (2017), “Enemy” (2013), and “Dune” (2021), highlighting how his use of…

notesfilmart

jesalg 8 min read

Unraveling growth challenges: Could a system architect be the solution? Serverless Architecture from Classic Programmer Paintings Most startups that go through hyper-growth tend to face the inevitable Bottlenecks of Scaleups, as masterfully described by ThoughtWorks. Having navigated the hyper-growth journey myself, I’ve witnessed firsthand how these technical bottlenecks can impede business progress, causing churn and chaos. Bottlenecks of Scaleups In…

7 Aug 2023

1 min read

Suppose we’ve got a service. We’ll gloss over the details for now, but let’s stipulate that it accepts requests from the outside world, and takes some action in response. Maybe those requests are HTTP requests, or RPCs, or just incoming packets to be routed at the network layer. We can get more specific later. What can we say about its…

vladmihalcea 1 min read

Introduction In this article, we are going to see how the SQL Server useBulkCopyForBatchInsert configuration property works when using JDBC, JPA, or Hibernate. SQL Server PreparedStatement batching When using JPA and Hibernate, the generated SQL statements are going to be executed using the JDBC PreparedStatement because prepared statements increase the likelihood of statement caching, and you to avoid SQL injection…

javasql server

David Walsh 1 min read

Web debugging tools are so incredibly excellent these days. I remember the days where they didn’t exist and debugging was a total nightmare, even for the simplest of problems. A while back I introduced many of you to Logpoints, a way to output console.log messages without needing to change the source files. Another great breakpoint type is XHR/fetch breakpoints, allowing…

5 Aug 2023

4 Aug 2023

Stanko 3 min read

What if I told you that we can make a timer without using setTimeout, setInterval or requestAnimationFrame? JavaScript is still necessary, but we can create the timer just by toggling some CSS classes. While I was working on an autoplay feature for a carousel, I thought to myself - CSS animations are kinda like timers. They have animationstart and animationend…

3 Aug 2023

Courtney Webster 4 min read

The August 2023 release of the Python and Jupyter extensions for Visual Studio Code are now available. This month's updates include a pre-configured dev container for the Python extension, a new debug configuration, an npm package for the Python extension API, and error-tolerant pytest discovery with the testing rewrite. Keep reading to learn more! The post Python in Visual Studio…

pythonvisual studio code

2 Aug 2023

jgamblin 2 min read

Hacker Summer Camp, as it is colloquially known, is three security conferences that are all next week in Las Vegas. The three conferences that makeup Security Summer Camp are: While preparing for these conferences, I dug through their schedules and picked out the talks I was most interested in catching. BSides Las Vegas BSides Las Vegas is back with a…

uncategorized

MV Karan 6 min read

The developer experience engineering team at GitHub works on creating safe, delightful, and inclusive solutions for GitHub engineers to efficiently code, ship, and operate software–setting an example for the world on how to build software with GitHub. To achieve this we provide our developers with a paved path–a comprehensive suite of automated tools and applications to streamline our runtime platforms,…

vladmihalcea 1 min read

Introduction Welcome to a new issue of the High-Performance Java Persistence Newsletter in which we share articles, videos, workshops, and StackOverflow answers that are very relevant to any developer who interacts with a database system using Java. Articles The pick of this edition is this article, which explains how the standard PostgreSQL MVCC system works and how the OrioleDB engine…

newsletterhibernatejavajpamysql

1 Aug 2023

31 Jul 2023

1 min read

Bookmarks for August 2023: 4 links - Don't be clever - stitcher.io; Perche' l'OnlyFans economy impatta sul mercato del lavoro...; Broken Ownership, and more.

Developer Relations Team 1 min read

SNS is a fully managed messaging service that enables developers to send notifications to various endpoints or distributed systems

Rohit Anand 5 min read

At Microsoft, we continue working on modernizing our services to make them faster, more reliable, and up to date with the latest technologies. In this blog post, we’ll cover how Azure Load Testing helped ensure that the Azure Active Directory (AAD) based authentication mechanism for Azure Cache for Redis met the performance criteria. Azure Cache […] The post Load testing…

engineeringmicrosoftautomated toolingazurecacheload

Omari Thompson-Edwards 3 min read

Next.js is a great React-based library, which includes some great features built-in that make getting started with your React app easy and simple. One of those features is the fairly new next/font package, which makes implementing fonts in your Next.js app quick and easy. Getting Started Google Fonts One of the great features of Next’s […]

next.js

30 Jul 2023

Darryn Campbell 1 min read

Insights is a valuable tool for understanding your data, but analyzing the data and deciding what actions to take can be harder, which is where “Analyze with AI” can help, allowing you to ask questions about your data in plain English.

28 Jul 2023

27 Jul 2023

Stephen Hood 19 min read

Artificial intelligence may well prove one of the most impactful and disruptive technologies to come along in years. We want to understand, support, and contribute to these efforts because we believe that they offer one of the best ways to help ensure that the AI systems that emerge are truly trustworthy. With this in mind, a small team within Mozilla’s…

artificial intelligencefeatured articlemozillaaiapi

Matt Cooper 4 min read

At GitHub, we perform a lot of merges and rebases in the background. For example, when you’re ready to merge your pull request, we already have the resulting merge assembled. Speeding up merge and rebase performance saves both user-visible time and backend resources. Git has recently learned some new tricks which we’re using at scale across GitHub. This post walks…

26 Jul 2023

Ryan Katkov 8 min read

Customer-first: Moving from Hero Engineering to Reliability Engineering From the beginning, Slack has always had a strong focus on the customer experience, and customer love is one of our core values. Slack has grown from a small team to thousands of employees over the years and this customer love has always included a focus on…

uncategorizedleadershipobservability

vladmihalcea 1 min read

Introduction In this article, we are going to see how we can do JDBC profiling using the VisualVM tool to find slow-running SQL queries or discover N+1 query issues. VisualVM VisualVM is an OSS tool that allows us to inspect the JVM and the Java applications running inside the Java Virtual Machine. You can download VisualVM from this link and…

javahigh performancejdbcn+1performance tuning

1 min read

We’re forming a new industry body to promote the safe and responsible development of frontier AI systems: advancing AI safety research, identifying best practices and standards, and facilitating information sharing among policymakers and industry.

safety alignment

25 Jul 2023

Rasha Ardati 1 min read

Welcome to our ‘Day in the Life’ blog series where we interview a colleague from the product and engineering department to reflect on their career and experiences at the Guardian Did you always have an interest in software development from a young age? I definitely had an interest in computers but I didn’t know what software development was. I remember…

24 Jul 2023

Eric Elliott 11 min read

AI language models, such as ChatGPT and Claude, empower anyone to create software. These models can intelligently understand problems, create solutions, and explain the solutions. But natural language isn’t always the best way to communicate with AI. If you need to keep track of complex data and define how you interact with that data in specific ways, SudoLang can help.…

technologysoftware-developmentfutureaichatgpt

MapTiler (Luis Suter) 1 min read

A free weather API for visualizing temperature, precipitation, wind, radar, pressure, and clouds to web maps and apps. Add weather layers and animations to your maps.

23 Jul 2023

Nic Raboy 1 min read

So you need to build an application that will scale with demand and a database to scale with it? It might make sense to explore serverless functions, like those offered by AWS Lambda, and a cloud data... The post Serverless Development with AWS Lambda and MongoDB Atlas Using Java appeared first on MongoDB.

21 Jul 2023

vladmihalcea 1 min read

Introduction In this article, we are going to see how we can implement a soft delete mechanism when the JPA entity features a version property. If you are not using a version property for optimistic locking, then you can implement the soft delete strategy, as explained in this article. Domain Model Let’s assume we have the following Post, PostDetails, PostComment,…

hibernatedeletejpaoptimistic lockingsoft delete

20 Jul 2023

Andre Soto 2 min read

Summary Subdomain reuse, also known as subdomain takeover, is a security vulnerability that occurs when an attacker claims and takes control of a target domain. Typically, this happens when an application is deprecated and an attacker directs residual traffic to a host that they control. As of 14 June 2023, we changed the format of […] The post Security Improvement:…

newscloud infrastructuredeveloper toolssecuritysecurity compliance

19 Jul 2023

Amanda Swan 9 min read

As a design organization, we have the opportunity to make a significant impact on designing the platform for all developers. How does the emergence of creative AI impact our work? How can we achieve an inclusive experience for a spectrum of all abilities? What does designing for developer happiness look like? These are questions the GitHub Design team asked ourselves…

18 Jul 2023

Keith Richards 5 min read

Adding AuthN to OAuth2.0 OpenID Connect (OIDC) is an authentication protocol that sits on top of the OAuth2.0 protocol. It provides a standardized way for clients to authenticate users and obtain information about their identity. In simple terms, OpenID Connect allows users to log in to different applications using a single set of credentials. It […] The post OpenID Connect…

authauthenticationauthorizationoauthoauth 2.0

17 Jul 2023

David Walsh 1 min read

Parsing of URLs on the client side has been a common practice for two decades. The early days included using illegible regular expressions but the JavaScript specification eventually evolved into a new URL method of parsing URLs. While URL is incredibly useful when a valid URL is provided, an invalid string will throw an error — yikes! A new method,…