I made a free browser chess site where every move is animated in 3D and captured pieces break apart

Do you like to play chess? Have you ever dreamed about played animated chess?

How about Harry Potter movie? I always dreamed to play magic chess, as classic one was boring for me. Here you go, I have created it. It's absolutely free.

Playable Link: https://playwizardchess.com

u/CaterpillarLost1107 — 10 days ago

I build Leetcode but better.

LeetCode is 3000 problems in a pile. It is a great gym. It is not a syllabus.

When I started I had no idea what order any of it went in.

So I wrote the ordered version.

Every step names three things at the top. What it builds on. What it adds. What it sets up.

Graphs sit after trees and heaps, because they need both. Dynamic programming sits after recursion and greedy.

Step 0 is what an algorithm is. Step 149 is segment trees. No gap in the middle.

Each step also has:

- The signals that tell you a problem wants this pattern.

- The neighbouring pattern that looks similar and does not fit, with the reason.

- Code you write yourself, against tests that fail until it works.

- A real system it runs in. Sliding window ends in a rate limiter.

- A hint ladder, five rungs. Being stuck never means reading the answer.

You write in JavaScript, TypeScript, Python, PHP, Java or C#. It runs in the browser. Nothing to install.

https://algopath.pro?ref=DSALeetCode

u/CaterpillarLost1107 — 1 month ago
▲ 3 r/sideprojects+1 crossposts

LeetCode taught me 300 solutions and zero patterns. So I build the version I needed.

I did LeetCode for a year. Around 300 problems.

I could pass an interview on a problem I had seen. On a new one I froze.

Here is what went wrong for me, specifically.

  • The title told me the answer. "Sliding window: maximum sum subarray."
  • I read the pattern before the problem.
  • Recognition never got practised.
  • The explanation assumed I already knew. "Use two pointers" is a solution, not an explanation. Why two pointers? What in the text gave it away? Silence.
  • Nothing connected to my job. I solved LRU cache as a puzzle. I shipped an actual LRU cache six months later and did not notice they were the same thing.
  • The solution button. Stuck for five minutes, click, read, forget.

So I built the version I wanted. Took about 2 months, evenings and weekends.

How it explains things differently

  1. Three depths of the same lesson. You pick one. Simple is plain words, every term defined the first time. Standard names the real terms a working developer uses. Academic gives invariants and complexity proofs.
  2. Every step names what it builds on, what it adds, what it sets up. So step 40 says exactly which earlier steps you need.
  3. Every step lists the signals. Which words in a problem mean "this pattern". And the neighbour that looks the same and does not fit, with the reason.
  4. Every step ends in the real system. Binary search ends in a working git bisect. Sliding window ends in a rate limiter. With tests.
  5. Hints come as a ladder, five rungs. Rung one is a question. Rung five is close to the answer. You stop where you want.
  6. Then a trainer strips the title off and gives you 90 seconds to name the pattern. It records which ones you confuse. Mine: sliding window for two pointers, eleven times.

150 steps, 52 patterns. Six languages in the browser. English and Russian.

https://algopath.pro?ref=sideproject

Would like to know which explanation depth people actually pick. I guessed simple. I might be wrong.

reddit.com
u/CaterpillarLost1107 — 1 month ago

Google EM Warsaw onsite - will I make it to hiring committee?

Interviewing for EM role at Google, Warsaw office.

Looking for takes from people who've been through the loop, or who work at Google now as EMs or/and recruiters.

Part 1:

  • Recruiter call.
  • Remote people management
  • Remote system design.

All passed. Got the onsite.

Part 2:

  • Code review
  • System design
  • People leadership.

Result: Leadership and design came back positive. Code review was weak.

Recruiter said passing this round is what gets my packet to HC and team matching and offered a re-do of code review interview. I took it.

Had Code Interview round this week for a second time. Got mixed feelings.

  • I opened with clarifying business context, where the code runs, inputs, outputs, edge cases.
  • Caught the surface issues: syntax errors, magic strings, typos, wrong imports.
  • Renamed unclear variables and methods.
  • Added private and protected.
  • Noted the missing comments, tests, docs and observability (logs). Pulled out repeated logic, but flagged that going further would be overkill for a file that small.

At the same time has issues with fixing error in business logic.

Found the bug. Couldn't fix it. Interviewer gave hints. Still could not fix it.

I talked through a rough solution but ran out of time and never changed business logic part of code.

So I'm split. Covered a lot verbally and wrote as notes. Edited very little code.

Found the real bug, didn't solve it.

Today got a call scheduled for Monday with title "Feedback call".

Does that call usually mean the packet moved to HC? Or is it how they say no?

reddit.com
u/CaterpillarLost1107 — 1 month ago