Posts

The read-aloud Class: Unlocking Chrome's Listen Feature

Image
  The  read-aloud  Class: Unlocking Chrome's Listen Feature How a single CSS class tells Android Chrome your content is worth hearing. #WebDevelopment #HTML #Accessibility #Chrome The Problem Nobody Talks About You've written a great article. You've published it to Blogger. But when a reader opens it on Android Chrome, the  Listen to this page  feature is nowhere to be found. Your content exists. Chrome just doesn't know it's readable. What Is the  read-aloud  Class? The  read-aloud  class is a signal — not a standard, not a spec, but a Chrome-recognized marker that tells Android's browser:  this content is long-form and human-readable. When Chrome detects this class in your HTML, it surfaces the  Listen to this page  option in the browser menu, allowing readers to have your article read aloud to them. Without it, Chrome may skip the feature entirel...

ThrottlingException During Rekognition Batch Processing

Image
  ThrottlingException  During Rekognition Batch Processing How to detect, monitor, and fix Rekognition rate limits before production fails. #AWS #AmazonRekognition #CloudArchitecture #DevOps Category: Service Quotas & Throttling Problem Your batch image job calls  Amazon Rekognition  repeatedly. The first set of requests succeed. Then the workload begins failing with: ThrottlingException: Rate exceeded Permissions are correct. Credentials are valid. No configuration changes occurred. The job slows down or collapses entirely. Clarifying the Issue ThrottlingException  means you have exceeded a  service quota or request rate limit . Rekognition enforces limits on: Transactions per second (TPS) Concurrent video jobs Certain API categories When your request rate exceeds the allowed threshold, Rekognition responds with throttling. This is not a permissions failure. It is capacity protection. In AWS services: 📌 Throttling protects shared infrastructure from b...

The Secret Life of AWS: The Hub and Spoke (AWS Transit Gateway)

Image
  The Secret Life of AWS: The Hub and Spoke (AWS Transit Gateway) How to scale your network without building a bowl of spaghetti. #AWS #TransitGateway #Networking #VPC Part 44 of The Secret Life of AWS Timothy was staring at a whiteboard covered in lines. His architecture had grown. He now had five Virtual Private Clouds (VPCs): Checkout, Inventory, Analytics, Shared Services, and Development. He was trying to map out the VPC Peering connections required so they could all communicate privately. "Checkout needs to talk to Inventory," Timothy muttered, drawing a line. "And Analytics needs to talk to Checkout. But Analytics also needs to talk to Inventory..." Margaret walked in and looked at the whiteboard. "You are building a  Full Mesh  network," she observed. "I have to," Timothy replied, frustrated. "AWS VPC Peering is  non-transitive . If Analytics is peered with Checkou...

The Secret Life of Azure: The Assembly Line

Image
  The Secret Life of Azure: The Assembly Line Automating deployments with CI/CD and GitHub Actions. #Azure #DevOps #CICD #GitHubActions Resilience & Release The library was quiet, but Timothy was hunched over his laptop, typing the same deployment commands for the fifth time that day. He looked like he was running a race he couldn't win. "Margaret," he sighed, "the Blueprints are amazing. London, Tokyo, and Texas all match perfectly. But I’m spent. Every time I find a typo in a configuration or update a search algorithm, I have to manually push the code to three different branches. If I forget one, the library is out of sync. I feel like I’m the bottleneck." Margaret walked over and drew a long, straight conveyor belt on the chalkboard. "Timothy, you've built the library and the blueprints, but you're still acting as the delivery truck. In the cloud, we don't move the books ourselves. We build an  Assembly Line , also known as a  CI/CD Pipel...

The Secret Life of JavaScript: The Clone

Image
  The Secret Life of JavaScript: The Clone How to use Web Workers to protect the Main Thread and prevent frozen UIs. #JavaScript #Coding #Programming #SoftwareDevelopment Timothy clicked the "Export Report" button. On the screen, a small loading spinner appeared. But it wasn't spinning. It was frozen solid. Timothy tried to click another tab on the page, but the entire browser window was unresponsive. Ten seconds later, the UI suddenly unfroze, and the file downloaded. "It works," Timothy said, "but the application completely dies while it's processing the data." Margaret pulled up a chair. "You have built a beautiful kitchen, Timothy. But you only have one chef. If you ask him to chop ten thousand onions, he cannot also greet the customers." The Single Thread Margaret opened the performance tab and pointed to a massive, solid yellow block taking up the timeline. "JavaScript is single-threaded," Margaret explained. "We call...

'ExpiredTokenException' During Rekognition Batch Processing with Temporary Credentials

Image
  'ExpiredTokenException' During Rekognition Batch Processing with Temporary Credentials # AWS # AmazonRekognition # IAM # CloudSecurity Why temporary credentials expire mid-batch and how to prevent Rekognition failures in long-running jobs Category: IAM & Permission Boundaries Problem Your application processes images in batches using  Amazon Rekognition . The first several requests succeed. Then the job fails mid-run with: ExpiredTokenException: The security token included in the request is expired Rekognition permissions are correct. IAM policies are valid. Nothing changed. Yet the process stops halfway through. Clarifying the Issue Your application is using  temporary credentials . These are issued by: sts:AssumeRole Federated login AWS SSO IAM Roles for EC2 or Lambda Temporary credentials include: Access key Secret key Session token Expiration timestamp Once the expiration time is reached, all API calls fail — even if permissions are correct. Rekognition is not d...