/images/avatar.png

Chuyên chém gió

Git rebase -i

Git rebase Khuyến mãi link học git game Link Git rebase để làm với mục đích làm cho toàn bộ commit của source code theo thứ tự. Git rebase cần phải làm với nguyên tắc là Trước khi tách nhánh thì phải dùng lệnh checkout master và pull toàn bộ master mới nhất thường với lệnh git checkout master && git pull Sau đó thì từ source code mới nhất của master sẽ làm lệnh tạo nhánh và checkout nhánh mới luôn git checkout -b <new_branch>

Hành trình tới bàn phím layout 40% phần trăm

Giới thiệu về bàn phím cơ 40% Bàn phím cơ 40% có nghĩa là bàn phím có layout các phím với số lượng nằm trong khoảng từ 40 - 49 phím so với bàn phím full-size. Bình thường bàn phím full-size sẽ có khoảng 108 phím còn bàn phím layout 40 được giản lược bỏ đi rất nhiều phím từ bàn phím full-size cụ thể như Bỏ đi hàng phím chức năng (F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12) Bỏ đi hàng phím số và ký tự kèm theo khi gõ với phím Shift bao gồm Hàng phím số 1234567890 Hàng phím ký tự khi nhấn giữ phím Shift + phím số bao gồm !

NVM quản lý phiên bản Node version

Vấn đề - Khi bạn làm nhiều project react thì có một vấn đề chắc hẳn là bạn sẽ phải gặp đó là việc bạn phải làm việc với nhiều phiên bản Nodejs khác nhau trong từng dự án khác nhau. Điều này là vô cùng phổ biến và khi đó thì việc chuyển qua lại giữa các project thì đòi hỏi Nodejs cũng phải được chuyển lại đúng phiên bản của project đang sử dụng.

Nên gõ TELEX hay VNI?

Vấn đề Hiện tại thì gõ tiếng việt sẽ có hai cách phổ biến là gõ bằng telex và vni và khi bạn mới học gõ tiếng việt thì có thể bạn sẽ thử cả hai cách. Nhưng sau một thời gian thì bạn sẽ phải chọn một trong hai cách để gõ. Vậy bạn chọn kiểu gõ nào? Vì sao? So găng giữa telex và vni Điểm mạnh của VNI

Tại sao Developer nên đầu tư mua bàn phím cơ merchanical keyboard

Vấn đề Có nhiều người sẽ thắc mắc là vì sao phải xài bàn phím cơ? Nó thật là bất tiện vì thời giờ khi xài laptop thì cái nào cũng trang bị bàn phím ngon lành rùi mà? Cần thêm bàn phím ngoài làm gì cho nó bất tiện mang đi mang lại cơ chứ? Mình cũng nghĩ vậy cho đến một ngày đẹp trời gõ thử bàn phím cơ của bạn và đã quyết định mua 1 cái cho mình lý do vì gõ phím cơ nó sướng vãi luôn và nó làm tăng cảm giác gõ lên rất nhiều.

Live Server dùng tạo server tại máy local của dev để xem file html và những thay đổi khi chỉnh sửa trực tiếp nó

Vấn đề Khi đang dev muốn xem file html thì có thể mở trực tiếp bằng browser để xem. Nhưng vấn đề xảy ra đó là khi save file html lại thì browser không có tự động reload lại những thông tin đã lưu lại mà dev phải reload server bằng tay. Cách giải quyết Dùng một thư viện chạy trên Nodejs và được quản lý bởi npm đó là live-server và thư viện này sẽ giúp tạo server trên máy local để host file html hoặc host nguyên cả folder với nhiều folder và file html bên trong và tất cả đều có tính năng tự động cập nhật trang web theo thời gian thực khi mà nội dung của file html bị thay đổi.

Deploy và host dự án ReactJS ra thế giới Internet với Nodejs,Serve, Pm2, Nginx trên một VPS (Máy ảo)

Đưa dự án Reactjs ra thế giới Internet Khi bạn đang code reactjs hoặc đã code xong rồi và muốn trình bày thành quả của mình cho mọi người xem hoặc ai đó xem để review đánh giá thì có nghĩa là đã tới lúc bạn cần phải có một nơi để đưa dự án reactjs lên đó rồi. Khi bạn code ở máy của bạn thì dự án đang ở chế độ development và khi đưa lên mạng trong môi trường review kiểm thử thì nó có thể là testing hoặc staging.

Hệ điều hành linux

Sơ lược về các hệ điều hành phổ biến | Ngày nay thì hệ điều hành window đang là những hệ điều hành phổ biến nhất trong thế giới máy tính computer. Lý do nó phổ biến thì có nhiều nguyên nhân và nguyên nhân chính theo ý kiến chủ quan của mình là do Microsoft đã làm quá tốt việc đánh chiếm thị trường phần mềm hệ điều hành cho máy tính cá nhân ngay từ thời điểm mà ngành này còn sơ khai.

Trang trí terminal với starship

Vấn đề của terminal mặc định của máy Với terminal mặc định của máy thì dòng powerline dòng chữ hiển thị vị trí của con trỏ bị hạn chế thông tin và không có màu sắc hay ký tự gì dễ nhìn cho lắm. Bạn có thể cài đặt terminal khác là zsh và cài theme oh-my-zsh để có thể trang trí cho terminal thêm thông tin và màu sắc nhưng bạn lại phải cài đặt mọi thứ ở terminal mặc định sang file .

Combo chất như nước cất dành cho các thánh vim với AZTN (Ây-Zét-Ti-En) Alacritty, Zsh, Tmux, Neovim(nvim)

Vấn đề code trong Vim Sau một thời gian tầm sư học đạo về vim và cách dùng thì mình muốn chia sẻ với anh em coder về công cụ và cách kết hợp để giúp cho quá trình code trên terminal bằng vim của mình ngày càng cải thiện hơn. Có một câu hỏi mà nhiều bạn sẽ tự hỏi là. Vì sao phải dùng vim và code bằng terminal trong khi mình đã có nhiều IDE tuyệt vời ví dụ như là vscode, sublime text…

Dùng Alias trong terminal, giúp cuộc đời dễ dàng hơn

Bạn đã từng bao giờ phải gõ lặp đi lặp lại rất nhiều trong terminal chỉ để thực hiện một việc gì đó ví dụ như lệnh git status, git add ., yarn start hay là ssh [email protected]… Và khi đó thì để tăng năng suất làm việc thì bạn nên sử dụng alias trong terminal để giúp cho mỗi lần thay vì phải gõ một lệnh dài thì bạn chỉ cần gõ lệnh alias đã thiết lập trước là ok rùi.

Tăng trải nghiệm web app có làm giảm truy cập vào ứng dụng app trên di động?

Xây dựng ứng dụng app là một điều bắt buộc phải làm với những công ty theo mô hình thương mại điện tử, giao hàng… Có một thực tế là ngày càng nhiều công ty đang tìm cách khuyến khích, tạo thói quen cho người dùng tăng sử dụng dịch vụ của họ trên nền tảng ứng dụng app mobile hơn là trên website của họ.

Tổng quan về web và internet

Giới thiệu Internet là một thành phần không thể thiếu trong mạng lưới thông tin hiện đại ngày nay. Hệ thống thông tin internet cho phép người dùng tiếp cận, xử lý, truyền tải, tìm kiếm… thông tin một cách dễ dàng hơn, bao quát hơn. Các nguồn thông tin trên Internet được tổ chức dưới dạng các trang web được liên kết chặt chẽ với nhau với mỗi trang web là một siêu văn bản.

Tổng hợp lệnh Git cơ bản hay dùng - Git cheat sheet

Đây là bài tổng hợp các lệnh cơ bản trong Git để khi mà quên thì tham khảo cho nhanh.Với một vài khái niệm cơ bản Một vài thông tin Stagging/index là khu vực đánh dấu trạng thái của tập tin, thư mục chuẩn bị cho quá trình commit Working directory là thư mục lớn nhất của dự án chứa toàn bộ mã nguồn và thư mục ẩn .

Git cơ bản

Giới thiệu Khi lập trình việc bạn xóa một đoạn code nào đó và viết lại theo theo yêu cầu mới là chuyện thường hay xảy ra. Nhưng nếu sau đó bạn lại nhận được yêu cầu là không thay đổi nữa và phục hồi lại như ban đầu thì phải làm sao đây vì đoạn code mà bạn viết đã bị xóa rồi. Làm sao để có thể phục hồi lại như ban đầu đây?

SEO là seo (sao)?

SEO là gì?

Theo như mô tả chính chủ của Google thì là “Search Engine Optimization” dịch ra là “Tối ưu hóa công cụ tìm kiếm” mà ở đây chủ yếu ưu tiên tối ưu cho bộ máy tìm kiếm tỷ đô của Google. Cụ thể chủ website thực hiện những sửa đổi website, liên kết website với mục đích sao cho khi người dùng tìm kiếm từ khóa có liên quan tới nội dung của trang web thì trang web đó được hiện lên top (trên đầu) của kết quả tìm kiếm. Muốn web giữ top tìm kiếm càng lâu thì càng phải tối ưu hóa mọi mặt trên website trong đó quan trọng nhất vẫn là nội dung trang web rồi tiếp đến là trải nghiệm người dùng khi lướt vào trang web đó…

Mẹo
 Bạn có thể Bookmark lại trang này để có gì tham khảo sau nhé

Là một Frontend Web Dì ve lốp pơ (Developer) thì sao phải cần biết SEO nhỉ? Khổ cực cày code ra website chạy ổn áp là ok rồi có cần phải tranh việc quảng bá website của phòng marketing không nhỉ?

Thực ra thì cho dù trong đầu ta nghĩ vậy nhưng vẫn phải suy xét là dù sao thì tạo ra website cũng là bao công sức của ta, giống như cha mẹ đẻ ra đứa con cũng muốn nó được nổi tiếng chứ nhỉ mà lúc nó còn mới ra đời chưa có đủ tiền chạy ad (quảng cáo) nên làm sao mà có thể hiện ra trên kết quả tìm kiếm nếu ta không tối ưu nó. Mà đời thì đâu đơn giản, mấy bạn marketing thì giỏi tiêu tiền vào kế hoạch quảng bá thôi còn mình thì phải cố gắng tiết kiệm tiền ngồi xem xét rồi tối ưu hoá kết quả tìm kiếm vậy.

Theo như kinh nghiệm truyền mạng của các SEOer thì có SEO on-page tập trung vào nội dung website, cấu trúc các trang… để hấp dẫn người đọc hay là SEO off-page nghĩa là tạo nhiều back link liên kết trỏ về website và link càng nhiều, link từ website càng uy tín thì khả năng lên top càng cao. Ngoài ra cũng phải tránh những lần thanh lọc của google khi họ thay đổi thuật toán tìm kiếm mà thẳng tay loại bỏ ta ra khỏi kết quả tìm kiếm.

Vậy là ta cũng có chút hình dung mơ hồ về SEO rồi và bây giờ là phải làm sao để tối ưu hóa đây? Thôi chọn tối ưu hóa on-page trước vì dù sao thì nó cũng gần gũi với fontend hơn và cũng nằm trong tầm kiểm soát.

/seo-la-seo/seo-on-and-off-page.png
SEO on-page và off-page

SEO on-page

Đầu tiên

thì mình phải tối ưu mã nguồn của website và tăng tốc tải trang bằng nhiều cách

  • Ví dụ như tối ưu HTML trên semantic HTML5 Tags (thẻ ngữ nghĩa) tuân thủ theo một số nguyên tắc như chia ra các thẻ như header, nav, section, aside, footer, article, main, figure, figcaption, summary, time, details, mark. Thẻ heading H1 thì chỉ nên xuất hiện đúng một lần trên trang, các thẻ nên làm đúng nhiệm vụ của nó.

  • Còn CSS và Javascript (JS) thì nên kiểm tra và xóa những đoạn code dư thừa, minify JS, CSS (xóa khoảng trống, dồn dòng để giảm dung lượng file) cũng như xóa sourcemap.

  • Tối ưu tốc độ máy chủ bằng công nghệ Caching, nâng cấp máy chủ lên gói mạnh hơn

  • Giảm dung lượng các file trong mã nguồn, tối ưu hình ảnh sao cho cân bằng giữa độ sắc nét của ảnh và kích thước ảnh không quá lớn

Tiếp theo

là công nghệ sử dụng để xây dựng website thì ưu tiên công nghệ tạo ra website tĩnh như Hugo Static Generator hay Server Side Rending (SSR) vì dù sao thì Search Engine vẫn chưa tối ưu tốt cho website với công nghệ Client Side Rending (CSR) còn nếu đã trót yêu CSR như React, Angular, Vue rồi thì có thể dùng Dynamic Rendering hiểu nôm na thì nó là cách trả về HTML tùy thuộc vào đối tượng yêu cầu. Cụ thể như nếu đối tượng là trình duyệt (Browser) thì máy chủ trả về một trang Single Page Application còn nếu đối tượng là bot của bộ máy tìm kiếm như Google, Bing, Yandex, Duckduckgo thì máy chủ sẽ trả về trang HTML đầy đủ để phục vụ cho thu thập dữ liệu của các bot. Hoặc cũng có thể chọn Universal SSR như Next Js, Gasby.

Thứ ba

là phải xem xét và giải quyết bài toán hiển thị thân thiện trên màn hình điện thoại hay nói đơn giản là responsive (phản ứng) hiển thị trang web tùy vào tỷ lệ kích thước màn hình mà người dùng đang sử dụng truy cập. Lý do là vì thời đại công nghệ 4.0 rồi và nhà nhà, người người đều dùng điện thoại thông minh (smart phone) để không chỉ liên lạc mà còn đọc tin tức, giải trí… do đó nên nếu giao diện web mà không hiển thị thân thiện trên điện thoại thì cũng ảnh hưởng tới thứ hạng trên kết quả tìm kiếm của bộ máy tìm kiếm. Và hiển nhiên thì những website thân thiện với điện thoại cũng được bộ máy tìm kiếm đánh giá cao và ưu tiên hiển thị

Thứ tư

là cần phải thêm các thẻ meta tag đúng với nội dung mà trang web hiển thị ít nhất cũng phải có thẻ meta title, description. Ngoài ra thì còn phải thêm thẻ meta tag phục vụ cho chia sẻ trên mạng xã hội như facebook, twitter việc này sẽ giúp đường dẫn chúng ta chia sẻ trên mạng xã hội sẽ hiển thị đầy đủ hình ảnh, tiêu đề, mô tả trông sẽ đẹp và chuyên nghiệp, khơi gợi sự tò mò của người nhận bấm vào đường dẫn được chia sẻ.

Thứ năm

là chức năng chuyển tab, ẩn hiện tab nên dùng display:none bằng CSS chứ không nên dùng code javascript để xóa luôn khỏi giao diện bởi vì khi xóa đi rồi thì search engine không có đọc được nội dung đó và do đó sẽ index chỉ mục bị thiếu sót.

Thứ sáu

tạo sitemap, file robot.txt cho website.

Thứ bảy

sửa lỗi các link trả về kết quả 404 - Không tìm thấy trang vì các link lỗi này làm ảnh hưởng tới uy tín của website và trải nghiệm không tốt đối với người dùng vì họ vào link đó không có gì thì cũng sẽ thoát ra ngay

Thứ tám

là nâng cấp lên từ chuẩn HTTP qua HTTPS với chứng chỉ SSL vừa tốt cho bảo mật với khóa đóng trên thanh địa chỉ trình duyệt, vừa tốt cho SEO và không bị trình duyệt cảnh báo là trang web không an toàn

Thứ chín

là chủ động đăng ký website vào Webmaster Tool để chủ động yêu cầu bộ máy tìm kiếm index website mỗi khi có nội dung mới hay thay đổi nội dung trên những trang cũ. Để dùng Webmaster Tool đối với bộ máy tìm kiếm Google thì bạn có thể dùng Google Search Console

SEO off-page

Như ông bà ta có câu buôn có bạn, bán có “Mai Quế Phường”, ý nhầm bán có phường thì chúng ta cũng phải đi giao lưu kết bạn với những trang web khác có cùng chủ đề để có gì xin họ đặt link tới trang web của mình. Hoặc là liên hệ với các nhà cung cấp dịch vụ cho chúng ta để họ đặt liên kết tới trang web của mình.

Hoặc siêng năng hơn thì lên các diễn đàn có cùng chủ đề nội dung của website và tích cực trả lời câu hỏi dẫn link về trang web của mình để vừa có back link vừa có khả năng tăng lượt truy cập của trang web.

Trên đây là một vài chia sẻ kinh nghiệm làm SEO từ vốn tự có của Frontend Developer cho các bạn muốn tìm hiểu. Còn nếu như ngân sách của bạn dư dả thì cứ chạy quảng cáo google, instagram cho khỏe.

Lựa chọn web hosting cho website

Hosting là gì? Theo định nghĩa trên Wikipedia dưới đây thì web hosting service A web hosting service (often shortened to web host) is a type of Internet hosting service that allows individuals and organizations to make their website accessible via the World Wide Web. Bên trên là định nghĩa tiếng anh và mình hiểu nôm na thì Host hay Web-Hosting được gọi chung là Hosting và đó là một dịch vụ lưu trữ và chia sẻ trực tuyến, là không gian trên máy chủ đã cài đặt các phần mềm cần thiết về chia sẻ trực tuyến như world wide web (www), truyền file (FTP), Mail… và người dùng có thể chứa nội dung trang web hay lưu trữ dữ liệu trên không gian đó.