
PSR-3-logger-interface
Giới thiệu . Hôm trước ngồi bắt đầu gõ PHP, nhưng mà đọc code covetion, có khi còn nhầm nhọt , vì quên chưa thuộc. Thế là thôi, quyết định ngồi đọc code convention thì kiếm được PSR0 to PSR4. Tham khảo bài viết về code convention của một bạn trên viblo, thấy PSR3 chưa được đề cập đến, nên kiếm ...

Encrypted Credentials với Rails 5.2
Phiên bản Rails 5.1 đã giới thiệu cách để bảo mật các thông tin bí mật(encrypted credentials), có 2 nơi bạn có thể đặt các thông tin bí mật của mình là secrets.yml và secrets.yml.enc. Điều này gây ra một chút nhầm lẫn khi bạn sử dụng các thông tin bí mật thông thường hoặc các thông tin bí mật đã ...

Negative Testing và cách viết test case Negative
Positive testing và Negative testing là gì? Positive testing: Positive testing, hay còn được gọi là “Happy path testing” thường là hình thức kiểm thử đầu tiên mà 1 người kiểm thử sẽ thực hiện trên 1 ứng dụng. Đó là quá trình chạy 1 kịch bản kiểm thử chỉ với dữ liệu đúng và hợp lệ. ...

2 cách để test preloading/eager-loading của ActiveRecord associations trong Rails
Chắc nhiều bạn đã từng dùng #includes, #preload or #eager_load để tăng performance và tránh truy vấn N+1. Nhưng trong đó chưa chắc code đã thực hiện đúng đắn và có association preloaded như ý mong muốn hay không? làm sao để test nó? Dưới đấy có 2 cách có thể giúp test. Hãy tưởng tượng rằng chúng ta ...

Phần 3 - Cách thêm thư viện (module) vào Android project
Một dự án Android luôn sử dụng các thư viện ngoài để giảm thiểu thời gian coding cũng như chi phí phát triển, đảm bảo tính tái sử dụng. Việc thêm thư viện hay một module vào dự án Android hiện nay là không khó và cực kỳ dễ dàng khi Gradle được tích hợp sử dụng trong một dự án Android. Để hiểu rõ ...

Sử dụng Elasticsearch để tìm kiếm full-text trong Rails
Trong bài viết này chúng ta cùng tìm hiểu cách implement full-text search trong Ruby on Rails sử dụng Elasticsearch. Ngày nay hầu như mọi người đều đã từng sử dụng các công cụ tìm kiếm có gợi ý sẵn, nếu bạn không biết chắc từ khóa mình cần tìm là gì, thì việc các công cụ tìm kiếm có gợi ý hẵn là ...

Một số query phổ biến trong Elasticsearch
Bài viết sẽ giới thiệu một số queries phổ biến trong elasticsearch như là match, phrase_match, prefix, term, multi_match, và bool. Tổng quan về một số queries Query Name Chức năng Query mẫu Matching Text Not Matching Text match - Matches nếu 1 term trong query đó match - ...

Rails Autoloading and Reloading Constants
Giới thiệu Với code Ruby bình thường bạn cần phải khai báo các file chứa các class phụ thuộc với lệnh require. Việc này cũng khá quen thuộc bởi vì hầu hết các ngôn ngữ đều như vậy require 'application_controller' require 'post' class PostsController < ApplicationController def index ...

5 hàm Ruby bạn nên sử dụng
Chúng ta đều biết Ruby sẽ dạy chúng ta cách thể hiện ý tưởng của mình vào một cái máy tính. Và đó là một trong những lý do chính làm cho Ruby trở thành một lựa chọn phổ biến cho phát triển web. Giống như các ngôn ngữ khác, có rất nhiều cách để thực hiện một vấn đề trong Ruby. Tuy nhiên, cách giải ...

Ruby on Rails: Sử dụng select, reject, collect, inject và detect
Học Rails cũng có nghĩa là học Ruby, trong bài viết này sẽ đề cập tới một trong những vấn đề thường gặp mà mỗi lập trình viên mới code Ruby gặp phải đó là vòng lặp. Tìm hiểu vòng lặp trong Ruby được coi như một quá trình tiến hóa nếu bạn mới code Ruby. Thường thì bạn sẽ luôn luôn tìm cách để sử ...

Monitor Amazon Cloudwatch Log kiểm soát truy cập qua SSH
Rõ ràng bảo mật là một vấn đề lớn trong ngành kỹ thuật, public cloud cũng không phải ngoại lệ . Nếu bạn search Google "top cloud security concerns", một trong những bài viết ở trên đầu có tiêu đề là "9 worst cloud security threats". Trong phần Account Or Service Traffic Hijacking : An intruder ...

BackgroundWorker trong ứng dụng C# Windows Form
Hẳn đối với mỗi chúng ta, khi nhắc đến khái niệm Thread thì khá là hoang mang, và để handle được nhiều thread cùng chạy đồng thời, mượt mà, và tương tác lẫn nhau thì cần am hiểu về Thread khá tốt. C# hiện nay khá mạnh trong việc phát triển ứng dụng Desktop Application , và nó cũng sinh ra ...

Làm sao cải thiện tốc độ JSON Generation trong Rails
Hiện nay, chúng ta biết một số cách để tạo đối tượng trong JSON Dùng to_json() RABL Active model serialisers JBuilder 1. JBuilder json.extract! message, :id, :content, :chat_id json.user do json.cache!(["user_", message.user_id]) do json.partial! 'users/user', user: ...

Kiến thức cơ bản về SQL dành cho comtor ( Phần 1)
SQL là gì ? SQL là một ngôn ngữ sử dụng trong cơ sở dữ liệu quan hệ, được sử dụng khi muốn trích xuất dữ liệu từ bảng bằng các theo tác như Select(選択)、Projection(射影)、Combine (結合) SQL là ngôn ngữ có thể sử dụng chung ở bất kể app hay loại nào của cơ sở dữ liệu quan hệ. Có thể mô tả bằng cấu trúc ...

Machine Learning thật thú vị (2): Tạo sách văn học và game Mario
Trong phần 1, chúng ta đã đề cập đến việc Học Máy đã sử dụng các thuật toán chung chung để tìm ra những điều thú vị về dữ liệu bạn có mà không cần phải viết những dòng mã cụ thể để giải quyết bài toán của bạn. Trong phần này, chúng ta sẽ dành thời gian tìm hiểu một thuật toán làm được những điều ...

Sử dụng proxy trong Scrapy
Giới thiệu Scrapy là một framework chuyên được sử dụng để extracting data từ web. Nó cao hơn một tầng so với một số lib python cùng chức năng như Requests, BeautifulSoup, urrlib2... Scrapy phù hợp cho những project chuyên biệt về crawl. Nó cung cấp CLI tools đầy đủ để phát triển nhanh một ...

Tìm hiểu về testNG framework (Phần 6)
TestNG là một framework kiểm thử tuyệt vời. Nó cung cấp rất nhiều tính năng có thể giúp chúng ta tạo ra những frameworks mạnh mẽ và dễ bảo trì. Trong chương này, chúng ta sẽ học Làm thế nào để thử lại các phép thử không thành công trong TestNG. Bạn phải thấy thất bại ngẫu nhiên trong quá trình ...

Android Architecture Components: ViewModel
Hôm nay tôi muốn nói đến ViewModel trong Android Architecture Components.Như bạn biết, thành phần này rất hữu ích khi bạn muốn quản lý và xử lý dữ liệu cho giao diện của bạn (Ví dụ Activity hoặc Fragment). Bây giờ thì cùng thử xem triển khai ViewModel vào trong dự án của bạn thế nào nhé. 1. ...

Java 8 Method Reference (Phần 2)
Ở phần 1, mình đã giới thiệu qua 2 loại method preference - Method reference một static method - Method reference một instance method của một object có kiểu đặc biệt Giờ chúng ta sẽ tìm hiểu nốt 2 loại còn lại Method reference một instance method của một object đã tồn tại. Trong trường hợp ...

Android: SQLite Database Với OrmLite
Xin chào các bạn ! Hôm nay, mình xin giới thiệu với các bạn 1 ORM Lib rành cho việc thao tác với Database trong android. Đó là OrmLite Vậy OrmLite là gì? Nó là viết tắt của Object Relational Mapping Lite cung cấp một số chức năng để làm việc với các đối tượng Java tới cơ sở dữ liệu SQL. Nó tránh ...