Ruby: Chú ý khi dùng `downcase!`

Chú ý khi dùng downcase! downcase! sẽ trả về nil nếu như xâu ký tự không có thay đổi. Ví dụ: "FiShiNg" . downcase ! # return: fishing "fishing" . downcase ! # return: nil Vì vậy, cần cẩn thận không dùng ghép downcase! với các câu lệnh khác, đề phòng trường hợp kết quả không ...

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

Làm quen với Vue.js !

Gọi tắt là Vue (phát âm là /vjuː/, giống như view trong tiếng Anh), Vue.js là một framework linh động dùng để xây dựng giao diện người dùng . Khác với các framework nguyên khối (monolithic), Vue được thiết kế từ đầu theo hướng cho phép và khuyến khích việc phát triển ứng dụng theo từng bước. ...

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

Làm thế nào để cấu trúc các components trong React?

Lập trình là một nhiệm vụ khá phức tạp. Đặc biệt tạo ra clean code là rất khó. Chúng ta cần phải quan tâm nhiều yếu tố - đặt tên các biến, phạm vi function, xử lý các lỗi, đảm bảo security, giám sát performance, ... Còn để đặt tên điều khó nhất trong lập trình, tôi sẽ bắt đầu với bài viết các ...

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

Finding the longest path on the grid pattern to lock the smartphones using the Hamiltonian path

Smartphone is the latest-generation handheld device as it contributes a lot to ease our daily activities such as communication, keeping personal data, office-tasks, and even many fun-activities! Nowadays, it's an important thing for the smartphone users to keep their smartphones secured to prevent ...

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

Bạn hiểu về hàm main trong Java đến mức nào? 12 câu hỏi đơn giản để kiểm tra kiến thức của bạn.

Hàm main trong hầu hết các ngôn ngữ lập trình có lẽ là hàm đầu tiên mà chúng ta làm quen khi học 1 ngôn ngữ mới. Nó đóng vai trò như 1 điểm bắt đầu (entry point) "nơi mà quyền điều khiển được chuyển từ hệ thống đến một chương trình máy tính, và tại đó thì CPU sẽ truy cập vào 1 chương trình hoặc một ...

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

String and Symbol in Ruby

Ruby có Symbol cũng như String. Symbol trong Ruby là một khái niệm khá thú vị và được sử dụng rất nhiều. Lập trình viên chúng ta chắc hẳn đã qúa quen với symbol hay string khi sử dụng trong các task công việc. Nhưng có khi nào, ta tự hỏi symbol và string nó khác nhau như nào? Tại sao khi thì dùng ...

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

Optimistic Locking trong Rails

Optimistic Locking là gì ? Trong quá trình vận hành hệ thống, mình đã gặp phải một tình huống khá trớ trêu là 1 bản ghi bị ghi đè nhiều lần và dữ liệu trước bị ghi đè bởi dữ liệu sau khiến dữ liệu update trước đó bị mất hoàn toàn. Sau khi điều tra thì vấn đề là do hệ thống của mình có nhiều người ...

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

3 điều cần chú ý về Mobile Navigation trong thời đại Iphone X

Thời gian gần đây dân công nghệ không ai là không biết đến sự xuất hiện "vạn người mong" của iPhone X. Apple đã mạnh dạn bỏ đi phím home kiêm cảm biến Touch ID trên thiết bị, việc này cũng giúp phần viền bezel của chiếc iPhone mới mỏng hơn. Đây chính là điểm thay đổi lớn nhất về phần thiết kế trên ...

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

Avoiding singletons in Swift

Có vẻ như có sự đồng thuận của cộng đồng lập trình IOS cho rằng singletons là không tốt, tuy nhiên cả Apple và các nhà phát triển Swift bên thứ ba tiếp tục sử dụng chúng cả trong nội bộ ứng dụng và trong các framework. Why are singletons so popular? Trước tiên, hãy bắt đầu bằng cách hỏi tại sao ...

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

5 Thủ Thuật Hữu Ích Trong Python

Giới Thiệu Python là ngôn ngữ lập trình được sử dụng rất phổ biến ngày nay để phát triển nhiều loại ứng dụng phần mềm khác nhau như các chương trình chạy trên desktop, server, lập trình các ứng dụng web... Trong bài viết này tôi sẽ giới thiệu với các bạn 5 thủ thuật hữu ích trong ngôn ngữ lập ...

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

Accessing deeply nested object property

Anything that can go wrong will go wrong So we adds checks everywhere to make sure the data comes from outside is in the correct shape. Soon, we will realize that we've created this monster. Looking for a value nested deeply inside an object is very popular in Javascript codes and you ...

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

Machine Learning thật thú vị (4): Tự động tag tên bạn bè với HOG & CNN

Chắc hẳn các bạn đều biết đến tính năng cho phép nhận diện bạn bè thông qua ảnh trên Facebook? Vào thời gian ban đầu, nếu muốn, bạn phải tự tag tên bạn bè của mình vào. Bây giờ, ngay khi bạn tải một bức ảnh lên, Facebook tag tất cả mọi người vào ảnh như một phép thần thông vậy: Công nghệ nhận ...

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

What makes WebAssembly fast?

Trong bài viết trước , chúng ta đã tìm hiểu cách tạo và làm việc với WebAssembly modules. Ở bài viết này, chúng ta sẽ tìm hiểu tại sao mà WebAssembly lại chạy nhanh hơn so với JavaScript. What does JavaScript performance look like today? Trước khi chúng ta có thể hiểu được sự khác biệt về hiệu ...

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

Shader Unity - Outline shader

Chào mọi người. Hôm nay mình xin trờ lại với bài Shader Unity - Outline shader. Như các bạn đã biết, hiện ứng Outline là 1 trong những hiệu ứng được sử dụng phổ biến trong game. Mình sẽ giúp các bạn làm hiệu ứng này với Shader. Oke chúng ta bắt đầu nào. I, Ý tưởng Như bình thường muốn tạo ...

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

Rethinking JavaScript Part I - The if Statement (Translated)

Tư duy về hàm đã giúp tôi mở mang đầu óc về lập trình. Nó đã cho tôi một cái nhìn sâu rộng về code. Nó cũng mang lại cho tôi một nhiệm vụ mà ở đó tôi đã tự vấn rất nhiều về các đặc tính cốt lõi của ngôn ngữ. Gần đây tôi xem xét rất kỹ về câu lệnh if. Do đã viết cả một ứng dụng mà không cần ...

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

Machine Learning thật thú vị (3): Tìm kiếm ảnh chứa chim với CNN

Liệu bạn đã chán ngấy đọc những câu chuyện về deep learning (học sâu) và không rõ chính xác nó là gì? Hãy cùng nhau làm rõ trong bài này. Chúng ta cùng nhau viết chương trình có thể nhận diện vật thể từ những bức ảnh sử dụng deep learning và giải thích bí mật mà Google Photos tìm kiếm ảnh dựa ...

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

Các kiểu layout trong Xamarin.Form (Part 1)

StackLayout AbsoluteLayout RelativeLayout Grid ScrollView Sau đây chúng ta sẽ bắt đầu tìm hiểu từng loại Khi nói đến Ngăn Xếp (Stack) có lẽ không khó gì để liên tưởng đến những hình ảnh như này. Có phải các bạn đang nhìn thấy rất nhiều sách đang đè chồng chất ...

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

Những thách thức khi kiểm thử thủ công và kiểm thử tự động

Bài viết trên được dịch từ link: http://www.softwaretestinghelp.com/manual-and-automation-testing-challenges/ Kiểm thử phần mềm là một công việc ẩn chứa nhiều thách thức, kể cả khi thực hiện thủ công hay tự động. Thông thường, khi kiểm thử bằng phương pháp thủ công, các developer mặc định cho ...

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

HTTP in Angular 2

Tiếp nối chuỗi bài về #Angular 2 hôm nay mình xin phép trinh bày về module HTTP Khi thực hiện việc call đến máy chủ bên ngoài, điều chúng ta muốn là user có thể tiếp tục có thể tương tác với trang. Nghĩa là, chúng ta không muốn trang của chúng ta đóng băng cho đến khi yêu cầu HTTP trả về từ bên ...

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

Tối ưu thời gian build và cải thiện caching với thư viện Webpack DLL - Part 1

Giới thiệu Webpack cung cấp 2 thư viện để chúng ta có thể chia dự án JavaScript ra thành từng file nhỏ có khả năng compile 1 cách độc lập. Đó Là Webpack Dll và DllReference 2 thư viên này sẽ giúp lập trình viên tối ưu hóa thời gian build app và tăng cường khả năng caching bằng cách nhóm các thư ...

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