Tạo Menu Hamburger Morphing với CSS mà không cần sử dụng JavaScript

Trong hướng dẫn này tôi sẽ giải thích toàn bộ quá trình tạo Menu Hamburger Morphing với CSS mà không dùng 1 dòng nào JavaScript. Vì vậy, tôi sẽ sử dụng CSS (và SCSS) để tạo ra nó. Đây là CodePen của những gì chúng ta sẽ xây dựng: Cấu trúc HTML Chúng ta sẽ sử dụng cấu trúc HTML dưới đây : ...

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

Mô phỏng hiện tượng nhật thực toàn phần bằng HTML5 và CSS3

Giới thiệu Xin chào các bạn, ngoài công việc là một frontend developer thì mình cũng là người rất thích tìm hiểu về khoa học, các hiện tượng thiên nhiên kỳ thú, 1 trong số đó là hiện tượng nhật thực. Đây là một hiện tượng thiên nhiên khá đặc biệt mà trong đời mỗi người thường chỉ được quan sát ...

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

Hiểu rõ hơn, tối ưu và sử dụng phím tắt cho Terminal

Đã bao giờ bạn từng rất ngại phải gõ lệnh trên Terminal. Đã bao giờ bạn từng cảm thấy bối rối với các khái niệm Sheel, Bash, Sh, Zsh, Oh-my-zsh,... hay thậm chí là sự khác nhau giữa Linux và Linux Mint. Đã bao giờ bạn nhìn thấy giao diện Terminal trên mạng rất đẹp, màu sắc hài hòa trong khi ...

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

Xu hướng trong testing: CONTINUOUS DELIVERY, PRODUCTION LINE và THE DEPLOYMENT PIPELINE

Theo Michael Hackett, Tập đoàn LogiGear Nếu bạn quan tâm đến xu hướng phát triển phần mềm - từ quan điểm của một số nhóm lớn đang làm, những bài báo và sách đang được viết ra, các chủ đề hội nghị, bạn có thể đã nhận thấy các công cụ đang được phát triển - đã có những chuyển đổi trong thập kỷ ...

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

Skills Matrix

Skills Matrix là gì? Một "Ma trận kỹ năng" (skills matrix) nằm trong quy trình " Quản lý kỹ năng" (skills management). Ma trận kỹ năng là một mạng lưới hoặc một bảng minh họa rõ ràng và minh bạch các kỹ năng, năng lực của các cá nhân trong một nhóm. Mục đích chính của nó là giúp hiểu biết, phát ...

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

Kotlin và Algebraic Data Types

Khi Kotlin phát triển ngày càng rộng trong công chúng thì càng có nhiều developer Java tiếp xúc với những khái niệm "mới" vốn đã có trong các ngôn ngữ khác trong nhiều năm nay. Algebraic Data Types (gọi tắt là ADT) là một trong những khái niệm này. ADT là gì? Nói một cách đơn giản, một ADT là ...

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

8 extensions Visual Studio Code hữu ích cho Front-end

Trong quá trình sử dụng và trải nghiệm Visual Studio Code, tôi đã tìm kiếm một loạt các tiện ích mở rộng VS Code liên quan đến phát triển front-end và liệt kê những tiện ích tôi tìm thấy trực quan, dễ sử dụng và thuận tiện nhất. Đây không phải là danh sách cuối cùng của tất cả. Dành thời gian để ...

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

SPA with Angularjs - Api rails Phần I.

Trong một thế giới mà công nghệ đang vô cùng phát triển, việc sử dụng Single-page Application (SPA) sẽ rất hiệu quả và tiết kiệm về băng thông, cũng như cho trải nghiệm người dùng tốt hơn. (SPA) đó là một trang web hay một ứng dụng web, mà tất cả những thao tác xử lý của trang web đều được diễn ra ...

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

Sử dụng EJS để quản lý View trong Node App

Khi chúng ta tạo một App với Node JS, có nhiều cách để quản lý views nhưng cách dễ dàng và nhanh nhất là EJS. 1. Bắt đầu App của chúng ta sẽ bao gồm 2 phần: Gồm Full awidth và sidebar Cấu trúc của app sẽ như sau: -- views -- -- -- partials -- -- -- -- -- foooter.ejs -- -- -- -- -- ...

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

Search Form co dãn cho mobile

Với xu hướng Responsive Web Design - Quy trình thiết kế và phát triển web đáp ứng mọi thiết bị và mọi môi trường của người dùng theo các tiêu chí kích thước và chiều của màn hình thiết bị Vậy nên khung tìm kiếm là một trong những thứ quan trọng cho website. Để thêm phần thu hút cho tính năng tìm ...

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

Cắt chuỗi đoạn văn bản với CSS

Để giới hạn số kí tự trong một đoạn văn bản, chúng ta thường xử lý bằng các ngôn ngữ lập trình phía Server hoặc dùng Javascript phía Client. Trong bài viết này mình giới thiệu tới các bạn một cách khác, đó là sử dụng thuộc tính text-overflow trong CSS. Cú pháp dùng để cắt chuỗi trên 1 dòng: p ...

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

Sử dụng vuejs và vuex như thế nào là hợp lý trong dự án.

Nếu bạn là một tín đồ của framework Vuejs chắc hẳn bạn sẽ biết đến Vuex. Nhưng đối với những người mới làm quen với Vuejs và cao cấp hơn là Vuex sẽ bị rối trong việc sử dụng 2 cấu trúc này để thực hiện dự án. Vậy Vuejs là gì? VueX là gì? Đầu tiên, mình xin nhắc lại khái niệm của VueJs. VueJs ...

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

Sử dụng kỹ thuật 5 whys để giải quyết vấn đề

Sakichi Toyoda, một trong những cha đẻ của cuộc cách mạng công nghiệp Nhật Bản, đã phát triển phương pháp này trong những năm 1930. Ông là chủ nhà máy, nhà phát minh và sáng lập nên Toyota Industries. Phương pháp của ông đã trở nên phổ biến trong suốt những năm 1970 và ngày nay Toyota vẫn tiếp ...

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

Top 64 câu hỏi phỏng vấn và trả lời bạn cần biết trước khi đi phỏng vấn

Cuối cùng bạn cũng được gọi đi phỏng vấn sau một khoảng thời gian "rải" CV ở nhiều nơi. Chúc mừng bạn! Tuy nhiên, đó chỉ là một nửa chặng đường. Nửa chặng đường gian nan còn lại là làm sao để vượt qua buổi phỏng vấn "khó nhằn" sắp tới. Để vượt qua được buổi phỏng vấn, không còn cách nào khác là ...

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

Serri Perfect: sử dụng phương thức GET-POST P1: Cơ bản

Giới thiệu Perfect là framwork phát triển server với ngôn ngữ Swift,bài này mình sẽ hướng dẫn các bạn làm việc cơ bản nhất với Perfect Bài toán bài đầu tiên mình sẽ làm hết sức đơn giản thôi, bây giờ mình muốn viết 1 server,khi gửi 1 request thì server trả về cho mình 1 data nào đó,mình sẽ làm ...

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

What is API testing (Phần I)

Khi tôi bắt tay vào làm cho một dự án, ở đây cơ sở dữ liệu chỉ được view mà không được phép tạo, xóa...dữ liệu muốn có được phải thông qua app, app lại chưa hoàn thiện cả về Implement và testing. Developper cho tôi ý kiến là: “Chị hãy dùng api để test”, tôi lơ ngơ như gà mắc tóc, ban ...

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

[Tooling ] Giới thiệu ngrok - Mang demo dự án web lên internet không cần deploy

1. Ngrok là gì? Ngrok là công cụ tạo đường hầm (tunnel) giữa localhost của bạn và internet. Giúp người khác mạng có thể truy cập được localhost của bạn thông qua custom domain của ngrok Ví dụ: mydomain.ngrok.io => localhost:80 2. Các ứng dụng chính của ngrok Giúp bạn chạy demo dự án cho ...

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

Regular expression - the easy way

Regular expression (viết tắt là Regex) là một chuỗi ký tự đặc biệt được dùng làm mẫu (pattern) để phân tích, tìm kiếm sự trùng hợp nào đó trong một chuỗi nào đó. Chúng ta thường sử dụng regex để validate dữ liệu đầu vào như email, số điện thoại,... hay mới đây là dùng để filter file đầu vào để ...

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

Quy trình và kế hoạch kiểm thử phần mềm

Có lẽ chủ đề này đã khá phổ biến với tất cả mọi người trong lĩnh vực kiểm thử phần mềm. Nhưng để hiểu rõ chi tiết cụ thể từng giai đoạn thì có khi không phải ai cũng biết hết và trình bày hết ra được. Nên mình quyết định viết bài chia sẻ này mong phần nào giúp được cho mọi người tham khảo. 1.1 ...

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

Cách tối ưu trang web của bạn với nén Gzip

Bài viết được dịch từ bài How To Optimize Your Site With GZIP Compression của trang web Better Explained. Nén là một phương pháp đơn giản, hiệu quả để tiết kiệm băng thông và tăng tốc trang web của bạn. Tôi đã ngần ngại khi gợi ý sử dụng nén gzip khi tăng tốc tải file javascript của bạn vì một ...

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