~/devreads

16 May 2023

15 May 2023

Shailaja Shankar 1 min read

I am proud to announce that Cisco Umbrella for Government has achieved FedRAMP In Process status for FedRAMP Moderate authorization. This reflects our commitment to providing one of the most comprehensive and reliable cloud-native cybersecurity solutions to federal, state, and local government agencies, as well as all other organizations that depend upon FedRAMP certification. We […] The post Cisco Umbrella…

governmentfedramp

12 May 2023

11 May 2023

Lukas Oppermann 5 min read

Over 100 million developers around the world come to GitHub to build software. Primer, GitHub’s open source design system, is responsible for creating inclusive, responsive and efficient experiences for a diverse range of users. The Primer team aims to enable all user interface (UI) components to be built leveraging Primer. At Primer’s foundation is our color system, a way of…

Matthew Green 15 min read

Back in March I was fortunate to spend several days visiting Brussels, where I had a chance to attend a panel on “chat control“: the new content scanning regime being considered by the EU Commission. Among various requirements, this proposed legislation would mandate that client-side scanning technology be incorporated into encrypted text messaging applications like … Continue reading On Ashton…

academicsbackdoorsfundamentalsprotocols

9 May 2023

David Walsh 1 min read

Restarting and shutting down a computer remotely is a frequent task for remote system administrators. As someone that writes many shell scripts, I also find myself automating system restarts. Let’s look at a few ways to restart Mac systems from command line! Restart a Local Mac To restart a local Mac system from command line, you can execute: sudo shutdown…

vladmihalcea 1 min read

Introduction In this article, we are going to see how the default entity sequence changes when migrating from Hibernate 5 to Hibernate 6. Domain Model Let’s assume we have a Post parent entity that has a one-to-many bidirectional association with the PostComment child entity. The Post parent entity looks like this: And the PostComment looks as follows: Notice that both…

hibernatesequencegeneratordatabase sequence

Christina Hausman 1 min read

In October 2021, the United States Federal Trade Commission (FTC) announced changes to the Safeguards Rule, requiring greater security measures from “non-banking” organizations handling and transacting consumer financial data. The deadline for compliance is June 9, 2023. What does the FTC Safeguards Rule require? The FTC Safeguards Rule applies to U.S. businesses that are “significantly […] The post Creating a…

spotlight

8 May 2023

Mia Arts 4 min read

Retrospectives are essential for a team’s ongoing growth and achievement, but they can be exclusionary for team members with disabilities due to the inaccessibility of most retrospective tools. These tools often depend on drag-and-drop functionality, images, color coding, and undefined digital spaces with no clear headings or navigational anchors. To ensure everyone can actively participate, the GitHub Accessibility leadership team…

Matthew Green 27 min read

A few weeks ago I ran into a conversation on Twitter about the weaknesses of applied cryptography textbooks, and how they tend to spend way too much time lecturing people about Feistel networks and the boring details of AES. Some of the folks in this conversation suggested that instead of these things, we should be … Continue reading PRFs, PRPs…

fundamentalsprovable security

David Walsh 1 min read

Bluesky is a hot new social networking platform that functions like Twitter from Twitter’s original founder. New users are flooding into the platform as a respite from Elon Musk’s vision of Twitter and the fumbles that have happened since his takeover. Upon signing up for Bluesky, your username defaults to {yourdesiredhandle}.bsky.social, but there’s a better and more secure option. One…

5 May 2023

Michael Sikillian 1 min read

U.S. Government customers can now leverage Cisco to meet the mandate for CISA’s Protective DNS with enhanced protection for on-premises and roaming client users. Protective DNS is offered by the U.S. Cybersecurity and Infrastructure Security Agency (CISA) to detect and prevent cyberattacks targeting Federal civilian executive branch agencies (FCEB). U.S. Federal Civilian agencies must integrate […] The post Cisco Umbrella…

governmentdns security

MapTiler 1 min read

MapTiler has been creating a comprehensive mapping ecosystem for businesses, including advanced processing tools like Desktop/Engine, data storage and processing services, QGIS plugins, geocoding and geolocation services, JavaScript libraries, map styling tools, and more. Until now, we primarily relied on the open-source community and MapLibre for displaying maps on the web. While this will continue, we are taking it to…

4 May 2023

Courtney Webster 3 min read

The May 2023 release of the Python and Jupyter extensions for Visual Studio Code are now available. In this release, Jupyter is no longer installed alongside the Python extension, microvenv support was added for the Create Environment command, new automatic conversion of f-strings, and code navigation on strings that contain module names. Keep reading to learn more! The post Python…

python

MapTiler 1 min read

What’s new in 4.3: Smoother automated workflows, you can upload new tiles via API Easier to use API: functionality aligned with the Cloud API documentation updates License changes, get your new key now! Improved raster handling, faster and more efficient Download the latest version of MapTiler Server for free now!

3 May 2023

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 the bad parts of PostgreSQL. While PostgreSQL is a great open-source database…

newsletterhibernatejavajpamysql

2 May 2023

David Walsh 6 min read

Multipurpose themes are flexible WordPress templates that can be used to create virtually any kind of website. They are often best-sellers, and because they are so popular there are a lot of them to choose from. Too many in fact unless you have time to spare to find one that is best for you. Where there may be an instance…

1 May 2023

Eric Elliott 16 min read

Image by Eric Elliott using PromptCrafter and Midjourney SudoLang is a powerful natural language pseudocode programming language that makes it easier to instruct OpenAI’s GPT-4, Anthropic’s Claude, and other language models. For an overview of language features and benefits, check out The Art of Effortless Programming and Unit Testing ChatGPT Prompts: Introducing Riteway for SudoLang . To gain a better…

chatgptsoftware-engineeringaisoftware-developmenttechnology

David Walsh 1 min read

Privacy is always incredibly important, especially with visual media where you may not have the permission of individuals in the video. If you’re filming something in public, it’s likely you’ll catch someone’s face who simply doesn’t want or need to be identified. This recently got me to thinking: what’s the easiest way to blur faces in a video via command…

30 Apr 2023

1 min read

Bookmarks for May 2023: 17 links - An Architecture Path to Mainframe Moderniz...; (11) Lesson 9 - Analyzing Architecture: Ma..., and more.

Stanko 1 min read

To celebrate Work&Co's tenth anniversary, I'm excited to share this two-piece series. Both drawings are 3d scenes, hatched by my vector raytracer, Rayven, to get a hand drawn feel. Created: April 2023 Size: 31x30cm Paper: Fabriano Bristol 250gsm Pens: Pigma Micron

Stanko 1 min read

The second plot for Work&Co's anniversary, and my personal favorite. The bumpy sphere is an allusion to the challenging period we've all experienced due to COVID-19. Created: April 2023 Size: 27x27cm Paper: Fabriano Bristol 250gsm Pens: Molotow Blackliner

29 Apr 2023

vladmihalcea 1 min read

Introduction In this article, we are going to see how Spring handles transaction and database connection management. I decided to write this article because this topic has been requested recurringly by the students taking my High-Performance Java Persistence training. Spring TransactionInterceptor In order to provide declarative transaction management, Spring uses AOP (Aspect-Oriented Programming), and methods annotated with the @Transactional annotations…

springconnectionread-onlyread-writetransactional

28 Apr 2023

Lou Kratz 7 min read

(cover image from ThisisEngineering RAEng) Let’s face it: software is easier to write than maintain. This is why we, as software engineers, prefer to just “rip it out and start over” instead of trying to understand what another developer (or our past self) was thinking. We seem to have collectively forgotten that “programs must be […]

uncategorizedartificial intelligenceawsaws sagemakerdata engineering

David Walsh 1 min read

The CSS language is full of small gaps which are frustrating to navigate. Between CSS properties to hide a container and its contents, there is still room for improvement. visibility: hidden keeps height and width integrity while display: none on a container hides everything. You can use .container > * to hide all contents of a container, but what if…

26 Apr 2023

jana 10 min read

Tens of thousands of API applications interact with Strava’s publicly available API, from small projects whose only users are the developers who created them to larger partners like Garmin, Zwift, Wahoo, or Peloton, who upload thousands of activities to Strava daily on our athletes’ behalf. Recently the API & Platform team undertook a project to redefine the way that Strava…

open-sourcescalestravaapi

Shahar Davidson 4 min read

Ready to take your engineering ship to Warp 9? (by Christopher Chiu-Tabet) Nowadays, everyone is examining how to increase efficiencies and cut costs to improve their bottom line. Although it may seem counterintuitive, engineering managers can help increase efficiencies by investing in tools for their engineering group that can help increase the team’s velocity and therefore increase efficiencies and the…

developer-productivitysoftware-developmentplatformstartupengineering-mangement

25 Apr 2023

Eric Elliott 16 min read

Why Every Developer Should Learn ChatGPT and SudoLang I recently started using an AI Driven Development (AIDD) process that has many benefits: Increased development productivity 10x — 20x , allowing us to take on more projects, and more ambitious challenges that would previously have been too resource-intensive to tackle. Opened up our applications to magical features we could not have…

chatgptartificial-intelligencesoftware-developmentmachine-learningai

James Gill 2 min read

We developed the Global Metrics site to show aggregate metrics across all websites using GoSquared Analytics. Global Metrics gave a... The post Saying Goodbye to Global Metrics appeared first on GoSquared Blog.

gosquared updates

lukaseder 1 min read

Microsoft T-SQL supports a language feature called table-valued parameter (TVP), which is a parameter of a table type that can be passed to a stored procedure or function. For example, you may write: This function takes a table-valued parameter (TVP), and produces a result set containing the cross product of the parameter table with itself. … Continue reading How to…

jooq-in-usecode generationcode generatorjavajdbc

24 Apr 2023

Matthew Green 5 min read

As a rule, book reviews are not a thing I usually do. So when I received an out-of-the-blue email from Cory Doctorow last week asking if I would review his latest book, Red Team Blues, it took a minute to overcome my initial skepticism. While I’m a fan of Cory’s work, this is a narrow/nerdy … Continue reading Book Review:…

book reviewsbooksinfosec

23 Apr 2023

Henrik Warne 4 min read

Two months ago, I was a guest on the Maintainable podcast. The first question the host Robby Russell asks is “What are a few characteristics of well-maintained software?”. This is such a great question, and I thought I would expand … Continue reading →

programmingsoftwarewell-maintained

20 Apr 2023

19 Apr 2023

Developer Relations Team 1 min read

Fan-out is a messaging pattern where messages are broadcast in a one-to-many arrangement. A basic example of this pattern can be seen in Pub/Sub.

Developer Relations Team 1 min read

Video chat describes visual, remote communication between two or more parties, each equipped with a camera and microphone.

vladmihalcea 1 min read

Introduction In this article, we are going to see what is the best way to call SQL Server stored procedures with jOOQ. I decided to write this article because stored procedures and database functions are extremely useful for data-intensive applications, and sometimes, they are the only solution to process data efficiently. While SQL remains the de-facto way to query data,…

jooqjavasql serverstored procedure

Rob 1 min read

I recently needed count the number of rows in an SQL query that had a Group By clause. It looked something like this: SELECT account_name FROM events WHERE created_at >= CURDATE() - INTERVAL 3 MONTH GROUP BY account_id This provides a list of account names (28 in my case), but if you try to count them using: SELECT COUNT(account_name) as…

database

18 Apr 2023

Tinder 7 min read

Authored by: Rojan Rijal, Tinder Security Labs | Johnny Nipper, Sr. Director | Tanner Emek, Sr Engineering Manager Summary In 2021, GitHub released support for OpenID Connect (OIDC) for GitHub Actions (GHA), allowing developers to securely interact with their infrastructure resources in Amazon Web Services (AWS), and other major cloud service providers. The OIDC support allows GHA jobs to retrieve…

securitygithubawsoidc

David Walsh 1 min read

Cheating in online games is a huge issue these days — just ask anyone playing PUBG. Cheaters aren’t difficult for players to spot but vendors oftentimes don’t do enough to punish these villains. Krafton recently announced they would start banning cheaters by hardware ID, which got me thinking about how you can get a user’s hardware ID. There’s no definitive…

17 Apr 2023

Nic Raboy 1 min read

So the data within your organization spans across multiple databases, database platforms, and even storage types, but you need to bring it together and make sense of the data that's dispersed. This is... The post Delivering a Near Real-Time Single View into Operations with a Federated Database appeared first on MongoDB.

David Walsh 1 min read

Managing, sorting, and manipulating data with JavaScript is a skill we’ve often delegated to third party libraries like lodash. As the JavaScript language progresses, however, these features eventually get. added to the JavaScript specification. Two such APIs for grouping of Array data are `Array.prototype.group and Array.prototype.groupToMap. Array.prototype.group To group an array of objects by a given property, call the group…

15 Apr 2023

1 min read

What’s the “right” level of CPU utilization for a server? If you look at a monitoring dashboard from a well-designed and well-run service, what CPU utilization should we hope to see, averaged over a day or two? It’s a very general question, and it’s not clear it should have a single answer. That said, for a long time, I generally…

14 Apr 2023

Emmanuel Joubaud 13 min read

The Jobteaser application contains a lot of different relatively independent modules to help universities provide career guidance to students: a job board, a career event management system, a career advice appointment management system… When we decided to migrate our application’s backend from a monolith to a service-oriented architecture, we strived to keep each module as isolated as possible from the…

software-engineeringsoftware-architecturekafkamicroservicesdistributed-systems

1 min read

Our traders and researchers love Python for its agility and for its huge open-source ecosystem, especially when it comes to machine learning. But the heavy use of notebooks can make it difficult to support. Notebooks have a very different lifecycle than regular code, and aren’t always rigorously version controlled. And while most of our code (much of it written in…

13 Apr 2023

David Walsh 1 min read

A while back I wrote an article on how to Convert Image to Data URI with JavaScript. It’s a neat trick developers can use for any number of reasons. Instead of abusing canvas, however, why not simply get the base64 data from command line? You can use base64 and pbcopy to convert a file to base64 and copy it to…

vladmihalcea 1 min read

Introduction In this article, we are going to see how the PostgreSQL Auto Explain feature works and why you should use it to gather the actual execution plan for SQL statements that execute on a production system. SQL Execution Plan As I explained in this article, when you send a SQL statement to PostgreSQL, the statement is executed as illustrated…

postgresqlsqlauto explainexecution plan

Vibhuti Garg 1 min read

Emerging regulations, like the revised U.S. FTC Safeguards Rule, are largely focused on proactive threat defense to drive effective security. Interestingly, the revised U.S. Federal Trade Commission (FTC) Safeguards Rule now covers auto dealers and other “non-banking financial institutions.” This is because automobile dealerships, amongst many other organizations, process and store consumers’ personal financial data. The […] The post Revisions…

spotlightcompliancedns-layer securityftc safeguards rule

11 Apr 2023

Sameera Thangudu 6 min read

Did you know that ground stations transmit signals to satellites 22,236 miles above the equator in geostationary orbits, and that those signals are then beamed down to the entire North American subcontinent? Satellite radios today serve hundreds of channels across 9,540,000 square miles. Unless you’re working at a secret military facility, deep underground, you can…

uncategorizedinfrastructurescalabilitysoftware-architecture

10 Apr 2023

Michael Carroll 1 min read

Network protocols are constantly changing, and many app developers must be able to adapt to the evolving landscape.

David Walsh 1 min read

I’m a big fan of having as much information as I can get within the command line. I couldn’t go without knowing which git branch I’m on, for example. Another important piece of information I like having is my current battery percentage. To get the current battery level from command line, you can run: pmset -g batt | grep -Eo…

8 Apr 2023

Stanko 2 min read

When writing Node.js scripts, I often want to output information to the console in different colors. Usually, it is to get the user's attention and signalize success or error. I could reach for a battle-tested library like Chalk, but I usually don't need all of its features. Instead, I have a tiny script I copy from project to project: const…

7 Apr 2023

Emmanuel Joubaud 12 min read

When it comes to the communication between microservices, there are 2 possible extremes: All-sync: whenever a service needs data from another service, it fetches it via a synchronous API call (REST, gRPC, GraphQL). Service calls service calls service… which tends to evolve into layers of APIs, where each layer has dependencies on the next. All-async: no sync calls between services,…

microservicesgosoftware-engineeringsoftware-architectureruby

6 Apr 2023

Adam Hess 5 min read

Since the beginning, GitHub.com has been a Ruby on Rails monolith. Today, the application is nearly two million lines of code and more than 1,000 engineers collaborate on it daily. We deploy as often as 20 times a day, and nearly every week one of those deploys is a Rails upgrade. Upgrading Rails weekly Every Monday a scheduled GitHub Action…

Nazanin Hoglund 1 min read

Are you writing loans at your car dealership, printing checks, issuing your own store credit card — or otherwise handling consumer financial data? You may not consider yourself a “financial institution” — but the U.S. Federal Trade Commission (FTC) sure does. FTC is classifying countless companies as a “non-banking financial institutions” subject to its revised […] The post FTC Safeguards…

spotlightcomplianceftc safeguards rule

5 Apr 2023

4 Apr 2023

Nic Raboy 1 min read

Need a consistent development and deployment experience as developers work across teams and use different machines for their daily tasks? That is where Docker has you covered with containers. A common... The post Local Development with the MongoDB Atlas CLI and Docker appeared first on MongoDB.

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 the performance optimizations done by the Quora engineering team to scale their…

newsletterhibernatejavajpamysql

George Luong 10 min read

Notifications are a key aspect of the Slack user experience. Users rely on timely notifications of mentions and DMs to keep on top of important information. Poor notification completeness erodes the trust of all Slack users. Notifications flow through almost all the systems in our infrastructure. As illustrated in Figure 1 below, a notification request…

uncategorized

3 Apr 2023

Eric Elliott 9 min read

Running Riteway’s usage example tests in SudoLang running on ChatGPT using GPT-4 I have been a long-time advocate of Test-Driven Development (TDD) because of its many productivity and quality benefits. You can read more about those in “TDD Changed My Life” . When I realized that GPT-4 was capable of following complex instructions, one of the first things I thought…

aimachine-learningtechnologyjavascriptchatgpt