CodeGym /Blog Jawa /Acak /Kepiye carane? Utawa proyek pisananku
John Squirrels
tingkat
San Francisco

Kepiye carane? Utawa proyek pisananku

Diterbitake ing grup
Iki minangka terjemahan saka crita sukses saka komunitas Jawa global kita. Alex sinau basa Jawa ing versi kursus basa Rusia, sing sampeyan sinau ing basa Inggris ing CodeGym. Muga-muga bisa dadi inspirasi kanggo sinau luwih lanjut lan mungkin ing sawijining dina sampeyan pengin nuduhake crita sampeyan dhewe karo kita :)

Pambuka

A sethitik babagan carane aku njaluk menyang program. Aku dadi guru lan psikolog kanthi latihan, lan suwene 5 taun aku wis nindakake profesiku kanthi sukses. Nanging amarga macem-macem alasan, aku tambah mikir babagan pindhah menyang negara liya. Lan amarga basa lan peraturan beda ing negara liya, aku ora bisa dadi profesional sing padha tanpa latihan maneh sing serius. Dadi aku miwiti nggoleki cara sing luwih gampang lan menarik kanggo mindhah lan sukses. Kepiye carane?  Utawa proyek pisananku - 1Aku nyoba tanganku minangka seniman tato (iki ora mbutuhake kawruh basa), nanging iki crita kanggo dina liyane. Banjur kanca kancaku ngenalake CodeGym. Aku pisanan mamang janji kanggo nggawe kula programmer lengkap dening muter game lan ing rega andhap asor. Nanging banjur tak sawetara dhuwit ulang (ora tundhuk "tax kulawarga"), lan ngadhepi pilihan antarane WoW lan CodeGym ... Inggih, thanks kanggo diskon pas wektune, timbangan tipped ing arah tengen, lan kene aku. Kaya sing wis dingerteni, CodeGym minangka praktik murni 90%. Sampeyan sinau kanggo ngatasi tugas. Sampeyan sinau kanggo nemokake kawruh sing kurang ing Internet. Kabeh iki apik, nanging kanggo 15 tingkat aku ora bisa goyangake koyo sing aku ilang soko sing bakal ngrampungake gambar kanggo kula. Aku panginten babagan gabung GeekBrains, nanging (mbokmenawa bok manawa) kanca sing padha mandheg kula ing wektu lan ngenalaken kula kanggo Udemy. Nalika aku mbukak gudang ngelmu iki, aku melu banding: " Psst, kanca. Apa sampeyan anyar?" Ana diskon kanggo sampeyan ... mung 3 dina — Aja kantun kesempatan iki! " Mengko dadi cetha yen tansah ana diskon, nanging dudu titik kasebut. Aku langsung tuku paket karo rong kursus: Jawa saka 0 nganti Pro lan sing padha kanggo Android. Lan ing kene crita kita diwiwiti.

Sukses utawa gagal?

Nalika aku nggarap kursus Android, aku entuk peer kanggo nggawe proyek adhedhasar kawruh anyar. Aku iki wong sing percaya yen nglakoni kanthi cara sing prasaja utawa biasa kaya ora nindakake babar pisan. Dadi, aku langsung nggawe rumit uripku. Aku noleh menyang wong sing aku kenal sing duwe imajinasi sing paling maju lan urip. Iki bojoku sing ditresnani (ya, dheweke uga bakal maca artikel iki). Dheweke nyaranake nggawe aplikasi kanthi gambar kewan, sing nggawe swara kewan sing cocog nalika diklik. Iku idea gedhe, nanging isih cukup prasaja. Njupuk saran iki minangka pondasi, aku wiwit mikir:
  • Aplikasi iki kudu luwih saka fluff (soko kanggo ngguyu lan lali). Aku pengin duwe nilai. Contone, kanthi mulang soko.
  • Ayo dadi aksara karo kewan. Nanging ora mung aksara apa wae, nanging aksara Inggris!
  • Lan ora mung kewan, nanging kewan langka sing sawetara wong ngerti, kanggo nggedhekake cakrawala!
  • Lan kudu ana animasi, reproduksi audio saka jeneng huruf, lan jeneng kewan ing basa Inggris lan Rusia!
Saiki sing disebut PR (aku kelalen kanggo sebutno sing sadurunge CodeGym Sejatine aku ora pati ngerti karo program. Lan kurang saka 3-4 sasi liwati saka wayahe aku miwiti aktif nggunakake website nganti wektu aku miwiti project. Dadi, yen sampeyan Dadi veteran ing wilayah iki lan sampeyan mikir, " Pff... Apa ana owah-owahan saka versi asline? ", Aku njamin sampeyan, ya, diganti)! Kesulitan pisanan sing daktemoni yaiku , cukup aneh, miwiti proyek kasebut. Ternyata, penulis ora mung sing ngalami "pemblokiran penulis" ... Nanging amarga aku psikolog, aku ngerti solusi kanggo masalahku. Sampeyan mung kudu miwiti nindakake soko. Njupuk paling sethithik langkah cilik, banjur aja mandheg. Dadi aku miwiti karo kelas Letter abstrak . Kelas iki duwe sawetara lapangan lan banjur kudu macem-macem cara. Ing kasunyatan, aku ora ngerti apa sing bakal ditindakake, nanging aku kudu nindakake apa wae. Banjur, aku nggawe kelas kanggo saben huruf, nggawe dheweke entuk kelas abstrak. Butuh wektu akeh, lan ing dina pisanan kerjaku rampung. Dina sabanjure aku mbusak proyek kasebut lan miwiti maneh. Aku mung mbukak project kanggo ngelingi apa wis diganti wiwit wayahe aku diterangake ing ndhuwur. Lan aku seneng ngomong yen kabeh katon luwih apik nalika aku rampung, nanging ora. Pancen isih ana kelas kanggo saben huruf ... Iki khusus amarga aku ditugasake peer iki meh ing awal kursus Android, lan dhewe aku kudu ngerteni seluk-beluk hubungan antarane aktivitas (jendhela aktif, utawa kaya sing) karo kelas. Lan aku ora nemokake utawa mikir apa-apa liyane saka cara kikuk iki nggandhengake kelas tartamtu karo kegiatan tartamtu. Oalah, salah sawijining prinsip pemrograman (supaya pengulangan) dilanggar kaping 26. Pisanan, aku rampung (kayane aku) ngetrapake rong huruf pisanan, nggawe UI kasar sing kasusun saka rong menu (menu umum sing bisa uga perlu nalika nggedhekake fungsi, lan daftar isi, saka ngendi sampeyan bisa mlumpat menyang sembarang saka aksara). Aku ora nemu akeh kangelan ing program. Nalika aku ngetrapake proyek independenku, akeh perkara, kayata hubungan antarane kelas, metode, lan liya-liyane, dadi jelas lan proyek kasebut dhewe dadi praktik sing apik kanggo nggabungake kabeh kawruh sing aku entuk ora mung babagan Android, nanging uga babagan Jawa. Kangelan kapindho anayen layang kasebut diowahi bebarengan karo jenenge. Transisi lancar (shading) katon kaya swara sadurunge gambar. Nanging nalika aku sijine wektu tundha ing swara, kabeh thread froze - transisi iki mung postponed dening jumlah wektu tundha, prodhuksi efek undesirable padha, mung mengko. Banjur aku nggawe keputusan sing wani nggawe programku dadi multithread! Aku dipindhah puter maneh swara menyang thread kapisah, karo wektu tundha sing cukup dawa kanggo gambar kanggo mbukak. Iki minangka adoh minangka multithreading tindak, nanging aku bangga ngomong sing aku nulis app multithreaded. Kesulitan pungkasan yaiku milih bahan sing cocog. Apa sampeyan mikir yen Inggris ora duwe kewan kanggo huruf X (pranyata ana)? Aku kudu ngenali 26 kewan lan golek gambar lan swara, lan ngrekam jeneng 26 aksara lan 26 kewan. Yen aku wis nggarap tim, aku mesthi bakal ninggalake bagean iki kanggo wong liya. Momen monoton kuwi mateni kepinginan kanggo kerja, lan nalika ora ana kepinginan, ana alesan. Oalah, tataran iki njupuk udakara 2 minggu (aku nindakake proyek kasebut ing wektu luang lan nalika ora ana alesan). Proyek kasebut diumumake rampung kira-kira 3-4 minggu sawise diwiwiti.

Apa worth kanggo terus sinau program?

Disillusionment ngiring. Kaping pisanan, aku ora diidini nerbitake PR ing kursus. Aku nindakake karya lan sijine ing ton gaweyan kanggo pamer, nanging aku ora diijini kanggo. Kapindho, aplikasiku bisa digunakake kanthi apik ing emulator lan ing telpon. Apa sing dakkarepake, aku ora ngetrapake animasi, amarga aku ngidoni lan mutusake bakal rampung nalika aku wis sinau babagan pelajaran sing cocog ing kursus kasebut. Nanging nalika aku wiwit mikir babagan nyebarake aplikasi kasebut, aku nemokake masalah sing menarik. Sawise nggunakake telpon lan tablet liyane kanggo mriksa apa aplikasiku dioptimalake kanggo macem-macem layar lan versi Android sing beda, aku ngalami kesalahan sing ora dingerteni. Program mung mateni nalika ngalih menyang layang. Aku nyoba kanggo golek ROOT saka masalah, dideleng log, kang, dibandhingake istiméwa Jawa ringkes, ketoke malah luwih kaya hocus-pocus. Internet ora nulungi aku. Ing tangan siji, aku nggawe aplikasi kerja sing disenengi anak-anakku. Ing tangan liyane, iku mung bisa digunakake ing telpon. Iki nggawe aku ngguyu. Mesthi wae, aku kesel, nanging mikir babagan iki, aku nyimpulake yen aku entuk luwih akeh tinimbang sing ilang:
  • Aku dadi luwih apik kanggo ngatasi kritik babagan karyaku.
  • Aku nyadari nilai kawruh lan pengalaman ing desain piranti lunak.
  • Aku ngedongkrak pamrograman ajining dhiri.
  • Aku nyadari kabutuhan kanggo sinau pola desain lan dhasar refactoring.
  • Lan kaya sing dakkandhakake, saiki aku duwe aplikasi dhewe, sing ora ana wong liya lan mbokmenawa ora bakal duwe. =)
"Aku ngerti aku ora ngerti apa-apa". Kanthi ngleksanakake proyek pendhidhikan kaya iki, sampeyan duwe kesempatan sing apik kanggo nganalisa apa sing sampeyan ngerti ing ngendi sampeyan duwe kesenjangan ing kawruh, lan ngenali cara kanggo luwih maju. Apa perlu terus sinau program yen sampeyan ngerti manawa kabeh upaya sampeyan sajrone umur dawa wis mindhah sampeyan saka 0 dadi +0,001? Kanggo kula, jawabane ya. Lha kowe piye?
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION