Komputer Pemrograman

Mengapa Persyaratan Siswa Sastra Harus Termasuk Pemrograman

Tidak dapat disangkal bahwa, dalam dunia yang semakin global, belajar bahasa asing adalah keuntungan. Itu mengajarkan orang tentang budaya lain dan membuka kemungkinan untuk pengalaman yang lebih memperkaya ketika bepergian ke luar negeri.

Namun pada saat yang sama, dunia kita menjadi lebih berbasis komputer dan sebagai hasilnya tiga tahun ke depan. Pastinya Amerika Serikat akan memiliki 1,4 juta pekerjaan ilmu komputer. Tetapi hanya 400.000 lulusan mahasiswa yang memenuhi syarat untuk mengisinya. Dengan begitu banyak perubahan di cakrawala, generasi muda perlu memasuki dunia dengan tiga bahasa : asli, asing, dan pemrograman.

Apa itu Pemrograman?

Pemrograman bukan hanya tentang memukul keyboard sampai aplikasi muncul. Belajar menulis dan memahami kode membutuhkan serangkaian kompetensi, yang semuanya perlu diketahui orang sebelum memasuki dunia masa depan. Pemikiran komputasional, atau kemampuan untuk menerjemahkan banyak data ke dalam konsep abstrak dan memahami penalaran berbasis data. Hal itu merupakan keterampilan penting untuk masa depan.

Mengapa? Karena ini adalah keterampilan yang dikembangkan oleh kode pembelajaran tetapi dapat digunakan lintas disiplin ilmu. Ya, itu berarti bahkan penulis, ahli biologi, pemasar, dan psikolog semuanya dapat memperoleh manfaat dari pemahaman tentang kode.

Bahkan, pemrograman itu sendiri dapat menawarkan cara bagi orang-orang di berbagai profesi untuk memproses sejumlah besar data. Proses yang sekarang dapat kita kumpulkan, berkat bagaimana teknologi yang berkembang menjadi.

Seorang pemasar dapat menulis sebuah program yang merekomendasikan tempat-tempat terbaik untuk menemukan klien yang tertarik. Atau seorang fisikawan dapat menulis sebuah program untuk menggambarkan teori kepada kolega. Pemrograman membuka pintu dan memungkinkan orang untuk mengekspresikan diri dan informasi dengan cara baru.

Konsep Pemrograman

Logikanya, sebuah konsep yang diajarkan dalam matematika sekolah menengah dan dilupakan segera setelahnya. Nyatanya adalah keterampilan lain yang diajarkan oleh pemrograman keterampilan, sementara banyak mata pelajaran dapat mengajarkan logika. Pemrograman adalah unik karena siswa dapat belajar untuk merasakan kelemahan dalam logika secara instan. Jika instruksi yang Anda berikan kepada komputer tidak masuk akal, maka program Anda tidak akan berfungsi. Terserah kepada Anda untuk kembali melalui pemrograman Anda, menemukan masalah dan memperbaikinya.

Siswa memecahkan masalah di kelas matematika setiap saat. Tetapi motivasi mereka jarang lebih dari “Saya tidak ingin gagal di kelas ini”. Dengan kode, motivasi Anda bisa menjadi “Mengapa video game ini saya buat tidak berjalan dengan baik?”. Atau “Mengapa aplikasi fesyen yang saya buat menciptakan kombinasi pakaian yang salah?”. Taruhannya lebih tinggi bagi siswa karena mereka menciptakan masalah dan menyelesaikannya.

Pemecahan masalah bukan hanya yang dikatakan oleh para pekerja dengan keahlian terbaik. Tetapi juga keterampilan yang paling dapat ditransfer dari ketiganya. Apa pun karier yang Anda pilih, Anda harus menyelesaikan masalah jika ingin menjadi sukses.

Membahas Pemrograman Lebih Spesifik

Pemrograman adalah 20 persen menulis kode Anda dan 80 persen memperbaiki kode Anda. Mengharuskan Anda menemukan cara untuk membuat bagian-bagian yang berbeda bekerja satu sama lain. Dengan proses menulis, menjalankan, mengubah dan mencoba lagi sampai program berjalan (hampir) dengan sempurna.

Tidak ada waktu untuk mengangkat tangan Anda dalam kekalaha. Jika bug membuat program Anda tidak berjalan, maka Anda memiliki masalah untuk dipecahkan. Menemukan cara untuk mengatasi hambatan yang dirasakan untuk mencapai tujuan tertentu adalah inti dari pemecahan masalah. Sukses tidak pernah garis lurus, dan belajar kode program mendorong titik itu pulang. Mencapai tujuan seringkali membutuhkan revisi yang luas dan sedikit kreativitas.

Pandangan Orang Awam Tentang Sistem Pemrograman

Pemikiran lateral adalah mengapa bahasa pemrograman dapat diterapkan ke berbagai bidang studi. Banyak orang mungkin tidak menyadari betapa bermanfaatnya itu. Karena mereka belum menyadari bahwa menjadi seorang ahli dalam satu aspek karier tidak akan memotongnya lagi. Dunia dengan cepat membangun mesin dan membuat program yang akan menjadi ahli dalam aspek tunggal bidang yang berbeda.

Karena pekerjaan yang lebih sederhana menghilang karena otomatisasi, pekerjaan baru yang dibuat di tempat mereka lebih canggih daripada pendahulunya. Kita manusia, untuk melakukan apa yang tidak bisa dilakukan komputer, yaitu berpikir lateral. Pengkodean adalah salah satu cara untuk mengubah subjek yang tampaknya tidak terkait menjadi informasi yang relevan dalam masyarakat saat ini. Menemukan hubungan antara seni dan matematika, musik dan fisika atau psikologi dan geologi menjadi keterampilan yang dicari.

Dengan kemampuan untuk mengumpulkan sejumlah besar data pada hampir semua hal. Kita perlu cara untuk menggabungkan data itu bersama untuk menciptakan makna dan wawasan. Pekerjaan akan membutuhkan pemikir yang lebih dalam, logis, lateral, yang berarti sekolah perlu menghasilkan pemikir seperti itu. Menambahkan pemrograman ke kurikulum sekolah menengah adalah awal yang baik. Dunia sedang berubah, dan proses pemikiran generasi berikutnya perlu berubah untuk mengikutinya.

Pentingnya Kehadiran Programmer dalam Perusahaan

Amerika Serikat akan menghadapi kekurangan programmer yang signifikan pada tahun 2020 mendatang. Bisnis dan industri di seluruh negeri akan mencari untuk mempekerjakan lulusan berwajah segar. Tidak hanya mengisi pekerjaan baru ini akan membantu ekonomi dengan menambah tingkat pekerjaan. Tetapi juga bisa menjadi bagian dari jawaban atas momok utang mahasiswa yang menjulang. Temtunya hal ini menghantui hampir setiap pikiran mahasiswa.

Sebagian besar sumber memperkirakan siswa AS berutang $ 1,3 triliun. Dan rata-rata lulusan 2016 berhutang $ 37.000, naik 6 persen dari tahun sebelumnya. Jika dibandingkan dengan gaji awal rata-rata seorang programmer, $ 60.000, menambahkan kode ke daftar keterampilan. Anda tentu terdengar seperti permulaan mengenai pembayaran pinjaman, bukan?

Kesimpulan

Perlu diingat, sama seperti pendidikan Spanyol tingkat sekolah menengah mungkin tidak akan membuat Anda jauh di Spanyol. Kelas-kelas pengkodean tingkat sekolah menengah tidak akan secara otomatis menjadikan Anda Steve Jobs berikutnya. Namun, itu meletakkan dasar yang dapat digunakan di perguruan tinggi dan di luar jika Anda memilih untuk menggunakannya.

Bahkan jika pemrograman bukan jalur karier yang ingin Anda kejar, pemikiran komputasi, keterampilan logika, kenyamanan dengan pemecahan masalah yang kreatif. Dan pemikiran lateral akan membantu Anda dengan baik dalam jalur karier apa pun yang ingin Anda kejar.

Jadi, silakan, main-main dalam JavaScript, riset SQL atau terobsesi dengan C ++. Anda hanya memperluas basis pengetahuan Anda, menjadikan diri Anda orang yang lebih berpengetahuan luas. Dan mempersiapkan diri untuk lanskap dunia kita yang terus berubah. Selamat coding!…

Suatu hari, saya mengunjungi D-Wave Systems di Vancouver, Kanada. Ini adalah perusahaan yang membuat komputer kuantum mutakhir.

Saya harus belajar banyak tentang komputer kuantum di sana. Jadi saya ingin berbagi beberapa yang saya pelajari di sana dengan Anda dalam artikel ini.

Tujuan artikel ini adalah untuk memberi Anda intuisi yang akurat. Tentang apa yang digunakan komputer kuantum sebagai contoh sederhana.

Artikel ini tidak akan mengharuskan Anda untuk memiliki pengetahuan sebelumnya. Tentang fisika kuantum atau ilmu komputer untuk dapat memahaminya.

Oke, mari kita mulai.

Apa itu Komputer Kuantum?

Berikut ini adalah ringkasan satu kalimat tentang apa itu komputer kuantum:

Komputer kuantum adalah jenis komputer yang menggunakan mekanika kuantum. Sehingga dapat melakukan jenis komputasi tertentu dengan lebih efisien daripada komputer biasa.

Ada banyak hal yang harus dibongkar dalam kalimat ini. Jadi izinkan saya memandu Anda melalui apa yang sebenarnya menggunakan contoh sederhana.

Untuk menjelaskan apa itu komputer kuantum, saya harus terlebih dahulu menjelaskan sedikit tentang komputer biasa (non-kuantum).

Bagaimana Komputer Biasa Menyimpan Informasi

Sekarang, komputer biasa menyimpan informasi dalam serangkaian 0 dan 1.

Berbagai jenis informasi, seperti angka, teks, dan gambar dapat direpresentasikan dengan cara ini.

Setiap unit dalam rangkaian 0 dan 1 ini disebut sedikit. Jadi, sedikit dapat diatur ke 0 atau 1.

Sekarang, Bagaimana dengan Komputer Kuantum?

Komputer kuantum tidak menggunakan bit untuk menyimpan informasi. Sebagai gantinya, ia menggunakan sesuatu yang disebut qubit.

Setiap qubit tidak hanya dapat diatur ke 1 atau 0, tetapi juga dapat diatur ke 1 dan 0. Tapi apa artinya sebenarnya?

Izinkan saya menjelaskan ini dengan contoh sederhana. Ini akan menjadi contoh yang agak buatan. Tetapi itu masih akan membantu dalam memahami bagaimana komputer kuantum bekerja.

Contoh Sederhana untuk Memahami Cara Kerja Komputer Kuantum

Sekarang, anggaplah Anda menjalankan agen perjalanan, dan Anda perlu memindahkan sekelompok orang dari satu lokasi ke lokasi lain.

Agar ini tetap sederhana, katakanlah Anda hanya perlu memindahkan 3 orang untuk saat ini – Alice, Becky, dan Chris.

Dan anggaplah Anda telah memesan 2 taksi untuk tujuan ini, dan Anda ingin mengetahui siapa yang naik taksi tersebut.

Juga, anggap di sini bahwa Anda diberikan informasi tentang siapa teman dengan siapa, dan siapa musuh dengan siapa.

Di sini, katakanlah itu:

  • Alice dan Becky adalah teman
  • Alice dan Chris adalah musuh
  • Becky dan Chris adalah musuh

Dan misalkan tujuan Anda di sini adalah untuk membagi kelompok yang terdiri dari 3 orang ini menjadi dua taksi. Untuk mencapai dua tujuan berikut:

  • Maksimalkan jumlah pasangan teman yang berbagi mobil yang sama
  • Minimalkan jumlah pasangan musuh yang menggunakan mobil yang sama

Oke, jadi ini adalah premis dasar dari masalah ini. Pertama-tama mari kita pikirkan tentang bagaimana kita akan memecahkan masalah ini menggunakan komputer biasa.

Memecahkan Masalah ini dengan Komputer Biasa

Untuk mengatasi masalah ini dengan komputer biasa, non-kuantum, Anda harus terlebih dahulu mengetahui cara menyimpan informasi yang relevan dengan bit.

Mari beri label dua taksi, Taksi #1 dan Taksi #0.

Kemudian, Anda dapat mewakili siapa yang masuk ke mobil mana dengan 3 bit.

Sebagai contoh, kita dapat mengatur tiga bit ke 0, 0, dan 1 untuk mewakili:

  • Alice masuk ke Taksi #0
  • Becky naik ke Taksi #0
  • Chris naik ke Taksi #1

Karena ada dua pilihan untuk setiap orang. Ada 2 * 2 * 2 = 8 cara untuk membagi kelompok orang ini menjadi dua mobil.

Berikut daftar semua kemungkinan konfigurasi:

A | B | C
0 | 0 | 0
0 | 0 | 1
0 | 1 | 0
0 | 1 | 1
1 | 0 | 0
1 | 0 | 1
1 | 1 | 0
1 | 1 | 1

Dengan menggunakan 3 bit, Anda dapat mewakili salah satu dari kombinasi ini.

Menghitung Skor untuk Setiap Konfigurasi

Sekarang, dengan menggunakan komputer biasa, bagaimana kita menentukan konfigurasi mana yang merupakan solusi terbaik?

Untuk melakukan ini, mari kita tentukan bagaimana kita dapat menghitung skor untuk setiap konfigurasi. Skor ini akan mewakili sejauh mana setiap solusi mencapai dua tujuan yang saya sebutkan sebelumnya:

  • Maksimalkan jumlah pasangan teman yang berbagi mobil yang sama
  • Minimalkan jumlah pasangan musuh yang menggunakan mobil yang sama

Mari kita tentukan skor kami sebagai berikut:

(skor konfigurasi yang diberikan) = (# pasangan teman berbagi mobil yang sama) – (# pasangan musuh berbagi mobil yang sama)

Sebagai contoh, misalkan Alice, Becky, dan Chris semuanya naik ke Taxi #1. Dengan tiga bit, ini dapat dinyatakan sebagai 111.

Dalam hal ini, hanya ada satu pasangan teman yang berbagi mobil yang sama – Alice dan Becky.

Namun, ada dua pasangan musuh yang berbagi mobil yang sama – Alice dan Chris, dan Becky dan Chris.

Jadi, skor total konfigurasi ini adalah 1-2 = -1.

Memecahkan Masalah

Dengan semua pengaturan ini, kita akhirnya bisa menyelesaikan masalah ini.

Dengan komputer biasa, untuk menemukan konfigurasi terbaik. Pada dasarnya Anda harus melalui semua konfigurasi untuk melihat mana yang mencapai skor tertinggi.

Jadi, Anda dapat berpikir tentang membangun tabel seperti ini:

A | B | C | Skor
0 | 0 | 0 | -1
0 | 0 | 1 | 1 <- salah satu solusi terbaik
0 | 1 | 0 | -1
0 | 1 | 1 | -1
1 | 0 | 0 | -1
1 | 0 | 1 | -1
1 | 1 | 0 | 1 <- solusi terbaik lainnya
1 | 1 | 1 | -1

Seperti yang Anda lihat, ada dua solusi yang benar di sini – 001 dan 110, keduanya mencapai skor 1.

Masalah ini cukup sederhana. Dengan cepat menjadi terlalu sulit untuk diselesaikan dengan komputer biasa karena kami meningkatkan jumlah orang dalam masalah ini.

Kami melihat bahwa dengan 3 orang, kami harus melalui 8 konfigurasi yang memungkinkan.

Bagaimana jika ada 4 orang? Dalam hal ini, kita harus melalui 2 * 2 * 2 * 2 = 16 konfigurasi.

Dengan n orang, kita harus melalui (2 pangkat n) konfigurasi untuk menemukan solusi terbaik.

Jadi, jika ada 100 orang, kita harus melalui:

  • 2¹⁰⁰ ~ = 10³⁰ = satu juta juta juta juta juta konfigurasi.

Ini tidak mungkin diselesaikan dengan komputer biasa.

Memecahkan Masalah ini dengan Komputer Kuantum

Bagaimana kita menyelesaikan masalah ini dengan komputer kuantum?

Untuk memikirkannya, mari kembali ke kasus membagi 3 orang menjadi dua taksi.

Seperti yang kita lihat sebelumnya, ada 8 kemungkinan solusi untuk masalah ini:

A | B | C
0 | 0 | 0
0 | 0 | 1
0 | 1 | 0
0 | 1 | 1
1 | 0 | 0
1 | 0 | 1
1 | 1 | 0
1 | 1 | 1

Dengan komputer biasa, menggunakan 3 bit, kami hanya dapat mewakili satu dari solusi ini sekaligus – misalnya, 001.

Namun, dengan komputer kuantum, menggunakan 3 qubit, kami dapat mewakili semua 8 solusi ini secara bersamaan.

Ada perdebatan tentang apa artinya tepatnya, tapi inilah cara saya memikirkannya.

Tahapan

Pertama, periksa qubit pertama dari 3 qubit ini. Saat Anda menetapkannya ke 0 dan 1, itu seperti menciptakan dua dunia paralel. (Ya, ini aneh, tetapi ikuti saja di sini.)

Di salah satu dunia paralel itu, qubit diatur ke 0. Di dunia lain, itu diatur ke 1.

Sekarang, bagaimana jika Anda mengatur qubit kedua ke 0 dan 1 juga? Lalu, rasanya seperti menciptakan 4 dunia paralel.

Di dunia pertama, kedua qubit diatur ke 00. Di yang kedua, mereka adalah 01. Di yang ketiga, mereka adalah 10. Di yang keempat, mereka adalah 11.

Demikian pula, jika Anda menetapkan ketiga qubit menjadi 0 dan 1. Anda akan membuat 8 dunia paralel – 000, 001, 010, 011, 100, 101, 110, dan 111.

Ini adalah cara yang aneh untuk berpikir. Tetapi ini adalah salah satu cara yang tepat untuk menafsirkan bagaimana perilaku qubit di dunia nyata.

Sekarang, ketika Anda menerapkan semacam perhitungan pada ketiga qubit ini. Anda sebenarnya menerapkan perhitungan yang sama di ke-8 dunia paralel itu secara bersamaan.

Jadi, alih-alih melalui masing-masing solusi potensial secara berurutan, kita dapat menghitung skor semua solusi secara bersamaan.

Dengan contoh khusus ini, secara teori, komputer kuantum Anda akan dapat menemukan salah satu solusi terbaik dalam beberapa milidetik. Sekali lagi, itu 001 atau 110 seperti yang kita lihat sebelumnya:

A | B | C | Skor
0 | 0 | 0 | -1
0 | 0 | 1 | 1 <- salah satu solusi terbaik
0 | 1 | 0 | -1
0 | 1 | 1 | -1
1 | 0 | 0 | -1
1 | 0 | 1 | -1
1 | 1 | 0 | 1 <- solusi terbaik lainnya
1 | 1 | 1 | -1

Penggunaan Komputer Kuantum

Pada kenyataannya, untuk mengatasi masalah ini, Anda perlu memberikan dua komputer kuantum:

  • Semua solusi potensial diwakili dengan qubit
  • Fungsi yang mengubah setiap solusi potensial menjadi skor. Dalam hal ini, ini adalah fungsi yang menghitung jumlah pasangan teman dan pasangan musuh yang berbagi mobil yang sama.

Dengan dua hal ini, komputer kuantum Anda akan mengeluarkan salah satu solusi terbaik dalam beberapa milidetik. Dalam hal ini, itu 001 atau 110 dengan skor 1.

Sekarang, secara teori, komputer kuantum dapat menemukan salah satu solusi terbaik setiap kali dijalankan.

Namun, pada kenyataannya, ada kesalahan saat menjalankan komputer kuantum. Jadi, alih-alih menemukan solusi terbaik, ia mungkin menemukan solusi terbaik kedua, solusi terbaik ketiga, dan seterusnya.

Kesalahan ini menjadi lebih menonjol karena masalahnya menjadi lebih dan lebih kompleks.

Jadi, dalam praktiknya, Anda mungkin ingin menjalankan operasi yang sama pada komputer kuantum puluhan kali atau ratusan kali. Kemudian pilih hasil terbaik dari banyak hasil yang Anda dapatkan.

Bagaimana Skala Komputer Kuantum

Bahkan dengan kesalahan yang saya sebutkan, komputer kuantum tidak memiliki masalah skala yang sama dengan komputer biasa.

Ketika ada 3 orang yang perlu kita bagi menjadi dua mobil. Jumlah operasi yang perlu kita lakukan pada komputer kuantum adalah 1. Ini karena komputer kuantum menghitung skor semua konfigurasi pada saat bersamaan.

Ketika ada 4 orang, jumlah operasi masih 1.

Ketika ada 100 orang, jumlah operasi masih 1. Dengan satu operasi, komputer kuantum menghitung skor semua 2¹⁰⁰ ~ = 10³⁰ = satu juta juta juta juta juta konfigurasi. Pada saat yang sama.

Seperti yang saya sebutkan sebelumnya, dalam praktiknya, mungkin terbaik untuk menjalankan komputer kuantum Anda puluhan kali. Atau ratusan kali dan memilih hasil terbaik dari banyak hasil yang Anda dapatkan.

Namun, ini masih jauh lebih baik daripada Mengatasi masalah yang sama pada komputer biasa. Dan harus mengulangi jenis perhitungan yang sama satu juta juta juta juta juta kali.…