Banyak blog dan saran di web tampaknya menyarankan bahwa untuk menjadi pengembang yang hebat, melakukan pekerjaan harian saja tidak cukup. Misalnya, Anda harus berkontribusi pada proyek sumber terbuka di waktu luang, menulis aplikasi ponsel cerdas, dll. Sebenarnya banyak saran ini sepertinya menyarankan bahwa jika Anda tidak suka pemrograman cukup untuk melakukannya sepanjang hari maka Anda mungkin dalam karier yang salah.
Itu tidak benar dengan saya. Saya menikmati pekerjaan saya, tetapi ketika saya pulang dari kantor saya tidak berminat untuk langsung melompat kembali ke komputer dan mulai menulis kode sampai tidur. Saya hanya memiliki sejumlah jam waktu luang setiap hari, dan saya lebih suka menghabiskannya untuk hobi lain, melihat teman atau pergi keluar daripada di depan komputer.
Saya mendapatkan tendangan keluar dari pemrograman, dan melakukan hack di luar pekerjaan sesekali. Saya berkomitmen untuk pengembangan pribadi saya dan menghabiskan waktu membaca blog dan buku teknologi sebagai cara untuk terus belajar dan menjadi lebih baik. Tapi itu tidak meluas sejauh keinginan saya untuk menggunakan semua waktu luang saya untuk pengkodean.
Apakah ini berarti saya bukan pengembang perangkat lunak 'benar'? Apakah mungkin untuk menjadi pengembang perangkat lunak yang baik tanpa melakukan pekerjaan ekstra di luar Anda? Saya akan sangat tertarik mendengar pendapat Anda.
Perbarui: terima kasih semuanya atas komentar & jawaban Anda. Banyak pemikiran dan saran yang bagus!
sumber
Jawaban:
IMO sikap ini berasal dari orang-orang yang memiliki pekerjaan mengerikan, menghisap jiwa, dikombinasikan dengan keterampilan manajemen waktu yang buruk. Jika pada dasarnya Anda mengetikkan formulir web sepanjang hari, keluarlah dan dapatkan pekerjaan yang lebih menantang, atau mulai pekerjaan Anda sendiri.
Ini masalahnya. Seorang musisi konser (pemain cello / pianis / apa pun), akan berlatih paling banyak 6 jam per hari. Kebanyakan hanya berlatih beberapa jam per hari. di level tertinggi
Orang mengatakan program lebih banyak karena Anda belajar lebih banyak, tetapi itu adalah tabir asap. 8 jam per hari banyak .
Kemajuan TIDAK linier. Ini logaritmik:
Satu-satunya alasan bahwa seorang musisi mungkin berlatih lebih dari 3 jam, adalah bahwa mereka perlu memeras tambahan 1% yang diberikan oleh jam-jam itu. Jika Anda berpikir itu berlaku untuk Anda, menyelesaikan kembali masalah yang diselesaikan CS 2 dekade lalu, maka Anda memiliki kompleks prima-donna untuk di-boot.
Saya pernah bekerja di perusahaan pressure cooker sebelumnya, dan percayalah, jumlah aktual pekerjaan yang dilakukan orang-orang itu tidak lebih baik daripada perusahaan seperti sinyal yang menempatkan batasan pada jumlah pekerjaan: http://37signals.com / svn / posts / 996-why-i-love-working-with-family-people
Apa yang akhirnya terjadi adalah itu pasti, Anda mungkin berada di depan komputer selama 10-12 jam, dan di kantor untuk 2 lagi, tetapi itu tidak termasuk makan siang 90 menit yang Anda ambil, 2 jam yang Anda habiskan untuk menelusuri diskusi forum, dan jam istirahat Anda harus memainkan salah satu dari banyak game yang diletakkan di kantor (foosball, pool, yada ...).
Lihat kembali grafik itu. Sekarang kembali padaku.
Pikiran Anda sebenarnya memiliki peluang untuk berkembang lebih banyak jika Anda terlibat dalam beberapa aktivitas lain: Belajar bermain instrumen . Belajar bahasa asing . Lebih baik lagi keluar dan berolahraga, dan terhubung dengan orang-orang nyata .
Pada sifat produktivitas logaritmik:
Ini sebenarnya prinsip yang terkenal di dunia bisnis, saya terkejut banyak programmer belum pernah mendengarnya.
Pembaruan: Lebih banyak tentang studi Ericsson.
Seluruh gagasan itu membutuhkan 10.000 jam / 10 tahun untuk menjadi mahir sebenarnya berasal dari studi yang dilakukan oleh Ericsson, bukan dari Malcom Gladwell.
Seperti yang kita semua tahu, Anda dapat memiliki 1 tahun pengalaman diulang 10 kali ... jadi hanya memiliki pantat Anda di kursi selama 10 tahun tidak memenuhi syarat. Apa yang memenuhi syarat adalah apa Ericsson panggilan praktek yang disengaja .
Dia telah menemukan prinsip ini berlaku dalam atletik, musik, penulisan, catur, dan matematika. Dia lebih lanjut mendefinisikan praktik yang disengaja sebagai upaya yang begitu kuat, sehingga bahkan pada tingkat tertinggi Anda hanya dapat mengajukan sekitar 4 jam per hari . Kalau tidak, Anda akan menderita overtraining atau kelelahan. Sekali lagi, ia mengakui bahwa ada pengembalian yang semakin berkurang untuk latihan yang disengaja, hingga sekitar 4 jam.
Tentang masalah tidak memiliki pekerjaan yang baik / menantang:
Omong kosong. Entah mendapatkan pekerjaan yang lebih baik, atau ini sebuah ide: Jadikan pekerjaan Anda saat ini menjadi sesuatu yang bukan , setidaknya saat ini.
Salah satu programmer terbaik yang saya kenal masuk ke pekerjaan sebagai programmer pemeliharaan pada sistem warisan yang terdiri dari puluhan program dan ratusan ribu baris kode. Sebagian besar telah diretas selama bertahun-tahun sehingga Anda harus mengatakan tidak ada desain yang koheren lagi.
Ini adalah pekerjaan yang buntu dan tidak ada jalan keluarnya. Manajemen ingin Anda tetap tenang, dan perbaiki bug-bug itu. Pengembang yang baik sedang mengerjakan proyek greenfield. Orang-orang datang ke sini untuk menghabiskan sisa hari mereka sampai mereka pensiun, atau mendapatkan beberapa tahun pengalaman sebelum melanjutkan ke pengembangan aplikasi baru. Sedangkan sebagian besar programmer akan mengeluh tentang kurangnya pengembangan karir, atau kesempatan untuk mempelajari hal-hal baru, atau tidak memiliki proyek yang menarik untuk dikerjakan, atau lebih umum hanya mengeluh tentang tidak ada yang memungkinkan mereka , orang ini hanya duduk, dan melanjutkan melakukan pekerjaan yang perlu dilakukan.
Dan selama 2 tahun, dia telah mengubah sistem itu dari kereta kode spaghetti menjadi sesuatu yang cantik dan berfungsi seperti arloji swiss. Begitu lengkapnya transformasi, sehingga Wakil Presiden divisi mulai lebih memperhatikan & lebih memperhatikan proyek yang ada, dan mulai mempertanyakan nilai proyek greenfield. Meskipun dia tidak memiliki gelar, orang-orang operasi pergi kepadanya sebagai pemimpin de-facto kelompok. Ketika saya pergi, VP berbicara tentang menciptakan peran baru baginya sebagai seorang arsitek sistem ...
Saya tidak yakin apa yang terjadi padanya setelah itu, tetapi dia mengajari saya beberapa pelajaran yang sangat penting:
Pekerjaan Anda adalah apa yang Anda buat, dan ada masalah menarik yang harus dipecahkan di mana-mana . Jika Anda benci menulis layar CRUD, selesaikan masalah dengan membuatnya secara otomatis.
Jangan duduk menunggu kesempatan untuk datang kepada Anda. Kemungkinan mereka tidak akan pernah.
sumber
Ada yang lebih tersembunyi dalam pesan ini.
Banyak programmer yang antusias suka mengeksplorasi sesuatu, bereksperimen, mengikuti ide-ide mereka, itulah cara kita belajar dan memperoleh keterampilan dan visi kita.
Biasanya Anda tidak bisa mengikuti minat Anda selama jam kerja. Anda hanya melakukan hal-hal yang diperintahkan kepada Anda dan hanya itu. Hanya sedikit dari kita yang cukup beruntung untuk melakukan apa yang akan kita lakukan secara pribadi walaupun tidak dibayar.
Karena itu, jika Anda tidak melakukan sesuatu yang ekstra, Anda tidak mengembangkan potensi Anda. Dan itulah masalahnya.
sumber
Itu tidak membuat Anda pengembang yang buruk, tetapi sayangnya, Anda masih harus bersaing dengan yang melakukannya.
Baca ini, dari Blog Seth Godin :
Keterlaluan
Tidak masuk akal untuk bangun dari tempat tidur pada hari salju, ketika sekolah telah dibatalkan, dan mengubah waktu henti menjadi enam jam kerja di laboratorium fisika kredit tambahan.
Tidak masuk akal untuk meluncurkan produk teknologi yang melompati kurva pengembangan hingga sembilan bulan, membuat generasi berikutnya jauh lebih awal daripada pesaing yang lebih masuk akal.
Tidak masuk akal bagi perusahaan angkutan untuk menjawab telepon pada deringan pertama.
Tidak masuk akal untuk memulai perusahaan baru tanpa uang jaminan yang dapat diberikan oleh uang.
Tidak masuk akal untuk mengharapkan kantor dokter memiliki staf meja depan yang menyenangkan dan bermanfaat.
Tidak masuk akal untuk meninggalkan pertunjukan yang bagus dalam perekonomian saat ini, bahkan jika Anda ingin melakukan sesuatu yang berani dan orisinal.
Tidak masuk akal bagi para guru untuk berharap bahwa kita dapat memungkinkan anak-anak di kota yang kurang beruntung untuk berprestasi di sekolah menengah.
Tidak masuk akal untuk memperlakukan kolega dan pesaing Anda dengan rasa hormat mengingat tekanan yang Anda alami.
Tidak masuk akal untuk mengharapkan bahwa siapa pun kecuali seorang wanita hebat, seseorang dengan dorongan dan kelebihan, dapat melakukan sesuatu yang penting di dunia di mana geladak ditumpuk melawan orang-orang biasa.
Tidak masuk akal untuk mengabdikan tahun hidup Anda membuat produk yang kebanyakan orang tidak akan pernah menghargai.
Untungnya, dunia dipenuhi dengan orang-orang yang tidak masuk akal. Sayangnya, Anda harus bersaing dengan mereka.
sumber
Untuk menjawab pertanyaan yang diajukan: Tidak pemrograman di waktu luang Anda tidak membuat Anda pengembang yang buruk, namun pemrograman di waktu luang Anda dapat membuat Anda menjadi pengembang yang lebih baik.
Memprogram di waktu luang Anda tentu tidak akan mengganggu keterampilan Anda, tetapi Anda seharusnya tidak merasa berkewajiban untuk melakukannya. Pemrograman tampaknya menjadi bidang yang relatif unik karena bagi banyak orang itu adalah pekerjaan dan hobi mereka, sehingga mereka menikmati pemrograman di waktu luang mereka.
sumber
Tidak, itu tidak menjadikan Anda seorang programmer yang buruk. Tergantung pada apa yang Anda lakukan itu mungkin membuat Anda seorang programmer yang lebih baik dalam jangka panjang. Di awal karir Anda, hal itu mungkin memengaruhi seberapa cepat Anda mempelajari berbagai keterampilan yang Anda butuhkan. Namun, Anda mungkin mengambil keterampilan dan informasi yang akan membantu dalam jangka panjang. Berolahraga juga tidak ada salahnya.
Ada sejumlah penelitian yang menunjukkan kinerja mengintip sekitar 40 minggu kerja. Meskipun kita dapat berproduksi untuk jangka waktu yang lama, namun dalam jangka panjang kita kehilangan efisiensi. Penelitian yang saya lihat menunjukkan orang yang bekerja 80 minggu sama produktifnya dengan mereka yang bekerja 40 jam seminggu.
Ada beberapa hal yang dapat Anda refleksikan dari (atau pada) jam yang dapat membantu Anda tampil lebih baik:
sumber
Pastinya.
Mungkin butuh waktu lebih lama daripada jika Anda menghabiskan waktu ekstra mengasah keterampilan Anda. Saya juga merasa sulit untuk menempatkan cukup waktu untuk perbaikan diri jika saya bekerja penuh waktu dan melakukan sedikit pemrograman di luar jam kerja.
Ketika saya masih muda, saya menghabiskan lebih banyak waktu untuk belajar daripada yang saya lakukan sekarang. Konsep yang saya gunakan sehari-hari sudah tertanam kuat pada titik ini, dan tampaknya lebih mudah untuk memperoleh pengetahuan tambahan dengan pengalaman ini di bawah ikat pinggang saya.
Pemrogram yang "baik" tampaknya memberikan lebih banyak waktu karena mereka pada dasarnya obsesif, cenderung ke arah anti-sosial dari spektrum, dan benar-benar menikmati pemrograman dan keseluruhan menyelesaikan masalah siklus.
sumber
Dalam skema besar hal-hal itu semua tentang menemukan keseimbangan yang tepat dalam hidup.
Yang penting adalah apakah Anda menikmati pemrograman dan apakah Anda terus belajar tidak peduli pada level apa Anda berada. Apakah Anda memprogram pekerjaan luar atau tidak tidak secara otomatis membuat Anda seorang programmer "baik" atau "buruk".
Untuk memberikan perspektif pribadi, saya telah memprogram selama sekitar 25 tahun (pertama sebagai seorang anak, kemudian secara profesional). Saya sangat menyukainya.
Namun, saya hampir tidak pernah memprogram pekerjaan di luar. Ini ada hubungannya dengan beberapa hal:
sumber
Anda bisa menjadi programmer yang bagus hanya coding selama bekerja, terutama jika Anda mengelola karir Anda dengan baik. Namun, kode programer terbesar selama jam kerja mereka juga. Karena itu, seseorang yang memilih pekerjaan yang baik dengan banyak kesempatan belajar, menggunakan waktu mereka di tempat kerja dengan baik, dan sebagainya akan menjadi programmer yang lebih baik daripada seseorang yang kode di rumah karena dia tidak dapat menemukan pekerjaan yang memberikan tantangan menarik selama hari kerja.
Walaupun pengkodean di rumah sangat berharga, saya akan mengatakan bahwa memaksimalkan nilai lingkungan kerja Anda (dengan belajar dari rekan kerja, memilih pekerjaan yang baik, mengelola karier Anda secara agresif) seringkali bahkan lebih berharga. Pemrogram terhebat melakukan keduanya, plus memiliki sikap yang baik terhadap pembelajaran dan pendampingan orang lain.
sumber
Masalah sebenarnya adalah apakah pengembang baru mengkodekan cukup (pada masalah yang cukup menantang) untuk melewati beberapa ratus ribu baris kode praktik dan menjadi programmer yang layak.
Secara teori ini bisa dilakukan di tempat kerja, atau di waktu Anda sendiri, atau keduanya. Latihan memang harus diarahkan sendiri, sehingga Anda dapat mempelajari apa yang perlu Anda pelajari. Itu berarti pekerjaan yang sedikit fleksibel.
Banyak kali pekerjaan entry-level adalah sekelompok perbaikan bug atau pekerjaan lain yang tidak akan mengajarkan Anda untuk menjadi baik. Yang perlu Anda lakukan adalah menulis banyak kode dari awal, dan kode itu mungkin akan buruk. Sulit bagi pengusaha untuk membayar ini. Itu sebabnya orang akhirnya melakukan proyek open source di samping atau meluncurkan startup atau apa pun.
Ketika orang mengatakan Anda harus memprogram di waktu luang Anda, saya pikir itu benar-benar berarti bahwa Anda harus berkuasa selama bertahun-tahun sejak latihan yang bermakna. Anda harus melakukan apa pun untuk mendapatkan latihan dan belajar menulis dan memelihara basis kode besar dari awal. Jika tidak ada yang membayar Anda untuk menulis serangkaian proyek yang mungkin petaka dari awal, maka waktu luang adalah satu-satunya pilihan.
Jika Anda sudah melakukan latihan ketika muda dan menjadi programmer yang baik, saya tidak berpikir Anda akan kehilangan keterampilan dasar jika Anda menyimpannya 9-ke-5 nanti. Kemudian itu lebih merupakan masalah mengikuti teknologi baru yang tidak terlalu memakan waktu.
Namun, itu adalah pekerjaan entry-level yang jarang yang akan memberi Anda kuantitas dan kualitas praktik dengan sendirinya untuk menjadi programmer yang baik. Seorang pengembang baru perlu mengambil inisiatif untuk belajar, tidak hanya bergaul dalam pekerjaan entry-level melakukan tugas entry-level.
Akan sangat sulit untuk menjadi programmer yang baik dari awal jika Anda sudah memiliki keluarga dan sangat menekankan keseimbangan kehidupan kerja. Sama seperti itu akan sangat sulit untuk menjadi dokter atau menjadi musisi ahli atau hal lain dalam situasi itu. Ada alasan mengapa orang cenderung menjalani ribuan jam latihan mereka ketika mereka lebih muda daripada ketika mereka lebih tua.
sumber
Jika saya menghabiskan waktu dalam enam bulan ke depan mengembangkan permainan dasar di waktu luang saya dan Anda tidak, dan seandainya semua hal lain adalah sama (tidak pernah ada), siapa di antara kita yang akan tahu lebih banyak? Siapa di antara kita yang akan memiliki lebih banyak keterampilan dan pengalaman?
Efek ini akan bersifat kumulatif, karena pengetahuan di luar jam kerja akan memberi makan pekerjaan baru dan pengetahuan di luar jam kerja.
Dan itu sebabnya orang menyarankan untuk memprogram di waktu luang mereka, sejauh yang saya tahu.
sumber
Antara besar dan buruk ada banyak tingkatan di antaranya. Anda tidak dapat menjadi pengembang yang hebat dengan melakukannya hanya 8 jam atau lebih sehari, mungkin mengatasi masalah dari bidang yang sangat terbatas.
Jika pekerjaan Anda cukup bervariasi, Anda bisa menjadi "layak" atau "berprestasi" atau kata sifat apa pun yang Anda inginkan, tetapi untuk menjadi pengembang yang hebat Anda harus sedikit mental, saya khawatir.
Alasan lain untuk melakukan pemrograman hobi adalah bahwa dalam pekerjaan Anda sering harus mematuhi standar yang tidak optimal dan membuat kompromi secara umum dan bahkan ketika Anda mempelajari hal baru, Anda mungkin tidak diizinkan untuk menggunakannya.
Dan satu lagi, bahkan lebih sederhana adalah bahwa kode apa pun yang Anda tulis di tempat kerja adalah milik perusahaan Anda. Anda tidak dapat kembali ke sana dan belajar dari kesalahan lama Anda bertahun-tahun kemudian, ketika Anda bekerja untuk orang lain.
sumber
Dibutuhkan 10.000 jam usaha untuk menjadi Ahli dalam segala hal. [Michael Gladwell, "Pencilan"]
Jadi, melakukan pekerjaan ekstra sebelum Anda mencapai level itu akan mempercepat Anda di sepanjang jalan menuju status Pakar nyata.
Setelah Anda melewati level itu, maka menghabiskan lebih banyak waktu akan memiliki pengembalian yang kecil / berkurang.
sumber
Anda tidak harus melihatnya sebagai "Apakah itu membuat saya seorang programmer yang buruk" karena seperti setiap keterampilan lebih banyak latihan hanya membuat satu lebih baik.
Jadi, jika Anda ingin menjadi lebih baik dari Anda saat ini dan mempelajari teknologi dan domain baru yang pekerjaan Anda tidak memungkinkan, di situlah upaya ekstra dan waktu yang dihabiskan berguna.
Tetapi pengkodean menghabiskan waktu ekstra (hanya untuk membuktikan kepada seseorang bahwa Anda memberi kode tambahan) tidak berarti Anda menjadi pemrogram yang baik kecuali jika Anda mempelajari apa yang Anda lakukan dan melakukan sesuatu yang berbeda atau meningkatkan apa yang sudah Anda ketahui, daripada memotong / menyalin / menempel secara membabi buta. dan mengumpulkan retas. Menempatkan jam tambahan dan melakukan hal yang sama berulang kali sama sekali tidak saya pikir akan membantu Anda meningkatkan.
sumber
Siang hari pemrograman Anda adalah taruhan pendek. Ada uang yang bisa diperoleh, Anda tahu persis berapa banyak dan untuk apa, dan Anda tidak punya banyak hal untuk mendapat selain gaji.
Di malam hari Anda bekerja dengan taruhan panjang - ide gila yang sebagian besar tidak akan berhasil sama sekali. Ini adalah proyek yang akan melontarkan Anda keluar dari pangkat dan file. Ini adalah bagaimana Anda menjadi penemu PHP daripada monyet kode yang menggunakannya.
Saya mewawancarai banyak programmer, dan apakah mereka telah melakukan hal-hal aneh yang menarik di luar jam kerja adalah lampu hijau instan. Sangat jarang.
Meskipun saya akan mengatakan ini: ada satu kali seorang pria yang melakukan banyak hal keren di luar jam kerja ternyata benar-benar tak berguna dari seorang karyawan. Saya masih bingung oleh orang itu.
sumber
Menjadi pengembang perangkat lunak yang baik di hati, sangat tergantung pada hati Anda. Anda dapat mencoba menjadi musisi yang hebat dan menghabiskan banyak waktu untuk bermusik, tetapi tetap saja itu tidak menjadikan Anda seorang musisi yang baik. Anda harus menikmati apa yang Anda lakukan untuk menjadi baik dalam hal itu. Awalnya saya memiliki pertanyaan yang sama dengan Anda. pernah, tetapi sekarang karena suka saya, saya sudah mulai melakukan hal-hal tambahan pada perangkat lunak selain pekerjaan normal. Ini meningkatkan kinerja saya dalam pekerjaan normal dan juga memberi saya banyak waktu untuk terlibat dalam kegiatan lain yang tidak terkait dengan perangkat lunak. Jadi garis dasarnya adalah menikmati apa yang Anda lakukan dan pada akhirnya Anda akan melakukan apa yang diperlukan.
sumber
Pertanyaan sebenarnya adalah apa yang Anda lakukan sepanjang hari. Analogi dengan atlet dan musisi biasanya tidak diterapkan dengan benar. Pekerjaan harian Anda bukan praktik, melainkan kinerja, kecuali jika Anda memiliki kemampuan eksplisit untuk menghabiskan sebagian dari hari kerja Anda dalam "latihan" sejati. Bagaimana Anda tahu? Jika Anda tidak pernah punya waktu untuk melakukan sesuatu yang "benar" atau mempelajari bahasa / teknologi / kerangka kerja baru dll, maka Anda tidak berlatih, Anda sedang melakukan. Atlet dan musisi profesional tidak menjadi lebih baik selama pertandingan atau konser, mereka menjadi lebih baik selama latihan fokus. Jadi, jika Anda seperti kebanyakan, satu-satunya waktu yang Anda miliki untuk "praktik" pengkodean asli adalah pekerjaan di luar. Yang sedang dikatakan, itu hanya bermanfaat jika itu fokus. Jika Anda meretas sepanjang hari dan kemudian meretas sepanjang malam, Anda hanya lelah, tidak lebih baik.
Misalnya, Anda perlu mengoptimalkan sepotong kode di tempat kerja dan Anda melemparkan alat profiling yang biasa padanya dan mempercepatnya mungkin 50% dan beralih ke tugas berikutnya tetapi Anda berpikir ada hal-hal lain yang mungkin Anda lakukan yang akan membantu bahkan lebih banyak tetapi Anda tidak memiliki waktu untuk mencobanya. Jika Anda membawa potongan kode itu pulang dan menghabiskan beberapa jam ekstra, Anda belajar teknik yang membuat Anda lebih baik saat berikutnya Anda mengoptimalkan sesuatu. Anda tidak melakukan hal yang sama di rumah seperti di tempat kerja.
Latihan adalah tentang menambah keterampilan dan mengasah keterampilan dan kegiatan-kegiatan tersebut harus dilakukan dengan cara buatan (seperti mengisolasi kelompok otot di gym, tidak ada yang melakukan itu dalam aktivitas fisik normal). Membangun aplikasi di rumah tidak secara otomatis dilakukan. Pekerjaan di rumah harus fokus pada teknik dan proses, bukan produk akhir. Jika produk akhir adalah apa yang Anda butuhkan untuk termotivasi, hebat. Hanya saja, jangan jatuh ke dalam perangkap mengembangkannya dengan cara yang sama Anda lakukan di tempat kerja.
Pergerakan kata koding adalah contoh dari apa itu praktik.
sumber
Untuk menjawab pertanyaan Anda: Tidak, itu tidak membuat Anda menjadi pengembang yang buruk.
Namun , itu mungkin membuat kehidupan profesional Anda agak sulit. Jika Anda memiliki pekerjaan di mana Anda terus-menerus mempelajari teknologi baru yang akan membantu Anda memajukan jalur karier Anda (apakah itu promosi di pekerjaan Anda saat ini atau pekerjaan baru di perusahaan yang berbeda), maka Anda sudah siap.
Tetapi jika Anda saat ini bekerja di perusahaan di mana teknologi yang digunakan jarang berubah, maka dalam 2 atau 5 o 10 tahun Anda mungkin akan kesulitan mendapatkan pekerjaan berikutnya. Jika Anda membuat kode di rumah dengan teknologi baru dan memiliki sesuatu untuk ditunjukkan (aplikasi, situs web, proyek open source, dll), maka Anda akan merasa jauh lebih mudah untuk mendapatkan pekerjaan berikutnya.
Tentu saja, Anda mungkin benar-benar bahagia melakukan hal yang sama persis selama 40 tahun ke depan, dan selama perusahaan Anda dan teknologi terus ada, maka Anda siap!
sumber
Ada saat-saat dalam hidup saya di mana saya melakukan banyak pengkodean di luar pekerjaan, dan saat-saat ketika saya tidak melakukan pengkodean karena saya mengerjakan hal-hal lain. Anda harus selalu belajar, tetapi itu tidak berarti Anda harus selalu belajar tentang pemrograman di waktu luang Anda. Jika Anda ingin mengerjakan beberapa keterampilan lain, baik itu pertukangan kayu, sulaman, berkebun dll di waktu luang Anda akan membantu Anda tumbuh sebagai pribadi.
Hanya saja, jangan terjebak dalam pemikiran bahwa Anda tahu semua yang perlu Anda ketahui tentang pemrograman sehingga Anda bisa berhenti belajar.
sumber
Ini memang posting yang menarik. Saya telah mengembangkan perangkat lunak selama 10 tahun pas dan mencintai pekerjaan saya! Saya juga punya banyak hobi dan berusaha mengelolanya dengan baik. Tapi saya mendapatkan tendangan mencoba hal-hal baru menghabiskan satu atau dua jam di depan komputer sebelum tidur. Dalam kasus saya, saya kecanduan mempelajari dan menulis kode permainan. Saya tidak selalu punya waktu bermain game, tetapi saya suka membaca kode tentang game. Sejujurnya, saya pikir kode terbaik yang pernah saya lihat berasal dari permainan dan saya menerapkan keterampilan ini ke kode saya di tempat kerja. Saya selalu belajar SETIAP HARI TUNGGAL, jadi IMO, jika Anda seorang pengembang, Anda tidak akan pernah mencapai puncaknya, SELALU ada cara yang lebih baik untuk melakukan sesuatu ....
sumber
Ini adalah pos yang bagus.
Saya akan mengatakan, tidak, itu tidak membuat Anda seorang programmer yang buruk. Jika ulasan Anda bagus dan Anda menyelesaikan tugas dengan baik dan tepat waktu, maka Anda justru sebaliknya. Dalam semua kejujuran, saya iri kepada Anda bahwa Anda mendapatkan kode Anda saat bekerja.
Alasan utama saya memprogram waktu luang adalah karena saya tidak terlalu peduli dengan apa yang saya lakukan di tempat kerja dan saya menggunakan waktu luang saya untuk melakukan apa yang saya suka. Yang saya senang lakukan adalah pemrograman video game. Tidak ada perusahaan game yang valid untuk bekerja di tempat saya tinggal (saya punya keluarga di sini sekarang) jadi saya membantu dengan permainan indie di samping ketika saya bisa. Ini satu-satunya cara untuk menyembuhkan gatal. Jika saya melakukan apa yang saya sukai sepanjang hari, kemungkinan besar saya tidak akan melakukannya di waktu luang saya.
sumber
Saran saya adalah: Gunakan waktu perjalanan Anda untuk mempelajari hal-hal, untuk membuat Anda mendapat informasi: membaca buku-buku IT, mendengarkan podcast Dev, dll. Mengenai kegiatan pasca-kerja Anda: tidak mengubah apa pun. Kalau tidak, Anda akan menjadi orang yang membosankan.
sumber
Itu tidak membuat Anda menjadi pengembang yang buruk, bahkan mungkin tidak membuat Anda menjadi semacam pengembang "ok", itu hanya membuat Anda menjadi apa adanya. Namun saya pikir, bahwa Anda akan menemukan kebanyakan orang yang benar-benar peretas cenderung suka mencoba hal-hal baru. Setiap saat saya akan menyelidiki banyak bahasa, basis data, kerangka kerja web, robotika, dll. Saya punya dua anak kecil dan seorang istri, hipotek, semua itu - tetapi saya menantikan saat-saat saya bisa mendapatkan 2 atau 3 jam untuk kembali dengan barang-barang. Tentu, C # dan. NET baik-baik saja dan baik untuk mendapatkan gaji dan saya benar-benar menikmati pekerjaan saya, tetapi bermain-main dengan Scala dan Lift telah menjadi ledakan nyata bagi saya beberapa bulan terakhir ini. Ada pengembang yang akan mengklasifikasikan diri mereka sebagai "bersemangat" dan yang hanya "bertahan".
sumber
Benar-benar tidak. Itu hanya berarti bahwa Anda suka melakukan hal-hal selain coding. Tidak ada yang salah dengan itu, dan itu tidak membuat Anda lebih baik atau lebih buruk daripada orang lain, pengembang atau tidak.
Tentu saja. Beberapa dari itu tergantung pada seperti apa lingkungan kerja Anda. Jika Anda memiliki pekerjaan yang membosankan, menghisap jiwa, yang menyedot seluruh waktu Anda dan kemudian beberapa melakukan pekerjaan pemeliharaan yang membosankan, maka dapat menggunakan waktu kerja untuk mengembangkan keterampilan Anda akan sangat terbatas. Jika Anda memiliki jenis lingkungan di mana Anda memiliki kebebasan untuk melakukan apa yang ingin Anda jelajahi dan pelajari, maka manfaatkan kesempatan itu untuk mengembangkan keterampilan baru yang juga membantu atasan atau rekan kerja Anda keluar.
Jika Anda menemukan sesuatu yang menarik yang ingin Anda pelajari lebih lanjut dan tidak memiliki waktu atau kemungkinan untuk menggunakannya di tempat kerja, maka Anda harus mempertimbangkannya terhadap tuntutan lain pada waktu Anda, baik itu keluarga, teman, atau hobi.
sumber
Saya sudah mengikuti sejumlah wawancara untuk merekrut programmer baru-baru ini. Saya telah menemukan bahwa kandidat yang paling mengesankan saya, baik sebagai programmer dan sebagai orang yang saya tidak keberatan bekerja dengan, adalah orang-orang yang menghabiskan banyak waktu pada pengejaran NON-pemrograman (terutama musik, tetapi juga matematika murni, filsafat dan sastra). Yang pasti, sebagian besar juga melakukan pemrograman hobi, tetapi mereka juga memiliki minat yang seimbang.
sumber
Jika memiliki pekerjaan yang memberikan Anda pengalaman intelektual yang benar-benar menarik, kemungkinan itulah yang akan menjadi kehidupan mental Anda - pekerjaan di luar adalah untuk mengeluarkan tenaga. Jika pekerjaan Anda tidak melibatkan Anda, kemungkinan besar Anda akan menemukan kepuasan intelektual setelah jam kerja. Itu benar dalam bisnis apa pun, bukan hanya coding.
Pengodean di kantor menyedot kreativitas Anda, titik. Setidaknya 8 jam per hari, pikiran Anda melakukan sprint terus menerus atas nama orang lain. Adalah normal untuk keluar dari itu dan tidak ingin kembali ke komputer. Ketika saya bekerja dari kantor, itu sama bagi saya - saya akan pulang dan hanya ingin memasak, atau pergi menonton film, bergaul dengan teman-teman atau hanya bermain zona di depan TV. Kemudian, dari tahun 2001-2004 atau lebih, setelah perusahaan tempat saya bekerja mabuk dan hancur, saya keluar dan mengendarai taksi dan menunggu meja. Saat itulah saya benar-benar mulai mengkodekan jam-jam libur saya.
Yang benar adalah, saya tidak berpikir ada orang yang memiliki lebih dari 8 jam nilai waktu coding berkualitas tinggi di dalamnya. Banyak coders hanya memiliki 2-3, tetapi mereka mungkin orang yang paling efisien di luar sana. Hanya bagaimana Anda menggunakannya, bagaimana Anda menyebarkannya.
sumber
Itu tergantung pada industri tempat Anda bekerja. Beberapa lebih kompetitif daripada yang lain.
Jika Anda tidak suka mempelajari hal-hal baru sendiri, kemungkinan besar Anda akan tetap pada tingkat keahlian Anda saat ini. Itu mungkin cukup ... atau tidak.
Ini bukan tentang waktu yang didedikasikan, ini tentang rasa ingin tahu, dan haus akan pengetahuan dan penguasaan. Jelas, itu tidak ada hubungannya dengan tetap up to date , itu tentang hal-hal mendasar-sering: kompiler, monad, arsitektur memori, dll. Hal-hal yang meregangkan dan memperluas otak Anda.
Ingin Kode di rumah hanya merupakan efek samping yang penting. Tetapi jangan meremehkannya, tanpa melakukan, belajar seringkali dangkal.
Semua dev terbaik yang saya tahu memiliki sifat tesis.
sumber
Tidak, itu tidak membuat Anda menjadi programmer yang kurang dari orang lain. Anda lebih sosial. Saya iri jujur.
Anda tidak harus menggunakan semua waktu luang Anda untuk menulis kode. Pekerjaan saya cukup sederhana: manajemen server. Saya menulis banyak kode karena saya tidak perlu melakukan banyak hal di tempat kerja. Itu tidak membuat saya lebih baik atau lebih buruk daripada siapa pun. Jika Anda bersemangat tentang pemrograman, mengapa tidak bekerja freelance? Saya sering memasang iklan Craigslist untuk layanan saya dan menghasilkan banyak uang darinya. Ini juga merupakan pengalaman belajar yang hebat karena Anda akan bekerja dengan startup dan terkadang bahkan situs web besar. Semoga ini membantu. :)
sumber
Saya mengajukan pertanyaan serupa beberapa hari lagi. Tampaknya orang-orang tampaknya lebih bersemangat tentang pekerjaan kita jika kita tidak hanya mencurahkan seluruh waktu kita untuk itu, tetapi juga sepanjang waktu yang kita miliki untuk kehidupan pribadi kita.
Saya kadang-kadang menulis beberapa kode di waktu luang saya, tetapi saya melakukannya untuk bersenang-senang, bukan karena saya berniat untuk mendapatkan pertumbuhan atau pengakuan profesional. Saya memuji orang-orang yang memiliki energi untuk itu, tetapi Anda lebih suka kelelahan dengan bekerja lebih lama dan pada proyek-proyek tambahan daripada benar-benar menjadi lebih ahli dalam hal apa pun.
Pada akhirnya, yang terpenting adalah kemampuan Anda untuk mempelajari hal-hal baru (terutama di tempat kerja), kemampuan Anda untuk berkomunikasi dengan baik, dan memiliki keterampilan manajemen waktu yang baik. Bahwa Anda menjadikan Anda seorang profesional yang baik.
sumber
Bagi saya itu semua tentang keseimbangan.
Meskipun saya suka memprogram itu hanya satu sisi saya, saya memiliki minat lain. Ketika saya melihat ini jika saya senang (melakukan hal-hal lain yang saya suka lakukan) dan saya menemukan pekerjaan saya menarik dan memuaskan (yang saya lakukan) daripada, dalam jangka panjang, saya sedang dalam perjalanan untuk menjadi pengembang perangkat lunak yang lebih baik.
PS Saya akui saya belum membaca semua posting sebelumnya di halaman ini.
sumber