Bài viết của Hoàng Hải Đăng

Giới thiệu Gem roo và roo-xls, áp dụng qua thực tế.

Import data từ file .csv, .xls, .... và import vào database có vẻ là 1 chức năng đã khá quen thuộc, và cũng vì vậy mà mỗi web framework đều có 1 vài thư viện hỗ trợ việc đọc các file spreadsheet rất tốt. Nhưng các thư viện này sẽ cung cấp các chức năng cơ bản, và để chúng hoạt động phù hợp ...

Tác giả: Hoàng Hải Đăng viết 16:21 ngày 12/08/2018 chỉnh sửa

Xây dựng package Counter Cache cho Laravel 5

Trong quá trình làm dự án mình có gặp bài toán như sau : Ta có hai bảng products và comments, với quan hệ 1 - n. Mỗi product có nhiều comments. Trong mỗi comment chứa 1 rating_value và nội dung comment. Bài toán đặt ra là với mỗi product ta cần tình được tổng số comments và giá trị rating trung ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Quản lý log ứng dụng với ELK Stack (Elasticsearch, Logstash và Kibana)

Như phần trước mình đã giới thiệu về GrayLog 2 - quản lý log của ứng dụng . Hôm nay mình tiếp tục giới thiệu một bộ quản lý log ứng dụng đến từ Elastic là ELK Stack ( E lasticsearch, L ogstash và K ibana) để các bạn có thêm lựa chọn khi muốn triển khai một ứng dụng quản lý log nhé. Bài viết giới ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Computer Vision - Image Processes - Area Processes - Convolution

I. Introduction Bài trước chúng ta đã tìm hiểu về phương pháp xử lý ảnh point processes (xử lý theo điểm), hôm nay chúng ta sẽ đi tìm hiểu "convolution" hay còn gọi là tích chập, một bước rất quan trọng và cực kỳ hữu dụng trong phương pháp area processes (tức xử lý theo vùng), có ứng dụng rất ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

LÀM THẾ NÀO ĐỂ LỰA CHỌN KỸ THUẬT KIỂM THỬ TỐT NHẤT?

Nhắc tới kỹ thuật kiểm tra phần mềm chính là đề cập đến phương pháp hoặc cách thức để kiểm tra một phần mềm hoặc một phần của phần mềm. Mỗi kỹ thuật kiểm tra đều có những lợi ích riêng. Các kỹ thuật khác nhau nhắm tới các loại khiếm khuyết khác nhau. Vì vậy, sẽ không đúng khi gọi một kỹ thuật tốt ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Custom Validation Rules In Laravel 5.5

Như các bạn đã biết, Laravel 5.5 đã chính thức "ra mắt" được một thời gian. Ngoài việc, phiên bản này là phiên bản LTS (Long Team Support) thì so với các phiên bản trước đó, những tính tăng mới không còn có điểm gì quá nổi bật. Theo cá nhân tôi, đây cũng là điều dễ hiểu vì Laravel đã đạt đến độ "ổn ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Nên thiết kế website chuyên nghiệp ở đâu?

Hiện nay, các cá nhân, công ty, doanh nghiệp thiết kế website mọc lên như nấm. Chỉ cần lên Google và search từ khóa công ty thiết kế website là bạn sẽ thu lại được hàng ngàn kết quả khác nhau. Tuy nhiên, điều mà người tiêu dùng quan tâm đó là nơi nào mới đảm bảo cung cấp dịch vụ chất lượng, chuyên ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Ruby on Rails: Upload file một cách an toàn với Shrine.rb và Dropzone.js

Lời mở đầu Một form cho cho việc upload file có thể là một kẽ hở bảo mật để tấn công. Nhận ra điều đó, Janko Marohnić đã viết ra thư viện Shrine nhằm cải thiện tình trạng hiện thời của upload file trong Rails. Bạn có thể xem thêm trong blog của anh ấy hoặc trong documentation của Shrine để hiểu ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Simple iOS application HTTP communication using DelegatingHandler Improvement of surrounding environment

In today's native client application, I think that it is not an overstatement to say that there is no one that does not perform HTTP communication, I think that is the basis of application development basics. I'm pretty sure that we will feel that we want to intersperse various processing before ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa

Hướng dẫn lập trình macOS (phần 3 tiếp)

Ở phần trước chúng ta đã viết xong tất cả các hàm cho những button ở trên màn hình, cơ bản app của chúng ta đã chạy thành công nhưng vẫn chưa đủ. Những button ở trên thanh menu vẫn chưa được viết các hàm để hoạt động. Ở phần này chúng ta sẽ tiếp tục làm nốt các button ở trên thanh menu để hoàn ...

Tác giả: Hoàng Hải Đăng viết 16:20 ngày 12/08/2018 chỉnh sửa