
Hiểu Người Nhật - Hiểu Khách Hàng Nhật (phần 1)
"Tôi thấy đại thể design như thế này ngon rồi, chỉ cần chỉnh sửa một chút thôi." Mấy hôm sau thấy một tá comment ném sang muốn sửa. =)) "Bạn thật là xuất sắc, tôi rất mong được như bạn." - Lời khen của CTO dành cho thằng Kĩ sư cầu nối đầu cua @@. Chả bao giờ thấy chê bai cái gì mình và team ...

Tránh re-submit form trong Spring bằng cách sử Flash Attribute
Kể từ phiên bản Spring MVC 3.1 đã được bổ sung 1 thuộc tính rất hữu ích đó chính là Flash attribute nhằm giải quyết các vấn đề về POST/Redirect/GET pattern. Trong một ứng dụng Web thông thường, với mỗi một form submitted POST dữ liệu lên server, Spring controller sẽ lấy dữ liệu request từ ...

Tìm hiểu về Request Lifecycle
Chắc hẳn các bạn đã nghe nói hoặc dùng với PHP Framework là Laravel rồi đúng không. Vậy điều gì xẽ xảy ra khi có một request đến một URL được định nghĩa trong route của ứng dụng? Cách thức hoạt động của Framework ra sao? Bài viết này sẽ giúp bạn hiểu thêm về Framework này nhé. The standard ...

Laravel và BDD
BDD là gì BDD (Behavior Driven Development) là một quá trình phát triển phần mềm dựa trên phương pháp Agile(phát triển phần mềm linh hoạt). BDD là sự mở rộng của TDD (Test driven development). Thay vì tập trung vào phát triển phần mềm theo hướng kiểm thử, BDD tập trung vào phát triển phần mềm ...

React Native - Phần 2 - Viết chương trình đầu tiên và tìm hiểu vể Props, State
React Native - Phần 2 - Viết chương trình đầu tiên và tìm hiểu vể Props, State Trong Phần 1 chúng ta đã tìm hiểu cách để cài đặt React Native và tạo chương trình mặc định. Trong phần này chúng ta sẽ bắt đầu đi sâu hơn vào các kiến thức cơ bản trong React Native. Cụ thể ở Phần 2 này chúng ta ...

Part 1 - Gerrit Code Review with Jenkins CI : Introduction
Nhắc đến các hosted version control sites, có lẽ những cái tên GitHub, GitLab, Bitbucket, Google source ..vv đã không còn xa lạ với giới developer. Chuỗi bài viết này mình sẽ giới thiệu với các bạn, một công cụ quản lý và review source code cực kỳ tốt, tuy không còn mới lạ nhưng cũng là cái tên ...

Tản mạn đôi chút về Javascript
Hello các bẹn, đầu tiện cảm ơn vì đã click đọc bài của mình nhé, hôm nay như tiêu đề thì mình sẽ tản mạn đôi chút về Javascript nhé =)) =)) Bạn là một developer, đã từng code js function run ( ) { a = 1 ; } run ( ) ; console . log ( a ) ; Ở đoạn code này nó vẫn ...

Xử lý Background Job trong Ruby bằng Resque
Hiện nay có nhiều công nghệ được sử dụng trong rails để giảm tải và cải thiện performace của server như: Delayed Job, Resque hay Sideiq. Về mặt cơ bản thì đó là các tiến trình chạy ngầm, tuy nhiên mỗi công nghệ đều có một cách thức hoạt động riêng. Hôm nay tôi sẽ giới thiệu về một công nghệ có ...

Lập kế hoạch sprint theo định hướng cam kết
Một cuộc họp lập kế hoạch sprint theo định hướng cam kết bao gồm Product Owner, Scrum master và toàn bộ thành viên của nhóm phát triển. Product Owner mang tới những backlog item có độ ưu tiên cao nhất tới buổi họp và giải thích chúng cho nhóm, thường bắt đầu với một cái nhìn tổng quan về nhóm các ...

Free App Chat with PubNub and AngularJS - Part 2
Phần 2: chúng ta sẽ đi tìm hiểu cách xây dụng App Chat sử dụng History API để lưu trữ tin nhắn, từ đó chúng ta có xem được lịch sử tin nhắn hay tìm lại tin nhắn bằng cách cuộn thanh cuộn. Và thêm nữa là giới thiệu về cách quản lý cấu trúc source code sao cho hợp lý sao cho khoa học. Overview: ...

Spring Batch Hello World
Trong quá trình làm việc và học tập chúng ta có thể gặp một số khái niệm mới.Bài viết này tôi xin giới thiệu về khái niệm mới tôi đã gặp trong quá trình học tập làm việc đó là Spring batch. 1.Khái niệm 1.1 Batch là gì? Batch hoặc Batch processing là từ được sử dụng trong ngành công nghệ thông ...

Giới thiệu về Deepstream - Server mã nguồn mở để xây dựng ứng dụng realtime
Mở đầu Các ứng dụng realtime đang dần lấn át các ứng dụng web tĩnh truyền thống và thay vì phải reload lại page thì nội dung trang web sẽ được hiển thị realtime. Tuy nhiên nếu như tiện lợi về tính năng thì các trang web tích hợp realtime lại khá khó build Bài hôm nay ta sẽ tìm hiểu về server mã ...

Làm quen với Elixir on Phoenix qua phương trình bậc 2
Ở bài trước chúng ta đã lướt qua được cách cài đặt và khởi động được server của Elixir trên Phoenix. Đối với những tài liệu ở bài trước thì các bạn hoàn toàn có thể tìm hiểu được chi tiết qua các đề mục đó. Nhưng với mình thì việc tìm hiểu một cách nhanh nhất và hiệu quả nhất là bắt tay vào làm một ...

[201611][DatTX] Create Print page by Jqurery Template, Ajax in Webform asp.net
Hello mọi người. Tháng 11 này mình sẽ viết bài về các tạo 1 trang print sử dụng Ajax, Jquery Template. Chúng ta sẽ bắt tay vào thực hiện chủ đề nhé. Mục tiêu của bài viết hôm này là tập trung hướng dẫn: tạo sẵn 1 template kiểu html sử dụng Ajax để request server lấy dữ liệu sử dụng ...

Bottom Sheets trong Android
Bottom Sheet là 1 thành phần được thiết kế theo phong cách material design, được thêm vào thư viện design support library trong phiên bản 23.2. Bottom sheet là 1 cửa sổ đơn giản hiển thị từ dưới đáy của màn hình và có thể được sử dụng để hiện ra nhiều thông tin hơn cho người dùng. Ví dụ của bottom ...

Xây dựng chức năng gửi Email trong ứng dụng Django
Lâu lâu rồi mó mần lại Django đổi gió tý. Hôm nay tôi sẽ cùng các bạn thực hiện xây dựng chức năng gửi Email trong ứng dụng Django. Nào chúng ta cùng bắt đầu nhé. Let's go =)) Cài đặt project Trước hết chúng ta cần tạo 1 dự án django, và bạn có thể thực hiện điều đó bằng cách mở terminal lên và ...

Xây dựng ứng dụng chat sử dụng PHP Websocket
Trước khi nghĩ đến chủ đề này mình có search trên viblo với keyword websocket viblo xem đã có ai viết về mục này chưa và kết quả là đã có rất nhiều bài viết về mục này nhưng đa số là lý thuyết. Để hiện thực hóa những lý thuyết đã được đọc thì trong phạm vi bài viết này mình xin giới thiệu về cách ...

ASP.NET 5 và AngularJS Phần 5, Form Validation
Đây là phần thứ 5 trong phần blog của loạt bài xây dựng ASP.NET 5 (ASP.NET vNext) ứng với AngularJS. Trong loạt bài đăng trên blog, tôi sẽ cho các bạn thấy làm thế nào để có thể tạo ra một ứng dụng Movie đơn giản sử dụng ASP.NET 5, MVC 6, và AngularJS. Bạn có thể tải về mã đã thảo luận trong bài ...

Openshot phần mềm chỉnh sửa video trên ubuntu
1.Phần mở đầu Như chúng ta thấy thì smartphone rất phổ biến, và tất nhiên, cũng có nhiều người dùng nó để ghi lại những khoảnh khắc đáng nhớ của mình như video, photo ... Vậy bạn có muốn, tổng hợp những video đó thành những video có nhac, có intro.. có sub để tặng, để chia sẻ, hoặc đơn giản là để ...

HA for Rancher
Như các bạn đã tìm hiểu ở phần trước, định nghĩa về rancher, nó hỗ trợ docker swarm như thế nào, cơ bản về rancher. Hôm nay, mình sẽ trình bày về cách cấu hình HA cho rancher. 1. Yêu cầu Mô hình: Các single node trong HA rancher cần phải có đủ tối thiểu các yêu cầu như sau: Chạy trên ...