@oleh_bc@tarkpatel_@taalas_inc I've vibecoded multiple projects for personal use that I wouldn't dare to ever code on my own as per projects. I assume that there are still many people who don't have enough time / skills to generate something that they need, because polishing this apps is still time consuming.
@oleh_bc@tarkpatel_@taalas_inc It took me way longer to write a somewhat coherent prompt than for it to deliver multiple iterations of the app. Progressive evolution of an app is definitely still a problem, but I already can imagine "generate your site in 30 seconds as a service".
@oleh_bc Thanks. I tried it out. I had to steer it really hard to give me a sound answer to the question about Groth16. Ergo this is not something I'd use daily, but the speed is actually incredible. Never seen anything comparable.
@merigoeth@LayerZero_Core I know. But how many bug bounties actually allow to submit findings related to the setup? I think that we've been focused on the visible part for too long at this point, and it shows.
As a current RareSkills student, I can vouch that this approach is excellent. When I got the grasp of underlying concepts, I was confident enough to explore the topics deeper on my own. I hope that this approach will become mainstream in the future.
To understand what "good teaching" looks like you must understand the common failure modes of education, such as when designing a course or writing a textbook.
I've spent years making hard subjects (like zero knowledge proof cryptography) accessible to engineers. Here's what I've learned are the common antipatterns in education:
1. Difficulty Spikes
Video games keep users hooked by ramping up the difficulty very carefully, or at least giving you a strong warning that the difficulty will increase rapidly. Difficulty is part of learning of course, but unexpected difficulty is demotivating. If the teacher doesn't have a good mental model of what the student will find easy or hard, then the learning material will have difficulty spikes.
Consider the psychological impact behind this. If I tell you "tomorrow you will have a bad day because of XYZ reasons" then when you actually experience XYZ, it won't be as bad as if it caught you by surprise.
Experienced professors will warn students "this homework is harder than normal" but the better solution is to break up the homework into more manageable pieces.
2. Dangling Facts
When teaching a subject, a lot of educators fall into the antipattern of "we need to teach this theorem/algorithm/proof because every other textbook teaches it." This tends to create "dangling facts." Facts need to be connected to be memorable.
Teaching a student information that will never be used later diverts precious energy from impactful facts they need to put effort into internalizing.
Example: most number theory/cryptography courses teach the euclidean algorithm to compute multiplicative inverses. The ZK book treats it as a black box. Multiplicative inverses are intuitive even if you rely on a library to compute them for you. So we spare the reader the effort of understanding the euclidean algorithm and focus on just using multiplicative inverses. The gap can always be revisited later with no harm to later knowledge.
3. Unmotivated Facts
Related to the above, if a teacher cannot reasonably answer "why are we learning this" then that teacher isn't good. Motivation is one of the biggest factors in student success. Therefore, the course must be designed around what the student finds motivating as opposed to just telling the student to "trust me, tough it out."
Now, I need to make a distinction here. When teaching children, they may not have the wherewithal to understand why they need to remember word spelling or memorize multiplication tables. So my comment has more to do with adult learning.
4. Asking for Generalization Too Early
A lot of math textbooks make this mistake. They show a theorem and ask the reader to prove it. Unless the proof is trivial, this is the wrong move. Rather, they should test that the student actually understood the theorem and some first-order implications of it.
5. Underweight visual modality
Now that frontier LLMs make creating visual diagrams/animations cheap, there's no excuse to not lead with visuals where possible. A good visual should not just be a sequence that says the same things text says. It needs to convey information in a way that words cannot do efficiently.
6. Bad prerequisite model
If you spend time reminding readers how polynomial arithmetic works, but expect them to randomly recall some more advanced theorem from linear algebra, you have a bad prerequisite model which will cause a massive difficulty spike. Anyone who remembers the rank-nullity theorem or kernel-subspace duality probably remembers what roots of a polynomial are, but vice versa is not necessarily true.
A good teacher cannot teach a student as a blank slate, but rather must have an update-able prior about what the student is already comfortable with and what they aren't. This model needs to actually reflect the actual distribution of real students.
I am not sure about the future direction for the skill. I think I will open-source it as an auditing tool, but any suggestions for future directions are welcome.
This part elaborates on the Noir skill I built for the CTF. I outlined possible flag areas. Based on them, one person on the team uses the skill to generate leads, the second one tries to exploit them.
However, I saved some time by exploring the working repo before the hackathon and adding repo-specific rules (e.g. where to put scripts and how to run them). And a major game-changer were Aztec and Noir MCPs. Kudos to @critesjosh_ for delivering them.
And all the cool guys on my team:
@0xSkas@LuxLode@teoslaf1@0xStrapontin. We placed 11th, but it was a fair battle for 10th until the last minute. We'll get them next time.
This thread will focus on a human, and the next one will be a technical one. A week ago, I joined the @Wonderland hackathon. I did not have a team or any expectations. I just wanted to solve Noir challenges!
Overall, the event was a critical success for me. I gained a lot of experience being in a CTF, learned a lot about my mental state, received hands-on experience on how not to write a skill, and had some more fun with Noir my beloved. More CTFs, please!