~/devreads

14 Sept 2023

13 Sept 2023

vladmihalcea 1 min read

Introduction In this article, we are going to see how we can fetch multiple JPA entity collections without generating an implicit Cartesian Product with the MULTISET strategy offered by the Blaze Persistence open-source project. The MULTISET fetch strategy is inspired by the MULTISET operator offered by jOOQ. If you are not familiar with the MULTISET operator, then check out this…

hibernatespringblaze persistencecollectionjpa

1 min read

Table of Contents Last time we defined folders and used them to enable some canonicalization and the sccp constant propagation pass for the poly dialect. This time we’ll add some additional safety checks to the dialect in the form of verifiers. The code for this article is in this pull request, and as usual the commits are organized to be…

12 Sept 2023

Developer Relations Team 1 min read

gRPC is an open-source remote procedure call (RPC) framework for building high-performance, language-agnostic APIs for distributed systems.

Paul Brown (Head of Engineering) 1 min read

Since you’re here… please find somewhere comfortable to sit and read my story about the journey the Supporter Revenue team has undergone since I joined them as an Engineering Manager back in January 2016 Our readers’ support is vital to the Guardian’s future, and the Supporter Revenue engineering team is responsible for developing digital experiences that engage our valued supporters.…

David Walsh 10 min read

You’ve visited countless websites, and now you’re designing your own. Stop and think for a minute about what you’ve liked and didn’t like about some of those you visited. Was it the front page, the layout in general, or the functionalities that either met with your satisfaction or turned you off? The helpful tools and resources for designers presented here…

1 min read

Bootstrap Icons v1.11.0 has arrived with 100 new icons—including new floppy disk icons, additional brand icons, new person icons, new emojis, some birthday cake, a few new science icons, and more. We’re now at over 2,000 icons! 100 new icons Here’s a quick look at all the new icons in v1.11.0: Check out the pull request for all the details…

11 Sept 2023

1 min read

Table of Contents Last time we saw how to use pre-defined MLIR traits to enable upstream MLIR passes like loop-invariant-code-motion to apply to poly programs. We left out -sccp (sparse conditional constant propagation), and so this time we’ll add what is needed to make that pass work. It requires the concept of folding. The code for this article is in…

10 Sept 2023

8 Sept 2023

Courtney Webster 3 min read

The September 2023 release of the Python and Jupyter extensions for Visual Studio Code are now available. This month's updates include updates to the Create Environment command, a new terminal auto-activation experiment, and a new yapf extension. Keep reading to learn more! The post Python in Visual Studio Code – September 2023 Release appeared first on Microsoft for Python Developers…

pythonvisual studio codejupyterpylancerelease

7 Sept 2023

1 min read

Table of Contents Last time we defined a new dialect poly for polynomial arithmetic. This time we’ll spruce up the dialect by adding some pre-defined MLIR traits, and see how the application of traits enables some general purpose passes to optimize poly programs. The code for this article is in this pull request, and as usual the commits are organized…

David Walsh 1 min read

It’s rare that I’m disappointed by the JavaScript language not having a function that I need. One such case was summing an array of numbers — I was expecting Math.sum or a likewise, baked in API. Fear not — summing an array of numbers is easy using Array.prototype.reduce! a + b, 0); The 0 represents the starting value while with…

6 Sept 2023

Developer Relations Team 1 min read

Learn how MQTT's lightweight design and pub/sub model make it ideal for efficient communication between devices in IoT systems and sensors

5 min read

Note: This is translated from the German original, which was used as a homework for the Programming Paradigms course at Karlsruhe Institute of Technology a long long time ago when I was co-holding the practical courses. Snake is a computer game in which a snake has to be moved through a playing field. Eating food increases the snake’s length. When…

Zac Sweers 5 min read

Embarking on a journey Stepping out of SFO with the familiarity of the fogginess of the city, my story at Slack unfolds once again. As a return intern, I found myself prepped for another exciting summer, and this opportunity encompassed a renewed sense of anticipation — a mix between known pathways and new adventures. Returning…

uncategorizedandroiddevtoolsinternshipskotlin

5 Sept 2023

1 min read

Problem: Compute 16% of 25 in your head. Solution: 16% of 25 is equivalent to 25% of 16, which is clearly 4. This is true for all numbers: $x\%$ of $y$ is always equal to $y\%$ of $x$. The first one is $\frac{x}{100} y$ and the second is $\frac{y}{100}x$, and because multiplication is commutative and associative, both are equal to…

Kyle Gallatin 5 min read

Introduction Each year, Etsy hosts an event known as “CodeMosaic” - an internal hackathon in which Etsy admin propose and build bold advances quickly in our technology across a number of different themes. People across Etsy source ideas, organize into teams, and then have 2-3 days to build innovative proofs-of-concept that might deliver big wins for Etsy’s buyers and sellers,…

Brian Grinstead 2 min read

Firefox performance on Vue.js has improved significantly throughout the year. Most recently, we sped up reactivity with Proxy optimizations. This change landed in Firefox 118, so it’s currently on Beta and will ride along to Release by the end of September. The post Faster Vue.js Execution in Firefox appeared first on Mozilla Hacks - the Web developer blog.

featured articlefirefoxjavascriptperformancejs

Rob 1 min read

For some automation that I"m writing, I need to get the Bundle ID for some Mac applications. The easiest way to do this is with AppleScript: osascript -e 'id of app "{Application Name}"' This can easily be turned into a bash script such as `bundle-id-of` like this: #!/usr/bin/env bash osascript -e 'id of app "'"$1"'"' And we can now obtain…

software

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 you can use the Hibernate Statistics in order to assert the…

newsletterhibernatejavajpamysql

4 Sept 2023

Developer Relations Team 1 min read

Discover how Server-Sent Events (SSE) enable real-time communication by letting servers push data updates to clients via a single HTTP connection!

Michael Carroll 1 min read

A State of Agile report found 71% of teams adopt Agile & DevOps practices into workflows to meet quick turnaround times without affecting quality.

3 Sept 2023

1 Sept 2023

Developer Relations Team 1 min read

Protect patient data and avoid breaches! Learn how to build HIPAA-compliant healthcare apps with secure, scalable infrastructure and trusted vendor partnerships

1 min read

OCaml with Jane Street extensions is available from our public opam repo. Only a slice of the features described in this series are currently implemented.

31 Aug 2023

1 min read

Bookmarks for September 2023: 11 links - Measuring developer productivity? A respon...; How to pass a coding interview with me - R..., and more.

Developer Relations Team 1 min read

Check how real-time messaging API powers instant, low-latency communication for chat, IoT, gaming, and live updates—fast, reliable, and scalable!

Developer Relations Team 1 min read

Looking to build custom features into your virtual event app? Learn how you can create a fully-featured virtual events platform.

Ethan Limchayseng 3 min read

In May 2023, we announced our limited release of two new Heroku Private Spaces regions: India (Mumbai) and Canada (Montreal). This month, we’re announcing the full general availability of those two regions, along with new Heroku Private Spaces regions for the United Kingdom (London) and Singapore. This expansion enables customers to maintain greater control over […] The post Heroku Private…

newsawscloud infrastructuredatadynos

Omari Thompson-Edwards 3 min read

Hey there, TypeScript enthusiast! Working with TypeScript, chances are you’ve come across the intriguing “unknown” type. It’s like that enigmatic puzzle piece that doesn’t reveal its true nature until you’ve cracked the code. Well, consider this article your ultimate decoder ring, as we dive headfirst into the captivating realm of converting TypeScript’s “unknown” type into […]

typescript

Craig Peters 3 min read

Since we released GitHub Codespaces in 2021, we’ve made a number of updates aimed at improving usability, controlling cost, and more (for example, free usage for all, one click into templates, and concurrency policies). Now, GitHub has improved our developer experience and reduced usage costs at the same time by taking advantage of new virtual machines that provide all of…

Matt Cutts 2 min read

Hey folks, I hope you’re doing well, and wanted to catch you up to speed on some new life happenings. Namely: babies. Two of them at once. Lindsay and I welcomed healthy fraternal twin boys into the world a few months ago. So far, Twin A is big, open, loud and easygoing with his smiles. […]

personal

vladmihalcea 1 min read

Introduction In this article, we’re going to see how the PostgreSQL JDBC Driver implements Statement Caching and what settings we need to configure in order to optimize the performance of our data access layer. Prepared Statements The JDBC API allows you to create a PreparedStatement by calling prepareStatement(java.lang.String) method on a given Connection reference. For this reason, it’s very common…

databasesqlconnection poolingpostgresqlprepared statement

1 min read

We’re releasing a guide for teachers using ChatGPT in their classroom—including suggested prompts, an explanation of how ChatGPT works and its limitations, the efficacy of AI detectors, and bias.

company

Edgar Trujillo 4 min read

On the racetrack of building ML applications, traditional software development steps are often overtaken. Welcome to the world of MLOps, where unique challenges meet innovative solutions and consistency is king. At Bazaarvoice, training pipelines serve as the backbone of our MLOps strategy. They underpin the reproducibility of our model builds. A glaring gap existed, however, […]

artificial intelligencebig datadevopsopen sourcesoftware architecture

Andrew Fawcett 1 min read

While it’s not our usual approach to announce hiring updates on our product blog, we’re pleased to share our ongoing dedication to improving the Heroku experience. Focused Growth and Progress Heroku is entering a new phase of investment, and as a part of this initiative, we are opening up new positions for individuals who would […] The post Join us…

newsdeveloper toolseducationproduct features

30 Aug 2023

Oliver Carson 1 min read

Rust developers can now take advantage of PubNub's Rust SDK to support real-time features in their applications.

29 Aug 2023

28 Aug 2023

Radha Kumari 8 min read

Slack handles billions of inbound network requests per day, all of which traverse through our edge network and ingress load balancing tiers. In this blog post, we’ll talk about how a request flows — from a Slack’s user perspective — across the vast ether of the network to reach AWS and then Slack’s internal…

uncategorizedinfrastructurenetworking

24 Aug 2023

JorDanee Key 2 min read

We’ve just introduced three new changes to our pricing at Heroku, all designed to provide extra value to our customers and make cost estimation easier. These changes will kick in from September 1, 2023 onward: Your account will no longer be charged the $10 monthly fee for Heroku CI. Your account will no longer be […] The post Heroku CI…

newscontinuous integrationdeveloper toolsheroku flowproduct features

Bryan Sullivan 2 min read

What do you keep in your Git repos? Source code for your production applications certainly, but you probably also keep a fair amount of experimental and “hackathon” code. Maybe you keep your documentation in Git. Maybe, like the District of Columbia does, you even keep legal documents there. So which of these are the most […] The post Your Most…

engineeringmicrosoft1esautomated toolingsecurity

Omari Thompson-Edwards 5 min read

Welcome aboard, TypeScript enthusiasts! Today, we’re diving into the world of array filtering with TypeScript. Filtering arrays is a crucial skill every developer should have in their toolkit, allowing us to effortlessly sift through data, and extract exactly what we need. So, grab your favourite beverage, sit back, and let’s embark on a journey to […]

typescript

Cara May-Cole 4 min read

Instead of removing reliable legacy systems entirely, effective use of Erlang can help to improve system performance whilst preparing them for future use. The post Future-proofing legacy systems with Erlang appeared first on Erlang Solutions.

erlanglegacy systems

23 Aug 2023

22 Aug 2023

Stephan Zuercher 8 min read

Summary In recent years, cellular architectures have become increasingly popular for large online services as a way to increase redundancy and limit the blast radius of site failures. In pursuit of these goals, we have migrated the most critical user-facing services at Slack from a monolithic to a cell-based architecture over the last 1.5 years.…

uncategorizedinfrastructurenetworking

vladmihalcea 1 min read

Introduction In this article, I’m going to show you the best way to hide the JPA entity identifier so that the users of your application won’t be able to guess and access data that belongs to other users. This has been a recurring question that I’ve been getting when running training or workshops, so I decided it’s a good idea…

hibernatehideidentifierjpamasquerade

Stephen De Vaux 1 min read

Introduction: In today's e-commerce landscape, seamless integration with third-party platforms is essential for expanding reach and boosting sales. This technical blog post delves into Kogan.com's ChannelAdvisor integration project, offering insights to software engineers on event-driven architectures, infrastructure automation, and efficient CI/CD practices. Understanding the Challenge: Integrating with ChannelAdvisor posed a significant hurdle. As a renowned e-commerce platform bridging variou

project spotlight

Shruti Gupta 3 min read

- By Frontend UX Team In the world of rapid software development, managing multiple applications efficiently is crucial. As MakeMyTrip grows its software ecosystem, maintaining a smooth and effective development process is more important than ever. In this blog post, we will explore why the Common Library is essential, navigate adoption challenges, discuss its execution process, and seamlessly integrate it…

technology

21 Aug 2023

Matthew Green 16 min read

Recently a reader wrote in and asked if I would look at Sam Altman’s Worldcoin, presumably to give thoughts on it from a privacy perspective. This was honestly the last thing I wanted to do, since life is short and this seemed like an obvious waste of it. Of course a project devoted to literally … Continue reading Some rough…

cryptocurrency

1 min read

Table of Contents In the last article in the series, we migrated the passes we had written to use the tablegen code generation framework. That was a preface to using tablegen to define dialects. In this article we’ll define a dialect that represents arithmetic on single-variable polynomials, with coefficients in $\mathbb{Z} / 2^{32} \mathbb{Z}$ (32-bit unsigned integers). The code for…

20 Aug 2023

18 Aug 2023

17 Aug 2023

16 Aug 2023

vladmihalcea 1 min read

Introduction In this article, we are going to see what are the best way to use JPA bidirectional sync methods for one-to-many, one-to-one, and many-to-many associations. For an introduction to why you need sync methods for your bidirectional JPA associations, check out this article first. Domain Model For this article, we are going to use the following entities that are…

hibernatebidirectionaljpasync

Philip McMahon 1 min read

On our team we swapped databases 6 times in a year. We’ve landed on Aurora Serverless V2 – was it worth it? Since our migration from Mongo to Postgres in 2018, at the Guardian the search for the perfect database hasn’t stopped. In the last year on the Investigations and Reporting team we’ve spent a lot of time trying out…

Harikrishnan Sridharan 1 min read

The New Age Omni-channel Assortment for Evolving Fulfilment Modalities like Store, Fulfilment Centers, Warehouses etc. Today's Assortment capabilities need to be re-imagined to address the changing customer needs and fulfilment options. This blog address on the trends and key capabilities needed to build a next gen Omni-channel Assortment platform

15 Aug 2023

Rob 1 min read

I'm a huge fan of ExifTool for manipulating EXIF data in images as it really is the Swiss Army knife for all things metadata related with images. Recently, I wanted to strip some privacy-related metadata from some photos; specifically location, people and keywords. That is, I wanted to keep the title, the camera settings, the creator, and so on, but…

photographysoftware