Tìm kiếm nội dung tài liệu bằng máy tìm kiếm ElasticSearch

Từ trước đến nay chúng ta đã quá quen với các câu lệnh truy vấn với các Table trong các hệ cơ sở dữ liệu mysql, sqlite, postgres,...vv. Thế đã bao giờ bạn phải truy vấn một từ khóa dựa trên nội dung của một tài liệu bất kỳ mà bạn có chưa, có thể là file pdf, word, excel,......vv. Với những file ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

Tìm hiểu Grape-api

I. Giới thiệu GRAPE-API 1. API là gì? Một API (Application Programming Interface) là một giao diện mà một hệ thống máy tính hay ứng dụng cung cấp để cho phép các yêu cầu dịch vụ có thể được tạo ra từ các chương trình máy tính khác, và/hoặc cho phép dữ liệu có thể được trao đổi qua lại ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

Tăng tốc độ load website bằng hệ thống CDN

Trong topic này mình muốn đề cập tới vấn đề tăng tốc độ load website, một trong những yếu tố quan trọng trong việc xếp hạng của Google. Các bạn có thể xem tốc độ website quan trọng thế nào qua bằng sáng chế của Google tại đây, còn đây là hình minh họa thuật toán xếp hạng dựa trên yếu tố tải các ...

Tác giả: Trịnh Tiến Mạnh viết 10:49 ngày 12/08/2018

Server Provisioning

Server Provisioning là gì Server provisioning là một chuỗi các hành động nhằm chuẩn bị một server với một hệ thống thích hợp, dữ liệu và các phần mềm để nó có thể sẵn sàng cho các network operation. Các công việc cơ bản trong server provisioning: Chọn một server trong một list các server khả ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

Tích hợp Facebook login

Trong bài viết này tôi sẽ hướng dẫn các bạn cách tích hợp đăng nhập bằng facebook vào website. Việc tích hợp FB sẽ đem lại lợi ích lớn cho người dùng khi mà họ không cần điền các thông tin đăng ký dài dòng mà chỉ cần click vào nút đăng nhập FB là đã có quyền truy cập vào website của bạn. Có nhiều ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

Active Record trong Yii Framework 1.1

Mặc dù Yii DAO có thể giải quyết được hấu như mọi việc liên quan đến database, nhưng việc này làm các lập trình viên tốn đến 90% thời gian của mình dành cho các câu lệnh SQL (CURD). Thật là khó để đảm bảo code của họ khi mà phải trộn lần code với câu lênh SQL. Để giải quyết việc này, Yii đã sử dụng ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

File ViewPoint chung dùng cho test app Android Mobile

1. Thế nào là ViewPoint chung sử dụng cho test mobile? Hãy thử nghĩ nếu chúng ta cần kiểm tra một đời điện thoại mới để ra thị trường với nhiều app thì chúng ta cần test những gì, cần sử dụng những ViewPoint( VP) như thế nào để có thể kiểm tra việc hoạt động của tất cả các app trong thiết bị ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

Google Play Service 7.5.x có gì mới ?

Tại sự kiện Google IO năm nay, Google giới thiệu phiên bản Google Play Service 7.5.0 gồm nhiều tính năng mới và hấp dẫn Và trong tháng này Google phát hành thư viện mới nhất này cho các lập trình Viên. Vậy nó có điểm gì đổi mởi so với version cũ. Trước tiên phải để đến Smart Lock for Passwords ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

Giới thiệu về Framwork AngularJS

AngularJS là một Framwork phát triển dựa trên Javascript để tạo các ứng dụng web phong phú AngularJS thường dùng để phát triển frontend (giao diện khách hàng) thông qua các API để gọi data, nó sử dụng mô hình MVC rất mạnh mẽ AngularJS tự động fix với các trình duyệt khác nhau nên bạn không cần ...

Tác giả: Tạ Quốc Bảo viết 10:49 ngày 12/08/2018

Tổng quan về node js

Javascript ngày càng trở nên phổ biến hơn với nhiều tính năng và các thư viện được hỗ trỡ cho developer, điều đó khiến cho các giao diện web càng trở nên sinh động hơn. Mọi thứ mà chúng ta có thể làm được trên web ngày nay là Javascript có thể chạy được trên server, cũng như chạy được trên browser, ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

Xử lý ảnh dễ dàng trong swift (Phần 2)

1.7 Resize Để resize ảnh, ta sử dụng hàm sau let result = image . resize ( awidth : 100 , height : 100 ) let result = image . resize ( awidth : 100 , height : 100 , interpolationQuality : kCGInterpolationNone ) // Nearest neighbor 1.8 Cắt ảnh ...

Tác giả: Tạ Quốc Bảo viết 10:49 ngày 12/08/2018

The Art of Readble Code

Làm sao có thể viết code một cách dễ hiểu Mở đầu Có thể bạn đang làm việc tại một công ty phần mềm nổi tiếng nào đó, với những kĩ sư giỏi, nhưng có thể bạn vẫn sẽ vẫn gặp phải những vấn đề cần phải cải thiện. Trên thực tế chúng ta đã từng gặp rất nhiều đoạn code khó hiểu và ngu gốc . Chính ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

Hướng dẫn xây dựng web java với maven + wicket + spring

Trong bài viết này hướng dẫn tích hợp Apache Wicket với Spring Framework để tạo website Thư viện sẽ sử dụng trong bài viết này: Wicket phiên bản: 1.4.17 Wicket-Spring phiên bản: 1.4.17 Spring Framework phiên bản 3.05 RELEASE Project Structure: Cấu trúc thư mục dự án không có gì đặc ...

Tác giả: Tạ Quốc Bảo viết 10:49 ngày 12/08/2018

Container-based virtualization

Intro Trong khoảng 1 thập kỉ qua, chắc hẳn bạn cũng đã từng nghe đến công nghệ ảo hoá (virtualization), điển hình là các máy ảo (Virtual Machine) áp dụng phương pháp ảo hoá hypervisor-based đã được sử dụng để cài đặt các hệ điều hành khác nhau như một ứng dụng trên cùng 1 máy tính. Tuy nhiên, bài ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

Advance search with Ransack Gem

I. Tổng quan Ransack là một gem được sử dụng để tìm kiếm dữ liệu, cho phép tạo ra cả hai hình thức tìm kiếm đơn giản và tìm kiếm nâng cao tùy theo các mô hình ứng dụng trong chương trình. Trong bài viết Tìm hiểu về Ransack Gem và ứng dụng trong tìm kiếm đã hướng dẫn cách sử dụng Ransack với ...

Tác giả: Bùi Văn Nam viết 10:49 ngày 12/08/2018

LibGDX Tutorial 4: Xử lý đầu vào phần 1 - Chuột và bàn phím

Chúng ta bắt đầu với việc xử lý thao tác bàn phím, và đây là code: package com . handlinginputdemo . game ; import com . badlogic . gdx . ApplicationAdapter ; import com . badlogic . gdx . Gdx ; import com . badlogic . gdx . Input ; import com . badlogic . gdx . graphics . GL20 ; ...

Tác giả: Hoàng Hải Đăng viết 10:49 ngày 12/08/2018

Sử dụng Page Object Model trong selenium như thế nào

Để tiếp theo các bài viết về selenium tại mục https://viblo.asia/LeThi/posts/1qm6RWQyGeJE . Trong bài này, mình sẽ tiếp tục giới thiệu về một mô hình thiết kế testscript được sử dụng phổ biến trong selenium : Page Object Model (viết tắt là POM). 1. Giới thiệu về POM POM là một mô hình thiết ...

Tác giả: Trịnh Tiến Mạnh viết 10:48 ngày 12/08/2018

Grand Central Dispatch - Part 3: Dispatch group

Tiếp tục từ phần trước: https://viblo.asia/thevinh92/posts/QWkwGna3M75g Dựa theo tài liệu: http://www.raywenderlich.com/63338/grand-central-dispatch-in-depth-part-2 Ở các phần trước, chúng ta đã nghiên cứu về concurrency, threading và cách làm việc của GCD. Chúng ta đã làm singleton PhotoManager ...

Tác giả: Hoàng Hải Đăng viết 10:48 ngày 12/08/2018

TestLink Test Management Tool

1. Giới thiệu về Testlink### Testlink là tool quản lý được sử dụng rộng rãi dựa trên mã nguồn mở. Nó kết hợp đồng thời cả hai requirements specification và Test specification. Người dùng có thể tạo một test project và tài liệu test case sử dụng tool này. Chúng ta có thể tạo tài khoản cho ...

Tác giả: Trịnh Tiến Mạnh viết 10:48 ngày 12/08/2018

Full text search for document attachments with Rails & ElasticSearch

I've started working on a project that requires full text search on uploaded documents using ElasticSearch. Lucky enough, ElasticSearch has this Mapper Attachments Type. It is a plugin and can be easily installed. There are few important things to note here: ES accept attachment as an encoded ...

Tác giả: Hoàng Hải Đăng viết 10:48 ngày 12/08/2018