Thank you from Blockly!

Thank you from Blockly!

I'd like to thank you for your recent contributions to Blockly. I see you translated some of the most challenging messages and that you're a former programming instructor. I really appreciate your applying your expertise to translating Blockly.

I've added you to our credits page. Please let me know if you'd like to be referenced differently or have any questions.

Espertus (talk)01:36, 24 October 2013

Dear Espertus,

Thank you very much for your kind words. 

Actually I didn't find my nick on the credit page but it's no matter. I was happy to find this project, which is a) open source b) supported by a solid patron, c) intended for internationalization from the very beginning, d) web-based. Should plans toward professional platform succeed, it would be enormous bust for Blockly as an educational tool, though it's already very promising. I look forward.

-MS (my friends call me Misha, if you don't mind)

MS (talk)06:12, 24 October 2013

Misha, thanks for the kind words; it's clear you understand what we're trying to accomplish.

I indeed forgot to press save on the credits page until this morning. I used your full name, but I'd be happy to change.

Please call me Ellen.

Espertus (talk)16:53, 24 October 2013

Ellen, looks like it's done for Russian. I wonder if there is any editorial procedure after that, since style and terminology could be different from different contributors.

What is approach toward tutorials translation? And, in long term, is Google planning some international activities for Blockly users (conferences, competitions, etc). Any support of "Blockly community managers"? I think about next step in Russian space. Best, Misha

MS (talk)07:07, 26 October 2013

Thank you so much! There is no editorial procedure except for what volunteers take on. You could choose to review the translations and change inconsistent ones. As for style, please enforce brief and informal.

No, Google is not planning any activities. We do have a [ Google+ page for users] and a Google group for developers. Would you like to create an online community of translators? That would be great!

Espertus (talk)15:45, 26 October 2013

Thank you, Ellen. I have to take care about editorial work and community. I thought about community of Russian users but translators could be a part of such community. Regarding "brief and informal" it's easier to say than enforce :-). Whereas some content intended for very beginners, other is related to quite formal mathematical and programming concepts. My approach is using most expressive and informal words in situations which are not in area of established formality but otherwise I feel obliged to follow formal approach as much as I could. For example, I can't afford 'function without output'. As we would say in Russia, "function even in Africa is function": function by definition, both in math and programming, returns a value. Sure, in programming you have a trick to define function which always returns null but it would still return something. So, I used 'procedure' there. I'm not fond of teaching 'somehow', with future 're-teaching'. Programming is not just a toy but mass profession, and kids, as soon as they pass initial barrier, should be used to formality and strictness, imho.

MS (talk)16:39, 26 October 2013

We have debated at length whether to use "procedure" or "function" in English, with disagreement and tears. This is indeed a contentious area.

The Blockly philosophy is to make things as simple as possible for beginners, even if that will confuse experts or cause trouble later. That's why we use 1-based indexing, for example.

Espertus (talk)19:50, 26 October 2013

I wish I knew in advance about the philosophy: I had to develop my approach myself. I share that philosophy but only to some extent. I'm not a native English speaker, and function and procedure in English looks for me equally abstract, and 'function without output' is simply formally incorrect. I wonder how function could win. I also would like to ask your opinion about some decisions I made, which were actually not in line with the philosophy. First, I tried to change English 1.0 to Russian 1,0 but somehow that appeared again as untranslated. Thus, I decided there were some limits for localization, and I decided to keep special characters, according to English tradition. Along with decimal ',', I did avoid Russian sign for #. Is it allowed to replace it?

MS (talk)20:34, 26 October 2013

Sorry. I will modify the instructions page to make it clearer.

Please do use the Russian replacement for "#" and anything else that will make using Blockly easier for beginners.

I don't think it's possible for a translator to replace periods with commas in numbers. Does Russian use a comma where English uses a decimal point?

We added support for having a sign after ordinal numbers for Hungarian. Let me know if it is needed for Russian.

Thank you for all of the care you are taking.

Espertus (talk)21:09, 26 October 2013

Not sure about ordinal numbers. To the best of my knowledge, it's quite abstract generalization of natural numbers, and such notion should not be presented in general programming system at all. ... Just get it! You are talking about regular meaning of the word, not about special math term (Hungary is famous for math school, and I was afraid they tried to overload the system with math). We have № before ordinal numbers but it's not math sign but rather bureaucratic. I believe it may serve for replacement of #. Probably in some context we may not need special mark for ordinals, I need a fresh look.

And Yes, we use comma in place of decimal point in English. Another place where I was probably mistaken: I followed English in expressions like if block, whereas in Russian it would be more natural to quote "if". I even changed somebody's translations.

MS (talk)23:05, 26 October 2013

Ellen, one more technical question: what can I do with sign for division: it's way too domestic, we use : instead. And more widely accepted / may work internationally I believe.

MS (talk)19:43, 27 October 2013

Thanks for mentioning this. Just to make sure I have it right, Russian uses a colon (":") where English uses "÷"?

I will make that settable per language.

Ellen Spertus (talk)20:26, 27 October 2013

Russian use : in arithmetic, while in algebra and informatics there is /

MS (talk)21:31, 27 October 2013

Check this out on our test server:

Thanks again!

Ellen Spertus (talk)20:32, 27 October 2013

Great! I'll take a closer look later. Question: is to possible to have 2 words instead of do? For if and repeat there is one form in Russian, while for while another form would be more suitable. If we have to choose, I need another thought.

MS (talk)21:29, 27 October 2013

Absolutely! You can use multiple words where English uses one word, or vice versa. Keep in mind, though, our preference for short words.

Ellen Spertus (talk)21:44, 27 October 2013

I am confused while repeat until. Classical until cycle always executed for the first time, and condition checked at the bottom. What is described in Blockly (repeat while false) is another story: it should be named, from my prospective, repeat while not

MS (talk)00:18, 28 October 2013

I see your point. I wasn't there for the block's creation, but my guess is that it was designed to be easy for the beginner to understand, even if that's confusing to the experienced programmer, as discussed here.

Ellen Spertus (talk)02:23, 28 October 2013

Thank you. I refractored Code, except Variables, hope to finish it tomorrow.

MS (talk)05:56, 28 October 2013

Ellen, I have finished. I am more or less confident but I would appreciate if you allow me me to take another look before publishing.


MS (talk)05:22, 29 October 2013

I mean, look at result of modification

MS (talk)05:58, 29 October 2013

I'm afraid I'm partly at the mercy of my translatewiki contacts, who decide when to export translations. I can request another export but don't know for sure when it will happen. Is it okay if the current version goes live without any public announcements? That would give you a chance to look it over before many people saw it.

Ellen Spertus (talk)06:14, 29 October 2013

It went live without your newest changes being exported, I'm afraid. You can see the Russian code app here. I won't make a public announcement yet, because I know you want more changes.

Thanks again!

Ellen Spertus (talk)04:29, 30 October 2013

It's not yet the latest version. So, I'm waiting.

MS (talk)04:55, 30 October 2013

I see, it's published. Good. I'll take another look? and, probably, a bit more correction, though mainly it should be now more or less stable.

For successful translation it's important to have some model of the subject. I prepared some memo about translation of Core, my way. As you'll have a lot more translations, you maybe can extract some ideas for future translators from my notes.


"Physical" appearance: program consists of blocks and inputs. Blocks can be joint together, forming structure of a program. Blocks may have "slots?". Some slots to be fulfilled with blocks, some of them - with inputs. Input is a sort of block which can't be used in place of normal block but may have own slots to include other inputs. Input slots may appear differently in blocks: see context menu Inline Inputs/External Inputs. (No sure what to say about segments) [following the logic above, I would name functions as 'block f' and 'input f'. It could be reasonable to have in context menu for set explicit 'create input', and for item "create block set" Logical appearance; Every input has a value. Variable is an input, which value may be changed during program execution. Condition is a value of logical input for if if-else, while. Item is a unit of data structure, like list. Commands (statements) - actions, represented by a set of blocks.

Style of wording. Block text: key word is imperative. Context menu - mostly imperatives. Toolip for block, description: answers on question what block does. Toolip for block, tip: advises user what to do

MS (talk)04:45, 30 October 2013

I just got the requested push of translations. I'll get that out ASAP.

Thanks for the suggested information for future translators. I'm curious whether you think that information is not present on Translating:Blockly or that I shouldn't expect translators to read the whole page.

Ellen Spertus (talk)17:38, 30 October 2013

Regarding my 'notes', I didn't mean anything particularly, it was sharing 'just in case'. If nothing there provokes you to change or add anything in the text for translator, it's OK.

In Russian Code I see now just mess, I don't know what that means.

MS (talk)04:59, 31 October 2013

What do you mean by just seeing mess?

Ellen Spertus (talk)03:25, 1 November 2013

I mean, I don't see blocks to choose on Russian Code page I tried from different computers with different browsers: result is still the same. At the same time English Code is OK, so problem looks specific to Russian page. I see, there was an important modification: localized versions got their own url, which is very good, but probably during that reconstruction something went wrong.

MS (talk)03:50, 1 November 2013

Yikes! I'll fix right away.

Ellen Spertus (talk)16:52, 1 November 2013

Post-mortem: This was caused by a "\n" in CONTROLS_IF_TOOLTIP3. I'll modify my scripts to detect this and will improve my testing.

I've sent my fix for review.

Ellen Spertus (talk)17:01, 1 November 2013

On Russian Turtle page main menu is moving up with each action

MS (talk)06:50, 2 November 2013

Thanks for telling me. I couldn't duplicate this behavior. Could you say more?

FYI, next to be translated is this page.

Do you have any public presence I can link to when announcing the Russian translation?

Ellen Spertus (talk)22:59, 2 November 2013

Turtle: click on Colour - whole menu is moving up click on Logic - again moving up, etc.

Public presence... not sure what you mean. Place of work, titles, organizations I represent, or what?

MS (talk)01:53, 3 November 2013

Public presence: If you have a blog, Google+ page, etc., that you'd like for me to link to.

Thanks for the details on the turtle bug. I'll check right away.

Ellen Spertus (talk)18:09, 3 November 2013

Turtle: maybe because I see result on low resolution (vertical <= 800 pixels).

MS (talk)01:57, 3 November 2013

I'm not able to duplicate this, even with the hint about window size. Could you tell me what browsers it occurs with? Also, could it just be scrolling? Can you get the window back to its original appearance by scrolling?

If email is easier, my address is my name

Thanks again.

Ellen Spertus (talk)18:15, 3 November 2013

i finished changes for Core (plus few changes for applications). That's all I wanted.

MS (talk)02:59, 3 November 2013

Dear Ellen, thanks a lot. I love that. In few places there are maybe some minor issues (I saw a couple # still there) but generally ... I glad to see that. I'll do final cleaning during weekend. Thank you, Misha

MS (talk)06:06, 2 November 2013

regarding division: in arithmetic : is used, in algebra /

MS (talk)21:37, 27 October 2013