![](/pictures/picsmalls/2021/03/30/560/tid1617069921.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/gdi1617069131.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/pwk1617068791.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/eou1617068752.png)
Đọ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 = ...
![](/themes/images/default.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/bsn1617068738.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/uwb1617068736.gif)
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ề ...
![](/pictures/picsmalls/2021/03/30/560/grb1617068728.png)
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. ...
![](/pictures/picsmalls/2021/03/30/560/ugt1617068710.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/xmq1617068721.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/wqi1617068720.png)
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ó ...
![](/pictures/picsmalls/2021/03/30/560/pna1617068718.jpg)
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 ...
![](/pictures/picsmalls/2021/03/30/560/mau1617068698.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/enl1617068702.png)
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à ...
![](/pictures/picsmalls/2021/03/30/560/lpb1617068705.png)
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 ...
![](/pictures/picsmalls/2021/03/30/560/xsb1617068674.png)
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 ... ...
![](/pictures/picsmalls/2021/03/30/560/tct1617068672.png)
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 - ...
![](/pictures/picsmalls/2021/03/30/560/tep1617068676.png)
[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 ...
![](/pictures/picsmalls/2021/03/30/560/icl1617068665.png)
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 ...
![](/themes/images/default.png)
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 ...