Chia cột với float và clear float

Việc chia cột trong CSS là việc bạn thiết lập những phần tử con trong một phần tử mẹ nằm trên cùng một hàng. Ví dụ, ta muốn phần nội dung website của mình có hai cột thì mình sẽ tạo ra 3 cái <div>, một cái <div> gọi nó là container hoặc phần tử mẹ, hai cái <div> còn lại gọi là ...

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

Cẩm nang tạo nên GoodUI!

Bạn là một designer gánh trên vai tầm ảnh hưởng của một sản phẩm công nghệ đến người dùng. Bạn thường xuyên phải trăn trở bởi những khó khăn khi phải viết bản đặc tả tính năng cũng như giao diện cho những dự án mà không có designer. Bạn là người ưa sáng tạo cho những thiết kế UI ...

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

Refactor ruby on rails 2

Trong bài viết Refactor ruby on rails chúng ta đã tìm hiểu một số cách refactor code, hôm nay chúng ta sẽ tìm hiểu kỹ hơn về Refactor view Refactor view 1. Tìm hiểu về yield Đây là đoạn code khá quen thuộc trong app/views/layouts/application.html.erb < html > < head > ...

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

SQL Cơ bản Phần 2

Hôm nay chúng ta sẽ tiếp tục cuộc hành trình tìm hiểu về ngôn ngữ sql, làm việc với nhiều bảng hơn, giới thiệu qua các quan hệ trong cơ sở dữ liệu và Join query. bạn có thể xem lại PHẦN I để dễ dàng đọc phần này hơn nhé. Các kiểu qan hệ database Khi tạo một database, thường sử dụng ...

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

Video Uploads với Rails and Ziggeo

I. Giới thiệu Youtube là một trong những trang chia sẻ, lưu trữ và quản lý video. Trong bài viết này, chúng ta sẽ tìm hiểu về nền tảng hỗ trợ video khác là Ziggeo. Nó cung cấp API cho phép lưu trữ, quản lý video cùng với khả năng nhúng vào trang web. Ngoài ra, nó còn cung cấp một vài tính năng ...

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

Cấu trúc dữ liệu và giải thuật: Ngăn xếp (Stack)

1. Ngăn xếp(stack) là gì Ngăn xếp là 1 dạng đặc biệt của danh sách liên kết mà việc bổ sung hay loại bỏ 1 phần tử đều thực hiện ở 1 đầu của danh sách gọi là đỉnh. Ngăn xếp có 2 thao tát cơ bản: thêm phần tử vào được gọi là push và loại bỏ phần tử được gọi là pop. Việc loại bỏ phần tử sẽ ...

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

Tìm hiểu Laravel (P9) - Controller

Indexs Phần 1: Cài đặt Phần 2: Form đăng nhập Phần 3: Send Mail Phần 4: Error page Phần 5: Application Structure Phần 6: Logging Phần 7: Routing Phần 8: Middleware Để tiếp tục seri tìm hiểu laravel, bài này ta sẽ tìm hiểu về controller, nơi chứa các xử lý logic mà ta sẽ ...

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

NPM và GULP

Trong project của bạn, khi muốn cài đặt jQuery hoặc Bootstrap thì bạn sẽ làm thế nào ? Lên trang chủ tải về ? Hay là gắn link CDN vào ? Những cách đấy thường có nhiều nhược điểm như khó quản lý file hoặc khi mạng chậm thì ... Tôi có dùng một cách khác đó làm sử dụng NPM và GULP. NPM là viết tắt ...

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

React validate with redux-form

Hiện nay việc validate form ngay khi người dùng nhập dữ liệu là rất phổ biến. Điều này rất thuận tiện bởi vì người dùng có thể nhìn thấy lỗi ngay khi nhập vào form chứ không cần phải đợi đến khi submit form rồi mới nhận được kết quả là dữ liệu họ nhập vào là không đúng. Vậy câu hỏi đặt ra ra làm ...

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

Sử dụng Beacon để xây dựng chức năng định vị trong nhà trên điên thoại đi động

Giới thiệu 1. Khái niệm chung: Beacon là thiết bị điện tử nhỏ phát ra tín hiệu bluetooth năng lượng thấp Bluetooth Low Energy (BLE). Bất kỳ thiết bị nào có công nghệ BLE đều có thể bắt được tín hiệu này, chẳng hạn điện thoại thông minh và máy tính bảng. Công nghệ mới này tạo ra cuộc cách ...

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

Giới thiệu gem jQuery Turbolinks

Như các bạn đã biết, Turbolinks thực hiện việc chuyển hướng trong trang web một cách nhanh gọn và nó tạo ra giao diện người dùng rất "dễ thở". Mỗi khi trình duyệt gửi request, server sẽ trả về response và view để đáp ứng request, mỗi 1 lần giao tiếp như vậy trình duyệt của người dùng lại compile ...

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

Laravel 5.4 - Before release

Laravel 5.4 Laravel 5.4 là version tiếp theo của laravel. Nó hiện đang được phát triển và có thể sẽ được release vào tháng 1 năm 2017. Tuy nhiên chúng ta đã có thể bắt đầu tìm hiểu về phiên bản sắp tới này của laravel. Route improvements Route trong laravel 5.4 có 2 cải thiện mới được bổ ...

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

Javascript Template Literals

Giới thiệu Template Literals hay còn gọi là Template Strings là một cú pháp mới để khai báo String trong Javascript được giới thiệu trong ES2015/ES6. Nó cho phép chúng ta sử dụng multi-line string, sử dụng biến, biểu thức, hàm bên trong string mà không phải thông qua phép cộng string. Cú pháp ...

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

Machine Learning thật thú vị - Nhập môn về Học sâu

Nếu như bạn đã mệt mỏi, chán nản với việc đọc những bài viết bất tận về học máy nhưng chưa thực sự hiểu ý nghĩa của nó. Bài viết này sẽ giúp bạn thay đổi điều đó. Lần này, chúng ta sẽ học cách viết một chương trình nhận dạng các đối tượng trong ảnh sử dụng học sâu . Nói cách khác, chúng ta sẽ ...

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

Node.js Tutorial: Phần 2 - Module trong Node.js

Module trong Node.js Node.js sử dụng Module để đơn giản hóa việc tạo ra các ứng dụng phức tạp. Module là giống như các thư viện trong PHP, C, C#,… Mỗi module chứa một tập các hàm chức năng có liên quan đến một đối tượng của Module qua đó giúp việc viết và quản lý mã lệnh của chương ...

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

VueJS Framework - Transitioning State and Render Function

Sau một vài bài viết giới thiệu các tính năng của VueJS Framwork thì hôm nay mình xin giới thiệu với các bạn thêm tính năng Transitioning State và Renderer Function. Như bài trước mình đã giới thiệu về tính năng Transition Effects là 1 tính năng hoàn hảo dành cho những ai muốn customize lại ...

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

Gosu - Thư viện game 2D cho Ruby - Phần 2

Bài trước mình đã giới thiệu về Gem gosu, tạo cửa sổ game, đưa một đối tượng nhân vật vào cửa sổ game và làm nó chuyển động theo chiều x hoặc y. Nhưng có điều nhân vật "vượt biên" cửa sổ và đi đi đi mãi luôn không quay lại. =)) Vì vậy ở bài này, mình sẽ giới thiệu cách làm cho nhân vật không ...

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

Triển khai hệ thống Wifi Captive Portal với Pfsense 2.3 và freeradius + mysql

Nếu mọi người từng đi đến các khách sạn hay sân bay thì có thể thấy mỗi khi kết nối đến hệ thống mạng không dây thì đều thấy hiện lên một trang portal quảng cáo về địa điểm đó và yêu cầu chúng ta xác nhận thông tin ... Đó chính là giải pháp Captive Portal giúp họ quảng bá về công ty cũng như các ...

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

Positive Vs Negative testing (P2)

Trong phần 2 này mình xin chia sẻ một số kỹ thuật sử dụng cho Positive và Negative testing. 1. Kỹ thuật phân tích giá trị biên Đây là một trong những kỹ thuật kiểm thử phần mềm, trong đó các testcase được thiết kế bao gồm các giá trị tại các biên. Nếu dữ liệu đầu vào được sử dụng là trong giới ...

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

Tránh lạm dụng Singleton

Mở đầu Singleton là một design pattern rất phổ biếnbiến. Đối với iOS developer nói riêng, chúng ta rất quen thuộc khi làm việc với singleton qua một số loại đã được Apple định nghĩa sẵn ví dụ như: UIApplication, NSFileManager, ... Xcode còn cung cấp sẵn code snipe Dispatch Once để việc implement ...

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