Speaking as a total ignorant from a coding perspective. But I guess that wouldn't be the hard part, considering that most of Duolinguo is just boxes and text inputs. How difficult it is to create a database of competent linguists with an efficient training who can progressively enhance your understanding of languages?
I think this heavily depends on your learning type. For some it may work for others not. What is important that it actually helps some people and these people have no foss alternative around.