Versioni
Novità
Cronologia degli aggiornamenti e dei miglioramenti di Python Arena. Le novità più recenti in cima.
v2.0.108 ago 2026Attuale
Aggiunto
- The trainer recognises one more common mistake: if you call word.capitalize() per word, the verdict explains that capitalize() lowercases the rest of the word (“iPhone” → “Iphone”) while the statement leaves those letters alone.
Corretto
- Removed glued-together words from the test data: in fifteen tasks some examples were machine-built by concatenating an input with itself, so tasks that promise space-separated words showed welded forms like “realHow” or “birddog”. Thanks for the detailed report! All twenty-four examples are replaced with meaningful ones, their answers recomputed by the reference solution, and the tests keep their teeth: in Jaden Casing the new “iPhone and eBay…” example still catches the popular capitalize() mistake.
v2.0.97 ago 2026
Aggiunto
- The message under “Submit” got smarter: the trainer now recognises 60 typical mistakes instead of 15 and names them in words. Value mistakes: an extra or missing character (that very extra asterisk in masking), a reversed string, a list ±1 item, repeats, a cut-short or overlong answer, a lost fraction, a flipped sign, a ×100/×60 miss. Code mistakes: a missing colon, an unclosed bracket, a stray indent, mixed tabs and spaces, print without parentheses, “=” instead of “==”, name typos, adding a string to a number, out-of-range indexes, division by zero, input() and three dozen more — a plain traceback now comes with a worded explanation. A diagnosis only appears when the evidence is unambiguous — the trainer never guesses.
- Across 82 tasks the trainer now recognises 240 typical wrong solutions as a whole: if your code behaves like a known incorrect implementation, the verdict explains the mistake in the task’s own words — e.g. "the incomplete final chunk is dropped" or "isdigit() rejects negative numbers". Task coverage will keep growing.
- Focus radio grew from 5 to 13 stations: Drone Zone, Deep Space One, jazz, noir, downtempo and three new locally generated noises — pink, rain and surf. Stations now scroll in a single row — drag with the mouse or use the edge arrows.
Modificato
- The music no longer stops when you move between tasks and pages. When you leave the task page a mini player appears in the corner: it shows what is on air and lets you mute or pause.
v2.0.87 ago 2026
Aggiunto
- Editor settings gain indentation: width 2/4/8, spaces or real tabs — with a live readout of what the Tab key inserts — plus long-line wrapping. The setting applies to the mobile editor too, and pasted code no longer overrides your chosen indent.
Modificato
- The settings popup is reworked to be compact: labels left, controls right, autocomplete as single-row chips.
v2.0.77 ago 2026
Corretto
- On phones the Libraries sheet no longer slams shut by itself: the on-screen keyboard sliding up used to count as a window resize and closed the panel instantly. The search field also no longer summons the keyboard on its own — it appears when you tap the field.
v2.0.67 ago 2026
Aggiunto
- The sandbox now ships an analyst library core: numpy, pandas, matplotlib, seaborn, networkx, scipy, sympy, pillow and tabulate — at pinned versions. The Libraries toolbar button searches the set and attaches a library in one click — the import lands in your code automatically. matplotlib/seaborn/networkx charts and display(df) tables open in the Charts tab on the right.
Modificato
- Sandbox limits raised for analyst workloads: 512 MB of memory, a full CPU core and a 20-second run budget instead of 10.
Corretto
- The sandbox no longer blames your code for an “infinite loop” when the server itself is overloaded. The warm container pool used to go cold during quiet periods, so the first run after a pause could hit the time limit before Python even started — the pool now keeps itself warm, and if a container still fails to come up in time you get an honest “sandbox is busy, try again”.
v2.0.56 ago 2026
Corretto
- Removed a duplicate line in the tests panel: after a formative check the same pair of numbers appeared twice. It now simply says these are the visible tests, and the numbers appear beside the score only when they differ from the overall one.
v2.0.46 ago 2026
Corretto
- The test counter no longer contradicts itself. After a submit the verdict read “Passed 1 of 6” while the panel beside it showed “0 / 2” — two numbers for one run, because the panel counted only the visible tests and the verdict counted all of them. The panel’s headline now matches the verdict, and the visible subset gets its own labelled line.
v2.0.35 ago 2026
Modificato
- Running code is noticeably faster. Almost all of the wait used to go on preparing the sandbox rather than on your program: an empty file took as long as a full solution with a dozen tests, around a second and a half. Sandboxes are now prepared in advance and a run takes under a second. Isolation is unchanged — each sandbox is still used once and destroyed, and nothing carries over from one person to the next.
Corretto
- One more task stopped failing correct answers: “Quarter of the year” accepted only one way of computing it. The statement says a month runs from 1 to 12, but hidden tests passed 0 and −3 and expected the value only one particular formula produces, so anyone writing it with conditionals failed. We checked the neighbouring tasks with similar inputs the same way — there any correct solution gives the same answer, and those were left alone.
v2.0.25 ago 2026
Corretto
- Nine tasks could not be solved: they held hidden tests that no correct answer would pass. A reader wrote in about “Summation” — their loop was right, while the hidden test demanded the value only the closed formula produces, for a negative input with nothing to sum. We ran every one of the 1339 tasks’ own reference solutions against their own tests and removed the impossible cases: expectations of “nothing” where an 800-digit number belongs, demands for “no solution” on data that solves fine, and inputs that contradicted the task’s own statement. Those nine tasks now pass.
v2.0.14 ago 2026
Corretto
- Running and checking code can no longer stop working out of the blue: a run would sometimes break off with an English technical error printed straight into the result panel instead of your program’s output. That is fixed, and if the sandbox is ever unavailable you now get a short, clear message in your own language.
v2.0.029 lug 2026
A sandbox and a blog: run any code straight in the browser, and read ten deep dives into what beginners search for most.
Aggiunto
- The trainer now names the mistake instead of only showing "expected 5, got None". A function that returns nothing, a result printed instead of returned, a string where a number was wanted, an answer consistently off by one, the right items in the wrong order, code stuck in an infinite loop — you get told, in words. The hint appears only when every failing test agrees; the trainer will not guess.
- A sandbox — the “Sandbox” page in the left menu. Write any Python 3.12 and run it straight in the browser: nothing to install, no sign-up. Five ready-made examples, your code is kept between visits, and Ctrl+Enter runs it. Each run gets 10 seconds and 256 MB of memory, with no internet access from the code.
- The Python Arena blog. The first ten articles cover what trips people up early: why the script window closes before you can read the error; the indentation error you get when tabs and spaces are mixed; why float() rejects a number written with a comma; how to strip a file extension and why rstrip lies about it; "list indices must be integers"; why deleting from a list while looping over it skips items; why reassigning the loop variable does not change the list; "unhashable type: list"; mojibake when reading a cp1251 file; and why json.dumps prints \u0430\u043d\u044f instead of Cyrillic.
- Every article links to free trainer tasks on its topic and to the matching section of the reference, so what you just read can be practised immediately.
Modificato
- The AI mentor can finally see what actually went wrong. For Python it used to receive only the verdict line, so it reasoned from the task statement blind. It now gets the failing visible tests with their input, expected and actual — the ones already on your screen — plus the named mistake. Hidden tests remain a count and nothing more.
- Running and grading code is now rate-limited: 30 runs and 60 checks per minute from one address, with code capped at 20,000 characters. There were no limits at all before, so a single client could occupy every free sandbox.
- The blog is Python now: its headings, search-engine description, sections and search still talked about SQL — JOINs, GROUP BY and window functions. The sections are basics, strings, lists and slicing, dicts and sets, loops, functions, errors, files, classes and practice — in all 25 languages.
- The llms.txt file that assistants such as ChatGPT and Claude read to learn what a site offers now lists the reference and every blog article — it previously covered only the product pages.
Corretto
- A crash no longer shows you the grader’s own guts. A syntax error used to print a traceback naming /code/harness.py and a line reading exec(code, ns) — code you never wrote. Only your own frames are shown now.
- The Run button no longer swallows crashes. Code with a syntax error reported "ran with no output", as though the program had simply printed nothing. The error itself is shown now.
- Internal English tokens are gone from the failure line: "Test 3: timeout" and "error: exception: ValueError" now read as sentences. Python’s own exception names stay untouched — they are code, not prose.
- When a program printed something and then crashed or hit an infinite loop, everything it had printed disappeared and only the error was left. Both are shown now — whatever was printed before the failure survives. The same fix applies in the trainer.
- The “Reference” link under an article heading led nowhere — its anchor was built from the article address, and no such anchor exists in the reference. It now opens the reference section matching the article’s topic.
v1.7.028 lug 2026
Aggiunto
- A Python reference — 180 constructs across 20 sections: language basics, control flow, functions, strings, lists, dicts and sets, collections, iteration and generators, numbers, sorting and search, stacks and queues, sliding window, recursion and dynamic programming, graphs and trees, exceptions, classes, type hints, tests and I/O. This page used to hold a SQL reference.
- The “Reference for this topic” panel is back under the task description. Hints are picked from the task’s own wording: a task about upper-case letters leads with the character checks and enumerate. Three are shown, the rest sit behind “Show more”, and the full reference opens in a new tab.
- Reference samples are highlighted as Python and made to be copied: every snippet is code that runs, one construct per line, with a Copy button next to it.
- Reference search understands what you mean: “reverse”, “index” or “frequency” find slicing, enumerate and Counter. The chosen section and query stay in the page address, so the link can be shared.
Corretto
- The language list in the collapsed sidebar no longer slides under the page content — half the names used to be sliced off by the edge of the cards. “Português (Brasil)” no longer wraps onto a second line.
v1.6.427 lug 2026
The test counter in the task panel shows the real number again.
Corretto
- The tests panel on the right could show “0” for a task that has tests and runs them on check. The counter now always shows the real number.
v1.6.319 lug 2026
Notifications, blog and reference — plus a fix for Premium suddenly locking.
Aggiunto
- Notifications: a page with personal events and project announcements, with an unread badge in the profile menu.
- Blog and reference: the sections are live and ready for content — Python articles and materials are coming soon.
Corretto
- Fixed an issue where Premium users could suddenly see locked tasks and get sent to the pricing page; opening a paid task now recovers the session automatically instead of redirecting instantly.
v1.6.218 lug 2026
Corretto
- Emails (digest, streak reminder, email verification) now carry the Python Arena logo and name — previously the SQL Arena brand could appear in them.
v1.6.117 lug 2026
Fixes for Premium access, the activity calendar, and task-statement rendering.
Corretto
- Fixed a rare issue where, with multiple tabs open, Premium tasks could appear locked and open onto the pricing page.
- The profile activity calendar shows your solutions again — previously it stayed empty even while streaks and counters grew.
- Code snippets inside task statements render again — previously the code block was replaced by an empty gap, making some tasks impossible to follow.
Rimosso
- Removed the minutes estimate from catalog task cards — the bare number was confusing without a label.
v1.6.017 lug 2026
The Python catalog is now more diverse, with a clearer Free/Premium split.
Aggiunto
- Reworked 56 repetitive tasks into bug fixing, code reading, classes, exceptions and I/O, generators, decorators, pytest-style tests, async, and JSON/CSV/log processing.
- The catalog gained filters for Free/Premium, format, expanded Python topics, and estimated time.
Modificato
- All 56 new tasks now have natural, connected descriptions with practical context and no formal editorial sections.
- Exactly 100 varied tasks in the regular Tasks catalog are free; company interview tasks and the rest of the catalog are Premium.
Corretto
- Every catalog filter, including search, status, region, company, and favorites, now persists in the URL and survives reloads.
- The region filter now recognizes the catalog’s actual Russian company names, and popularity uses distinct solvers instead of a zero placeholder.
v1.5.216 lug 2026
Corretto
- Mock Interview now starts for Python tasks again and correctly finalizes the session after a successful submission.
v1.5.116 lug 2026
Modificato
- The social preview card now has a versioned URL: on future redesigns, social networks can no longer resurface the old image from their caches.
v1.5.015 lug 2026
Modificato
- The tests panel was reworked: each test collapses to a single line and details open on click — only for the test you care about. The first failing test opens itself after a run.
- Hidden tests moved out of their own tab into the single list — the full set of checks, and how many of them are sealed, is visible at a glance.
- New social preview card — a designed illustration in place of the one the code used to draw.
Rimosso
- Removed the duplication in test results: expected and produced values are no longer repeated inside the diff box. The box itself now appears only where it earns its space — on long or multi-line values.
v1.4.114 lug 2026
Modificato
- “Hide details” now folds away the diff box instead of the value you produced: what your code returned stays visible, along with the test verdict.
Rimosso
- Dropped unused translations for removed sections (exam and certificates, courses, tracks) from the client bundle — pages ship lighter.
v1.4.014 lug 2026
Modificato
- Social preview card: fixed the layout (the subtitle collided with the title) and the copy — it now lists companies that are actually in the catalogue.
Corretto
- The button shown after a solve no longer promises generation — it takes you back to the task catalogue.
Rimosso
- Pricing, the home page and the terms no longer advertise features the trainer does not have: AI task generation, the certification exam and its certificate, schema ER diagrams, and EXPLAIN query-plan analysis.
v1.3.214 lug 2026
Corretto
- The skill axes no longer show 0% after your first solve in a topic — progress shows up immediately.
- The “Submit” button now visibly runs the tests in the right-hand panel, just like “Check”.
- “Hide details” now hides only the details: the pass/fail marks on each test stay visible.
v1.3.113 lug 2026
Corretto
- The all-time leaderboard and power are now consistent with the weekly one: solved tasks always count, even if power accrual was previously missed. Progress is recomputed from your submissions.
v1.3.013 lug 2026
Corretto
- Solved tasks show up again: in the catalog’s “solved” filter, in the weekly and monthly leaderboards, and in the personal card on those tabs. Progress was read from an empty SQL table instead of your Python submissions.
Rimosso
- Removed the leftover SQL Arena sections from the admin panel (tasks, datasets, tracks, submissions, blog, certificates) — they were empty and unrelated to Python Arena.
v1.2.013 lug 2026
Aggiunto
- 33 achievements: for solved tasks, day streaks, first-try streaks, persistence, topic mastery (arrays, strings, dicts, DP…) and ranks reached.
Modificato
- The AI mentor now recognizes tasks you've already solved: instead of hints it offers a review of your solution, its complexity and alternatives. After five requests on one task it gives a step-by-step plan.
Corretto
- The “favourite” button works again (it referenced an empty table and silently failed).
- The “You are now” card on the leaderboard no longer disappears on the Friends and Cohort tabs.
- The tab icon (the axe) is larger — it no longer looks tiny next to other tabs.
Rimosso
- Removed the hidden SQL task generator inherited from SQL Arena: it produced non-Python tasks and led to broken pages.
v1.1.112 lug 2026
Corretto
- The “Solved” status no longer leaks between accounts in the same browser: for signed-in users progress now comes strictly from their account.
v1.1.012 lug 2026
The AI mentor now speaks Python, and power is awarded for every solved task.
Aggiunto
- The AI mentor is now Python-native: persona, tiered hints, and feedback on your actual code instead of SQL templates.
Corretto
- Power now actually accrues on the first correct solution of a task.
v1.0.08 lug 2026
First public release of Python Arena — a Python trainer built on real interview tasks.
Aggiunto
- A catalogue of 1,339 Python tasks: real interview problems from 28 companies plus a curated base set. Filter by topic, difficulty and company.
- Solutions run in an isolated Python 3.12 sandbox: visible tests with a got/expected diff plus a hidden suite on submit.
- Progress tracking, a code beast with Python-topic characteristics, a leaderboard, and account-bound submission history.