RxSwift 1: Xin chào RxSwift!

Bài viết được sự cho phép của tác giả Lê Xuân Quỳnh Dựa theo tác giả: Marin Todorov. Loạt bài đăng này giới thiệu cho bạn cách viết ứng dụng IOS sử dụng Reactive bằng ngôn ngữ Swift. Vậy chính xác RxSwift = Reactive + swift là gì? Nó là thư viện để xử lý các sự kiện không ...

Tác giả: Hoàng Hải Đăng viết 09:47 ngày 30/03/2021

Các ưu nhược điểm của Swift so với Objective C

Mục lục nội dung 1. Swift và Objective C 2. Các ưu điểm của Swift so với Objective C 3. Nhược điểm của Swift so với Objective C Bài viết được sự cho phép của tác giả Trần Hữu Cương Các ưu nhược điểm của Swift so với Objective C 1. Swift và Objective ...

Tác giả: Hoàng Hải Đăng viết 09:47 ngày 30/03/2021

Security Considerations khi Designing Web Applications

Mục lục nội dung 1. Access and Authentication 2. SSL – Http và Https 3. SQL Injection 4. Command Injection 5. Security Considerations Input Checks 6. Tham khảo Bài viết được sự cho phép của tác giả Kiên Nguyễn Nhắc tới thiết kế hệ thống (System Design), ngoài ...

Tác giả: Vũ Văn Thanh viết 09:47 ngày 30/03/2021

Đọc dữ liệu từ một file text và ghi lại dưới dạng file parquet trên HDFS sử dụng Spark (Phần 2)

Các bạn chưa đọc phần 1 thì có thể đọc tại đây nha : Đọc dữ liệu từ một file text và ghi lại dưới dạng file parquet trên HDFS sử dụng Spark (Phần 1) Khi ta đã lấy được toàn bộ dữ liệu text ra file listModelLog thì việc ghi dữ liệu ra file parquet là cực kì đơn giản : SparkSession spark = ...

Tác giả: Vũ Văn Thanh viết 09:46 ngày 30/03/2021

Sử dụng env (process.env) hiệu quả

Lâu rồi không viết bài gì cả nên nay mình viết một bài xàm xàm xíu. Cũng có hữu ích cho một số bạn làm NodeJS. Bài viết gốc: Sử dụng env (process.env) hiệu quả Tổng quan process.env là một biến toàn cục trong NodeJS được set tự động khi app nodejs start. Có thể hình dung thế này: Khi ta ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

Caching đại pháp 3: Vấn đề và cách giải quyết

Vấn đề không tự sinh ra cũng không tự mất đi, nó chỉ chuyển từ dạng này sang dạng khác, hoặc từ chỗ này sang chỗ khác. Đây là định luật bảo toàn vấn đề áp dụng trong thế giới phần mềm do chính mình phát biểu =))). Bạn có vấn đề, bạn tìm cách giải quyết nó, và vấn đề khác lại xuất hiện bởi vì giải ...

Tác giả: Trịnh Tiến Mạnh viết 09:46 ngày 30/03/2021

Vanilla JS: Copy to clipboard

1. Yêu cầu Yêu cầu bài toán là khi người dùng click vào button Copy thì sẽ lưu giá trị trong ô input bên cạnh vào bộ nhớ thay cho việc người dùng phải nhấn Ctrl + C mất thời gian. Đây là một trong những bài tập vanilla Javascript ở mức cơ bản giúp các bạn làm quen, chủ yếu giải thích về ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

How to config your output file name in Gradle Kotlin DSL - Android

Config your output file name in Gradle Kotlin DSL Thời gian qua mình có làm việc khá nhiều với Gradle Kotlin DSL. Có lần, mình cần config output file name của file .apk sau khi build để hỗ trợ cho CI/CD. Nếu sử dụng Groovy thì Okie, câu chuyện cũng khá đơn giản, mọi người có thể tìm thấy ở đây. ...

Tác giả: Bùi Văn Nam viết 09:46 ngày 30/03/2021

Hiểu rõ hơn về gem CanCanCan trong Ruby On Rails- Part 1

CanCanCan là một thư viện phân quyền cho Ruby và Ruby on Rails, nó hạn chế những tài nguyên mà một người dùng nhất định được phép truy cập. Tất cả các quyền có thể được xác định trong một hoặc nhiều tệp khả năng và không bị trùng lặp trên controller, view và query DB, giữ logic phân quyền ở một ...

Tác giả: Vũ Văn Thanh viết 09:46 ngày 30/03/2021

Custom menu chuyển đổi giữa các sheet sử dụng Apps Script

Google Apps Script là một nền tảng phát triển ứng dụng giúp tạo các ứng dụng tích hợp với Google Workspace (Google Sheets, Google Docs, Google Slides…) một cách nhanh chóng và dễ dàng. Nếu spreadsheet của bạn gồm nhiều sheet và mỗi lần chuyển đổi qua lại giữa các sheet bạn gặp đôi ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

Todo App đơn giản với NuxtJS và Vuex

Trong bài viết này mình và các bạn sẽ thực hành tạo một ứng dụng Todo List đơn giản với NuxtJS và Vuex. Về cơ bản ứng dụng của ta sẽ có chức năng như: thêm, sửa, xóa một công việc, thống kê và lọc ra những công việc chưa hoàn thành, đã hoàn thành. Toàn bộ source code mình đã đưa lên git các bạn có ...

Tác giả: Tạ Quốc Bảo viết 09:46 ngày 30/03/2021

BPM Tutorial: Cách tích hợp Database trên nền tảng IBM BPM

Bài viết này hướng dẫn các bạn các thiết lập connection từ Database sẵn có với IBM BPM. Hiện nay IBM BPM hỗ trợ 3 loại DB là IBM Db2, Oracle, và Microsoft SQL Server DB. Trong bài viết này mình sẽ hướng dẫn các bạn cách kết nối với một DB Oracle. Xem bài viết gốc tại https://viblo.asia/p/bpm-tut ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

Sự kết hợp hoàn hảo của Scrapy và Splash - Giải pháp tối ưu với trang web sử dụng Javascript?

Ở bài viết trước về Scrapy , mình đã cùng tìm hiểu cơ bản về Scrapy và làm 1 demo nho nhỏ để crawl dữ liệu từ trang web thegioididong. Có thể các bạn sẽ thấy với Scrapy thì chúng ta muốn crawl trang web nào cũng được, mình cũng đã từng nghĩ vậy và đã thử với các trang web thương mại điện ...

Tác giả: Vũ Văn Thanh viết 09:46 ngày 30/03/2021

Sử dụng Cloud Firestore trên Flutter

Cloud Firestore là một cơ sở dữ liệu linh hoạt, có thể mở rộng để phát triển thiết bị di động, web và máy chủ từ Firebase và Google Cloud. Giống như Cơ sở dữ liệu thời gian thực Firebase, nó giữ cho dữ liệu của bạn đồng bộ hóa trên các ứng dụng máy khách thông qua trình nghe thời gian thực và ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

Xây dựng ứng dụng Đapps đầu tiên của bạn

Tutorial này sẽ giúp bạn xây dựng dapp đầu tiên của bạn – một hệ thống theo dõi chủ nuôi trong một tiệm thú cưng! Được dịch từ tutorial của Truffle. Tutorial này yêu cầu: Nắm được cơ bản về Ethereum Smart Contract (Hợp đồng thông minh). Bạn có thể tìm hiểu sơ qua hai chủ đề tại bài viết ...

Tác giả: Vũ Văn Thanh viết 09:46 ngày 30/03/2021

Tản mạn về Self Attention

Self attention hay intra-attention - cụm từ chắc hẳn đã được đồng đạo trong giới Machine Learning biết đến nhiều qua một bài báo rất nổi tiếng Attention is All You Need đề cập đến mô hình Transfomer đã và đang làm mưa làm gió trong nhiều lĩnh vực từ xử lý ngôn ngữ tự nhiên đến xử lý ảnh ... ...

Tác giả: Trịnh Tiến Mạnh viết 09:46 ngày 30/03/2021

Asset Pipeline là cái chi chi?

Asset pipeline là cái chi chi? Asset pipeline phụ trách công việc chính là: ghép lại (Concatenation) và giảm thiểu (Minification) hoặc nén (Compress) các tập tin Javascript, CSS. Giải thích: Sự ghép lại - Concatenation : Ghép nhiều tập tin thành một tập tin. Giảm thiểu - ...

Tác giả: Trịnh Tiến Mạnh viết 09:46 ngày 30/03/2021

[C#] Hướng dẫn tạo Windows Services đơn giản Winform

Xin chào các bạn, bài viết hôm nay mình sẻ hướng dẫn các bạn các tạo một Windows Services đơn giản trên lập trình C#, Winform. Trong lập trình ứng dụng, nhiều lúc các bạn cần viết một services để giải quyết cho công việc của mình thay vì phải mở app desktop ...

Tác giả: Trịnh Tiến Mạnh viết 09:46 ngày 30/03/2021

Viết API document cực ĐƠN GIẢN!!!

Kỳ này trên trường mình có dạy môn về lập trình ứng dụng Android. Bài tập lớn cho cả kỳ của mình là làm ra 1 ứng dụng với yêu cầu: làm cái gì cũng được, áp dụng càng nhiều công nghệ, càng nhiều kỹ thuật thì điểm càng cao. Với yêu cầu đó mình đã quyết định làm 1 API server cho ứng dụng ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021

ReentrantLock trong java!

Cách làm thông thường để có được đồng bộ thread trong java là sử dụng keyword synchronized , tuy nhiên nó có một vài nhược điểm, ví dụ như các khối đồng bộ (có thể hiểu như nhóm các thread cùng chờ đợi một tài nguyên) không có cơ chế hàng đợi, sau khi một thread thoát khỏi khối, bất kì một thread ...

Tác giả: Hoàng Hải Đăng viết 09:46 ngày 30/03/2021