Berapa lamakah masa penggunaan Code Code percuma?

Saya menghabiskan akhir musim sejuk di kabin yang dipanaskan dengan tenaga suria di Utah Utara. Tidak ada pancuran mandian, tetapi kami memasang satelit ke bumbung dan berjaya menarik internet lebih pantas daripada pangsapuri saya di San Francisco. Saya memutuskan untuk belajar membuat kod.

Saya mahu menggunakan pengasingan untuk mempelajari sesuatu yang baru. Saya telah berfikiran secara teknikal selama yang saya ingat, tetapi percubaan pengkodean masa lalu saya telah memberikan hasil yang tidak memuaskan.

Saya belajar beberapa C ++ di sekolah menengah tetapi kebanyakannya menulis kod besar, berulang kerana saya tidak memahami fungsi. Saya mengikuti kursus Visual Basic .NET dalam kelas tetapi saya hampir tidak mempunyai memori mengenai apa yang berlaku di sana. Saya bekerja melalui kursus JavaScript Codecademy beberapa tahun yang lalu dari tempat tidur gantung di Guatemala.

Saya rasa jalan tidak belajar sepenuhnya ini mempersiapkan saya dalam beberapa cara. Saya juga memiliki gelar dalam Grafik Komputer, yang jauh lebih fokus pada reka bentuk, animasi, dan pemodelan daripada pada pengekodan, tetapi itu memberi saya pengetahuan asas mengenai HTML / CSS.

Banyak yang telah ditulis mengenai "mengapa pengkodan" jadi saya tidak akan mengalahkan kuda mati di sini.

Versi ringkasnya adalah: orang pintar nampaknya bersetuju bahawa mengetahui bagaimana membuat kod adalah pengganda kekuatan untuk hampir semua perkara lain dalam hidup anda.

Setelah mencari-cari di dalam talian untuk menentukan tempat terbaik untuk memulakan, saya memutuskan untuk mula bekerja melalui Free Code Camp. Naib juara adalah Projek Odin tetapi Reddit nampaknya bersetuju bahawa FCC adalah titik permulaan yang lebih kuat. Dan atas sebab apa pun, saya mempercayai fikiran sarang Reddit ketika membincangkan perkara ini.

Oleh itu, saya menetapkan matlamat awal kecil 2 jam / hari dan memasang RescueTime untuk mengesan diri saya. Inilah gambaran bagaimana keadaannya.

HARI 1

Saya bekerja dengan cepat melalui tiga bahagian pertama. HTML5 / CSS, Reka Bentuk Responsif dengan Bootstrap, dan jQuery mempunyai anggaran masa penyelesaian 13 jam, tetapi menurut RescueTime saya mengetepikannya hanya dalam empat jam. Pada ketika ini saya tertanya-tanya apakah saya melakukan sesuatu yang salah, tetapi saya memutuskan untuk mengucapkan tahniah kepada diri sendiri dan terus maju.

HARI 3–4

Saya telah berjalan lancar dan bergerak lancar melalui bahagian Basic Javascript. Pagi-pagi pada hari ke-3 saya mula merasa tersekat buat pertama kalinya dalam latihan Pencarian Profil yang melibatkan penggunaan gelung untuk berulang melalui pelbagai objek. Tetapi pada pukul 10:30 malam, saya telah berjaya menyelesaikan Skrip Algoritma Asas (dan menurut RescueTime saya telah menghabiskan masa selama 12 jam 20 minit di Free Code Camp).

Keesokan paginya saya mula menggunakan algoritma asas yang lain, menulis beberapa penyelesaian dalam 3-5 minit. Saya mengesahkan dalam perbincangan FCC bahawa banyak orang memulakannya dengan cepat dan perlahan dari masa ke masa kerana kesukaran relatif meningkat (sehingga menjadikan anggaran masa penyelesaian menjadi lebih realistik).

Yang mengatakan, pada malam hari keempat saya telah menyelesaikan algoritma dengan jumlah keseluruhan 18 jam di FCC (dan dianggarkan 22 jam dari jumlah masa kerja yang dihabiskan untuk sumber penyelidikan lain seperti Rangkaian Pembangun Mozilla. pada ketika ini adalah 75 jam.

Matlamat mikro asal saya selama 2 jam / hari telah membuat saya berfikir bahawa saya telah menyelesaikan 100 jam kerja pada masa saya meninggalkan tempat persembunyian Utah saya. Sekarang setelah saya menjadi sangat terinspirasi dengan pekerjaan, saya telah menyelesaikan 75% tempat yang saya mahukan hanya dalam empat hari.

HARI 17

Saya memasuki mod utama turun dan tidak mengambil nota kemajuan selama dua minggu. Berita buruknya ada sedikit yang dapat dilaporkan di sana, tetapi berita baiknya ialah FCC membuat saya dalam keadaan aliran selama dua minggu berturut-turut. Pada ketika ini, saya telah menyelesaikan portfolio kerangka (sekarang sedikit lebih meyakinkan) dan membina Mesin Petikan Rawak serta aplikasi cuaca yang diilhami Lord of the Rings. Pada Hari ke-17 saya menyerahkan Penampil Wikipedia saya. Mempelajari cara menggunakan API sangat menyeronokkan dan bermanfaat. Ternyata anda boleh membina kerumitan sederhana tanpa memahami pelayan atau pangkalan data belakang (anda hanya boleh memasukkan ke orang lain)!

HARI 23–24

Dengan menggunakan algoritma perantaraan, saya mula melihat perbezaan antara kod yang bersih dan jelek. Saya juga mula memasukkan lebih banyak nota pada kod saya untuk disemak kemudian. Entah mengapa saya mengambil masa yang lama untuk menyedari bahawa console.log ("ujian") selalu disiarkan di konsol pembangun JS di penyemak imbas. Saya telah mula menggunakan //repl.it untuk menjalankan kod yang akan memaparkan log konsol sebagai output yang jelas. Agak memalukan sekarang tapi hei - Saya tidak membiarkannya menghentikan saya dan sekarang anda lebih tahu.

Saya merosakkan penyemak imbas saya untuk pertama kalinya melalui Sum of All Primes. Walau apa pun, saya akhirnya menyelesaikan masalah ini dan merasa sangat senang apabila 99% fungsi utama diselesaikan tanpa kajian luar.

HARI 31–33

Saya mendapati cabaran Algoritma Lanjutan cukup… baik… maju. Saya cukup gembira ketika saya menyelesaikan Algoritma Lanjutan "Rentang Tarikh Mesra" dalam masa 90 minit. Dalam dua algoritma maju ini, saya merujuk fungsi tertentu dari StackOverflow untuk membantu kebersihan kod saya. Pada masa saya bimbang ini mungkin akan kembali menyakitkan saya, tetapi banyak sumber yang saya temui berpendapat bahawa apa yang membuat pengaturcara hebat adalah kemampuan untuk mengemukakan soalan khusus mesin pencari. Sebagai contoh, membuat versi JS dari Heap's Algorithm dari awal adalah matematik tahap tinggi dan penemuan semula roda. Dengan mencari model JavaScript, saya boleh menyelesaikannya dengan membina kereta.

Pada hari ke-33 saya menyelesaikan cabaran pengekodan yang terakhir. Projek seterusnya (yang pertama dari projek Pembangunan Depan Lanjutan) memerlukan pembinaan Kalkulator JS. Senang untuk menggali kembali aspek HTML / CSS. Saya menyahut cabaran dengan membuat kod langsung di saluran Twitch FCC dan akhirnya menyelesaikan projek ini dengan penonton langsung 24 orang. Ini adalah pengalaman hebat yang memerlukan saya menjelaskan kod saya semasa saya menulisnya. Pengekodan langsung juga mempunyai keperluan terpadu untuk mengekalkan momentum. Ini memberi ganjaran gaya kod "bergerak cepat dan pecah barang" melalui kaedah yang lebih banyak penyelidikan.

HARI 40

Pengekodan permainan Tic-Tac-Toe terbukti (bagi saya) projek yang paling meletihkan. Bagi saya, pengekodan AI tidak begitu menyeronokkan atau memuaskan. Pada pendapat saya, hasil akhir saya mempunyai AI yang lemah dan antara muka sub-par. Pada masa itu saya tertanya-tanya apakah mungkin membina perkara interaktif seperti ini bukan semangat saya.

HARI 45

Saya bekerja keras pada projek akhir yang meminta replika JavaScript dari permainan 1970-an Simon, lengkap dengan "mod ketat" pilihan dan kelajuan permainan yang semakin meningkat. Saya bertekad untuk menjadikannya luar biasa. Pada penulisan ini, saya masih merasa bahawa Simon saya adalah salah satu versi terbaik di luar sana. Pada hari ke-45 saya menyelesaikan projek itu dan mengambil sijil Pembangunan Bahagian Akhir saya!

Statistik Akhir:

Rujukan dan pembelajaran 77 jam

Pembangunan perisian selama 67 jam

Komunikasi 41 jam (termasuk sembang FCC)

= 185 jam selama 45 hari (atau ~ 4 jam / hari)

Saya akhirnya menghabiskan kurikulum sekitar separuh masa.

Saya tidak dapat mengesyorkan program Free End Camp Free Front Camp. Tidak kira berapa lama masa yang anda perlukan, percuma, senang dimulakan, dan ia mempunyai komuniti yang cerdas dan mudah diakses (jika saya mengatakannya sendiri).

Saya mendapati diri saya merasa kelaparan secara intelektual dan belajar membuat kod memberikan peregangan yang memuaskan bagi otot mental lama. Saya akan kembali ke San Francisco, dan berhasrat untuk meneruskan perjalanan ke bidang teknologi ini.

Sekiranya anda belajar membuat kod, perlakukan pendidikan anda seperti pekerjaannya. Ikuti saya dan beritahu saya bagaimana saya boleh membantu! Tidak pernah ada kemajuan kemajuan berulang yang begitu jelas seperti ketika belajar membuat kod.