
Công nghệ 3D
3D nghĩa là gì? Đa số người nghĩ về 3D giống kiểu như là phim 3D hoặc TV. Trong quá trình đó sử dụng mẹo về máy chiếu để tạo ra ảo giác về độ sâu(chiều thứ 3) từ các hình 2D phẳng. Còn khi chúng ta nói về 3D là nói về tọa độ thế giới thực trong không gian 3 chiều thực. Trong toán học các tọa độ ...

Sử dụng đệ quy và một số mẹo hay khi viết query PostgreSQL (phần 1)
Mở đầu Đôi khi làm việc với cơ sở dữ liệu chúng ta cần tới các phép toán lặp (loop) nhằm phục vụ cho việc phân tích các cấu trúc phức tạp, PostgreSQL có hỗ trợ việc sử dụng CTEs (Common Table Expressions) như một giải pháp hiệu quả cho nhu cầu này, bài viết dưới đây mình sẽ mô tả ngắn gọn kịch ...

Thay đổi Ngôn ngữ không cần restart activity trên android ?
Chào các bạn hôm nay mình xin phép viết một bài về cách refesh lại text khi thay đổi ngôn ngữ mà không cần phải refesh activity. Hôm nay mình xin được viết về 3 cách để thay đổi ngôn ngữ (ý mình là thay đổi ngôn ngữ ngay tại cái màn hình có chứa cài đặt thay đổi ngôn ngữ nhé),mình sẽ chỉ ra ưu ...

Giới thiệu thư viện xoay, cắt ảnh đơn giản.
Chắc hẳn làm việc với image ai cũng đã có lần phải động tới việc xoay cắt ảnh , riêng với mình thì đã làm tương đối nhiều với mấy vụ cắt gọt này nên nhân đây chia sẻ cho mọi người 1 thư viện xoay , cắt ảnh hết sức đơn giản có thể dễ dàng custom cũng như sử dụng. cũng như mình chia sẻ mực đích ...

Nghề comtor hay còn gọi là phiên dịch viên Tiếng Nhật
Trước khi vào nghề hiện tại, tôi đã từng làm công việc phiên dịch viên. Tôi làm công việc này trong khoảng thời gian không dài nhưng nó đã để lại cho tôi rất nhiều kinh nghiệm đáng quý. Vậy nên với bài viết dưới đây, tôi muốn share cho các bạn những kinh nghiệm mà tôi có được cũng như tôi học được ...

Xamarin.Forms Performance - Part 1
Có rất nhiều kỹ thuật để tăng hiệu suất của các ứng dụng Xamarin.Forms. Và những kỹ thuật này có thể làm giảm đáng kể số lượng công việc mà 1 CPU phải thực hiện và dung lượng bộ nhớ tiêu thụ bởi một ứng dụng. 1. Kích hoạt chức năng XAML Compiler XAML có thể được tùy chọn biên dịch trực tiếp sang ...

Implementing Google Analytics
Introduction It is important to keep track on your app after release therefore google have provided its Analytics service for developers to keep track of their app. Be it the number of users you have or the most visit activity, Google Analytics provides an interface for you to monitor and manage ...

Hướng dẫn lập trình Android sử dụng Youtube API
Mục tiêu của bài viết: YouTube Data API v3: Hướng dẫn lấy các video của youtube của Google cung cấp. YouTube Android Player API: Hướng dẫn bạn dùng luôn cái player của google cung cấp để play video youtube. 1. YouTube Data API v3: Hướng dẫn lấy các video của youtube của Google cung ...

Làm thế nào để kiểm thử một ứng dụng mà không có các yêu cầu?
How to Test an Application without Requirements? Về mặt kỹ thuật thì không có ứng dụng nào mà không cần tài liệu mô tả. Hãy tưởng tượng một phần mềm không làm gì cụ thể mà chỉ đơn giản là chạy những dòng code. Nó sẽ giống như việc một chiếc cầu thang mà không dẫn đến đâu cả. Tất cả các phần mềm ...

10 lỗi hay gặp nhất của Rails Developers
Ruby on Rails ("Rails") là một framework mã nguồn mở phổ biến, dựa trên ngôn ngữ lập trình Ruby mà cố gắng đơn giản hóa và tinh giản quá trình phát triển ứng dụng web. Rails được xây dựng trên nguyên tắc quy ước về cấu hình. Đơn giản chỉ cần đặt, điều này có nghĩa rằng, theo mặc định, Rails giả ...

7 phẩm chất cần có của một tester
Mỗi lĩnh vực đều yêu cầu những phẩm chất đặc thù. Những người có đủ các phẩm chất này được công nhận và đứng đầu trong lĩnh vực của họ. Trong bài viết dưới đây, kiểm thử phần mềm yêu cầu những phẩm chất thậm chí còn khắt khe hơn bởi nhiều lí do. Khi nói đến những phẩm chất, đó là những kĩ năng ...

Cách viết basic spec và test spec
Nguồn bài viết: 基本仕様書の書き方 テスト仕様書の書き方 Basic spec là gì Là spec được viết vào thời điểm có thể phán đoán được rằng đã hầu như có đủ những yêu cầu cho hệ thống từ khách hàng. Nó quyết định schedule cũng như cấu trúc cơ bản của hệ thống sau khi đã định nghĩa lại những yêu cầu của khách hàng từ cái ...

Validate Json data (Phần cuối)
Ở những phần trước, mình đã giới thiệu cách dùng cơ bản với ajv , các từ khóa quan trọng, ý nghĩa và cách dùng của mỗi từ khóa theo mỗi kiểu dữ liệu khác nhau. Bạn có thể xem lại Phần 1 và Phần 2 để xem cách sử dụng cơ bản. Với bài viết này, mình sẽ tổng hợp lại một chút những thứ đã được đề cập ở ...

CAPTCHA What? Why? Build. Break.
Trong quá trình sử dụng các website, chắc hẳn không ít lần các bạn đã phải nhập captcha để tiếp tục các tác vụ. Dù yêu hay ghét thì captcha cũng đã và đang là một phần không thể thiếu của các website, trong bài viết này, chúng ta sẽ tìm hiểu xem captcha là gì và nó hoạt động như thế nào. Bài viết ...

Sử dụng SnapHelper trong RecyclerView
Nhiều khi tôi dùng CH Play. Nhìn danh sách các ứng dụng nhưng không biết nó là một viewpager hay là một listview hay recyclerview. Thế là tôi mày mò thử tìm hiểu xem nó sử dụng component nào để xử lý việc vuốt danh sách item đấy giống như vuốt viewpager nó là cái gì. Thì cuối cùng tôi cũng tìm hiểu ...

Write no "for" loop
Bạn chắc là đã rất quen với vòng lặp rồi. Bạn thấy vòng lặp hoàn toàn dễ hiểu vì đó là một trong những cái bạn học đầu tiên khi bắt đầu học lập trình. Ai mà chả đọc được vòng lặp. Chẳng có lý do gì để không dùng nó cả. Nhưng nếu mình bảo có cách viết khác dễ đọc hơn vòng lặp thì sao. Cơ mà dù thế ...

Implement an Application using Express + Node.js, starting from Zero
No more explanation needed for Node.js - an execution environment of server-side Javascript. Express is a framework for speeding up the main development by Node.js There is a detail example of REST API showing how Express can improve your development efficiency. If you develop a web service that ...

Part5- Một số thuộc tính của Selenium Python Bindings
Ở phần 4 chúng ta đã biết về Page Objects, Page object classes, Page elements, Locators, WebDriver API và test case thông qua bài viết https://viblo.asia/huong.quynh/posts/gVQeljQVvZJ Bài viết này sẽ cung cấp tiếp một số thuộc tính như dưới đây 1. Action Chains Action Chains là một cách để ...

[Xamarin Android] Implement your own binding engine (based on XML attributes)
Đầu tiên, chúng ta cần hiểu về MVVM design pattern. Đối với Xamarin Form, việc data binding đã được implemented sẵn vì UI chúng ta được dựng lên từ file xaml. Với Xamarin android, việc binding trực tiếp trên file UI axml là bất khả thi nếu không apply các framework đã có binding engine được tạo ...

Import CSV with validations - Rails
I. Chuẩn bị Giả sử mình cần import một số data vào database, thì CSV là format mình thấy đơn giản nhất, ở bài viết này chúng ta sử dụng gem Roo để hỗ trợ đọc file. Mặc định chúng ta có sẵn 2 model là User và Product và muốn import data vào cả 2 model này với 2 file CSV riêng. Đầu tiên, trong file ...