E.g. International Mathematical Olympiad, International Physics Olympiad, competitive programming, etc.
Events that trick young kids into thinking that they are making progress, but only serve to distract them from what really matters, which is to dominate a state of the art as fast as possible, contact researches in the area, and publish truly novel results.
Financially backed by high schools trying to make ads showing how they will turn your kids into geniuses (but also passionate teachers who fell into this hellish system), or companies who hire machines rather than entrepreneurs.
The most triggering thing possible is when programming competitions don't release their benchmarks as open source software afterwards: at least like that they might help someone to solve their real world problems. Maybe.
Some irrelevant people highlight that knowledge Olympiads can have good effects, because they are "an opportunity to meet university teachers and their research organizations". Ciro's argument is just that there are much more efficient ways to achieve those goals.
As an alternative way to get into university, this is not 100% horrible however, e.g. the University of São Paulo accepted students from olympiads in 2019 and then again 2023: jornal.usp.br/institucional/usp-oferece-200-vagas-em-mais-de-100-cursos-de-graduacao-para-alunos-participantes-de-olimpiadas-do-conhecimento/?a
Resources to study for knowledge olympiads:
- savchenkosolutions.com contains collaboratively created solutions to the Savchenko Problems in Physics. It appears to be a frontend for: github.com/savchenko-physics/savchenko-solutions. Closed license, kind of sad.
Hackathons are useless.
If you have a useful project, why would you ever restrict its development to a specific timeframe and with a specific set of contributors?
Just put your project on GitHub and promote it to try and get users and contributors instead!
Instead of announcing organizing hackathons, people should just curate forums where people with similar interests can talk to one another instead, to find new projects that might interest one another.
Restricting intensive development to a few days tends to produce crappy code and not reach real goals.
To be fair, this is one of the least worse ones.
Their system is quite good actually. Not as good as a GitHub repo with all the tests made explicit. But still pretty good.
They don't have an actual online judge system, all problems simply have an integer or floating point solution and they just check that you've found the value.
The only metric that matters is who solved the problem first after publication, e.g.: projecteuler.net/fastest=454. The "language" in which problems were solved is just whatever the user put in their profile, they can't actually confirm that.
Project Euler problems typically involve finding or proving and then using a lemma that makes computation of the solution feasible without brute force. As such, they live in the intersection of mathematics and computer science.
List of just the solution values:
Code solutions by individuals:Basically no one ever had the patience to solve them all. What we need is a collaborative solution.
Problems are under CC BY-NC-SA: projecteuler.net/copyright
Once you solve a problem, you can then access its "private" forum thread: projecteuler.net/thread=950 and people will post a bunch of code solutions in there.
How problems are chosen:
projecteuler.net says it started as a subsection in mathschallenge.net, and in 2006 moved to its own domain. WhoisXMLAPI WHOIS history says it was registered by domainmonster.com but details are anonymous. TODO: sample problem on mathschallenge.net on Wayback Machine? Likely wouldn't reveal much anyways though as there is no attribution to problem authors on that site.
www.hackerrank.com/contests/projecteuler/challenges holds challenges with an actual judge and sometimes multiple test cases so just printing the final solution number is not enough.
The beauty of Project Euler is that it would serve both as a AI code generation benchmark and as an AI Math benchmark!
Bibliography:
Claude says he's from the UK and has a background in mathematics. Oxbridge feels likely. How I Failed, Failed, and Finally Succeeded at Learning How to Code says he started off on the ORIC computer, which is British-made, so he is likely British.
This was a registration CAPTCHA problem as of 2025:Python solution:At: euler/0.py
Among the first 510 thousand square numbers, what is the sum of all the odd squares?
s = 0
for i in range(1, 510001, 2):
s += i*i
print(s)Solution:
233168Solutions to the ProjectEuler+ version:
The original can be found with:
printf '1\n1000\n' | euler/1.pyA(x) = x + 1
Z(u)(v) = v
S(u)(v)(w) = v(u(v)(w))S
(S)
(S(S))
(S(Z))
(A)
(0)
S
(S)
(
S
(S(S))
(S(Z))
)
(A)
(0)
S
(S(S))
(S(Z))
(
S
(
S
(S(S))
(S(Z))
)
(A)
)
(0)
S
(Z)
(
S(S)
(S(Z))
(
S
(
S
(S(S))
(S(Z))
)
(A)
)
)
(0)
S(S)
(S(Z))
(
S
(
S
(S(S))
(S(Z))
)
(A)
)
(
Z
(
S(S)
(S(Z))
(
S
(
S
(S(S))
(S(Z))
)
(A)
)
)
(0)
)
S
(S)
(S(Z))
(
S
(
S
(S(S))
(S(Z))
)
(A)
)
(0)So we see that all of these rules resolve quite quickly and do not go into each other.
S however offers some problems, in that:C_0 = Z
C_i = S(C_{i-1})
D_i = C_i(S)(S)Calculate the nine first digits of:
D_a(D_b)(D_c)(C_d)(A)(e)Removing
D_a:S^i(Z)S)(S)(D_b)(D_c)(C_d)(A)(e)A naive
T in Python is:from collections import deque
def T(a: int, b: int, N: int) -> int:
total = a
q = deque([a] * (a - 1))
is_a = False
for i in range(N - 1):
cur = q.popleft()
total += cur
q.extend([a if is_a else b] * cur)
is_a = not is_a
return total
assert T(2, 3, 10) == 25
assert T(4, 2, 10**4) == 30004
assert T(5, 8, 10**6) == 649987122332223332233 which has 14 digits.Maybe if
T is optimized enough, then we can just bruteforce over the ~40k possible sum ranges 2 to 223. 1 second would mean 14 hours to do them all, so bruteforce but doable. Otherwise another optimization step may be needed at that level as well: one wonders if multiple sums can be factored out, or if the modularity can of the answer can help in a meaningful way. The first solver was ecnerwala using C/C++ in 1 hour, so there must be another insight missing, unless they have access to a supercomputer.The first idea that comes to mind to try and optimize
T is that this is a dynamic programming, but then the question is what is the recurrence relation.The sequence appears to be a generalization of the Kolakoski sequence but to numbers other than 1 and 2.
maths-people.anu.edu.au/~brent/pd/Kolakoski-ACCMCC.pdf "A fast algorithm for the Kolakoski sequence" might provide the solution, the paper says:and provides exactly a recurrence relation and a dynamic programming approach.
www.reddit.com/r/dailyprogrammer/comments/8df7sm/20180419_challenge_357_intermediate_kolakoski/ might offer some reference implementations. It references a longer slide by Brent: maths-people.anu.edu.au/~brent/pd/Kolakoski-UNSW.pdf
www.reddit.com/r/algorithms/comments/8cv3se/kolakoski_sequence/ asks for an implementation but no one gave anything. Dupe question: math.stackexchange.com/questions/2740997/kolakoski-sequence contains an answer with Python and Rust code but just for the original 1,2 case.
github.com/runbobby/Kolakoski has some C++ code but it is not well documented so it's not immediately easy to understand what it actually does. It does appear to consider the m n case however.
Announcements:
As mentioned at euler.stephan-brumme.com these tend to be harder, as they have their own judge system that actually runs programs, and therefore can test input multiple test cases against their reference implementation rather than just hard testing the result for a single input.
Goes only up to Project Euler problem 254 as of 2025, which had been published much much earlier, in 2009, so presumably they've stopped there.
If your kids are about to starve, fine, do it.
But otherwise, Ciro Santilli will not, ever, spend his time drilling programmer competition problems to join a company, life is too short for that.
Life is too short for that. Companies must either notice that you can make amazing open source software projects or contributions, and hire you for that, or they must fuck off.
Articles by others on the same topic
There are currently no matching articles.
