What You're Actually Looking For
If you came here expecting a piece of software or a download link called Jon Cruz Bronx Science, you're going to be disappointed because that doesn't exist. It's a person. Jon Cruz was a student at Bronx High School of Science who became well-known in competitive programming circles, particularly through USA Computing Olympiad (USACO) competitions and the broader algorithmic problem-solving community. He was part of the cohort of young programmers who gained visibility after performing well in national and international contests. That's the entire thing. There's no repository, no tool, no guide named after him that you can grab and install.
Jon Cruz Bronx Science and What Actually Comes From It
What people usually want when they search for this are resources related to competitive programming at the level that students like Jon Cruz were operating at. The path to that level is pretty well mapped out. You start with platforms like Codeforces, LeetCode, and the USACO training gateway itself. The training URL is usaco.org/index?page=training — that's the closest thing to an official resource associated with that ecosystem. I remember being on Codeforces when Jon's contest performance came up in discussions around 2019 and 2020. The kind of problems he was solving required fluency with dynamic programming, graph traversal, and data structures like segment trees and Fenwick trees. These aren't things you pick up by watching a video. They come from grinding problems until the patterns become obvious through repetition. One specific thing that trips people up: most beginners skip the foundation and jump straight into contest problems. I spent weeks going back and forth on basic greedy algorithms and recursion before anything clicked. The moment I stopped trying to solve division 3 contests cold and actually worked through the material in order, my rating stopped drifting and started climbing. It took about three months of consistent practice, roughly an hour a day, to see real movement.
Another counter-intuitive point that nobody tells you: doing more contests without reviewing them is almost worse than not competing at all. I used to submit problems in rounds and immediately move on. My improvement stalled for months. Once I started spending 30 minutes after every contest going back through every problem I got wrong and actually writing out the solution from scratch, my progress doubled. The review step is where the learning happens, not the contest itself. The biggest bottleneck I ran into personally was implementing data structures from memory. I could recognize a segment tree problem instantly, but writing a correct implementation under time pressure was a different story. I kept making off-by-one errors in the indexing. The workaround that actually worked was keeping a personal template file with tested implementations of common structures — segment tree, union-find, Dijkstra's, binary lifting — and practicing filling them in blind until I could do it without looking. After about two weeks of that, the templates started sticking. There are real limitations to this path though. Competitive programming doesn't translate directly to software engineering skills. Being able to solve a hard dynamic programming problem on a whiteboard doesn't mean you can design a production system or read someone else's codebase. If your goal is actually getting a job at a tech company, LeetCode-style interview prep is more relevant than USACO training, even though the underlying algorithmic knowledge overlaps significantly.
Get the Full Details

If you're a high school student looking to get into this space, start at usaco.org with the Bronze division, work your way up through Silver and Gold, and simultaneously maintain a Codeforces account for contest practice. That's the standard route. There's no shortcut around it, and there's no special program or tool that bypasses the necessary volume of practice.