~/devreads

28 Mar 2023

Developer Relations Team 1 min read

Read our complete guide on making your own multi-purpose leaderboard. In this guide, you’ll learn to build a leaderboard for social apps, games, and more.

Markus Kohler 1 min read

PubNub’s Events & Actions provides real-time event routing and processing for filtering events. Learn how to create event listeners and actions with Basic Filters, including WebHook calls, SQS, and Kinesis integrations.

vladmihalcea 1 min read

Introduction In this article, we are going to see what is the best way to use the Spring Data JPA Specification when combining multiple predicates with the result set ordering logic. While you can also use query methods or the @Query annotation to define your Spring Data queries, the Spring Data JPA Specification allows you to compose dynamically various filtering…

springjpaspecificationspring data

Omari Thompson-Edwards 3 min read

If you’re new to TypeScript, you might have noticed that there are three different keywords that you can use to declare variables: var, let, and const. While they might seem interchangeable at first, there are some important differences between them that you should be aware of. In this article, we’ll explore what each of these […]

typescript

Omari Thompson-Edwards 4 min read

If you’re working with arrays in TypeScript, you’ve probably come across the map() function. The map() function is a powerful tool that allows you to transform each element of an array into a new element, based on a function that you define. Here’s what the function looks like: The map function accepts a function that […]

typescript

Omari Thompson-Edwards 3 min read

Checking for null and undefined is a common task in TypeScript (and JavaScript in general), and there are several ways to do it. In this article, we’ll explore some of the most common techniques for checking null and undefined values in TypeScript. Equals The most straightforward way of checking is of course the equality operator […]

typescript

27 Mar 2023

David Walsh 1 min read

As much as content creators want traffic to their website, there is such thing as the wrong type of traffic. Sometimes it’s content scrapers, sometimes it’s malicious bots; either way, it’s important to know how to block problematic IPs from your site. To block a range of IP addresses using an .htaccess file, you can use the * wildcard for…

26 Mar 2023

{"twitter"=>"hlaueriksson"} 3 min read

At my current client, Nordic Leisure Travel Group , we have a large number of web tests that automates some of the QA effort. The tests are written in Selenium and Playwright. They run on a schedule in Jenkins and we get reports on email. They take quite some time to run. Unfortunately some of the tests are a bit…

Luciano Mammino 27 min read

This article explores the multifaceted definition of a senior software engineer. It covers the technical skills like going a level deeper and having a broad understanding, as well as soft skills like communication, autonomy, business acumen, and leadership. It provides tips on how to grow, such as pair programming and content creation. The path to seniority requires dedication, perseverance and…

lifecareer

24 Mar 2023

Ole Begemann 5 min read

And what it can teach us about SwiftUI’s stack layout algorithm I have one more thing to say on the relative sizing view modifier from my previous post, Working with percentages in SwiftUI layout. I’m assuming you’ve read that article. The following is good to know if you want to use the modifier in your own code, but I hope…

23 Mar 2023

Ole Begemann 7 min read

SwiftUI’s layout primitives generally don’t provide relative sizing options, e.g. “make this view 50 % of the width of its container”. Let’s build our own! Use case: chat bubbles Consider this chat conversation view as an example of what I want to build. The chat bubbles always remain 80 % as wide as their container as the view is resized:…

Matthew Green 9 min read

On March 23 I was invited to participate in a panel discussion at the European Internet Services Providers Association (EuroISPA). The focus of this discussion was on recent legislative proposals, especially the EU Commission’s new “chat control” content scanning proposal, as well as the future of encryption and fundamental rights. These are the introductory remarks … Continue reading Remarks on…

backdoorsmessaging

1 min read

We’ve implemented initial support for plugins in ChatGPT. Plugins are tools designed specifically for language models with safety as a core principle, and help ChatGPT access up-to-date information, run computations, or use third-party services.

product

22 Mar 2023

1 min read

At Zerodha, we run a multitude of internal and public-facing services that generate copious amounts of logs. While developers use these logs to debug or troubleshoot incidents, some services also emit logs that must be persisted for prolonged periods to comply with numerous regulatory requirements. In this post, I will delve into our experiences with the ELK stack, why it…

Keith Richards 5 min read

Demystifying authentication and authorization When you hear the term Auth, what comes to mind? You probably think of signing into a system with your username and password, and you’re half right. But auth is bigger than that. The bucket term also includes everything you can do in a system once you submit those credentials. Auth […] The post AuthN vs…

authauthenticationauthorizationauthnauthz

Omari Thompson-Edwards 3 min read

Email validation is a crucial part of any web application. It ensures that the user input is valid and can be used for various purposes like registration, login, and communication. In this article, we will walk through how to validate an email address in a React application with a few different approaches. Regex The most […]

tutorials

Omari Thompson-Edwards 5 min read

Next.js is a popular React-based framework that enables server-side rendering, automatic code splitting, and simpler client-side routing. In this article, we’ll discuss how to send data from one component to another in Next.js. There are a few approaches you might take to passing data between components. In this article we’ll go through: Props One of […]

next.js

Omari Thompson-Edwards 3 min read

Looping through an array is a common task in programming, and Typescript offers a variety of ways to accomplish this task. If you’re using React, you might be interested in this article on for loops in React. In this article, we’ll explore some of the different approaches to looping through an array in Typescript, and […]

typescript

vladmihalcea 1 min read

Introduction In this article, we are going to see how we can use the JOIN FETCH clause when fetching a child collection eagerly while also limiting the number of parent records using pagination in a Spring Data JPA application. I decided to write this article because the most common solution used in many projects turns out to be extremely inefficient.…

springeagerfetchinghhh000104hhh90003004

blog.muffn.io (muffn_) 1 min read

This is an image heavy post. 📔 Intro # My 3D printing journey started like many others, with an Ender 3 (Pro in my case) and covid lockdowns. I had wanted to get into it much earlier but a tiny apartment stopped me from doing so.

Stanko 2 min read

I would like to give you a preview of my new project that I'm really excited about - Rayven. It renders 3D scenes as if they were line-hatched by hand: I've had this idea for a while and after researching, I found three projects that became my inspiration: Michael Fogleman's ln, Kushiro's Hatch Lines Shader and Piter Pasma's Rayhatching. Finally,…

21 Mar 2023

Ole Begemann 2 min read

Problem The Photos app on macOS doesn’t provide a keyboard shortcut for the Export Unmodified Original command. macOS allows you to add your own app-specific keyboard shortcuts via System Settings > Keyboard > Keyboard Shortcuts > App Shortcuts. You need to enter the exact spelling of the menu item you want to invoke. Photos renames the command depending on what’s…

ericlippert 4 min read

I wanted to implement concise “pattern matching” in Python, a language which unlike C#, F#, Scala, and so on, does not have any pattern matching built in. Logically a pattern is just a predicate: a function which takes a value … Continue reading →

uncategorized

James Dietrich 10 min read

Introduction Web development is an ever-evolving landscape, with JavaScript frameworks playing a significant role in modern web applications. As a developer looking to stay relevant and ahead of the curve, mastering these frameworks is essential. In this article, we will provide you with a comprehensive learning path to help you navigate the world of JavaScript […]

web development

Markus Kohler 1 min read

Learn about Android text message apps. Explore the technologies used and discover common features of popular chat applications.

Tricia Bogen 9 min read

This blog post discusses the strategies that Slack uses to manage the lifecycle (development, support, and eventual retirement) of infrastructure projects, through the lens of the migration through three successive internal “platform” offerings. Our challenges Circa 2020, our Cloud Engineering team (now evolved into multiple teams responsible for narrower aspects) was responsible for managing our…

uncategorizedcloud-computingcollaborationdevopsinfrastructure

20 Mar 2023

Jonathan Brown 3 min read

We are excited to announce that Postgres version 15 is now generally available! The developers of Postgres release a new version around October every year, and we aim to release it on Heroku Postgres each Q1. Additionally, we track Postgres end-of-life dates to ensure that our service and our customers are always on the latest […] The post Announcing PostgreSQL…

news

Chandler Mayo 1 min read

Learn how to build real-time scoreboards, leaderboards and achievement streaming for multiplayer games using Unity and PubNub.

James Dietrich 10 min read

In the ever-evolving world of front-end development, Vue.js has emerged as a popular and versatile JavaScript framework. Its ease of use, powerful features, and excellent performance make it a top choice for developers looking to build scalable and maintainable web applications. One of the core features that sets Vue.js apart is its directives, which offer […]

vue.js

17 Mar 2023

Eric Elliott 15 min read

TL;DR — Great, but Can’t Replace Expert Mentors, Yet! Actual Photo of ChatGPT Teaching Puppies to Code (Just Kidding it’s Midjourney) GPT-4 was just released , and it represents significant enhancements over ChatGPT powered by GPT-3.5. Among the enhancements is an improved ability to maintain coherence over longer sessions and larger prompts. I spent years building EricElliottJS.com to teach developers…

technologyartificial-intelligencechatgptaijavascript

RisingStack Engineering 7 min read

In this article, we'll focus on the most popular JavaScript frameworks, and explore why they're either loved or disliked by developers. The post The Best JavaScript Frameworks: Pros and Cons Explained appeared first on RisingStack Engineering.

node.js

16 Mar 2023

Jacob 3 min read

A conversation with engineers who help run Blinkit Chinthakunta Sumanth Kumar Reddy is an SDE 3 at Blinkit. He joined us in March 2021 and has since helped us build a resilient application platform at Blinkit. He currently works as a part of Software Resilience Engineering (SRE)–enabling scalable database migrations for Blinkit’s applications. Tell us about your background and your…

quick-commercedevopssite-reliability-engineerculturepeople-at-blinkit

15 Mar 2023

Mario Rodriguez 7 min read

At GitHub you’ve heard us talk about how we are using GitHub Projects and GitHub Actions to plan and track our work and now we’ve asked one of our customers, Grafana Labs, to share how their teams are approaching work in a new way. Whether they are managing open source requests, operational tasks, or escalations, the Grafana Labs Alerting team…

Sarah Oslund 4 min read

The Accessibility Insights team recently fixed a bug in our Windows Presentation Foundation (WPF) app where checkboxes in a WPF tree view were not properly reporting their checked or unchecked state to adaptive technologies such as screen readers. This longstanding issue created a sub-par accessible experience in Accessibility Insights for Windows, our Windows app introduced […] The post Implementing an…

engineeringmicrosoft1esaccessibilityallywindows

14 Mar 2023

Dan Brown 1 min read

We want entrepreneurs and builders to join us in creating a future where AI is developed through this responsible lens. That’s why we are relaunching our Mozilla Builders program with the Responsible AI Challenge. The post Mozilla Launches Responsible AI Challenge appeared first on Mozilla Hacks - the Web developer blog.

featured articlemozillaaibuilders

vladmihalcea 1 min read

Introduction In this article, we are going to see how Spring Data query methods are built, when you should use them, and especially when you should avoid them. I decided to write this article after answering this StackOverflow question, which depicts an 87-character-long Spring Data query method. TL;DR, Don’t write query methods that cannot even fit on the screen. Spring…

springhibernatequeryquery methodspring data

Omari Thompson-Edwards 2 min read

Prettier is a popular code formatter that can help keep your codebase organized and consistent. In this article, we’ll walk through how to set up Prettier in a Next.js project. Set-up Firstly of course you’ll need to install Prettier. You can do this with the following command: This will install Prettier, and add it as […]

next.js

Omari Thompson-Edwards 4 min read

Are you tired of dealing with tedious form validation in your React applications? Look no further than React Hook Forms in Next.js! RHF is a React hook that provides a simple and intuitive API for managing form state, validation, and submission. It supports both controlled and uncontrolled components, as well as dynamic form fields, custom […]

next.js

Omari Thompson-Edwards 5 min read

Animating components on scroll is a great way to add a touch of interactivity to your web application. It can help you create engaging user experiences that make your application stand out. In this article, we will explore how to use Framer Motion to animate components on scroll in Next.js. Set-Up First of all, you’ll […]

next.js

Jaskaranjit 3 min read

User Journey is an integral part of any product, and a well defined workflow encapsulates the user experience and becomes nearly imperceptible to the user. CRED employs AWS Step Functions to offer seamless product experience. Example Onboarding Steps What are AWS Step Functions? AWS Step Functions is a low-code, server-less orchestration service that developers can use to build distributed applications,…

step-functionskongawsrate-limitingreverse-proxy

1 min read

Stripe leverages GPT-4 to streamline user experience and combat fraud.

1 min read

We’ve created GPT-4, the latest milestone in OpenAI’s effort in scaling up deep learning. GPT-4 is a large multimodal model (accepting image and text inputs, emitting text outputs) that, while less capable than humans in many real-world scenarios, exhibits human-level performance on various professional and academic benchmarks.

research

13 Mar 2023