Hello,
This is my 19th 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 31% 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
This is my 7th contribution to the folder buffer.md on v6 and I’m finally reaching its end. The Spanish team started to translate Node’s files of the v10, now we’re progressively moving to the version 6. Since I’m not a guru in computer science I had to read a lot before I could feel confident enough to translate the content of this folder, which is something you must regularly do while translating Node.js since it has many specific terms related to computer science.
buffer.md talks about the Buffer class and all of its functions inside Node.js. This time I translated the methods: buf.length, buf.readDoubleBE(offset[, noAssert]), buf.readDoubleLE(offset[, noAssert]), buf.readFloatBE(offset[, noAssert]), buf.readFloatLE(offset[, noAssert]), buf.readInt8(offset[, noAssert]), buf.readInt16BE(offset[, noAssert]), buf.readInt32BE(offset[, noAssert]), buf.slice([start[, end]]), buf.swap16(), and buf.values().
In my previous contribution I explained how streams are basically a sequence of data (normally bytes) being moved from one point to another over time. Binary data is the only type of data that can be executed by a computer and it’s represented in combinations of ones and zeros. And a Buffer is a portion of the memory that stores a stream that's then collected and stored in variables inside the same Buffer.
So the Buffer class is basically a “waiting area” for information! When Node.js receives data that’s not ready to be processed yet it will send it to the Buffer and store it there until it’s ready.
Like I’ve mentioned before, inside this folder there are all the Buffer methods with a brief explanation of how to use them, the values you have to use to active the method and an example of the code. Once you understand how they work it gets easier to translate the text.
This time there were several methods that were very simple and easy to understand, such as:
Just like you can see in the picture, this method returns an iterator object that contains the value of each byte inside a buffer object. In case you’re wondering, an iterator is an object that represents a stream of data, and that is able to traverse through elements in a container, normally lists and sets.
Basically, an iterator allows programmers to process every element of a container while at the same time isolates the user from the internal structure of the container.
This short section could not be translated to Spanish because both sentences represent code values that belong to Node.js, therefore they would lose their true meaning and function if translated.
In simple words, this method writes the specified string into a buffer at the specified position, according to the character encoding.
Inside the length
parameter one must put the number of bytes to write into the buffer and lastly, it will return an integer that represents the number of bytes written.
Here’s how I translated that paragraph:
ts purpose is to extract parts of a string and return the extracted parts inside a new string. The start
parameter represents the position where to begin the extraction, and the end
parameter represents where to finish the extraction. According to the documentation of Node.js, if end
it’s not specified this method will select all the characters from the start-position to the end of the string.
Here’s how I translated that paragraph:
There was one particular term that was mentioned several time during this contribution: JSON. It stands for “JavaScript Object Notation” and it’s used to transmit human-readable data objects and array data types between servers and web applications. It was first conceived in 2000 by Douglas Crockford and it was derived from JavaScript.
Here are some other translation samples:
English:
Setting noAssert
to true allows offset
to be beyond the end of buf
, but the resulting behavior is undefined.
Spanish:
Configurar noAssert
a true permite que offset
esté más allá del final de buf
, pero el comportamiento resultante es indefinido.
English:
Reads byteLength
number of bytes from buf
at the specified offset
and interprets the result as an unsigned integer. Supports up to 48 bits of accuracy.
Spanish:
Lee el número de bytes byteLength
desde buf
en el offset
especificado e interpreta el resultado como un entero sin signo. Soporta hasta 48 bits de precisión.
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 1143 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
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Thank you for your review, @alejohannes! Keep up the good work!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
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
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
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!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
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
Do not miss the last post from @steemitboard:
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit