Hướng dẫn viết chat bot cho Facebook – Phần 1: Kiến thức cơ bản & Cơ chế hoạt động

Cách đây 1,2 tháng, Facebook vừa ra mắt Facebook Messenger Platform, cho phép ta viết 1 con bot hỗ trợ tự động trả lời người dùng. Vốn đam mê công nghệ nên mình cũng tò mò viết thử 1 con. Các bạn có thể thử trò chuyện với bot tại: m.me/toidicodedao, hoặc xem video demo tại đây.

Continue reading Hướng dẫn viết chat bot cho Facebook – Phần 1: Kiến thức cơ bản & Cơ chế hoạt động

Tổng hợp những series/bài viết hay nhất trên blog

Blog này mình viết cũng được một khoảng thời gian kha khá rồi. Với tiến độ đều đặn 2 bài/tuần, số lượng bài viết hiện tại đã lên tới con số hơn 300 bài. Để các bạn khỏi tốn công đào mộ và lục tìm, mình viết bài này tổng hợp lại những bài viết hay nhất của blog từ trước đến nay. Các bạn có thể xem bài viết này bằng cách bấm vào tab “Bài viết hay” trên menu nhé.

book.jpg

Phần lớn những bài viết này đã được tổng hợp và biên tập trong cuốn sách “Code dạo kí sự – Lập trình viên đâu phải chỉ biết code“. Quyển sách bao gồm những kĩ năng từ mềm đến cứng mà mỗi developer phải có, đảm bảo sẽ rất có ích cho các bạn sinh viên hoặc lập trình viên đã đi làm. Các bạn xem thông tin và đặt mua sách tại đây nhé: Sách Code Dạo Ký Sự.

Ngày cập nhật: 11/11/2017 (Cập nhật 3 tháng/lần).

Continue reading Tổng hợp những series/bài viết hay nhất trên blog

Mừng blog đạt mốc 500k view và 2k5 lượt like fanpage trên facebook

Kế từ lúc mình đăng bài viết mừng blog đạt mốc 100k view,tính ra đã được hơn nửa năm rồi. Nhờ sự ủng hộ của các bạn đọc gần xa, nay blog đã đạt mốc 500k view sau hơn 1 năm tính từ ngày bắt đầu (Và khoảng 70k lượt view mỗi tháng). Bài viết này là lời cảm ơn mình gửi đến mọi người, cũng như chia sẻ một số định hướng sau này của bản thân và blog.

sitebanner_gx2ThankYou

Continue reading Mừng blog đạt mốc 500k view và 2k5 lượt like fanpage trên facebook

“Quần tam giác” của developer – Developer Image Triangle

Ý tưởng viết bài này chợt nảy sinh khi mình đang xem mấy bé Idol Nhật mặc quần tam giác uốn éo khoe dáng trong hồ bơi, … nhầm, khi đang xem một khóa học ngắn mà hay về phát triển bản thân/xây dựng hình ảnh cho developer trên Pluralsight. Qua bài viết, bạn sẽ rút ra được cho mình hướng xây dựng phát triển hình ảnh bản thân nhé.

Từ Tam Giác Nhanh Rẻ Tốt

Trước tiên, ta hãy cùng nhìn lại một chút về Tam Giác Nhanh Rẻ Tốt. Tam giác này mô tả 3 khía cạnh của một dịch vụ/sản phẩm. Ba khía cạnh này liên quan và đối nghịch với nhau, không thể để đạt được cùng lúc 3 yếu tố.

  • Nếu Nhanh và Rẻ thì chất lượng không được Tốt
  • Nếu Nhanh và Tốt thì giá cả không được Rẻ
  • Nếu Tốt và Rẻ thì tốc độ không được Nhanh

Screen-Shot-2012-01-03-at-2.38.09-AM

Continue reading “Quần tam giác” của developer – Developer Image Triangle

Series SOLID cho thanh niên code CỨNG: Liskov substitution principle

Giới thiệu

Đây là đây là bài viết thứ 3 trong series “SOLID cho thanh niên code cứng”. Ở bài viết này, mình sẽ nói về Liskov Substitution Principle – Nguyên lý Thay Thế Lít Kốp (LSP).

  1. Single Responsibility Principle
  2. Open/Closed Principle
  3. Liskov Substitution Principle
  4. Interface Segregation Principle
  5. Dependency Inversion Principle

Nội dung nguyên lý:

Trong một chương trình, các object của class con có thể thay thế class cha mà không làm thay đổi tính đúng đắn của chương trình

Continue reading Series SOLID cho thanh niên code CỨNG: Liskov substitution principle

Top 26 sai lầm mà các lập trình viên “non trẻ” hay mắc phải

Gần đây, do mình bận việc học hànhlàm thêm nên không có thời gian rảnh để lên stackoverflow farm rep nữa. Tuy vậy mình vẫn giữ thói quen vào quora để theo dõi những bài hỏi đáp về Software EngineerComputer Science. Khác với stackoverflow chủ yếu tập trung vào code, những câu hỏi trên quora có phạm vi rộng hơn rất nhiều, bao gồm đủ mọi lĩnh vực đời sống.

Bản thân mình khuyên các bạn nên ít lướt facebook lại để chuyển qua đọc quora. Thay vì xem gái xinh, clip 18+, xem các thanh niên cãi nhau về việc Trấn Thành dắt Tiến Đạt vào nhà nghỉ, việc đọc các câu hỏi trên quora bổ ích và thú vị hơn nhiều. Thành viên trong quora thuộc đủ mọi thành phần, từ Junior Developer cho tới Software Architect, CTO. Những câu trả lời, lời khuyên của họ vô cùng chi tiết và hữu ích, đôi khi còn dí dóm nữa (Điển hình là 2 bài viết về “Mánh khóe không bao giờ tiết lộ của dev trùm” và “comment bá đạo“).

quora-logo Continue reading Top 26 sai lầm mà các lập trình viên “non trẻ” hay mắc phải

Series SOLID cho thanh niên code CỨNG: Open/Closed Principle

Giới thiệu

Đây là đây là bài viết thứ 2 trong series SOLID cho thanh niên code cứng. Ở bài viết này, mình sẽ nói về Open/Closed Principle – Nguyên lý Đóng Mở.

  1. Single Responsibility Principle
  2. Open/Closed Principle
  3. Liskov Substitution Principle
  4. Interface Segregation Principle
  5. Dependency Inversion Principle

Nội dung nguyên lý:

Chiều dài váy con gái nên đủ ngắn để khơi MỞ tính tò mò của con trai, nhưng nên đủ dài để ĐÓNG lại những suy nghĩ đen tối của bọn nó.

Continue reading Series SOLID cho thanh niên code CỨNG: Open/Closed Principle

Một lần theo chân team đi tiếp thị, quảng cáo, và… code dạo

Như mình đã kể ở vài bài trước, hiện mình đang là UX Developer cho team iLancaster, chịu trách nhiệm phát triển app di động cho Đại học Lancaster. Dạo gần đây, app này đang mở rộng đối tượng người dùng, không chỉ phục vụ cho sinh viên/học sinh mà còn hướng tới toàn bộ dân cư của khu Lancaster nho nhỏ này nữa. Thế là, bác Brian trưởng nhóm liên hệ với đội “Campus in the City”, đội quảng cáo/PR của trường để tổ chức 1 cái event nho nhỏ nhằm giới thiệu app và lấy ý kiến của người dùng.

Event bắt đầu lúc 9h sáng tới hơn 4h chiều. Lúc ra đến nơi, chưa thấy ai giao việc nên mình nhảy vào sắp xếp dọn dẹp phụ luôn. Event nhỏ mà họ chuẩn bị cũng khá kĩ càng, nào poster, banner, slide, rồi cả leaflet mang về nữa.

Photo 3-18-16, 9 59 02 AM
Mỗi người được phát một cái áo xanh xanh của team để mặc. Mình tranh thủ ra tự sướng một tấm trước.

Continue reading Một lần theo chân team đi tiếp thị, quảng cáo, và… code dạo

Series SOLID cho thanh niên code CỨNG: Single Responsibility Principle

Cách đây khá lâu, mình đã có một bài viết tổng quát về SOLID Principle, những nguyên lý thiết kế OOP. Nhắc lại một chút cho các bạn đã quên.

Đây là những nguyên lý được đúc kết bởi máu xương vô số developer, rút ra từ hàng ngàn dự án thành công và thất bại. Một project áp dụng những nguyên lý này sẽ có code dễ đọc, dễ test, rõ ràng hơn. Và việc quan trọng nhất là việc maintainace code sẽ dễ hơn rất nhiều.

Nắm vững những nguyên lý này, đồng thời áp dụng chúng trong việc thiết kế + viết code sẽ giúp bạn tiến thêm 1 bước trên con đường thành senior nhé (1 ông senior bên FPT Software từng bảo mình thế).

SOLID bao gồm 5 nguyên lý dưới đây:

  1. Single Responsibility Principle
  2. Open/Closed Principle
  3. Liskov Substitution Principle
  4. Interface Segregation Principle
  5. Dependency Inversion Principle

keepcalm

Continue reading Series SOLID cho thanh niên code CỨNG: Single Responsibility Principle