Bài viết của Bùi Văn Nam

Tìm hiểu về một số phương thức đặc biệt trong CSS selector

Mở đầu Đôi khi trong các đoạn code CSS chúng ta thường bắt gặp một số ký tự như >, +, ~ ngoài những cách viết thông thường. Vậy các ký tự này có tác dụng gì trong CSS? Trong phạm vi bài viết này mình xin giải thích rõ hơn về công dụng và cách thức hoạt động của các CSS selector này. Ví dụ ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Action Mailer trong Rails

Gửi email là một tính năng gần như không thể thiếu ở bất kỳ trang web hiện đại nào hiện nay. Rails là một framework giúp tạo ra những ứng dụng web hiện đại, đầy đủ tính năng, vì vậy, việc gửi email cũng được Rails hỗ trợ rất tốt, thông qua Action Mailer. Ở bài này, mình sẽ nói qua về cách tạo một ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Core Graphics Tutorial - Part 1

Core graphics tên gọi khác “Quartz”, là 1 trong những framework lâu đời nhất trên ios cung cấp các API liên quan đến đồ hoạ như: vẽ các hình thoi tròn vuông, fill màu vẽ bóng, xử lý hình ảnh, hoặc dùng transform view quay góc, zoom to nhỏ, tạo ảnh, các bộ lọc ảnh, hay thậm chí tạo ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Performance với SQLite

Methodology Mỗi thí nghiệm liên quan đến việc so sánh hai hoặc nhiều cách insert 1000, 10.000 và 100.000 bản ghi ngẫu nhiên được tạo thành hai loại bảng khác nhau. Một bảng rất đơn giản (simple) bao gồm một cột số nguyên duy nhất. Một bảng (tracks) thực tế hơn mô tả một tập hợp các bản ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Lưu dữ liệu dưới client bằng LocalStorage

Api LocalStorage cho phép web dev lưu dữ liệu dưới dạng key-value trên máy của user. Việc lưu dữ liệu như vậy sẽ giúp cải thiện performance khi mà số lượng request database phía server được giảm đi, từ đó giảm chi phí hạ tầng server. Trước khi có sự ra đời của LocalStorage, các dev khi muốn lưu ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Làm việc với Custom Font trong Android O

Trong bài viết này, mình sẽ giới thiệu cho các bạn cách thiết lập môi trường để hỗ trợ phiên bản Android O preview, và làm thế nào để tạo ra text tự động co giãn để phù hợp với cấu hình màn hình hiện tại. Qua ví dụ này, chúng ta sẽ thấy được cách Android O làm việc với custom fonts như nào. Thêm ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

Kiểm tra một website chuẩn SEO

SEO là viết tắt của Search Engine Optimization , có thể hiểu nôm na là Tối ưu hóa công cụ tìm kiếm. Tức là làm trang Web và các nội dung số có được thứ hạng cao trên bảng xếp hạng tìm kiếm của các trang Search như Google, Bing, Yahoo... SEO là một phần của SEM ( Search Engine marketing) và là ...

Tác giả: Bùi Văn Nam viết 15:05 ngày 12/08/2018 chỉnh sửa

5 bước cài đặt LEMP stack trên Ubuntu 16.04

LEMP stack là một nhóm các phần mềm được sử dụng để tạo nên một web server xử lý ngôn ngữ PHP. Nhóm phần mềm này gồm hệ điều hành Linux, phần mềm chạy dịch vụ web server là Nginx. Cơ sở dữ liệu được lưu trữ trên MySQL và ngôn ngữ động PHP. Trong bài hướng dẫn này mình sẽ hướng dẫn các bạn 5 bước ...

Tác giả: Bùi Văn Nam viết 15:04 ngày 12/08/2018 chỉnh sửa

Làm gầy Model và Controller

Chúng ta hay có thói quen viết quá nhiều logic tính toán hay truy vấn cơ sở dữ liệu vào một Model, một Controller duy nhất hoặc gọi trực tiếp các truy vấn cơ sở dữ liệu ngay trên Controller mà không thông qua việc đóng gói dữ liệu. Khi chúng ta làm như vậy thì sẽ gây khó khăn: Cho việc tái sử ...

Tác giả: Bùi Văn Nam viết 15:04 ngày 12/08/2018 chỉnh sửa

OpenCV With Python Part 1

1. Giới Thiệu OpenCV là một thư viện mã nguồn mở hàng đầu cho thị giác máy tính (computer vision), xử lý ảnh và máy học, và các tính năng tăng tốc GPU trong hoạt động thời gian thực. OpenCV được phát hành theo giấy phép BSD, do đó nó hoàn toàn miễn phí cho cả học thuật và thương mại. Nó có các ...

Tác giả: Bùi Văn Nam viết 15:04 ngày 12/08/2018 chỉnh sửa