Software Developer Diaries
Software Developer Diaries
  • Видео 132
  • Просмотров 1 265 569
Low-Level JavaScript Performance Best Practices (Crash Course)
Optimizing your JavaScript code can be tricky, as there are many pitfalls one can run into even before implementation. Let's learn about those in order to keep your JavaScript app performant.
======⚡⚡⚡======
Consider becoming a member of the channel by joining me ❤️
ruclips.net/channel/UCqAL_b-jUOTPjrTSNl2SNaQjoin
☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries
🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries
💼 Follow me on LinkedIn and drop me a message if you'd like: www.linkedin.com/in/gadirovgs/
💻 Also, let's connect on GitHub: github.com/gusgad
📚 Resources:
Original article: romgrk.com/posts/optimizing-javascript
JavaScript Memory Model: www.zhenghao.io/...
Просмотров: 1 584

Видео

I liked ranking these Design Patterns: Singleton, Module, Adapter, Decorator
Просмотров 1,5 тыс.День назад
Design patterns such as Singleton, Adapter, and Decorator are common patterns extensively used in many programming languages including JavaScript and Node.js. We're gonna learn all about them and try to rank simultaneously. ⚡⚡⚡ ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop...
Promises have just gotten nicer! (withResolvers)
Просмотров 3,5 тыс.28 дней назад
Promise.withResolvers() lets you create Promises in a more elegant way just by calling one function. ⚡⚡⚡ Consider becoming a member of the channel by joining me ❤️ ruclips.net/channel/UCqAL_b-jUOTPjrTSNl2SNaQjoin ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop me a message i...
Figma's migration journey to TypeScript
Просмотров 1,2 тыс.Месяц назад
How did Figma rewrite it's Skew code into modern TypeScript while keeping the performance? ⚡⚡⚡ Consider becoming a member of the channel by joining me ❤️ ruclips.net/channel/UCqAL_b-jUOTPjrTSNl2SNaQjoin ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop me a message if you'd li...
I'm trying to rank Design Patterns (again): Chain of Responsibility, IIFE, Factory, DP
Просмотров 2 тыс.Месяц назад
Design patterns such as Factory, Dependency Injection, and IIFE are common patterns extensively used in many programming languages including JavaScript and Node.js. We're gonna learn all about them and try to rank simultaneously. ⚡⚡⚡ ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn an...
Microservices with Databases can be challenging...
Просмотров 17 тыс.Месяц назад
Check out Eraser: eraser.io ⚡⚡⚡ Here are 5 microservice patterns that can facilitate working with databases. Among them: Saga patter, CQRS, Even Sourcing, as well as other useful theory on database transactions and Event-Driven Architecture. ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on Lin...
A Beginner's Guide to Event-Driven Architecture
Просмотров 5 тыс.Месяц назад
In this gentle introduction to Event-Driven Architecture, we will explore real-world use cases and main concepts such as Event Notification, CQRS, Event Sourcing, etc. We'll discuss common technologies and patterns, such as Messaging with RabbitMQ and Streaming with Kafka. ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/s...
All you need to know about "child_process" in Node.js
Просмотров 3,4 тыс.2 месяца назад
Child Process module in Node.js lets you spin up new isolated processes, which can help you in many ways. It is similar to Worker Threads in its usage but there is a big difference in its purpose. Let's learn all of that! ⚡⚡⚡ The blackboard in the video: eraser.io ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdia...
Here's what awaits beginner software developers
Просмотров 1,4 тыс.2 месяца назад
Want to learn programming and become a software developer? In this video, I'll share some things you should be aware of and as you will be progressing in your career as a developer. ⚡⚡⚡ ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop me a message if you'd like: www.linkedin....
Solving Common Backend Issues: Crashes & Downtime
Просмотров 2,1 тыс.2 месяца назад
Sometimes services crash and things happen during the downtime. How to deal in these situations and how to ensure high availability and resilience in general? ⚡⚡⚡ Consider becoming a member of the channel by joining me ❤️ ruclips.net/channel/UCqAL_b-jUOTPjrTSNl2SNaQjoin ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/soft...
Node.js Security Best Practices #3: child processes, security hardening, leaking server information
Просмотров 2,6 тыс.2 месяца назад
Node.js security best practices such as security hardening of frameworks and libraries, managing env files and secrets, using child processes carefully are going to be covered in this video. ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop me a message if you'd like: linkedin...
Here's why implementing a Payment System can be so hard
Просмотров 3,1 тыс.3 месяца назад
Check out Cryptomus: cryptomus.com/? Cryptomus on Telegram - t.me/ eo6zMdgekJRhNzcy ⚡⚡⚡ Designing and building an in-house Payment System is not trivial. In includes many components that communicate asynchronously in an event-driven manner, usually with Kafka, meaning there are many different ways the system can malfunction. We're going to cover the major components of a system, what reconcilia...
Is Service Mesh a MUST-HAVE for your Microservices?
Просмотров 2,5 тыс.3 месяца назад
In this video I'll explain what a Service Mesh is, why you would use it, what the difference between a Service Mesh and an API Gateway is and how it works together with Kubernetes. ⚡⚡⚡ 👉 Check out Eraser: eraser.io/ ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclusive perks: patreon.com/softdevdiaries 💼 Follow me on LinkedIn and drop me a messag...
API Gateway vs Load Balancer vs Reverse Proxy: when to use what?
Просмотров 7 тыс.3 месяца назад
Check out Lunar.dev: www.lunar.dev/ ⚡⚡⚡ What is the difference between an Reverse Proxy, a Load Balancer and an API Gateway? All of them seem to be doing similar things within the networking ecosystem. But there are subtle differences that every Software Engineer and Architect should be aware of. ☕ Buy me a coffee: www.buymeacoffee.com/softwaredeveloperdiaries 🙌 Become my Patreon and get exclus...
How do microservices find each other's IP addresses?
Просмотров 4,2 тыс.4 месяца назад
How do microservices find each other's IP addresses?
Solving Common Backend Issues: Deadlocks & Queues
Просмотров 1,9 тыс.4 месяца назад
Solving Common Backend Issues: Deadlocks & Queues
I tried ranking Node.js Design Patterns: Builder, Observer, Command, Prototype
Просмотров 6 тыс.4 месяца назад
I tried ranking Node.js Design Patterns: Builder, Observer, Command, Prototype
Under the hood of Slack’s real-time messaging at scale
Просмотров 1,5 тыс.4 месяца назад
Under the hood of Slack’s real-time messaging at scale
Node.js "Event Emitters" Explained
Просмотров 6 тыс.5 месяцев назад
Node.js "Event Emitters" Explained
This is how you protect your backend from a Retry Storm
Просмотров 1,2 тыс.5 месяцев назад
This is how you protect your backend from a Retry Storm
How are software teams organized in large companies?
Просмотров 1,9 тыс.5 месяцев назад
How are software teams organized in large companies?
How to avoid the "Noisy Neighbor" problem in your software architecture?
Просмотров 1,6 тыс.5 месяцев назад
How to avoid the "Noisy Neighbor" problem in your software architecture?
Can an "Anti-Corruption Layer" save your bad software architecture?
Просмотров 1,9 тыс.6 месяцев назад
Can an "Anti-Corruption Layer" save your bad software architecture?
Node.js Security Best Practices #2: non-root user, payload size limiting, auth limits
Просмотров 4,7 тыс.6 месяцев назад
Node.js Security Best Practices #2: non-root user, payload size limiting, auth limits
The Secret Weapon Behind Resilient Distributed Systems
Просмотров 9146 месяцев назад
The Secret Weapon Behind Resilient Distributed Systems
Here's why you need Nginx as a Reverse Proxy for your Node.js app
Просмотров 18 тыс.6 месяцев назад
Here's why you need Nginx as a Reverse Proxy for your Node.js app
The Broken Senior-Only Developer Market
Просмотров 212 тыс.6 месяцев назад
The Broken Senior-Only Developer Market
Node.js Security Best Practices: JWT blacklisting, rate limiting, schema validation
Просмотров 14 тыс.7 месяцев назад
Node.js Security Best Practices: JWT blacklisting, rate limiting, schema validation
How to make your application scalable?
Просмотров 2,6 тыс.7 месяцев назад
How to make your application scalable?
What the hell is JavaScript's Intl API?
Просмотров 2,7 тыс.7 месяцев назад
What the hell is JavaScript's Intl API?

Комментарии

  • @survivelikehoneybadger
    @survivelikehoneybadger 21 час назад

    Is that in nett or gross?

  • @Serjgap
    @Serjgap День назад

    Speed optimization advices here are ok, but code style is very bad and inconsistent. You should have cleaned it up a bit instead of directly copying the article

  • @GoetzGehgetz
    @GoetzGehgetz День назад

    t-10 ;)

  • @prashlovessamosa
    @prashlovessamosa 2 дня назад

    Great

  • @NathanielBabalola
    @NathanielBabalola 2 дня назад

    Thank you, can you please drop the links to the jsbenchmarks ?

    • @SoftwareDeveloperDiaries
      @SoftwareDeveloperDiaries 2 дня назад

      Unfortunately they are not persisted, but you can find the approx. results in the original article linked in the description

  • @sindhu1522
    @sindhu1522 2 дня назад

    Hi i have an issue with my nestjs application even there is no api calls from day 1,the cpu usage is increasing gradually, could you please share any idea how to fix that

  • @gamingwolf3385
    @gamingwolf3385 2 дня назад

    I was waiting for this video , thank you a lot I am learning C# , i see some new concepts like domain entity , value objects and this stuff , can you explain hiw to do it in node ?

  • @bombardo2489
    @bombardo2489 2 дня назад

    man this exactly what i needed. could you spoil us further and make us video about user auth on enterprise level that would be sick

    • @SoftwareDeveloperDiaries
      @SoftwareDeveloperDiaries 2 дня назад

      Happy to hear, mate! I'll put that on my list 😉

    •  2 дня назад

      This one sounds really good

  • @papa_ethan
    @papa_ethan 2 дня назад

    Confusing in the end.

  • @judgebot7353
    @judgebot7353 2 дня назад

    just found your channel it's amazing man. Thanks a lot

  • @joachimzayana1744
    @joachimzayana1744 2 дня назад

    Please continue making video! Explanation are clear, introduced at the right pace, looking forward watching the others

  • @ShujaatAli-sx1ou
    @ShujaatAli-sx1ou 3 дня назад

    Can you explain a bit more about the ledger and user wallet? First question: Are we going to store user credit/debit card information in the ledger? In the user wallet, we will store the user transactions (amount, discounts, etc.). Second question: How do we reconcile between these two modules, the ledger and the user wallet?

  • @AdityaParmar-dr7gu
    @AdityaParmar-dr7gu 4 дня назад

    You are great ! thanks for content almost seeing all video of advance nodejs of yours

  • @kooshaforoughi8778
    @kooshaforoughi8778 4 дня назад

    Man i love your videos, you're a very good teacher, you teach advanced topics clearly and with ease. thank you for teaching me! keep going!

  • @prajwalmandlik3517
    @prajwalmandlik3517 4 дня назад

    If anyone has a good source for learning this, please share it in the comments.

  • @imtiazux
    @imtiazux 6 дней назад

    Thank you so much. Everything are now clear like water. 👌

  • @mohabnabil1962
    @mohabnabil1962 6 дней назад

    Can i worf from my country as frontend Developer?

  • @channaveerhakari7319
    @channaveerhakari7319 8 дней назад

    I am handling my NodeJS ExpressJS errors, unhandled exceptions, unhandled rejections with simple middleware. This works amazing for me :) ``` app.js ------ const express = require("express"); const app = express(); const errorHandlerMiddleware = require("./middlewares/error-handler.middleware.js"); /** Customer authentication routes */ app.use("/api/auth", require("./routes/auth/auth.js")); //...Other API's /** * Error handling middleware * Handles all the errors, unhandled exceptions, unhandled rejections */ app.use(errorHandlerMiddleware); module.exports = app; error-handler.middleware.js -------------------------- /** Custom winston logger */ const log = require("../helpers/logs/log.helper"); module.exports = function (error, request, response, next) { /** My custom meta data handler */ log("error", error.message, { error }); return response.status(501).json({ status: "error", message: error.message, }); }; ```

  • @richiemugambi9487
    @richiemugambi9487 8 дней назад

    Criminally underrated

  • @s8x.
    @s8x. 9 дней назад

    you can combine them too like event driven with micro services

  • @stillmattwest
    @stillmattwest 9 дней назад

    This video should really be a playlist. It would be great if you slowed down and gave some specific examples for each of the major points. It seems like your target audience is new Node developers, but you move way too fast for them to keep up with you.

  • @alienmars2442
    @alienmars2442 9 дней назад

    I wonder if InventoryService processes fails, but EmailService sends email successfully, how should we gonna do ?

  • @gamingwolf3385
    @gamingwolf3385 10 дней назад

    This decorator design pattern is it the same used in nestjs or angular with @ ?? Or maybe in other languages to add more properties to the original object

    • @SoftwareDeveloperDiaries
      @SoftwareDeveloperDiaries 10 дней назад

      Yes, it is the @ from Angular! I’m not familiar with Nest.js so can’t tell for sure 😀

  • @gamingwolf3385
    @gamingwolf3385 10 дней назад

    Hello thank you for the video , for now no need for the book written by the gang of four You are the gang of four 😂😂 Ok , i want to know something can you go deep in opensource projects maybe we can discuss how they implement this feature , this helper functionn.... And for performance purposes are functions better or classes , and why typeof CustomClass and typeof Function the two of them return function hhhh crazy js news Thank you a lot , بارك الله فيك

  • @kenzo3477
    @kenzo3477 11 дней назад

    Am patiently waiting for your rabbitmq video

  • @m.x.
    @m.x. 11 дней назад

    Funny how React developers end up recognising that Angular encouraged architecture is the way to go from the very beginning. And it's not an Angular merit, but rather decades of industry experience. React always late.

  • @mohit84604
    @mohit84604 11 дней назад

    Hey brow can you teach DDD(domain driven design in typescript)

  • @callanambulancebutnotforme5702
    @callanambulancebutnotforme5702 11 дней назад

    12:48 got me checking my wifi😂😂

    • @gamingwolf3385
      @gamingwolf3385 10 дней назад

      True , i taught it was a bug detected in the code 😂

    • @SoftwareDeveloperDiaries
      @SoftwareDeveloperDiaries 9 дней назад

      Ah damn hahaha there was a loud car passing by and I forgot to cut out that segment 😄

  • @SoftwareDeveloperDiaries
    @SoftwareDeveloperDiaries 11 дней назад

    Which of these design patterns do you use the most?

    • @markoffk
      @markoffk 10 дней назад

      I would like to mention, that it depends on what you mean by "use". For example, in modern JS development with React (and all it's helper libs) and nodejs - singletons are everywhere starting from ES modules. But I never had to manually define Singleton.

    • @gamingwolf3385
      @gamingwolf3385 10 дней назад

      I like the builder method , for now i am using nestjs so i am using singeleton and dependency injection by default 😅 , there is also the dependency inversion you didn't explain it yet its also used in nestjs

  • @paperC_CSGO
    @paperC_CSGO 11 дней назад

    Please do a video about performance tests in node! Testing locally + setting up tests for CI/CD

  • @nirnayjain2277
    @nirnayjain2277 12 дней назад

    We have nestjs framework in javascript which uses dependency injection

  • @mct_gyssels
    @mct_gyssels 12 дней назад

    g in gRPC doesn't stand for google...

  • @mscfit
    @mscfit 12 дней назад

    you say pact is the best cdct framework - did you do an evaluation that you could share. We are currently debating SCC vs PACT

  • @tryzack
    @tryzack 13 дней назад

    hi, i have a problem here, I've done everything like in the video but the workers wont work? the loadtest was arguably the same as the first time, so to check by myself i made another route without any load to check if i could make a get from that one while the heavy one was still loading and the answer was no, it waits for heavy get to complete before actually doing the main get, its like everything was going to the same worker instead of trying to use different workers, i have 12 cores so it should work...

  • @prasannabiswas681
    @prasannabiswas681 13 дней назад

    sir can you do a same playlist for nextjs also need some glimpse of how senior software devs are writing code and folder structure in nextjs with scalability for future propects.

  • @rajsatraroxor9603
    @rajsatraroxor9603 13 дней назад

    In last example, while changing from fruit instanceof to isTasty in, last keyword "Banana" should be changed to parameter "fruit", to check isTasty exisits or not in fruit which is passed into that function

  • @MusaabIsmael
    @MusaabIsmael 14 дней назад

    Thank you so much, i understood the concept behind it from the playstation example.

  • @igetknock11
    @igetknock11 16 дней назад

    Where can i get this boostrap form layout ? as it doesnt appear in my browser

  • @yousafraza9347
    @yousafraza9347 16 дней назад

    Really love this methodology of deep diving a specific topic. Glad I found this channel

  • @vovandarius
    @vovandarius 16 дней назад

    A great overview! Thank you!

  • @mansoormasoudifard8624
    @mansoormasoudifard8624 16 дней назад

    I learned a lot 👌

  • @internetexplorer7880
    @internetexplorer7880 17 дней назад

    Wait i thought pm2 spawns only 1 if you use that command

  • @AViStudioMoldova
    @AViStudioMoldova 17 дней назад

    Very clean and good explanation! You're good! Keep going! Thanks!

  • @user-gd5lq8qj5z
    @user-gd5lq8qj5z 18 дней назад

    apollo graqhQL for the client, grpc json on the server. That's it.

  • @sohaibnoor6610
    @sohaibnoor6610 18 дней назад

    I have 3.5 years of Experience as a Node js Developer. But I feel I knew nothing. Thank you so much man. This is mind blowing. Love every of it

  • @TheSadilek
    @TheSadilek 19 дней назад

    Learned a lot and it helped me relax on a Friday night. Thanks man

  • @marksmith2540
    @marksmith2540 21 день назад

    > as long as you use it perfectly it will work (paraphrased, about GraphQL) Strictly speaking this can be said or anything.

  • @yogiHalim
    @yogiHalim 21 день назад

    wow Thank you

  • @Joel-do3oi
    @Joel-do3oi 22 дня назад

    Thanks for the tips!