Một người có thể có được một nền tảng lập trình vững chắc mà không cần đi học cao đẳng / đại học? [đóng cửa]


28

Đầu tiên, tôi đã tìm kiếm trang web và đọc tất cả các chủ đề "tự học so với đại học" trước đó. Phần lớn các câu trả lời bảo vệ rằng đi học đại học là lựa chọn tốt nhất, vì hai lý do chính:

  1. Đi học đại học cung cấp cho bạn giấy, đó là điều cần thiết để hạ cánh công việc, đặc biệt là trong thời kỳ kinh tế khó khăn.

  2. Đi học đại học mang đến cho bạn một nền tảng lập trình vững chắc, dạy cho bạn những nguyên tắc sẽ rất cần thiết bất kể ngôn ngữ / con đường bạn đi sau.

Đây là câu hỏi của tôi: Tôi hoàn toàn không lo lắng về lý do 1, vì tôi đã có công ty riêng (tôi xây dựng trang web / tiếp thị liên kết) và tình hình tài chính ổn định, vì vậy tôi chắc chắn rằng tôi sẽ không cần phải tìm xung quanh cho một công việc.

Tôi lo lắng về lý do 2 mặc dù. Đó là, tôi muốn chắc chắn rằng tôi sẽ có một nền tảng lập trình vững chắc như bất kỳ ai khác ngoài đó, và tôi tự hỏi liệu điều đó có khả thi với việc tự học không.

Giả sử tôi dành thời gian để nghiên cứu những điều cơ bản, như toán học rời rạc, thiết kế thuật toán, logic lập trình, kiến ​​trúc máy tính, hội, lập trình C, cơ sở dữ liệu và cấu trúc dữ liệu - chủ yếu sử dụng sách, tài nguyên trực tuyến và rất nhiều mã hóa. Nói rằng tôi dành 1-2 năm bao gồm những điều cơ bản.

Bạn có nghĩ rằng nền tảng của tôi sẽ vững chắc, hoặc vẫn còn thiếu so với một người đã học đại học?


2
Có khả năng ít nhất một người trên hành tinh này có thể. Nhân tiện, lý do 1 vẫn còn vấn đề. Khi tất cả những thứ khác đều bằng nhau, "họ" vẫn thường thích một người có trình độ học vấn cao hơn.
Công việc

1
Tôi có thể nói với bạn một điều, bạn sẽ không tìm hiểu ý nghĩa vững chắc ở trường đại học.
Peter Turner


Vấn đề là phải mất mười năm để học lập trình, và dành một số năm này để học tại một số trường đại học có thể giúp ích.
Basile Starynkevitch

Câu trả lời:


17

Hoàn toàn chắc chắn. Vâng nó có thể. Làm sao tôi biết? Bởi vì tôi đã làm nó!

Thật khó. Đừng có ảo tưởng về điều này. Không có gia sư để làm khi mọi thứ không hoạt động, bạn phải tự mình tìm ra vấn đề. Có rất nhiều điều để học và nếu bạn không có động lực hoặc không đủ tận tâm, bạn sẽ không thể làm được. Đối với tôi, tôi cảm thấy khó có động lực về bất cứ điều gì, nhưng tôi thích học và lập trình nhiều đến mức tôi không phải chiến đấu với chính mình.

Một số lời khuyên:

  • Học bằng cách làm! Bạn muốn biết cây nhị phân hoạt động như thế nào? Làm một cái.
  • Làm bằng cách học. Đặt cho mình những dự án đầy tham vọng, nơi bạn sẽ phải học những điều mới để hoàn thành chúng. Thận trọng: Nếu bạn tự đặt cho mình những dự án quá khó thì sẽ dễ trở nên chán nản, nhưng nếu bạn tự đặt cho mình những dự án quá dễ, thì bạn sẽ không học được nhiều. Bạn đang tìm kiếm một vùng bơ.
  • Bắt đầu với C. Ngôn ngữ cấp cao khiến bạn lười biếng. Tôi chưa bao giờ học C nếu tôi học trăn trước.
  • Wikipedia nên là điểm gọi đầu tiên của bạn cho bất kỳ khái niệm nào bạn cần học.
  • Sẽ không có vấn đề gì nếu bạn không bao giờ hoàn thành một dự án duy nhất, (sau tất cả, những gì đã hoàn thành). Điều quan trọng hơn nhiều là bạn học được những điều mới. Điều đó không có nghĩa là bạn không bao giờ nên cố gắng hoàn thành một dự án. Nó có thể là một động lực thúc đẩy lớn để thấy một cái gì đó bạn đã làm việc. Thật dễ dàng để được theo dõi bên, đừng lo lắng nếu bạn làm thế.

Làm thế nào để bạn biết khi bạn được thực hiện? Vâng, lý do bạn đảm nhận một văn bằng là để bạn sẽ thành thạo lập trình. Khi bạn chắc chắn rằng bạn có thể viết bất kỳ phần mềm nào trong một khoảng thời gian hợp lý thì bạn là lập trình viên, nhưng điều đó không có nghĩa là bạn nên ngừng học hỏi.

Ngẫu nhiên, bây giờ tôi đang bị điểm một. Ở xa bất kỳ công ty phát triển phần mềm nào cũng không giúp được gì.


Tương tự ở đây. Tôi đã nhận được một văn bằng cho bài báo. Tôi đã không học quá nhiều, hầu hết mọi thứ tôi đã biết. Tôi đã học được rằng tôi thực sự ghét java hơn tôi nghĩ ban đầu (phải sử dụng nó cho dự án cuối cùng của tôi) và tôi đã có một giáo sư tuyệt vời dạy chúng tôi từ kinh nghiệm cá nhân của mình, nơi tôi đã học được nhiều điều.
Echo nói Phục hồi Monica

@Echo, nó có đáng không?
dan_waterworth

@Dan_waterworth, tôi thích nghĩ như vậy.
Echo nói phục hồi Monica

Tôi nghĩ rằng nó có ý nghĩa hơn nhiều khi bắt đầu với một ngôn ngữ lập trình cấp cao, đặc biệt là với Python. Tất nhiên, nó phụ thuộc vào các loại nhiệm vụ bạn muốn giải quyết khi bạn đã học xong những điều cơ bản: nếu bạn muốn lập trình hệ thống khó, hãy đi theo lộ trình C, nếu bạn muốn phát triển ứng dụng cho người dùng cuối, đừng ' Tôi bận tâm với C và tìm kiếm một cái gì đó như Python.
Zsolt Török

không đồng ý với phần C. bạn muốn ở mức độ trừu tượng cao. bạn có thể lập luận rằng C làm cho bạn lười biếng, học mã máy! nếu bạn không cần loại C hiệu suất, bạn có thể ở lại với trăn.
segfault

12

Tôi nghĩ, chỉ định quan trọng nhất của Cao đẳng / Đại học là dạy cho bạn cách tự học các thứ. Không thành vấn đề, cho dù đó là lập trình, vật lý, hóa học, toán học, v.v. Trường đại học dạy tôi cách học mà không cần ai giúp đỡ.


1
Vâng, tôi đã có bằng về Kinh tế Quốc tế nên tôi phần đó được bảo hiểm.
Daniel

1
Tôi có một người bạn có bằng cấp về một số <noname> và anh ta là một lập trình viên Flash / PHP thành công. Tôi đoán tất cả tùy thuộc vào bạn. Tôi ví dụ có bằng vật lý, nhưng tôi là nhà phát triển phần mềm. Hai năm trước tôi quyết định lấy bằng Thạc sĩ về CS, chỉ vì tôi muốn chứ không phải vì tôi cần.
Sorantis

5
Giáo dục đại học của tôi đã dạy tôi học một ngôn ngữ máy tính mới trong 1-2 ngày từ các hướng dẫn trực tuyến. Nếu bạn có thể làm điều đó rồi, bạn sẽ học được một bài học tuyệt vời.
apoorv020

1
Có, nhưng bạn phải là một autodidact cam kết.
dietbuddha

3
Một số người không cần phải học cách học độc lập.
dan_waterworth

6

Một số người phát triển mạnh trong môi trường học thuật và thậm chí yêu cầu họ học (thường là một dạng động lực). Những người khác (như tôi) thì không và thậm chí có thể tìm thấy họ.

Tôi đã có một sự nghiệp lâu dài trong phần mềm mà không nhận được bằng cấp. Đến cuối sự nghiệp đó, tôi đóng vai trò kiến ​​trúc và kiến ​​trúc sư cao cấp của dự án của tôi nói rằng kiến ​​thức về khoa học máy tính và phần mềm của tôi (hai thứ này không giống nhau!) Dễ dàng tương đương với bằng Thạc sĩ của Đại học Waterloo (một của các trường CS hàng đầu của Canada).

Có một số thiếu sót, tất nhiên, trong kho kiến ​​thức của tôi. Kỹ năng toán học của tôi chỉ đủ để theo kịp những gì tôi đang học ngày hôm nay. Tôi ghét toán học thuần túy và nói chung không thể được cập nhật để cập nhật những gì mới nhất và tốt nhất. Điều này đôi khi đã tạo ra một quan điểm trong sự hiểu biết của tôi về mọi thứ (như, nói, Haskell) cho đến khi tôi có được các kỹ năng toán học của mình đến mức đủ để hiểu các khái niệm. Nhưng sự thật vẫn là thông tin có sẵn mà không cần tôi ở bất cứ nơi nào gần một trường đại học CS hoặc toán. Tất cả những gì tôi thực sự có thể nói là đôi khi trình tự học của tôi là tối ưu - đôi khi tôi phải quay lại và điền vào một số tài liệu nền tảng trước khi tiếp tục những gì tôi đang làm.


4

Tôi nghĩ nền tảng của bạn sẽ vững chắc, miễn là bạn có kỷ luật để thực sự ngồi xuống và dạy cho mình tất cả những điều đó và làm việc thông qua các ví dụ. Tôi có bằng cấp, nhưng đó là về Kỹ thuật, không phải Khoa học Máy tính. Tôi đã làm việc với nhiều lập trình viên chuyên nghiệp xuất sắc, những người đã tự dạy mình mọi thứ họ cần biết. Tự học là điều bạn cần phải có để trở thành một lập trình viên giỏi, vì luôn có một công nghệ mới xuất hiện mà bạn không học ở trường.


3

Như với hầu hết mọi thứ trong cuộc sống, câu trả lời của tôi là một chất rắn, nó phụ thuộc vào từng người . Tôi tin chắc rằng bạn không cần bằng cử nhân để trở thành lập trình viên; tuy nhiên, dựa trên kinh nghiệm của tôi, đại học có xu hướng phơi bày cho mọi người những vấn đề và ý tưởng mà họ không thể tự mình gặp phải thông qua nghiên cứu độc lập.

Trong thời đại ngày nay, một người có động lực có thể lên mạng và nhờ vào các nguồn như MIT Open Courseware , tập hợp một khóa học nghiên cứu độc lập sẽ mang lại cho họ kiến ​​thức khá rộng và đây là kiến ​​thức rộng lớn mà tôi cảm thấy là Điều gì làm nên một nhà phát triển giỏi. Tuy nhiên, ai đó không tự động viên mình có thể thấy rằng họ có thể có được bằng cách học một ngôn ngữ duy nhất và có thể chỉ cần có được sự nghiệp khôn ngoan.

Như tôi đã nói trước đây, tôi cảm thấy rằng chính kiến ​​thức là thứ tạo nên một nhà phát triển giỏi vì điều đó có nghĩa là họ đã tiếp xúc với nhiều vấn đề hơn và đã phát triển kỹ năng giải quyết vấn đề của họ. Bạn không cần phải đến trường để có được kiến ​​thức rộng lớn này, nhưng trường học chắc chắn sẽ giúp trong vấn đề này vì một chương trình cấp bằng tốt sẽ buộc bạn phải phát triển kiến ​​thức.


2

Là một lập trình viên, tôi thấy tôi liên tục chơi với các ngôn ngữ và API không liên quan đến công việc (Ruby on Rails, Python, Node.js, v.v.). Tôi làm điều này vì lợi ích nhiều hơn là vì công việc. Tôi có 2 bằng cấp liên kết nhưng thậm chí sau 10 năm lập trình bằng Java / JEE, tôi thấy rằng tôi thực sự nhớ lý thuyết về bằng BS (Big O, Thuật toán, Toán học rời rạc, v.v.).

Tôi đang tham gia các lớp học buổi tối bán thời gian để lấy bằng Cử nhân về Hệ thống Thông tin Máy tính, nhưng không có nhiều lý thuyết CS được cung cấp trong chương trình này. Tôi nhận được bằng cấp của mình chủ yếu để có "giấy" vì nó kinh doanh nhiều hơn kỹ thuật nhưng đó là lựa chọn duy nhất của tôi cho các lớp học buổi tối.

Kiểm tra MIT Coursware . Nó miễn phí và là một nguồn tài nguyên tuyệt vời để lấp đầy lỗ hổng của lý thuyết CS / Math.


2

Tôi tin rằng thật đáng tiếc khi nghĩ rằng đại học / đại học theo định nghĩa sẽ cung cấp cho bạn một nền tảng lập trình tốt. Họ sẽ dạy cho bạn rất nhiều lý thuyết, và rất nhiều cách khác nhau để suy nghĩ về một vấn đề. Đó là tất cả tốt và tốt, nhưng biến lý thuyết đó thành thực tiễn là một kỹ năng khác nhau.

Cách hiệu quả duy nhất để dạy ứng dụng đúng đắn của lý thuyết là cố vấn và thực hiện. Nói tóm lại, bạn cần cố gắng áp dụng lý thuyết một cách tốt nhất có thể, và dựa vào một người có nhiều kinh nghiệm hơn để đưa ra lời phê bình mang tính xây dựng hoặc chỉ cho bạn đi đúng hướng. Người cố vấn của bạn sẽ không làm việc cho bạn, nhưng sẽ giúp bạn làm việc tốt hơn.

Tôi sẽ không trở thành nhà phát triển như ngày hôm nay nếu không có sự giúp đỡ của một số cố vấn giỏi trong sự nghiệp. Làm việc trên các dự án nguồn mở là một cách tốt để tìm một số cố vấn sẽ sẵn sàng dành thời gian để tìm hiểu chi tiết. Ít nhất đó là kinh nghiệm của tôi. Tôi cũng có một người cố vấn trong công việc lập trình đầu tiên giúp tôi hiểu cách thiết kế các ứng dụng dễ dàng mở rộng.

Vì vậy, có lợi cho trường cao đẳng / đại học? Vâng. Tuy nhiên, chúng không được trang bị để giúp bạn biến lý thuyết thành thực tiễn trừ khi bạn tự mình thực hiện nó. Nếu bạn bắt đầu cố gắng áp dụng những gì bạn đang học khi ở trường đại học, bạn có thể bắt đầu hỏi đúng loại câu hỏi sẽ giúp bạn thực sự hiểu lý thuyết ở mức độ thực tế hơn. Nếu bạn đợi đến khi bạn đi làm, bạn đã trì hoãn quá trình học tập quan trọng đó.


Đồng ý. Gần như tất cả các chương trình kinh doanh tôi đã thực hiện gần giống như làm việc trong một thương mại như thợ mộc. Tôi nghĩ rằng một bài học lập trình tập sự / hành trình / thạc sĩ sẽ hữu ích hơn một trường đại học trong việc học cách lập trình.
cfeduke

2

Mọi người có xu hướng đánh giá quá cao tầm quan trọng của nền tảng lý thuyết, toán học và kiến ​​thức thuật toán IMO. Những lý do khiến các lập trình viên thúc đẩy và phỏng vấn những điều này là vì chính họ là những "người" toán học.

Tất nhiên bây giờ có một số chương trình trong đó thật hữu ích để biết "máy trạng thái" là gì hoặc cách sử dụng tìm kiếm "Booyer-Moore". Thậm chí có một số vấn đề trong đó có thể hữu ích khi biết một số toán học thực sự, như nếu bạn đang làm việc với các tính toán tài chính hoặc mô phỏng vật lý.

Tuy nhiên, điều đáng nói là 90% lập trình nói chung không phải là bất kỳ thứ gì trong số này, không nhiều người trong chúng ta đang thực hiện phát triển thuật toán khó. Hầu hết những điều bạn cần học bạn có thể học khi bạn đi cùng. Không cần phải xây dựng một tòa nhà lớn mà chỉ cần tò mò liên tục làm thế nào để giải quyết các vấn đề khác nhau.

Bản thân tôi tự học 100% và tôi chưa bao giờ gặp vấn đề gì khi tìm hiểu về thuật toán. Tôi đã thực hiện công việc trên các hệ thống tài chính và thậm chí điều đó là có thể thực hiện được mà không cần bất kỳ kỹ năng toán học lý thuyết nào sâu hơn.

Làm tốt việc lập trình không phải là nền tảng, mà là liên tục mở rộng hộp công cụ của bạn và việc học bạn nhận được có giá trị hơn rất nhiều khi bạn có thể đặt nó vào bối cảnh của một vấn đề thực sự cần giải quyết thay vì chỉ nghiên cứu lý thuyết thuần túy.

Bạn không cần phải biết chi tiết mọi thứ, đó là những gì Google, StackOverflow và Wikipedia dành cho :) Bạn tuy nhiên cần biết sự tồn tại của các công cụ và phương pháp khác nhau để nhận ra chúng có thể sử dụng được và áp dụng được vào tình huống của bạn. Bạn cũng cần có kinh nghiệm để biết công cụ nào tốt nhất để áp dụng. Các nền tảng thường được làm hỏng trên người mới bắt đầu vì họ không có kinh nghiệm về lý do tại sao một công cụ cụ thể sẽ hữu ích. Nếu bạn có nhiều kinh nghiệm, một số thứ sẽ chỉ "nhấp" vào vị trí.

Một số điều tôi muốn giới thiệu mặc dù:

  • Nếu bạn chưa có, hãy bắt đầu tìm hiểu về các mẫu thiết kế, đó là công cụ thiết thực và phổ biến nhất trong hộp công cụ của bạn.

  • Đọc một số tổng quan chung về các thuật toán khác nhau nếu bạn tò mò, chỉ để bạn biết những gì ở đó khi bạn có thể cần một thuật toán

  • Tìm hiểu về song song và đa luồng (và một số chương trình chức năng). Có thể hỗ trợ nhiều lõi là điều quan trọng hiện nay và sẽ sớm không thể thiếu được vì vậy đó là kiến ​​thức quan trọng.

  • Thực hiện các dự án sở thích thử thách và thử nghiệm đẩy kỹ năng của bạn về phía trước và buộc bạn phải học mọi thứ trong bối cảnh.


Ước tính của bạn về khoảng 90% lập trình không có nội dung lý thuyết mạnh có lẽ là đúng. Thật không may, hầu hết các lập trình viên sẽ định kỳ đạt 10% còn lại, vì vậy nó là cần thiết.
Orble

2

Một điều mà đại học sẽ giúp bạn với điều đó bạn có thể thấy khó khăn khi tự mình học hỏi là khả năng đọc và hiểu các bài nghiên cứu học thuật đặc biệt là môn toán. Tuy nhiên, ngay cả điều này có thể tự mình đạt được, nhưng nó giúp có người hướng dẫn và đồng nghiệp hướng dẫn bạn trong quá trình học tập để có được kiến ​​thức nhanh hơn và dễ dàng hơn.

Là một lập trình viên chung của các hệ thống thông tin, bạn sẽ không thể đọc các tài liệu nghiên cứu để làm tốt. Các hệ thống thông tin ngày nay khá đơn giản và hầu hết các thuật toán mạnh như tìm kiếm, sắp xếp và lập chỉ mục đều được thực hiện bởi các hệ thống cơ sở dữ liệu. Miễn là bạn hiểu các khái niệm bạn sẽ không gặp khó khăn.

Nếu bạn quyết định tham gia vào các lĩnh vực lập trình khó khăn hơn như phát triển hệ điều hành vi mô, phát triển trình biên dịch, trí tuệ nhân tạo, thì khả năng đọc và hiểu các tài liệu nghiên cứu có thể rất quan trọng để triển khai hệ thống nhanh chóng và hiệu quả.

Theo như có thể áp dụng kiến ​​thức, đó là rất cá nhân. Những người đi học đại học có thể không thể áp dụng các nguyên tắc cũng như một người không học đại học. Có một câu nói cũ rằng, "không quan trọng chuyện gì xảy ra mà là những gì phát ra".

Tóm lại, kiến ​​thức bạn có được từ khi học đại học có thể giúp bạn hiểu rõ hơn và giao tiếp với thế giới học thuật. Tuy nhiên, kiến ​​thức có thể đạt được mà không cần học đại học. Có bằng cấp giúp dễ dàng thuyết phục người khác rằng bạn biết những gì bạn đang làm và có thể hiểu các tài liệu nghiên cứu học thuật.


2

Tôi không nghĩ nhiều người sẽ có được một "nền tảng" tốt như vậy thông qua việc tự học như khi họ đi học đại học, ít nhất là không trong cùng một khung thời gian. Hai năm đọc sách ngẫu nhiên và chơi với các vấn đề về đồ chơi trong thời gian rảnh rỗi sẽ không đưa bạn đến cấp độ giống như hai năm học tập trung với một chương trình giảng dạy có tổ chức. Nó sẽ giúp bạn có đủ để có được bởi? Hoàn toàn có thể. Nhưng nếu bạn thực sự muốn "một nền tảng tốt như bất kỳ ai ngoài kia", thì sẽ mất nhiều hơn hai năm.

Không làm bạn nản lòng, chắc chắn sẽ không lãng phí thời gian. Tôi không tự tin lắm rằng nhiều người có thể kết hợp tương đương với hai năm đại học trong hai năm trong khi điều hành công việc kinh doanh của riêng họ và có một cuộc sống cá nhân / gia đình.


Tôi đã làm. Trên thực tế, phần lớn nghiên cứu của tôi chỉ trong chưa đầy 2 năm (khoảng 6 tháng), nhưng tôi thường xuyên thực hiện 60-70 giờ một tuần.
dan_waterworth

Đồng ý với TMN. Trong CHUNG, giáo dục chính thức của bạn không có ý tưởng về nơi bạn sẽ kết thúc, nó có một số lượng lớn nhất định (tức là có xu hướng bao phủ nhiều lãnh thổ). Ví dụ của tôi về một bài viết trước: Tôi chưa bao giờ nghĩ rằng tôi sử dụng Trình biên dịch xây dựng là một phần của khóa học của tôi. Hóa ra, hơn 20 năm sau đó là một trong những khóa học quan trọng nhất tôi từng làm. Bây giờ rắc rối là, đối với những người không có kiến ​​thức đó ở phía sau đầu - bạn không biết những gì bạn không biết. Và mức độ thiếu hiểu biết đó làm cho bạn kém hiệu quả, về lâu dài.
quick_now

1

Tôi đã phát triển chuyên nghiệp trong một thập kỷ mà không cần bằng cấp. Khi tôi phỏng vấn mọi người, tôi quan tâm đến khả năng giải quyết vấn đề và mã của họ. Nói rằng, có một số công ty / vai trò tôi không đủ điều kiện hoàn toàn vì họ khăng khăng bằng cấp. Một số chuyên gia tư vấn có chính sách này bởi vì họ có thể bán cho bạn nhiều hơn cho khách hàng.


Đây chủ yếu là một vấn đề trong đó việc tuyển dụng được thực hiện thông qua bộ phận Nhân sự (HR). Cách tốt nhất để giải quyết vấn đề này là xây dựng một mạng xã hội kinh doanh gồm các nhà quản lý CNTT biết bạn hoặc ít nhất là bạn, và hãy thử thực hiện quy trình "lọc" nhân sự. Nói cách khác, những người không có bằng cấp có xu hướng phải giỏi hơn trong việc tiếp thị các kỹ năng và dịch vụ của họ, thay vì áp dụng cho các vị trí được quảng cáo. Hầu hết các nhà quản lý CNTT có thẩm quyền sẽ thuê dựa trên hồ sơ theo dõi vững chắc và danh tiếng (tức là giới thiệu từ người mà họ tin tưởng). Đừng mong đợi để có được một công việc của chính phủ. Ngày nay thật hiếm
mctylr

1

Nếu bạn chơi trò chơi số, những người có bằng cấp có được công việc tốt hơn và được trả lương.

Không phải ai có bằng cấp cũng học / nhớ bất cứ điều gì.

Hầu hết mọi người sẽ không dành thời gian để tìm hiểu nhiều về lý thuyết / nền tảng / kiến ​​thức cơ bản như khi họ học đại học. Có thể cha mẹ bạn sẽ hỗ trợ bạn trong suốt 4 năm tự học; mọi người khác phải có một công việc.

Hạn chế sẽ là nếu bạn có bằng CS và thất bại ở một mức độ nhất định, bạn có thể được xem là có mã lực thấp. Hãy đối mặt với điều đó, nếu bạn không nhận được nó sau 4 năm cho ăn bằng thìa, bạn sẽ không tìm ra nó ở bên cạnh trong khi giữ và làm việc toàn thời gian. Tất nhiên ngoại lệ.


1

Nếu bạn thực sự muốn kiếm sống trong lĩnh vực phát triển phần mềm mà không cần bằng cấp, tôi đề nghị những gì bạn làm là liên hệ với Đại học địa phương của bạn. Nhận từ họ một danh sách các khóa học sẽ được yêu cầu là bạn có được một văn bằng. Phần lớn các trường đại học sẽ có sẵn thông tin đó theo yêu cầu, cũng như tóm tắt / giáo trình / danh sách sách cho mỗi khóa học. Đi xuống danh sách đó. Tra cứu những cuốn sách trong câu hỏi. Xem những chủ đề họ bao gồm. Nếu bạn thấy bất cứ điều gì được bảo hiểm mà bạn không hiểu, hãy mua / xem cuốn sách và tìm hiểu nó. Khi kết thúc quá trình đó, ít nhất bạn nên biết những gì bạn biết và những gì bạn không biết, và khá cạnh tranh với bằng tốt nghiệp đại học trung bình của bạn (dù sao ai cũng có thể đã ngủ / bị lừa qua một số khóa học đó).


1

Giả sử tôi dành thời gian để nghiên cứu những điều cơ bản, như toán học rời rạc, thiết kế thuật toán, logic lập trình, kiến ​​trúc máy tính, hội, lập trình C, cơ sở dữ liệu và cấu trúc dữ liệu - chủ yếu sử dụng sách, tài nguyên trực tuyến và rất nhiều mã hóa. Nói rằng tôi dành 1-2 năm bao gồm những điều cơ bản.

Có và không. Một số thứ rất khó nắm bắt mà không có giáo viên. Thông thường đó là những thứ toán học hơn.

Tôi tin - và vẫn tin sau khi giúp bắt đầu chuyên ngành CS với tư cách là một TA - rằng bất kỳ ai không bị chậm phát triển trí tuệ đều có thể học cách viết mã ở cấp độ PHP / Java / C #. Về cơ bản, nó không phải là khó.

Cũng không, đối với vấn đề đó, là lắp ráp và các lĩnh vực công nghệ khác mà bạn đề cập. Đó là những chi tiết triển khai tốt để biết.

Cấu trúc dữ liệu, thuật toán, thiết kế kỹ thuật số, kiến ​​trúc máy tính và đại số cơ sở dữ liệu khá khó, nếu việc học sâu.


0

Tôi không có nghi ngờ rằng một người có động lực và tận tụy có thể đạt được một nền tảng vững chắc nhưng nếu bạn chọn không đi lấy bằng cấp, bạn sẽ bỏ lỡ nhiều khía cạnh sẽ tăng cường sự phát triển của bạn. Một trong những điều này và có thể là quan trọng nhất là sự tiếp xúc với những người có cùng suy nghĩ mà bạn có thể trao đổi ý tưởng và khái niệm. Nó cũng rất hay để có thể lắng nghe kinh nghiệm của những người chỉ dẫn, những người có trí tuệ quý giá để truyền đạt và đôi khi có thể nói thẳng ra những khái niệm bị hiểu lầm trong một hoặc hai câu. Thật tuyệt khi có thể làm rõ các khái niệm tại thời điểm tiếp xúc ban đầu thay vì sau đó có những ý tưởng sai lầm chìm vào và phải sắp xếp nó sau.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.