

Discover more from Grokking Newsletter
#100 - Grokking Newsletter chính thức tròn 100 số!
Tuần này đã là số #100 của Grokking Newsletter, xin cảm ơn các bạn đọc đã luôn theo dõi và đồng hành cùng Grokking trong suốt thời gian qua. Sự ủng hộ của các bạn là nguồn động lực không thể thiếu để đội ngũ biên tập luôn cố gắng cung cấp những bài viết hay, chất lượng tới bạn đọc cũng như nhiều thông tin bổ ích khác.
Dưới đây là một số thống kê của Grokking Newsletter trong các số đã phát hành:
Top 5 bài viết được xem nhiều nhất:
Top 5 kỳ được quan tâm nhất:
Grokking Interview Day là hoạt động do Grokking Vietnam tổ chức nhằm mục đích cung cấp cho các bạn cơ hội được thử thách kiến thức của mình thông qua việc trải nghiệm một buổi phỏng vấn “khó" với các anh/chị dày dặn kinh nghiệm, đến từ các công ty công nghệ hàng đầu Việt Nam. Thông qua đó, các bạn sẽ có cơ hội nhận ra những lỗ hổng trong kiến thức của mình, đồng thời có cái nhìn rõ ràng hơn về con đường sự nghiệp của bản thân.
Chi tiết và link tham gia chương trình tại đây.
Những bài viết hay
Going Transaction-less — medium.com
Một trong những đánh đổi lớn khi chuyển sang mô hình Microservice là không thể dựa vào cơ chế transaction của 1 database để đảm bảo tính toàn vẹn dữ liệu. Có một vài phương án đã được đề ra để giải quyết vấn đề này như 2-phase transaction hay SAGA. Tuy nhiên nhược điểm của chúng là hiệu năng kém hoặc chi phí xử lý logic phức tạp. Nếu không có nhu cầu phải đạt được strong consistency, thì transaction-less là một lựa chọn rất tốt vì tính đơn giản và hiệu năng tốt.
Data Compression for Large-Scale Streaming Experimentation — medium.com
Trong bài viết, các kĩ sư tại Netflix đã chia sẻ một số cách tiếp cận để cải thiện trải nghiệm xem phim qua streaming như: phát triển các bộ encode video và audio hiệu quả hơn, adaptive streaming algorithm, tối ưu hoá việc phân tán nội dung thông qua CDN và các server phân tán nhằm mang lại tốc độ và sự ổn định cao nhất cho video streaming.
Hệ thống analytic "sương sương" từ dữ liệu 30 triệu người dùng — kipalog.com
Tác giả Minh Monmen đã chia sẻ quá trình "Xây dựng hệ thống tính toán doanh thu cho các sản phẩm đang phát hành" cho khoảng 30 triệu người dùng với hàng triệu record data sinh ra mỗi ngày và một số kinh nghiệm được rút ra được từ việc thay đổi DB Engine phù hợp với dữ liệu ngày càng lớn cho đến thiết kế data pipeline để đáp ứng truy xuất dữ liệu với độ trễ thấp nhất.
SQL Planning: Parser & Optimizer — medium.com
Key-Value store là kiểu database có khả năng phân tán cao và khả năng mở rộng theo chiều ngang, SQL database truyền thống thì lại hỗ trợ ràng buộc và transaction thoả mãn tính ACID. Một số distributed database đã kết hợp cả 2 điểm mạnh nói trên như Cockroach DB, TiDB. Bài viết này mô tả quá trình các SQL query được chuyển đổi thành cú pháp key-value, sau đó được phân tích và tối ưu hoá trước khi được thực thi trong các DB này.
Sách hay nên đọc
Sentiment Analysis: Mining Opinions, Sentiments, and Emotions — www.goodreads.com
Quyển sách là một bộ sưu tập khá đầy đủ về các kỹ thuật cũng như các thành tựu trong Sentiment Analysis gần đây, ngoài ra tác giả còn nói đến các vấn đề trong thực tế khi ứng dụng Sentiment.
Code & Tools
Learn how to design large-scale systems. Prep for the system design interview. — github.com
Tuyển tập các hướng dẫn về thiết kế hệ thống, các câu hỏi và đáp án cho phỏng vấn về thiết kế hệ thống.
Project Loom: Java With a Stronger Fiber — dzone.com
Fiber là một "lightweight user-mode thread" (tương tự ý tưởng của Goroutines), được schedule bởi JVM (không phải OS), giúp cho các lập trình viên xây dựng ứng dụng hiệu năng cao với cách tiếp cận khá giống với Go.
Tin tức khác
Tony Brooker, Pioneer of Computer Programming, Dies at 94 — www.nytimes.com
Tony Brooker, nhà toán học và nhà khoa học máy tính, người đã thiết kế ngôn ngữ lập trình cho máy tính thương mại đầu tiên trên thế giới, vừa mất vào ngày 20 tháng 11 tại một viện dưỡng lão ở Hexham, Anh. Công việc của ông vào những năm 1950 đã đánh dấu sự khởi đầu của thứ mà sau này chúng ta vẫn thường gọi với cái tên thân thuộc: Ngôn ngữ lập trình bậc cao.
This week sponsor
KMS Technology
Thành lập năm 2009 với trụ sở chính tại Atlanta (US), KMS Technology cung cấp 3 dịch vụ chính: Gia công phần mềm (Software Outsourcing), đầu tư & phát triển sản phẩm công nghệ (Tech-Startup incubator), tư vấn dịch vụ giải pháp kỹ thuật. Với đội ngũ hơn 1000 nhân viên, KMS hướng đến khách hàng toàn cầu, từ các công ty startup đến các tập đoàn công nghệ lớn. Một số sản phẩm từ KMS đã được tín nhiệm trên thị trường thế giới: QASymphony, Katalon Studio, Kobiton. KMS Technology xây dựng một nơi làm việc năng động sáng tạo, chọn con người làm nền tảng văn hoá, nhiều năm liên tiếp nằm trong danh sách các nơi làm việc tốt nhất tại Việt Nam và Atlanta (Mỹ).
Góc tuyển dụng
Từ nay đến hết tháng 12/2019, các bạn engineer sẽ nhận được 1 tháng lương thưởng khi gia nhập KMS với các vị trí sau: http://bit.ly/KMS-bonus
Quote
“Give a man a program, frustrate him for a day. Teach a man to program, frustrate him for a lifetime.”
― Muhammad Waseem