News for hackers. Stuff that matters.

kazlock

Re:Update on free software and telemetry on Thursday October 24, 2019 @02:52PM (#21347909)
Or it means they're just going to switch to $competitor's product that doesn't have this issue.
Re:Update on free software and telemetry on Wednesday October 23, 2019 @08:35PM (#21340536)
I'm not arguing for or against tracking, but I disagree with some of these assumptions:

1) 99% of users who have a bad experience are not going to be bothered to figure out how to record, review, and submit their session for the benefit of the service provider. If a page has issues loading, they're just going to give up and move on to the next thing.

2) User tracking isn't really related to performance in the first place. If some server side operation is failing or taking a long time to load, engineers will find out (and probably get paged) with user-agnostic internal performance metrics.

3) User tracking isn't just about finding out what's broken with the site, its about understanding how the site is being used in general so that you can validate your assumptions and make product decisions backed by data.

Re:A Codebase Is an Organism (2014) on Saturday August 24, 2019 @09:42PM (#20790829)
> two modules will tend to grow ever more dependent on each other unless separated by hard ('physical') boundaries

This is especially true in monorepos. Code resuse has it's benefits, but left unchecked the dependency graph can turn into a huge highly-connected glob. Modules end up accidentally importing code they have no business importing because of sneaky transitive dependencies. The blast radius of even small simple changes becomes enormous, and testing/debugging becomes more and more complex.

A great way to keep this in check is to have apply code isolation in the test environment. When you checkout the entire repo for a build or test, its easy for these kinds of dependencies to grow unnoticed. But if you require build/test targets to explicitly declare what code they depend on (and only make that code present when running them), changes to the dependency structure must be explicitly acknowledged in code review. This is one of the core principles behind build tools like Bazel.

Yeah, it does build up from radicals->kanji->vocab over 60 levels. I agree, for someone who knows Chinese already WaniKani is probably not the most effective way to study. But for people who are unfamiliar with the Chinese/Kanji character set learning radicals first really helps with mentally parsing characters with high stroke count. However as I’m sure you know Kanji readings can be a lot different from the Chinese characters they came from, so there is still some memorization work to be done.

Also WaniKani doesn’t touch on grammar at all, so it works as only a part of an overall study routine. I do wish there was a similar SRS service for grammar/reading. Building up your own decks is such a huge amount of work, and for someone who is just learning it’s nice to have a curated deck that is verified for correctness. Sounds like you have an awesome system that’s working for you though.

This gets used a lot in language learning, especially in the Japanese learning community where people are trying to memorize thousands of Kanji characters. Like the article says, the idea is that recalling a fact when you are on the verge of forgetting it causes it to be reinforced, increasing the interval before you will next forget it. Using the Japanese language SRS tool WaniKani (https://www.wanikani.com) I’ve memorized around 900 vocab/characters in the past three months (which is actually kind of slow compared to most people).

This has been a fun experience for me. I’ve always felt like my memory was poor compared to most people, but now I have proof that with the right strategy I can remember anything I want.

> Some researchers also believe that semantic priming is a factor.

When learning a new Kanji in WaniKani you are given a mnuemonic to associate with it. I find that my retention is much better when the mneumonic feels strongly associated with the shape/meaning/reading of a character.

Another thing that I’ve found helps retention outside of SRS is using/encountering an item outside of a study session. The surest way for me to remember a new word is to hear it in a show or song where I fully understand the context it’s being used in. Also if the thing you’re memorizing more of an abstract idea, then explaining it to someone else is a great way to reinforce it for yourself.