Hari yang baik
Nama saya Dmitry, saya dalam beberapa bulan 30 tahun di mana sekitar 10 tahun saya seorang tyzhprogramist dan setengah tahun yang lalu saya memutuskan untuk membuat sesuatu milik saya (lumpuh, miring, sekunder, tetapi milik saya).
Beberapa hari yang lalu saya berbicara dengan seorang teman murid saya dan di dalam dirinya saya mengenali diri saya sebagai sampel tahun 2009 - masalah yang sama, pikiran yang sama. Teks ini adalah kompilasi dari percakapan dan korespondensi kami pada malam 24 September. Momen pribadi dan contoh konkret terlewatkan, tetapi teks menjadi lebih logis dan digeneralisasi.
Apa yang membantu satu orang mungkin membantu orang lain.
Entri
Pendahuluan tidak bisa dibaca, tetapi dari situ dimungkinkan untuk memahami platform pengetahuan awal.
Di kelas 11, saya memiliki pilihan siapa yang akan belajar - seorang guru sejarah atau seorang programmer. Saya menyukai dan memahami sejarah, pemrograman bagi saya merupakan kegiatan yang sangat menarik dan menjanjikan. Saya memilih yang kedua, karena Anda juga dapat berlatih sejarah di waktu luang Anda.
Saya tidak dapat memilih lembaga pendidikan - orang tua saya mengklik kalkulator dan mengirim saya ke sekolah teknik setempat, yang menjadi perguruan tinggi pada 1 September. Saya tidak akan menulis tentang masalah pendidikan kita, tetapi keinginan saya untuk menulis kode telah sangat berkurang. Setelah menerima spesial sekunder, saya dengan tegas menolak untuk belajar lebih lanjut dan memutuskan untuk bekerja. Seorang teman memanggil saya untuk bekerja sebagai administrator sistem dalam organisasi anggaran:
“Informatisasi layanan kesehatan akan segera dimulai, perlu untuk mengumpulkan komputer dan mengambil kertas yang macet dari printer dan menjelaskan semuanya kepada orang secara cerdas. Anda akan bekerja selama dua atau tiga tahun, dan di sana Anda akan melihat apa dan bagaimana untuk melanjutkan .
" Saya tidak akan menulis tentang masalah reformasi di Rusia, tetapi saya merevisi pandangan saya tentang kehidupan dan orang-orang. Setelah bekerja selama hampir 6 tahun, saya berhenti, karena semuanya menjadi sangat sedih. Saya beristirahat, berganti pekerjaan, dan kemudian keinginan untuk program menjadi hidup.
Maret 2018 - September 2018
Pada awalnya ada ide - "di sini akan ada situs di mana Anda bisa melihat statistik yang lebih rinci dan sejarah perubahan data". Kita berbicara tentang peringkat pemain di server satu game online (nama panggilan, level, klan, dll.). Sumber daya resmi hanya memberikan nilai saat ini, yang diperbarui sekali sehari. Tidak ada riwayat perubahan, tidak ada visualisasi, sulit untuk memilih apa pun dan opsi penyortiran terbatas. Ada versi tidak resmi di mana sudah ada lebih banyak fungsi, tetapi juga tidak nyaman bagi saya, dan bahkan dengan penambang. Karena itu, pikiran kedua muncul untuk pikiran pertama:
“Kita perlu melakukan sesuatu milik kita sendiri! Nyaman dan tanpa penambang .
" Dan diharapkan proses pembuatannya memakan waktu 1-2 jam di malam hari, karena tidak ada cukup waktu luang, dan saya tidak ingin mengurangi waktu tidur. Sepanjang malam itu, saya melukiskan rencana aksi yang kasar dan mulai menerjemahkannya menjadi kenyataan.
Tetapi untuk melakukan sesuatu, seseorang harus belajar untuk melakukannya. Selama beberapa hari saya mempelajari artikel dan video dengan topik "apa yang diperlukan untuk membuat situs web?", Setelah beberapa hari saya beralih ke "membandingkan berbagai PL - pro dan kontra mereka". Dalam sekitar satu minggu, menonton video dan membaca artikel setiap hari selama 2-3 jam, saya sampai pada serangkaian teknologi:
- html5
- css3
- python 3
- Django 2
- sql (postgresql 10)
- linux (debian9)
Begitu pengetahuan yang didapat dilupakan dan semuanya harus dimulai dari awal.
Pelatihan mandiri - keterampilan ini sangat sulit bagi banyak orang. Seseorang atau sesuatu terus-menerus mengganggu: kucing itu memutuskan untuk berlutut, seorang tetangga bernama, seri baru seri favoritnya, mekanisme baru di jejaring sosial dan ratusan contoh lainnya. Selain tekad, tekad, dan keinginan untuk menciptakan, Anda tidak akan memiliki sekutu (masih ada kelaparan, tetapi tidak selalu ada). Tutup jejaring sosial, tutup tab seri, matikan suara di telepon, tutup pintu ke kamar tidur - untuk sementara hapus semua gangguan. Dalam kelaparan akan informasi, otak itu sendiri akan ingin menerima informasi, dan di sini sebelumnya dasar-dasar SQL, yang akan menjadi umpan yang baik.
SQL dan skrip untuk menulis data ke database
SQL menarik karena ada sedikit lowongan di mana pun ia berada di tempat pertama, tetapi ada banyak lowongan di mana ia berada di tempat ke-2 atau ke-3. Jika Anda baru mulai terlibat dalam pemrograman, maka dasar-dasar SQL bisa menjadi awal yang baik. Saya memilih
postgresql sebagai DBMS karena sering ditulis bahwa ini adalah pilihan yang baik untuk python (sejauh ini benar, saya tidak bisa menilai). Terima kasih kepada Postgres Professional untuk
menerjemahkan dokumentasinya .
Jika Anda belajar dari bahan-bahan yang tersedia di Internet, maka ada kemungkinan Anda tidak selalu berhasil memahami semuanya - suatu tempat menyampaikan teori secara tidak akurat, di suatu tempat contoh tidak mencerminkan esensi topik, di suatu tempat Anda tidak menjelaskan momen yang menarik untuk Anda. Setelah membaca satu artikel, perkuat apa yang telah Anda pelajari dengan membaca artikel serupa atau menonton video tentang topik serupa.
Dan pada akhirnya, terapkan materi yang dicakup oleh contoh ide Anda, bahkan jika nantinya akan dilepaskan atau dibuang sepenuhnya sebagai elemen yang tidak perlu. Jangan takut untuk bereksperimen. Tambahkan bookmark menarik ke browser Anda.
Jadi kami berkenalan dengan SQL, memilih DBMS, membuat database untuk ide kami dan memutuskan untuk pindah ke poin berikutnya - entah bagaimana merekam informasi dari halaman di Internet ke dalam database kami.
Python datang untuk menyelamatkan, yang membawa paket-paketnya
psycopg2 ,
json ,
datetime ,
permintaan . Oh, dan itu menyenangkan untuk mencari tahu semuanya. Dalam sekitar satu minggu percobaan, sebuah skrip yang berfungsi menulis perubahan ke database sekitar 20-25 ribu karakter.
HTML5 & CSS3
Sekarang Anda perlu menampilkan semua ini dalam bentuk tabel di situs. Saya bergerak dengan lancar ke dasar-dasar html5 dan css3 - kerangka halaman dan tabel. Dalam mencari materi yang bagus, saya menemukan satu portal yang menjanjikan untuk membuat pengembang front-end dari saya untuk sedikit uang. Beberapa pelajaran pertama gratis, dan kemudian sedikit, dalam pelajaran ini hanya pengetahuan dasar minimum yang diberikan. Kami melalui pelajaran gratis, menerapkan pengetahuan yang diperoleh dan mendapatkan blok ini:
<div id="header"> </div> <div id="main"> </div> <div id="content"> </div>
Semuanya dijelaskan dengan jelas, mereka dapat memiliki kursus jika perlu. Dan setelah beberapa hari saya mengetahui bahwa ini adalah bentuk penulisan yang sudah ketinggalan zaman dan Anda bisa menulis header, tag utama, dll. Dan pada langkah ini saya menyadari bahwa pada tahap awal pembelajaran, membeli kursus online tidak sepadan. Saya tidak bisa mengerti betapa relevannya mereka (dan seringkali penulis tidak menyebutkan tanggal artikel) dan seberapa banyak pengetahuan yang mereka butuhkan. Karena itu, saya menghapus bookmark dan sedikit kemudian menemukan apa yang saya cari.
Perlu dicatat bahwa ketika Anda membeli sebuah kursus, Anda secara finansial mewajibkan diri Anda untuk mengambilnya -
“yah, tidak sia-sia bahwa Anda memberikan denyuyu, tetapi Anda dapat membayar untuk Internet” . Dan studi informasi yang tidak Anda butuhkan untuk tujuan saat ini dimulai, dan jika perlu, bukan fakta bahwa Anda akan mengingatnya. Dan jika Anda meninggalkan kursus, Anda akan menyalahkan diri sendiri - “
dan mengapa Anda
mengambil kursus? dia digantung berat mati dan dalam 3 hari itu berakhir, dan tidak ada yang membutuhkan sertifikat ini ... semua rasa sakit .
"Yang menarik saya ingin menyoroti yang berikut:
- htmlbook.ru dan - sebagian besar permintaan tag html membawa saya ke situs ini
- webref.ru - pewaris htmlbook.ru
- htmlacademy.ru - di suatu tempat saya melihat rekomendasi dari sumber ini dan memutuskan untuk melihat serangkaian pelajaran gratis mereka. Berbekal pengetahuan dari pelajaran gratis, Anda sudah dapat membuat halaman: header, basement, unit utama, menu, tabel dan sekrup css untuk semua ini
Django 2
Cukup baca
situs web resmi dan
terjemahannya untuk versi 1.9 , yang dalam banyak kasus cocok untuk versi 2.0. Itu saja. Kesalahan yang tidak dapat dipahami, salin dan tempel ke mesin pencari. Dengan probabilitas 90%, setelah 1-5 menit Anda akan menemukan situasi yang sama dengan solusi untuk masalah tersebut, kadang-kadang dengan analisis solusi.
Asisten utama kami adalah
stackoverflow , sistem tanya jawab pemrograman populer. Awalnya, hanya ada bahasa Inggris, tetapi saat ini ada 4 versi lagi yang kami minati dalam
bahasa Rusia .
Di sini, saya ingin menarik perhatian ke beberapa sumber yang terkadang muncul di hasil pencarian saya - pertanyaan / jawaban dengan stackoverflow diterjemahkan oleh terjemahan mesin dan dengan iklan (misalnya,
https://stackoverflow.com/a/3123/ ). Terkadang mereka berdiri di atas stackoverflow itu sendiri. Terjemahan di beberapa tempat cukup baik, dan di beberapa tempat hanya sekelompok kata - kemungkinan besar ini karena konstruksi kalimat yang benar, karena orang-orang dengan tingkat bahasa Inggris yang berbeda (dan tidak hanya) menulisnya di stackoverflow.
Tidak peduli seberapa tinggi kualitas terjemahan mesin ini dibuat - baca teks aslinya, dan jika bahasa Inggris Anda tidak memungkinkan Anda untuk sepenuhnya memahami teks, maka gunakan penerjemah online - seiring waktu Anda akan mulai memahami lebih banyak kata dan suatu hari nanti lihat saja jawabannya dan pahami apa yang tertulis di sana .
Sumber daya terpopuler kedua di mana pencarian jawaban menuntun saya adalah
toster - terima kasih kepada semua orang yang meninggalkan jawaban dan menjelaskan jawaban-jawaban ini.
Lautan informasi dan versi konsep situs
Sekitar lebih dari 3 bulan telah berlalu sejak awal pelatihan - ada jeda 2 minggu, dan pembacaan berulang artikel dan manual, dan masalah yang terjadi selama 2-3 malam. Bookmark browser bengkak, dalam telegram setiap 15 menit artikel baru tentang teknologi yang menarik bagi saya, VKontakte penuh dengan cetak ulang artikel ini. Informasi tenggelam di laut lebih mudah daripada paru-paru.
Dan pada saat itu kesadaran datang - tetapi setelah semua, itu mulai tersedak. Dan pada malam hari saya meninjau seluruh rencana saya - mulai dari penampilan situs dan fungsinya hingga teknologi yang sedang digunakan atau direncanakan untuk digunakan.
Rencana itu sendiri diisi ulang dengan sub-paragraf dan setiap sub-paragraf diberikan poin-poin penting, prioritas, yang ditunjuk tanpa menutup yang melarang dirinya untuk melanjutkan. Tetapi yang paling utama ada pertanyaan - dia mengajukan pertanyaan pada dirinya sendiri, menemukan jawabannya sendiri, menjelaskannya sendiri, membuat perubahan pada rencana itu sendiri.
Bulan berikutnya adalah terapi kejut - menempatkan Debian 9 (yang saya pelajari dari awal), di mana untuk bulan pertama tidak ada jejaring sosial, forum, acara TV, film, skype, perselisihan. Saya baru saja menghilang selama sebulan dari Internet biasa untuk saya (dan untuk sebagian besar pengguna).
Jadwal malam saya seperti ini:
- masalah atau pertanyaan
- mencari solusi dan jawaban
- implementasi
- kami menulis solusinya di buku catatan atau bookmark di peramban
- jika kreasi kami tidak terkendali, maka kami menghapus semuanya dan mulai melakukannya dari awal (versi 4 saat ini digunakan)
Di suatu tempat pada bulan Agustus, saya memulihkan beberapa kontak sosial saya - saya kembali ke jejaring sosial, menginstal Discord, saya pergi ke windows setiap 2-3 hari dan memeriksa apakah saya belum mentransfernya ke Debian. Tingkat pelaksanaan rencana telah melambat, tetapi itu tidak membuat saya takut, karena versi konsep pertama dari situs tersebut sudah berjalan di komputer lokal dan pada 1 September saya telah berencana untuk pindah ke VDS.
Dan saya tidak punya waktu. Sementara saya menemukan seluk-beluk pengaturan VDS, sementara saya menemukan cara memulai kreasi saya, sementara aturan situs macet, sementara saya memecahkan masalah dalam kehidupan nyata, sementara saya terganggu oleh jaringan sosial, sementara saya memecahkan masalah kesehatan, saya berhasil memulai situs terlambat dalam 4 hari. Untuk beberapa alasan, ini sangat memengaruhi saya - ada cadangan hampir sebulan, perlu untuk tidak melakukan apa-apa, tapi saya terlambat dan tidak semuanya dilakukan. Saya sebelumnya telah melanggar jadwal saya sendiri, tetapi praktis tidak menyadarinya, dan 4 hari terlambat ini memukul saya. Sedih dan berpikir malam itu, saya mulai bekerja lebih jauh. Dan saya mulai dengan mengirim alamat situs ke kenalan ke-3 saya. Setelah menunggu reaksi, saya bersemangat - peringkat rata-rata adalah "topiknya normal, minum ini dan itu akan keren."
Sekarang keinginan pengguna telah bergabung dengan paket saya - sebagian besar permintaan ada di paket saya (dan masih ada). Jadi saya tidak butuh ini sendirian.
Dan pada saat itu saya berhenti.
Pekerjaan telah berubah (saya semakin lama semakin jauh dari itu dan itu membuat saya sedih lebih dari 4 hari keterlambatan dalam meluncurkan situs), kegiatan sehari-hari, musim gugur limpa dan seratus alasan lainnya menghabiskan waktu semakin sedikit. Selama seminggu terakhir, saya hanya duduk beberapa kali untuk proyek ini. Dan itu membuatku takut bahwa aku tidak akan menyelesaikannya. Dan yang paling membuatku takut adalah bagaimana orang hidup dalam situasi yang sama, tetapi dengan istri dan anak-anak? Bagaimana Anda bisa melakukan semuanya?
Mengapa saya menulis semua teks ini?
Sekali lagi mengingatkan pembaca akan kebenaran:
- jika Anda ingin melakukan sesuatu - ambil dan lakukan
- bereksperimen, jangan takut untuk melakukan kesalahan - komputer akan menanggung segalanya, yang utama adalah bahwa pada akhirnya Anda mendapatkan produk yang berkualitas
- jika Anda seorang siswa yang kehilangan minat dalam belajar, atau hanya mempelajari sesuatu yang baru, maka cobalah untuk mempelajari materi dari sumber-sumber alternatif, jika ini tidak membantu Anda, maka ubah profesi Anda - bekerja dalam pekerjaan yang tidak dicintai dan tidak dapat dipahami akan melelahkan Anda dan mengganggu rekan kerja Anda
- tidak pernah ada kata terlambat untuk belajar, tetapi yang terbaik adalah memulai sedini mungkin
Epilog
Selama enam bulan terakhir saya telah belajar banyak informasi baru dan menarik, mengubah beberapa kebiasaan saya, menyingkirkan sesuatu, terbiasa dengan sesuatu.
Secara singkat dari yang menarik:
- mengubah google.com menjadi duckduckgo.com , karena duckduckgo terintegrasi dengan stackoverflow dan jawaban atas pertanyaan Anda sudah dapat segera ditampilkan di halaman pencarian
- menolak windows, skype, menghapus akun terakhir di jejaring sosial
- tidak lagi takut pada nano dan bahkan tahu bagaimana keluar dari vim
- Saya memikirkan privasi di jaringan, setelah saya melihat informasi apa yang dapat ditinggalkan pengguna hanya dengan mengunjungi situs
- berhenti membaca bahasa Inggris
- jatuh cinta pada konsol dan menganalisis keluaran informasi tentang permintaan ke situs (betapa bahagianya saya ketika saya membuat 1 permintaan dari 100 permintaan ke basis data, dan kemudian juga mengurangi waktu pelaksanaannya dengan membatasi pemilihan hanya pada kolom dan baris yang diperlukan)
- Saya menyadari betapa saya tidak tahu teknologi yang saya gunakan
- dan saya menyesal bahwa 5-7 tahun yang lalu tidak ada yang menunjukkan saya python dan tidak dapat menjelaskan SQL dengan jelas (omong-omong, guru itu masih mengajar, siswa masih tidak mengerti penjelasannya dan belajar SQL sendiri)
- Saya dapat membuat sesuatu milik saya sendiri, dan suatu hari akan berhenti menjadi lumpuh dan miring.
Baik untuk semua
Lakukan sajaps Saya sangat kompleks dan sekarang secara mental belum siap untuk memberikan tautan ke situs untuk masyarakat umum. Saat ini, ada 3 item "merah", setelah itu item "Anda dapat membual tentang kerajinan Anda" akan terbuka.
pss membuat aliran pemikiran saya sedikit, terima kasih atas kritik dan komentarnya