Solving problems with Swift - Fibonacci

Việc học một ngôn ngữ lập trình mới luôn thú vị nhưng cũng đầy thử thách. Với mình, một việc vô cùng quan trọng khi bắt đầu học một ngôn ngữ đó chính là tìm tài liệu đủ tốt để có thể giúp mình hiểu sâu về bản chất cũng như những tính năng, đặc điểm mà ngôn ngữ đó mang lại. Với C, chúng ta không thể ...

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

Ruby Memory Optimization

Nhiều người thường nói đến nhược điểm của ruby, đặc biệt là rails framework là những ứng dụng web xây dựng trên nền tảng này ngốn rất nhiều RAM (bộ nhớ). Nguyên nhân tại sao lại có tình trạng này thì hãy cùng đi vào tìm hiểu bài viết dưới đây để làm rõ các một khía cạnh về bộ nhớ trong ngôn ngữ lập ...

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

Xây dựng simple API với Express và Mongoose

Chào các bạn, bài viết này mình sẽ giới thiệu cách viết một đơn giản trên NodeJS sử dụng Express và mongodb Khi làm việc với NodeJS thì việc bạn cấu trúc ứng dụng của mình rất quan trọng. Không giống với các framework Web như Ruby on rails, Lavarel .... đều được xây dựng sẵn các cấu trúc từ lúc ...

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

Sử dụng Firebase storage trong app ios

1. Thiết lập môi trường Xcode 9.0 or later iOS 8 or above Swift 3.0 or later CocoaPods 1.4.0 or later 2. Tạo project trên Fibase Console Click Add project Tạo project name, quốc gia ... Sau khi tạo xong giao diện console sẽ được hiển thị, bạn chọn tab Storage phía bên ...

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

Tìm hiểu về Migration trong Laravel.

Xin chào các anh em. Mở đầu cho series Laravel và những điều thú vị về nó , hôm nay mình sẽ giới thiệu với các bạn về cách sử dụng Migrations trong Laravel. Migration giống như một hệ thống quản lý phiên bản giống như Git nhưng dành cho cơ sở dữ liệu của bạn. Migration cho phép bạn định nghĩa ...

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

REST 101 - REST, RESTful API

Khi phát triển các dịch vụ web (web services), các lập trình viên cần có một quy ước chuẩn để các thành phần trong hệ thống có thể giao tiếp với nhau một cách rõ ràng hơn. REST ra đời để giải quyết vấn đề đó, dù không phải một giao thức, cũng không hẳn là một kiến trúc nhưng nhờ REST mà việc lập ...

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

Ruby Metaprogramming (Phần 1) - What is this Magic ?

Để cho các bạn đỡ cái cảm giác chán ngán khi đọc phần mở bài của bất cứ cái bài viết kỹ thuật nào cũng đều bắt gặp format dạng " abc là một beep beep beep được tạo ra bởi oạch oạch oạch phục vụ cho bla bla bla", hôm nay mình sẽ viết cái series này theo một cách freestyle nhất với mục đích là đảm ...

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

Giới thiệu về Axios - một HTTP Client dựa trên Promise của Javascript

Axios là một HTTP client được viết dựa trên Promises được dùng để hỗ trợ cho việc xây dựng các ứng dụng API từ đơn giản đến phức tạp và có thể được sử dụng cả ở trình duyệt hay Node.js. Việc tạo ra một HTTP request dùng để fetch hay lưu dữ liệu là một trong những nhiệm vụ thường thấy mà một ứng ...

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

Cách tích hợp Google Maps vào ứng dụng Ruby on Rails

Điều đầu tiên và quan trọng nhất bạn cần biết về Google Maps service đó là nó thật tuyệt vời! Google cung cấp công cụ Freemium với tốc độ cực nhanh, đáng tin cậy và có khả năng tùy biến cao. Hơn nữa, cho đến khi bạn đạt đến giới hạn 2500 yêu cầu mỗi ngày, nó hoàn toàn miễn phí, vì vậy nó phù hợp ...

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

Session và Cookie

1. Mở đầu Đối với các bạn mới bắt đầu lập trình web, đã từng bao giờ bạn thắc mắc tại sao web site lại chỉ cần login lần đầu tiên, những lần sau thì tự động login, làm thế nào để thực hiện được điều đó ? Đó chính là nhờ session và cookie, việc hiểu rõ và phân biệt hai khái niệm này là một việc ...

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

How To Optimize Your Site With GZIP Compression

Compression là kĩ thuật tương đối đơn giản và hiệu quả để user tiết kiệm được bandawidth và tăng tốc cho website của bạn. Nhưng với cương vị là một Web Developer, bạn đã bao giờ tự tìm hiểu cách mà gzip làm việc hay chưa? hay là vì sao chúng ta lại phải sử dụng nó hay chưa? Trước tiên chúng ta ...

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

Tìm hiểu về Seeder trong Laravel

Xin chào anh em, tiếp tục series Laravel và những điều thú vị về nó , hôm nay mình sẽ giới thiệu về Seeder trong Laravel cho các bạn. Như các bạn biết đấy, khi chúng ta tạo xong CSDL(các bạn có thể tham khảo tại bài viết Migration của mình để rõ hơn cách tạo table bằng Migration trong Laravel). ...

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

Tìm hiểu về hash table

Giới thiệu Thuật toán liên quan đến hash table được ứng dụng ở hầu hết các ngôn ngữ, là một trong những nền tảng về thuật toán và cấu trúc dữ liệu. Trong computing, hash table là một cấu trúc dữ liệu dùng để lưu theo các cặp key value, nó dùng hash function để tính toán tới một index, nơi lưu ...

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

DSL - Giải pháp vô hiệu hóa bộ nhớ đệm cấp trường trong Rails

Trong môi trường phát triển web hiện đại hiện nay, bộ nhớ đệm(cache) là một cách nhanh chóng và mạnh mẽ để tăng tốc ứng dụng của bạn. Khi sử dụng nó một cách hợp lý, bộ nhớ đệm có thể mang lại những cải tiến đáng kể cho performance ứng dụng của bạn. Nhưng khi sử dụng nó không hợp lý, nó sẽ là một ...

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

Android DataBinding in RecyclerView – Phần 2

Mời các bạn đọc phần 1 tại link này Video demo Bước 1. Tạo project mới: File ⇒ New Project và chọn Basic Activity từ templates. Bước 2. Enable DataBiding trong app/build.gradle. Ngoài ra, thêm dependencies của RecyclerView và Glide sau đó, đồng bộ hóa dự án. android { ...

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

Generic Repository trong Node.js với TypeScript

Generic Repository Pattern Khi làm việc với JavaScript chúng ta thường gặp phải vấn đề là việc share code giữa các app của chúng ta, chúng ta thường viết lại một đoạn code (lặp lại) ở một project khác. Pattern sẽ giúp chúng ta viết thành data abstraction, khi chúng ta có một hoặc nhiều class và ...

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

15 điều bạn cần biết Chrome DevTools

Đây là bài dịch, bài gốc mời các bạn xem ở đây: https://tutorialzine.com/2015/03/15-must-know-chrome-devtools-tips-tricks Google Chrome là trình duyệt web phổ biến nhất được các nhà phát triển web sử dụng ngày nay. Hầu hết các bạn đã quen thuộc với nhiều tính năng như chỉnh sửa CSS, debug ...

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

Thư viện load ảnh React Native Fast Image

Hôm nay mình xin giới thiệu với các bạn một thư viện load ảnh cực kì tiện dụng trong React native, nó dựa trên 2 thư viện SDWebImage đối với iOS và Glide đối Android. Còn hai thư viện này khi code native chắc các bạn cũng đã quá quen thuộc rồi đúng ko ạ. Nhìn vào 2 bức ảnh trên, hẳn các bạn ...

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

Linux Find command

Ở bài viết trước chúng ta đã sử dụng Ag để tìm kiếm các file có chứa các cụm từ cần tìm, nhưng điều gì sẽ xảy ra nếu chúng ta muốn tìm kiếm file bằng các tiêu chí khác thay vì chỉ tìm kiếm theo nội dung của file? Lệnh find là một công cụ tìm kiếm. Với lệnh find chúng ta có thể nhanh chóng tìm ...

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

Tìm hiểu GraphQL, Xây dựng 1 GraphQL server với prisma

1) GraphQL là gì? Được Facebook giới thiệu cùng với Relay tại React.js Conf 2015, GraphQL là một ngôn ngữ query cho API dùng để viết các câu API một cách uyển chuyển chính xác những gì cần có, trong các application hiện đại nhiều lớp với nhiều thành phần phụ thuộc được sử dụng ngày càng phổ ...

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