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

Sử dụng SwiftyJSON và cách tạo class trong swift

SwiftyJSON là lib dùng để giải quyết các vấn đề về json, bài viết này mình ko đề cập đến cách sử dụng SwiftyJSON.(Vì cách sử dụng nó rất dễ dàng nên bạn có thể search google) Mà mình chủ yếu nói về làm thế nào tạo 1 class và cách dùng nó 1 cách đơn giản và hiệu quả. Thông thường, dữ liệu của app ...

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

Mời các bạn góp ý project multi digit recognition với CNN

Model Multi digit Recognition . (HOG + SVM accuracy có 90%) trong khi đó CNN đạt 99%. Model này mình đã thêm "image data generation" để tránh trường hợp digit bị skew. Tuy vậy khi đưa vào multi recognite thì số 1 toàn bị fail .Chưa tìm ra được nguyên nhân để khắc phục. Có lẽ là do phần image ...

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

Guide to Creating Custom UIView

Trong bài viết này, mình sẽ hướng dẫn lưu ý khi tạo custom UIView sử dụng autolayout mà không cần Nib/Storyboard. Why custom UIView? Chúng ta tạo custom view khi mà những control trong UIKit không đủ để ta thực hiện công việc của mình. Custom view là tập hợp của nhiều view khác cùng với custom ...

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

Click link trong TextView

Trong lập trình sự kiện trong Android chắc các bạn gặp nhiều đoạn TextView mà có chưa link trang web hay là số điện thoại trong đó mà người dùng có thể click vào được, hay phức tạp hơn là 1 hashtag như kiểu facebook. Các bạn đều biết các kỹ sư lập trình đều sử dụng Spannable để gắn thuộc tính cho ...

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

20 Laravel Eloquent Tips and Tricks

Bài dịch từ trang laravel-news.com Có vẻ như Eloquent ORM trong Laravel có cơ chế hoạt động đơn giản, nhưng bên cạnh đó có những tính năng không phải ai cũng biết. Trong bài viết này, tôi sẽ chỉ cho bạn một vài thủ thuật hay ho. Đừng làm thế này: $article = Article::find($article_id); $art ...

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

DataDog - Cài đặt và cấu hình cho rails application

Ở phần trước mình đã giới thiệu về những điều tuyệt vời từ DataDog mang lại. Sang phần tiếp theo này, mình sẽ hướng dẫn cài đặt agent của DataDog và config cho rails application 1. Cài đặt Agent Truy cập vào https://app.datadoghq.com/signup và đăng ký tài khoản theo các bước sau: Bước 1 : ...

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

[NodeJs][React] Học cách làm app bằng NodeJs với React (Phần 3)

Như phần trước ta đã tạo được user thông qua ReactJs, Nodejs và Mongo DB. Giờ phần này ta là tiếp theo ta thực hiện việc kiểm tra và đăng nhập Đăng nhập Tiếp tục với file user.js là làm hàm kiểm tra đăng nhập như sau validateSignIn: function(username, password,callback) { ...

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

Tối ưu tải trang với HTTP/2 Server Push và Node.js

Từ phiên bản Node.js 8.4.0, Node.js đã đưa vào thử nghiệm HTTP/2. Tại phiên bản này chúng ta có thể bật HTTP/2 bằng cách sử dụng cờ --expose-http2 khi khởi động ứng dụng. Đến thời điểm hiện tại thì Node.js 10 đã ra đời và HTTP/2 là module mặc định, chúng ta không phải thêm cờ khi khởi động nữa. ...

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

Gọi columns, rows từ một mảng 2 chiều một các đơn giản trong Ruby với Array#transpose method

Giả sử bạn có một mảng 2 chiều với 3x3 phần tử. Thông thường khi tạo mảng 2 chiều như vậy chúng ta sẽ tạo thành 1 array với 3 phần tử, mỗi phần tử lại là 1 array với 3 phần tử. [1] pry(main)> grid = [ [1] pry(main)* [1,2,3], [1] pry(main)* [4,5,6], [1] pry(main)* [7,8,9] [1] ...

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

Kỹ thuật chuyển đổi IPv4 sang IPv6 sử dụng Công nghệ đường hầm (Tunnel)

Ở phần trước, chúng ta đã cùng nhau tìm hiểu về cấu trúc và các loại địa chỉ IPv6. Trong phần này, chúng ta sẽ cùng nhau tìm hiểu về kỹ thuật chuyển đổi IPv4 sang IPv6. Thủ tục IPv6 phát triển khi IPv4 đã được sử dụng rộng rãi, mạng lưới IPv4 Internet hoàn thiện, hoạt động dựa trên thủ tục này. ...

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