Trail Blaze, light mode, and a stopwatch on every problem
- changelog
New mode: Trail Blaze
Trail Blaze is a timed, solo run through six problems that get harder as you go: 3 bronze, 2 silver, 1 gold. It is built to feel like the pressure of a real interview. Find it in the header or on your dashboard.
- Pick your path. For each problem you choose between a few options. Every option shows its difficulty, and some hide their topic until you open them. The option you solve decides which ones you can pick next.
- 90 minutes. The clock starts the moment you press Start and covers the whole attempt.
- Submit only. There is no Run button, and every submission is checked against the full test suite. In a real interview you can't spam Run with print statements, so this trains you to debug by reading your own code.
- Two chances. Each wrong submission uses one, across the whole attempt. The second one ends it.
- A new map every day. The problems change at midnight UTC, and you can try as many times as you like. Problem 1 is drawn fresh on every attempt. From Problem 2 on, the options stay the same all day, and any you have opened stay revealed, so each attempt teaches you something for the next.
- XP. Every problem you solve earns XP, with a bonus for clearing all six.
When an attempt ends, the results page shows your time on each problem and lets you copy a summary to share.
Light mode
A sun/moon button in the header now switches the whole site to a light theme. Dark stays the default, and your choice is remembered on this device.
- The light theme is a dimmed cool grey rather than bright white, so it is easier on the eyes for long sessions.
- The problem page reads as one surface: the editor, tab bar, toolbar and test panel no longer sit in grey slabs that looked disabled.
- Rank colours, tier colours and the profile banner are tuned so nothing near-white disappears on the light background.
- Open editors switch theme live, other open tabs follow, and reloading in light mode never flashes dark first.
A stopwatch on every problem
A small stopwatch now sits beside Run and Submit, so you can practice against the clock the way an interview runs.
- It starts when you open a problem, and opening a different problem starts it fresh.
- Pause and resume it, or reset it to zero, with the buttons beside it.
- Click the time to hide it. It keeps counting either way, and stays hidden on later problems until you show it again.
- It is yours alone: nothing is sent or saved, and it works signed out too.
Random problems
Not sure what to practice next? Let AlgoBlazer pick.
- All Problems has a Random button that draws from exactly the list you have filtered (topics, tags, company, difficulty, status and search).
- Each Learn tier has one that draws from every problem on that tier's ladders.
- The problem page has one at the right end of the description panel's tabs.
All three prefer problems you have not solved yet, fall back to solved ones once you have cleared everything, and never hand you the problem you are already on.
Who's reading your solutions
Shared solutions now show how many people have opened them, next to the comment count, on both the solution page and the solution card in Activity. The count is unique signed-in viewers, and your own visits to your own solution do not count.
If the solution is yours, you see more:
- A Recently viewed by card on the solution page lists the latest 20 people who opened it, when they last did, and how many times.
- The notification bell tells you when someone views it. The first few viewers each get their own notification; after that they fold into one ("Sam and 4 others viewed your solution") that keeps growing instead of flooding your inbox.
The Activity tab also stops showing duplicate cards when someone re-submits the exact same accepted code.
Filtering problems
- Multi-select tags. The tag filter now works like the topic filter: tick several tags, keep the menu open, and choose whether a problem must match any or all of them. Old links to a single tag still work.
- "Learn topics". The topic filter is now labelled "Learn topics", since it holds the hand-picked Learn ladders. "Uncategorized" is now "Not in Learn topics" and sits at the bottom of the menu.
- On the problem page, the reveal toggle is now "Show tags" to match.
Learn
- Blueprint cards. Category cards on the Learn map have a new graph-paper look, in both light and dark.
- Plainer lessons. Every lesson on the map has been rewritten in plain language: factual and concise, with descriptive section headers instead of catchphrases and no coaching voice. Two explanations that disagreed with their own code (in Math and Bit Manipulation) are corrected along the way.
- 1D Linear DP. The ladder gains two lessons: one on choosing between taking and skipping with a rule on skips, and a first counting DP on decoding digit strings.
Problem page toolbar
Collab, Format and Reset in the editor toolbar are now icons (hover for the name), which leaves room for the stopwatch. Collab shows a spinner while a room starts and turns red if it fails. The Random button moved to the description panel's tabs.
Rooms, study groups and interviews
- Resizable chat. The chat sidebar in problem rooms and study groups was fixed at 300px. Drag its left edge to resize it; the width is remembered.
- Results pane from the start. The editor/results split is now always on when your own editor is showing, so you can size the results pane before your first Run.
- Timestamped interview notes. The interviewer's notes pad in a mock interview is now a log: type a note and press Enter to add it, stamped with the interview clock (Shift+Enter for a new line). Click a note to edit it, or × to delete it. Shared notes on the end screen and in the replay show the same stamps, and notes written before this change still load.
- Past interviews. Interviews you hosted now read "You interviewed <name>" (or "no one joined"), and your notes show whether they were shared with the candidate or kept private.
Activity feed
Your dashboard's Activity feed only looked back 30 days, so following someone who last solved a problem five weeks ago showed an empty feed. It now shows their activity however old it is.
Fixes
- Frozen spectator views. When the author of a shared editor typed fast (or held down a key), one dropped update could freeze the code for everyone watching while the author kept typing. The server now asks the author's editor to resend its full state whenever it loses track, and keystrokes are batched so a held key no longer trips the limit. Applies to practice rooms and study groups.
- BlazerBot and huge failing cases. After a submission failed on a very large hidden case, BlazerBot answered every message with "Invalid request body" for as long as that result was on screen. Oversized cases are now trimmed before they are sent.
- Deep recursion in Python. A correct recursive solution that went very deep (around 100,000 levels) could come back as a 0 ms Time Limit Exceeded. Python code now runs with a much larger stack, and genuinely runaway recursion still reports a clear RecursionError.
- Wrong-typed returns. When a solution returned the wrong type, the result could be confusing. Python's
2.0showed as2right beside an expected2under Wrong Answer; JavaScript showedundefinedas a blank; and changing a function's signature in a compiled language produced a compiler error pointing into code you can't see. Output now appears exactly as your program printed it, a changed signature says so plainly, and JavaScript async solutions are awaited. - Infinity and NaN. A Python solution that returned
math.inf(say, instead of -1) failed with "Malformed harness output". It now reads as a normal Wrong Answer showingInfinity. - Readable error messages. A program that exited with an error code showed a string like "RXhpdGVkIHdpdGggZXJyb3Igc3RhdHVzIDM=" instead of "Exited with error status 3". It is now decoded.
- Live streams on the dashboard. Tracked Twitch streams could briefly drop off the dashboard while still live. Each is now confirmed directly before it is removed.
- Problem statements. Several problems got clearer statements, better examples, or more thorough tests from your problem reports, including Circular One-Pair Maximum Sum, Repair Two Swapped BST Values, Minimum Bracket Reversals to Balance, Minimum Subset Sum Difference and Interval Set Subtraction. A few problems also moved to a more accurate difficulty tier.