<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Thủ thuật</title>
	<atom:link href="https://thienanblog.com/category/thu-thuat/feed/" rel="self" type="application/rss+xml" />
	<link>https://thienanblog.com/category/thu-thuat/</link>
	<description>Javascript - PHP - SEO - Web Development</description>
	<lastBuildDate>Wed, 01 Jan 2025 09:56:52 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>

<image>
	<url>https://thienanblog.com/wp-content/uploads/2017/05/TAB_favicon.ico.png</url>
	<title>Thủ thuật</title>
	<link>https://thienanblog.com/category/thu-thuat/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>7 Bước Bảo Mật VPS Toàn Diện Và Hướng Dẫn Sử Dụng CloudPanel Hiệu Quả</title>
		<link>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/7-buoc-bao-mat-vps-toan-dien-va-huong-dan-su-dung-cloudpanel-hieu-qua/</link>
					<comments>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/7-buoc-bao-mat-vps-toan-dien-va-huong-dan-su-dung-cloudpanel-hieu-qua/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Wed, 01 Jan 2025 09:55:55 +0000</pubDate>
				<category><![CDATA[Thủ thuật]]></category>
		<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[Thủ thuật máy tính]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Admin Panel]]></category>
		<category><![CDATA[bảo mật]]></category>
		<category><![CDATA[bảo mật server]]></category>
		<category><![CDATA[bảo vệ dữ liệu]]></category>
		<category><![CDATA[cách bảo mật VPS]]></category>
		<category><![CDATA[cấu hình VPS]]></category>
		<category><![CDATA[CDN Cloudflare]]></category>
		<category><![CDATA[CloudPanel]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[hướng dẫn DevOps]]></category>
		<category><![CDATA[quản lý server]]></category>
		<category><![CDATA[quản trị server]]></category>
		<category><![CDATA[SSH Key]]></category>
		<category><![CDATA[tối ưu bảo mật]]></category>
		<category><![CDATA[VPS]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=442</guid>

					<description><![CDATA[<p>Hello, lại là mình đây&#160; Hôm nay mình muốn chia sẻ với các bạn về Admin Panel và cách bảo mật mà mình đang áp dụng cho VPS. Phương pháp&#8230;</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/7-buoc-bao-mat-vps-toan-dien-va-huong-dan-su-dung-cloudpanel-hieu-qua/">7 Bước Bảo Mật VPS Toàn Diện Và Hướng Dẫn Sử Dụng CloudPanel Hiệu Quả</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Hello, lại là mình đây&nbsp;<img decoding="async" height="16" width="16" alt="&#x1f602;" src="https://static.xx.fbcdn.net/images/emoji.php/v9/t6f/2/16/1f602.png"></p>



<p>Hôm nay mình muốn chia sẻ với các bạn về Admin Panel và cách bảo mật mà mình đang áp dụng cho VPS. Phương pháp này nhanh, nhẹ và bảo mật tốt, phù hợp cho cả người mới bắt đầu và những bạn đã có kinh nghiệm. Trong bài viết, mình sẽ trình bày các vấn đề thành từng phần để dễ theo dõi hơn.</p>



<h4 class="wp-block-heading">1. Giới thiệu về Admin Panel – CloudPanel</h4>



<p>Mình đang sử dụng CloudPanel, một Admin Panel được phát triển bởi một công ty tại Đức. Điểm nổi bật của CloudPanel là:</p>



<ul class="wp-block-list">
<li>Nhẹ nhàng và không cồng kềnh: So với các Panel như VestaCP hoặc HestiaCP, CloudPanel không bao gồm nhiều tính năng không cần thiết.</li>



<li>Hỗ trợ nền tảng mới nhất: CloudPanel tương thích với các hệ điều hành như Ubuntu LTS 24.04, Debian 12, đảm bảo các công nghệ luôn được cập nhật.</li>



<li>Hỗ trợ quản lý file qua File Manager.</li>



<li>Hỗ trợ chứng chỉ SSL miễn phí qua Let&#8217;s Encrypt.</li>



<li>Tích hợp Cloudflare và các dịch vụ CDN khác.</li>



<li>Hỗ trợ server Node.js và Python, phù hợp cho các ứng dụng cần WebSocket hoặc xử lý dữ liệu chuyên biệt.</li>
</ul>



<p>Nếu bạn muốn một Panel vừa gọn nhẹ, vừa mạnh mẽ thì CloudPanel là lựa chọn đáng cân nhắc.</p>



<h4 class="wp-block-heading">2. Các bước cơ bản bảo mật VPS</h4>



<h5 class="wp-block-heading"><strong>Vấn đề 1: Thay thế đăng nhập bằng mật khẩu bằng SSH Key</strong></h5>



<p>Phần lớn các VPS khi tạo mới sẽ cung cấp tài khoản Root/Password để truy cập SSH. Tuy nhiên, cách này dễ bị tấn công dò quét. Để bảo mật hơn:</p>



<p>Chặn đăng nhập bằng mật khẩu: Sau khi đăng nhập lần đầu, hãy vô hiệu hóa tính năng này.</p>



<p><strong>Sử dụng SSH Key:</strong></p>



<ul class="wp-block-list">
<li>Tạo cặp khóa SSH (public/private key) trên máy cá nhân.</li>



<li>Thêm khóa public vào VPS để xác thực.</li>



<li>Đảm bảo các công cụ như iptables hoặc fail2ban được cấu hình để lọc IP đăng nhập trái phép.</li>
</ul>



<h5 class="wp-block-heading"><strong>Vấn đề 2: Hạn chế truy cập Admin Panel</strong></h5>



<p>Các Admin Panel thường sử dụng một cổng mặc định (CloudPanel là cổng 8443). Để bảo mật:</p>



<ul class="wp-block-list">
<li>Chặn truy cập từ bên ngoài: Chỉ cho phép truy cập từ localhost.</li>



<li>Sử dụng SSH Tunnel: Tạo một đường hầm từ máy cá nhân đến server để map cổng, ví dụ:</li>



<li>Map 127.0.0.1:8000 (máy cá nhân) đến 127.0.0.1:8443 (server).</li>
</ul>



<p>Cách này đảm bảo chỉ bạn mới có thể truy cập Admin Panel qua SSH.</p>



<h5 class="wp-block-heading"><strong>Vấn đề 3: Hạn chế số lượng cổng mở</strong></h5>



<p>Chỉ nên mở các cổng cần thiết như:</p>



<ul class="wp-block-list">
<li>22: SSH.</li>



<li>80/443: HTTP/HTTPS.</li>
</ul>



<p>Các cổng khác nên bị chặn hoàn toàn bằng tường lửa. Điều này giúp giảm nguy cơ bị tấn công từ bên ngoài.</p>



<h4 class="wp-block-heading">3. Bảo mật dữ liệu và source code</h4>



<h5 class="wp-block-heading"><strong>Vấn đề 1: Quản lý quyền CHOWN và CHMOD</strong></h5>



<p>Khi sử dụng các công cụ như rsync để di chuyển dữ liệu, cần chú ý thiết lập đúng quyền:</p>



<ul class="wp-block-list">
<li>CHOWN: Đảm bảo tệp thuộc về đúng user.</li>



<li>CHMOD: Giới hạn quyền truy cập để tránh lỗ hổng bị khai thác.</li>



<li>Sai sót trong việc quản lý quyền có thể dẫn đến việc file độc hại được chèn vào hệ thống.</li>
</ul>



<h5 class="wp-block-heading"><strong>Vấn đề 2: Giấu IP gốc của server</strong></h5>



<p>Sử dụng các dịch vụ CDN như:</p>



<ul class="wp-block-list">
<li>Cloudflare hoặc CloudFront.</li>



<li>Dịch vụ CDN trong nước nếu cần.</li>
</ul>



<p>Các dịch vụ này sẽ giấu IP thật của server, giúp ngăn chặn các cuộc tấn công trực tiếp. Khi bị DDoS, bạn có thể điều hướng traffic hoặc tạm thời ngắt kết nối.</p>



<h5 class="wp-block-heading"><strong>Vấn đề 3: Kiểm tra và giám sát source code</strong></h5>



<p>Nếu bạn sử dụng WordPress:</p>



<ul class="wp-block-list">
<li>Cấm cài đặt plugin/theme không kiểm soát: Dùng CHMOD để ngăn chặn script không được phép.</li>



<li>Quản lý source code bằng GitHub/Bitbucket: So sánh mã nguồn giữa phiên bản gốc và hiện tại để phát hiện các thay đổi trái phép.</li>
</ul>



<p>Nếu bạn sử dụng Laravel hoặc PHP thuần:</p>



<ul class="wp-block-list">
<li>Hãy dùng Git để quản lý source code, đảm bảo mọi thay đổi đều được theo dõi.</li>
</ul>



<h4 class="wp-block-heading">5. Tổng kết</h4>



<p>Bảo mật VPS không chỉ nằm ở việc sử dụng công cụ mà còn là kiến thức và thói quen quản trị:</p>



<ul class="wp-block-list">
<li>Sử dụng SSH Key thay cho mật khẩu.</li>



<li>Hạn chế quyền truy cập Admin Panel qua SSH Tunnel.</li>



<li>Giảm thiểu số cổng mở ra Internet.</li>



<li>Quản lý quyền CHOWN/CHMOD đúng cách.</li>



<li>Sử dụng CDN để giấu IP server.</li>



<li>Theo dõi và kiểm tra source code thường xuyên.</li>



<li>Tạo User riêng biệt cho từng website.</li>
</ul>



<p>Hy vọng bài viết này sẽ giúp các bạn có cái nhìn tổng quan và nâng cao bảo mật cho VPS của mình. Nếu có ý kiến hoặc kinh nghiệm nào khác, đừng ngần ngại chia sẻ để cùng học hỏi nhé!</p>



<p></p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/7-buoc-bao-mat-vps-toan-dien-va-huong-dan-su-dung-cloudpanel-hieu-qua/">7 Bước Bảo Mật VPS Toàn Diện Và Hướng Dẫn Sử Dụng CloudPanel Hiệu Quả</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/7-buoc-bao-mat-vps-toan-dien-va-huong-dan-su-dung-cloudpanel-hieu-qua/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Website giá rẻ? Có thật sự rẻ không?</title>
		<link>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/website-gia-re-co-that-su-re-khong/</link>
					<comments>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/website-gia-re-co-that-su-re-khong/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Wed, 08 Mar 2023 02:07:06 +0000</pubDate>
				<category><![CDATA[Thủ thuật]]></category>
		<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[bình luận]]></category>
		<category><![CDATA[chi phí]]></category>
		<category><![CDATA[coder]]></category>
		<category><![CDATA[công việc]]></category>
		<category><![CDATA[đầu tư]]></category>
		<category><![CDATA[độ hoàn thiện]]></category>
		<category><![CDATA[hiệu quả]]></category>
		<category><![CDATA[hỗ trợ]]></category>
		<category><![CDATA[lập trình viên]]></category>
		<category><![CDATA[lỗi vặt]]></category>
		<category><![CDATA[nâng cấp]]></category>
		<category><![CDATA[nhu cầu người dùng]]></category>
		<category><![CDATA[ổn định]]></category>
		<category><![CDATA[sử dụng]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[thiện cảm]]></category>
		<category><![CDATA[tiết kiệm]]></category>
		<category><![CDATA[tính năng]]></category>
		<category><![CDATA[website giá rẻ]]></category>
		<category><![CDATA[ý kiến độc giả]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=374</guid>

					<description><![CDATA[<p>Nhu cầu của con người ngày càng tăng cao, đặc biệt là trong lĩnh vực công nghệ thông tin. Một trong những nhu cầu đó là có một trang web&#8230;</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/website-gia-re-co-that-su-re-khong/">Website giá rẻ? Có thật sự rẻ không?</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a href="https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE-.png"><img fetchpriority="high" decoding="async" class="aligncenter wp-image-375" src="https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE-.png" alt="" width="631" height="355" srcset="https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE-.png 1280w, https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE--300x169.png 300w, https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE--768x432.png 768w, https://thienanblog.com/wp-content/uploads/2023/03/CHEAP-WEBSITE-VS-EXPENSIVE-WEBSITE--1024x576.png 1024w" sizes="(max-width: 631px) 100vw, 631px" /></a></p>
<p>Nhu cầu của con người ngày càng tăng cao, đặc biệt là trong lĩnh vực công nghệ thông tin. Một trong những nhu cầu đó là có một trang web riêng cho mình hoặc cho doanh nghiệp. Tuy nhiên, nhiều người lại chọn lựa những website giá rẻ để tiết kiệm chi phí. Nhưng liệu website giá rẻ có thật sự rẻ? Chúng ta hãy cùng tìm hiểu.</p>
<h3>Tại sao có website giá rẻ?</h3>
<p>Có nhiều lý do để có những website giá rẻ. Đối với người dùng, họ muốn có một trang web cho mình nhưng lại không muốn bỏ ra quá nhiều tiền. Đối với lập trình viên, họ muốn lấy tiền nhanh chóng thông qua việc mua theme và chỉnh sửa lại để bán cho khách hàng.</p>
<h3>Website giá rẻ có thật sự rẻ? Không!</h3>
<p>Tuy nhiên, sự tiết kiệm chi phí đó lại có thể gây ra rất nhiều vấn đề cho người sử dụng. Đầu tiên, khi có những lỗi vặt xuất hiện trên trang web, người sử dụng sẽ không có được sự hỗ trợ cần thiết để khắc phục. Thứ hai, khi muốn nâng cấp hoặc thay đổi giao diện trang web, người dùng sẽ gặp rất nhiều khó khăn vì dữ liệu hiện tại không được đảm bảo. Cuối cùng, chi phí bỏ ra để chỉnh sửa, mò mẫm sẽ không đáng kể hơn so với thời gian mà người sử dụng phải bỏ ra để làm việc.</p>
<h3>Vậy còn Website với giá trị như thế nào là hợp lý?</h3>
<p>Không có con số chính xác nào để đánh giá giá trị của một trang web. Tuy nhiên, giá trị của một trang web có thể được đánh giá dựa trên sự hiệu quả trong công việc, độ hoàn thiện và sự hỗ trợ từ nhà cung cấp. Trang web tốt là trang web được thiết kế để phục vụ cho mục đích cụ thể, và được cập nhật thường xuyên để đảm bảo tính ổn định. Hơn nữa, trang web tốt cũng sẽ gây thiện cảm với khách ghé thăm vì độ hoàn thiện của nó.</p>
<h3>Tổng kết bài viết</h3>
<p>Với những lý do và khó khăn mà người sử dụng sẽ gặp phải khi sử dụng website giá rẻ, chúng ta có thể kết luận rằng không nên lựa chọn những website giá rẻ để tiết kiệm chi phí. Thay vào đó, hãy đầu tư vào một trang web có giá trị thực sự để đảm bảo tính ổn định và sự hỗ trợ tốt nhất cho công việc của mình.</p>
<h3>Ý kiến của các bạn</h3>
<p>Quý độc giả hãy chia sẻ ý kiến của mình về vấn đề này. Bạn có từng trải qua những trang web giá rẻ?</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/website-gia-re-co-that-su-re-khong/">Website giá rẻ? Có thật sự rẻ không?</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/website-gia-re-co-that-su-re-khong/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Tìm hiểu Git LFS</title>
		<link>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/tim-hieu-git-lfs/</link>
					<comments>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/tim-hieu-git-lfs/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Mon, 28 Jan 2019 10:05:21 +0000</pubDate>
				<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[cách cài đặt git lfs]]></category>
		<category><![CDATA[cách sử dụng git lfs]]></category>
		<category><![CDATA[git lfs cài đặt]]></category>
		<category><![CDATA[git lfs hướng dẫn]]></category>
		<category><![CDATA[git lfs là gì]]></category>
		<category><![CDATA[hướng dẫn dùng git lfs]]></category>
		<category><![CDATA[hướng dẫn git lfs]]></category>
		<category><![CDATA[hướng dẫn sử dụng git lfs]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=345</guid>

					<description><![CDATA[<p>Tìm hiểu Git LFS Git LFS (Large File Storage) là một bản mở rộng của Git được phát triển bởi Atlassian (Nổi tiếng với Bitbucket và JIRA), Github và cộng&#8230;</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/tim-hieu-git-lfs/">Tìm hiểu Git LFS</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3><a href="https://thienanblog.com/wp-content/uploads/2019/01/git-lfs.png"><img decoding="async" class="aligncenter size-full wp-image-351" src="https://thienanblog.com/wp-content/uploads/2019/01/git-lfs.png" alt="" width="400" height="400" srcset="https://thienanblog.com/wp-content/uploads/2019/01/git-lfs.png 400w, https://thienanblog.com/wp-content/uploads/2019/01/git-lfs-150x150.png 150w, https://thienanblog.com/wp-content/uploads/2019/01/git-lfs-300x300.png 300w" sizes="(max-width: 400px) 100vw, 400px" /></a></h3>
<h3>Tìm hiểu Git LFS</h3>
<p>Git LFS (Large File Storage) là một bản mở rộng của Git được phát triển bởi <strong>Atlassian</strong> (Nổi tiếng với Bitbucket và JIRA), <strong>Github</strong> và cộng đồng Open-Source . Git LFS giúp chúng ta tối ưu dung lượng tổng thể của 1 Repository khi Clone, Pull và Checkout trên Git bằng cách thay thế các file Media (Hình ảnh, Video, File thông thường&#8230;) thành những chuỗi text được trỏ lên Server và lưu với một cách thức khác với thông thường.</p>
<p>Git LFS sẽ giúp chúng ta giảm thiểu rất đáng kể khi chúng ta Clone, Pull hay Checkout với Repository. Khi mà trước đây nếu Repository của bạn có nhiều file lớn thì khi clone nó sẽ clone về toàn bộ Repository bao gồm tất cả File History Version (Các bản cập nhật của file) khiến dung lượng Repository của chúng ta càng ngày càng tăng.</p>
<p>Hiểu được điều này nên Git LFS được xây dựng trên kỹ thuật <strong>Lazyload</strong> (Cần thì lấy), vì thế mà khi clone, pull hay checkout source về sẽ rất nhanh và chúng ta có thể tải về các file lớn sau cũng được. Nhất là lúc cần fix code gấp mà gặp mạng mẽo bị &#8220;cá mập&#8221; cắn thì có mà than trời.</p>
<p>Một tin tốt cho các bạn là khi các bạn cài đặt Git LFS thì không ảnh hưởng nhiều đến thao tác trước giờ bạn làm với Git, các bạn chỉ cấu hình lúc đầu thôi mà còn rất là dễ nữa. Còn lại Git LFS sẽ tự động hết cho các bạn.</p>
<h3>Cài đặt Git LFS</h3>
<p><strong>Yêu cầu:</strong></p>
<ul>
<li>Đã cài đặt Git.</li>
<li>Tạo Repository để test hoặc sử dụng Repository đang có sẵn của bạn.</li>
<li>Hiều về Git trước đó là một lợi thế để bạn tiếp tục xem tiếp bài này.</li>
</ul>
<p><strong>Bước 1:</strong> Download Git LFS</p>
<ul>
<li>Windows: Truy cập vào <a href="https://git-lfs.github.com">https://git-lfs.github.com</a> và tải về bản cài đặt, hoặc khi các bạn cài Git thì sẽ có bảng Option cho bạn chọn để cài kèm với Git LFS.</li>
<li>MacOS: các bạn cần cài Brew và dùng lệnh <span class="lang:default decode:true crayon-inline ">brew install git-lfs</span> trong Terminal.</li>
<li>Linux: các bạn truy cập vào <a href="https://github.com/git-lfs/git-lfs/wiki/Installation">https://github.com/git-lfs/git-lfs/wiki/Installation</a> để rõ hơn khi cài đặt trên các phiên bản Linux khác nhau.</li>
</ul>
<p><strong>Bước 2:</strong> Chọn hoặc tạo Repository của bạn</p>
<ul>
<li>Hãy <span class="lang:default decode:true crayon-inline">cd</span> vào đúng thư mục Repository của bạn trong<strong> Git Bash/Command Prompt/Windows PowerShell</strong> (Windows) hoặc <strong>Terminal</strong> (MacOS/Linux) và gõ lệnh:</li>
</ul>
<pre class="lang:default decode:true">git lfs install</pre>
<p><strong>Bước 3:</strong> Track những file có dung lượng lớn mà bạn muốn bằng <strong>Regular Expression</strong> (Regex) với lệnh sau:</p>
<pre class="lang:default decode:true">// Track tất cả file với extension
git lfs track "*.jpg"

// Track tất cả file với nhiều extension
git lfs track "*.jpg" "*.png" "*.gif"</pre>
<ul>
<li>Ở bước này nhỡ Track lộn thì sao? Ví dụ thay vì bạn ghi là  <span class="lang:default decode:true crayon-inline ">git lfs track &#8220;*.jpg&#8221;</span> thì bạn lại ghi là <span class="lang:default decode:true crayon-inline ">git lfs track &#8220;.jpg&#8221;</span> nó không đúng với Regex nhưng Git LFS vẫn chấp nhận nhưng lại là với file đúng với tên gọi là <span class="lang:default decode:true crayon-inline ">.jpg</span>  . Lúc đó bạn hãy mở file<span class="lang:default decode:true crayon-inline "> .gitattributes</span>  lên và xóa dòng sau <span class="lang:default decode:true crayon-inline ">.jpg filter=lfs diff=lfs merge=lfs -text</span>  là xong. Cái này các bạn tự vọc đi rất dễ.</li>
</ul>
<p><strong>Bước 4:</strong> Commit và Push kèm file <span class="lang:default decode:true crayon-inline ">.gitattributes</span>  (rất quan trọng) và các file đó trong Repository sẽ bị xóa trên Git (<strong>Chỉ đối với Repository các bạn đang làm việc và đã có sẵn file trước đó</strong>) để việc setup Git LFS hoàn tất. Các bạn yên tâm nó sẽ không xóa file ở máy đâu nha, xóa file trên Git và chuyển nó ở 1 chỗ lưu trữ khác thôi.</p>
<p><a href="https://thienanblog.com/wp-content/uploads/2019/01/9.-Co-su-thay-doi-cac-file-chung-ta-commit-truoc-do-va-xuat-hien-file-moi-gitattributes-va-chung-ta-can-commit-luon.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-361" src="https://thienanblog.com/wp-content/uploads/2019/01/9.-Co-su-thay-doi-cac-file-chung-ta-commit-truoc-do-va-xuat-hien-file-moi-gitattributes-va-chung-ta-can-commit-luon.png" alt="" width="925" height="497" srcset="https://thienanblog.com/wp-content/uploads/2019/01/9.-Co-su-thay-doi-cac-file-chung-ta-commit-truoc-do-va-xuat-hien-file-moi-gitattributes-va-chung-ta-can-commit-luon.png 925w, https://thienanblog.com/wp-content/uploads/2019/01/9.-Co-su-thay-doi-cac-file-chung-ta-commit-truoc-do-va-xuat-hien-file-moi-gitattributes-va-chung-ta-can-commit-luon-300x161.png 300w, https://thienanblog.com/wp-content/uploads/2019/01/9.-Co-su-thay-doi-cac-file-chung-ta-commit-truoc-do-va-xuat-hien-file-moi-gitattributes-va-chung-ta-can-commit-luon-768x413.png 768w" sizes="auto, (max-width: 925px) 100vw, 925px" /></a></p>
<p><strong>Bước 5:</strong> Các bạn có thể kiểm tra Git LFS hoàn tất chưa có thể vào trang Repository của mình để xem, thường thì nó sẽ để là <strong>Git LFS Installed</strong> thì như vậy là hoàn tất rồi đó.</p>
<p>Như vậy sau 5 bước chúng ta đã hoàn thành cài đặt Git LFS, quá nhanh và dễ dàng đúng không các bạn. Nếu sau này các bạn Clone, Pull hay Checkout thì nếu máy bạn đã cài đặt sẵn Git LFS thì nó sẽ <strong>tự động tải về</strong> các file media cho các bạn và bạn yên tâm nó chỉ tải về những gì cần thiết cho commit bạn đang clone thôi nên rất nhẹ luôn chứ nếu mà tải hết như Git thông thường thì dẹp luôn đi chứ xài Git LFS làm gì nữa.</p>
<h3>Các vấn đề gặp phải khi sử dụng Git LFS</h3>
<p>Git LFS có rất nhiều lợi ích của nó nhưng đôi khi nó cũng có thể gây cho các bạn một số phiền phức phổ biến như sau:</p>
<ul>
<li><strong>Máy quên cài Git LFS:</strong> đối với trường hợp này thì các bạn hãy cài như trên rồi sau đó tại Repository đó các bạn chạy lệnh thủ công <span class="lang:default decode:true crayon-inline ">git lfs pull</span>  để nó tự động tải về.</li>
<li><strong>Git LFS trên MacOS và Linux</strong> đôi khi gặp trục trặc 1 chút ở vấn đề cài đặt như Permission này nọ, cái này đòi hỏi các bạn 1 chút kiến thức về Terminal thì sẽ quyết nhanh thôi.</li>
<li><strong>Khi làm việc với đồng nghiệp</strong> thì bắt buộc họ cũng phải cài đặt Git LFS nên sẽ hơi khó chịu 1 chút với những đồng nghiệp &#8220;cứng đầu&#8221; không chịu cài dù có giải thích. Những người này có thể là họ ngại làm quen cái mới hoặc Repository của họ đã quá nhỏ rồi và cũng có khi là do cái tôi lớn quá nên nói không nghe.</li>
</ul>
<p>Đó là những vấn đề sẽ xảy ra khi bạn dùng Git LFS, nếu bạn có thể giải quyết ổn thỏa hết các vấn đề trên thì &#8220;triển&#8221; thôi nào.</p>
<h3>Tìm hiểu Git LFS qua Video</h3>
<ul>
<li>Sẽ cập nhật sau&#8230;</li>
</ul>
<p>Các bạn có thể tham khảo 1 Repository mẫu về Git LFS tại đây: <a href="https://github.com/thienanblog/git-lfs-example">https://github.com/thienanblog/git-lfs-example</a></p>
<h3>Một ví dụ trước và sau khi dùng Git LFS</h3>
<p style="text-align: center;">Trước khi sử dụng Git LFS</p>
<p><a href="https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-356" src="https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua.png" alt="" width="1041" height="447" srcset="https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua.png 1041w, https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua-300x129.png 300w, https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua-768x330.png 768w, https://thienanblog.com/wp-content/uploads/2019/01/6.-thay-nang-chua-1024x440.png 1024w" sizes="auto, (max-width: 1041px) 100vw, 1041px" /></a></p>
<p style="text-align: center;">Sau khi sử dụng Git LFS</p>
<p><a href="https://thienanblog.com/wp-content/uploads/2019/01/11.-That-bat-ngo-khi-dung-luong-file-giam-ro-ret-va-xuat-hien-Git-LFS-installed-trong-Github.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-357" src="https://thienanblog.com/wp-content/uploads/2019/01/11.-That-bat-ngo-khi-dung-luong-file-giam-ro-ret-va-xuat-hien-Git-LFS-installed-trong-Github.png" alt="" width="1003" height="480" srcset="https://thienanblog.com/wp-content/uploads/2019/01/11.-That-bat-ngo-khi-dung-luong-file-giam-ro-ret-va-xuat-hien-Git-LFS-installed-trong-Github.png 1003w, https://thienanblog.com/wp-content/uploads/2019/01/11.-That-bat-ngo-khi-dung-luong-file-giam-ro-ret-va-xuat-hien-Git-LFS-installed-trong-Github-300x144.png 300w, https://thienanblog.com/wp-content/uploads/2019/01/11.-That-bat-ngo-khi-dung-luong-file-giam-ro-ret-va-xuat-hien-Git-LFS-installed-trong-Github-768x368.png 768w" sizes="auto, (max-width: 1003px) 100vw, 1003px" /></a></p>
<p>Trân trọng cám ơn độc giả đã xem qua bài viết này, mong được sự ủng hộ của các bạn ở các bài viết tới.</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/tim-hieu-git-lfs/">Tìm hiểu Git LFS</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/tim-hieu-git-lfs/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Sửa lỗi Chrome và WordPress Admin Bar</title>
		<link>https://thienanblog.com/php/wordpress/sua-loi-chrome-va-wordpress-admin-bar/</link>
					<comments>https://thienanblog.com/php/wordpress/sua-loi-chrome-va-wordpress-admin-bar/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Mon, 07 Sep 2015 13:29:21 +0000</pubDate>
				<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[bug chrome]]></category>
		<category><![CDATA[bug chrome wordpress]]></category>
		<category><![CDATA[cách sửa lỗi wordpress khi chạy chrome]]></category>
		<category><![CDATA[lỗi chrome trên wordpress]]></category>
		<category><![CDATA[wordpress admin bar lỗi trên chrome]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=196</guid>

					<description><![CDATA[<p>Trong bản cập nhật mới đây của Chrome (Version 45.0.2454.85 m) đã xảy ra tình trạng kỳ lạ khi các Menu trong WordPress Admin Bar như sau: Để có thể&#8230;</p>
<p>The post <a href="https://thienanblog.com/php/wordpress/sua-loi-chrome-va-wordpress-admin-bar/">Sửa lỗi Chrome và WordPress Admin Bar</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Trong bản cập nhật mới đây của Chrome (Version 45.0.2454.85 m) đã xảy ra tình trạng kỳ lạ khi các Menu trong WordPress Admin Bar như sau:</p>
<p><a href="https://thienanblog.com/wp-content/uploads/2015/09/wp-b.png"><img loading="lazy" decoding="async" class=" wp-image-197 aligncenter" src="https://thienanblog.com/wp-content/uploads/2015/09/wp-b.png" alt="Lỗi lạ" width="110" height="610" srcset="https://thienanblog.com/wp-content/uploads/2015/09/wp-b.png 158w, https://thienanblog.com/wp-content/uploads/2015/09/wp-b-54x300.png 54w" sizes="auto, (max-width: 110px) 100vw, 110px" /></a>Để có thể sửa lỗi này thì theo các thành viên Support tại https://productforums.google.com/forum/#!topic/chrome/vRbjCc-eafw đưa ra giải pháp sửa lỗi Chrome cho các bạn như sau:</p>
<div>&#8211; Vào địa chỉ <span class="lang:default decode:true crayon-inline">chrome://flags/#disable-slimming-paint</span></div>
<div>&#8211; Chọn <strong>Enable</strong> chức năng &#8220;<strong>Disable slimming paint&#8221;</strong>.</div>
<div>&#8211; Các bạn hãy chắc chắn rằng chức năng &#8220;<strong>Enable slimming paint</strong>&#8221; phải được tắt.</div>
<div><a href="https://thienanblog.com/wp-content/uploads/2015/09/sualoichrome.png"><img loading="lazy" decoding="async" class="size-full wp-image-198 aligncenter" src="https://thienanblog.com/wp-content/uploads/2015/09/sualoichrome.png" alt="Sửa lỗi Chrome" width="377" height="108" srcset="https://thienanblog.com/wp-content/uploads/2015/09/sualoichrome.png 377w, https://thienanblog.com/wp-content/uploads/2015/09/sualoichrome-300x86.png 300w" sizes="auto, (max-width: 377px) 100vw, 377px" /></a></div>
<div>&#8211; Sau đó chọn <strong>Relaunch Chrome</strong>.</div>
<div>Chúc các bạn thành công! Ngoài ra, còn một số lỗi xảy ra trên website tác giả mà vẫn chưa tìm được cách khắc phục và có lẽ phải chờ bản vá của Google.</div>
<p>&nbsp;</p>
<p>The post <a href="https://thienanblog.com/php/wordpress/sua-loi-chrome-va-wordpress-admin-bar/">Sửa lỗi Chrome và WordPress Admin Bar</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/php/wordpress/sua-loi-chrome-va-wordpress-admin-bar/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Phá giá Website, vấn đề muôn thuở</title>
		<link>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/pha-gia-website-van-de-muon-thuo/</link>
					<comments>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/pha-gia-website-van-de-muon-thuo/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Mon, 07 Sep 2015 12:31:33 +0000</pubDate>
				<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[báo giá website]]></category>
		<category><![CDATA[chống phá giá website]]></category>
		<category><![CDATA[định giá website]]></category>
		<category><![CDATA[không phá giá website]]></category>
		<category><![CDATA[kinh doanh website]]></category>
		<category><![CDATA[phá giá website]]></category>
		<category><![CDATA[ra giá website]]></category>
		<category><![CDATA[thực trạng phá giá website]]></category>
		<category><![CDATA[website phá giá]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=193</guid>

					<description><![CDATA[<p>Như các bạn cũng biết, thị trường Website Việt Nam hiện nay trở nên màu mỡ cho các lập trình viên. Qua đó, việc xuất hiện của các công ty,&#8230;</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/pha-gia-website-van-de-muon-thuo/">Phá giá Website, vấn đề muôn thuở</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Như các bạn cũng biết, thị trường Website Việt Nam hiện nay trở nên màu mỡ cho các lập trình viên. Qua đó, việc xuất hiện của các công ty, cá nhân sử dụng quá nhiều tiêu đề &#8220;giá rẻ&#8221; trong chính cả Slogan và thương hiệu của mình. Khiến cho thị trường Website trở nên khó khăn vì người lập trình viên giỏi thì mất quá nhiều công sức và thời gian để tích lũy kinh nghiệm phải bị ép một cái giá &#8220;không thể tin nổi&#8221; và có thể chỉ chênh lệch chút đỉnh so với người mới vào nghề vì cái giá rẻ đến mức không thể nào nâng hơn được vì nếu nâng thì &#8220;một xu dính túi&#8221; cũng không có.</p>
<p><a href="https://thienanblog.com/wp-content/uploads/2015/09/20130912155047-bdsphagia.jpg"><img loading="lazy" decoding="async" class="size-full wp-image-194 aligncenter" src="https://thienanblog.com/wp-content/uploads/2015/09/20130912155047-bdsphagia.jpg" alt="Phá giá Website" width="480" height="440" srcset="https://thienanblog.com/wp-content/uploads/2015/09/20130912155047-bdsphagia.jpg 480w, https://thienanblog.com/wp-content/uploads/2015/09/20130912155047-bdsphagia-300x275.jpg 300w" sizes="auto, (max-width: 480px) 100vw, 480px" /></a></p>
<h3>Nguyên nhân do ở đâu?</h3>
<ol>
<li>Lập trình viên được đào tạo tràn lan nhưng vấn đề chuyên môn vẫn là dấu chấm hỏi với doanh nghiệp và khách hàng.</li>
<li>Chính sách hướng nghiệp ở Việt Nam không tốt, chủ yếu chú trọng quá nhiều vào kết quả của ngành là &#8220;tiền&#8221; vì lập trình viên thường rất nhiều tiền nhưng sẽ đánh đổi bằng &#8220;chất xám&#8221; và thời gian của mình vì vòng đời lập trình viên rất ngắn.</li>
<li>Tâm lý định giá sản phẩm quá rụt rè, nhiều khi thấy ông chủ &#8220;dữ dằn&#8221; quá là sợ.</li>
<li>Do Website được gán mác &#8220;giá rẻ&#8221; tràn lan thì việc định giá trở nên khó khăn vì người mua không cần biết là lập trình viên viết thế nào? Chỉ cần đúng mục đích của họ và thậm chí là chỉ cần chạy được.</li>
<li>&#8220;Tiền nào của đó&#8221; vẫn là câu mà ông bà ta thường xài và nó vẫn đúng trong trường hợp này. &#8220;Ngon bổ rẻ&#8221; chỉ có trong mơ mà thôi&#8230;vì lập trình viên không thể sống bằng &#8220;không khí&#8221;. Kéo theo đó là chất lượng và tâm lý đa số khách hàng &#8220;e dè&#8221; nếu hét giá quá mắc so với thị trường.</li>
</ol>
<h3>Làm thế nào để cải thiện tình hình?</h3>
<ul>
<li>Hãy ra một cái giá hợp lý với công sức mà các bạn bỏ ra, đừng ngần ngại khi hét cái giá mà bạn nghĩ rằng nó quá mắc, bởi vì cũng do chính tâm lý đó mà bạn vô tình &#8220;down&#8221; giá chính &#8220;đứa con tinh thần&#8221; của mình.</li>
<li>Hãy làm một sản phẩm thật chất lượng, hãy cho khách hàng thấy những sản phẩm Demo hoành tráng. Vì họ cần xem bạn làm được gì trước khi thuê bạn, và nếu họ cảm thấy rằng thuê bạn an tâm thì việc giá bạn có mắc hơn thị trường cũng chẳng sao.</li>
<li>Nếu như bạn có khách hàng &#8220;ruột&#8221;, đôi khi giảm giá cho họ chút đỉnh nếu như họ muốn các bạn viết nhiều, như thế có thể gây thiện cảm và hơn hết chất lượng phải đi kèm với điều đó. Như vậy sẽ giúp họ có tâm lý thoải mái hơn khi làm việc với bạn, việc thuê bạn dài dài trong tương lai là chắc chắn vì ai cũng có tâm lý ngại thuê người khác.</li>
<li>Không ngừng trau dồi kỹ năng và công nghệ để viết lên những sản phẩm Demo &#8220;hoành tá tràng&#8221; để gây ấn tượng với khách hàng. Nếu như bạn có những kỹ năng ở đâu cũng có và Website của bạn không có gì đặc biệt thì việc họ thuê ở công ty lớn là chuyện đương nhiên. Vì chẳng ai bỏ tiền ra để mà &#8220;mạo hiểm&#8221; dùm cho bạn cả.</li>
<li>Nói không với mác &#8220;giá rẻ&#8221; vì như vậy sau này bạn sẽ khó có thể phát triển thương hiệu lớn lên được. Vì tâm lý &#8220;giá rẻ&#8221; của thương hiệu đã ngấm vào máu của những người từng sử dụng dịch vụ của bạn.</li>
<li>Vấn đề cuối dành cho các bạn sinh viên, đừng ngại ngùng khi thử sức mình. Và đừng &#8220;dại dột&#8221; nếu nói khách hàng rằng &#8220;mình mới ra trường&#8221; vì như vậy bạn chẳng thể nào mà thương lượng cả, khi buôn bán hãy để chúng ta là người &#8220;Bán dịch vụ&#8221; ngang hàng với khách hàng.</li>
</ul>
<h3>Bớt chém gió và báo giá làm loạn thị trường</h3>
<p>Rất có thể nhiều bạn sẽ thấy lạ, nhưng sự thật vẫn có những người báo giá &#8220;vùi dập&#8221; nhau nhưng họ lại không nhận dự án đó khiến khách hàng cũng phân vân theo &#8220;liệu giá đó có ổn không?&#8221;. Nên nhớ, khách hàng luôn là người quyết định và tâm lý khách hàng rất quan trọng. Đôi khi cũng có người &#8220;ngoại đạo&#8221; vào phá. Vì vậy, hãy chuẩn bị tinh thần để đối chất và đưa ra những bằng chứng cho khách hàng (Sản phẩm Demo) thấy và đừng chỉ nên nói bằng lời.</p>
<p>Những ai đã và đang như vậy thì nên bỏ ngay tính &#8220;GATO&#8221; của đại đa số người Việt Nam mắc phải. Một người, hai người, ba người&#8230; rồi cũng khiến thị trường khá lên. Bỏ ngay cả suy nghĩ &#8220;đơn thân độc mã&#8221; như vậy thì như &#8220;lấy muối bỏ bể&#8221;. Nếu như ai cũng nghĩ như vậy thì Việt Nam cũng sẽ nằm ở vùng trũng của thế giới. Đó là vì sao mà chính người Việt là rất ghét làm với người Việt thay vì nước ngoài.</p>
<h3>Lời kết</h3>
<p>Hãy vững tin với những gì bạn bỏ ra, đừng hạ thấp bản thân mình. Bạn không giúp bạn thì chẳng ai giúp bạn cả, nên nhớ thị trường là phải dìm nhau đến mức ra một cái giá rẻ bèo. Chẳng ai muốn bỏ ra một số tiền lớn cho một sản phẩm mà mình không biết được chất lượng của nó cả. Vậy nên, tạo cho mình thương hiệu cá nhân cũng rất quan trọng khi xin việc hay nhận dự án các bạn nhé.</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/pha-gia-website-van-de-muon-thuo/">Phá giá Website, vấn đề muôn thuở</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/pha-gia-website-van-de-muon-thuo/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kỹ năng nghiên cứu trong lập trình</title>
		<link>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/ki-nang-nghien-cuu-trong-lap-trinh/</link>
					<comments>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/ki-nang-nghien-cuu-trong-lap-trinh/#respond</comments>
		
		<dc:creator><![CDATA[Ân Vũ]]></dc:creator>
		<pubDate>Tue, 11 Aug 2015 11:36:20 +0000</pubDate>
				<category><![CDATA[Thủ thuật lập trình]]></category>
		<category><![CDATA[bế tắc khi lập trình]]></category>
		<category><![CDATA[giải pháp trong lập trình]]></category>
		<category><![CDATA[học lập trình như thế nào]]></category>
		<category><![CDATA[kĩ năng lập trình]]></category>
		<category><![CDATA[kĩ thuật lập trình]]></category>
		<category><![CDATA[Kỹ năng lập trình]]></category>
		<category><![CDATA[Kỹ thuật lập trình]]></category>
		<category><![CDATA[lập trình như thế nào]]></category>
		<category><![CDATA[logic lập trình]]></category>
		<category><![CDATA[nghiên cứu như thế nào]]></category>
		<category><![CDATA[nghiên cứu trong lập trình]]></category>
		<category><![CDATA[suy nghĩ khi lập trình]]></category>
		<category><![CDATA[tự học lập trình]]></category>
		<guid isPermaLink="false">https://thienanblog.com/?p=184</guid>

					<description><![CDATA[<p>Tại sao chúng ta nên học kỹ năng nghiên cứu? Như các bạn cũng biết, lập trình viên chúng ta hằng ngày phải tiếp xúc vô số các công việc&#8230;</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/ki-nang-nghien-cuu-trong-lap-trinh/">Kỹ năng nghiên cứu trong lập trình</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2 style="text-align: center;"><a href="https://thienanblog.com/wp-content/uploads/2015/08/computer-programmer.jpg"><img loading="lazy" decoding="async" class=" size-full wp-image-185 aligncenter" src="https://thienanblog.com/wp-content/uploads/2015/08/computer-programmer.jpg" alt="Kĩ năng nghiên cứu trong lập trình" width="400" height="300" srcset="https://thienanblog.com/wp-content/uploads/2015/08/computer-programmer.jpg 400w, https://thienanblog.com/wp-content/uploads/2015/08/computer-programmer-300x225.jpg 300w" sizes="auto, (max-width: 400px) 100vw, 400px" /></a></h2>
<h2><strong>Tại sao chúng ta nên học kỹ năng nghiên cứu?</strong></h2>
<p>Như các bạn cũng biết, lập trình viên chúng ta hằng ngày phải tiếp xúc vô số các công việc trong dự án. Không ít bạn cũng gặp rất nhiều tình huống oái ăm, những vấn đề không tìm được giải pháp và trở nên bế tắc.</p>
<p>Chúng ta luôn rơi vào tình trạng suy nghĩ rất nhiều và câu hỏi luôn xoay quanh những câu đại loại như:</p>
<ul>
<li>Mình có làm được hay không? Thấy kỹ năng mình kém quá.</li>
<li>Hỏi sếp hay tự giải quyết đây? Mà hỏi vậy có bị chửi không ta?</li>
<li>Mình phải đi tìm sư phụ để thụ giáo thôi, có như vậy mới nhanh lên skill được.</li>
<li>Hay mình nên hỏi đồng nghiệp của mình cho nó nhanh. Nó giỏi hơn mình mà.</li>
</ul>
<p>Đó chính là những câu hỏi rất chi là “ngây ngô” trong giới lập trình viên và ắt hẳn chí ít 1 lần trong đời làm lập trình viên ai cũng từng suy nghĩ như vậy trong những lúc vấn đề bế tắc cả về tinh thần, kiến thức và kinh nghiệm trong hiện tại.</p>
<h2>Học kỹ năng nghiên cứu như thế nào?</h2>
<p>Trước tiên để học kỹ năng này, bạn cần phải có suy nghĩ tích cực như sau:</p>
<ol>
<li>Tự mình nghiên cứu vấn đề mà không phải nhờ vả ai cả.</li>
<li>Không phải ai đều “<strong>tự nhiên</strong>” giỏi cả, họ đã trải qua rất nhiều gian khổ để đạt được trình độ đó.</li>
<li>Bắt tay vào thực hiện ngay vấn đề khó hiểu thay vì nghĩ và nói nhiều hơn làm.</li>
<li>Tập làm bạn với <strong>Debugger</strong> (Công cụ tìm lỗi) nhiều hơn.</li>
<li>Tập không nhớ gì cả… mà hãy nắm vững vấn đề mấu chốt thay vì nhớ.</li>
<li>Cuối cùng là trình độ tiếng Anh cần phải được cải thiện khi có thể ít nhất là kỹ năng đọc. Vì tài liệu viết nhiều hơn là Video để nghe.</li>
</ol>
<p>Với những suy nghĩ trên, có thể bạn nghĩ rằng mình sẽ không làm được đâu? Bạn nghĩ rằng không phải ai đều giỏi…bla..bla. Hàng tá vấn đề khiến chúng ta nhụt chí.</p>
<h2>Đừng nghĩ nữa?</h2>
<p>Hãy bắt đầu tập ngay từ bây giờ! Thế nhưng:</p>
<ol>
<li>Tôi phải làm gì đây?</li>
<li>Tôi phải bắt đầu từ đâu?</li>
<li>Tôi phải đi nghiên cứu cái gì?</li>
<li>Tôi phải sâu chuỗi các vấn đề mới như thế nào?</li>
</ol>
<p>Lại là câu hỏi đúng không các bạn? Thế tới đây bạn vẫn còn muốn đọc tiếp bài của tôi không? Nếu như bạn vẫn đủ dũng khí thì hãy tiếp tục bởi vì nó cần sự “dũng cảm” của bạn. Bạn có dám đương đầu với khó khăn không chính là lúc này. Không phải là nghe những lời mà người khác dạy bạn về “động lực” để tiến lên trong cuộc sống. Nó chỉ là CHÉM GIÓ mà thôi, quan trọng là bản thân bạn.</p>
<h2>Thực hiện những gì?</h2>
<p><a href="https://thienanblog.com/wp-content/uploads/2015/08/How-normal-programmer-see-it.jpg"><img loading="lazy" decoding="async" class="  wp-image-186 aligncenter" src="https://thienanblog.com/wp-content/uploads/2015/08/How-normal-programmer-see-it.jpg" alt="Cách lập trình viên nhìn vấn đề" width="421" height="290" srcset="https://thienanblog.com/wp-content/uploads/2015/08/How-normal-programmer-see-it.jpg 600w, https://thienanblog.com/wp-content/uploads/2015/08/How-normal-programmer-see-it-300x207.jpg 300w" sizes="auto, (max-width: 421px) 100vw, 421px" /></a></p>
<p>Đừng nóng vội, hãy chuẩn bị cây bút hay hiện đại hơn thì dùng “<strong>Notepad</strong>”. Bạn hãy ghi chú lại những gì bạn gặp sau đây ngay từ <strong>BÂY GIỜ</strong> (vì chẳng ai nhớ là mình cần nghiên cứu những gì trước đó đâu):</p>
<ol>
<li>Khi bạn sử dụng thư viện nào đó.</li>
<li>Khi gặp vấn đề khó hiểu.</li>
<li>Khi gặp công nghệ mới.</li>
<li>Khi gặp thuật ngữ khó nhớ và lạ.</li>
<li>Khi gặp được bài viết, video dễ hiểu (Không phải cái nào cũng ghi chú nhé)</li>
</ol>
<h2>Hãy đi từng bước đầu tiên vì bạn không phải là siêu nhân!</h2>
<ol>
<li>Tập sử dụng <strong>Google</strong> nhiều lên, nhất là cách “search” từ khóa là rất quan trọng trong công việc ngày này. Nhất là “search” bằng tiếng Anh và thứ hai là cần trình độ “<strong>tiếng Anh chuyên ngành</strong>” nhất định để đọc tài liệu.</li>
<li>Hãy thực hiện ngay vấn đề khó hiểu mà bạn thấy rằng nó có thể thực hành được. Và có thể tạm thời bỏ qua tìm hiểu khái niệm về nó nếu như đọc hoài vẫn chưa hiểu.</li>
<li>Công nghệ mới rất cần thiết cho lập trình viên, vì thế nên cập nhật liên tục. Thấy hay là đánh dấu lại liền, sau này có nhu cầu thì tự nhiên các bạn sẽ sực nhớ về nó thôi. Chắc chắn vì đó là phản xạ của tiềm thức khi bạn gặp vấn đề phù hợp với nó (Vì câu hỏi sẽ phải áp dụng công nghệ mới đó ở đâu thường là rất khó trả lời).</li>
<li>Thuật ngữ trong lập trình là rất quan trọng, không chỉ giúp ích các bạn trong quá trình “search” mà còn giúp các bạn có vốn “<strong>keyword</strong>” (Từ khóa) khi “<strong>search</strong>”. Như “params, DOM, function, method…”. (Bạn sẽ thấy dễ nếu như các bạn đã từng biết nhưng sẽ khó nếu như bạn là lính mới). Vì thế hãy tập suy nghĩ của mình như một người không biết gì thì phải tìm từ cái gì đi lên như khi xây nhà thì cần bao nhiêu công đoạn?</li>
<li>Bài viết, Video chi tiết có thể giúp bạn hiểu nhanh vấn đề nào đó thay vì phải tự mình “search” rất chi là mệt nhọc. Đừng ngại đọc bài của người khác vì như thế sẽ giúp bạn tiếp thu ngay kiến thức và kinh nghiệm của họ mà trong khi họ phải nghiên cứu và trải nghiệm rất lâu để có thể truyền đạt lại (Ví dụ như bài viết bạn đang đọc là thằng chủ nó cũng “Vắt óc” lên đấy). Nhưng “hòa đồng” không phải “hòa tan” các bạn nhé. Cái nào trong bài viết mà các bạn cảm thấy nó không đúng, hãy mạnh dạn đánh dấu nó lại và tìm hiểu ngay vấn đề đó đừng để nguội (Vì chắc chắn bạn sẽ quên nó vào ngày mai).</li>
<li>Đây là bước cuối cùng, sau khi tìm hiểu vấn đề nào đó thành công, hãy thống kê lại những gì chúng ta từng nghiên cứu vì lúc này cái nhìn của bạn về vấn đề đã thông hiểu và trở nên dễ dàng hơn bao giờ hết. Hãy <strong>tối ưu</strong> lại vấn đề sao cho thực hiện nó <strong>nhanh nhất</strong>, <strong>dễ hiểu nhất</strong> và <strong>càng ngắn càng tốt</strong> như ông Bill Gates đã từng nói “<strong>I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.</strong>” (Tôi chọn người lười biếng cho một công việc khó khăn. Bởi vì một người làm biếng sẽ biết tìm con đường dễ dàng nhất để thực hiện nó). Và quan trọng nhất là bạn không nên tìm sự tối ưu ngay khi chưa biết gì hoặc chưa chắc chắn về nó cả? Hãy cứ làm một cách “<strong>cẩu thả</strong>”, vì khi bạn “<strong>cẩu thả</strong>” bạn sẽ biết cách để làm cho nó “<strong>gọn gàng</strong>” và ngược lại.</li>
</ol>
<p>Lời kết, qua bài viết này mong rằng những thắc mắc cũng như nỗi lo âu của đa số các lập trình viên cũng như các bạn trẻ đang muốn trở thành lập trình viên được giải tỏa. Hãy mạnh mẽ lên, thành công nào cũng phải trải qua gian khó và thất bại. Nhưng qua đó, bạn sẽ trưởng thành lên từng ngày trong cả lập trình và trong cuộc sống. Chúc các bạn thành công trên con đường mình chọn.</p>
<p>The post <a href="https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/ki-nang-nghien-cuu-trong-lap-trinh/">Kỹ năng nghiên cứu trong lập trình</a> appeared first on <a href="https://thienanblog.com">Thien An Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thienanblog.com/thu-thuat/thu-thuat-lap-trinh/ki-nang-nghien-cuu-trong-lap-trinh/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
