Hello,
This is my 21st contribution to Node.js. I’m currently translating this project into Spanish, along with an awesome group of translators and moderators from Utopian + Da Vinci, we are doing our best to do everything correctly. If you are interested in open-source projects, I encourage you to keep reading.
Node.js is a very extensive project, it may seem impossible to translate it completely, but the Spanish team is working really and we are slowly making progress. It’s currently at 33% on Crowdin:
Repository
https://github.com/nodejs/i18n
Project Details
Node.js is an open-source, cross-platform JavaScript run-time environment that executes JavaScript code outside of a browser. It achieves low latency and high throughput by taking a “non-blocking” approach to serving requests. Basically, Node.js can open, create, read, write, close and delete files on a server, using JavaScript. It also includes tasks that will be executed on certain servers.
I know it can be a bit confusing at first, so let me explain it to you in simpler words:
Let’s say you want to build a software to keep record of your company’s earnings. A feature where viewing your monthly earnings is updated live can be very useful. In that way, if one of your sales employees is busy, another employee could still be seeing the updates live, without reloading the page.
This has been done before using another technologies. However, Node.js is way faster and better. So, yes it is the best option for developers who want to build real-time applications where both the server and the client can exchange data freely with no restrictions.
Contribution Specifications
Being such an important project, Node.js is being translated to several languages so it can reach many people around the world. As it for me, I am contributing to the Spanish language.
Translation Overview
During this contribution I continued working on “child_process” inside the version 6.
Basically, there are some operating systems that need to execute multiple tasks at the same time, so they have to create multiple processes in order to work properly, because one process in one CPU is not going to be enough to handle the increasing workload of an application.
A parent process can create many child processes and if a process does not have a parent, it is assumed to be created directly by the kernel, which is a computer program that has control over everything in the system, so it’s like the heart of the OS.
The child_process module in Node.js has several purposes: it allows the user to access the Operating System functionalities by running any system command, as well as controlling the arguments to be passed to the underlying OS command. It also enable us to control the input stream of an specified child process and listen to its output stream.
The module child_process has three ways to create a child process: [child_process.spawn()][], [child_process.fork()][], [child_process.exec()]. They all return a ChildProcess instance and they implement the Node.js [EventEmitter][]
API, allowing the parent process to register listener functions that are called.
This time, I translated the methods: child_process.exec(command[, options][, callback]), child_process.execFile(file[, args][, options][, callback]), child_process.fork(modulePath[, args][, options]) and child_process.spawn(command[, args][, options]). Each method contains an explanation of its parameters and the values you must use to activate the method. I’ll explain some of them...
Unlike the previous folder I translated, this time the paragraphs are way longer:
The function child_process.exec spawns a shell then executes the command within that shell, buffering any generated output. It allows the user to execute more than one command on a shell. When using exec, if we need to pass arguments to the command, they should be part of the whole command string.
Alright, that was very interesting, but…What is a shell?
A shell is a software interface for an operating system that provides users access to the kernel's services. On some systems, the shell is just an environment where applications can run in protected memory space, others just run everything inside the shell. Node.js allows users to spawn shells in order to direct operations through computer commands.
The word “shell” was left untranslated since it’s considered a universal term in the computer science scope.
Here is my translation of the paragraph:
This is the next function:
This function is very similar to the previous one, except that it does not spawn a shell. Rather, the specified executable file is spawned directly as a new process making it slightly more efficient than [child_process.exec()][].
According to Node’s documentation, it executes an external application, given optional arguments and callback with the buffered output after the application exits.
Here is my translation of the paragraph:
These are the sites I used as reference:
Other translation samples:
English:
The options
argument may be passed as the second argument to customize how the process is spawned.
Spanish:
El argumento options
puede ser pasado como el segundo argumento para personalizar cómo es generado el proceso.
English:
If a callback
function is provided, it is called with the arguments (error, stdout, stderr)
. On success, error
will be null
. On error, error
will be an instance of [Error][]
.
Spanish:
Si se proporciona una función callback
, es llamada con los argumentos (error, stdout, stderr)
. Si tiene éxito, error
será null
. Si falla, error
será una instancia de [Error][].
Some words and code values were left untranslated on purpose, otherwise, their true meaning would be lost in the translation.
Languages
Source Language: English
Translated Language: Spanish
I have worked as a translator for the project Da Vinci Polyglot and I am currently working as a language moderator for the Utopian + Da Vinci translation category.
And of course, I am part of the Spanish team!
Word Count
I translated 1108 words on this contribution.
Greetings, @marugy99. Thanks for submitting your contribution!
Congratulations on this contribution!
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, @alejohannes! Keep up the good work!
Hi @marugy99!
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
Hey, @marugy99!
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!
Congratulations @marugy99! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP