HNHacker News
TopNewBestAskShowJobs

victorlf

170 karma · joined July 8, 2014

Blog: https://thediligentdeveloper.com Working on: https://python.cards
submissionscomments
victorlf··on Memorizing a programming language using spaced repetition software (2013)
This is the basic idea behind https://python.cards, the site I'm building to learn Python with spaced repetition.

The hard thing is building the deck. With pre-built decks I expect to greatly reduce the effort required while getting most of the benefits of spaced repetition learning.

victorlf··on Anki – Powerful, intelligent flash cards
It seems the tricky part is motivation. Very few people get excited by card-reviewing itself. The method shines when there is external pressure, such as exams.

I think a sense of community can help provide this motivation (like a group of people all learning at the same time), but it's still tricky.

victorlf··on Anki – Powerful, intelligent flash cards
Anki is unbeatable for acing any test with a bounded number of questions [1]. It's been successfully used by some top TV show contestants to remember thousands of words [2].

I've been using it recently to remember recipes and cooking facts, such as the time it takes to boil X vegetable, or the ingredients for some dish.

Apart from language learning and medicine, there's a lack of pre-built decks that you can use to learn topics. I'm building Python.cards [3] to apply spaced repetition to learn Python with pre-built decks, daily reminders, etc. to make it the most convenient.

[1] https://www.thediligentdeveloper.com/spaced-repetition-reall...

[2] https://www.esquire.com/es/tecnologia/a36913467/pasapalabra-...

[3] https://python.cards

victorlf··on The Diligent Developer Framework to become a better programmer
Author here. I created this framework to organize my thoughts and the advice I've given to more junior developers over the years on how to become a better developer.

I'd love to know if you find it useful or miss something.

victorlf··on The Diligent Developer Framework to become a better programmer
Author here. I created this framework to organize my thoughts and the advice I've given to more junior developers over the years on how to become a better developer.

I'd love to know if you find it useful or miss something.

victorlf··on FSRS: A modern, efficient spaced repetition algorithm
Thanks for the tip! I'll try to fix it.
victorlf··on FSRS: A modern, efficient spaced repetition algorithm
Probably not terrible, but serving a different purpose.

I recommend this interview with Duolingo's founder Luis von Ahn: https://www.npr.org/2020/05/22/860884062/recaptcha-and-duoli...

victorlf··on FSRS: A modern, efficient spaced repetition algorithm
It's weird you didn't find the sign-up box to the waitlist, this is how it should look like: https://imgur.com/a/0ZIbz4p, I actually got some sign-ups from this comment!

Anyway, I can sign you up manually if you wish.

victorlf··on FSRS: A modern, efficient spaced repetition algorithm
Thanks! I definitely will add more examples to the landing page, currently I'm working hard on the decks: pathlib in depth, a tour of the stdlib and Norvig's tricks (a collection of tricks from the Pytydes of Peter Norvig).

I believe the hardest part of using spaced repetition to learn programming is creating good decks, it's a ton of work.

About open sourcing the web app, I might do it. It's a Django app, and I've published some videos while coding it (https://www.youtube.com/channel/UCyWUj9r0soytotuuh2JnPrw), so it's no secret.

victorlf··on FSRS: A modern, efficient spaced repetition algorithm
Very interesting. According to the benchmarks, with this algorithm, users can review 20-30% fewer cards than with the classic Anki algorithm.

Just a few days ago, I published a Python implementation of the classic SM-2 algorithm that I use for https://python.cards, but I may switch to FSRS. https://github.com/vlopezferrando/simple-spaced-repetition

victorlf··on Self-teaching, spaced repetition, and why books don't work
You may be interested in rust.cards, which I'm also working on :D
victorlf··on Self-teaching, spaced repetition, and why books don't work
Many reasons, most of them hypothesis. For one, the book "The programmer's brain" says that spaced repetition is the best way to learn the syntax, idioms, caveats of a programming language, but it's hard to find a product that offers this.

I don't suggest you should learn Python _only_ with python.cards. I assume every python.cards user will be doing some online course, or working with Python, and my decks will just boost their knowledge of the language.

I think a lot of people program in Python but programming in Python is not their main occupation. These people struggle to accumulate knowledge, because they may encounter concepts or APIs only from time to time, and by that time they already forgot.

Also, I want to cover some "unorthodox" topics for which spaced repetition may be specially well suited. For example, I'm building a deck called "A tour of the standard library", where you can learn all the modules that are available, just so you know what is out there, without going deep into it.

Another idea is to have decks to learn all the built-in exceptions by heart, or the nomenclature. I think this helps build a mental model of the width and depth of the language so you can better integrate all the knowledge you find while coding, searching online, or reading code.

victorlf··on Self-teaching, spaced repetition, and why books don't work
Shameless plug: I'm building https://python.cards to learn Python with spaced repetition. I've uploaded some videos on Youtube of the process of distilling the information from the Python docs into flashcards, and have plans on trying out LLMs to help in this process.
victorlf··on Ask HN: Freelancer? Seeking freelancer? (September 2023)
SEEKING WORK | Remote | Worldwide

Location: Barcelona, Europe

Remote: Yes

Willing to relocate: No

Technologies: Python, C++, JavaScript, Kubernetes, Machine learning... and more

Résumé/CV: https://www.linkedin.com/in/v%C3%ADctor-l%C3%B3pez-ferrando-...

Website: https://www.thediligentdeveloper.com

Github: https://github.com/vlopezferrando

Email: victor <at> thediligentdeveloper <dot> com

Hello! For 5 years I've been a cofounder and director of software engineering at a startup, growing and leading a team from 0 to 15+ developers. I have a deep understanding of technology and how to apply it to solve business problems. During the last months, I have done contractor work for a couple of companies, building the foundational software for one of them, and helping the other improve their software development processes to deliver a project they were struggling with.

I have a strong educational background (PhD in bioinformatics and machine learning, MSc in mathematics, MSc in computer science), and have worked with a variety of technologies (Python, C++, C, Go, JavaScript).

I've been a software engineer for 15+ years, and so have a wide range of projects I've worked on, both coding from scratch and leading teams of devs. To name a few: I built a multi-modal journey planner in C++ https://www.iomob.net/technology/, a machine learning platform in Python http://mmb.irbbarcelona.org/PMut, a math high school contests site with Django https://www.contrarellotge.cat.

I already linked my Github profile earlier, but if you want to see some code I wrote, here is a video where I explain some Python and C++ code I wrote for the hardest problem of last year's Advent of Code: https://www.youtube.com/watch?v=C8jUMwnBQEU

victorlf··on Ask HN: Who wants to be hired? (September 2023)
Location: Barcelona, Europe

Remote: Yes

Willing to relocate: No

Technologies: Python, C++, JavaScript, Kubernetes, Machine learning... and more

Résumé/CV: https://www.linkedin.com/in/v%C3%ADctor-l%C3%B3pez-ferrando-...

Website: https://www.thediligentdeveloper.com

Github: https://github.com/vlopezferrando

Email: victor <at> thediligentdeveloper <dot> com

Hello! For 5 years I've been a cofounder and director of software engineering at a startup, growing and leading a team from 0 to 15+ developers. I have a deep understanding of technology and how to apply it to solve business problems. I'm currently looking for a remote position as a software engineer or engineering manager.

I have a strong educational background (PhD in bioinformatics and machine learning, MSc in mathematics, MSc in computer science), and have worked with a variety of technologies (Python, C++, C, Go, JavaScript).

I've been a software engineer for 15+ years, and so have a wide range of projects I've worked on, both coding from scratch and leading teams of devs. To name a few: I built a multi-modal journey planner in C++ https://www.iomob.net/technology/, a machine learning platform in Python http://mmb.irbbarcelona.org/PMut, a math high school contests site with Django https://www.contrarellotge.cat.

I already linked my Github profile earlier, but if you want to see some code I wrote, here is a video where I explain some Python and C++ code I wrote for the hardest problem of last year's Advent of Code: https://www.youtube.com/watch?v=C8jUMwnBQEU

victorlf··on Mozilla Common Voice Adds 16 New Languages and 4,600 New Hours of Speech
Catalan has about 10 million speakers.
victorlf··on Interesting commands for the Linux shell
I you run a very memory hungry program (like some specific scientific program), it can happen that 3GB of your memory from the browser, text editor, etc. is moved to swap. Then, when you kill the program and want to go back to normal, just changing the tab in your browser can take a long time.

By flushing the swap, you wait some time first but then it all runs smoothly. When using a hard drive and not SSD the difference is even bigger.

victorlf··on Interesting commands for the Linux shell
Nice tip! I updated the article.