Adakah pemikiran tentang bagaimana saya dapat mengatasi blok mental ini, dan untuk memastikan aplikasi saya dapat diskalakan?
Inti dari masalah ini bukan skalabilitas. Inti masalahnya adalah berpikir bahwa Anda akan memperbaikinya pertama kali .
Anda harus fokus pada penulisan kode bersih. Karena kode bersih memaksimalkan kenyamanan ketika Anda (mau tidak mau) harus mengubah sesuatu di masa depan. Dan itulah tujuan sebenarnya yang harus Anda miliki.
Apa yang Anda coba lakukan sekarang adalah mencoba memikirkan kode yang sempurna untuk ditulis. Tetapi bahkan jika Anda berhasil melakukan itu, siapa bilang persyaratannya tidak akan berubah, atau Anda mungkin membuat keputusan berdasarkan informasi yang salah atau komunikasi yang salah?
Anda tidak dapat menghindari membuat kesalahan, bahkan jika itu bukan kesalahan Anda. Berfokuslah pada penulisan kode yang nantinya mudah diubah, alih-alih berharap menulis kode yang tidak perlu Anda ubah di masa mendatang.
Setelah tumbuh melekat pada proyek dan kode yang sudah saya tulis,
Saya benar-benar bersimpati dengan sentimen ini. Tetapi menjadi terlampir pada kode yang Anda tulis adalah masalah.
Satu-satunya hal yang harus konstan adalah keinginan Anda untuk memecahkan masalah tertentu . Bagaimana Anda menyelesaikan masalah itu hanyalah masalah sekunder.
Jika besok alat baru dirilis yang mengurangi basis kode Anda hingga 80%, apakah Anda akan kesal karena kode Anda tidak lagi digunakan; atau apakah Anda akan senang bahwa basis kode Anda telah menjadi lebih kecil dan jauh lebih bersih / lebih mudah dikelola?
Jika yang pertama, Anda memiliki masalah: Anda tidak melihat solusi untuk kode . Dengan kata lain, Anda berfokus pada kode dan tidak melihat gambaran yang lebih besar (solusi yang ingin diberikannya).
Saya takut bahwa semua pekerjaan tambahan yang saya lakukan akan dibatalkan dalam waktu dekat, ketika aplikasi ternyata tidak skala dengan baik seiring pertumbuhan bisnis.
Itu adalah masalah yang berbeda untuk hari yang berbeda.
Pertama, Anda membangun sesuatu yang berfungsi. Kedua , Anda meningkatkan kode untuk memperbaiki kekurangan yang mungkin masih muncul. Apa yang Anda lakukan saat ini adalah menahan tugas pertama karena takut harus melakukan tugas kedua.
Tapi pilihan apa lagi yang ada? Anda tidak bisa mengatakan masa depan . Jika Anda menghabiskan waktu untuk merenungkan kemungkinan masa depan, Anda akan tetap menebak . Tebakan selalu cenderung salah.
Alih-alih, bangun aplikasi, dan buktikan bahwa memang ada masalah. Dan begitu masalahnya jelas, maka Anda mulai mengatasinya.
Dengan kata lain: Henry Ford tidak pernah membuat mobil yang sesuai dengan standar / harapan 2018. Tetapi jika dia tidak membangun Model T, mobil cacat dengan standar modern, tidak ada yang akan mulai menggunakan mobil, tidak akan ada industri mobil, dan tidak ada yang akan memiliki mobil yang kemudian dapat mereka coba tingkatkan.
Banyak majikan yang mempertanyakan pilihan saya untuk tidak menggunakan kerangka kerja web selama wawancara, yang hanya membuat saya semakin meragukan pekerjaan saya sebelumnya.
Bagian penting di sini bukanlah kerangka mana yang Anda gunakan (majikan mana pun yang menilai Anda yang tidak melakukan pekerjaan mereka dengan benar). Bagian penting di sini adalah mengetahui apa yang Anda lakukan dan mengapa Anda melakukannya .
Misalnya, Anda bisa menghindari kerangka kerja yang ada secara khusus karena Anda ingin mempelajari mengapa kerangka kerja berguna dengan melakukannya dengan cara yang sulit terlebih dahulu. Atau Anda bisa mencoba membuat kerangka kerja sendiri.
Satu-satunya jawaban yang buruk di sini adalah "Saya tidak tahu", karena itu menunjukkan kurangnya membuat keputusan. Itu adalah bendera merah untuk majikan.
Saya tidak tahu kerangka kerja web apa pun, dan tidak tahu mana yang harus mulai digunakan.
Masalah yang sama muncul di sini. Solusinya bukan berpikir lebih banyak, tetapi bertindak:
- Berhentilah merenungkan jawaban yang sempurna .
- Pilih kerangka kerja. Kecuali Anda memiliki preferensi, pilih yang acak. Gunakan papan dart, lempar dadu, lempar koin, pilih kartu.
- Gunakan.
- Apakah Anda suka menggunakannya? Adakah yang menurut Anda mengganggu?
- Cari tahu cara mencegah elemen-elemen buruk ini. Apakah Anda menyalahgunakan kerangka kerja, atau hanya bagaimana kerangka kerja seharusnya bekerja?
- Setelah Anda merasa memiliki pegangan pada kerangka (terlepas dari apakah Anda suka atau tidak), pilih kerangka kerja baru dan ulangi siklus.
Untuk membaca lebih lanjut tentang ini, baca The doing mindset> the thinking thinking . Penulis menjelaskannya lebih baik daripada yang saya bisa.
tetapi tekanan untuk menyelesaikan aplikasi meningkat, dan saya sedang mempertimbangkan untuk menghapus aplikasi sepenuhnya dan memulai dari awal
Kecuali jika basis kode saat ini adalah kekacauan yang benar-benar tidak dapat dipelihara; Anda membuat keputusan sebaliknya.
Pengembang sering berpikir bahwa membuang sesuatu akan menjadi pilihan yang lebih baik. Perasaan yang sangat umum. Tapi ini jarang pilihan yang tepat.
Membuang kode dan memulai dari awal seperti terjebak kemacetan dalam perjalanan ke tempat kerja, khawatir Anda akan terlambat bekerja (ketinggalan tenggat waktu), dan sebaliknya pulang dan coba mengemudi di jalan yang sama lagi. Itu tidak masuk akal. Anda mungkin terjebak kemacetan, tetapi Anda masih lebih dekat dengan pekerjaan daripada saat Anda berada di rumah.