Lạc xoong

Lạc xoong


[Chia sẻ] Tự học lập trình không phải là học một mình!
Rất hay và hữu ích!/38 người
qsangp
2 thángBình luận: 126
[Chia sẻ] Tự học lập trình không phải là học một mình!
Chào mọi người, hôm nay mình sẽ chia sẻ chi tiết con đường mình đã thực hiện trong việc tự học lập trình. Vào luôn nhé.

1. Cơ duyên

- Khoảng hai năm trước mình giữ chức Giám đốc học thuật của một trung tâm, mình được mời làm sau khi dạy tiếng Anh cho chị sếp của công ty và cho chị thấy hệ thống học tập mình tự làm. Tương đồng với hệ thống mình chia sẻ ở đây nhưng thô sơ hơn - [Dạy học mùa Covid] Tạo hệ thống làm bài và theo dõi tiến độ bằng Google Form và Google Sheet.

- Công việc của mình là tạo ra một hệ thống học tập cho học viên (Learning Management System) dựa trên hệ thống thô sơ của mình: cho phép học viên học, làm bài, xem điểm số. Mình được giao làm việc cùng công ty lập trình A.

- Chi phí đặt hàng khoảng 9x triệu, và mình được bàn giao hệ thống demo khoảng 1 tháng sau đó. Và … đó thật sự là một sự thất vọng vô cùng lớn. Mình hiểu là sản phẩm lập trình sẽ phải trải qua nhiều giai đoạn sửa lỗi và dần hoàn thiện, nhưng mà cái mình nhận được hoàn toàn không sử dụng được. Nhiều lần report, thảo luận nhưng … không buồn kể nữa.

- Sau khi rời công ty, mình vẫn muốn hoàn thiện hệ thống học tập để phục vụ việc giảng dạy, nhưng mà giờ thuê công ty để làm lại sợ tiền mất tật mang, và một suy nghĩ hiện ra: hay là giờ tự học lập trình!

Quảng cáo



2. Biển kiến thức và sự mông lung vô bờ

- Mình bắt đầu search những bài viết về tự học lập trình trên Google, Youtube, mình xem rất rất nhiều bài viết, videos hướng dẫn. Càng xem mình càng … không muốn học … vì không biết phải bắt đầu học từ đâu, nào là frontend, backend, PHP, Swift tá lả âm binh. Sau 1 tuần search và xem video thì mình bỏ cuộc, quá bế tắt!

3. Bạn Lâm .NET Developer

- 2 tháng sau mình vô tình gặp lại bạn học viên cũ và kể bạn nghe về việc mình muốn làm một hệ thống học tập xịn cho lớp (không đề cập vụ tự học vì lúc này mình nghĩ mình không có khiếu lập trình). Bạn học viên giới thiệu cho mình một người bạn tên Lâm - một .NET Backend Developer 5 năm kinh nghiệm. Mình hơi ngần ngại vì sợ vết xưa lập lại nhưng bạn học viên động viên mình cứ trao đổi với Lâm xem sao đã.

- Cái mình nhờ Lâm làm chính là phiên bản Web của App English Journey mình đã chia sẻ ở đây: Học lập trình có khó không? Review quá trình tự học làm App iOS và đăng lên App Store

- Sau nhiều cuộc cafe, trao đổi, họp online thì 1 tháng sau Lâm cho mình bản Demo:
Screen Shot 2021-11-05 at 21.00.02.jpg
Mình khá ngạc nhiên, dù chỉ mới là Demo nhưng mình đã có thể tạo bài học, cho các bạn học viên đăng nhập vào học Speaking ngon lành.

- Lâm là lập trình viên đầu tiên mình kết bạn, mình cảm nhận đây là người lập trình viên giỏi, rất nghiêm túc và có trách nhiệm với công việc. Mình hẹn cafe, trò chuyện nhiều hơn và hỏi về việc tự học lập trình. Lâm là lập trình viên Backend nên khuyến khích mình học từ căn bản, cụ thể hơn là đưa mình một list video online dạy về C# trên Youtube. Mình hớn hở về xem, học theo và … cũng bỏ cuộc sau 1 tuần vì nó khô khan kinh khủng khiếp. Nhưng giờ mình đã có người bạn làm lập trình đầu tiên ^^

4. Bạn Thái Ngọc - Mobile Game Developer

- Tình cờ, mình được cô bé học viên cũ giới thiệu cho bạn Thái Ngọc - Mobile Game Developer, cơn thèm học trỗi dậy liền:

Quảng cáo


Screen Shot 2021-11-05 at 21.12.26.jpg
Lập trình viên ai cũng nhiệt tình hết trơn, chat siêu nhiệt tình ^^

Screen Shot 2021-11-05 at 21.13.23.jpg
Bạn Ngọc cũng tự học lập trình nên tư vấn cho mình cực kỳ tâm lý luôn, mình học được là lập trình có nhiều trường phái từ khó đến dễ: Phân tích dữ liệu → Game → App → Web
Ok mình lại có thêm một người bạn làm lập trình nữa ^^

5. Martha Sharpe - Self-Taught Developer

- Mình có follow chị Huyền Chip và biết thông tin chị nằm trong danh sách LinkedIn Top Voices 2019: Software Development | LinkedIn - vinh danh những cá nhân nổi bật trong ngành, mình kéo xem danh sách thì các nhân vật đều làm việc trong các công ty phần mềm lớn. Tuy nhiên vị trí số 3 làm mình rất là ngạc nhiên:


Screen Shot 2021-11-05 at 21.35.42.jpg
- Chị Martha Sharpe là một người tự học lập trình từ số 0, sau 6 tháng tự học chị đã xin được việc trong một công ty lập trình với chức danh là Frontend Developer. Các bạn có thể đọc bài chia sẻ của chị ở đây: My Journey as a Self-Taught Developer | LinkedIn

Quảng cáo



- Điều hay nhất mình học được từ câu chuyện của chị Martha đó là “Learn publicly” - nghĩa là hãy học theo cách mà mọi người đều biết bạn đang học.

- Chị Martha chia sẻ rằng chị dùng Twitter và gắn hagtag #freecodecamp.org (đây là trang web tự học lập trình rất nổi tiếng, mình đã hoàn thành việc học HTML, CSS và Javascript trên này) cho các bài post để chia sẻ quá trình học, hỏi khi gặp khó khăn, những người thấy hagtag này sẽ vào hỗ trợ và giải đáp. Ghê gớm là chị vừa tự học vừa chăm 4 đứa con, này quá khâm phục luôn!
Screen Shot 2021-11-13 at 06.58.23.jpg
Screen Shot 2021-11-13 at 06.55.10.jpg
- Chị cũng viết một quyển ebook là Teach yourself to code, mình đã mua ở đây Teach Yourself to Code (gumroad.com) và học theo con đường mà chị ấy đã qua, chị học cả React JS, React Native còn mình thì dừng ở chương Javascript thôi. ^^

- Đây là người có ảnh hưởng lớn nhất trong con đường học lập trình của mình, vì nhờ chị mình hiểu là tự học lập trình không phải học một mình, phải có nhiều mối quan hệ xung quanh thì mới học tốt được. Đến đây thì mình đã học thành công Web Development và có nhiều người bạn mới ^^

6. Bạn Liêm - iOS Developer

- Bạn là học viên cũ của mình, đến lớp để học tiếng Anh nâng cao trình độ. Buổi học đầu tiên có phần giới thiệu bản thân thì Liêm giới thiệu mình là iOS Developer, mình hơi ngạc nhiên vì lần trước học thì bạn không làm công việc này. Cuối giờ mình hẹn Liêm ở lại trò chuyện thì bạn kể cho mình nghe câu chuyện tự học lập trình iOS trong 4 tháng rồi đi làm lập trình đến hiện tại là 2 năm rồi.


- Mình bị cuốn hút vào câu chuyện của bạn và muốn bái sư ngay lập tức vì mình cũng đang muốn làm chiếc App Speaking cho học viên học. Chi tiết con đường mình học làm App đã chia sẻ ở bài này nhé: Học lập trình có khó không? Review quá trình tự học làm App iOS và đăng lên App Store

- Điều làm mình nhớ mãi là bạn Liêm cực kỳ nhiệt tình, cho mình mượn sách Lập trình của FPT để học căn bản về biến, thuật toán… Hướng dẫn mình mua khóa học trên Udemy. Tuy nhiên cũng giống như những người mình đề cập ở trên, không ai dạy mình lập trình cả, họ chỉ cho mình định hướng, tài liệu, còn lại mình phải tự mày mò, search Google, Stackoverflow để tự làm ra sản phẩm.

Screen Shot 2021-11-05 at 22.39.48.jpg

7. Tổng kết

Qua bài viết này, mình muốn truyền cảm hứng đến những bạn đang muốn theo đuổi con đường lập trình, đây là những điều mình đúc kết được:
  1. Học lập trình không khó, không giới hạn độ tuổi (mình 29 tuổi).
  2. Hãy kết bạn với những người làm lập trình xung quanh bạn, hẹn cafe để trao đổi, học hỏi kinh nghiệm, bạn sẽ có người để được hỏi, được động viên, hãy tìm cho mình một mentor, đừng dại học một mình. (hãy trả phí cho mentor nếu bạn học được điều quý giá từ họ, đừng chỉ nhận mà không cho đi).
  3. Mentor chỉ cho bạn con đường và định hướng, họ sẽ không dạy bạn code từng dòng một, bạn phải tự đọc tài liệu, code, search Google.

*Mình không phải lập trình viên chuyên nghiệp, nếu bài viết có sai sót xin được mọi người góp ý ạ, chúc các bạn học lập trình vui vẻ ^^
126 bình luận
Học lập trình thì nên bắt đầu bằng những kiến thức cơ bản: kiểu dữ liệu, thuật toán sắp xếp, lập trình hướng đối tượng,... Đa phần thì kiến thức cơ bản này giống nhau ở nhiều ngôn ngữ nên cần nắm chắc cái này trước.
Sau đó tiến hành học nâng cao. Khi học thì nên làm một vài project nhỏ cho riêng mình và build nó 1 cách hoàn chỉnh để sử dụng được. Học lập trình thì phải thực hành thật nhiều mới nhớ và biết sai ở đâu.
Thực hành nhiều cũng giúp quá trinh học nhanh hơn rất nhiều so với học chay. 😃
Trungtd_tt
ĐẠI BÀNG
2 tháng
@Alpaca Dễ Thương Không liên quan nhưng ... alpaca có lên 8$ được không =))))
@Trungtd_tt Tùy khả năng bạn hold thế nào thôi, chứ cỡ nào chẳng được 😆
Anh em mới tiếp cận với code, hoặc muốn học code cho biết, thì có thể thử với Python nhé. Cú pháp dễ học, dễ làm quen, tính ứng dụng cao ngay cả khi anh em không phải làm nghề engineer. Giờ trong công ty mình, các bạn bên business cũng ngồi làm Python ầm ầm
cabk
TÍCH CỰC
2 tháng
@GLES C++ thường dùng lập trình nền tảng, mà VN chỉ thường tập trung ở tầng ứng dụng nên C++ ở VN ít job
GLES
ĐẠI BÀNG
2 tháng
@Duy Luân Yup, bác nói đúng. Điển hình là lão hàng xóm phía bắc của chúng ta, trước thì lúc mới nghiên cứu AI, toàn xài AI framework có sẵn của mấy anh Tây lông build sẵn. Khoảng chừng 3 năm gần đây mình thấy lão đang tự build các AI framework riêng bằng C/C++ nhiều như nấm mộc sau mưa
@GLES mình sắp tới có thể cũng phải tự học C, vì cần performance cao hơn để chạy model trên con Jetson Nano đây
Solus161
ĐẠI BÀNG
2 tháng
@viettiepx2 Mình cũng "AI engineer" mà chả code dc C =)), đang lên kế hoạch học thêm C cho đời thêm nỗi đau chứ code Python nó đúc đích chưa đủ thốn. Bác lâu năm rồi có quyển nào C gối đầu giường không chia sẻ ae phát. Cảm ơn bác.
Nhảy xuống comment cái rồi quay lên đọc, em thích những bài viết chia sẻ tự học lập trình như thế này, do không phải là dân IT mà là dân kinh tế, nhưng muốn học 1 cái ngôn ngữ nào dễ dễ để áp dụng vào công việc.
Cảm ơn bác đã chia sẻ.
@BOT LOC Học office bác ơi.
@ncn_nguyen Office thì em dùng và biết nhiều về excel, em cũng lập trình được vba trong excel, em muốn học thêm cái ngoài xíu như python đó bác.
@seal2002 Em cũng đang muốn học python bác ạ
seal2002
ĐẠI BÀNG
2 tháng
@BOT LOC vậy bạn học Python đi, nếu bạn biết viết VBA thì dễ dàng hơn rồi
seven7773
ĐẠI BÀNG
2 tháng
Huyền Chip , cô bé này trước học Aptech sau mình 1 khoá
zaizai_88
ĐẠI BÀNG
2 tháng
Bài viết hay lắm bạn.
---
Mình ngoài 30 đã từng học lâp trình tại NIIT năm 2009. Nhưng sau mình bỏ nghề theo 3D designer. Sau 1 thoài gian lâu. Mình biết Unity 3D làm game mobile với C# mình tiếp cận. Do bỏ lập trình hơn 10 năm mình chẳng nhớ gì ngoài if, array, for . Mùa dịch, mình ở nhà tự ôn Unity c# và thật tốt mình nắm dc lại. Với kinh nghiệm 3D design rất tốt của mình. Mình đã có thể viết Game và tự trở thành 1 nhà phát triển game độc lập.
@zaizai_88 Mong được đọc chia sẻ chia tiết hơn từ bạn ạ ^^
Mình cũng muốn học mà k biết bắt đầu từ đâu 😁
HMG2020
TÍCH CỰC
2 tháng
@Mr.Whisky Hình như bắt đầu từ pc, vì học lập trình mà không có pc thì ...
Cười vô mặt
zetbluez
TÍCH CỰC
2 tháng
Tự học lập trình xong tự học photoshop, xử lý âm thanh rồi tự một mình mình làm ra một ứng dụng hay game từ A đến Z mà không phải tốn tiền hay nhờ vả ai luôn.
Cười vô mặt
@zetbluez có khá nhiều người làm được như thế, các indie game developer
zetbluez
TÍCH CỰC
2 tháng
@Methylamine Nước ngoài thì cũng nhiều. VN thì mình cũng biết 1 vài trường hợp tự làm từ a đến z 😁
Gatgets
ĐẠI BÀNG
2 tháng
@zetbluez Game Stardew Valley là game do 1 người làm đấy bạn nhé:

Tự vẽ design
Tự code
Tự bố cục, hiệu ứng
Tự làm âm thanh

Và game này rất thành công, đưa người chủ của nó từ 1 anh làm game vì đam mê không tên tuổi đã trở thành triệu phú luôn rồi.
zetbluez
TÍCH CỰC
2 tháng
@Gatgets Code bằng C# và Monogame thì phải.😁
Thời của mình, hơn chục năm trước nếu dân ngoại đạo( ngành nghề khác chuyển qua IT) thì 1 là đi học ở trung tâm, 2 là lên mạng tự mò. Mình ban đầu học chuyên polymer, ra đi làm được thời gian phát hiện khả năng phân biệt màu có vấn đề nên mình nhảy sang IT. Và con đường thành dev của mình chỉ có 1 mình đến lúc xin được việc thì mới có cơ hội học hỏi thêm:
1. Khởi đầu từ pascal, bằng sách giáo khoa cấp 3.
2. Học html,css,js.
3. Học php.
4. Học sql, cấu trúc dữ liệu, thiết kế database.
5. Làm dự án đầu tiên là 1 cái shop bán đồ chơi trẻ em cho khách đầu tiền 😁.
6. Học linux, cài đặt, cấu hình máy chủ ubuntu, centos,...
7. Đến lúc này thì mình đã xin được vào 1 startup do không có bằng cấp gì nên xin khá khó khăn, chỉ có startup này gọi mình lên test trực tiếp vài thuật toán rồi gọi đi làm luôn.
8. Học java, bắt đầu vọc phá, mod, cook rom android.
9. Học nodejs, reactjs.
10. Hiện đang học Flutter.

Và những ngôn ngữ mình học qua ngoại trừ SQL là chuyên môn ra thì còn lại mình chã nhớ gì nhiều, mình chỉ nhờ đặc điểm chính, nó có thể làm gì, cấu trúc ra sao để khi có đụng việc thì google lại cho nhanh.
Mình cũng đang làm bên Bussiness cũng nhảy sang học Python và Data. Cũng tự học mày mò thôi.
hmm học lập trình không khó lắm, chủ yếu là logic tốt và siêng năng là học được thôi 😁
Rất nể những bạn tự học mà làm ra được sản phẩm dùng được 😁
Tóm lại phải có khiếu mới giỏi dc... môn này cần giỏi tư duy ... thường bạn nào khá hay giỏi toán lý hóa thì ok
@Bão Sài Gòn uây không cần giỏi toán lý nhé. Bạn làm game cần thuật toán ô kê la 1 chút. Còn lại mấy cái mình học html css js thì cũng k khó lắm đâu còn mấy công cụ hỗ trợ mysql hay postman,… youtube dạy đầy ấy biết qua qua thôi 🤣. Ngày 45p-1h là oke hiểu phết. Nhức đầu quá qua thử ít Ps, Ai 😃 Mình đại học chuyên ngành hoá học chán việc, tiện nghỉ dịch nên ở nhà học thêm phục vụ mấy dự án bản thân trong 1-2 năm tới
@Bão Sài Gòn sai bét
@Bão Sài Gòn Lý hóa không bàn tới vì nó thiên về bên kỹ thuật hơn.

Riêng về toán thì nếu bạn chỉ làm một tay coder bình thường cho đến khá chắc sẽ không cần nhiều, nhưng để từ "khá" lên "giỏi" thì chắc chắn là cần toán. Chẳng phải tự nhiên mà mọi chương trình khoa học máy tính ở tất cả các trường ĐH đều dạy toán rất nhiều.
Mình background toán, lúc đh ko học lập trình. Sau ra học rồi đi làm dev quèn luôn
godFears
ĐẠI BÀNG
2 tháng
Học lập trình là phải tự học nhé. Kể cả người trong ngành. Giờ tự học lập trình dễ hơn rất nhiều vì có các trang dạy lập trình có lộ trình rõ ràng và rất dễ theo như codeacademy, datacamp, udemy. Đương nhiên là phải biết tiếng anh.
Học lập trình dễ mà
Mình mới đầu tiếp cận lập trình cũng từ Pascal, tuy nhiên chỉ thực sự nghiêm túc học từ khoá Learn Python The Hard Way của Zed Shaw. Rồi lên cao đẳng thì học về Java, desktop app, webapp. Giờ đi làm cũng học thêm cả tá công nghệ trên trời dưới biển 😂 (tất nhiên không phải cái nào cũng sâu rộng hết, vì toàn phục vụ project trong ngắn hạn. Tuy nhiên cũng có nhiều cái mình luôn cần nên cố gắng học sâu hơn nữa)
lần thứ n thấy bài của bạn này, phải nói là khá tâm huyết luôn đó, cảm ơn bạn đã chia sẻ rất tỉ mỉ, mình cũng đang tự học code iOS bằng SwiftUI ở codecademy. Mong sẽ học nhanh được như bạn 😁
thaik05
ĐẠI BÀNG
2 tháng
Rất cảm ơn bạn Quang nhé!
Những chia sẻ của bạn rất hay, mình hiểu hơn về quá trình tự học lập trình.
.
Mình rất muốn tự tay làm một ứng dụng cho công việc hiện tại là "Tính tiền phòng trọ" - mong là sẽ "hoàn thành" được 😁
Nghe hấp dẫn quá. Mai mình học thử xem sao








  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2022 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: 209 Đường Nam Kỳ Khởi Nghĩa, Phường 7, Quận 3, TP.HCM
  • Số điện thoại: 02862713156
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019