
Hướng dẫn Deploy Rails App lên AWS EC2 kết hợp Nginx và Puma ( Part I)
AWS là hệ thống webservice mạnh mẽ. Được sử dụng rộng rãi trên khắp thế giới, hôm nay mình sẽ hướng dẫn cho các bạn cách deploy 1 Rails App lên EC2 của AWS kết hợp sử dụng Capistrano Gem, Nginx và Puma. AWS : Amazon Web Services Nginx: Là một máy chủ proxy mã nguồn mở (open source reverse ...

Bắt đầu làm quen với mã hóa string trong ruby
Trong công nghệ thông tin (đặc biệt là lĩnh vực phần mềm và công nghệ) của ngày nay, chúng ta thấy thông tin ở dạng text ở mọi nơi. Text không được cung cấp cho chúng ta ở định dạng đa phương tiện như hình ảnh và video mà nó được lưu trữ nội bộ trong máy tính dưới dạng các con số có mã hóa. Điều đó ...

Lập trình Kotlin với RxJava và RxKotlin
Kể từ khi trở thành ngôn ngữ được hỗ trợ chính thức cho phát triển Android, Kotlin đã nhanh chóng phát triển phổ biến. Google đã báo cáo rằng số lượng các ứng dụng được tạo bằng Kotlin đã tăng 6 lần. Nếu trước đây bạn đã sử dụng RxJava hoặc RxAndroid và muốn chuyển sang Kotlin hoặc muốn bắt đầu ...

Xử lý background service trên Android O
Giới thiệu Như các bạn đều biết mỗi lần Google cập nhật phiên bản mới thì đều có rất nhiều những thay đổi kéo theo tác động đến việc phát triển ứng dụng. Android O được ra mắt vào năm 2017. Và với phiên bản này có tương đối nhiều điểm mà những nhà phát triển như chúng ta cần quan tâm. Đối với ...

5 Best Practices về cấu trúc khi làm việc với React
Có lẽ ta không cần phải nghi ngờ gì nữa về việc React đã tạo ra môt cuộc cách mạng trong cách mà chúng ta xây dựng các giao diện cho người dùng. Giờ đây chúng thật dễ để học và tạo điều kiện tuyệt vời cho phép ta tạo ra những component có khả năng sử dụng lại được ở nhiều chỗ, giúp cho trang web ...

CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT
2.1.1. Phân rã bài toán thành các bài toán nhỏ hơn. Các bài toán giải trên máy tính càng ngày càng đa dạng và phong phú dẫn tới quy mô chương trình ngày càng lớn. Quy mô càng lớn dẫn tới việc lập và kiểm soát chương tình càng gặp nhiều khó khăn hơn. Ta cần chia bài toán lớn thành nhiều bài ...

Replace và Add Fragment với cơ chế back stack
I) Sơ lược về fragment Như các bạn đã biết Fragment nó được hiểu như là một sub Activity, nó cũng có vòng đời hoạt độnh riêng nhưng gắn liền với vòng đời của activity, nó sinh ra để giải quyết các vấn đề mà activity không thực hiện được, cụ thể ở đây chính là chức năng đa màn hình, việc nắm rõ ...

1 số bài toán đơn giản trên codefight
Đây là một số bài toán đơn giản trên codefight, đáp án là tự mình viết nên có thể code vẫn còn cùi chưa đc ngon ăn như của các anh senior (mình hiện là beginner ruby thôi), rất mong nhận được sự chỉ giáo của mọi người, nhất là bài 6 ạ, mình rất mong nhận đc sự góp ý cải thiện. Bài 1: Phone Call ...

Tìm hiểu về Cassandra - Update và Delete data trong Cassandara
Chú ý timestamp khi update data Update data trong Cassandra thực ra là sử dụng API giống như khi insert. Chỉ một điểm khác biệt đó là khi update thì timestamp là điều vô cùng quan trọng. Nếu timestamp không phải là thời gian sau thời gian nhập dữ liệu trước đó thì data sẽ không được update. Hãy ...

Create extension implement load more in UICollectionView
Trong bài trước mình đã hướng dẫn Implement Loadmore cho UITableView. Trong bài này mình sẽ hướng dẫn các bạn implement loadmore cho UICollectionView. Create extension implement loadmore Để thực hiện được load more bạn cần Implement một số func dưới đây vào BaseCollectionController. Thêm một số ...

Làm sao để chụp được full màn hình web trong Selenium Webdriver
Hôm nay mình xin giới thiệu đến các bạn cách để chụp được full hết màn hình web khi đang sử dụng automation test. Cách thức hoạt động của nó như sau: Khi màn hình web được load ra nó sẽ được set SCROLL_TIMEOUT đươc tính bằng millisecond. Đây là thời gian đợi ở mỗi lần scroll dừng lại trong quá ...

Machine learning và những ứng dụng vi diệu
Machine learning là gì ? Machine learning, một lĩnh vực của Trí tuệ nhân tạo (AI) giúp máy tính có khả năng tự học dựa trên dữ liệu để giải quyết vấn đề mà không cần phải được lập trình thật chi tiết, cụ thể. Để đơn giản, hình dung bạn cần phân biệt quả táo và quả cam. Thật dễ dàng, tích tắc bạn ...

[JavaScript] Một số điểm lưu ý trong JavaScript
Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu một số điểm đặc biệt, khác lạ và khá là "dị" trong JavaScript và ES6. Vì trong lập trình JavaScript chúng ta nên sử dụng "use strict" để code trở nên dễ hiểu và cú pháp rành mạch rõ ràng hơn, do đó chúng ta sẽ chỉ đề cập đến các vấn đề trong strict ...

Elasticsearch with vietnamese analyzer
I. Introduction Đã có một bài nói về áp dụng tiếng việt trong elasticsearch nhưng mình vẫn quyết định viết bài này vì mình thấy khá nhiều bạn gặp khó khăn trong việc cài cắm plugin. Vì vậy bài này mình tập trung vào cách cài plugin và sau đó sử dụng ra sao. Hi vọng sẽ giúp ích được cho các bạn. ...

Những điểm nổi bật trong Java 10
Tháng 3 - 2018, Oracle vừa ra mắt phiển bản Java 10 với những thay đổi đáng chú ý. Trong bài viết này, chúng ta sẽ khám phá 10 tính năng nổi bật trong bản cập nhật mới này cho java. Các tính năng cần quan tâm và được chú ý được đề cập trong Java 10: 286: Local-Variable Type Inference 296: ...

Khi nào 1 service (Bound service) bị hủy
Cách hoạt động(mô hình) của bound service Bound service hoạt động giống như mô hình client-server . Vậy các bạn sẽ đặt câu hỏi là: "Cái gì đóng vai trò là client và cái nào là server".Câu trả lời là các Activity chính là client, còn bound service của bạn là server. Khi 1 activity ...

Customize terminal mặc định "nhàm chán" của Ubuntu, VSCode, RubyMine với Zsh
Chắc hẳn với những developers chúng ta đều quen thuộc với bash shell mặc định của Ubuntu, đồng ý rằng nó rất tiện lợi và mạnh mẽ nhưng nó có phần hơi bị nhàm chán. Sau đây mình sẽ hướng dẫn các bạn làm cho terminal của chúng ta đẹp đẽ và mạnh mẽ hơn theo cách đơn giản và dễ hiểu nhất Tạ Quốc Bảo viết 09:33 ngày 07/09/2018

Sử dụng sweet alert trong Laravel
SweetAlert2 là 1 package được sử dụng để tùy chọn hiêt thị các alert trên website. Package SweetAlert2 chỉ hổ trợ từ phiên bản laravel 5.5 trở lên. Để cài đặt SweetAlert2 trong laravel, chúng ta sử dụng composer. composer require realrashid/sweet-alert Configuration Sau khi cài đặt ...

Ứng dụng emojis trong dự án của mình như thế nào?
Đặt vấn đề Có khi nào bạn muốn làm một notification có nhiều icon dễ thương hay một đoạn email gởi đi đầy màu sắc không. Nếu có thì hẳn các bạn đã sử dụng emojis cho dự án của mình rồi. Hy vọng bài viết sau giúp các hiểu hơn Hướng dẫn sử dụng plugin emojionearea để nhập dữ liệu Có rất nhiều ...

Tạo nhiều người dùng login cho một Instance EC2 chạy Linux
Lời nói đầu Hiện nay mình làm việc với nhiều công cty, mình để ý là mỗi khi ai đó cần access vào VPS, bất kể đó là server test hay server production. Mọi người đều không ngần ngại giao luôn file key (.pem hoặc .ppk) cho người đó. Cách làm này dĩ nhiên có lợi điểm là nhanh gọn, và chỉ có như vậy ...