


Dinh dưỡng đóng vai trò rất quan trọng đối với sức khỏe và hiệu suất làm việc của lập trình viên. Khi phải làm việc liên tục với máy tính, việc lựa chọn đúng thực phẩm có thể giúp bạn duy trì sự tỉnh táo, tăng cường trí nhớ và sức khỏe. Dưới đây là những loại thực phẩm mà lập trình viên nên ăn và không nên ăn, cùng với những số liệu và dẫn chứng khoa học để minh chứng cho tầm quan trọng của việc ăn uống hợp lý. Các thực phẩm tốt cho Dev Lòng đỏ trứng Lòng đỏ trứng rất giàu choline, một dưỡng chất quan trọng hỗ trợ chức năng não bộ và trí nhớ. Một lòng đỏ trứng chứa khoảng 147 mg choline, đáp ứng phần lớn nhu cầu hàng ngày của cơ thể. Theo nghiên cứu của Viện Y học Hoa Kỳ, nam giới cần 550 mg choline mỗi ngày để duy [...]
Read more →
Vai trò của kiểm thử trong quá trình phát triển dự án hiện nay ngày càng quan trọng, có nhiều thư viện, framework được tạo ra để phục vụ riêng cho việc làm test. Với JavaScript, nhiều lập trình viên lựa chọn Jest làm công cụ viết unit test nhờ tính đơn giản, dễ sử dụng của nó. Bài viết hôm nay chúng sẽ sẽ cùng nhau tìm hiểu xem Jest là gì và cách để thực hiện kiểm thử JavaScript với thư viện này nhé. Jest là gì? Jest là một framework kiểm thử JavaScript được phát triển bởi Facebook từ năm 2011; ban đầu nó được thiết kế để dùng cho các dự án ReactJS, sau đó được team phát triển mở rộng và hiện nay đã có thể áp dụng cho nhiều dự án JavaScript khác nhau như Angular, Vue, Babel, TypeScript, Node, … Jest thường được sử dụng cho Unit Testing (kiểm thử đơn vị). Framework này được viết theo phong cách BDD (Behavior-Driven Development – phát triển phần mềm theo hướng hành vi) tương tự như nhiều thư việ [...]
Read more →
Toán tử (Operator) là một khái niệm cơ bản trong mọi ngôn ngữ lập trình, một yếu tố không thể thiếu trong mọi chương trình chạy và cũng là một phần kiến thức quan trọng mà chúng ta cần nắm vững khi viết code. C++ là một ngôn ngữ lập trình đa năng, bậc cao được sử dụng nhiều trong tính toán; vì thế nó cũng được trang bị đầy đủ các loại toán tử khác nhau. Bài viết hôm nay chúng ta cùng tìm hiểu về toán tử trong C++, các loại toán tử với cách sử dụng và thứ tự ưu tiên thực hiện của nó nhé. Toán tử trong C++ là gì? Toán tử - Operators là những ký hiệu, biểu tượng được quy định sẵn từ trước; hoạt động trên các giá trị (có thể thông qua các biến) để thực hiện các phép tính toán cụ thể trong chương trình. Ví dụ chúng ta muốn thực hiện phép toá [...]
Read more →
Trí tuệ nhân tạo sinh tạo (GenAI) là một lĩnh vực của trí tuệ nhân tạo (AI) tập trung vào việc tạo ra nội dung mới và sáng tạo dựa trên dữ liệu và mô hình học máy. GenAI không chỉ có khả năng phân tích và xử lý dữ liệu, mà còn có thể tạo ra các sản phẩm mới như văn bản, hình ảnh, âm thanh và video mà không cần sự can thiệp của con người trong từng bước sáng tạo. Trí tuệ nhân tạo sinh tạo (GenAI) đang thu hút sự chú ý ngày càng lớn trong cộng đồng doanh nghiệp, nhờ vào tiềm năng cách mạng hóa các quy trình và chiến lược kinh doanh. Khái Niệm GenAI Trí tuệ nhân tạo sinh tạo Generative AI (GenAI) sử dụng các mô hình học sâu (deep learning) và các thuật toán học máy tiên tiến để mô phỏng quá trình sáng tạo của con người. Điều này có [...]
Read more →
Bài viết được sự cho phép bởi tác giả Sơn Dương Vue thực sự là một thư viện JS tuyệt vời để xây dựng các ứng dụng web, đặc biệt là ứng dụng SPA (Single Page Application). Bài viết trước, mình đã giới thiệu về Vue, các cài đặt cũng bước đầu tạo một ứng dụng web với Vue. Phần này, mình tiếp tục giới thiệu Vuejs Router, một module router chính thức của Vue. Vue Router là module được tích hợp sâu vào Vue, giúp bạn dễ dàng tạo các route cho ứng dụng. Để bạn có thể hiểu được đầy đủ về Vuejs router và thực hành thuần thục, chúng ta sẽ cùng nhau tìm hiểu khái niệm trước. #Router là gì? Vuejs router có tính năng gì hay ho? Khi làm việc với các ứng dụng back-end thì các bạn sẽ thấy router thực chất là định nghĩa cách url để ứng dụng điều hướng tới đúng hàm, đúng component xử lý nó. Ví dụ nhé: GET / [...]
Read more →
Bài viết được sự cho phép bởi tác giả Sơn Dương Để học React, bạn có rất nhiều cách như: học qua tài liệu chính chủ, học qua sách, video., khóa học online/offline… Với ReactJS, một trong những cách được ưu chuộng là học qua các dự án ví dụ thực tế. Khi đọc mã nguồn của một dự án, bạn sẽ tìm ra nguyên tắc và phương pháp của tác giải để giải quyết một vấn đề. Điều này sẽ giúp bạn học được kỹ năng phân tích và giài quyết vấn đề trong các dự án thực tế. Bài viết này, mình sẽ giới thiệu 10 dự án ReactJS để bạn tìm hiểu. Nhưng trước khi đọc, bạn đến tìm hiểu cơ bản trước về React. Ít nhất bạn cũng nên biết trước về cú pháp React, states, props, component.v.v… Phương pháp học React qua dự án thực tế Nếu chỉ đơn giản bạn clone một dự án trên github về, bạ [...]
Read more →
Test plan là một tài liệu thiết yếu được sử dụng trong quá trình phát triển và cải thiện chất lượng phần mềm. Trong bài viết này, chúng ta sẽ tìm hiểu về khái niệm test plan là gì, các thành phần chính và mục đích của test plan. Test plan là gì? Test plan là một tài liệu chi tiết mô tả các hoạt động, phương pháp và kế hoạch để thực hiện một quá trình kiểm thử cho một sản phẩm hoặc một hệ thống. Đây là một phần quan trọng trong việc kiểm thử phần mềm, giúp nhóm phát triển xác định được tất cả các thông tin cần thiết về mục tiêu, phạm vi, lịch trình, tài nguyên và các bước cụ thể để tiến hành thực hiện kiểm thử. >>> Xem thêm: Stress testing là gì? Phân biệt stress testing và load testing Mục đích của test plan là gì? Test plan được sử dụng phổ biến vì: [...]
Read more →
Bài viết được sự cho phép bởi tác giả Vũ Thành Nam Bạn đã từng rơi vào tình trạng khi sử dụng một ứng dụng xảy ra lỗi nhưng bộ não cá vàng của bạn lại không thể nhớ mình đã làm gì và tại sao lại bị lỗi như vậy? Bạn là một lập trình viên phát triển ứng dụng phần mềm và đã từng gặp phải những tình huống trớ trêu của những lỗi không biết nguyên nhân tại đâu và không thể tái hiện lại được vấn đề? Khi này với tư cách của một lập trình viên lâu năm của mình thì mình khuyên bạn hãy lơ nó đi và xem như bạn chưa từng thấy gì trên cõi đời này! Đùa chút thôi! Đối với các ngành nghề cần trao đổi thông tin nói chung và ngành phần mềm nói riêng thì việc bạn làm và thao tác trê [...]
Read more →
Bài viết được sự cho phép bởi tác giả Sơn Dương Vấn đề Trong quá trình phát triển ứng dụng hoặc đang vận hành nó trong môi trường production sẽ có lúc phát sinh ra nhiều vấn đề mà chúng ta không lường trước được. Khi ứng dụng được tung ra thị trường, chắc chắn lượng người dùng sẽ nhiều lên từng ngày, từ đó tạo ra sự đa dạng về hành vi lẫn dữ liệu người dùng thu thập được. Chúng kết hợp với nhau tạo ra nhiều trường hợp phát sinh lỗi mà quá trình kiểm thử trước đó không hề phát hiện ra. Một trong số đó có thể kể đến như là tốc độ phản hồi API bỗng trở nên chậm chạp mặc dù lượng người sử dụng là không nhiều. Khi kiểm tra lại tính năng gây ra tình trạng đó, có vẻ bạn phát hiện ra hoặc đang nghi ngờ một hàm nào đó chiếm lượng thời gian xử lý lớ [...]
Read more →
Trong thời đại số hóa, các công ty lớn thường xuyên nhận hàng trăm đơn ứng tuyển cho mỗi vị trí. Để quản lý hiệu quả lượng lớn hồ sơ này, hệ thống theo dõi ứng viên (ATS) đã trở thành công cụ không thể thiếu. ATS tự động sàng lọc và đánh giá hồ sơ, đòi hỏi mỗi ứng viên phải có một CV đúng chuẩn để không bị loại từ vòng gửi xe. Đây là nơi công cụ "Chuẩn Hóa CV" của TopDev đóng một vai trò quan trọng. 1. Giới Thiệu Công Cụ "Chuẩn Hóa CV" của TopDev TopDev, với sự hiểu biết sâu sắc về thị trường tuyển dụng IT, đã phát triển công cụ "Chuẩn Hóa CV" để giúp các chuyên gia IT tạo ra những hồ sơ xứng tầm. Dựa trên công nghệ tiên tiến từ OpenAI, công cụ này có khả năng tự học hỏi, phân tích và chọn lọc thông tin, sau đó tự động tạo ra một CV hoàn chỉnh [...]
Read more →
Bài viết được sự cho phép bởi tác giả Sơn Dương Hôm nay chúng ta quay trở lại với series thuật toán chuyên sâu nhé. Mặc dù, nói tới thuật toán là mình cảm thấy đau đầu vì tính phức tạp của nó, nhưng khi đã thẩm thấu xong một thuật toán, bản thân lại cảm thấy vô cùng thích thú Bài viết hôm nay, mình sẽ đề cập tới thuật toán tham lam (Greedy Algorithms) – nghe tên thôi đã thấy tham rùi. Cùng với thuật toán “Chia để trị – Divide and Conquer”, thuật toán tham lam là một trong những thuật toán thường xuyên xuất hiện trong các câu hỏi phỏng vấn tuyển dụng. Thật là thiết sót nếu bạn lại bỏ lỡ không biết về thuật toán này. Thuật toán tham lam là gì? Hiểu một cách “nông dân” nhất có thể về thuật toán này như sau: Khi bạn gặp một bài [...]
Read more →
Bài viết đến từ anh Lê Văn Tám - Senior Cloud Engineer Cloud Architect team @Techcombank Bối cảnh: Ở Techcombank, bộ phận Dịch vụ Hạ tầng (ITO - Infrastructure Services) đang vận hành rất nhiều ứng dụng (application) khác nhau để phục vụ người dùng nội bộ và khách hàng bên ngoài như quản lý nợ (Debt Management), tra cứu tín dụng (ICS), tra cứu và thu hộ thuế nhà nước (TCS), quản lý đặt chỗ (QMS)… Theo chiến lược chuyển đổi số theo định hướng “Cloud First”, Techcombank đã thực hiện di dời (migrate) được gần 30 ứng dụng (application) từ on-prems lên cloud từ giữa năm 2021 tới nay. Việc di dời thành công các ứng dụng đã bước đầu đã chứng minh được lợi ích của chiến lược “Cloud first”. Tuy nhiên, trong quá trình chuyển đổi “nóng” đó, Techcombank nói chung và đội ngũ ITO nói riêng cũng gặp phải một số vấn đề do chưa đủ nguồn lực để triển khai, đặc biệt là vấn đề giám sát (monitor) các ứng dụng này. Thời điểm đó, mỗi ứ [...]
Read more →
Trong những năm gần đây, với sự phát triển của AI, xử lý dữ liệu big data,… thì Python luôn là một trong những cái tên mà các nhà tuyển dụng săn đón nhiều nhất ở các ứng viên với mức đãi ngộ cao. Để chuẩn bị cho một buổi phỏng vấn tốt nhất, hôm nay mình cùng các bạn đi qua top 10 câu hỏi phỏng vấn Python Developer thường gặp nhất nhé. Câu hỏi lý thuyết Câu 1: Bạn có thể nói gì về Python? Python là một ngôn ngữ lập trình bậc cao được thiết kế với cấu trúc cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu, nó được đánh giá là dễ học, cấu trúc rõ ràng, phù hợp và thuận tiện cho người bắt đầu học lập trình. Python ra mắt lần đầu năm 1991, ban đầu chỉ chạy trên nền Unix , sau đó mở rộng sang mọi hệ điều hành từ DOS, Windows, MacOS, [...]
Read more →
Bài viết được sự cho phép của tác giả Nguyễn Hữu Khanh Trong bài này, chúng ta sẽ cùng tìm hiểu về xác thực (authentication) và phân quyền (authorization) trong ứng dụng. Xác thực (Authentication) là gì? Theo định nghĩa của wikipedia, Xác thực/ Định danh (authentication) là một hành động nhằm thiết lập hoặc chứng thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là, những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật. Như đã biết, RESTful web service sử dụng HTTP protocol như một phương tiện giao tiếp và HTTP request là stateless protocol. Tức là server không lưu giữ bất kỳ thông tin nào của client, server xử lý các request một cách độc lập, không phụ thuộc vào trạng thái hay kết quả của request trước. Như hình bên dưới, do server không lưu giữ bất kỳ thông tin nào của request trước. Nên mỗi request gửi lên server đều phả [...]
Read more →
Công nghệ Blockchain mang một tiềm năng to lớn, được xem là “chìa khóa” cho chuyển đổi số và mở ra một xu hướng mới cho nhiều lĩnh vực trong tương lai. Vậy công nghệ blockchain là gì? Các đặc điểm nổi bật của blockchain? Và ứng dụng nó như thế nào? Công nghệ Blockchain là gì? Blockchain là công nghệ chuỗi khối, cho phép chia sẻ thông tin một cách minh bạch và an toàn dựa trên hệ thống mã hóa vô cùng phức tạp. Dữ liệu sẽ được lưu trữ trong các khối, liên kết với nhau trong một chuỗi và được mở rộng theo thời gian. Mỗi khối sẽ chứa đựng các thông tin về dữ liệu giao dịch và liên kết với khối trước đó nên việc can thiệp thay đổi thông tin là điều không thể xảy ra. Một điều khác biệt của blockchain so với các công nghệ khác là thông tin không nằm tập trung ở một máy chủ [...]
Read more →