Multilingual Coding

So I’m with a relatively small team. That means that I get to do things I wasn’t strictly hired to do. I do tech support, customer support, I’m technically a Front-end Developer but now am getting pretty strong with my Back-end skills. All-in-all working with a small team is a great way to explore your talents.

This week’s project was to build in functionality to a legacy site built in ColdFusion.

I haven’t touched ColdFusion before, but how hard could it be? One of the great things about coding is that the development community, for the most part, in pretty much every language shares code and solutions to problems with each other. I taught myself to code by digging into code, and looking up online what I didn’t understand. So figuring out vocabulary and syntax wasn’t too difficult and while it took somewhat longer to code a solution I was able to add the functionality pretty easily.

Afterwards I was trying to think about what that experience was like and I described it as someone saying: “Oh you know Latin? Great! Why don’t you add a chapter or two to Dante’s Divine Comedy. Latin is like Italian, right?” Please understand, I’m not complaining at all. I just thought that it was somewhat funny. And please don’t think I’m actually inferring that PHP is the “Latin” of programming languages.

But it got me thinking. How different is coding in a “foreign” language than writing in one?

If in PHP the condition starts with “if” in ColdFusion it’s “” that so far off from “si” (Latin) vs. “se” (Itallian)?

Well, one thing that helped me quite a bit is layout. When looking at someone else’s code, there is not much that is more beautiful than when it is properly formatted: indentations, tabulations, line breaks. You’d get no such help in Dante’s Inferno. Sure there’s punctuation and paragraph breaks. But there is something so visually pleasing about well formatted code.

Another big difference is the compiler. When I write code, I write code I write, reload, and if it doesn’t break I keep on writing. It’s because of that I avoid coding live on the production server at all costs. But it’s wonderful getting immediate feedback whether my code works or not.

As far as I know there aren’t compilers in Italian.

Finally, computer languages have a limited vocabulary. Per “app” you write the vocabulary as you go along whether it is variables or functions. If you are looking at someone else’s code and you don’t understand a “word” or “phrase” if you can’t find it immediately online it’s safe to assume that you’ll find it with a global search through your code.

With our Divine Comedy you’ll have your trusty dictionary.