Xử lý stream với RxJS

Như bạn đã biết, RxJS chuyên dùng cho việc xử lý các data stream như các event người dùng click chuột, di chuột, hay xử lý các event có tính lặp lại theo thời gian, rồi các xử lý gọi API. Một số RxJS operator chúng ta hay dùng có thể kể đến như: map […]

Top 5 Angular Interview Questions

Advantages/disadvantages of Angular Change Detection in Angular Dependency Injection in Angular RxJS library App Performance Optimization Advantages/disadvantages of Angular Advantages: TypeScript, Powerful CLI, Dependency Injection, All-in solution Disadvantages: Complexity, Bundle Size, smaller Community Change Detection When to re-render view when data changes Traversal dom tree to detect change => expensive Use OnPush to optimize: only […]

State management

Stage management là gì? State management chỉ việc quản lý trạng thái của một hay nhiều User Interface control (ví dụ như text field, button,…). Thông thường trong các ứng dụng thì trạng thái của một UI control phụ thuộc vào các UI control khác, chẳng hạn một button chỉ được enabled khi các input […]

Angular Resolver

Q: Angular Resolver là gì? A: Angular Resolver cho phép tải trước data cho một route trước khi chuyển đến route đó. Nó thực chất là 1 đoạn code xen giữa việc user click vào url và việc load component tương ứng. Q: Tại sao dùng Angular Resolver? A: Để tăng trải nghiệm người dùng […]

Ansible là gì?

Bài toán đặt ra Tôi có một ứng dụng muốn cài đặt lên nhiều con server khác nhau, tôi có thể thực hiện việc này một cách thủ công, đó là SSH tới từng con server và chạy các command line khác nhau, nhưng việc này tốn khá nhiều thời gian và công sức. Liệu […]

Tôi đã học được những gì sau 1 năm làm DEVOPS?

Background Trước khi bị sếp “dí” làm vị trí Devops, tôi có nhiều năm làm coder, code tùm lum từ backend đến frontend (có khi đá qua 1 ít về mobile), nên có thể nói tôi có kha khá kinh nghiệm software development, nhưng với Devops thì tôi là một con “gà mờ”. Tuy vậy […]

Kafka và những câu hỏi

Tôi có nghe nói về Kafka nhưng không rõ nó thực sự là gì… Kafka là một nền tảng truyền thông điệp (message streaming platform), trong đó có rất nhiều message (hàng trăm ngàn chẳng hạn) được gửi từ producer và sau đó consumer sẽ lấy các message đó một cách liên tục. Ở đây […]

Các linux commands bỏ túi :)

Thao tác với file Lệnh  Mô tả  Ví dụ ls hiện danh sách file ls -la touch, vi tạo mới file touch myfile.txt cat, vi xem nội dung file cat myfile.txt cp copy file, folder cp myfile.txt /your/folder/yourfile.txt mv di chuyển, đổi tên file, folder mv myfile.txt myfolder/mytextfile.txt rm xóa file rm -rf myfolder Tìm kiếm Lệnh […]

Tích hợp Prometheus Alertmanager với ServiceNow

Tổng quan Alertmanager là một công cụ để tự động gửi Alerts thông qua các dịch vụ khác nhau như email, slack, ms teams hay webhook. Alert manager được tích hợp trong Prometheus để giúp gửi alerts từ Prometheus. ServiceNow là một công cụ dành cho IT support, tự động tạo ra các ticket (incident) […]

Ngắn gọn về Nginx

Nginx là một loại webserver, các webserver hàng đầu hiện nay như sau Server Nhà sản xuất Thị phần Apache Apache 34.5% nginx NGINX, Inc. 33.7% Cloudflare Server Cloudflare, Inc. 17.6% LiteSpeed Web Server LiteSpeed Technologies 8.0% IIS Microsoft 7.2% GWS Google 1.2% Node.js OpenJS Foundation 1.1% Về thị phần, nginx đứng top 2 và […]

Cấu hình SASL/SCRAM cho Amazon MSK

Tổng quan Amazon MSK (Managed Streaming for Apache Kafka) là một dịch vụ SaaS chạy Kafka do Amazon quản lý. Nó chạy phiên bản mã nguồn mở của Kafka do vậy tương thích hoàn toàn với các ứng dụng và plugin mà Apache Kafka community đang hỗ trợ. Một sơ đồ kiến trúc của Kafka […]

Dùng Keycloak để login như thế nào?

First things first Câu hỏi đầu tiên là tại sao dùng Keycloak? Tôi đã hoàn thành việc cài đặt Weblate. Các thành viên trong team có thể vào weblate qua các account tôi tạo hoặc invite họ qua email. Tất nhiên điều này không có vấn đề gì khi số lượng user không lớn, tôi […]

Deploy app in Kubernetes cluster

Setup kubernetes cluster (Ubuntu 18.04.5 LTS) install docker-ce install kubeadm, kubelet, kubectl on master node on worker nodes: join the cluster with generated code Check if the cluster works config networking with Flannel on master node POD– pod is basic building block of Kubernetes model– each pod includes multiple containers which make up an application […]

Sass vs Less vs Scss

LESS và SASS là các ngôn ngữ tiền xử lý CSS ngôn ngữ tiền xử lý CSS là một ngôn ngữ kịch bản mở rộng của CSS và sau đó được biên dịch ra CSS keycdn.com Sass và Less không thay đổi chức năng vốn có của CSS, vì chúng cuối cùng cũng sẽ được […]

HTML Có thể bạn chưa biết

  HTML được tạo ra bởi Tim Berners-Lee năm 1991. HTML là chữ viết tắt của Hypertext Markup Language (Dịch nôm na là Ngôn ngữ đánh dấu siêu văn bản) Gọi là siêu văn bản vì nó chứa các đường dẫn đến các trang web khác, hoặc hiển thị thêm 1 popup khi click vào […]

7 HTML tag bạn nên dùng thay cho DIV

Mỗi khi tạo một thành phần của trang web, chúng ta thường nghĩ đến việc dùng thẻ div để bao cái phần html đó. Tuy vâỵ thẻ div bản chất của nó không có ý nghĩa cụ thể  Theo phát biểu của W3C: “The div element has no special meaning at all…Authors are strongly encouraged to view the div element […]

RxJS

RxJS là một thư viện dùng cho việc phát triển web được dùng rất rộng rãi hiện nay. Thư viện này chuyên trị các vấn đề liên quan đến sự kiện (events), hơn nữa còn bao gồm các framework, thư viện và tiện ích phong phú nên trở nên rất hấp dẫn với cộng đồng […]

Tản mạn về Angular

Trong thế giới Frontend dùng ngôn ngữ JavaScript, có rất rất nhiều Framework khác nhau, và hàng ngày các Framework mới lại tiếp tục được sinh ra. Lý do đằng sau việc có quá nhiều Framework như vậy là gì thì tôi không biết chắc, nhưng tôi đồ rằng nhiều người cảm thấy không thỏa […]

Tản mạn về Cloud

Khi lần đầu nghe tới khái niệm Cloud, tôi hoàn toàn không có ý niệm gì về công nghệ này, mặt mũi nó ra làm sao, nó hoạt động như thế nào. Giống như có một lớp mây mờ che phủ lấy tâm trí tôi vậy. Cloud lúc đó như một thiếu nữ kiêu sa […]

Tại sao bạn nên dùng linter?

Hôm nay Đam mê code sẽ bàn về một công cụ rất tuyệt vời đối với coder nói riêng và việc phát triển phần mềm nói chung. Công cụ này làm tăng đáng kể năng suất code và giúp cuộc sống của anh em đam mê code trở nên dễ chịu hơn nhiều.

React là cái chi chi?

Hỡi thế gian tình là chi… React là gì… Mà bao dev nguyện thề sống chết? Nàng React, hay tên đầy đủ là React.JS hiện đã quá đỗi quen thuộc với những anh em Đam mê sếch, ah quên – Đam mê code, cho dù là mới nghe như gió thoảng qua hay đã thông thạo […]

CORS

Có bao giờ bạn gặp lỗi này chưa??? Nếu bạn lập trình web, rất có thể là bạn đã gặp trường hợp này rồi. Ở đây có thể thấy là resource mà chúng ta cần truy cập đã bị block bởi CORS policy, và nó phàn nàn rằng: No ‘Access-Control-Allow-Origin’ header is present on the […]

SOLID

SOLID là một nguyên lý thiết kế phần mềm được đưa ra bởi Robert C. Martin (hay còn được gọi là Uncle Bob) – một chuyên gia phần mềm người Mỹ, tác giả của cuốn sách gối đầu giường nổi tiếng Clean Code được hàng nghìn coder yêu mến.

Vue.js

Vue là gì Vue hay Vue.js (phát âm giống từ view) là một web framework. Vue được phát triển bởi Evan You, một lập trình viên người Trung Quốc từng làm việc tại Mỹ cho các công ty lớn như Google, Meteor. Anh đã làm việc với AngularJS và nảy ra ý tưởng xây dựng […]

Web components

Web components là một khái niệm tương đối mới, nó chỉ mới được giới thiệu bởi Alex Russel vào năm 2011 trong một hội thảo về front-end. Google đã tích cực phát triển công nghệ này với dự án mã nguồn mở Polymer, và hứa hẹn mang lại một đột phá trong việc phát triển […]

SDK là gì

Các nhà phát triển phần mềm lớn như Microsoft, Google không chỉ tạo ra vô số các sản phẩm hữu ích mà còn đóng vai trò là nhà cung cấp nền tảng phát triển cho các lập trình viên. Chẳng hạn Google maps là

Design Patterns 101

Nếu bạn đang là một lập trình viên hay đã từng học ngành phần mềm, thì hẳn nhiênlà bạn đã từng nghe qua thuật ngữ gọi là Software Design Patterns. Đây là một khái niệm không hề mới, tuy nhiên trong thực tế có rất ít developer có thể nắm được một cách chi tiết […]

Frontend cơ bản – DOM

DOM là gì? DOM = Document Object Model (Mô hình đối tượng Document) Trong đó Document là HTML hay XML document. Có thể hiểu DOM là một giao diện lập trình cho các file HTML hay XML, khi chúng ta muốn tương tác tới một trang web (bằng code JavaScript chẳng hạn) thì bắt buộc […]

CI/CD

Phần mềm đang là lĩnh vực “hot” nhất hiện nay, nó hiện diện khắp nơi trong cuộc sống và phát triển với tốc độ chóng mặt. Sự phát triển không ngừng của phần mềm đã