Tải trung bình
Load Average -- tạm dịch là "giá trị tải trung bình" -- là một chỉ số liên quan đến CPU rất cơ bản và quan trọng. Việc nắm rõ ý nghĩa của chỉ số này giúp chúng ta đánh giá được hiệu năng hiện thời của máy tính cũng như sử dụng CPU nói riêng, máy tính nói chung một cách hiệu quả nhất Bài viết này ...
Tôi biết cái tôi muốn và tôi tin chắc bạn sẽ làm được
“I know what I want and I trust you to do your part.” - Sandi Metz Hôm nay mình muốn giới thiệu bí quyết trên của Sandi Metz, một tác giả yêu thích của mình về các vấn đề liên quan tới OOP. Mình thật sự ấn tượng với nó vì chỉ một câu ngắn gọn thôi cũng đủ để xem là kim chỉ nam ...
Chuyện 18+ về Microservice - Phần 1
Bản quyền thuộc Fsoft Potato Tech Mag Giới thiệu series chuyện về kiến trúc Microservice từ thiết kế đển implementation Giaosucan's blog: Chia sẻ kiến thức kĩ thuật theo cách bá đạo http://www.giaosucan.com Phần 1: Chuyện chàng Khắc Tiệp và công ty Venus Xưa kia ở nước Việt Nam ...
"Tôi biết lập trình, nhưng tôi không biết lập trình cái gì"
Có một vấn đề thường gặp mà tôi thấy ở các nhà phát triển mới. Họ dành thời gian học một hoặc hai ngôn ngữ lập trình cơ bản và họ cảm thấy khá thoải mái khi làm các bài tập lập trình, nhưng họ không biết làm thế nào để áp dụng những gì mà họ đã học được. Vấn đề này thường đi kèm trong một cụm từ ...
Đem sản phẩm đến với thế giới Hacker
Bài viết này là phần tiếp theo của bài viết Tôi đã xây dựng một phần mềm mã nguồn mở như thế nào. Cách sử dụng từ "Hacker" là thống nhất với phần 1. "Đem sản phẩm đến với cộng đồng" luôn là phần khó đối với một người làm kỹ thuật. Chúng ta có thể say mê, thức ngày thức đêm để viết lib, ...
Về từ khoá static trong ngôn ngữ C
Mở đầu Khi học C cơ bản, chắc hẳn bạn sẽ gặp cách dùng từ khoá static như ví dụ dưới đây: #include <stdio.h> void count(int i) { static int num = 0; num += i; printf("current value of num: %d ", num); } int main() { count(1); count(3); return 0; } Kết quả ...
Web Beacon và cookie
Web Beacon là gì Web Beacon, hay Web Bug là 1 khái niệm với 2 tên gọi khác nhau. Có thể bạn chưa từng nghe nói đến, hay đã nghe nhưng ko hiểu rõ lắm về cụm từ này. Trước hết mình sẽ lấy định nghĩa trên Wikipedia xuống để dễ theo dõi: A web bug is an object that is embedded in a web page or ...
Lỗ hổng bảo mật khủng khiếp của Lotte Cinema
Đăng nhập là một chức năng đơn giản nhất mà hơn 90% các ứng dụng web cần phải có. Tuy nhiên, đôi khi ta lại không được hướng dẫn cách thực hiện chức năng "Đăng nhập" một cách đúng đắn, bài bản, dẫn đến những lỗi dở khóc dở cười, hoặc những lỗ hổng bảo mật khủng khiếp . Đến cả Lotte Cinema, một ...
Tàn Code Lệnh - Phần 1
GIAOSUCAN'S BLOG - CHIA SẺ KIẾN THỨC KĨ THUẬT THEO CÁCH BÁ ĐẠO http://www.giaosucan.com/ Lời tựa Tàn code lệnh là series bài viết giải thích nội dung cuốn Clean Code của Robert C. Martin theo phong cách kiếm hiệp Rober C Martin Chương 1: Huyết hải thâm cừu Hỡi thế gian, code ...
Parameters vs Arguments
Mình xin được tóm tắt lại một vài kiến thức thức cơ bản trong lập trình mà đôi lúc chúng ta bị nhầm lẫn hoặc không để ý đến. Parameter is variable in the declaration of function. Argument is the actual value of this variable that gets passed to function. For example: public void ...
SOLID là gì – Áp dụng các nguyên lý SOLID để trở thành lập trình viên code “cứng”
Trong quá trình học, hầu như các bạn sinh viên đều được học một số khái niệm OOP cơ bản như sau: Abstraction (Tính trừu tượng) Encapsulation (Tính bao đóng) Inheritance (Tính kế thừa) Polymophirsm (Tính đa hình) Những khái niệm này đã được dạy khá rõ ràng, và hầu như những buổi phỏng ...
Sự thật đắng lòng: Đôi khi cắm đầu ngồi CODE là cách … ngu nhất để giải quyết vấn đề
Qua bài viết về button trị giá 300 triệu đô, mình thấy các bạn có vẻ hào hứng với những bài viết theo phong cách kể chuyện. Vì vậy, ở bài viết này, mình sẽ bắt đầu bằng cách kể một câu chuyện nho nhỏ về 1 chàng coder nghèo tên K (Gọi là Khoa Khoe Khoang hay Khải gì đó tuỳ bạn). Tiếp xúc với ...
Tìm hiểu Higher-Order Function (HOF) và Currying qua một số ví dụ
Bài viết khá dài và có nhiều chi tiết rất bình thường, hãy cân nhắc trước khi đọc :D HOF và Currying là hai kỹ thuật không khó, thậm chí có thể bạn đang dùng nó hàng ngày mà không để ý. Cùng tìm hiểu chúng thông qua một số ví dụ. Background Tôi cho rằng một kỹ sư phần mềm pro không phải ...
Tự tìm hiểu Web Development, tại sao không?
Với xu hướng hiện nay, rất nhiều các bạn developer chọn con đường Web development để phát triển bản thân, tuy nhiên trong trường đại học các bạn thường ít được tìm hiểu về mảng này, các khóa học bên ngoài thì có vẻ đắt đỏ. Vậy tại sao không tự học Web development? Nhiều bạn sẽ trả lời với những lý ...
Finite state machine trong lập trình - Elixir
1. Tìm hiểu về FSM FSM(Finite state machine) - Máy trạng thái hữu hạn là một mô hình toán học biểu diễn trạng thái của hệ, trong đó số trạng thái là hữu hạn. Từ mỗi trạng thái, máy có thể chuyển đổi qua 1 số trạng thái cố định khác, dựa trên các sự kiện, input. Fsm được biểu diễn như 1 đồ ...
C# đã tiến hóa như thế nào (Những thay đổi của C# từ 1.0 cho tới 5.0)
Chẳng là gần đây, công ty mình vưa tuyển thêm 1 anh Technical Lead. Đợt mình hỏi ông leader phỏng vấn thế nào, ổng nhận xét "Kiến thức base C# khá vững, nói được những thay đổi của C# từ 1.0 tới 5.0". Mặc dù mình chỉ là junior dev nhưng mình thấy phần này không khó, do lỡ tìm hiểu rồi nên post bài ...
Lập trình viên “trình cao” thì nên đọc sách gì? - Phần 1
Đầu tiên, xin hứng chịu gạch đá từ nhiều bạn rằng: developer thì cần gì phải đọc sách, code nhiều là giỏi thôi. Vâng, các cậu có cu, nhầm, các cụ đã có câu là "practice make perfect", cứ làm hoài là giỏi. Tuy nhiên, phải làm đúng cách thì mới giỏi được, code dở mà không chịu tìm cách cải thiện kĩ ...
Haskell's laziness
Trong bài viết này, tôi sẽ trình bày về một đặc tính của Haskell khá khác biệt so với các ngôn ngữ lập trình khác, đó là laziness (dịch tiếng việt nôm na là "luời biếng", nhưng tôi xin đuợc giữ nguyên từ gốc tiếng anh). Chúng ta hiểu laziness như thế naò? Lazy evaluation nghĩa là, việc evaluate ...
Giới thiệu về thread từ phần cứng ra phần mềm.
Không gì đẹp bằng nụ cười khi đôi mắt e lệ nhìn xuống. -- Victor Hugo Các bạn có thể đọc bài viết gốc tại đây Tò mò khi tìm hiểu hoạt động của thread như thế nào trong lập trình single thread và multi thread, mình tranh thủ tìm hiểu luôn các thread này hoạt động như thế nào trong CPU. ...
Mở đầu về Haskell
Chúc mừng năm mới 2015 tới tất cả bạn đọc ktmt blog :) Chúc các bạn một năm mới coding thật productive! ^^ Năm mới chắc hẳn hầu hết mọi người đều có resolution của riêng mình. Một trong những resolution của tôi năm nay là học một ngôn ngữ lập trình mới, đến level có thể viết một chương trình ...