Nothing new under the sun; having money helps to earn money. Still, I believe it may be interesting to document my particular - why I could not have had the well-paying job I have today if I was not quite confortable - as a very concrete example. And while other paths do exists, and I don't claim it's necessary to already have money to get the kind of income I get as a software engineer, I just note how much being financially secure helped.
(3)
Kotlin migration of AnkiDroid
AnkiDroid successfully converted its entire project from Java to Kotlin. In this first AnkiDroid dev blog post, we’ll explain our goal, our methods, and what remains to do.
Our goals
The main goal of the migration is to improve developers' experience. Kotlin code is easier to read, write and review than Java. Anki AnkiDroid is 13 years old. If we are still here in 13 years, we hope that the time spent during this migration year will be entirely saved. We also hopefully will decrease the number of bugs and get more readable codes using Kotlin features, such as better nullability check, scope function, and high-order function over collections.
Here is the extra goals we discovered along the way:
- git history should still allow us to track the origin of each code line.
- Each commit should compile
- New contributors should be able to help us easily
- Kotlin migration should not introduce bug
Why Anki is not well-known
Quite some Anki fans wonder why Anki is not well-known. Using Anki changed the life of more people than I can count, and they wonder why there are not more people using it; or at least why it is not well-known. I'll try to answer to the best of my ability. I should not however that, it's a question on a negative, so I can only offers educated guesses. "Educated" because I've been active in Anki ecosystem since 2017, but "guess" because it's pretty hard to answer a question on a negative and this is hardly a question for a software developer.