
Authentication Nodejs with JWT
JSON Web Token (JWT) là 1 tiêu chuẩn mở (RFC 7519) định nghĩa cách thức truyền tin an toàn giữa các thành viên bằng 1 đối tượng JSON. Thông tin này có thể được xác thực và đánh dấu tin cậy nhờ vào "chữ ký" của nó. Phần chữ ký của JWT sẽ được mã hóa lại bằng HMAC hoặc RSA. Trên đây là định nghĩa ...

[Angular] Những kiến thức cơ bản để tạo nên một web app
Hôm nay mình sẽ đưa ra những kiến thức cần biết gọi là đủ để tạo nên một web bằng angularjs 4. Danh sách: Cấu trúc module, component Vòng đời của một component Input, Output FormGroup, FormControl NgOnchanges Gọi từ component con lên component cha và ngược lại Provider Cấu trúc ...

Tìm hiểu Icinga2 (phần 2)
Ở bài viết lần trước, mình đã monitor 1 host cơ bản với 2 dịch vụ là ping là check web. Sức mạnh chính của Icinga2 nằm trong mô đun của nó. Có hàng ngàn plugin mà cộng đồng có sẵn bên cạnh các plugin chuẩn được cung cấp bởi dự án Monitoring Plugins. Các plugin của cộng đồng có thể được tìm thấy tại ...

Tạo project Rails + Angular bằng Webpacker
1. Giới thiệu Webpack là một công cụ hỗ trợ xây dựng JavaScript module trong các ứng dụng của bạn. Webpack đơn giản hóa các workflow bằng việc xây dựng một cách nhanh chóng một đồ thị tham chiếu (dependency graph) trong ứng dụng của bạn và sắp xếp nó một cách chính xác. Webpack có thể được cấu ...

Using Zones in Angular for better performance
Trong một số bài trước, chúng ta đã nói về cách cải thiện hiệu năng ứng dụng Angular bằng cách khám phá các API DetectionStrategy của Angular.Trong khi chúng ta đã nghiên cứu nhiều tùy chọn khác nhau để cải thiện hiệu suất, hiệu năng của ứng dụng, chúng ta chắc chắn đã không nói về tất cả các tùy ...

[Elasticsearch] Phân tích và tìm kiếm dữ liệu tiếng Việt
Các bài viết trước của mình có liên quan Elasticsearch: integrate with laravel docker và docker compose Ở bài viết trước mình có giới thiệu qua về Elasticsearch việc tìm kiếm cơ bản với Elasticsearch tuy nhiên dữ liệu mới chỉ dừng lại ở tiếng Anh vậy còn tiếng Việt thì sao? Mình đã thử google ...

Viết ứng dụng iOS an toàn hơn với SSL Pinning
SSL (Secure Socket Layer) đảm bảo truyền thông giữa client-server được mã hóa qua HTTP - HTTPS (HTTP over SSL). Mã hóa dựa trên PKI (Public Key Infrastructure) và một session key. Session key đã được giới thiệu bởi vì việc mã hóa và giải mã một public/private tốn rất nhiều tài nguyên CPU và nó sẽ ...

Checklist test trang web thương mại điện tử
Trước khi xây dựng một bộ test case chi tiết dành cho test hệ thống thanh toán trực tuyến mà tôi đã hứa ở bài viết trước, chúng ta hãy cùng xem xét một bộ checklist khái quát được dùng để test website thương mại điện tử tại một công ty phần mềm của Ấn Độ: Precise Testing Solution Pvt. Ltd. Nguồn ...

Thuật toán sắp xếp nào là nhanh nhất?
Lời nói đầu Thuở còn ngồi trên ghế trường học đại học, khi học môn "Cấu trúc Dữ liệu & Giải thuật" hay là lúc đi phỏng vấn ở 1 công ty ABC, XYZ nào đó, mà cũng có thể đến tận lúc ngồi trà đá bàn luận với anh em đồng nghiệp chuyện nghề, chuyện nghiệp ... thì chắc hẳn đã từng có lần anh em Dev ...

Today Extension
Trong khuôn khổ của bài viết này thì chúng ta sẽ dùng Today Extension để hiển thị thông tin thời tiết tại vị trí của người dùng tại thời điểm đó Mục tiêu cần đạt được : làm được cái app như cái hình dưới đây Bùi Văn Nam viết 15:56 ngày 12/08/2018

Mở rộng ứng dụng Node.js với native C++ modules (Native addon)
Ngoài việc nạp các thành phần mở rộng được viết bằng js; Node.js còn có thể được mở rộng bởi các module được viết bằng c++. Mặc dù sử dụng c++ module có nhiều điểm lợi thế nhưng nó không có nghĩa rằng chúng ta nên thay thế toàn bộ các mã js của mình bằng c++ nhé. Trong bài này chúng ta sẽ cùng tìm ...

Phương thức xử lý số trong JavaScript
Trong lập trình web các bạn thường xuyên gặp các trường hợp xử lý dữ liệu kiểu number từ client, và phương pháp xử lý nhanh nhất là bằng JavaScript. Trong bài viết mình xin giới thiệu các phương thức xử lý số trong JavaScript. Trong JavaScript, các số nguyên thủy (ví dụ như: 5, 13, -6, 0, ....) ...

Xây dựng ứng dụng với TableView tự co dãn chiều cao Cell theo nội dụng hiển thị
Download project đã đc dựng sẵn để bắt đầu tại đây Run project ta sẽ được kết quả như sau ta có thể thấy nội dung của app đã ko hiển thị đúng và thiếu rất nhiều dữ liệu quan trọng, rất xấu đúng không nào. Vậy nên bây giờ chúng ta cần hiển thị đúng và đủ nội dung của từng cell tạo 1 custom cell ...

Một số lệnh hữu ích trên terminal
1. Xem log realtime Thông thường ta hay dùng lệnh tail -f /var/log/nginx/access.log để xem realtime log. Nhưng ta có thể không cần dùng option -f mà dùng trực tiếp lệnh tailf /var/log/nginx/access.log cũng có chức năng tương tự. Đỡ mỏi tay hơn 1 chút Hoàng Hải Đăng viết 15:56 ngày 12/08/2018

9 Tips để tạo một Sprint Backlog tốt
The sprint backlog là một danh sách đơn giản bao gồm các task, các task này phải được thực hiện bởi team để bàn giao các chức năng trong phần tăng trưởng vào cuối sprint đó. Sprint backlogđược thực hiện trong phần thứ hai buổi họp Sprint planning với sự tham gia của tất cả các thành viên trong ...

Gem counter_culture trong rails giúp việc counter cache và tính tổng giữa bảng liên kết
Giới thiệu counter_culture giúp việc counter cache trong Rails app với cải tiến nhiều hơn trên counter cache chuẩn của Rails: Cập nhật counter cache khi các giá trị thay đổi không chỉ lúc tạo và xóa Hỗ trợ counter cache thông qua các mối quan hệ bảng nhiều cấp Hỗ trợ tên cột động để có thể ...

Tìm hiểu gem grape-swagger.
Gem grape-swagger cung cung cấp cho ta việc tự động generate document cho Grape API , khi dùng gem này kết hợp với gem Swagger UI ta có 1 giao diện quản lý API document rất đẹp, bạn có thể xem demo ở đây: the petstore demo . Cài đặt. để cài đặt gem, ta chỉ cần them vào Gemfile: gem ...

Cách dùng Notification trong Android
1. Định nghĩa: Notification là một thông điệp hiển thị thông tin đến cho người dùng bên ngoài ứng dụng. Nó thường xuất hiện phía trên cùng của màn hình. Để xem chi tiết thông điệp (thông báo), bạn chỉ cần kéo thanh Notification drawer xuống. Thực tế trong các dự án phát triển app thì việc sử dụng ...

Android Switch Icon and Double sided seekbar
This a library that simplifies switch icons and is compatible from API 15 (Android 4.0.3).. Follow this easy tutorial to implement. Add it in your root build.gradle at the end of repositories allprojects { repositories { ... maven { url "https://jitpack.io" } ...

How Butterknife library works?
Trước đây khi Google chưa ra đời Data Binding Library thì thư viện Butterknife được sử dụng rộng rãi để viết code gọn hơn và nhanh hơn. Với Butterknife, chúng ta không cần phải lặp lại nhiều lần findViewById() hoặc setOnClick(), setLongClick(), ... mà chỉ cần khai báo Annotation, ví dụ Cách ...