[Redux beginner] Rails + Redux + API

Ở bài trước mình đã hướng dẫn khởi tạo reactjs, react-redux trong rails project (Làm quen với Redux trong rails app.). Bài viết này mình sẽ hướng dẫn sử dụng redux tương tác với API, API demo sẽ là Reddit API . Các package cần thiết superagent Thư viện hỗ trợ thực hiện các HTTP async ...

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

Tìm hiểu material design trong android

Material Design là ngôn ngữ thiết kế được Google áp dụng cho Android 5.0 Lollipop, đánh dấu sự khởi động của một cuộc cách mạng về mặt giao diện trên các thiết bị Android. Gây ấn tượng với người dùng bằng cách nhấn mạnh vào các mảng màu đậm táo bạo, những hình khối phẳng, các chi tiết trôi nổi lạ ...

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

Những điều làm nên một QA giỏi

Trước khi đến với việc tìm hiểu về những điều làm nên một QA giỏi, chúng ta sẽ tìm hiểu thế nào là QA trước. Vậy QA là gì? 1. QA là gì? QA (viết tắt của từ Quality Assurance) là bộ phận giám sát, quản lý và bảo đảm chất lượng. Đây là bộ phận có quyền và có trách nhiệm quy định sẽ đặt khâu ...

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

Symfony Finder Component

Có bao giờ bạn phải tìm kiếm các tập tin hay thư mục (ở mức đệ quy các thư mục con) với PHP? Bạn thấy nó phức tạp và khó sử dụng không? Chúng ta thử đi xem qua đoạn code khi dùng PHP thuần xem sao nhé: // some flags to filter . and .. and follow symlinks $flags = FilesystemIterator : : ...

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

Tích hợp Geocoder để hiển thị và tìm kiếm vị trí cho ứng dụng Rails

Source gem Geocoder Có thể tìm kiếm vị trí theo tọa độ, địa chỉ, hoặc thậm chí đo khoảng cách giữa các địa điểm và tìm địa điểm gần đó. Geocoder tương thích với rất nhiều nền tảng khác nhau : Ruby các version 1.9.3, 2.x, JRuby Nhiều cơ sở dữ liệu : MySQL , PostgreSQL , SQLite , ...

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

Understand more about JavaScript scope

JavaScript has a few concepts related to "Scope", not a concept which of them is understandable to a new developer JavaScript (JS dev), even the dev has experienced JS. In this article, I will try to explain most of the concepts related to the Scope in JS. Posts towards those who want to learn more ...

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

Độ ưu tiên (Priority) và Độ nghiêm trọng (Severity) trong quản lý Bug

Trong kiểm thử phần mềm thì hai khái niệm Độ ưu tiên (Priority) và Độ nghiêm trọng (Severity) là 2 khái niệm quen thuộc và phổ biến. Mặc dù hai yếu tố này không phải là yếu tố sống còn trong quản lý bug nhưng việc hiểu đúng sẽ giúp chúng ta tiết kiệm thời gian cũng như làm công việc hiệu quả hơn. ...

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

Đơn giản hóa code và tăng hiểu quả cho JavaScript với Lodash

Hôm nay mình xin giới thiệu với các bạn một thư viện vô cùng bá đạo có tên là "Lodash". Đảm bảo rằng chỉ cần dùng thử một lần thì nó sẽ là thư viện không thể thiếu trong các dự án của bạn . "A modern JavaScript utility library delivering modularity, performance & extras." Lodash có thể xem ...

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

Javascript và những điều thú vị

Những điều có thể bạn đã biết hoặc chưa, những kinh nghiệm nho nhỏ của mình chia sẽ khi lập trình javascript, mong nó có thể giúp ích cho các bạn đang lập trình ngôn ngữ này Tránh lỗi khi dùng những default function của array Các default array function của javascript như map, forEach, ...

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

Kiểm thử hiệu năng và kiểm thử bảo mật

Kiểm thử hiệu năng và kiểm thử bảo mật là những loại kiểm thử đặc biệt (cả về phương pháp thực hiện và người thực hiện, thường sẽ có một đội QA riêng care về mảng này), là một phương pháp khá khó và đòi hỏi nhiều kiến thức chuyên môn sâu rộng của tester. Ngay cả với những tester có ...

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

Sử dụng domain model events để làm gọn controller và model trong Rails

Nếu như đã làm nhiều với Rails chắc hẳn bạn đã tưng nghe thấy cụm từ: "Skinny controller, fat model". Việc này xảy ra rất thường xuyên. Đặc biệt là khi controller của bạn đang cồng kềnh với các trách nhiệm HTTP-centric, chẳng hạn như thông báo websocket, dường như không thuộc về các domain model ...

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

Database Migrations in PHP With Phinx

Database Migration là một trong những công việc thường gặp trong mỗi dự án. Chúng ta muốn chia sẻ cấu trúc dữ liệu, chia sẻ data? Nếu phải export dữ liệu, cấu trúc DB rồi chờ import thì chắc chắn sẽ tốn rất nhiều thời gian. Vì thế, migration trở nên thiết yếu trong các project php. Và đối với ...

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

Your First Test with Android Testing Framework

Trong bài này, bạn sẽ bắt đầu kiểm thử Android đầu tiên của mình. Để đảm bảo chất lượng ứng dụng Android của bạn, bạn nên làm theo quy trình dưới đây: Thiết kế đặc điểm kỹ thuật kiểm thử Phát triển chương trình kiểm thử Thực hiện chạy test case trên thiết bị Thu thập kết quả kiểm thử ...

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

Custom Date/Time PickerDialog Android

Trong bài này, mình sẽ giới thiệu cho các bạn về Time Selection trong Android. Có nhiều loại Time Selection: AnalogClock, Chronometor, DatePickerDialog, TimePickerDialog. Nhưng mình chỉ giới thiệu 2 control cuối phổ biến, các control khác các bạn tự tìm hiểu thêm trên mạng: Mình sẽ sử dụng mô ...

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

Demo React JS Trên Client

Hello MN Đang tập tành code angularjs để viết tiếp phần 2 thì vô tình lượm được 1 tutorial Reactjs với Nodejs khá hay đọc xong khá thích nên nghĩ là mình phải viết ngay lên đây để chia sẽ với mn về điều này Chỉ là vô tình thôi nhé, nhưng mà hay thật </p> <div class= Tác giả: Hoàng Hải Đăng viết 15:30 ngày 12/08/2018

Programming languages'' milestones: An overview from 1960 - present (Part 1)

We are living in a world where computers and electronic devices play a pivotal part of our life. No one can alter the fact that wherever we go, whatever we do in this modern life, it is not hard to witness the appearance of them. Tiny handheld devices, sparkling traffic lights, even remotes we use ...

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

Giới thiệu các công cụ so sánh files (Diff) dành cho Linux/Ubuntu tốt nhất

Với Developer việc so sánh 2 file source code cũ và mới để xem những điểm được thay đổi (thêm mới/sửa/xóa) rất quan trọng. Và trong một vài loại test đặc biệt thì tầm quan trọng của việc so sánh 2 file đối với các QA cũng thế. Hiện nay đang có rất nhiều công cụ để so sánh nội dung 2 files dành cho ...

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

iOS Concurrency - Phần 3.5: Grand Central Dispatch

Dispatch Work Item Dispatch Work Item là một block code mà chúng ta có thể gửi (dispatch) chúng lên bất kì queue nào. Điều này có nghĩa là chúng có thể chạy trên global queue hoặc main queue. Nếu suy nghĩ một cách đơn giản thì chúng chỉ là một đống code mà chúng ta chỉ cần gọi (invoke). ...

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

Quản lý doanh nghiệp cấp cao cần những kỹ năng gì?

Không có những chuẩn mực, kỹ năng gì cần thiết cho công việc của bạn, thì kỹ năng đó chính là chìa khóa quan trọng nhất! Bài viết được cập nhật trên trang web về quản trị https://www.thebalance.com/list-of-business-manager-skills-2062365 ngày 21/6/2017 bởi Alison Doyle. Việc quản lý doanh ...

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

Phương thức GET và POST

Trong lập trình web, 2 phương thức GET và POST không có gì xa lạ. Tuy nhiên, khi nào dùng POST và khi nào dùng GET??? Chỉ biết là dùng cái nào thì cũng chạy được hết =)) Hy vọng bài viết này sẽ giúp các bạn hiểu rõ hơn về 2 khái niệm này và có cách sử dụng chúng sao cho phù hợp. GET và POST là ...

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