Một nền tảng nhỏ
Hôm nay tôi 28 tuổi và tôi chưa bao giờ được đào tạo chính thức về phát triển phần mềm, nhưng tôi có hai bằng cấp giáo dục đại học tương đương với Cử nhân Quan hệ công chúng và MBA điều hành tập trung vào Quản lý dự án. Tôi đã làm việc trên các lĩnh vực đó khoảng 6 năm sau đó, 2,5 năm trước tôi đã nghỉ việc / mất việc và quyết định chuyển hướng.
Sau một tháng suy nghĩ mọi thứ thông qua tôi quyết định bắt đầu tự do phát triển các trang web nhỏ trong WordPress. Tôi tự học theo cách của mình và hôm nay tôi có thể nói rằng tôi điều hành một sự nghiệp khiêm tốn nhưng thành công trong việc phát triển các chủ đề và plugin từ đầu cho khách hàng của mình - chủ yếu là các cơ quan thuê ngoài một số công việc phát triển của họ cho các trang web vừa / lớn.
Nhưng đôi khi tôi chỉ cảm thấy rằng việc không học đủ toán, hoặc không có hiểu biết chính thức về những điều thực sự cản trở tôi khi tôi phải cạnh tranh hoặc làm việc với các nhà phát triển có kinh nghiệm hơn. Tôi liên tục tìm cách để tìm hiểu thêm nhưng dường như tôi thiếu những điều cơ bản.
Thật không may, dành 4 năm nữa cho Khoa học Máy tính không phải là một lựa chọn ngay bây giờ, vì vậy tôi đang cố gắng học tất cả những gì có thể từ sách và tài nguyên trực tuyến. Phương pháp này sẽ không bao giờ khiến NASA thuê tôi nhưng tôi thực sự không quan tâm ngay bây giờ. Mục tiêu của tôi là đầu tiên vượt qua thanh và có thể tự gọi mình là một lập trình viên thực thụ.
Tôi hiện đang dành thời gian rảnh rỗi để học Java cho các lập trình viên (để nắm giữ ngôn ngữ mà mọi người nói là khó khăn / đòi hỏi), đọc các trích đoạn về Code Complete (để nắm bắt các thực tiễn tốt nhất) và cả Code: Ngôn ngữ ẩn của máy tính Phần cứng và phần mềm (để nắm bắt hoạt động bên trong của máy tính).
TL; DR
Vì vậy, tình huống hiện tại của tôi là: về cơ bản tôi có khả năng viết bất kỳ hệ thống hoàn chỉnh nào trong PHP (với sự trợ giúp của Google và một vài cuốn sách), tích hợp Ajax, SQL và không có gì, và có thể chậm hơn một chút so với một nhà phát triển có kinh nghiệm mong đợi do tất cả các nghiên cứu liên quan.
Nhưng tôi đã bị mắc kẹt ngày hôm qua khi cố gắng tìm ra (không phải Google) một giải pháp cho thử nghiệm FizzBuzz vì tôi không có toán tử mô đun if($n1 % $n2 == 0)
phương thức ghi nhớ.
Bạn muốn đề xuất một cách tốt để giải quyết vấn đề nan giải này là gì? Những môn học / cuốn sách nào tôi nên học sẽ giúp tôi giải quyết vấn đề nhanh hơn và có thể "theo cách lập trình viên" hơn?
EDIT - Có vẻ như có một số nhầm lẫn về những gì tôi không biết để giải quyết FizzBuzz.
Có lẽ tôi đã không thể hiện đúng: Tôi biết các bước cần thiết để giải quyết vấn đề. Những gì tôi đã không ghi nhớ là toán tử mô-đun. Vấn đề là trong việc chuyển đổi toán học cơ bản sang chương trình, không phải là biết toán học cơ bản.
Tôi đã làm bài kiểm tra cho vui, sau khi đọc về nó trên Coding H khiếp sợ . Tôi chỉ quyết định đó là một đường so sánh cơ sở tốt giữa tôi và các nhà phát triển được đào tạo chính thức.
Tôi chỉ sử dụng điều này như một ví dụ về cách không xử lý toán học trong môi trường máy tính trước đây khiến tôi mất thời gian tìm kiếm những điều cơ bản như toán tử mô đun để có thể giải quyết các vấn đề đơn giản.
stuck b/c I didn't memorize %
vấn đề, đáng lưu ý rằng có nhiều cách khác để làm điều này: (giả sử $ n2! = 0) if (is_int ($n1 / $n2))
hoặc if (($n1 / $n2) == (int) ($n1 / $n2))
Biết từ khóa là một điều, và biết cách diễn đạt các ý tưởng cơ bản khi không có giải pháp tích hợp là khác.
I'm basically capable of writing any complete system in PHP (with the help of Google and a few books)
và kết hợp điều này với bạn không biếtif($n1 % $n2 == 0)
, tôi tự hỏi về sự tiếp xúc mà bạn đã có với những thứ được viết bằng PHP. Tôi nghĩ rằng hầu hết mọi thứ bạn làm đều vượt ra ngoài một phép tính modulo đơn giản. Bạn có thể cung cấp một số cái nhìn sâu sắc hơn về những gì bạn nghĩ rằng bạn có thể làm?