Changelog

Development Updates and Feature Releases

Beast Mode: Unlock Unlimited Problem Practice

New Feature

I'm excited to introduce Beast Mode - a powerful new feature that lets you break free from the daily 2-task limit and practice as many problems as you want, whenever you want.

Why Beast Mode?

The standard 2-tasks-per-day schedule is designed to build sustainable habits and prevent burnout. But I know that sometimes you want to dive deeper, especially when:

  • You're in intensive interview prep mode
  • You found a problem category you want to master quickly
  • You have extra free time and want to maximize your progress
  • You're on a motivated streak and want to capitalize on it

Beast Mode is the answer. Activate it from your stats dashboard with /beast_mode and gain access to 10 problems practice every day.

How It Works

Once enabled, you'll see significantly more problems available beyond your daily plan. The SM2 algorithm continues to work as usual, scheduling reviews intelligently. You simply get access to more options to practice from.

Pro Tip: Beast Mode doesn't change how your streak or XP works. You still earn full rewards for all problems solved, and your streak logic remains the same. It's purely about removing the artificial task limit if you want to practice more.

Toggle Beast Mode

You can enable or disable Beast Mode at any time from your /beast_mode command. The choice is entirely yours - adapt it to your current study pace and lifestyle.

Happy grinding! 🚀

Synchronizing Goroutines: Behind the Scenes Performance Update

Performance

Today I shipped a significant backend improvement that makes Grind 75 Bot faster and more reliable. For users, the change is mostly invisible - notifications still arrive on time, the bot still responds instantly. But under the hood, I've made a key optimization that will keep the bot running smoothly.

The Problem

When Grind 75 Bot processes your daily task plans or updates game statistics, it needs to fetch data from multiple sources:

  • Your user profile and preferences
  • Your task history and SM2 scores
  • Your current session and streak information
  • Global leaderboard data (for stats)

In my previous implementation, it fetched these sequentially - one after another. A single request to DynamoDB takes ~5-10ms. With 4 data sources, that's 20-40ms of latency just waiting for data.

The Solution: Concurrent API Calls with Sync

I refactored the system to make these calls concurrently using Go goroutines and the sync.WaitGroup primitive. Now all 4 data fetches happen in parallel.

Thanks for using Grind 75 Bot! 💪

Have questions about these updates? Found an issue? Let me know!

Message Anton