
Xây dựng chatbot Messenger với Node.js và Dialogflow
Trong hướng dẫn này, tôi sẽ mô tả cách bạn có thể xây dựng một chatbot Facebook Messenger kết hợp NLP (Natural Language Processing) với Dialogflow và triển khai nó lên Facebook. Bạn có thể tìm thấy toàn bộ source code của ứng dụng trên GitHub. Nhiều chatbot tận dụng xử lý ngôn ngữ tự ...

Giải pháp cho phần lưu, quản lý log hiệu quả và cực kỳ tiết kiệm chi phí
Sau một thời gian “ngưng log” các request API và SQL query thì đã mạnh dạn tìm kiếm 1 SaaS log management vừa túi tiền để thử, bởi nếu các bạn cũng biết mấy ông này rất đắt tiền, bèo bèo cũng 50$/tháng và cũng lưu được vài GB. Vô tình phát hiện ông LogDNA với chi phí khá ...

100 ngày học DevOps – Ngày 1
Chào mừng bạn đến với Ngày 1 trong 100 ngày của DevOps, tôi muốn bắt đầu hành trình này với một trong những khái niệm quan trọng nhất trong Giám sát và cảnh báo DevOps. Vấn đề cần quan tâm : Tạo CloudWatch Alert gửi email bằng thông báo SNS khi Sử dụng CPU hơn 70%. Tạo alert kiểm ...

[C#] Chạy số 0 - 9 có hiệu ứng nhanh chậm Random Number Winform
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách Random Number with Effect trong lập trình C# Winform. Trong ứng dụng này, khi các bạn nhập vào hai số nhỏ nhất Min và số lớn nhất Max, thì phần mềm sẽ thực hiện random số khoảng mà các bạn nhập ...

Temp Table SQL Server - Bảng tạm trong SQL Server
Sẽ rất có lợi khi lưu trữ dữ liệu trong các bảng tạm thời của SQL Server thay vì thao tác hoặc làm việc với các bảng cố định. Khi bạn muốn có đầy đủ quyền truy cập vào các bảng trong Database, nhưng bạn lại không có. Bạn có thể sử dụng quyền truy cập đọc ...

Tổng hợp các bài hướng dẫn về Design Pattern – 23 mẫu cơ bản của GoF
Design Patterns là gì? Design Pattern là một kỹ thuật trong lập trình hướng đối tượng, nó khá quan trọng và mọi lập trình viên muốn giỏi đều phải biết. Được sử dụng thường xuyên trong các ngôn ngữ OOP. Nó sẽ cung cấp cho bạn các “mẫu thiết kế”, giải pháp để giải quyết ...

JavaScript và những câu hỏi khó – Part 1
Dạo gần đây trên cộng đồng mạng đang nổi lên một repo rất hot javascript-questions, mỗi ngày nhận được tới hàng ngàn star. Tại thời điểm mình viết bài này là đã hơn 6000 ⭐️rồi. Mình cũng theo trend vào đọc thử và thấy có rất nhiều câu hỏi hay, nên cũng đã contribute một bản dịch ...

Bạn có thể theo nghề lập trình đến năm bao nhiêu tuổi?
Người viết: Trịnh Minh Cường Tác giả bài viết này đã 40 tuổi, sẽ theo nghề lập trình viên đến năm 50. Hiện đã kiếm đủ để hạnh phúc với cuộc sống giản dị. Các bạn đừng quá lo. Cứ học, và lập trình chăm vào. Đoạn sau là hiện thực xã hội Việt Nam. Còn bạn vẫn giỏi và đam mê, ai cấm ...

Overview quản lý bộ nhớ trong Android
Người viết: Huu Nam Overview of memory management Android Runtime (ART) và Dalvik sử dụng phân trang (paging) và ánh xạ bộ nhớ (memory-mapping hay mmapping) để quản lý bộ nhớ. Điều này có nghĩa là bất kỳ bộ nhớ nào mà một ứng dụng thay đổi, cho dù bởi việc cấp phát các đối ...

Lập trình viên có nên học Assembly không?
Assembly Language (ASM), tiếng Việt là hợp ngữ. Mục đích của mình học ASM chỉ cơ bản là muốn hiểu thêm về người bạn thân thiết nhất của mình, cái máy tính mà suốt ngày mình ngồi trước nó. Mình chỉ thật sự muốn biết là đằng sau những dòng lệnh mình code thường ngày thì bên dưới nó làm ...

Một số kỹ thuật Refactoring phổ biến
Trong quá trình code mình nhận thấy với những hàm được viết quá nhiều dòng, nhất là trong hàm đồng thời thực hiện nhiều chức năng thường gây ra nhiều vấn đề như: Khó kiểm soát, khó tái sử dụng và dễ gây ra bug vì xử lý quá nhiều logic trong hàm Mất nhiều thời gian để review làm ...

Hệ điều hành máy tính hoạt động như thế nào? (phần 2)
Người viết: Chu Thanh Hung Lời mở đầu Ở Phần 1 của loạt bài viết tìm hiểu về hoạt động của hệ điều hành, mình đã tóm lược về các phần bao gồm Quản lý tiến trình , Cơ chế lập lịch và Luồng và xử lý đồng bộ . Tuy nhiên, ngoài 3 phần này thì hệ điều hành vẫn còn rất nhiều việc ...

Giới thiệu về Deep Learning
Introduction Trong những năm gần đây, Deep Learning đã có những thành tựu quạn trọng. Từ việc phân loại hình ảnh và dịch ngôn ngữ đến chế tạo xe tự lái, tất cả các nhiệm vụ này đều được điều khiển bởi máy tính thay vì nỗ lực của con người. Deep Learning đã thâm nhập vào nhiều ...

Sự khác nhau của bộ 3 Slice, Splice và Split trong Javascript
Người viết: Tran Minh Chien Bên cạnh việc xử lý vòng lặp với mảng như bài viết đầu tiên trong series thì hôm nay mình cũng sẽ giới thiệu về một bộ ba cũng thường là những tác nhân gây đau đầu cho các lập trình viên khi thao tác với chúng : slice() , splice() , split() . Ngay từ ...

Hãy làm cho các Errors & Exceptions của bạn thân thiện hơn với người dùng
Như title, thường thì khi bắt tay vào làm một project mới, các dev sẽ quan tâm làm thế nào để nó chạy đầu tiên, sau đó là đến clean code rồi Unit Test các thứ, nhưng dường như có một vấn đề đã bị khá là nhiều dev bỏ quên, đó là xử lý các lỗi và Exception phát sinh khi sản phẩm đã lên ...

Deploy ứng dụng web đến một máy chủ từ xa nhờ vào Git push
Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS) ra đời vào năm 2005 và hiện được dùng rất phổ biến. So với các hệ thống quản lý phiên bản tập trung khi tất cả mã nguồn và lịch sử thay đổi chỉ được lưu một nơi là máy chủ thì trong hệ thống phân ...

Cách tạo một Docker đơn giản cho Node.JS
Đây là một hướng dẫn ngắn và đơn giản về docker, khá hữu ích cho các anh em Nodejs. Khi công việc kinh doanh cần tới nhiều ứng dụng web khác nhau, khi mà bây giờ framework hay ngôn ngữ lập trình chỉ là công cụ. Các công ty không bị giới hạn và có thể sử dụng bất kỳ ngôn ngữ nào ...

MySQL là gì? – Những kiến thức cơ bản về MySQL
1. Tổng quan về MySQL 1.1 MySQL là gì ? Là một hệ quản trị cơ sở dữ liệu phổ biến nhất thế giới, được các nhà phát triển ưa chuộng. MySQL có tốc độ cao, ổn định, dễ sử dụng, hoạt động trên nhiều hệ điều hành khác nhau. MySQL rất thích hợp cho các ứng dụng có truy cập cơ ...

Tạo project Rails 6 với PostgresSQL 11 bằng Docker
Người viết: Hoàng Đức Quân Ở Rails 6 có sự thay đổi rõ rệt nhằm hỗ trợ về tích hợp framework Javascript trong dự án bằng Rails. Thư mục javascript được đưa ra bên ngoài assets và quản lý hoàn toàn bằng webpack. Vì vậy, chúng ta phải thay đổi 1 chút để cài đặt project Chúng ta sẽ ...

forEach – Những điều có thể bạn chưa biết
Người viết: Trần Minh Chiến Bài viết đầu tiên trong series mình đã giới thiệu sơ lược về các vòng lặp trong javascript , và nếu có chú ý thì bạn sẽ thấy trong phần forEach mình có bật mí về nội dung của phần tiếp theo. Có thể thấy forEach có vẻ có khá nhiều tính năng vượt trội ...