Video Game History

With article I want to show you guy about my discovery about game in the future. I am not the best the gamer but I like playing all the kind of the game. By other hand, if we look back into the past we could image that the past of game is very different from now. And we don’t need miss the ...

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

Giới thiệu về framework Hyperapp

Hyperapp là một framework giúp xây dựng giao diện của ứng dụng web với cơ chế quản lý trạng thái. Hyperapp sử dụng một object chứa dữ liệu (state), các thành phần trên giao diện (biểu diễn thông qua virtualDOM) sẽ hiển thị thông tin dựa trên object này. Việc thay đổi dữ liệu của state sẽ được thực ...

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

Includes vs Join in Rails

Hiện nay với hầu hết tất cả các dự án website lớn nhỏ đều có , tồn tại rất nhiều ràng buộc là rất nhiều mối quan hệ cơ sở dữ liệu. Với việc có rất nhiều mối quan hệ dẫn đến việc cải thiện hiệu suất performance gần như là bắt buộc đối với các developer .Để giải quyết vấn đề này Ruby on Rails cung ...

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

Khởi tạo các giá trị trong ViewController Storyboard một cách an toàn

Từ khi Apple ra mắt Storyboard và áp dụng nó ngay khi khởi tạo một project, chúng ta thường sử dụng nó trong các dự án và luôn phải pass các giá trị giữa các ViewController. Hôm nay mình sẽ giới thiệu với các bạn một tip giúp cho việc khởi tạo các giá trị của ViewController được an toàn và nhìn ...

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

Ruby phân tích và thực thi một câu lệnh như thế nào?

Bạn đã bao giờ thắc mắc rằng một đoạn Ruby code như bên trên sẽ được thực thi như thế nào? nó được Ruby đọc và chuyển hóa bao nhiêu lần trước khi nó được thực thi? Câu trả lời chính xác là 3 lần . Cho dù đó là một đoạn code đơn giản như trên hay là cả một ứng dụng Rails khổng lồ thì cũng đều được ...

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

Angular 4 vs Rails (Part II)

Tiếp nối phần một của bài viết Angular 4 vs Rails . Hôm nay mình xin phép tiếp tục chia sẻ với mọi người những vấn đề mà team mình gặp phải khi thực hiện nghiên cứu base với Angular 4 và Rails (trước khi bị bỏ và quay về với ERB thuần </p> <div class= Tác giả: Bùi Văn Nam viết 17:51 ngày 12/08/2018

Sử dụng select2 với Rails Controller, AJAX

Chào các bạn, hôm nay chúng ta cùng tìm hiểu về select2 nhé. Nội dung của bài viết này bao gồm các phần như sau: Giới Thiệu: Tổng quan về select2, khi nào thì cần sử dụng select2 Cách cài đặt Cách sử dụng select2 bình thường. Cách sử dụng select2 với AJAX và dữ liệu load ra màn hình là ...

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

Xây dựng RESTful API đơn giản với NodeJS

Xin chào mọi người, hôm nay mình muốn demo cho những bạn chưa từng làm việc với ngôn ngữ Nodejs hoặc đơn giản là muốn tạo một RESTful API với NodeJS </p> <div class= Tác giả: Trịnh Tiến Mạnh viết 17:51 ngày 12/08/2018

Một vài mẹo để tăng performance cho Rails

Như chúng ta đã biêt, đối với một website điều quan trọng nhất là để lại ấn tượng cho người dùng và cung cấp những thông tin mà người dùng quan tâm, và đối với các nhà phát triển web như chúng ta, chúng ta luôn luôn phải đối mặt với một bài toán muôn thủa Performance Performance quyết định rất ...

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

Làm thế nào để tạo một bản deep copy của một object trong Java

Khi chúng ta muốn copy một object trong Java, có hai khả năng mà chúng ta có thể xem xét - shallow copy và deep copy. Shallow copy là cách tiếp cận khi chúng ta chỉ sao chép các giá trị trường và do đó bản sao có thể phụ thuộc vào object gốc. Còn theo hướng deep copy thì đảm bảo rằng tất cả các ...

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

Auto deploy Node.js app lên server qua SSH với GitLab CI/CD và PM2

Chào các bạn, nếu các bạn chưa biết tới GitLab thì có thể tham khảo bài viết Tìm hiểu về Gitlab của tác giả Le Thi Ngoc Anh trên Viblo. Cũng giống như Github, GitLab là nơi giúp bạn có thể lưu trữ mã nguồn của mình free và private. Tuy nhiên, bạn có thể mua các gói dịch vụ khác phù hợp hơn ...

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

Những Script Selenium WebDriver đầu tiên - Các lệnh cơ bản

Như các bạn cũng đã biết , Selenium Webdriver (Se driver) là một tool open source giúp việc thực thi các hành động lên trang web một cách tự động, tất nhiên là tùy vào mục đích và yêu cầu của người viết. Se driver hỗ trợ viết script trên nhiều ngôn ngữ khác nhau: Java, C#, python, PHP,... Về ...

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

Agile Là Gì và Các Phương Pháp Kiểm Thử Agile

1. Phương Pháp Agile Là gì? Phương pháp Agile là một cách chú trọng vào việc lặp lại liên tục sự phát triển và kiểm thử xuyên suốt vòng đời phát triển phần mềm của dự án. Cả 2 hoạt động phát triển phần mềm và kiểm thử của mô hình Agile đều hoàn toàn khác biệt với mô hình Waterfall. Sự phát ...

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

Kết hợp Bootstrap Carousel với CSS3 Animations

Khi vào một trang web bất kì, điều gì lôi cuốn bạn? Với mình yếu tố đầu tiên quyết định mình có ở lại trang web đó hay không đó chính là giao diện. Thông thường khách hàng sẽ yêu cầu nhà phát triển thêm slider hoặc carousel để hiển thị nội dung trên trang web với mục đích làm cho trang web tươi ...

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

Laravel deep dive: Tìm hiểu về hệ thống notification của Laravel

Với các hệ thống hiện này gửi thông báo tin tức, thông báo xác nhận đăng ký, thông báo quên mật khẩu hay reset mật khẩu cho người dùng là vô cùng cần thiết. Đây có thể là đòi hỏi bắt buộc với các hệ thống website có tương tác nhiều với người dùng hiện này. Với Laravel nó đã cung cấp sẵn cho chúng ...

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

Cron job với Nodejs qua ví dụ đơn giản - Tự động tổng hợp doanh thu và xuất ra file excel lúc 23h hằng ngày

Giới thiệu Ngày hôm nay mình xin được viết bài về vấn đề tạo cron job với Nodejs qua việc tạo một ứng dụng đơn giản. Ví dụ, chúng ta có một trang web bán hàng, và chúng ta muốn web app của chúng ta sẽ tự động tổng hợp doanh thu cũng như tình hình kinh doanh trong ngày, rồi xuất ra một file excel ...

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

Scope the Monkey: Refinements in Ruby

Kỹ thuật Open Class trong Ruby hay còn gọi là monkey patch là một kỹ thuật meta programming cho phép các developer có thể thêm phương thức mới hay refine định nghĩa lại phương thức đã tồn tại trong một class. Nhưng thật không may là phạm vi của những thay đổi như vậy mang tính global. Do đó, ...

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

23 câu truy vấn hữu ích trong ElasticSearch [Phần 1]

Để minh họa các loại truy vấn khác nhau trong Elasticsearch, trong bài viết này, chúng ta sẽ cùng nhau tìm kiếm tập hợp các book documents với các field sau: title, authors, summary, release date, and number of reviews. Trước hết ta cần tạo index mới và đánh index cho các document: PUT ...

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

Một cách đơn giản để thực hiện 1 buổi Sprint Retrospective

Start, Stop, Continue retrospective Có lẽ có rất nhiều cách để thực hiện một buổi retrospective cũng như là có nhiều team đã thực hiện. Đây là một trong số đó, nó đã được áp dụng trong nhiều năm, và cho nhiều đội. Bắt đầu tiến hành một buổi retrospective bằng cách hỏi các thành viên trong ...

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

Tìm hiểu về Wicket Framework (Phần 1)

Giới thiệu Wicket đã được phát triển từ năm 2004 và trở thành Apache Project từ năm 2007. Trong những năm này, Wicket đã chứng minh rằng nó là một giải pháp vững chắc và có gía trị để xây dựng enterprise web applications. Các Core Developer của Wicket đã thực hiện những công việc tuyệt vời để tạo ...

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