In search of Science

All models are wrong, but some are useful (after George E. P. Box) The longer I live, the more I realise that there must be two kinds of “science”. One with a capital - Science - and one without - science. Alas, it appears that academics, scholars and commentators throughout the Western world are yet to discover this, and we very predominantly see talk about “science” with a lowercase “s”, at least in most types of popular and political discourse (institutional/government), when really they mean “Science”. [Read More]

What does it mean to know a word, and how do we learn them?

Probably the main indicator of progress in language learning is increasing “known vocabulary”. While that sounds pretty uncontroversial* and simple, actually deciding what “knowing a word” is is actually a subject of hot debate! Particularly when we need to be very precise about things - exactly what you need when you create software - things start to get much less clear. How do you know whether you know something? The answer to this question is one that has challenged philosophers and sages since time immemorial! [Read More]

Beginning with Transcrobes

tl;dr Do an (online or offline) introductory course to get started with learning grammar and basic vocabulary. Use the Transcrobes vocabulary learning and revision tools to super-charge your learning, and then use it to start consuming real content as soon as you feel you can. Introduction Transcrobes already has a lot of advanced functionality, but here is some introductory advice on how to start using it for beginners to Chinese. [Read More]

Getting started as an intermediate learner

tl;dr Bootstrap If you already use an application, then export the vocab you already know and import that as a list to Transcrobes. Importing let’s you bootstrap your account so the system learns what you know. If your current/previous application doesn’t allow that, or you are just getting started learning with software, then head to the Listrobes input tool and spend as much time as you can be bothered telling the system what words you already know. [Read More]

Learning using Transcrobes

As a teenager (and later), you aren’t the “blank slate” that you are when you learn your first language. You have a certain number of skills and learning habits that need to be taken advantage of if you want to learn a language most efficiently. Transcrobes has already implemented a number of functionalities that help you better manage the activities that are most valuable and useful for learning. Development of features is driven by science - unfortunately something that is often lacking in both mandatory schooling and software designed for language learning. [Read More]

Live Server Experiment

After many months of intense focus on developing new features and making the system faster and more scalable, the system is now ready for real learners, adding real value for language learners who wish to super-charge their learning in a fun and efficient way. Experimental platform The Meaningful IO research project experimental server is now live, and accepting signups for learners of Mandarin Chinese who are willing to participate in the research project. [Read More]

Engineering L2

Design principles for reality

This post is in a series of posts discussing issues of a “new” theory of SLA - Meaningful IO. Theorising vs Doing One of the things that you learn “down in the trenches”, doing actual software engineering on real world problems, is that theories about the world almost always can’t just be implemented as-is in software and solve a problem in an optimal way. Theorising of any kind necessarily needs to to abstract away some of the details and will focus on a particular aspect or set of aspects. [Read More]

Anton's PhD thesis

I (Anton) have been accepted to develop the ideas in this project for a PhD thesis at the Linguistics and Translation department of the City University of Hong Kong from September 2019. While it is not certain that this particular code-base will be developed for the PhD, the PhD work will be open source, and there is no particular reason for it not to build on the existing code. This means I will be working on this (or an equivalent) project for the next four years! [Read More]

English support

UPDATE: 2020-12-01 English support has been temporarily removed in order to focus fully on Chinese. If there is significant community interest, that could always change. Preliminary support for Chinese learners of English has been implemented and is now available for testing. As expected, integrating a second language pair required basically rewriting the entire system to be able to handle any input and output language. That said, the inflectional characteristics of English are a new challenge for the system and have not been fully integrated. [Read More]

Migrating to Kubernetes

A square peg in a roundish hole

This is Part 3 of a mini-series of my experiences getting Transcrobes migrated from separate server apps on a 4gig Alibaba Cloud VM to microk8s on the same VM, and automating (almost) everything with Gitlab CI. Check out Part 1 here and Part 2 here. Kubernetes Migration Woes nginx-ingress I was coming from a setup where I knew the component parts (Apache + mod_wsgi) pretty well. I haven’t been working on high-load web stuff for over 8 years now, and always thought that nginx was a lot of hype for not much benefit. [Read More]