You can have a utility method that converts timestamp to readable date, rather than sending more data over network, which will eat up bandwidth for other resources and also impact data transfer speeds, especially when you’re dealing with millions of requests. Software engineering is about frugality not developer’s data readability.
Hey man, I really liked the way you touched upon and clarified some of the deep topics in backend implementation. It was a really great learning experience for a lot of budding system developers like me where we not only restrict ourselves to just JS as a language choice. Keep making more of such videos.
Hey codedamn, As you said in this video if you can choose some other serverside language you would have choose something other than Nodejs. Can you please tell me which one would you have preferred and used.
That is not really what he said. He said that if you think about performance, then nodejs isn't the right option. In this case you can consider languages such as Go, Rust, or even C/C++
What is that Dev talking about? If he wants performance he should write everything in C! Better yet, he needs to write everything in Assembly! Better yet! He needs to be working with raw bits! This conversation is silly when you really take it to the extreme, common practices have become that because groups of Developers have reach a consensus on the trade-offs.
Why u say nodejs as a "bad backend language"? Is it because of performance or what's the reason? Please explain it in a video, your statement is creating confusion. ! If nodejs is bad then what is a good "backend" language, Go, rust ?? ... Please make a video explaining this , your statement is creating confusion
He is talking about performance, Go and Rust are much faster but their development community is not big as node and are not easy to learn like nodeJs and its very hard to find Go and Rust developers, so normaly company stick to nodeJs. Its all about availabity of resources.
I agree with that C++ dev, but the thing is again like you have mentioned the usability and the simplicity JSON brings to normal devs is huge. I wish there was a world where everything was as efficient as that dev mentioned and C was the only programming language that exists, but that's not the reality (I would want that to happen but...), so let's just move on 😅
JSON is schemaless and optimized for human readability (even says so right in the spec in the first paragraph) not machines… So what this C++ engineer is angry about, is that people use JSON for huge API calls instead of i.e. a binary format like prototype buffers or avro. So he is right, just not about JSON. Found that web developers don’t even know what a transport protocol is. And it is great, that this is possible nowadays
we all can relate to their frustration. It's like writing a program and you support a feature which is a pain to maintain/ just makes your performance slow.
The person obviously hasn't written and maintained a binary format with de/serialization that needed to be consumed on a client with a JS runtime (i.e. browser). Including something like protobuf on web is too heavy and slow compared to JSON which will be se/deserialized natively by the browser/runtime. You don't win anything by having faster bandwidth but slower processing time and vice versa. It's tradeoffs. Fun fact; Google themselves has tried to use protos (v1) for a web app, and it was a total failure. They ended up sending protos in JSON format to the web app, and use protos internally between backends.
The benefit of JSON and especially iso timestamp is its very human readable
1000 percent aggre with you
You can have a utility method that converts timestamp to readable date, rather than sending more data over network, which will eat up bandwidth for other resources and also impact data transfer speeds, especially when you’re dealing with millions of requests. Software engineering is about frugality not developer’s data readability.
completely agree with @mayan... the network doesn't need to read yr timestamp. it only needs to be readable at the endpoints.
Hey man, I really liked the way you touched upon and clarified some of the deep topics in backend implementation. It was a really great learning experience for a lot of budding system developers like me where we not only restrict ourselves to just JS as a language choice. Keep making more of such videos.
The main advantage of ISO Strings over unix timestamp is that you can serialize DateTime and Timezone together in a standardized way.
JSON is also supported by MySQL and PostgreSQL.
If you compare JSON with XML, it's pretty apparent why people went with json.
Hey codedamn, As you said in this video if you can choose some other serverside language you would have choose something other than Nodejs. Can you please tell me which one would you have preferred and used.
That is not really what he said. He said that if you think about performance, then nodejs isn't the right option. In this case you can consider languages such as Go, Rust, or even C/C++
Hey mehul make a video about why you guys switched to postgres from mongodb
Bro, is any option to crack the leetcode premium. Because lot of problems locked
bhai kya kar rha hai tu?? why are you not adding teachers/famous youtubers courses on ur website?? vapas fundiing kaun dega tujhe
What is that Dev talking about? If he wants performance he should write everything in C! Better yet, he needs to write everything in Assembly! Better yet! He needs to be working with raw bits! This conversation is silly when you really take it to the extreme, common practices have become that because groups of Developers have reach a consensus on the trade-offs.
Its because most of the JavaScript developers dont have any CS fundamental knowledge and they polluted the whole web development eco system.
Why u say nodejs as a "bad backend language"? Is it because of performance or what's the reason? Please explain it in a video, your statement is creating confusion. ! If nodejs is bad then what is a good "backend" language, Go, rust ?? ... Please make a video explaining this , your statement is creating confusion
He is talking about performance, Go and Rust are much faster but their development community is not big as node and are not easy to learn like nodeJs and its very hard to find Go and Rust developers, so normaly company stick to nodeJs. Its all about availabity of resources.
I agree with that C++ dev, but the thing is again like you have mentioned the usability and the simplicity JSON brings to normal devs is huge. I wish there was a world where everything was as efficient as that dev mentioned and C was the only programming language that exists, but that's not the reality (I would want that to happen but...), so let's just move on 😅
JSON is schemaless and optimized for human readability (even says so right in the spec in the first paragraph) not machines… So what this C++ engineer is angry about, is that people use JSON for huge API calls instead of i.e. a binary format like prototype buffers or avro. So he is right, just not about JSON. Found that web developers don’t even know what a transport protocol is. And it is great, that this is possible nowadays
Thankyou so much it' s a very interesting and valuable video , I loved it , The Engineering side discussion 🔥
we all can relate to their frustration. It's like writing a program and you support a feature which is a pain to maintain/ just makes your performance slow.
The person obviously hasn't written and maintained a binary format with de/serialization that needed to be consumed on a client with a JS runtime (i.e. browser). Including something like protobuf on web is too heavy and slow compared to JSON which will be se/deserialized natively by the browser/runtime. You don't win anything by having faster bandwidth but slower processing time and vice versa. It's tradeoffs.
Fun fact; Google themselves has tried to use protos (v1) for a web app, and it was a total failure. They ended up sending protos in JSON format to the web app, and use protos internally between backends.