
Check tiêu chuẩn code CSS với Stylelint
Công việc của 1 Frontend thì chắc hẳn bạn cũng biết tôi sẽ viết rất nhiều code CSS. Nhưng nếu viết code CSS không theo một tiêu chuẩn nhất định thì sẽ phạm phải rất nhiều mistake . Vậy như thế nào được gọi là mistake ? Tôi viết .classname {color: red;}. Member khác viết .classname { color: ...

Custom Toast Notification (Tạo toast giống giao diện của push notification)
Xây dựng abstract base adpater The walking step - Đếm bước chân di chuyển Trong bài viết này mình sẽ hướng dẫn các bạn thay đổi giao diện Toast nhàm chán như mặc định thành giao diện giống push notification. Cấu trúc của project : Do mình dùng databinding nên chúng ta sẽ add thêm ...

hướng dẫn sử dụng css flexbox cho người mới tìm hiểu
Giới thiệu: Flexbox là một kiểu dàn trang (layout mode) mà nó sẽ tự cân đối kích thước của các phần tử bên trong để hiển thị trên mọi thiết bị. Nói theo cách khác, bạn không cần thiết lập kích thước của phần tử, không cần cho nó float, chỉ cần thiết lập nó hiển thị chiều ngang hay chiều dọc, lúc ...

Kiểm soát phạm vi dự án
Ngày nay, một BA cần phải có kiến thức về quản lý dự án. Người BA cũng cần phân biệt rõ 3 khái niệm là Phạm vi dự án, phạm vi sản phẩm và phạm vi giải pháp. Theo đó, phạm vi dự án (scope) là một danh sách tất cả những gì dự án phải làm. Dự án phải có một tài liệu phạm vi được viết rõ ràng, nếu ...

Tương tác Mobile elements trong Appium
Định vị một Element trong ứng dụng Một phần quan trọng khi viết script là bạn cần phải định vị được các đối tượng test (elements), đó có thể là textbox, button, view,... và đương nhiên có rất nhiều cách khác nhau mà bạn có thể sử dụng để tìm các elements, ở đây mình muốn giới thiệu một số ...

USB Accessory
Chế độ USB Accessory cho phép người dùng kết nối phần cứng máy chủ lưu trữ USB được thiết kế đặc biệt cho các thiết bị chạy Android. Các accessory phải tuân theo giao thức phụ kiện Android được nêu trong tài liệu Bộ công cụ bộ phát triển phụ kiện Android . Điều này cho phép các thiết bị chạy ...

OpenWebRX + SDR – Giải pháp chia sẻ dữ liệu vô tuyến
OpenWebRX là phần mềm phát triển trên ngôn ngữ Python cho phép người dùng kết nối thiết bị SDR và phát trực tuyến thông qua mạng internet. Một số lượng người dùng cố định (được định nghĩa trong tập tin cấu hình) có thể truy cập và điều chỉnh các tần số hoàn toàn trên giao diện web. Đối với người ...

Playback test case trên trình duyệt Chrome
Selenium IDE là 1 công cụ thuộc bộ kiểm thử phần mềm tự động Selenium. Selenium những ngày đầu được xây dựng và chỉ được sử dụng trên trình duyệt Firefox. Selenium IDE là 1 add-on của trình duyệt Firefox. Cả hai tính năng record và playback test cases của Selenium IDE trước đây chỉ được sử dụng ...

Tìm hiểu về HTML5 Application Cache
Nhắc đến web là nhắc đến việc tương tác trực tuyến. Vậy có bao giờ bạn thắc mắc, sao cứ phải là online? Liệu tương tác web offline thì sao? Đôi khi chúng ta muốn đọc một cuốn sách, một vài tài liệu, hay đọc báo mạng. Nhưng những khi không có mạng thì sao? Chắc có lẽ đa phần đều nghĩ đến việc tải ...

Tìm hiểu về xử lý chuỗi bằng Regex (phần II)
Trong phần tìm hiểu về Regular Expression hôm nay thì mình xin giới thiệu tiếp những quy tắc căn bản trong Regular Expression. Các bạn có thể quay về phần I để tham khảo thêm một số quy tắc mà mình đã đề cập đến ở bài trước: https://viblo.asia/p/tim-hieu-ve-xu-ly-chuoi-bang-regex-phan-i-gDVK2aLA5 ...

React Router version 4 basic example
Trong thời gian mình tìm hiểu React - Redux thì thấy React Router cũng khá hay nên quyết định viết một ví dụ nho nhỏ áp dụng React-Redux và React Router v4. Các bạn lưu ý là React Router version 4 có cách viết khá khác với React Router version 3 nhé, chi tiết có thể xem tại Guides này: ...

Spring 5: Function Web Framework
Hôm nay mình sẽ giới thiệu về một trong những điểm mới của Spring 5. Đó chính là HandlerFunction, RouterFunction, and FilterFunction. Bình thường khi làm việc với Spring của các phiên bản trước, nếu muốn handle các request thì ta dùng các annotation quen thuộc của Spring là @Controller, ...

Machine Learning Algorithms From Scratch With Ruby: Linear Regression
The best way for programmer to understand the machine learning algorithms is implement them from scratch. So, in this post I am going write an algorithm using my favorite language Ruby and Python and I'll write Linear Regression algorthm. Why is Linear Regression? Linear regression is a very ...

Cách tạo WordPress Mega Menu - Phần 4 (Code Settings Field Mega Menu Admin Display)
Tiếp tục với series bài viết hướng dẫn tạo WordPress Mega Menu phần trước. Hôm nay chúng ta sẽ tiếp tục với phần 4 là code hiển thị setting fields cho WordPress Mega Menu sau khi đã tìm hiểu về các field (settings) cần thiết. Project URL: https://github.com/MiloTheme/WordPressMegaMenu Do sẽ hướng ...

Android O – Những Cái Mới Mà Lập Trình Viên Cần Biết
Chào các bạn. Cuối cùng thì tại thời điểm bài viết này đây, Android O (hay có mã là Android 8.0 , có API level là 26 , còn tên thì chưa biết được) cũng đã bước đến các giai đoạn Developer Review 3 , chắc sẽ không lâu nữa đâu, bản cập nhật đáng mong đợi nhất của hệ điều hành này kể từ khi ...

Components Interaction in Angular (Part 1)
Since Angular 2.x+ was first introduced, we have become familiar with the architectural principle, in which an application should always be composed of well-encapsulated and loosely-coupled components. In Angular, "everything is components" and the acts of comparing as well as contrasting the way ...

Kiểm soát stress bằng suy nghĩ lạc quan với truyện ngắn
Trong cuộc sống và công việc hàng ngày, chúng ta phải đối mặt với vô số khó khăn, thách thức. Hầu hết mọi người đều cảm thấy mệt mỏi vì khối lượng công việc quá lớn và bị áp lực cuộc sống chi phối khiến cho nhiều người rơi vào trạng thái căng thẳng, đôi khi bế tắc và thậm chí nảy sinh những suy ...

15 câu hỏi và câu trả lời thường gặp khi phỏng vấn về automation test
Q1: Kiểm thử tự động là cái gì? Kiểm thử tự động là một kỹ thuật sử dụng một công cụ tự động hóa để ghi và thực hiện các kịch bản thử nghiệm và các trường hợp mà các kiểm thử viên viết ra. Mục đích chính của kiểm thử tự động là để giảm số lượng các trường hợp kiểm thử được chạy bằng tay và ...

Tối ưu phân trang
Mong muốn Bạn có một trang web với danh sách rất nhiều các bài viết, hoặc blog, hoặc một số đối tượng khác và nó quá dài để hiển thị trên một trang duy nhất. Vì vậy, bạn quyết định chia nó thành nhiều phần, ví dụ 10 mục trên mỗi trang và hiển thị một nút nút Next để đi tới trang tiếp theo. Dựa ...

What Test Engineers do at Google
Trong những ngày đầu của Google, một số ít các kỹ sư phần mềm đã xây dựng, kiểm thử và phát hành sản phẩm phần mềm. Nhưng khi số lượng người dùng và sản phẩm tăng lên, kiểm thử thủ công dần chuyển sang quy trình tự động thì các kỹ sư đã bắt đầu thực hiện nhiệm vụ chuyên biệt và phát triển thành ...