AWS REDSHIFT VS MONGODB

Vấn đề về thời gian query vào DB có thể nói luôn là nỗi ám ảnh với những ai làm backends. Vừa rồi thì mình cũng bị dính vào vấn đề này khi mà thời gian hiển thị một trang là ác mộng (sohai). Điều đó đã dẫn đến việc mình phải ngâm cứu để chuyển loại DB cho dữ liệu, từ no-sql sang sql. Sau đây sẽ là ...

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

Các cách nhúng ảnh vào nội dung email và hiển thị ảnh nhúng trong nội dung email sử dụng Outlook REST API

Ảnh nhúng xuất hiện rất nhiều trong email, đặc biệt là các email thương mại, quảng cáo ... nhằng tăng nội dung cũng như thu hút người đọc chú ý hơn. Việc nhúng ảnh vào trong nội dung mail chúng ta thường dùng hầu hết là do công cụ soạn thảo email hỗ trợ, nếu muốn nắm rõ cách thức hoạt động, bài ...

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

URL Canonicalization

Recently I read about SEO and canonical Url, and I start to think that in these days and ages we have to be aware of this if we want our website to be "compatible and friendly" to search engines. 1.What is Canonicalization? < link rel = " canonical " href = " ...

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

Hướng dẫn cầu hình máy tính cá nhân thành một public server trên mạng internet

Ngày xửa ngày xưa, xưa lắm lắm lắm lắm (Bốn chữ lắm - Trúc Nhân ft Trương Thảo Nhi). Nghe các cụ trong làng kể lại thì nó vào khoảng 3 4 năm trước đây :v . Có một anh sinh viên nghèo, nghèo lắm lắm .... ấy, tiền ăn thì không đủ nhưng tiền trà đá thì rủng rỉnh vô cùng (quy đổi thành những dãy số ...

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

Những điều cần biết về java.util.concurrent trong lập trình đa luồng phần 2

Trong java.util.concurrent cung cấp các tiện ích đồng bộ hoá giúp cho việc lập trình multithread dễ dàng hơn. Bài viết này sẽ giới thiệu một số ý tưởng đồng bộ hóa thread ở mức cao hơn so với thread đơn thuần, trong bài viết này sẽ hướng dẫn cơ bản về sử dụng và quản lý multithread tư tưởng giống ...

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

LibGDX Tutorial 11: Scene2D Phần 3 - Quản lý đối tượng trong scene

Ở các tutorials trước, chúng ta đã sử dụng Scene2D để làm việc với các Actors, Actions, cũng như xử lý đầu vào, bây giờ chúng ta sẽ tìm hiểu xem nó quản lý các đối tượng trong scene như thế nào? Một trong những khả năng mạnh mẽ của Scene2D là grouping (nhóm đối tượng). Chúng ta hãy bắt đầu ngay với ...

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

How to Use Instruments in Xcode - Part 3

Dựa trên hướng dẫn từ: http://www.raywenderlich.com/23037/how-to-use-instruments-in-xcode Tiếp theo từ phần 2: https://viblo.asia/thevinh92/posts/7eEREJNVMgNj Allocations, Allocations, Allocations Công cụ tiếp theo được đề cập đến trong tutorial này là Allocations instrument. Nó cung cấp cho ...

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

TẠO CUSTOM COMPOUND VIEWS TRONG ANDROID

I. MỞ ĐẦU Đã khi nào bạn lập trình một ứng dụng Android mà ở đó bạn thường sử dụng một nhóm các views giống nhau tại nhiều layout khác nhau trong ứng dụng chưa? Ví dụ như cụm view chọn ngày mà bạn tự custom chẳng hạn. Tất nhiên bạn có thể làm bằng cách là tạo một layout gồm các view cần thiết và ...

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

Tạo 1 ứng dụng chat trực tuyến đơn giản sử dụng Nodejs, ExpressJs, SocketIO, Jade

Một trong ứng dụng quan trọng của fb chính là message, tức là người dùng có thể chat trực tuyến với nhau trên trang web hay ứng dụng, và gần như người dùng có trải niệm việc chat diễn ra gần như ngay lập tức. Thậm chí có thể tạo 1 nhóm chat với nhau, gửi hình ảnh cũng như có các biểu tượng cảm xúc. ...

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

Các tính năng mới của CSS3(p1)

Nếu bạn đang như tôi, khi bạn nhìn thấy một bản giới thiệu ấn tượng của một tính năng CSS3 mới, bạn không thể chờ đợi để bắt đầu sử dụng nó trong các trang web. 1. CSS Animations and Transitions Một trong các kỹ thuật phổ biến ở các website hiện đại là có các hiệu ứng chuyển động cho ...

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

Một số điểm khi tiếp cận React

Có cơ hội được tiếp xúc với React trong khoảng thời gian ngắn. Đây là chia sẻ ngắn ngủi về ReactJS của tác giả Cam Jackson 1. ReactJS không phải là một Framework Đi theo một hướng khác, ReactJS không phải là một Framework MVC hoàn chỉnh. Nó đơn giản là một kiểu của Framework. Nó giống như một ...

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

Phát triển game dựa trên game engine đa nền tảng cocos2d-x (P2)

5. Sprites Khi chơi game, bạn có thể nhìn thấy những đối tượng di chuyển trên màn hình, đó chính là Sprites. Nhân vật chính trong game cũng có thể là 1 Sprite. Vậy tất cả các thành phần đồ hoạ hiển thị trong game đề là Sprite ? Câu trả lời là không. Sprite chỉ là Sprite nếu bạn di chuyển nó, nếu ...

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

How to create local branch from remote branch

いつもremote branchをlocalにcheckoutする方法を忘れるので忘備録 branchのcheck $ git branch -a なければ $ git fetch 最後にlocal_branch remote_branchの順でcheckout $ git checkout -b #{loacal_branch} #{remote_branch}

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

Thiết kế hướng đối tượng trong Ruby (Phần 1)

Trong thiết kế hướng đối tượng, nguyên lý SOLID bao gồm: The S ingle Responsibility Principle The O pen Closed Principle The L iskov Substitution Principle The I nterface Sergregation Principle The D ependency Inversion Principle Trong khuôn khổ bài viết này chúng ta sẽ tìm hiểu ...

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

Một số lưu ý khi thực hiện kiểm thử trên Android

Ngày nay chúng ta hầu như ai cũng có một thiết bị thông minh, và nhiều nhất đó là các điện thoại thông minh và máy tính bảng. Theo đó thì các xu hướng phát triển phần mềm cũng dịch chuyển sang làm trên các thiết bị di động này. Trong đó thì phải kể đến hai loại thiết bị di động đang chiếm lĩnh thị ...

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

Lets Build Single Page Application - Part I

Indroduction The project that we are going to build in this lets build series, called Chanto Hanashinasai Yo! , is a lightweight anime discussion forum that has some basic functionalities like authentication, open up a thread, post & discussion and basic search for specific thread. This is ...

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

Viết microservice với RabbitMQ

Microservice là chủ đề mới và ngày càng nóng hổi trong cộng đồng lập trình viên. Bài viết này sẽ giới thiệu sơ lược về cách xây dựng một microservice trên Ruby on Rails. Bài toán ở đây là, viết một microservice dùng để gửi mail. Microservice này sẽ nhận một message có dạng: { "provider" : ...

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

xây dựng API với Napa

Hiện nay Việc xây dựng API dường như đã quá quen thuộc với mỗi lập trình viên. Bằng ngôn ngữ Ruby chúng ta có rất nhiều cách để viết API. Và để hỗ trợ viết API nhanh và tiện nhất thì hiện nay có một framework giúp ta thực hiện điều đó. Đó là Napa. Cài đặt gem install napa chú ý là napa chỉ ...

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

Quản lý user exception với RayGun

I. Mở đầu Xin chào các bạn (lay2) Đến hẹn lại lên, hôm nay tôi sẽ trình bày một vấn đề mà Developer đã nhẵn mặt với nó - Error Vâng, đối với Developer, việc gặp phải Bug khi chạy sản phẩm là điều xảy ra như cơm bữa. Dựa lỗi gặp phải, ta có thể sửa, cải tiến để sản phẩm mình hoàn thiện ...

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

Spaceship

Chắc hẳn mọi người không chỉ một lần bị gián đoạn công việc vì những thay đổi về web của Apple Dev Portal, ví dụ như không thể tạo app mới hay không thể đưa app lên Beta TestFlight. Với sự ra đời của Spaceship thì những phiền phức trên sẽ được giải quyết. Spaceship là một thư viện Ruby cho phép ...

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