
Net::HTTP
Một HTTP client API của Ruby Net::HTTP cung cấp một thư viện rất mạnh, nó có thể sử dụng để xây dựng các HTTP user-agent. Để biết thêm về HTTP bạn hãy xem RFC2616. Net::HTTP được thiết kế để làm việc được với URI. URI::HTTP#host, URI::HTTP#port và URI::HTTP#request_uri được thiết kế để làm việc ...

Giới thiệu về Selenium Web Driver
Những bài viết trước mình đã tìm hiểu về Selenium IDE - 1 phần trong bộ kiểm thử tự động miễn phí Selenium. Để tiếp nối quá trình tìm hiểu và học tập, mình sẽ viết các bài viết Selenium Web driver. Trước hết, mình sẽ nhắc lại sơ qua về SELENIUM. A. SELENIUM 1. Selenium là gì? Selenium là bộ ...

How to avoid memory leaks in Java
Tự quản lý bộ nhớ trong máy ảo Java (JVM) được xem là tính năng mạnh nhất của Java, và là một trong những lý do khiến các lập trình viên chọn Java thay vì chọn các nền tảng và ngôn ngữ lập trình khác. Theo lý thuyết mà các Java-er thường quảng cáo là "bạn chỉ cần viết code tạo các đối tượng - ...

Thêm thuộc tính động vào Model ActiveRecord Rails
Trong quá trình làm việc thì chắc hẳn ai trong chúng ta cũng đã gặp trường hợp không thể nắm bắt hết tất cả các thuộc tính của 1 model hoặc thuộc tính sẽ phát sinh trong quá trình xây dựng ứng dụng. Một ví dụ điển hình là hệ thống theo dõi các địa chỉ liên lạc có một model Contact bao gồm name, ...

Bootstrap Tags Input
Chào các bạn, hôm nay mình xin phép giới thiệu một jquery plugins cung cấp giao diện người dùng cho Twitter Bootstrap để quản lý các tags đó là Bootstrap Tags Input. Bài viết của mình chủ yếu là dịch từ trang chủ http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/examples/, mình sẽ không ...

Game với HTML canvas
Trong bài viết này tôi sẽ hướng dẫn tạo một game đơn giản mô phỏng chuyển động với canvas và javascript Đầu tiên ta sẽ tạo file html và một vẽ ra một khung mô phỏng game bằng canvas với kích thước là 600 * 400 Tham khảo github <!DOCTYPE html> <html> <head> <meta ...

Inject mọi thứ - ViewHolder và Dagger 2 (với Multibinding và AutoFactory)
Mục đích chính của Depedency Injection pattern được implement bởi Dagger 2 là tách riêng việc khởi tạo khỏi hành vi của đối tượng. Trong thực tế, điều này có nghĩa là tất cả các lời gọi toán tử new, newInstance sẽ không được gọi ở bất kỳ nơi nào khác ngoài Modules của Dagger. Cái giá của Dagger - ...

Laravel Deep Dive
Laravel là một trong những framework php nổi tiếng nhất hiện nay. Nó hỗ trợ cho lập trình viên rất nhiều trong việc tổ chức cấu trúc cho project, xử lý truy vấn dữ liệu, xử lý các tác vụ liên quan đến queue, job,, load các package cần thiết cho project... Tuy nhiên nó cũng làm cho lập trình viên ...

Mobile App Performance Testing: Strategy, CheckList, Tools
Đối với bất kỳ ứng dụng dành cho thiết bị di động nào, hiệu suất là rất quan trọng. Nếu ứng dụng dành cho thiết bị di động của bạn không hoạt động tốt, người dùng sẽ gỡ bỏ ứng dụng của bạn để tìm ứng dụng khác hoạt động tốt hơn. Ứng dụng di động của bạn cần phải được kiểm tra kỹ lưỡng trước khi ...

Quy hoạch động - một thuật toán thần thánh
Trong bài viết này, tôi sẽ giới thiệu với các bạn một thuật toán thần thánh: quy hoạch động. Nếu bạn tham gia các cuộc thi code, bạn nhất định phải biết thuật toán này. Gần một nửa các bài thi trong các cuộc thi code cần đến quy hoạch động. Tất nhiên, có những cách khác để giải bài toán đó. ...

Zero downtime deployment for Rails with Capistrano and Unicorn
Trên Viblo cũng có khá nhiều bài viết về việc auto deploy một ứng dụng Ruby on Rails với Capistrano. Nhưng mình cũng vẫn chia sẻ bài viết này với mục đích hướng dẫn mọi người chi tiết hơn trong việc cài đặt một server từ chưa có gì cho tới khi ứng dụng của chúng ta được chạy và có khả năng deploy ...

Hướng dẫn cách mở rộng disk Linux LVM khi mở rộng ổ cứng máy ảo
Bài viết này mình sẽ hướng dẫn các bạn cách nâng cấp ổ cứng server elastic search nói riêng và ổ cứng cho server Linux sử dụng LVM nói chung. I. Các bước chuẩn bị trước khi tiến hành nâng cấp. 1.Query get tổng số lượng các object trước khi tiến hành nâng cấp disk. (ví dụ cho trường hợp get số ...

Cơ bản về API testing (P1)
Nói đơn giản, API (Application Programming Interface) là cái cầu nối giữa client và server. Client ở đây có thể là máy tính, điện thoại sử dụng hệ điều hành khác nhau và được viết bằng những ngôn ngữ khác nhau. Tương tự, server back-end cũng được viết bằng các ngôn ngữ khác nhau. Để 2 thằng này có ...

Rails 5 & Vue.js: Hết âu lo và hứng thú hơn với frontend
Khi Node xuất hiện, nó nhanh chóng trở thành một xu thế. Khi Angualar ra đời, dev sử dụng nó mọi lúc mọi nơi. Rồi sau đó đến React, Flux/Redux, nhưng vẫn không khiến "tôi" hứng thú với frontend. Lý do là mỗi khi "tôi" cố gắng tiếp cận những xu hướng mới đó, "tôi" thật sự rất đau đầu với những ...

Tính toán dung lượng ổ cứng cần cho Elasticsearch
Gần đây trong dự án của mình có phát sinh yêu cầu cần nâng cấp ổ cứng cho Cluster Elasticsearch, tuy nhiên để đưa ra con số chính xác cần tăng thêm bao nhiêu thì mình lại không thể cho ra con số cụ thể. Sau khi search google một hồi thì mình tìm thấy công thức cho vấn đề này. http://svops.com/blog/ ...

Giới thiệu về redux saga
Redux-Saga là một thư viện redux middleware, giúp quản lý những side effect trong ứng dụng redux trở nên đơn giản hơn. Bằng việc sử dụng tối đa tính năng Generators (function*) của ES6, nó cho phép ta viết async code nhìn giống như là synchronos. Saga không chỉ tồn tại trong thế giới javascript, ...

Import dữ liệu lớn từ file CSV
Import nhiều dữ liệu vào Rails ActiveRecord models có thể import từ các file JSON, CSV hoặc các loại file khác. Bài này mình sẽ nói về cách import nhiều dữ liệu từ file CSV. Importing từ file CSV vào trong Rails Cách xấu Ví dụ trong file CSV của mình có 10000 bản ghi require 'csv' csv = ...

Understanding Convolutional Neural Networks for Natural Language processing
Khi chúng ta nghe về Convolutonal Neural Networks (CNNs), chúng ta nghĩ về Computor Vision (thị giác máy tính). CNNs là phần chịu trách nhiệm lớn trong việc phân loại hình ảnh, và nó là phần cốt lõi của hầu hết Computer Vision ngày nay, từ việc xử lí tự động tag của Facebooks cho đến lái xe tự ...

[Java Core] Garbage Collection
Khi chạy một chương trình, có vô số object được khởi tạo như String, Interger, ArrayList, Map … và các defined object được tạo ra và lưu trữ trong memory lúc runtime. Sẽ có một vấn đề xảy ra đối với memory lúc này. Khi memory đầy, JVM phải loại bỏ một vài objects để lấy chỗ khởi tạo các ...

Giới thiệu Gem Wicked PDF trong Rails
Ở bài viết này mình xin giới thiệu về gem wicked_pdf. Gem Wicked PDF giúp bạn chỉ cần viết một trang HTML như bình thường, sau đó nó sẽ giúp bạn tạo file PDF 1 cách dễ dàng bằng việc sử dụng các tiện ích wkhtmltopdf để tạo file PDF. Wicked PDF làm việc trên ruby 1.8.7 -> 2.3 và rails 2 -> ...