Debugging with Pry and Tricks when binding

Trong bài này, mình sẽ giới thiệu về pry - một loại REPL và cách cài đạt và sử dụng nó để gỡ lỗi của chương trình REPL là từ viết tắt của Read Eval Print Loop (hiểu nôm na là: Đọc - Đánh giá - In - Lặp) và nó biểu diễn môi trường máy tính như màn hình console trong Linux shell nơi bạn có thể gõ ...

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

[Git] - Sử dụng ssh với các tài khoản Git khác nhau

Trong quá trình làm dự án đôi lúc chúng ta phải sử dụng các tài khoản Git khác nhau cho từng dự án. Github quy định mỗi ssh key chỉ được gắn cho một tài khoản. Bài viết nhỏ sẽ note lại chi tiết các bước để sử dụng ssh với các tài khoản git khác nhau. 1. Tạo folder để chứa source code 2. Từ folder ...

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

Vuejs: Vue-Cli - Một vài ví dụ về vuejs sử dụng vue-cli

Xin chào các bạn, như chúng ta đã biết thì hiện nay Vue.js là một trong những framework JavaScript tốt nhất và nhiều người cho rằng Vue sẽ dần thay thế cho Angular và React trong tương lai. Hôm nay mình sẽ tạo một vài ví dụ đơn giản với Vue-CLI. Link github: https://github.com/phanvankhoi/vue-cl ...

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

Google place API (Phần 2) Current Place

Phần trước mình đã hướng dẫn mọi người sử dụng Google Place API Place Autocomplete. Trong phần này chúng ta sẽ tìm hiểu về Google Place API Current Place. Google Place API Current Place được sử dụng để lấy dữ liệu các địa điểm gần với một vị trí xác định. Mình sẽ sử dụng Google place API ...

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

3 loader kiểu spinner đẹp

Tôc độ internet ngày này đã rất nhanh, tuy nhiên vẫn có một số thời điểm chúng ta vẫn phải đợi website tải nội dung. Việc phải chờ đợi này đã khiến không mọi người chúng ta phát cáu. Cho nên cac developer và các designer đã sáng tạo ra nhiều kiểu khác nhau để làm cho khoảng thời gian chờ đợi của ...

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

Tìm hiểu về Git, Git Cherry-Pick

Đối với junior, khi bắt đầu với Git nâng cao thì có muôn vàn vấn đê cần gặp phải. Và cũng có nhiều khái niệm khi nghe lần đầu chúng ta đều thấy bỡ ngỡ. Hôm nay mình xin giới thiệu về git cherry-pick. Khái niệm: git-cherry-pick - Apply the changes introduced by some existing commits Hiểu ...

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

MVI for Reactive programming in Android (P1)

1. Giới thiệu Chào các bạn hôm nay mình xin giới thiệu về MVI (Model-View-Intent), một partern mới nhất của Android. Nó được lấy cảm hứng từ cycle.js của André Staltz (một framework xây dựng reactive applications trên javascript) hay Redux js là một thư viện Javascript giúp tạo ra thành một lớp ...

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

Tạo ứng dụng đơn giản với React Router v4.

React Router v4 được viết lại từ một package nổi tiếng bằng React. Ở phiên bản trước, React Router sử dụng cấu hình ngụy trang như một pseudo-component, làm cho chúng ta khó để hiểu được chúng.Với v4 , mọi thứ bây giờ chỉ là components . Trong bài viết này, chúng ta sẽ xây dựng website đơn ...

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

Chi tiết về material design trong Android (Google) phần II

1. Lời ngỏ Thế cũng đã một thời gian mình đăng bài đầu tiên về material design trong android. Các bạn thấy thế nào nhỉ ? Phần I có vẻ nhàm chán đúng không ạ khi các bạn chưa có j để thực hành. Phần II sẽ thú vị hơn nhé ! 2. Nội dung Hôm nay mình sẽ tiếp tục sang phần II của seri về ...

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

Event handling trong Vue.js

Xin chào các bạn, như chúng ta đã biết thì hiện nay Vue.js là một trong những framework JavaScript tốt nhất và hôm nay chúng ta cùng tìm hiểu về xử lý sự kiện trên DOM bằng Vuejs. Bắt đầu nào!!! Trong Vue.js chúng ta có thể dùng directive v-on để lắng nghe các sự kiện DOM và thực thi JavaScript ...

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

SoapUI là gì? Giới thiệu về SoapUI Testing

SOAP UI là công cụ test nền tảng mã nguồn mở API hàng đầu. SOAPUI cho phép Tester thực hiện test functional, regression, compliance và load testing một cách tự động trên Web API khác nhau. SOAPUI hỗ trợ tất cả các giao thức chuẩn và công nghệ để test tất cả các loại API. Giao diện SOAPUI đơn ...

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

Làm việc với nhiều database trên cùng một dự án Rails

Từ trước tới nay, trong một dự án Rails, mình vẫn thường quen với việc chỉ quản lý và làm việc với duy nhất một database mà thôi. Khi đó thì mọi cấu hình cho db, chúng ta để trong file config/database.yml; và tất cả thông tin cũng như việc migrate các bảng trong db sẽ được đặt trong thư mục ...

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

Index và các kiểu đánh index

1. Index là gì? index là việc cấu trúc dữ liệu, lưu trữ theo một cơ chế nào đó để tìm ra các record một cách nhanh chóng. Index là rất cần thiết để tăng performace và ngày càng trở nên quan trọng hơn nếu dữ liệu trong database của bạn ngày một lớn, đối với các hệ thống nhỏ thì việc đánh ...

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

thực hiện các chức năng CRUD trong laravel với Vuejs

Xin chào mọi người.Vuejs chắc không còn xa lạ gì với dân lập trình nữa nhỉ? vậy nên trong bài này mình sẽ không đi sâu vào tìm hiểu Vuejs là gì nhé.nếu bạn nào muốn tìm hiểu kỹ và chi tiết hơn về Vuejs thì các bạn có thể vào trang Vuejs.org để tìm hiểu.Thực tế Vuejs là một framework dùng để xây ...

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

Selenium WebDriver : Hướng dẫn chụp ảnh màn hình và tạo sự kiện hover chuột trên thanh menu

Chụp ảnh màn hình của một phần mềm ứng dụng web là rất dễ dàng trong selenium webdriver. Như chúng ta đã biết, điều này là rất cần thiết với một công cụ kiểm thử phần mềm tự động để chụp lại màn hình của các test case fail hoặc bất kỳ khi nào cần thiết trong quá trình thực thi test case. Trong ...

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

Hoisting trong javascript - gà có trước hay trứng (phần 1)

Con gà và quả trứng Vấn đề Nhầm lẫn phỗ biến nhất của lập trình viên đến từ các ngôn ngữ khác khi bắt đầu với Javascript đó là: Code javascript được execute từng dòng một, từ trên xuống dưới. Ồ, không phải chứ, điều nay nó rõ như một cộng một bằng hai mà? Tuy nhiên, hãy cùng xem ví dụ ...

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

[Kotlin] Method, property and field

Như các bạn đã biết khi dự án sử dụng kotlin thì bạn sẽ giảm được LOC (lines of code) nhưng bù lại có thể số method sẽ bị tăng lên. Android chỉ support tối đa 65,536 method (nếu không dùng multidex). Vậy lý do là ở đâu? Chúng ta hãy cùng tìm hiểu trong bài viết này nhé. 1. Method count Không ...

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

Understanding Play thread pools

Chúng ta đều biết Play framework là một asynchronous web framework. Trong bài viết này mình sẽ trình bày thêm 1 số điểm về nó. Thread pools trong Play được điều chỉnh để ít sử dụng hơn so với web frameworks khác và nó được sử dụng cho một số mục đích khác nhau, cụ thể: Internal thread pools : ...

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

[Training][Rx] Observable và Flowable

Khi nào thì sử dụng Observable, khi nào thì sử dụng Flowable (Rx 2.x.x)? Đây cũng là một câu hỏi hay và được nhiều bạn quan tâm trên medium cũng như stackoverflow đối với những ai đã và đang dùng Rx (1, 2). Hôm nay mình cũng xin chia sẻ với các bạn cách dùng 2 thằng này sao cho hợp lý nhé. Bạn ...

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

Trong swift: func là gì?, closure là gì?

Trong bài viết này cúng ta cùng tìm hiểu: Function là gì? Closure là gì? Chúng khác nhau ra sao? Khi nào thì sử dụng Closure? Func là một Method gói gọn các câu lệnh trong nó, để thực hiện một chức năng cụ thể. Func: Khai báo hàm (Function Declaration) (2)(3): gồm tên hàm, tham ...

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