Github Repository
https://github.com/nodejs/i18n
Project Details
By definition, Node.js is a Java Runtime Environment (JRE). But it is more than just that. While common JREs function as machine backups that allow users to smoothly run JavaScript on their browsers and applications, this open-source project functions as an app that manages Java code by itself. It's practical uses for developers are endless. It grants an extraordinarily versatile platform for designing code, programs, websites and other applications. And that isn't all: Node provides a virtual facility for testing the proper work of Java-driven programs and devices –and their planned updates–, helping to find bugs, solve errors, fix code and vastly improving their performance.
I believe all the amazing uses of Node are to be considered by themselves and I declare myself a fan of the project. But, besides, I support it for its functionality as a medium for bringing to reality countless creations that can be as good as Node itself. If you can dream it –and code it in JavaScript–, then your imagination is the only limit!The open translation of Node to thirty-three (33) languages proves the advantages of open-source projects when it comes to diversification of knowledge and worldwide spreading of useful tools.
Ahead, there is the link of the program's webpage:
Contribution Specifications
Translation Overview
This is my 40th contribution to Node.js as a translator. For this collaboration, I continued my previous work on Node.js’ version 6 files: I finished the translation of globals.md, which contains the specifications of the use of JavaScript global objects, I fully translated timers.md, containing the instructions for the correct use of timers, and I started working on os.md, explaining the use of operative system-specific features within the program.
First off, I’ll talk about the contents that I finished translating in globals.md. As I explained in my previous contribution, this file refers to the way global objects work within Node.js, in contrast with local objects. Objects, strings, functions and references constitute the list of elements that are addressed here. These are:
Buffer
class (function): It is used to handle binary data. More details can be found in the buffer section.\_\_dirname
(string): Refers to the name of the directory of the current module. Works the same aspath.dirname()
of_filename
.\_\_filename
(string): Refers to the name of the file of the current module file, id est, its resolved absolute path.Timer functions:
clearImmediate(immediateObject)
.clearInterval(intervalObject)
clearTimeout(timeoutObject)
setImmediate(callback[, ...args])
setInterval(callback, delay[, ...args])
setTimeout(callback, delay[, ...args])
console
(object): it is used to print code to stdout and stderr.exports
(reference): It is a shortcut to module.exports. Even though, it’s necessary to check out the module system documentation to know at which times suits the use ofexports
and when it’s appropriate to go formodule.exports
.global
(object): this is the global namespace object. Here, it must be remembered that local and global objects work differently in web browsers as they do in Node.js. This is explained in the translated file like this:
In browsers, the top-level scope is the global scope. That means that in browsers if you're in the global scope var something will define a global variable. In Node.js this is different. The top-level scope is not the global scope; var something inside an Node.js module will be local to that module.
module
(object): It is a reference to the current module.process
(object): This is the process object.require()
(function): It is used to require modules.require.cache (object): This is the object where modules are cached in when
require()
is used on them.require.extensions
(object): It is already deprecated, but is still in use by many users. It instructsrequire()
on how to handle certain file extension. It’s still used for its utility for loading non-JavaScript modules into Node.js, compiling them on-demand.require.resolve()
(function): It is used to search for the location of a module through the internal machinery ofrequire()
. Once said module is found, if it is, this function doesn’t load it, but returns the resolved filename.
And this the way we break down Node.js’ global objects for you!
(I hope this pun, with the reference to videogame items and objects, didn’t get lost). 😉 🎮 👾 !
Now, let’s talk a bit about timers. timers.md explains the uses of timers, how to program them and the way different functions related to them work.
What are timers, then? As defined in the file, timers are functions that have their use…
(...) for scheduling functions to be called at some future period of time.
Technically, it could even be…
Continuing what I was explaining before: that is to say, through timers a continuous course of actions can be programmed to be followed step by step, triggering new functions as certain objectives are reached. This saves a lot of time and efforts to the programmers, who can keep their minds in other things while their tasks are being executed… Very important things…
Finally, let’s chat a bit about os.md. By version 6, Node.js already had operative system-specific features for Windows, UNIX and MacOS. The compliance with POSIX specifications has helped Node.js to keep developing along the years unaffected by the growing differences between operative systems.
Till’ this moment, I have translated the following features of the OS
module:
os.EOL
, referring the End Of Line markers for Windows and UNIX-os.arch()
, referring the architecture determination of the CPUs.os.constants
, referring the used OS specific constants.os.cpus
, referring the information of the used OS’ logical core.os.endianness()
, referring the “endianness” of the used CPU, Big Endian (BE) or Little Endian (LE).os.freemem()
, referring the amount of free system memory.os.homedir()
, referring the current home directory.os.hostname()
, referring the OS host.os.loadavg()
, referring the load averages for 1, 5 and 15 minutes.
You can find out more about the aforementioned concepts here:
- https://javascript.info/global-object
- https://www.w3schools.com/js/js_scope.asp
- https://developer.mozilla.org/en-US/docs/Glossary/Global_object
- https://docs.oracle.com/javase/7/docs/api/java/util/Timer.html
- https://www.webopedia.com/TERM/T/time_out.html
- https://www.journaldev.com/1050/java-timer-timertask-example
- https://www.lifewire.com/operating-systems-2625912
- https://www.webopedia.com/TERM/O/operating_system.html
- https://whatis.techtarget.com/definition/POSIX-Portable-Operating-System-Interface
Thanks for taking your time to read! Expect more information and tips on the next report :)
Work example #01:
English:
References to __filename
within b.js
will return /Users/mjr/app/node_modules/b/b.js
while references to __filename
within a.js
will return /Users/mjr/app/a.js
.
Spanish:
Las referencias a __filename
dentro de b.js
devolverán /Users/mjr/app/node_modules/b/b.js
, mientras que las referencias a __filename
dentro de a.js
devolverán /Users/mjr/app/a.js
.
Work example #02:
English:
By default, when a timer is scheduled using either [setTimeout()][]
or [setInterval()][]
, the Node.js event loop will continue running as long as the timer is active.
Spanish:
Por defecto, cuando se programa un temporizador utilizando [setTimeout()][]
o [setInterval()][]
, el bucle de eventos de Node.js continuará ejecutándose mientras dicho temporizador esté activo.
Work example #03:
English:
Returns an object containing commonly used operating system specific constants for error codes, process signals, and so on.
Spanish:
Devuelve un objeto que contiene las constantes específicas del sistema operativo comúnmente utilizadas para códigos de error, señales de procesos, etc.
Languages
This translation was made from English to Spanish.
I got plenty experience translating and proofreading this project as an Utopian contributor. I collaborate here as translator and Language Moderator of the Da-Vinci/Utopian Spanish translation team. Besides this project, I have experience translating and proofreading The Curious Expedition, Ancap-ch, Byteball Wiki, OroCrm and BiglyBT.
Word Count
- The amount of words translated in this contribution is: 1,250.
Note: This number is the result of subtracting the complete sum of non-translatable content to the word-count Crowdin has done for the period in which this contribution was done.
- The total amount of words translated in this project (as a Da-vinci/Utopian translator) is: 49,668.
Previous Translations of the Project
- Contribution N'01. Submitted on September 13th, 2018.
- Contribution N'02. Submitted on September 15th, 2018.
- Contribution N'03. Submitted on September 17th, 2018.
- Contribution N'04. Submitted on September 19th, 2018.
- Contribution N'05. Submitted on September 21th, 2018.
- Contribution N'06. Submitted on September 22th, 2018.
- Contribution N'07. Submitted on September 23th, 2018.
- Contribution N'08. Submitted on October 1st, 2018.
- Contribution N'09. Submitted on October 8th, 2018.
- Contribution N'10. Submitted on October 14th, 2018.
- Contribution N'11. Submitted on October 15th, 2018.
- Contribution N'12. Submitted on October 18th, 2018.
- Contribution N'13. Submitted on October 21st, 2018.
- Contribution N'14. Submitted on October 24th, 2018.
- Contribution N'15. Submitted on October 27th, 2018.
- Contribution N'16. Submitted on October 31th, 2018.
- Contribution N'17. Submitted on November 3rd, 2018.
- Contribution N'18. Submitted on November 4th, 2018.
- Contribution N'19. Submitted on November 6th, 2018.
- Contribution N'20. Submitted on November 17th, 2018.
- Contribution N'21. Submitted on November 24th, 2018.
- Contribution N'22. Submitted on December 7th, 2018.
- Contribution N'23. Submitted on December 15th, 2018.
- Contribution N'24. Submitted on December 20th, 2018.
- Contribution N'25. Submitted on December 26th, 2018.
- Contribution N'26. Submitted on December 28th, 2018.
- Contribution N'27. Submitted on December 30th, 2018.
- Contribution N'28. Submitted on January 9th, 2019.
- Contribution N'29. Submitted on January 10th, 2019.
- Contribution N'30. Submitted on January 12th, 2019.
- Contribution N'31. Submitted on January 18th, 2019.
- Contribution N'32. Submitted on January 19th, 2019.
- Contribution N'33. Submitted on January 24th, 2019.
- Contribution N'34. Submitted on January 28th, 2019.
- Contribution N’35. Submitted on January 31st, 2019.
- Contribution N’36. Submitted on March 3rd, 2019.
- Contribution N’37. Submitted on March 6th, 2019.
- Contribution N’38. Submitted on April 3rd, 2019.
- Contribution N’39. Submitted on April 16th, 2019.
Proof of Authorship
This translation was made on March 16th, 2019. You can check the translation record in my Crowdin account [here], the activity on the project's Crowdin [here] and a summary of recent additions to the project [here].
Hi @alejohannes,
Thank you for submitting your contribution!
This is a very interesting project that contains many code values and terms related to computer science. Its difficulty relies on the fact that we must pay a lot of attention to the code in order to deliver the most accurate translation possible.
The overall presentation of your post is great, it is well written and formatted, includes all the basic details, useful examples and concepts.
You delivered an accurate translation. You used the correct vocabulary and you were careful with code values that should not be translated in order to make sure the text keeps its true meaning.
Keep up the good work :)
Your contribution has been evaluated according to Utopian policies and guidelines, as well as a predefined set of questions pertaining to the category.
To view those questions and the relevant answers related to your post, click here.
Chat with us on Discord
Thank you for your review, @marugy99! Keep up the good work!
Hi @alejohannes!
Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your post is eligible for our upvote, thanks to our collaboration with @utopian-io!
Feel free to join our @steem-ua Discord server
Congratulations @alejohannes! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
To support your work, I also upvoted your post!
Vote for @Steemitboard as a witness to get one more award and increased upvotes!
Hey, @alejohannes!
Thanks for contributing on Utopian.
We’re already looking forward to your next contribution!
Get higher incentives and support Utopian.io!
Simply set @utopian.pay as a 5% (or higher) payout beneficiary on your contribution post (via SteemPlus or Steeditor).
Want to chat? Join us on Discord https://discord.gg/h52nFrV.
Vote for Utopian Witness!