Kiến thức lớp 1 trở thành lập trình viên?

Xin chào mọi người! Em tên là Sang, sinh năm 2004 (hiện tại 17 tuổi :smiley:).
Em xin kể câu chuyện của em nghỉ học từ lớp 1 và làm code trong sự nghiệp :smiley:

Em đã nghỉ học từ lúc đã học xong lớp 1 (đầu năm vô nhận lớp 2 mà bị gì không chịu đi nhận :V) ,
Thế là em đã nghỉ học ở nhà. Ba mẹ em là người rất dễ, nên việc con cái nghỉ học cũng không chửi bới, đánh đập gì cả. Thời gian quanh đi quanh lại, em bị dụ dỗ đi chơi nét, và em đã chơi từ lúc hè của năm lớp 2. Game đầu tiên em chơi là phá hoại đường phố (GTA), và ngày qua ngày liên tục như vậy.

Cũng giống như công nghệ không ngừng cải tiến, em chơi từ game này qua game nọ, tự “upgrade myself up”. Cho đến năm 12 tuổi (hình như là lớp 7), em bắt đầu thấy tò mò về cấu trúc game, như tại sao nó lại hoạt động, bla bla… Em đã tìm tòi và học về code.
Lúc đó em học về C++ (từ một game có tên GTA - San Andreas Auto theft). Nó cùng là 1 nhà phát hành Rockstart. Thời gian đầu thì em khá là mịt mờ (đã số toàn paste/copy).

Thường, với các máy chủ mặc định ở Việt Nam cho đến hiện nay (2021), thì 90% điều dùng model có tên là NGG do 1 development team của Next Gaming Gerenal gì ấy. Bản thân em cũng xài xem nó như thế nào. Em thấy nó là 1 package phát triển phổ thông nhất, library bên đó được chia ra 2 nhánh (và hầu như chọn nhánh 2):

  • Nhánh 1 là modules (Phân loại ra : Core/Num/Account/DATA).
  • Nhánh 2 là tổng hợp lại thành 1 module (tích hợp var/func/enum như cháo heo vậy á).

Sau 2 năm làm quen, em cân hết 1 Server. Về MYSQL/SERVER/SCRIPT/SUPPORT GAME, hầu như em cân toàn bộ, nhưng việc script thì em khá tệ. Em chỉ có thể copy và paste. Nếu như server cần cài đặt ý tưởng mới, em sẽ lấy 1 code mẫu đã được hoàn thành, phân tích nó, rồi sau đó làm tương tự cho server của em. Em sẽ thay đổi cấu trúc của code rồi tính toán đúng để cho ra result.

Máy chủ của em đã có tiếng (đã open thời 2014 tính từ 2019, em biết là cũng 4-5 năm rồi, và máy chủ đã đạt full số lượng 150 Player). Em đam mê là chính nên đi làm free :))

Code thì cũng nhàn nhã lắm, em chơi thành khách quen, nên chủ tiệm tin tưởng cho coi tiệm nét. Về tiền bạc thì ngày em nạp 8 tiếng sáng đủ rồi :smiley:
Sáng thì em code từ 7h sáng -> 5h chiều, tính coi cỡ 10 tiếng. Đang code, nhiều khi em phải login vào tài khoản admin của quán net vì hết tiền, nên có khi tới 6h chiều chứ không phải 5h chiều mọi người ạ.

Tiệm nét cũng khá là vui. Ông chủ ông ấy bên Bitcoin, rich kid vãi (hiện giờ xây nhà giống bà Tân vlog). Tiệm nét từ sáng đến tối được 3-5 người chơi :)) (trước nó đông lắm. Anh em biết thời nét tai nghe màu yellow đấy nó lag mà vui. Ở dưới Đồng Nai tui vẫn còn, mà hiện giờ 2021 nha).

Tiệm nét mở 5-6 năm rồi, công nghệ thời < 2015 nó chưa hẳn là tiên tiến, nhưng ổng không nâng cấp cấu hình máy gì hết. Cứ khách vô “nạp em 10k” là chiến LOL/Fifa thôi.
Thời đó, đồ họa fifa/lol nói thẳng là như sh*t. Oh no, bug khá nhiều. Fifa cũng tương tự animation của Fifa, lực ma sát lúc đó không được tốt, mặc đù đã hết sức có thể của developer nhưng mà vẫn không hoàn thiện (cho đến FIFA 4 đã khắc phục). Trái bóng cứa lòng ảo đến nổi mà thủ môn +10 chắc cũng ko đỡ nổi (thực ra, đến FIFA 4 thì khắc phục được chút chứ không hẳn).
Thế là, tiệm nét nó vắng như chùa bà Đanh. Mà nhờ thế, em mới code dễ hơn được, không phải chạy lên chạy xuống. Code xong thì về tắm rửa, xong tới 7h lên code tiếp đến 10h (có khi 10h30), xong về.

Ui, vòng tuần hoàn của em khá là cồng kềnh. Sau này em mới bắt đầu học viết, học thêm về biến, và em mò từng language (C++, C#, C, PHP, SQL, JAVASCRIPT, JAVA, HTML, CSS, PYTHON, PASCAL). Em thấy bên mảng web thì nó “âm binh” nhất.
Em thấy em tiếp thu được C++ hơn (dù C# em học để viết launcher Game), tuy nhiên, em thấy nó không dễ như mình nghĩ.

Rồi em học Unity 3D làm 1 game (nhà em không có điều kiện. Khi bật PC lên, double click vào “Unity 3D” thì CPU lên tới 100000% :)) ). Nó phải trừng trị em thì em mới không dám mở, thế nên em đành phải delete.

Hiện giờ thì em đang học C++ từ mấy tài liệu trên mạng, và vì thế, việc paste/copy code cũng ít đi so với trước. Em học Toán tử 3 ngôi , if-else , switch , var , enum , arr, function… Học xong là em có thể viết 1 system theo ý mình trong game GTA San (cũng khác hẳn hơn lần trước).

Em học đến bài 40 của Codelearn là em bất đầu lúng túng rồi (về phần list C++). Tuy nhiên, em vẫn còn rất muốn học. Em có đi xem những chuyên gia, họ nói là học cách tư duy, chứ học cách code thì suốt đời vẫn kém.

Mọi người cho em xin lời khuyên và nên học cách nào cho hiệu quả với ạ!

Em có học thêm tiếng Anh nữa (em nghe đỡ hơn là đọc, em bật phụ đề của kênh youtube “TED talk” - cái kênh này nói về doanh nghiệp, hay là định hướng, giống mấy ông Huỳnh Thanh Bình hay Thành Long gì đấy, mà bên đó thuyết trình bằng nhiều ngôn ngữ, đa số là tiếng Anh). Em có thể dịch gần như là 75% của 1 clip cỡ 15-20p nên em nghĩ tiếng Anh của em cũng được sơ sơ. Vì thế, việc đọc tài liệu cũng đỡ.

Lời cuối em cám ơn ạ!

EDIT (@library): Cậu chú ý viết tiếng Việt đúng nhé! :smile:

Dấu chấm của bạn đâu? Đọc cả đoạn dài không thấy dấu chấm nào cả…

2 Likes

đọc 30s thấy đau mắt, nhức đầu quá, tóm gọn lại thành 2 3 câu cho những người sau này đi thím :rofl:

3 Likes

“Túm” lại là mình cầm nhiều chấm - phẩy hơn và nội dung tóm gọn lại.
Đọc được 1 khúc thì mình đứt hơi rồi.

2 Likes

tóm tắt:
hỏi kiến thức trở thành lập trình viên đàng hoàng
đã vọc qua:

  • c++ : để học cách làm server game GTA
  • sau này học thêm C#, C, PHP, SQL, JS, JAVA, HTML, CSS, PYTHON, PASCAL nhưng sương sương
  • c# học viết launcher game. còn c++ học có thẻ tiếp thu hơn
  • có học qua unity 3d
  • đang học c++ chuyên sâu
  • tiếng anh khá ổn (dịch được ted talk 75%)

mong mọi người tư vấn nên làm gì tiếp theo dể trở thành lập trình viên đúng nghĩa


nên xem mình muốn lập trình cái gì trước thì mn mới tư vấn. như muốn thành lập trình game chẳng hạn

6 Likes

em xl mn em đã sửa lại :((

em thì muốn làm 1 game rồi phát triển hơn là đi làm cty
1 phần cũng muốn đi làm cty để cho biết thêm kinh nghiệm tại mình từ nhỏ tới lớn kiến thức vốn là đã không có rồi nên cũng khó

và em muốn hỏi thêm là làm thế nào để trao dồi thêm kiến thức + tư duy em thấy việc học trên mạng có lẽ là giup2 mình nhớ cú pháp chứ ko hẳn là nâng tư duy (ý là việc code)

Uầy bạn đỉnh quá, mà bạn nghỉ học từ lớp 1 thì bạn tự học tiếng anh bằng cách nào vậy, nghe hiểu được 75% luôn .

em đọc từ vụng rồi dịch nó ra kết hợp câu tiếp theo
example - i go to shool
i tôi
go đi
to đến
shool trường học

  • trường hợp or tình huống hiện tại rồi em phân tích ra
    vì em dịch như vậy dễ đọc ra được nó nói cái gì mà nghe thì khá kém

với kiến thức vốn có của lập trình hầu như những dòng code điều là en

1 Like

hoc hết lớp 1 mà có khả năng học qua một đống thứ như vậy thì chỉ có 1 thể là

  1. chém gió, spam topic
  2. khả năng tự học cực cao, mà đã như vậy thì chắc chắn cũng không cần tạo topic như này
4 Likes

như trên em đã nói em hướng về C++ nhiều hơn mấy thứ khác em đã vọc/học sơ sơ qua chứ ko hẳn là em biết rõ tất cả ở trên e cũng nói mà a

việc em lướt tiktor còn sướng hơn là ngồi viết 1 đoan văn thơ dài đến như v để chém gió rồi còn viết sai vấn đề thụt dòng các dấu phẩy và em đã sửa lại h em lại có thêm 1 kiến thức mới là viết phải có nề nét vì em chưa bao giờ viết dài như vậy

" thì em thấy C++ là em tiếp thu được hơn
“nói riêng” (C# e học để viết launcher Game)
“nói chung” mà thấy không dễ như mình nghĩ

1 Like

Mình khâm phục nghị lực và đam mê của bạn.
Vì bạn không học bài bản và phải tự học, nên có những thứ bạn có thể không được hướng dẫn để học. Bạn có thể tìm hiểu về các vấn đề sau:

Các thuật ngữ ở trên mình tạm dịch tiếng Việt cho bạn tham khảo, nhưng tốt nhất là nên sử dụng Tiếng Anh để tìm kiếm bài viết (kể cả bài viết Tiếng Việt).

3 Likes

dạ mình học thêm mấy cái đó để hiểu rõ hơn về network phải không a ạ hay để áp dụng một cái gì đó

Chào bạn ! Bạn có thể bạn chưa nghe câu bằng cấp ko quan trọng với 1 lập trình viên.
Vì sao lại như vậy ? Tôi sẽ chỉ ra cho bạn những nguyên nhân sau:
Khi bạn học kiến thực 1 ngành nào đó để làm việc, bạn sẽ ko sử dụng hết những kiến thức bạn đã học để làm việc mà chỉ là sự nâng cao đối với kiến thức chuyên ngành.
Nhưng đối với dev thì kiến thức chuyên môn của chúng ta học hỏi ngày một nhiều, sự thật trường lớp ko dạy ta nhiều bằng internet. Nên học trên internet là sự lựa chọn tuyệt vời với tất cả mọi người.
Điểm tiếp theo học lập trình giúp ta ngày càng tăng chỉ số iq. Vì vậy bằng cấp của bạn sẽ ko giới hạn khả năng phát triển của bạn đc.
Cái cuối cùng thì nên nói thực tế. Bạn có thể tìm những tin tức về độ tuổi đến với lập trình. Lập trình viên nhỏ tuổi nhất thế giới mới 4 tuổi (còn chưa đc học lớp 1) và 1 cụ bà 80 mấy tuổi ở Nhật còn code game.
Với tất cả những điểm trên hi vọng bạn có thể tự tin về khả năng của mình hơn với bằng cấp hiện tại.
Bonus bạn thêm 1 câu nói nổi tiếng của nhà khoa học Albert Einstein " Ai cũng là thiên tài. Nhưng nếu bạn đánh giá một con cá qua khả năng trèo cây của nó, nó sẽ sống suốt đời và tin rằng nó thật đần độn".
Hãy phát huy khả năng của mình chứ ko phải là theo đánh giá của người khác.

Học những cái trên là “Kiến thức để trở thành lập trình viên” hay cao hơn là “Kỹ sư máy tính”.
Vì bạn không được đào tạo qua trường lớp, nên những cái ở trên là những kiến thức mà trường lớp chính quy trang bị cho học sinh, sinh viên mà bạn NÊN tìm hiểu.

Bạn có thể hiểu những thứ mình nêu ở trên như là nội công tâm pháp. Còn những thứ bạn học như C++ C# C PHP SQL JAVASCRIPT JAVA HTML CSS PYTHON PASCAL Unity 3D MYSQL/SERVER/SCRIPT/SUPPORT GAME chỉ là chiêu thức võ công. Nếu bạn muốn thành cao thủ võ lâm thì cần luyện nội công nữa. Có nội công rồi thì học gì cũng dễ hơn.

3 Likes

da e cam on a em co the biet them nhieu thu hon

cam on anh da chi em em se ghi nhan a.

Hi Sang,

Tớ có đọc bài viết của cậu. Bỏ đi tất cả những nhược điểm của cậu, tớ có thể thấy cậu là một người đã tìm thấy được đam mê, cũng như thể hiện đúng tinh thần của một kỹ sư chân chính. Tớ nghĩ đam mê, tình thần cầu tiến, ham học hỏi của cậu vượt xa rất nhiều bạn đang học đại học và bối rối về tương lai của mình (có thể tính thêm cả phép lịch sự của cậu - khi cậu biết cảm ơn và xin lỗi mọi người - cậu hơn rất nhiều bạn có trình độ đại học mà tớ biết về điều này :smile: ).

Tớ có thể thấy, cậu có một số kiến thức cơ bản về lập trình, và cậu có một điểm rất quan trọng, điểm đặc biệt nhất của cậu, đó là cậu bỏ rất nhiều công sức để thử nghiệm, hiểu và hoàn thành những dự án riêng của mình, với một sự bền bỉ đáng ngưỡng mộ (theo lời kể của cậu).
Tớ tin là nếu cậu được tiếp cận với một nền giáo dục tốt, cậu hoàn toàn có thể tiến xa hơn rất nhiều.


Tớ sẽ trả lời một số câu hỏi của cậu.

Đây là một câu hỏi rất rộng. Thường, câu hỏi rộng như vậy, cậu sẽ không nhận được câu trả lời chi tiết đâu. Câu hỏi tìm câu trả lời:smile:
Tớ sẽ trả lời chung chung như thế này, không có cách học hiệu quả cho tất cả mọi người đâu. Mỗi người có một background (hoàn cảnh) khác nhau, trình độ khác nhau, tính cách khác nhau, cũng như khả năng chi trả khác nhau. Cách học hiệu quả nhất phải dựa trên các điều kiện này.
Tuy nhiên, in general, cậu nên theo một giáo trình - course nào đó ở đại học. Những course này sẽ giúp cậu có được những kiến thức cơ bản. “Tư duy” là thứ chỉ có tác dụng khi cậu diễn giải, giải thích một thứ gì đó từ kiến thức cơ bản.
Điều này tớ nghĩ sẽ giúp cậu trả lời được câu hỏi này:

Về việc trau dồi (không phải “trao dồi”) thêm kiến thức, cậu cần đọc nhiều hơn, tiếp xúc với những người mà cậu muốn trở thành, làm công việc mà cậu muốn làm. Đó là cách đơn giản để cậu có thể trau dồi kiến thức, ngoài cách đi học.
Tớ nghĩ cậu đã biết cách này rồi, phải không? :smile:

Những gì @nitro2 đề cập là các kiến thức cơ bản, thứ giúp cậu hiểu những thứ khác dễ dàng hơn.
“Học” là việc “connect the dot” (nối các điểm). Mỗi kết nối là sự liên hệ giữa các kiến thức (các điểm) mà cậu có.
Nếu cậu không có sự kết nối giữa các điểm, cậu sẽ không có bức tranh toàn cảnh về hiểu biết ở lĩnh vực đó.
Nếu cậu càng có nhiều điểm, việc liên kết nó với một điểm mới (kiến thức mới) càng dễ hơn, hay nói cách khác, cậu học nhanh hơn (đó là lý do người càng học nhiều thì học càng nhanh).


Giờ, tớ muốn cậu cải thiện một điểm, đó là cách cậu viết tiếng Việt.
Tớ đã sửa giúp cậu bài viết #1 của cậu ở đây. Tớ hi vọng cậu thấy bản sửa của tớ đã diễn đạt đúng ý của cậu.
Tuy tớ đã sửa giúp cậu bài viết theo đúng tiếng Việt ở đây, cậu vẫn cần cải thiện:

  • Viết đúng tiếng Việt. Cậu cần để ý tới chính tả, cách dùng dấu chấm, dấu phảy để ngắt câu, và viết tiếng Việt có dấu.
    Cậu là người Việt Nam, do đó cậu nên viết tiếng Việt đúng.
  • Giảm việc sử dụng “thì”, “là”, “mà”. Đó là văn nói rồi cậu :smile:
    Tớ có để ý cậu dùng rất nhiều “thì”. Đó là một cách diễn đạt khi cậu nói, nhưng khi viết, cậu hoàn toàn có thể bỏ nó đi (vì nó không thêm bất cứ nội dung gì).
  • Cậu nên học chút về cách nghị luận. Cậu nên thử tìm hiểu 3 khái niệm: “quy nạp”, “diễn dịch”, và “tổng phân hợp”.
    Hiện giờ, tớ có thể thấy cậu đã kể rất nhiều câu chuyện, rồi đưa ra một câu hỏi ở giữa bài viết, sau đó kể tiếp một câu chuyện khác. Đó không phải cách trình bày mạch lạc đâu :smile:

Tớ biết những điều trên rất khó để sửa - một phần vì thói quen của cậu, phần nữa, tớ nghĩ cậu có thể nghĩ rằng, chỉ cần nói và đối phương hiểu là được, chứ không cần chỉn chu lắm. Tuy nhiên, đây là bước đầu tiên để cậu giao tiếp hiệu quả hơn.
Cậu có thể thấy, cậu đã đi lòng vòng như thế nào trước khi đưa ra câu hỏi, và tất cả bọn tớ đều vất vả như thế nào để hiểu ý của cậu. Đó không phải là cách giao tiếp hiệu quả lắm, và nó có tiềm năng cản trở cậu sau này, khi cậu đưa ra bất cứ câu hỏi nào đó mà mọi người không ai hiểu, hoặc tốn rất nhiều công để hiểu.
Vậy nên, sửa nó dần dần nhé! :smile:

6 Likes

dạ kkk lý do mà em lên đây hỏi là vì em muốn kiếm thêm 1 chút động lực lẫn tư duy mới , sau khi em lên trên diễn đàn này em đã học được nhiều thứ hơn mặc dù em biết là cách học là mỗi người 1 cách riêng khái niệm riêng , nhưng em vẫn lên đây hỏi nếu em đã phiền ai thì em xin lỗi , nhưng việc học hỏi thêm thì không bao giờ ngưng nên em luôn luôn nghe các đàn anh đi trước đúc kết được ra kết luận như thế nào và em xem họ đã đi trúng hố nào em có thể né được (50%).
lời cuối e cám ơn ạ.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?