Sử Dụng MongoDB Với Gem MongoID Phần V

Mongoid(tiếp) Metadata Tất cả các mối quan hệ trong MongoDB chứa metadata chứa thông tin về các mối quan hệ trong câu hỏi, và là một công cụ có giá trị cho các nhà phát triển bên thứ ba sử dụng để mở rộng Mongoid. Bạn có thể truy cập vào metadata của các relation bằng 1 số cách [1] ...

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

PsySH - Interactive debugger and REPL for PHP

Lời mở đầu Bạn là một PHP programmer? Bạn đã từng phát triển website bằng một trong các framework hay CMS (Content Management System) như: Cake, Drupal, eZ Publish, Laravel, Magento, Patheon, Symfony, WordPress hay Zend? Nếu vậy, chắc hẳn ít nhiều bạn cũng biết đến chức năng tương tác với ...

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

Backbone.js from Beginner to ... (Part4)

Collections Collection là một dạng của Models và được tạo trong extend Backbone.Collection Thông thường, khi tạo một collection, bạn cũng có thể muốn định nghĩa một model nào đó mà collection có chưa model đã xác định đó. Ví dụ như sau : < script type = 'text/javascript' > ( ...

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

Active Record Migrations

1. Migration là gì? Migrations là một tính năng của Active Record cho phép bạn thay đổi cấu trúc của database và cả dữ liệu trong database. Migrations sử dụng Ruby DSL để mô tả sự thay đổi trong database thay thế cho việc viết những đoạn SQL gốc, bạn có thể dễ dàng đọc và thao tác chỉnh sửa nhanh ...

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

You Don''t Know JS: Scope & Closures

What is Scope? Một trong những khả năng cơ bản của hầu hết tất cả các ngôn ngữ lập trình đó là khả năng lưu(store) giá trị vào biến(variable), và sau đó có thể sửa, xóa hay lấy giá trị đó. Thực tế khả năng lưu lại giá trị vào biến và lấy giá trị ra từ biến là việc chuyển đổi trạng thái của ...

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

Làm thế nào để sự nghiệp của bạn mau chóng phát triển trong ngành IT?

Lời tựa : Môi trường năng động, trẻ trung, bản thân luôn được cập nhật những kiến thức, công nghệ mới nhất…v.v luôn là những hình dung đầu tiên khi mọi người nghĩ tới lĩnh vực Công nghệ thông tin IT. Tuy nhiên, do xuất phát điểm của mọi người trong ngành này thường là “dân kỹ ...

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

Deploy Laravel với Capistrano

Nội dung chính I. Giới thiệu Capistrano. II. Chuẩn bị một project Laravel, install và cấu hình Capistrano III. Thực hiện việc deploy I. Giới thiệu Capistrano 1. Giới thiệu chung. Capistrano là một chương trình được viết bằng Ruby cung cấp cho bạn một bộ công cụ tiên tiến để triển khai ...

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

Tutorial : Sử dụng flask cho người mới bắt đầu ( Phần 2)

Tiếp theo phần 1 giới thiệu Flask trong bài này tôi sẽ giới thiệu cách tạo template cho framework Flask. Cấu trúc đơn giản của Flask: microblog flask <virtual environment files> app static templates __init__.py views.py tmp ...

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

Hướng dẫn cài đặt OpenStack trên Ubuntu và Centos

Mưa lạnh những vẫn phải chui ra khỏi cái chăn ấm để ngồi viết bài tiếp theo về OpenStack như đã hẹn các bạn ở bài trước: Tìm hiểu về điện toán đám mây với OpenStack Hôm nay tôi sẽ hướng dẫn các bạn cài đặt OpenStack trên Ubuntu và Centos, các bạn đã sẵn sàng chưa? Chúng ta cùng bắt đầu nhé! ...

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

API chatwork trong ruby

Bạn thường xuyên sử dụng chatwork, và đôi khi công việc yêu cầu bạn phải gửi tin nhắn hàng ngày tới mọi người trong danh bạ, hay gửi tới mọi người trong 1 group với cùng 1 nội dung ( mang tính chất thông báo ). Vậy bạn sẽ làm gì? copy - pastes? Thật may là bạn không phải làm thế vì chatwork cung ...

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

Tổng quan project android studio

Một dự án Android chứa các tệp tin cần thiết định nghĩa cho ứng dụng của bạn, từ mã nguồn đến cấu hình build và mã kiểm tra. Công cụ SDK yêu cầu dự án của bạn cho phép cấu trúc cụ thể vì vậy nó có thể biên dịch và đóng gói ứng dụng của bạn chính xác. Với Android studio thì module là mức cao ...

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

Cách viết JavaScript tốt theo phong cách mới

Nguồn 最近の行儀のよい JavaScript の書き方 Lời mở đầu Gần đây, môi trường chạy JavaScript không chỉ bị gói gọn trong browser nữa(node.js, Web Workers) Ngoài ra, phương thức load thông qua tag <script> cũng đã trở nên lỗi thời, hiện nay việc thực hiện load module sử dụng require (phong cách ...

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

Tương tác với UIs trong ReactJS

I.1. Event Handling and Synthetic Events Có thể dễ dàng truyền event handler giống như với HTML thông thường. React đảm bảo mọi event hoạt động giống như trên IE8 và React biết cách bubble và capture các sự kiện thông qua spec, Các sự kiện sẽ được xử lý bởi event handler và được đảm bảo phù hợp ...

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

Mixpanel: mobile & web analytics

Để hỗ trợ tốt cho các nhà phát triển ứng dụng và những người làm SEO hiệu quả thì không thể bỏ qua các công cụ thu thập và phân tích dữ liệu người dùng như: Google Analytics, Flurry, Mixpanel, Localytics, Countly, Apsalar — ApScience. Nó giúp cho người quản trị nhìn thấy được người dùng đang sử ...

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

Eclipse plugin development

1. Eclipse là gì? Nếu là 1 lập trình viên, bạn không thể không biết đến eclipse. Eclipse là phần mềm miễn phí, được các nhà phát triển sử dụng để xây dựng những ứng dụng J2EE, sử dụng Eclipse nhà phát triển có thể tích hợp với nhiều công cụ hỗ trợ khác để có được một bộ công cụ hòan chỉnh mà ...

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

Giới thiệu JADE ( Template Engine ) Part 1

1.Jade là gì ? Jade là 1 template engine giúp việc markup HTML trở nên nhanh chóng hơn nhiều lần so với cách viết bình thường. Bạn không cần phải quan tâm đến việc mở đóng thẻ rắc rối hay phải viết lại nhiều lần 1 đoạn HTML. Jade doctype html html(lang="en") head title= pageTitle ...

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

My App Crashed [translate]

App của bạn đang chạy ngon lành, bỗng đâu ngày trời đẹp và app bị crash. Việc đầu tiên của bạn là đừng hoảng sợ, bắt đầu tìm hiểu nguyên nhân để fix lỗi này 1 cách triệt để, bạn không thể trông chờ vào may rủi đc. Trình tự đầu tiên là bạn cần là lần theo cách file bị lỗi và từ đâu đi đến thao tác ...

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

300 triệu bản ghi với Redis và giải pháp của Instagram

Đây là câu chuyện về 1 lần chuyển đổi hệ thống của Instagram. Lúc đó họ cần một giải pháp map 300 triệu bức ảnh với user id tương ứng, các yêu cầu đặt ra là: Trả về giá trị tương ứng theo khóa với tốc độ cực nhanh Tiết kiệm bộ nhớ, sử dụng 1 server với RAM 17GB hoặc 34GB chứ ko phải cỡ 68GB ...

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

Performance Profiling Tools - Phần 1

Trong bài biết này tôi xin giới thiệu 1 vài tools cho phép chụp hiệu suất ứng dụng để bạn có thể tìm ra cách tối ưu ứng dụng của mình được tốt nhất Để có thể đặt các pixel lên màn hình thì sẽ cần phải để ý đến 4 phần cứng của thiết bị. Đầu tiên là CPU: nó có nhiệm vụ tính toán danh sách cần ...

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

4 Xu hướng Font chữ hot nhất hiện nay cho Designer

Đã là một designer thì việc bắt kịp xu hướng đang thịnh hành và theo dõi những tin tức trong ngành là rất quan trọng. Nếu khá tiếng Anh một chút thì các bạn có thể tham khảo một số trang web và blogs rất hay ho như Smashing Magazine, OneExtraPixel, Webdesigner Depot,TechCrunch. Typography đóng ...

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