Metaprogramming trong Ruby (tiếp)

I. Metaprogramming advance Có 3 phương thức advance chính trong Ruby áp dụng cho việc triển khai metaprograming. Method eval(): #eval( ) là một method trong module Kernel. Phương thức eval() dùng để execute code trong một String. Ví dụ cách sử dụng phương thức eval(): str = ...

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

Những thủ thuật nâng cao hiệu quả làm việc với Xcode(Phần 1)

Mình xin chia sẻ một số thủ thuật, tiện ích sẵn có của Xcode để nâng cao hiệu quả làm việc(dành cho iOS coder, developer). Các thủ thuật. tiện ích này được mình tổng hợp kết hợp với kinh nghiệm bản thân. Tiện ích giới thiệu đầu tiên là Snippet. Code Snippet Library là danh sách các đoạn code có ...

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

Exception monitor with Sentry

Trước đây mình có 2 bài viết liên quan đến log management là: Quản lý log ứng dụng với ELK Stack (Elasticsearch, Logstash và Kibana) Quản lý log ứng dụng với GrayLog 2 Nay, mình xin phép giới thiệu tiếp một thể loại nữa là exception monitoring - Sentry. Trong thực tế, khi chúng ta đưa ...

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

Sử dụng Yarn với Rails

Cài đặt Yarn Để cài đặt Yarn bạn cần thực hiện các lệnh sau MacOS brew install yarn Ubuntu curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update ...

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

Throttle và Debounce trong RxSwift

Trong khoảng thời gian tìm hiểu về RxSwift mình gặp ít nhiều khó khăn từ nhỏ tới lớn và còn nghiệm ra nhiều thứ. Một trong số đó là việc handle button làm sao cho hiệu quả. Tình cờ đọc được bài viết của 1 anh người Việt về Throttle, Debounce và học hỏi nhiều từ nó. Nay mình xin dịch và share lại ...

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

Phân biệt chính giữa Python 2.7.x và Python 3.x

Nhiều người dùng Python bắt đầu tự hỏi họ nên bắt đầu phiên bản Python nào. Câu trả lời của tôi cho câu hỏi này thường là bạn cứ dùng cái nào cũng được hoặc bạn đã quen thuộc, sau đó tìm hiểu xem sự khác biệt giữa các phiên bản với nhau như thế nào sẽ thú vị hơn. Cả Python 2.7.x và Python 3.x đều ...

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

Những Regular Expression mà lập trình viên nên biết (P.1)

Mức độ bảo mật của password ^(?=.*[A-Z].*[A-Z])(?=.*[!@#$&*])(?=.*[0-9].*[0-9])(?=.*[a-z].*[a-z].*[a-z]).{8}$ Mã Regex này giúp người dùng đánh giá được mật khẩu mình đặt có đủ mạnh để có thể sử dụng được hay không Kiểm tra địa chỉ Email có hợp lệ hay không ? /[A-Z0-9._%+-]+@[A-Z0-9-]+. ...

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

Clean code trong React

Khi bạn làm một project lớn thì việc viết "code sạch" là một điều rất quan trọng, Để những người vào sau có thể hiểu được và tiếp tục maintain dự án. Sau đây là một vài ví dụ clean code trong React Clean code là tự comment Boolean variables, hay functions trả vè true hoặc fale, nên bắt đầu với ...

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

Tìm hiểu và sử dụng Gulp JS

Chợt nhớ ra hôm nay mình có hẹn, vậy nên hôm nay mình sẽ giới thiệu đến bạn đọc bài viết về 1 công cụ khá bá đạo trong giới JS học đó là Gulp JS. Nào mình cũng tìm hiểu về Gulp nhé </p> <div class= Tác giả: Tạ Quốc Bảo viết 18:20 ngày 12/08/2018

Setup Billing Alarm cho Tài khoản AWS

Đừng chần chừ. Nếu bạn đang đọc bài này và chưa setup billing alarm cho tài khoản aws. Thì tôi thành thật khuyên bạn nên đi tạo ít nhất là 1 cái ngay sau khi đọc bài này. Nếu bạn vẫn chưa có tài khoản aws thì hãy đọc bài này để biết cách tạo tài khoản aws đi còn chờ gì nữa. Login vào màn hình ...

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

5 lý do để React Native trở nên đáng yêu

Xin chào các bạn Hôm nay mình sẽ chia sẻ với các bạn những kinh nghiệm mà đã thu lượm được về React Native trong quá trình làm việc của mình. Ngày nay, React Native đang dần trở nên phổ biến. Hàng nghìn ứng dụng được tạo ra có dính dáng đến React native.Những cái tên lớn như Facebook, AirBnB, ...

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

[Swift 4] Đổ dữ liệu vào tableView từ API

Xin chào các bạn. Trong phần trước mình đã giới thiệu cách autolayout một tableView bằng code, và ở phần này mình sẽ pass data từ API vào từng cell trong tableView đã tạo nhé. Mình sử dụng free API này: https://jsonplaceholder.typicode.com/photos Gồm có các trường: albumId: id: title: ...

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

Đâu là ngôn ngữ nên học cho người mới bắt đầu (phần 2)

(Tiếp theo phần 1) Giờ chúng ta đã biết một chút về sự khác nhau giữa các ngôn ngữ và độ khó của chúng. Như vậy không phải tất cả các ngôn ngữ đều có nhu cầu nhân lực và mức lương giống nhau. Nếu bạn đặt mục tiêu học lập trình để tăng cơ hội nghề nghiệp của bản thân, và không bị mọi người ...

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

Dùng Javascript để load model Keras.

Bài viết này hướng dẫn cho bạn cách export một pre-trained Keras model và sử dụng model đó trực tiếp trên browser với thư viện JS tên là Keras.js. Trước khi đọc tiếp bài, bạn nên chắc chắn model của bạn đã được train với Keras phiên bản 2.1.2. Chúng ta sẽ sử dụng một mạng CNN đơn giản, mạng ...

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

Top 10 errors from 1000+ Ruby on Rails projects (and how to avoid them) - phần 1

Trở lại với cộng đồng Ruby developer, chúng tôi đã tìm trong database của hàng ngàn project và tìm thấy top 10 lỗi hay gặp phải trong các ứng dụng Ruby on Rails. Chúng tôi sẽ chỉ ra cho các bạn, nguyên nhân gì gây ra chúng và giải pháp để ngăn ngừa chúng xảy ra. Nếu bạn tránh được các lỗi này, bạn ...

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

React Binding Patterns: 5 Approaches for Handling `this`

Bài viết được dịch từ nguồn: https://medium.freecodecamp.org/react-binding-patterns-5-approaches-for-handling-this-92c651b5af56 Có ít nhất năm cách để handle the this trong React. Hãy xem xét từng cách khác sau. 1. Use React.createClass Nếu bạn sử dụng React.createClass, React sẽ tự động hóa ...

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

Distributed software

This report will discuss the characteristics and principles of the distributed software applications. It also given the reviews and assessments based on the distributed software applications the distributed platforms. The principles and characteristics of distributed software. Definition of ...

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

Tìm hiểu gem Seed Fu

Seed Fu là một gem cung cấp chức năng nâng cao tạo dữ liệu cho CSDL trong ứng dụng Rails của bạn. Seed Fu cung cấp một số tính năng làm cho nó trở thành một lựa chọn tốt hơn đáng kể so với chức năng mặc định trong Rails. Để bắt đầu, Seed Fu cho phép bạn tạo các bộ seed một cách nhanh chóng và dễ ...

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

Con đường sự nghiệp của một Tester

Có một câu hỏi mà mọi người đều thắc mắc khi bước chân vào ngành kiểm thử đó là: Sự nghiệp trong tương lai sẽ như thế nào? Một vài công việc không có tương lai, bởi vì chúng không cho ta cơ hội học hỏi, cũng như cơ hội để phát triển, thăng tiến hay đi lên một cách tự nhiên. Đây là những điều sẽ ...

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

Tăng tốc Rspec với FactoryBot

Nếu bạn là một lập trình viên Rails thì chắc chắn bạn sẽ không hề xa lạ gì với Rspec và FactoryBot(tên cũ là FactoryGirl). Khi dự án của bạn có thời gian phát triển dài và quy mô lớn thì số lượng testcase của unit test sẽ rất lớn, để chạy hết số lượng testcase thì có thể mất tương đổi nhiều thời ...

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