Pencipta Stack Overflow: "Pengembanglah yang menulis skrip untuk masa depan"

gambar

Selamat datang semuanya. Terima kasih telah mengundang saya.

Di belakang saya, Anda melihat kokpit dari Douglas DC-3. Jadi, pesawat ini dibangun pada tahun 1935; perhatikan fakta bahwa setiap indikator, setiap panel, setiap sensor, dan setiap sakelar terhubung dengan pesawat itu sendiri. Jadi, jika Anda menarik pegangan kontrol kapal ini, maka pada kenyataannya Anda menarik semua kabel dan dorongan yang terhubung ke pesawat kontrol penerbangan pesawat, dan kemudian bergerak melalui beberapa bentuk kontrol langsung. Ini sangat berbeda dari pesawat modern.

gambar

Misalnya, pada Airbus A380, Anda memiliki banyak "ipad" dan layar kaca, yang pada dasarnya adalah perangkat output komputer, dan sekelompok tombol dan switch adalah perangkat input ke komputer. Artinya, kapal itu sendiri dikendalikan oleh perangkat lunak, dan pilotnya adalah tautannya. Alih-alih tongkat kontrol, Anda memiliki keyboard, yang sangat nyaman jika selama penerbangan Anda memutuskan untuk memperbarui feed Anda di Facebook.

Dan ini adalah metafora untuk segala sesuatu dalam kehidupan modern. Banyak hal yang biasa kita lakukan melalui interaksi langsung sekarang menggunakan perangkat lunak dalam pekerjaan mereka. Kami tidak lagi mengatur alarm secara manual - kami menjalankan program yang akan membangunkan kami. Alih-alih mencatat dengan informasi, kami mengirim pesan. Daripada berdiri di jalan dan naik taksi, kita akan memanggil Uber ... mungkin suatu hari nanti kita bisa melakukannya di Helsinki.

gambar

Sekarang pikirkan peran Anda sebagai penghubung dalam perangkat lunak. Pada slide, Anda melihat gudang Amazon, yang mereka sebut pusat pemungutan, tempat para pekerja berjalan dan mengisi kotak-kotak dengan barang-barang.

gambar

Bahkan, mereka tidak tahu apa sebenarnya yang mereka lakukan. Sebuah gelang diletakkan di pergelangan tangan mereka, yang secara harfiah memberi tahu mereka ke mana harus pergi dan apa yang harus diambil dari rak mana. Mereka bahkan tidak perlu tahu apa yang sebenarnya mereka ambil - mereka memindai barcode dan memasukkan barang ke dalam kotak.

gambar

Dengan demikian, seluruh proses berlangsung melalui perangkat lunak komputer. Dan jika Anda berpikir tentang para pekerja di gudang Amazon, maka mereka, dengan cara tertentu, adalah perangkat keluaran yang sama untuk pengembang perangkat lunak yang mencoba menulis kode di mana kotak akan dikemas dan dikirim. Bahkan, pengembang perangkat lunak dapat mengumpulkan semua pekerja di halaman di depan gudang, membangunnya dalam huruf raksasa, dengan demikian menuliskan nama mereka, dan mengambil gambar dari drone. Beginilah cara programmer Amazon dapat bersenang-senang. Dan untuk ini mereka bisa menembak.

Jadi, semua dukungan untuk gudang Amazon ini dibuat oleh pengembang yang suatu hari memperhatikan bahwa pekerja rendah tidak dapat mencapai beberapa rak, sehingga mereka harus berhenti bekerja, keluar dari tangga dan naik ke rak tertinggi, yang bisa jatuh. Oleh karena itu, pengembang menerima database dari departemen personalia tentang pertumbuhan semua kolega dan mengubah kode mereka sehingga hanya pekerja tinggi yang mengambil barang dari rak tinggi. Dan, jika Anda memikirkannya, sangat keren untuk mengelola semua pekerjaan dengan perangkat lunak dan tidak membiarkan orang lain ikut campur dalam proses tersebut. Bagaimanapun, perangkat lunak dapat melakukan banyak hal dengan sendirinya. Dia bisa memiliki pendapatnya sendiri, bisa juga menjadi perantara. Orang-orang menciptakannya, dan pertanyaan saya adalah: siapa mereka? Siapa pengembang perangkat lunak ini yang membentuk masa depan kita?

Izinkan saya menceritakan sedikit kisah hipotetis. Katakan padaku jika ini terjadi padamu ... Kau menelepon teman baikmu dan bertanya apakah dia akan pergi ke pesta bersamamu. Dia menemukan alasan dengan mengatakan bahwa dia sakit / sibuk / lelah / kewalahan dengan pekerjaan / bahkan di kota. Baiklah, oke, beberapa hari kemudian, Anda pergi ke Facebook dan melihat bahwa sebenarnya, sahabat Anda pergi ke pesta, dan bahkan dengan ... yah, saya tidak tahu, mantan istri Anda.

gambar


Apa yang terjadi? Untuk beberapa alasan, ini semakin terjadi di jejaring sosial ini. Pada awalnya, Facebook hanya ingin menunjukkan kepada Anda beberapa jenis acara di dunia, dan kemudian memutuskan bahwa itu akan lebih menarik, karena teman Anda dan orang lain dari daftar teman Anda berpartisipasi di sana - Kebetulan ini adalah mantan istri Anda. Bagaimanapun, ini bukan acara yang paling menyenangkan hari ini, dan Anda sedih untuk enam bulan lagi.

Inilah masalah mediasi. Tidak seperti Amazon, Uber, atau perangkat lunak alarm Anda, Facebook bukanlah penghubung antara Anda dan objek di dunia. Dia bertindak sebagai mediator internal antara orang-orang, dan ini sudah penting.

Sekelompok peneliti akademik melakukan penelitian dengan orang-orang yang memiliki halaman Facebook. Menurut pendapat saya, enam ratus delapan puluh sembilan ribu orang mengambil bagian dalam percobaan ini.

gambar

Para peneliti menjalankan berita dari orang-orang ini - beberapa hanya menunjukkan kabar baik, beberapa hanya sedih, dan, pasti, masih ada kelompok kontrol. Penemuan itu benar-benar luar biasa. Mereka mendapati bahwa kelompok itu, yang hanya memperlihatkan kabar baik, bahagia, yang tidak dapat dikatakan tentang sekelompok orang dengan kisah-kisah sedih. Akan sulit untuk berpikir bahwa semuanya akan berakhir begitu saja, kan? Mereka menyebutnya "infeksi perilaku" - kata akademis yang sombong. Penelitian ini tidak dapat disebut mendalam, karena justru hasil seperti itulah yang diharapkan.

gambar

Apa yang mereka tentu tidak harapkan adalah hype di sekitar sejarah - banyak yang mengeluh bahwa studi ini sangat tidak etis dalam upaya untuk memanipulasi emosi orang tanpa sepengetahuan mereka. Ini merupakan pelanggaran terhadap standar etika. Tapi katakan padaku, apa yang dilakukan Facebook? Menurut Anda apa yang telah mereka lakukan sepanjang hari? Pertama, mereka tidak benar-benar menunjukkan kepada Anda segala sesuatu yang terjadi pada teman Anda. Ada algoritma yang ditulis oleh pengembang menggunakan pembelajaran mesin - ini adalah seperangkat perkalian matriks - yang mencoba untuk menunjukkan berita kepada Anda secara acak. Tapi apa jenis algoritma ini? Berdasarkan apa itu? Untuk tujuan apa Facebook mencoba mengoptimalkan kerjanya? Apa yang ingin mereka ciptakan? Apa yang dipandu oleh mereka saat memilih berita yang masuk ke feed Anda?

Tujuan mereka bukan untuk membantu ilmu pengetahuan dan mendeteksi infeksi perilaku, tujuan mereka adalah membuat Anda terus menggunakan Facebook. Itu sebabnya mereka mengoptimalkan pekerjaan mereka. Mereka mencari hal-hal yang akan membuat Anda terlibat, dan dengan "pertunangan" itu berarti minat yang tulus, misalnya, ketika Anda mengirim berita ke teman Anda. Ini pertanda keterlibatan Anda. Dan sekarang Anda memiliki algoritma ini, yang tujuannya adalah untuk membuat keputusan tentang berita apa yang akan dilihat dunia, jenis keterlibatan apa, apa yang akan "diklik" oleh orang-orang dan apa yang akan membuat mereka tertarik.

Ketika kami mulai membuat jejaring sosial ... Saya katakan "kami", tetapi, tentu saja, bukan saya. Ketika industri teknologi tinggi mulai membuat Twitter dan Facebook dan sejenisnya, ada banyak berita tentang bagaimana itu akan membantu demokrasi, bahwa jaringan sosial adalah alat komunikasi revolusioner di negara-negara diktator di seluruh dunia. Dll

Semua ini dianggap sangat utopis, semua orang berpikir bahwa Twitter dan Facebook akan membawa manfaat besar bagi dunia. Ini mengingatkan saya pada bagaimana, pada suatu waktu, televisi juga merupakan hal yang luar biasa, bagaimana petani di Mesir menontonnya dan belajar cara membuat roti, kaleng terbuka, dan bagaimana seluruh dunia akan menjadi lebih baik berkat kemampuan pendidikan TV. Faktanya, kita punya Lucille Ball, Louis Cay dan omong kosong lainnya.

Jadi, saya kira kira-kira hal yang sama terjadi dengan jejaring sosial: kami juga mulai berharap bahwa mereka akan meningkatkan komunikasi kami secara kualitatif. Faktanya, kita punya gelembung. Gelembung di mana orang hanya mendengar diri mereka sendiri dan sisi mereka. Semua orang di Amerika terkejut dengan hasil pemilihan presiden. Dan ini terjadi karena algoritma Twitter dan Facebook, yang memunculkan berita dengan pendapat yang sama dengan Anda. The New York Times sebenarnya menganalisis situasi ini untuk penyebaran berita palsu, karena sebenarnya ini penting.

gambar


Pria ini sedang berjalan di sekitar kota asalnya Austin ketika dia melihat banyak bus. Dia juga melihat demonstrasi atau mendengar bahwa protes terhadap Donald Trump sedang berlangsung di Austin. Maka muncul tweet palsu bahwa pengunjuk rasa anti-Trump dibayar untuk protes, dan semua karena bus tempat mereka tiba. Foto tweet itu seharusnya menunjukkan bus-bus yang membawa demonstran dari, katakanlah, Meksiko. Bahkan, bus-bus itu dimaksudkan untuk konferensi teknologi, yang selalu terjadi di Austin. Tetapi sejarah mulai menjalani kehidupannya sendiri, karena hal itu membangkitkan semangat orang-orang tertentu. Mereka semakin banyak berbicara tentang dia, kisah itu sampai ke situs web Reddit, atau lebih tepatnya, subreddit tentang Trump. Semuanya berakhir bahkan presiden terpilih Amerika Serikat menceritakan kisah palsu ini,yang tidak punya bukti. Dan hanya butuh satu orang dengan akun Twitter, yang memutuskan bahwa ceritanya bisa menarik.

Sejarah belum menyebar begitu banyak karena itu benar atau penting. Ini terjadi karena dia membuat orang kesal. Dan formula ideal untuk berbagi informasi di Twitter dan Facebook adalah kombinasi antara keadilan dan kebencian pada orang. Ada kutipan seperti itu: "Kebohongan akan mengelilingi separuh dunia sementara kebenaran mengenakan celananya", dan, saya pikir, kebohongan ini akan selamanya tersimpan dalam ingatan orang-orang. Bahwa benar-benar ada peserta profesional (mencari uang - sekitar Penerjemah) protes terhadap Trump. Bahkan sebelum munculnya jejaring sosial, ketika orang idiot dengan kamera bisa menyebarkan berita palsu, ada media cetak. Banyak uang terlibat di sana, serta rasa tanggung jawab kepada dunia untuk rilis berita. Di satu sisi, ini bisa disebut etika jurnalistik.

Saya pikir sekarang banyak orang yang bekerja di industri teknologi tinggi bertanya-tanya - mungkin Anda dan saya secara tidak sengaja membangun Kementerian Kebenaran alih-alih menciptakan mekanisme utopis hanya karena jejaring sosial bekerja begitu saja? Semua yang saya bicarakan dibuat dan diaktifkan melalui mediasi perangkat lunak, karena tugas utamanya adalah menjadi penghubung antar orang. Apa itu perangkat lunak? Mari kita bicara sedikit tentang itu. Perangkat lunak adalah sekelompok baris kode. Apa itu sebaris kode? Baris kode adalah enkapsulasi yang perlu Anda ketahui dua hal.

Pertama, itu akan berhasil di masa depan, itu nyata. Dan dalam arti tertentu, ini adalah masa depan. Ini adalah masa depan yang sangat kecil, tetapi jika Anda menyatukannya, maka masa depan akan menjadi semakin banyak. Kedua, sebaris kode mewakili banyak keputusan, sejumlah besar keputusan pribadi yang dibuat oleh pengembang perangkat lunak. Setiap kata, setiap baris, setiap parameter, setiap fungsi, setiap panggilan fungsi, semua ini adalah keputusan kecil yang dibuat oleh seorang programmer dan setiap keputusan yang dia buat akan mempengaruhi masa depan.

Itu sebabnya di Stack Overflow kami mengatakan bahwa pengembang sedang menulis skrip untuk masa depan. Anda duduk dan menulis skrip yang akan sepenuhnya diimplementasikan di masa depan. Apa lagi yang perlu Anda ketahui tentang perangkat lunak ini adalah semakin rumit selama 30 tahun terakhir. Ketika saya mulai pemrograman 30 tahun yang lalu, semuanya jauh lebih sederhana. Ini adalah VisiCalc, perangkat lunak paling terkenal yang digunakan pada Apple II. Chip CPU Apple II, yang sekarang saya pegang, tampaknya jauh lebih pintar daripada komputer itu sendiri. Di Apple II, Anda bisa menambah, mengurangi, mungkin melipatgandakan, tetapi berbagi sesuatu adalah tugas yang mustahil. Untuk melakukan ini, perlu menulis semacam kode pengguna.

Ketika saya mulai memahami Unix di perguruan tinggi pada tahun 1987, itu sudah cukup untuk membaca dua buku yang tidak terlalu tebal - dan Anda tahu segalanya tentang perangkat lunak. Itu sangat sederhana. Mengubah fakta bahwa sekarang kita hidup di dunia tempat kita dikelilingi oleh Uber, Stripe, sistem pembayaran, Google Maps, dan lainnya. Dan sekarang, jika Anda membuat perangkat lunak, Anda dapat dengan mudah memanfaatkan apa yang sudah ada. Jika Anda ingin menampilkan peta, Anda dapat menggunakan bantuan Google Maps, yang akan membuka peta dalam sepersejuta detik. Jika Anda ingin memanggil mobil, tentu saja, bukan di Helsinki, tentu saja, Anda dapat menggunakan Uber dan antarmuka mereka - mobil akan tiba di sekitar 1,5 baris kode. Jika Anda ingin melakukan pembayaran, Anda akan menggunakan antarmuka Stripe. Dan juga, jika Anda ingin menggabungkan hal-hal ini, Anda dapat membuat kode yang sangat kompleks. Kode,terdiri dari sepuluh baris. Cukup keren, ya?

Google Maps, atau lebih tepatnya satelit di luar angkasa, mengambil foto resolusi tinggi dari planet kita, dan Anda dapat menggunakan ini dalam kode Anda sendiri hanya dengan satu baris. Anda dapat memanggil kendaraan dengan seseorang yang mengemudi, dan saya bahkan tidak akan berbicara tentang berapa banyak baris kode di dalam mobil. Sistem pemrosesan pembayaran yang mencakup, saya bahkan tidak tahu, 200 negara dan 9 juta (dan ini adalah bilangan real) baris kode, yang merupakan bagian dari sistem pemrosesan pembayaran global, Anda juga dapat memanggil beberapa baris kode. Tentang jumlah yang sama diperlukan untuk menyelesaikan proses pembagian di Apple II. Ini adalah bagaimana hal menjadi rumit.

gambar

Tapi apa artinya ini? Dan fakta bahwa kadang-kadang ada sesuatu yang salah dan sistem menjadi sulit untuk di-debug. Misalkan dalam aplikasi Anda, Anda telah menempatkan peta Google dan Anda hanya perlu satu baris kode ... Saya akan menyebutnya begitu karena saya melihat beberapa titik koma, ini adalah dua baris kode. Jadi, Anda memasukkan kartu ke dalam kode Anda dan menemukan bahwa ketika pengguna menggulir roda mouse, kartu bertambah dan berkurang. Anda tidak ingin ini terjadi dan sedang mencoba untuk menonaktifkan roda gulir. Dan Anda tidak berhasil, karena Anda tidak mengerti cara kerja Google Maps, karena Anda baru saja menyalin sebagian kode dari Internet dan menempelkannya ke dalam kode Anda. Selanjutnya, Anda tidak menemukan korektor skala dan Anda berpikir bahwa jika Anda mematikannya, itu akan menyelesaikan masalah Anda. Tapi itu tidak keluar lagi.

gambar

Jadi apa yang harus dilakukan? Anda juga tidak mengerti cara kerja Google Maps. Anda dapat mengikuti instruksi dalam buku - memesannya di Amazon, menunggu pengiriman, baca semua 465 halaman.
Mungkin Anda akan mulai memahami struktur platform dan menemukan jawaban untuk pertanyaan Anda. Dan Anda dapat menulis di mesin pencari "mematikan roda gulir di peta Google."

gambar

Anda mungkin melihat bahwa pertanyaan ini telah diajukan sebelum Anda. Jika tidak, Anda dapat menanyakannya sendiri secara daring dan mendapatkan solusi untuk masalah Anda.

gambar

Misalnya, di Stack Overflow, ini adalah situs yang saya dan Jeff Atwood luncurkan pada 2008.

Jadi, beberapa hal yang perlu Anda ketahui tentang situs kami. Saat ini, 13 juta pertanyaan telah diajukan di Stack Overflow - dan ini hanya tentang pemrograman, dan ada 150 lebih situs tentang topik lain. 20 juta tanggapan ditulis oleh programmer di seluruh dunia. Kami memiliki 113 juta tampilan halaman unik dan sekitar 781 juta tampilan halaman setiap bulan. Ini adalah jaringan yang benar-benar raksasa.

Yang membedakan kami dari situs lain adalah memilih. Ketika Anda melihat jawaban, Anda dapat memilih atau menentangnya, tergantung pada apakah itu cocok untuk Anda.

gambar

Dan sudah fitur ini membuat Stack Overflow sumber daya yang lebih kuat untuk pengembang yang memecahkan masalah mereka. Voting berhubungan langsung dengan reputasi. Jika jawaban Anda dipromosikan, maka reputasi Anda juga meningkat, yang ditampilkan di profil Anda.

gambar

Kami juga melacak jumlah orang yang telah Anda bantu.

Dan ini membawa kita ke pertanyaan berikutnya yang selalu mereka tanyakan kepada saya - bagaimana kita melakukan bisnis dan bagaimana kita menghasilkan uang. Kami mencari programmer hebat yang melakukan pekerjaan luar biasa di situs dan menemukan pekerjaan hebat untuk mereka. Jadi, sekarang profil Stack Overflow Anda memungkinkan Anda untuk tidak hanya menunjukkan pencapaian Anda di situs, tetapi juga membuat cerita pengembang Anda sendiri.

Ini menunjukkan semua yang sedang Anda kerjakan, semua yang Anda tahu dan tidak tahu. Dan, jika Anda mengubah pengaturan, Anda dapat membukanya untuk pengusaha tertentu yang akan mempekerjakan Anda melalui Bakat Stack Overflow.

Jadi izinkan saya meringkas. Ini mungkin terdengar aneh, tetapi dunia telah menjadi sedemikian rupa sehingga semua yang ada di dalamnya ditentukan oleh perangkat lunak - bahkan hal-hal sederhana seperti jam alarm atau panggilan taksi. Dan sepertinya ini sama sekali tidak penting. Tetapi ini menjadi penting ketika pemilihan presiden juga menggunakan perangkat lunak. Semua keputusan yang dibuat pengembang sangat penting. Dan penting bagi kita untuk memahami siapa pengembang perangkat lunak ini. Kita perlu menganggap mereka sebagai filsuf-penyair zaman kita. Dan itulah mengapa kami sangat terobsesi dengan mereka di Stack Overflow, jadi misi kami adalah membantu mereka berbagi pengetahuan dan meningkatkan level mereka.

Terimakasih banyak!




gambar
Pelajari detail tentang cara mendapatkan profesi yang dicari dari awal atau Tingkatkan keterampilan dan gaji dengan mengambil kursus online SkillFactory:




All Articles