Spree Extension - Xây dựng tiện ích mở rộng cho Spree
**1. Khái niệm ** Spree Extensions là những tiện ích cho phép người sử dụng có thể tùy biến hệ thống Spree Ecommerce theo ý riêng của mình. Nhà phát triển có thể dễ dàng tái sử dụng mã nguồn cũng như chia sẻ chúng. Sở dĩ có thể làm được điều này là vì Spree cho phép người dùng có thể customize ...
Giới thiệu về Full Text Search.
I. Full text search là gì? Nói đơn giản dễ hiểu, full text search (gọi tắt là FTS) là cách tự nhiên nhất để tìm kiếm thông tin, hệt như Google, ta chỉ cần gõ từ khóa và nhấn enter thế là có kết quả trả về. Phạm vi bài viết này chỉ đề cập, giới thiệu sơ lược về FTS trong MySQL mà không bàn về ...
Xây dựng ứng dụng chat sử dụng Rails và Server-Sent Events
Như mọi người cũng biết, hiện nay có khá nhiều kỹ thuật để xây dựng 1 app chat, ví dụ như sử dụng Nodejs, Websocket hay cũ hơn nữa là AJAX polling. Bài viết dưới dây sẽ hướng dẫn cách xây dựng 1 ứng dụng chat bằng cách sử dụng 1 kỹ thuật khá mới mà HTML 5 cung cấp đó là Server-Sent Event trên ...
Tự làm Claims-based Authentication cho ASP.NET Sites kiểu cũ
Framework ASP.NET identity cung cấp cho bạn mọi thứ bạn cần để sử dụng identity Claims-Based. Tuy nhiên, identity Claims-Based có thể được mô phỏng trong ASP.NET cũ bằng cách tùy chỉnh nếu bạn có một nhà cung cấp đăng nhập username / password nội bộ, và cần để có thể hiển thị nhiều thông tin về ...
Android RecyclerView – Simple List
RecyclerView Để thay thế cho ListView, GridView và một số thành phần khác. Để nhận được một performance tốt bạn cần thực hiện ViewHolder pattern, thật không may có nhiều cách để gây lên sự khó hiểu. Vơi ** RecyclerView ** chúng ta vẫn có thể thực hiện được mô hình ViewHolder để đảm bảo hiệu ...
So sánh Tool test tự động: Coded UI Test, Selenium và QTP
Software testing là một cách để kiểm tra và xác nhận hoạt động của sản phẩm hoặc ứng dụng cụ thể. Nó có thể được xác nhận ở nhiều điểm khác nhau tại thời điểm trong quá trình phát triển phụ thuộc vào phương pháp và công cụ sử dụng. Kiểm thử thường bắt đầu sau khi tổng hợp requirement. Ở mức unit ...
Virtual Reality and Augmented Reality - Past, Present and Future.
Augmented Reality and Virtual Reality, as people who work in technology business, we couldn't help but hear more or less about them, they have become really popular. Still I'm pretty sure there aren't many who know exactly about these techs and the differences between them, this time around I ...
GNOME 3: Ease, comfort and control
I. Giới thiệu về GNOME GNOME (GNU Network Object Model Environment) là một dự án mã nguồn mở được phát triển bởi The GNOME Project bao gồm một bộ công cụ và môi trường sử dụng desktop. GNOME được sử dụng rộng rãi trong cộng đồng Linux và chính là môi trường desktop được cài đặt sẵn trong ...
Truy vấn iOS Photos, Videos với PhotosFramework
Cùng với sự phát triển không ngừng của nền tảng iOS và sự phổ biến của các ứng dụng liên quan tới Media (bao gồm: ảnh, video,...) dẫn tới các câu hỏi về truy vấn local Photos, Videos của thiết bị (iDevice) xuất hiện ngày càng nhiều. Bài viết này nhằm mục đích giới thiệu về cách sử dụng ...
Gem the_role 2.5.4
I. Giới thiệu the_role là gem để phân quyền người dùng trong Ruby on Rails như các gem cancan, pundit... và có hỗ trợ giao diện quản trị. II. Install Thêm vào Gemfile gem "the_role", "~> 2.5.4" gem 'bootstrap-sass', github: 'thomas-mcdonald/bootstrap-sass' Sau đó chạy: $ ...
Thanh Toán Định Kỳ Với Paypal
1, Giới thiệu về thanh toán định kỳ trong Paypal Paypal là một công cụ thanh toán trực tuyến phổ biến trên thế giới được rất nhiều người sử dụng. Trong phần này chúng ta sẽ học cách sử dụng thanh toán định kỳ trên paypal với ứng dụng Ruby on rail. Trước hết chúng ta phải hiểu thanh toán định ...
Vim''s Flavor
Starting Point Vim has reputation of being hard to use because of its unique and complex way of handling text editing unlike any others editor like Notepad, Notepadd++, Sublime Text. When I first started learning how to use vim I was struggling too much, but once I get pass basic of some commands ...
Giới thiệu về Celluloid - Part 3
Hôm qua mình mới download Kobito về, đang muốn thử xem ra sao nên tiện tay làm một bài viết vậy (yaoming).. tiếp chủ đề Celluloid nhé (honho) Giới thiệu về Celluloid - Part 1 Giới thiệu về Celluloid - Part 2 Trong phần 2, mình đã giới thiệu với các bạn về Celluloid::Supervisor để ...
Tìm hiểu về angularjs
1. Lịch sử phát triền của Angularjs AngularJS được bắt đầu từ năm 2009, do lập trình viên Misko Hevery tại Google viết ra như là một dự án kiểu “viết cho vui”. Misko và nhóm lúc này đang tham gia vào 1 dự án của Google tên là Google Feedback. Với AngularJS, Misko đã rút ngắn số dòng ...
Zsh 1 Trình shell vô đối (Phần 1)
1. Giới thiệu Zsh là 1 chương trình shell thiết kế để tương tác, đồng thời zsh cũng là 1 ngôn ngữ script mạnh mẽ (scripting language). Zsh được tích hợp rất nhiều tính năng hữu dụng của cả bash , ksh và tcsh , đồng thời còn cung cấp nhiều tính năng khác. Bài viết này xin giới thiệu 1 số ...
Video recorder in ios
Ở bài này sẽ hướng dẫn tạo một ứng dụng sử dụng camera để ghi hình và xem lại cơ bản sử dụng MediaPlayer framework. Tạo project Mở XCode và tạo mới một project như trong hình dưới đây Thiết kế UI Đầu tiên để UI để có thể quan sát và dễ nhìn chúng ta Disable Size Classes như hình dưới ...
Tìm hiểu về kiểm thử Hiệu năng và công cụ kiểm thử LoadRunner
Kiểm thử hiệu năng 1. Giới thiệu về kiểm tra tự động hiệu năng phần mềm Một câu hỏi được đặt ra đó là: ** Tại sao bạn nên thực hiện kiểm tra tự động hiệu năng phần mềm?** Kiểm tra tự động hiệu năng phần mềm nhằm giảm bớt những rủi ro của việc ứng dựng, nâng cấp và phát triển phần mềm. Kiểm ...
Tìm hiểu yopmail
1. Giới thiệu về Yopmail Khi thực hiện test, đặc biệt là test web, các tester hay gặp phải trường hợp phải tạo nhiều account mail, mỗi account mail tương ứng với 1 user được assign với role khác nhau. Khó khăn đặt ra là khi create 1 email free như gmail, hotmail, yahoo..., là mất thời gian input ...
Assertion trong soapUI
Assertions in SoapUI Trong bài trước, chúng ta đã được giới thiệu cơ bản về SoapUI như tạo project, add WSDL, send request, receive response, tạo test suite, test case. Bài viết này sẽ giới thiệu về Assertion trong SoapUI. 1. Assertion Sau khi một request được gửi đến web server thì một ...
Loại bỏ trùng lặp dữ liệu trong ElasticSearch
Loại bỏ trùng lặp dữ liệu luôn được xem là một việc cần phải làm, và khi thực hiện công việc đó, tức là loại bỏ những dữ liệu trùng lặp thì chúng ta sẽ đạt được nhiều lợi ích nhất định. Trong ElasticSearch cũng vậy, bạn sẽ đạt được một số lợi ích như sau: Tiết kiệm được dung lượng ổ cứng Tăng ...