Giới hạn của luồng trong Python

Thứ bảy, ngày 25 tháng 5 năm 2024

Luồng(thread) trong Python có gì khác so với luồng trong các ngôn ngữ lập trình khác? GIL là gì? Có phải sử dụng đa luồng, đa tiến trình sẽ luôn hiệu quả hơn đơn luồng, đơn tiến trình không? Trong bài viết này, mình sẽ chia sẻ về giới hạn của luồng trong Python và đưa ra lời khuyên trong trường hợp nào thì dùng đa luồng, đa tiến trình hay chỉ cần dùng đơn luồng.


Sử dụng observer pattern trong lập trình web

Thứ năm, ngày 9 tháng 5 năm 2024

Design pattern là một trong những kĩ năng cần thiết của một lập trình viên. Không chỉ biết, việc áp dụng thành thạo các design pattern vào công việc hằng ngày cũng giúp các lập trình viên nâng cao giá trị bản thân của mình trong ngành. Trong bài viết này, mình sẽ chia sẻ một trong những design pattern tương đối phổ biến và các áp dụng nó vào trong lập trình web frontend - Observer pattern.


Từ PEP 492 tới kỉ nguyên bất đồng bộ

Thứ ba, ngày 27 tháng 6 năm 2023

Bất đồng bộ có thể được triển khai trong rất nhiều ngôn ngữ lập trình, kể cả Python. Tuy nhiên, bất đồng bộ trong Python thuở sơ khai chưa được sử dụng rộng rãi như Javascript hay C# bởi cách thực hiện khó khăn. Trong bài viết này, mình sẽ giới thiệu về lịch sử của lập trình bất đồng bộ trong Python và sự lớn mạnh của nó ở thời điểm hiện tại.


Những bí mật trong Python có thể bạn chưa biết?

Thứ ba, ngày 20 tháng 6 năm 2023

Python là một ngôn ngữ lập trình đa năng, dễ học nhờ cú pháp sáng sủa. Tuy nhiên, đằng sau vẻ ngoài đẹp đẽ đó lại ẩn chưa những điều mà không phải ai cũng biết. Để biết đó là những điều gì, chúng ta cùng tìm hiểu nhé?


Tại sao FastAPI lại nhanh?

Thứ sáu, ngày 16 tháng 6 năm 2023

Gần đây, có một web framework đang nổi lên trong cộng đồng Python - FastAPI. Trong bài viết này, mình sẽ đi phân tích tại sao framework này lại "fast"


Optimize web performance

Thứ năm, ngày 15 tháng 6 năm 2023

Mình đã optimize web performance như thế nào?


Trải nghiệm làm mentor trong 1 năm

Thứ bảy, ngày 18 tháng 3 năm 2023

Bài viết này mình muốn chia sẽ về trải nghiệm lần đầu làm mentor của mình và những gì mình rút ra được trong thời gian đó.


Những thứ đã thay đổi mình sau 3 năm rời trường đại học

Thứ sáu, ngày 27 tháng 1 năm 2023

Học đại học có lẽ là một trong những milestone lớn của rất nhiều người, điều này cũng không ngoại trừ mình. Và giai đoạn tiếp theo của milestone đó cũng rất quan trọng và đáng nhớ: Ra trường và bước vào cuộc sống độc lập. Và trong bài viết này, mình muốn chia sẻ về những điều đã thay đổi bản thân mình sau khi rời ghế trường đại học.


Time to First Byte (TTFB)

Thứ bảy, ngày 29 tháng 10 năm 2022

Time to First Byte (TTFB) là một chỉ số căn bản để đo lường thời gian kết nối và phản hồi của máy chủ trong thử nghiệm và thực nghiệm, giúp xác định việc một máy chủ phản hồi các request quá chậm. Trong trường hợp điều hướng các request, nghĩa là các request cho các tài liệu HTML, nó đứng trước tất cả các chỉ số loading time khác.


Tree Shaking cho ứng dụng web

Thứ hai, ngày 8 tháng 8 năm 2022

Tree-shaking là một phương pháp phổ biến để tối ưu ứng dụng web. Mục đích của phương pháp này là loại bỏ các deadcode ra khỏi ứng dụng web, giúp ứng dụng của bạn có thể download và chạy dưới trình duyệt được nhanh và mượt mà hơn. Bài viết này sẽ không đi sâu vào chi tiết kĩ thuật mà chỉ trình bày những ý chính, giúp mọi người có một cheatsheet căn bản trước khi thực hiện eliminate deadcode. Còn nếu bạn muốn có cái nhìn chi tiết hơn, bạn có thể đọc bài viết trước của mình nhé.