Lập trình viên có cần học đại học hay không?

Dạo gần đây mình hay gặp một số topic kiểu “Cảm thấy mất định hướng khi học Đại học”, “Liệu em có nên bỏ Đại Học hay không?”, “Kiến thức Đại học toàn thứ vô bổ!”. Các topic này cho thấy nhiều bạn sinh viên đang cảm thấy hoang mang về giá trị của việc học đại học.

Do vậy, mình viết bài này để phân tích những cái lợi của việc học Đại Học, giúp các bạn trẻ vững tin hơn trên con đường đã chọn.

Continue reading Lập trình viên có cần học đại học hay không?

Review sách: SQL Antipatterns – Những sai lầm chết người khi làm việc với SQL

Giới thiệu

Mấy hôm trước, khi mình lên stackoverflow hỏi một số câu liên quan tới SQL thì nghe nhắc tới khái niệm SQL Antipattern. Khác với design pattern, anti pattern là những cách thiết kế để giải quyết vấn đề, nhưng sử dụng nó lại… gây ra nhiều vấn đề hơn. Một antipattern được nhiều người biết đó là hút thuốc lào thay cho thuốc lá, cách này cai được thuốc lá nhưng sẽ gây ra nhiều vấn đề vệ sinh và môi trường hơn.

Từ hồi dùng thứ này bố bỏ hẳn thuốc lá nhá
Từ hồi dùng thứ này bố bỏ hẳn thuốc lá nhá

Tìm hiểu sâu hơn, mình tìm thấy cuốn sách “SQL Antipattern” này. Cuốn này được đánh giá rất cao trên amazon, nói về những sai lầm dễ mắc phải khi thiết kế và sử dụng SQL Database. Nội dung rất hữu dụng với các bạn database administator hoặc back-end developer nhé.

Screen Shot 2016-08-14 at 12.54.58

Continue reading Review sách: SQL Antipatterns – Những sai lầm chết người khi làm việc với SQL

Năm điều lập trình viên nên học hỏi từ Sơn Tùng MTP

Nhân dịp sếp Tùng đang hot, hôm nay mình lôi tên tuổi sếp Tùng vào bài viết để câu view và câu like.

Đùa đấy, dạo gần đây viết nhiều bài về technical căng thẳng quá nên viết bài này để đổi không khí một tí. Bài viết theo phong cách nhẹ nhàng hài hước nhưng nội dung hoàn toàn nghiêm túc, các bạn nhớ đọc kĩ nhé.

Chia sẻ luôn là mình không phải Sky, cũng không phải fan của Tùng. Chẳng qua là mỗi mỗi code thì mình hay để nhạc không lời hoặc nhạc Tùng làm background cho nhẹ đầu óc thôi. Nghe các thể loại nhạc sâu sắc khác mình không tập trung được.

son-tung-mtp-blogtamsuvn-52

Continue reading Năm điều lập trình viên nên học hỏi từ Sơn Tùng MTP

Series Bảo Mật Nhập Môn – Bảo mật cơ bản cho developer

Giới thiệu

Bảo mật là một vấn đề rất tốn kém và phức tạp. Gần như hệ thống nào cũng có lỗ hổng (cả phần mềm lẫn phần cứng), các hacker có thể thông qua các lỗ hổng này để tấn công hệ thống.

Việc đảm bảo hệ thống bảo mật là trách nhiệm của rất nhiều bên: Sys admin, network, manager và developer. Do mình không chuyên về bảo mật nên mình không rành về việc config hệ thống mạng, setup tường lửa v…v, do đó mình sẽ không chém gió lung tung về mảng này. Thay vào đó, mình sẽ cùng các bạn tiếp cận khía cạnh bảo mật dưới góc nhìn của một developer.

Internet Security System

Những kiến thức trong series này rất cơ bản, dễ học, nhưng chúng sẽ vô cùng hữu ích, giúp bạn tránh phải những sai lầm bảo mật “ngớ ngẩn, cơ bản” khi code. Dù cho bạn code C hay C++, Java C# hay PHP, bạn cũng sẽ học được vài điều bổ ích qua series này.

Continue reading Series Bảo Mật Nhập Môn – Bảo mật cơ bản cho developer

Danh ngôn lập trình – Giải thích và bình luận

Danh ngôn là những câu nói đơn giản, ngắn gọn nhưng chất chứa bên trong cả một bầu trời chân lý. Danh ngôn dễ nhớ, dễ thuộc, đọc ít hiểu nhiều. Vì lẽ đó, hôm nay mình sẽ giới thiệu và phân tích một số câu danh ngôn … để đời của ngành lập trình.

Các bạn có thể thoải mái share mấy câu danh ngôn này để thể hiện mình “so deep”, hoặc ghi nhớ để lòe mấy đứa cùng lớp/cùng team khi nói chuyện nhé.

Phần bình luận là ý kiến cá nhân theo cách hiểu của tác giả, các bạn có thể bình luận chia sẻ cách hiểu của các bạn, hoặc góp thêm danh ngôn cho vui.
Continue reading Danh ngôn lập trình – Giải thích và bình luận

Tạm biệt Lancaster ISS – Tạm kết thúc kiếp code dạo nơi xứ người

Đầu tháng 9 này, mình sẽ tạm kết thúc năm đầu tiên của chương trình học Master, về Việt Nam vi vu đú đởn khoảng 1 tháng. Đầu tháng 10 mình lại phải qua Trung Quốc bán thận,… nhầm, bán thân khoảng 6 tháng trước khi quay lại UK kết thúc chương trình học.

Vì lẽ đó, mình phải ngậm ngùi nói lời chia tay với team hiện tại. Lần này, mình viết một bài review nho nhỏ về những trải nghiệm bản thân trong thời gian gần đây.

Continue reading Tạm biệt Lancaster ISS – Tạm kết thúc kiếp code dạo nơi xứ người

Review sách: The Art of Intrusion – Khơi lại đam mê hacker thuở bé

Đa phần những bạn học IT đều là những người có đam mê với máy tính. Thuở nhỏ, mình thích máy tính là do mê chơi game, muốn sau này học IT để làm game. Lớn hơn một chút, xem phim về hacker, mình lại muốn học IT để sau này trở thành hacker.

Đến lúc vào đại học, mình cắm đầu học đến tận lúc gần ra trường mới biết ngành mình học là Software Engineering – viết phần mềm chứ không phải hack hay bảo mật. Mà thôi kệ, theo ngành này cũng vui, chẳng có gì phải phàn nàn.

Tuy vậy, mình vẫn có hứng thú với hack và hacker. Hẳn là các bạn dân IT cũng thế. Do hôm trước mình đọc được một cuốn sách khá hay về giới hacker nên hôm nay mình viết review để chia sẻ với các bạn. Cuốn sách có tên là The Art of Intrusion – Nghệ thuật xâm nhập.

tumblr_lxzca1WBTd1qzr8nao1_1280

Continue reading Review sách: The Art of Intrusion – Khơi lại đam mê hacker thuở bé

Tôi đã hack “tơi tả” Web Site của Lotte Cinema như thế nào?

Làm một developer “có tâm”, chúng ta không chỉ phải đảm bảo code chạy được, mà còn phải bảo đảm về bảo mật (với các hệ thống quan trọng). Có nhiều lúc, lỗi bảo mật đến từ chính sự ẩu tả của developer. Hôm nay mình sẽ lôi trang web của Lotte Cinema ra làm mẫu để giải thích cho các bạn.

Lưu ý: Bài viết mang tính chất học thuật, bình luận về kĩ thuật. Mình không ủng hộ, cũng không chịu trách nhiệm nếu bạn mang kiến thức đề cập trong bài ra làm chuyện trái pháp luật! Thân.

Giới thiệu

Tại sao mình lại chọn Lotte Cinema? Đơn giản là cách đây mấy tháng, khi nhắc đến mật khẩu, mình đã nêu ra một lỗ hổng bảo mật khủng khiếp của Lotte Cinema: Lưu mật khẩu dưới dạng text.

Đến nay, lỗ hổng này vẫn chưa được sửa, điều này chứng tỏ hai chuyện: Đội ngũ lập trình web lotte cinema thiếu kiến thức cơ bản về lập trình và cũng không thèm quan tâm gì đến việc bảo trì sửa lỗi. Điều này đồng nghĩa với việc website sẽ có nhiều lỗ hổng để khai thác.

Với logic đó, mình bắt đầu tìm lỗ hỗng của lotte với tâm thế học hỏi. Thật không ngờ, mình tìm được không chỉ một, mà đến tận vài lỗ hổng… cực kì chết người, có thể làm toàn bộ hệ thống ngừng hoạt động.

Continue reading Tôi đã hack “tơi tả” Web Site của Lotte Cinema như thế nào?

Nên học một hay nhiều ngôn ngữ

Gần đây mình nhận được một số câu hỏi về chuyện “Nên tập trung vào 1 ngôn ngữ hay là học nhiều ngôn ngữ”. Đây là một vấn đề gây khá nhiều tranh cãi trong cộng đồng lập trình viên.

Thật ra, không có câu trả lời đúng cho câu hỏi này! Trong nội dung bài viết, mình sẽ phân tích những điểm lợi/hại của mỗi lựa chọn. Tuy nhiên, lựa chọn cuối cùng vẫn là do bản thân các bạn nhé.

Thật ra, ngay từ đầu các bạn đã đặt sai câu hỏi! Thay vì hỏi “nên học một hay nhiều ngôn ngữ”, các bạn nên hỏi là “nên phát triển bản thân theo chiều rộng (generalist) hay chiều sâu (specialist)?”.

tumblr_inline_msvsmsrbld1qz4rgp

Continue reading Nên học một hay nhiều ngôn ngữ

JS Truyền Kì – Chương 3 : Quần hùng cát cứ

Mục lục

Tóm tắt phần trước: NodeJS và hàng loạt các framework ra đời, làm giang hồ đại loạn.

Lưu ý: Chương này có ích cho hầu hết các bạn front-end developer hoặc những bạn làm việc nhiều với JavaScript. Nếu bạn là back-end developer hoặc không dùng javascript thì đọc giải trí cũng được.

Hồi thứ bảy – Thế cục giang hồ

Thuở xưa, chỉ cần rành Javascript và jQuery là có thể độc tẩu giang hồ; thành thục một chút kĩ thuật AJAX nữa là có thể cưỡi mây lướt gió, tiếu ngạo quần hùng. Tiếc thay, thời đấy không còn nữa. Hiện tại, chỉ tính riêng front-end đã có hơn 63 JavaScript framework, con số này vẫn tiếp tục gia tăng (nguồn).

Continue reading JS Truyền Kì – Chương 3 : Quần hùng cát cứ

Lập trình viên giỏi không phải chỉ biết code