Tạo ứng dụng đọc các loại mã vạch với Mobile Vision API
Chào các bạn! Đến hẹn lại phải lên, hôm nay mình sẽ hướng dẫn các bạn tạo một ứng dụng đọc mã vạch sử dụng Google Play Services. Trước hết bạn cần tạo một project Android mới, cách tạo rất cơ bản mình xin phép không nêu chi tiết ở đây. Cấu hình thư viện thông qua build.gradle Chúng ta sẽ sử ...
Nâng cao đánh giá sprint với trò chơi tàu cao tốc
Tôi thường sử dụng các trò chơi sáng tạo như một bổ sung hữu dụng cho buổi đánh giá sprint.Chúng giúp cho khách hàng hiểu rõ hơn và do đó cải tiến sản phẩm. Một trong những trò chơi yêu thích của tôi là tàu tốc độ. Trò chơi tàu tốc độ khám phá nỗi đau và công việc của người dùng. Trung tâm của ...
Một vài vấn đề về Active Record Associations (phần 3)
Phần này chúng ta sẽ tìm hiểu chi tiết về: has_many Khi ta khai báo một has_many association, sẽ có 17 hàm liên quan đến association này: collection collection<<(object, ...) collection.delete(object, ...) collection.destroy(object, ...) collection=(objects) collection_singular_ids colle ...
Một số lưu ý khi viết CSS
Sử dụng Class để định dạng CSS, không nên dùng Id Chúng ta đã biết #id trong CSS là để chỉ đích danh một element, nó giống như số chứng minh thư của bạn, mỗi người dùng một cái, không có hai người nào có chung số CMT. Còn .class thì khác, nó để nhóm những elements có đặc điểm chung để xử lý luôn ...
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 : ...
Một vài chia sẻ về sử dụng Map trong Java
Có lẽ mọi người đã quá quen thuộc với Java, cũng như cách sử dụng Map trong Java. Nhưng sau đây, tôi xin chia sẻ các cách mà tôi hay sử dụng Map trong Java để giúp tăng tốc độ xử lý process, cũng như source code trành phức tạp, rườm rà. Sau đây, tôi sẽ chia sẻ với các bạn các phương pháp tôi hay ...
[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) { ...
Define color With iOS 11 Color Assets
Hầu hết các dev lựa chọn define trong code, dưới một cái tên nào đó. Điều này giải quyết vấn đề sử dụng trong code của bạn, nhưng không thực sự hữu ích nếu bạn sử dụng Storyboards và XIB, nơi bạn cần tiếp tục chọn màu theo cách thủ công. Trên iOS 11 sẽ giải quyết vấn đề đó cho bạn. if ...
Giới thiệu Constraint Layout 1.1
Như các bạn đã biết Constraint Layout giúp chúng ta đơn giản đi rất nhiều trong việc tạo các layout, giao diện phức tạp và bạn có thể xây dựng hầu hết giao diện bạn muốn bằng cách tinh chỉnh trên UI Editor có trên Android Studio. Nó thường được mô tả và mạnh mẽ hơn rất nhiều với RelativeLayout. Với ...
Sync Data from MongoDB to Elasticsearch with Transporter
Giới thiệu MongoDB là gì? MongoDB là một hệ quản trị cơ sở dữ liệu mã nguồn mở thuộc NoSQL. Nó được thiết kế theo kiểu hướng đối tượng, các bảng trong MongoDB được cấu trúc rất linh hoạt, cho phép các dữ liệu lưu trữ trên bảng không cần tuân theo một cấu trúc nhất định nào cả (điều này rất ...
Hướng dẫn xây dựng API đơn giản với Nodejs và Mysql, kết hợp frontend dùng reactjs
Bài này sẽ nói về cách build một ứng dụng sử dụng ReactJs với phần server sử dụng API build bằng Nodejs. Phần build server API Nodejs các bạn xem chi tiết tại bài sau Hướng dẫn xây dựng API đơn giản với Nodejs và Mysql Khởi tạo project Requirement Nodejs 6.x Mysql 5.x ReactJs 16.x ...
Hiểu nhanh về Blockchain trong 10 phút
Lời người dịch Bài viết được dịch từ các ý chính của bài viết gốc tiếng Nhật. http://www.mermirai.com/entry/0409_blockchain Bài viết mang tính chất dẫn dắt người đọc từ con số không vào thế giới Blockchain một cách đơn giản. Muốn có những hiểu biết sâu sắc về Blockchain bạn cần tìm hiểu thêm ...
Mở một Activity bằng CÁCH MỚI - LINH HOẠT hơn
Việc mở nhiều Activity và pass Data để thực hiện một công việc nào đó, nó không còn xa lạ gì với những Android Developer. Nhưng nếu cứ thực hiện liên tục 1 công việc lặp đi lặp lại sẽ thật buồn chán, tất nhiên sẽ có nhiều phản biện rằng: cách đó là tốt rồi. Điều này sẽ được đề cập từ từ được không ...
instance_eval, class_eval và module_eval trong Ruby
instance_eval Thêm các phương thức cho một instance hay class, module một cách "tốc hành" ("on-the-fly") là một pattern khá phổ biến trong Ruby(activerecord, activesupport, ...) Để thực hiện điều đó, chúng ta có thể dùng các phương thức BasicObject#instance_eval, Module#class_eval, ...
Chuyển link url trong text thành button
Trong 1 đoạn chat nhiều lúc chúng ta thường hay đính kèm theo url để gửi cho bạn bè nhưng chúng ta lại không muốn nó hiển thị trực tiếp vì thường các link đó quá dài -> Do đó mình có ý tưởng chuyển các url đó thành các button cho thân thiện. Mình đã hướng dẫn ở 1 bài viblo trước đây ...
System INTEGRATION Testing (SIT) - Kiểm thử tích hợp hệ thống
Kiểm thử tích hợp hệ thống là gì ? Kiểm thử tích hợp hệ thống được định nghĩa là một loại thử nghiệm được thực hiện trong môi trường đã tích hợp phần cứng và phần mềm để xác minh hành vi của hệ thống hoàn chỉnh. Đây là một thử nghiệm được tiến hành trên một hệ thống tích hợp hoàn chỉnh để đánh ...
Sự khác nhau giữa Issue và Risk trong quản lý dự án
1. Tổng quan Việc quản lý một dự án có thể hiểu là bạn thiết lập thời gian để hoàn thành những mục tiêu. Cho dù đó là dự án nhỏ hay lớn thì nhìn chung lại việc quản lý sẽ liên quan đến việc lập kế hoạch, tổ chức, sắp xếp và sử dụng các nguồn lực trong dự án. Quản lý dự án bao gồm những việc như ...
Xây dựng một Blockchain đơn giản nhất với Ruby & Rails
Hello ! Xin chào ! Ok ! Bạn đã click vào bài viết này , vậy thì có lẽ bạn - cũng giống như tôi - cũng đã ít nhất nghe về, cũng như có hứng thú với sự phát triển khủng khiếp trong thời gian gần đây của tiền ảo. Và có thể bạn cũng sẽ muốn tìm hiểu về Blockchains - một trong những công nghệ nền tảng ...
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. ...
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] ...