Progressive Web App tương lai của nền tảng web

"Mobile first" hay "Think mobile" là một trong những hot trend mà chúng ta thường được nghe gần đây, khi mà số lượng thiết bị di động và số lượng người sử dụng các thiết bị di động ngày càng lớn. Nhưng think như thế nào cho đúng là điều cần làm rõ. Bài viết này sẽ cung cấp thông tin cho bạn về ...

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

React cơ bản (Phần 2 - Lifecycle methods)

Xin chào các bạn, trong phần 1 react cơ bản, mình đã giới thiệu cho mọi người những khái niệm cơ bản nhất của react, bằng ví dụ sinh động và thực tế để mọi người dễ hiểu hơn. Phần một các bạn đã học và hiểu cách sử dụng của hai khái niệm rất quan trọng trong react đó là State và Prop, trong phần ...

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

Paper Trail Gem

Papel Trail là gem dùng để theo dõi các thay đổi đối với model của bạn, kiểm tra hoặc versioning. Cài đặt Papel Trail: Thêm gem Papel Trail vào Gemfile: gem "paper_trail" Chạy lệnh: bundle install Thêm table versions bundle exec rails generate paper_trail:install Sau khi chạy lệnh ...

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

Sử dụng gem active admin cho rails

Ngoài rails_admin việc xây dưng admin cho 1 app ruby on rails nhỏ trở nên vô cùng đơn giản khi sử dụng gem active_admin. Ta sẽ chuẩn bị tạo trang admin manage đăng nhập với gem devise và 1 tý phân quyền cho tài khoản # Gemfile gem 'activeadmin' gem 'devise' gem 'cancancan' ...

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

Tìm hiểu Vue Instance và Vue Template

Mình cũng không dài dòng nữa, trong bài viết trước, chúng ta đã tìm hiểu khái niệm về VueJS và cách cài đặt nó thì hôm nay chúng ta sẽ cùng đi tìm hiểu instance và template syntax ở trong vue. Vue Instance Lifecycle: Khởi tạo Vue Instance: Trong tài liệu tiếng Việt, instance được dịch là ...

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

Async download with Rails and Sidekiq Status

Trong dự án hiện tại mình đang tham gia có chức năng export dữ liệu từ các bảng trong database ra file Excel (*.xlsx). Việc export dữ liệu ít (trên môi trường development hoặc testing) thì không có vấn đề gì nghiêm trọng cả. Nhưng khi lên môi trường production với lượng dữ liệu rất lớn sẽ cần rất ...

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

Tác dụng của nested attributes và nested form sử dụng JS thuần hay gem Cocoon

Chào mọi người, bài viblo của mình hôm nay sẽ nói về nested attributes và nested form sử dụng gem cocoon Trước khi nói về nested attributes và nested form, chúng ta cần xem qua vấn đề sau Giả sử chúng ta project có chức năng đăng kí người dùng. Trong bảng database sẽ có bảng User có các trường ...

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

Tạo Graphql Server đơn giản với Django

Trong bài viết này mình dùng ubuntu 16.04 đã được cài đặt sẵn python 2 và python 3, không phải cài đặt nữa. Để kiểm tra python 3 cón khả dụng máy không thì các bạn gõ lệnh dưới nhé. python3 -V Tiếp là chúng ta cài đặt pip3 sudo apt-get install python3-pip Tiếp theo, chúng ta cài ...

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

Sử dụng Builder Pattern trong Swift

1. Giới thiệu: Builder Pattern là một trong những Pattern được đưa ra bởi nhóm GoF . Builder Pattern thuộc nhóm các Pattern tạo dựng ( Creational pattern ). Nhóm Pattern này giúp chúng ta: Giải quyết các công việc tạo và khởi tạo các đối tượng. Các mẫu sẽ tạo ra một cơ chế đơn giản, thống ...

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

Tìm hiểu hoạt động của mail service.

Trước giờ vẫn quản lý con email server mà chưa nắm rõ hoạt động thực sự của hệ thống email làm việc thế nào, nên bài này là để note lại những kiến thức sau khi loanh quanh trên mạng, đọc các bài viết về cách hoạt động của hệ thống email. Bài viết này tham khảo qua link: https://www.oasis-open.org ...

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

Tìm hiểu về DevOps (Phần 1)

I.DevOps là gì? DevOps là viết tắt của Development (Dev) và Operations (Ops). DevOps là một văn hóa làm việc kết hợp giữa kỹ sư phát triển phần mềm (dev) với bộ phận operator (kỹ sư hệ thống, nhân viên bảo mật, kỹ sư mạng, kỹ sư hạ tầng,...) nhằm mục đích rút ngắn vòng đời phát triển sản phẩm ...

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

Singleton là gì và làm thể nào để ứng dụng singleton trong Swift

Singleton pattern được sử dụng rất rộng rãi bởi các nhà phát triển ứng dụng trên toàn thế giới bởi sự thuận tiện của nó. Tuy nhiên trái ngược với sự nổi tiếng của nó, singleton bị đánh giá là một pattern nên hạn chế sử dụng. Để biết rõ hơn, chúng ta hãy cùng tìm hiểu về Singleton và làm cách nào để ...

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

Có gì mới ở PHP 7.3 Alpha 1?

Đội ngũ phát triển PHP mới đây đã công bố phiên bản đầu tiên của PHP 7.3.0 - Alpha 1 đã sẵn sàng. Phiên bản PHP 7.3 được xây dựng tiếp nối phiên bản PHP 7.2 - được ra mắt tháng 11 năm ngoái. Việc tiếp tục mắt PHP 7.3, một thời gian ngắn sau phiên bản 7.2 cho thấy tốc độ của chu trình phát triển ...

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

Gia tốc kế trong điện thoại di động

Gia tốc kế Gia tốc kế là một bộ phận tích hợp để đo gia tốc của bất kỳ thiết bị di động nào. Các chuyển động như đong đưa, nghiêng, xoay, lắc được phát hiện bằng gia tốc kế. Giá trị của XYZ được sử dụng để tính toán và phát hiện các chuyển động. Bên cạnh di động, gia tốc kế được sử dụng để đo độ ...

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

Một số method hay trong Array và cách dùng (Phần 1)

Array trong ruby có rất nhiều method hay , cách sử dụng cũng rất đa dạng , đội khi cũng rất dễ nhầm lẫn. Hôm nay, mình xin được phép chia sẻ một vài method cùng với chức năng của chúng . 1- Count Đây là hàm dùng để đếm phần tử trong mảng, còn đếm như thế nào, đếm ra sao thì chúng ta cùng xem ...

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

Thiết lập Content Security Policy trong Ruby on Rails

Content Security Policy (CSP) là 1 cách hữu hiệu để giảm thiểu hoặc loại bỏ hoàn toàn các lỗ hổng Cross Site Scripting (XSS). Với CSP, chúng ta có thể chặn inline script và các script từ những nguồn không đáng tin cậy. Chúng ta định nghĩa policy thông qua 1 HTTP header chứa các rule dành cho ...

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

Template Method Pattern in Ruby

Template Method pattern cho phép chúng ta định nghĩa một khung xương của một thuật toán, trong khi đó việc triển khai lại nằm ở các Class kế thừa. Template Method cũng cấp các bước cần thiết để hoàn thành một công việc nào đó. Bản thân nó sẽ thực hiện bất kỳ step mà không thay đổi. Các Class con ...

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

Thêm Fonts và FontIcons vào ứng dụng React Native

Như chúng ta đã biết, React-Native là nền tảng xây dựng ứng dụng di động Cross-Platform mạnh mẽ và phổ biến nhất hiện nay. React-Native sử dụng Inline-style và ứng dụng flex-box để phát triển giao diện, cú pháp tương tự với ngôn ngữ CSS . Trong bài viết này, mình xin được giới thiệu ...

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

Outlook’s 2-stage Sign in

Back in April (2016) I posted a quick rant about Yahoo! changing its Sign in page to a two-stage affair, affecting Flickr also. At this time Outlook (formerly Hotmail) had also changed its Sign in page; it was still a single ‘click to Sign in’ process but the E-mail address box had lost ...

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

Sử dụng gợi ý trong Oracle

Các khái niệm cơ bản B-tree Là một cấu trúc dữ liệu dạng cây cho phép tìm kiếm, truy vấn tuần tự, chèn, xóa trong thời gian logarit. B-tree là tổng quát hóa của cây nhị phân tìm kiếm, trong đó một nút có thể có nhiều hơn hai con. Số lần truy cập bộ nhớ trong mỗi thao tác trên B-tree tỉ ...

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