PHP - những điều cần biết

Các đặc điểm cơ bản của lập trình hướng đối tượng. Chúng được thể hiện như thế nào trong PHP Sự khác biệt giữa Abstract Class và Interface. Thế nào là một phương thức static. Phân biệt cách dùng từ khoá static::method() với self::method() Thế nào là Trait Thế nào là Namespaces Thế nào là ...

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

Giới thiệu về laravel echo ứng dụng websocket và vuejs

Những ứng dụng hay không thể thiếu WebSockets được. Bạn có thể làm Tool chat online, Notification, ... và rất nhiều những ứng dụng real time khác. Với Laravel Echo mọi thứ càng trở nên đơn giản. Xây dựng chức năng chát trực tuyến với multiple rooms. Ứng dụng Chat online thì chắc chắn cần ...

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

Phương pháp Ivy Lee: lời khuyên cho công việc thường nhật để đạt được năng suất cực đại

Vào những năm 1918, Charles M. Schwab là một trong những người đàn ông giàu nhất thế giới. Schwab là chủ tịch của tập đoàn Bethlehem Steel Corporation, đứng đầu về mảng đóng tàu và thứ hai về sản xuất thép tại Mỹ vào thời điểm đó. Ông luôn luôn tìm kiếm những lợi thế so với đối thủ của mình. Để ...

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

Xây dựng ứng dụng chat đơn giản bằng Angularjs và PubNub

Giới thiệu Dưới đây là một ứng dụng đơn giản giúp người dùng có thể chat trực tiếp với nhau, sử dụng AngularJs và PubNub. Bài viết mang tính chất giúp người đọc hiểu được khái quát về PubNub và sử dụng PubNub Angularjs SDK Cài đặt PubNub Angularjs SDK Đăng ký tài khoản PubNub Đầu tiên, ...

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

Giới thiệu Oracle Enterpise Service Bus

I. Giới thiệu chung. Hệ thống mạng doanh nghiệp thường triển khai các ứng dụng,các nền tảng và các quy trình nghiệp vụ khác nhau. Một yêu cầu thiết yếu là chúng cần được liên kết và trao đổi thông tin với nhau. Nhưng có một vấn đề phổ biến là chúng không sử dụng một loại định dạng dữ liệu chung ...

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

Áp dụng A/B TEST trong Marketing hiện đại

1.Gioi thiệu A/B Test (hay A/B Split Test) là một phương pháp thử nghiệm 2 phiên bản (A và B) về giao diện hoặc cách bố trí nội dung, các nút căn chỉnh điều hướng, vị trí đặt hình ảnh, nút mua hàng của một website bán hàng. Mục đích cuối cùng là để kiểm tra xem khách hàng thích cách bài trí nào ...

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

Một vòng Laravel (Part 1)

Được hôm rảnh rỗi, ngồi ôn lại các kiến thức về laravel, nên quyết định viết luôn một bài để lưu trữ, sau này cần xem lại thì có cái để mà xem. ok, content sẽ gồm những vấn đề sau: CSRF là gì? Restful là gì? Các method cơ bản của của một Resource Controller Sự khác biệt giữa Query Builder ...

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

React + ES6 = không còn autobind

React đã loại bỏ tính năng "autobinding" với các class component sử dụng cú pháp EcmaScript 2015 (ES6). Vì vậy, những cách truyền hàm như kiểu onClick={this.onClickHandler} sẽ không hoạt động nữa vì hàm onClickHandler không được gán cho đối tượng nào, this trong hàm đó sẽ không thể xác định ...

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

Django Aggregation (Part II)

Trước đây, tôi đã có một loạt bài dịch về QuerySet trong Django: A Survey On QuerySet In Django (Part I) A Survey On QuerySet In Django (Part II) Các bài viết này trình bày về cách chúng ta sử dụng các câu query để thực hiện CRUD trong Django. Tuy nhiên, đôi khi chúng ta sẽ cần lấy ra các giá ...

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

Truncate Text AngularJS Directive

I-Giới thiệu Bài viết này sẽ hướng dẫn cách viết một AngularJS directive để cắt bớt đi một đoạn text dài dòng thành dấu ba chấm và có thêm nút hiển thị ra hết nội dung và ẩn đi lại mà không dùng css. Thông thường AngularJS đã cho một filter có tên limitTo để tạo một array hoặc string chứa một ...

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

How to Write a Sync Adapter

What is Sync Adapter The modern smartphone apps depend on the offline-capability for getting data from the remote servers. The apps must implement a data sync mechanism with reliable connection availability, user authentication and optimum battery usage to achieve this capability. In this ...

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

Cơ bản về git

Thế nào là repository, branch. Làm thế nào để xoá một branch ở phía local, làm thế nào để xoá một branch remote Làm thế nào để push một branch ở local lên remote dưới một cái tên khác (Ví dụ như ở local tên branch là task#1, và muốn push lên branch task#2 ở remote) Thế nào là git rebase. ...

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

Một vòng Laravel (Part 3)

Tiếp nối loạt bài về Laravel, hôm nay chúng ta sẽ đi tiếp những chủ đề còn lại. Mail Schedule Event Job Mail Một tính năng nữa mà Laravel đã đơn giản hóa khá nhiều đi cho lập trình viên. Khởi đầu, hãy chắn chắn là có package guzzle trong project của bạn composer require ...

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

Playing With Bits in Ruby

Bitwise operations were quite an important issue at the time of programming in C. Mostly it was a cool stuff where one can play with basics of computer - Binary numbers. But working in high-level languages like ruby, one seldom use bitwise operations in their work. Sometimes, i accidentally ...

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

Full Text Search với Hibernate và SpringMVC Phần 1: Hello Hibernate Search

Về khái niệm Full text search (FTS) các bạn có thể xem tại bài viết này của chị Huyền Châm, mình thấy khá đầy đủ và dễ hiểu. Tại bài viết này mình sẽ chia sẻ cách để thực hiện FTS với Hibernate trong SpringMVC. Tại sao lại với Hibernate mà không phải với MySQL hay Postgresql? Vì khi setup FTS ở ...

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

Tìm hiểu về Elasticsearch phần 2

Tiếp nối phần trước mình đã giới thiệu về Elasticsearch, cách thức hoạt động của Elastic search. Phần này mình sẽ giới thiệu về cách cách cài đặt Elastic search trong ubuntu và cách sử dụng một số câu truy vấn của Elastic search. I. Cách cài đặt. Để cài đặt được Elastic search thì mày bạn cần ...

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

Tên và giá trị trong Python

Cách đây mấy ngày, tôi có trao đổi với đồng nghiệp của mình về cách làm việc của tên (names) và giá trị (values) trong Python. Và tôi nghĩ còn nhiều người vẫn chưa thực sự hiểu rõ về nó, nhân tiện có bài viết khá trực quan và dễ hiểu về vấn đề này mà tôi lượm được trên mạng nên tôi muốn chia sẻ ...

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

Độ phức tạp của thuật toán

Mở đầu Là một lập trình viên, chắc hẳn bạn đã từng ít nhiều nghe tới khái niệm "Độ phức tạp của thuật toán". Rất nhiều người cho rằng độ phức tạp của thuật toán đại diện cho thời gian chạy nhanh hay chậm của 1 chương trình, nhưng liệu đây có phải là 1 quan niệm đúng? Bài viết dưới đây sẽ cho bạn ...

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

OutOfMemoryException trong Android

11-03 10:59:39.199: E/AndroidRuntime(13566): FATAL EXCEPTION: main 11-03 10:59:39.199: E/AndroidRuntime(13566): java.lang.OutOfMemoryError 11-03 10:59:39.199: E/AndroidRuntime(13566): at android.graphics.BitmapFactory.nativeDecodeStream(Native Method) 11-03 10:59:39.199: E/AndroidRuntime(13566): ...

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

introducing to anyenv

what is the point to do this? in my case I can easily switch php version using phpenv and no conflict between phpenv and rbenv This is a simple wrapper for rbenv style environment managers. You don't have to git clone or modify your shell profile for each **env anymore if you install anyenv. ...

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