Urgent.News

What's breaking now, across thousands of outlets.

Tech

Your dog walker says they went. This makes the walk say so too.

This is a submission for Weekend Challenge: Dog Days Edition TL;DR — A walker records the walk on their phone, the route is hashed in the browser, and a 147-byte attestation signed by the walker's own key lands on Solana devnet. The owner checks the trace they were handed against the chain, and the app tells a tampered route apart from a corrupted file. Move one GPS fix eleven metres and the hash…

A dog walker records their walk using their phone, hashes the route in the browser, and creates a compact attestation signed by their own key on Solana devnet. The GPS trace stays on the device, while only the hash is committed to the blockchain. The owner checks the trace they received against the chain, comparing the computed hash with the attestation.

If the hashes match, the walk was not tampered with. If moved 11 meters, the hash changes completely. The project proves that a device recorded a route, but cannot prove that a dog was on the leash. It closes the gap between "trust me" and "check it" without requiring wallets, extensions, or SOL. The verification process can be done in two clicks by opening a committed walk and running the verifier.

The app allows users to see the difference in hashes when a single GPS fix is altered by 0.0001 degrees, which is the smallest change the format can express.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Count the Resolver, Not the Query, to Catch a GraphQL N+1

You will catch a GraphQL N+1 much earlier by counting how many times your batch loader is called against a temporary mock server than by measuring response time, because latency tests hide the problem…

  • Count batch loader calls, not response time, to detect GraphQL N+1 issues
  • Create mock server to log batch sizes per batch loader function call
  • Assert largest batch size matches unique keys in response output

How to Handle O365 Shared Mailboxes in CI/CD Test Automation

Testing email workflows—like OTP verification, password resets, or automated notifications—is a core requirement for robust end-to-end (E2E) automation.

  • Register Azure AD app with Mail.ReadWrite and Mail.Send permissions
  • Obtain OAuth 2.0 tokens via Azure AD token endpoint
  • Send emails through shared mailbox using POST request to sendMail endpoint

How I Built a Chrome Extension to Analyze Viral Social Content (Statly)

As a developer and creator, figuring out what actually drives engagement on social platforms like Instagram, TikTok, and X usually requires hours of manual digging or expensive analytics tools.

  • Developer creates Statly to analyze social content engagement
  • Tool distinguishes detailed content performance from high-level metrics
  • Statly available at trystatly.com with feedback submission option

Raku: a language that counts to infinity (Part 1)

We've already seen that Raku understands characters like ∞ , and it would be logically that you can use them with ease, similar to any other constructs of the language.

  • Raku language handles infinite sequences using symbols like infinity (∞)
  • Infinite sequences can be defined with patterns and filtered by conditions
  • Lazy computations in Raku only calculate values as needed

Week 9 of #100DaysOfCode: A Week of Deep Spring Learning

Introduction This week, I decided to slow down and go deeper into the Spring Framework . Instead of focusing heavily on building new features, I spent most of my time understanding what happens behind…

  • Day 52: Learned Spring Caching fundamentals and its role in improving application performance
  • Day 53: Completed reading Spring Caching, understanding AOP and Around Advice for caching behavior

AIOps Is More Than Just a Chatbot

It started with a Discord bot React ChatBotify is an open-source project I maintain, and part of that meant looking after its websites and servers.

  • AcornOps began as a Discord chatbot called React ChatBotify.
  • Ning suggested expanding the chatbot into a full-fledged AIOps platform.
  • AcornOps has evolved significantly since its inception.

More from Sunday 16 August →