What’s new in Ruby 2.5

Ngôn ngữ Ruby ngày càng được ổn định qua nhiều năm. Việc phát hành sắp tới của Ruby 2.5 sẽ giới thiệu rất nhiều tính năng và cải tiến mới so với phiên bản trước. Bài viết này sẽ được giới thiệu một số thay đổi thú vị và quan trọng nhất trong phiên ản này. Từ Ruby 2.4 đã được thêm phương thức ...

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

Today extension in iOS Swift 4

Một tính năng khá thú vị được giới thiệu cùng với iOS 8 tại WWDC đó là Today Extensions. Trong bài này chúng ta sẽ tìm hiều cách tạo một Today extension đơn giản cho một ứng dụng bất kì. Như vậy Today extension không thể hoạt động độc lập nó phụ thuộc vào main app. Hay hiểu đơn giản Today extension ...

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

sử dụng SSL/TLS với note.js

Xin chào các bạn, trong bài viết này, chúng tôi sẽ giới thiệu cho các bạn về cách thêm chứng chỉ Let's Encrypt vào máy chủ Express.js. Tuy nhiên, việc bảo vệ website và ứng dụng của chúng tôi với HTTPS là không đủ. Chúng ta cũng nên yêu cầu kết nối được mã hóa từ các máy chủ mà chúng ta đang nói ...

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

Ruby Exception Handling: SyntaxError

Ở bài viết này sẽ tìm hiểu sâu về SyntaxError trong Ruby on Rails. SyntaxError là một lớp con được kế thừa từ lớp ScriptError và nó bật lên bất cứ lúc nào gọi đến Ruby để cố bắt lỗi cú pháp mã không hợp lệ. Trong bài viết này chúng ta sẽ tìm hiểu về lớp SyntaxError để nhìn thấy chính xác vị trí của ...

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

Systrace - Công cụ giúp phân tích hiệu năng của ứng dụng Android(Phần 1)

The systrace tool helps analyze the performance of your application by capturing and displaying execution times of your applications processes and other Android system processes.(Theo định nghĩa chuẩn của trang Android Developer thì là như vậy còn trong quá trình thực hành thì định ...

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

Interactor Design Pattern trong Ruby (Phần 1)

Lời nói đầu Thường thì, mình khá là ghét bắt đầu một bài viết thẳng thừng với một đoạn code nào đó. Nhưng, thực sự đây lại là cách tốt nhất để cho bạn thấy vấn đề và sau đó là đưa ra 1 giải pháp rõ ràng cho nó (ít nhất là đúng trong bài viết này đã) Thôi không lan man nữa, chúng ta hãy xem đoạn ...

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

[Unity+Machine Learning] Tập 2: Training model cho sample của Unity.

Như các bạn theo dõi thì cũng biết, ở bài chia sẻ trước mình có hướng dẫn các bạn tạo ra môi trường để training cho project Machine Learning trên Unity. [Unity+Machine Learning] Tập 1: Tạo môi trường training Bài này mình sẽ hướng dẫn các bạn training 1 model để thấy được sự vi diệu của Machine ...

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

Quản lý các môi trường khác nhau trong dự án

Bạn hãy tưởng tượng rằng khi bạn hoàn thành một giai đoạn nào đó của dự án và tiến tới release sản phẩm. Bạn sẽ gặp phải vấn đề về API, asset, url, icon... Vì chúng có thể khác nhau trên các môi trường khác nhau. Đơn giản bạn có thể hiểu thế này: trong quá trình phát triển thì bạn chỉ được phép sử ...

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

Machine Learning - Thử làm Nhà Thiên Văn Dự Báo Thời Tiết

Từ thuở xa xưa, ông bà ta đã biết đến ngành khoa học thần bí "Dự báo thời tiết" thông qua những kinh nghiệm bản thân, đưa ra những phán đoán tương lai. Nào ai chài lưới ra khơi Thấy mây đỏ ngọn thì bơi thuyền vào Chuồn chuồn bay thấp thì mưa Bay cao thì nắng, bay vừa thì râm. Dự báo ...

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

Tạo một Database Manager trong sử dụng Core Data

Việc sử dụng Core Data trong các dự án iOS đã trở lên rất quen thuộc với các bạn iOS Developers. Hôm nay mình sẽ hướng dẫn các bạn tạo một file manager để làm việc với Core Data. Khi bạn tạo một project có sử dụng Core Data, XCode sẽ sinh ra cho bạn 1 file có tên ProjectName.xcdatamodeld. Bạn tạo ...

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

Giới thiệu về Data Classes trong Kotlin

Hầu như tất cả các dự án phần mềm mà chúng tôi tạo ra có một số lớp tồn tại chỉ để lưu trữ dữ liệu/trạng thái nhưng hầu như không có chức năng thực tế về hoạt động. Trong các ứng dụng phức tạp hơn, con số này có thể khá cao (các ứng dụng có cách tiếp cận kiến trúc sạch thường có 2-3 lần do sự tách ...

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

Kiểm tra thông tin, cấu hình, perfomance Server

Khi bạn làm việc với server cụ thể là cài cắm các gói, phần mềm hay deploy dự án bạn sẽ cần phải nắm được thông tin về server, version những thứ mình sử dụng hay những yếu tố ảnh hưởng gây hại đến project của mình, nếu có đội Infa hỗ trợ thì tốt nhưng tốt hơn hết bạn cũng nên biết để tự mình giải ...

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

Tự tạo helper function cho riêng mình trong project Laravel

Bài dịch từ trang laravel-news.com Laravel cung cấp sẵn rất nhiều helper function tuyệt vời và rất tiện lợi cho bạn làm việc với arrays, file paths, strings, và routes, đặc biệt là hàm dd(). Bạn cũng có thể tự viết cho mình các helper function for project Laravel và các packages PHP bằng cách ...

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

Giới thiệu OpenMP trong C++ (Phần 1)

Giới thiệu chung Bài viết này nhằm mục đích đưa ra một cái nhìn cơ bản về OpenMP và sử dụng OpenMP với C++ và sử dụng GCC để biên dịch chương trình Nội dung Giới thiệu OpenMP trong C++ Cú pháp Offloading Teams Thread-safety Quản lý chia sẻ dữ liệu giữa các thread Đồng bộ hóa ...

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

Industry 4.0

Khái niệm cách mạng công nghiệp 4.0 hay cuộc cách mạng công nghiệp lần thứ 4 là khái niệm đã không còn xa lạ với tất cả mọi người. Trên các phương tiện truyền thông, từ báo đài, báo giấy, mạng xã hội… ở đâu cũng nhắc đến từ nóng “4.0” này. Vậy Cách mạng công nghiệp 4.0 thực sự ...

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

Tự học Automation Testing Cơ Bản với Selenium - Tại sao không? (Phần I)

Như chúng ta đều biết, Automation Testing (Kiểm thử tự động) đang là xu hướng phát triển ngày nay và chắc chắn ngày càng có nhiều nhu cầu hơn nữa trong tương lai. Tại Việt Nam, các doanh nghiệp hiện tại đang thiếu nguồn lực này vì thế hiểu và áp dụng kiểm thử tự động trong kiểm thử phần mềm sẽ là ...

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

Tìm hiểu HttpClient trong angular 5

Hầu hết các ứng dụng giao tiếp với backend thông qua giao thức HTTP. Những trình duyệt hiện đại bây giờ đều hỗ trợ 2 API để tạo ra reqquests HTTP: XMLHttpRequest và "fetch()" API. Với HTTPCLIENT, @angular/common/http cung cấp một API đơn giản HTTP cho ứng dụng angular, xây dựng một interface ...

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

Tạo shimmer effect view

Shimmer effect là một hiệu ứng với view nó có thể thay thế cho ProgressBar hay ProgressDialog khi chúng ta chờ thực hiện một công việc trên background và hiển thị lên view khi công việc hoàn tất. Chúng ta có thể bắt gặp hiệu ứng này trên rất nhiều ứng dụng và điển hình là facebook. Có một thư viện ...

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

Tự xây dựng cho mình ứng dụng trên docker

Giới thiệu Docker là một công cụ tuyệt vời được thiết kể để tạo mới, chạy các tứng dụng bằng cách sử dụng các container. Các container cho phép đóng gói các ứng dụng với các thư viện, service, database... tất cả sẽ được đóng gói lại trong một container duy nhất. Nhờ vậỵ các developer sẽ chỉ cần ...

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

Where is WebAssembly now and what’s next?

Ngay cả trong những bản phát hành ban đầu, WebAssembly đã có tốc độ khá nhanh. Nhưng nó sẽ thậm chí còn nhanh hơn trong thời gian tới, thông qua một sự kết hợp của các bản sửa lỗi và các tính năng mới. Improving WebAssembly performance in browsers Một số cải tiến tốc độ sẽ được thực hiện, các ...

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