Xây dựng tiện ích mở rộng sticker cho ứng dụng iMessage

Một trong các thông báo lớn nhất WWDC 2016 đó là việc giới thiệu framework cho iOS 10: nhà phát triển có thể tạo ra ứng dụng dưới dạng tiện ích mở rộng cho ứng dụng iMessage. Bằng cách này thì người dùng có thể tương tác với ứng dụng của bạn ngay trong ứng iMessage. Hiểu đơn giản hơn là khi bạn ...

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

Tạo form không thể dễ dàng hơn với Gem Simple Form

Dưới đây mình chia sẽ một vài kiến thức về gem simple-form add vào Gemfile: gem 'simple_form' sau đó: bundle install Chạy generator: rails generate simple_form:install Simple Form có thể dễ dàng tích hợp vào Bootstrap. Để làm điều đó bạn phải sử dụng tùy chọn bootstrap ...

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

UITableView design pattern.

Tản mạn Khi đã làm việc với iOS chắc chắn các bạn đều biết đến khái niệm UITableView . Một ứng dụng thông thường có thế bạn phải Implement 1, 2 thậm chí là rất nhiều UITableView . Và công việc của nó không có gì khác nhau là mấy gây ra sự nhàm chán. Với mỗi table view bạn đều phải set delegate, ...

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

Xây dựng 1 game server dựa trên nền tảng Colyseus framework, NodeJS (Phần 1)

Giới thiệu chung Giới thiệu qua thì Colyseus là 1 Authoritative Multiplayer Game Server trên Node.js. Nhiệm vụ nó là tạo ra 1 giải pháp để phát triển game nhiều người dùng bằng JavaScript. Một số điều mà Colyseus cung cấp cho bạn là: Giao tiếp bằng = WebSocket API đơn giản giữa client và ...

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

Cấu trúc dữ liệu vào giải thuật - 1 số giải thuật sắp xếp

1. Giải thuật sắp xếp trong cấu trúc dữ liệu & giải thuật Sắp xếp là sắp xếp dữ liệu theo một định dạng cụ thể. Trong khoa học máy tính, giải thuật sắp xếp xác định cách để sắp xếp dữ liệu theo một thứ tự nào đó. Sắp xếp theo thứ tự ở đây là sắp xếp theo thứ tự dạng số hoặc thứ tự dạng chữ ...

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

Tìm hiểu về Fintech

Nếu bạn là người quan tâm đến công nghệ, dù không đến mức đam mê, thì chắc cũng được nghe ít nhất 1 lần từ khoá "Fintech" trong khoảng thời gian nửa năm trở lại đây. Trong câu chuyện của dân IT, đặc biệt là những người yêu công nghệ mới, những người thích nắm bắt xu hướng, thì Fintech đã nổi lên ...

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

XPath in Selenium WebDriver

Trong Selenium nếu không thể tìm kiếm các elements bởi các định vị như id, class, name... thì hoàn toàn có thể nghĩ tới xpath để tìm các elements đó trên web, xpath cũng là phương thức được đông đảo người dùng sử dụng để tìm kiếm các thành phần trên trang web. 1. Xpath là gì Xpath được định ...

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

10 minutes Django practical tutorial

Official Django tutorial polls was too long for anyone to follow or read So I created a very comfortable tutorial so that everyone can have a grasp of it I think it is best that people can see practical things in a short time. We can make a simple application to write and edit memos. Please ...

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

Firebase - Redux Saga - Chat App Part 2

Phần này mình sẽ nói tiếp về phần async trong việc lắng nghe message được tạo mới, edit, delete. Đây có lẽ là phần không thể thiếu khi bạn muốn làm một ứng dụng chat. Đầu tiên thì để nghe được các event như message mới được tạo ra, hay edit hay delete thì chúng ta phải lắng nghe các thay đổi dử ...

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

Debug tại sao Rspec của bạn lại chậm?

Khi dự án của bạn đã trải qua một khoảng thời gian kha khá, số lượng test suite khá nhiều thì không có gì lạ khi thời gian chạy toàn bộ unit test của dự án tuơng đối lâu, vài chục phút không phải là hiếm gặp, cá biệt có khi nên tới cả tiếng đồng hồ. Nhưng số lượng test suit chưa hẳn là nguyên nhân ...

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

State machine trong Rails 5

Bạn đang xây dựng một model với các trạng thái khác nhau. Bạn vẫn có thể thiết kế model của bạn mà không cần sử dụng đến state machine. Bạn vẫn có thể viết thêm vài validation, các phương thức instance và helper để làm cho mọi thứ hoạt động bình thường. Bạn có thể làm điều đó miễn là model của bạn ...

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

Function và một số hàm thường dùng để xử lý string và number trong SASS

1. Function là gì? Function không còn xa lại gì trong các ngôn ngữ lập trình nhưng với SASS thì nó là một khái niệm khá mới lạ và đương nhiên cũng rất là hữu ích trong việc xây dựng CSS . Về chức năng của function cũng tương tự như @mixin, tuy nhiên nếu phân tích kỹ thì @mixin giống như ...

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

Một vài thứ giúp ích bạn khi học và làm dự án Laravel

Thỉnh thoảng ngồi lướt facebook mình hay focus vào các group, page về Laravel Framework, đọc về các issue mọi người hỏi và trả lời, các chia sẻ về các package cá nhân, link bài viết hay, các công nghệ mới => Đó là một cách học thêm rất thú vị. Nhân đây mình cũng chia sẻ tới các bạn vài thứ mình ...

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

iOS Clean Architecture(P1)

Introduction Chắc hẳn với mỗi chúng ta, trước khi chúng ta bắt tay vào làm dự án thì phần xây dựng kiến trúc, tổ chức dự án là điều đầu tiên và rất quan trọng trước khi bắt đầu code. Một số mô hình nổi tiếng như: MVC, MVP, VIPER, MVVM... đã rất quen thuộc với chúng ta. Hôm nay mình xin giới thiệu ...

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

Sử dụng Javascript console một cách hiệu quả !!

Giống như lập trình viên web, việc debug code là rất quan trọng. Khi chúng ta nghĩ đến console, điều đầu tiên xuất hiện trong đầu chính là console.log đúng không ?? Nhưng thật ra javascript còn vượt xa cả trí tưởng tượng của bạn. Và bây giờ chúng ta cùng đi tìm hiểu một vài bí mật của console ...

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

Building a Custom View - TicTacToe (Part 1)

Trong bài viết này sẽ hướng dẫn vẽ trên Canvas. Tạo Custom View hay ViewGroup không bắt buộc. Tuy nhiên có 1 số lí do sau ta nên xem xét để tạo custom view: Tạo UI và animation mà các widget hiện tại không có Tạo component có thể sử dụng lại Tránh tạo deeply nested hierarchies cải thiện ...

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

Thao tác với tệp có dung lượng lớn trong Ruby

Làm việc với những file dữ liệu lớn, điển hình là CSV không phải là chuyện hiếm gặp. Với Ruby, có khá nhiều cách để xử lý thông tin những file này, nhưng hay cùng kiểm chứng xem tài nguyên hệ thống được tiêu tốn thế nào cho mỗi cách. Khởi tạo môi trường Ruby version : 2.4.0 Operation : macOS ...

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

Cài đặt Neo4j Trên Centos7

phần mềm yêu cầu : wget và vim nếu bạn chưa có 2 pm này thì hãy cài qua yum như sau: yum install vim yum install wget Bước 1 chúng ta cần import key của neotechnology trước đã: gõ vào terminal những lệnh sau : cd /tmp wget http://debian.neo4j.org/neotechnology.gpg.key rpm ...

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

[Frond-end] Auto refresh browser

Demo: https://minhlong.github.io/Front-End-Auto-Refresh-Browser Source: https://github.com/minhlong/Front-End-Auto-Refresh-Browser Tự Sự Chuyện là hôm rồi mình có làm 1 trang frond-end cho boss. Trang này có gắn hình Ngọc Trinh da trắng nõn ... nhưng mình nghĩ thêm chút màu vàng saphia cho nó ...

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

Tạo style for Text using spans

Để tạo style text trong Android, chúng ta sẽ sử dụng spans! Thay đổi màu của một vài ký tự trong text, tạo text nhấp nháy, scale size text hoặc vẽ các điểm bullet với spans. Spans có thể thay đổi các thuộc tính của TextPaint, vẽ trên Canvas, hoặc thậm chí thay đổi cả bố cục văn bản hay là ảnh ...

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