The Programmer of the Future is a Linguist
With the launch of our newest white paper “Semantic Technology: What it Means and Why it Matters” we interviewed one of the creators of our flagship Cogito semantic technology, Marco Giorgini. This is the second of three posts.
Cogito is the result of an extraordinary combination of linguistics and computer science: What you need to integrate these two disciplines that seem so different?
Marco Giorgini: I think there are two different answers to this question. If we talk about how a programmer can work in this field–where we try to handle letters, or texts, with mathematics—the short answer is using logic, combined with the ability to discover patterns and structures where they’re hidden, and with the boldness to modify the rules when a stable architecture is needed.
Dealing with unstructured data with natural language means dealing with ambiguity and errors. The best software is one that can reduce them and/or make them less relevant for some kind of elaboration. But we can’t have it all. A good programmer in this sector is one who can work with texts, knowing it’s impossible to fully understand them, but also knowing that it is possible to understand them enough to do something better, something that can be used better on a higher level. That’s the way to go.
Instead, if the question is about linguists, about how a linguist can work with a semantic software to create a use for semantic data—to make semantic rules for discovering, classifying and organizing content, well, the answer is logic too, but in this case you have to consider it more as creative thinking, than mathematical logic.
A linguist is, in my opinion, one of the major programming roles of the future, and its linking position is a key one. Core programmers like me will probably always be needed, but linguists (able to work with specific programming languages that focus on text structure, text elements and meanings, more than bytes and arrays) will be the ones who will make the “information for everyone” future actually happen.
A good linguist, in our area, must be able to think outside the box, to understand how text bends toward the machine (because it’s true, we have to make it crouch in order to get its juice), without losing focus on the goal. They work in a fuzzy environment, with error levels, but it’s often their merit when a semantic black box works like a charm for a specific purpose.
Connect with Marco on Twitter @marcogiorgini