Scrum! Sebuah Framework Project Management Pendobrak Tradisi

Scrum! Sebuah Framework Project Management Pendobrak Tradisi

Istilah scrum mulai mencuat sejak tren digital meningkat tajam. Banyaknya tech start up yang lahir menuntut pengembangan produk piranti lunak dilakukan dengan tempo yang sesingkat-singkatnya dan dengan tim yang seramping-rampingnya. Walaupun begitu, masih belum banyak yang belum mengetahui apa arti sebenarnya dari scrum yang sering digembar-gemborkan oleh pelaku tech start up ini.

 

Berawal Dari Agile

Scrum merupakan sebuah framework project management yang bermula dari metode agile. Bagaikan pasangan yang baru 12 jam pacaran, hubungan agile dan scrum tak terpisahkan. Atau jika ingin mencari perumpamaan yang lebih akurat lagi, agile bisa diumpamakan sebagai bahasa pemrograman php dan scrum adalah Laravel. Scrum sendiri merupakan framework yang paling populer dalam agile jauh mengungguli kanban dan iterative development.

Metode agile mengharuskan sebuah pekerjaan dalam suatu project dibagi hingga bagian yang lebih kecil lagi dan sering disebut sprints oleh para pengguna scrum. Metode ini memungkinan sebuah pengembangan produk piranti lunak berjalan tanpa adanya project manager. Karena bagian pekerjaan dipecah menjadi beberapa bagian kecil, setiap bagian dari tim sudah mengetahui apa dan kapan sprints masing-masing harus dikerjakan. Bahkan dengan metode agile, sebuah tim dapat mengetahui workflow dari tim lain sehingga memudahkan setiap bagian dari organisasi untuk berkolaborasi.

 

Sejarah Scrum

Scrum diperkenalkan pertama kali pada tahun 1986 oleh Hirotaka Takeuchi dan Ikujiro Nonaka dalam sebuah artikel di The Harvard Business Review yang berjudul “The New Product Development Game.” Mereka menggunakan metafora untuk menggambarkan dua pendekatan yang berbeda. Sebagian tim seperti pelari estafet yang berlari secara bergantian dengan mengoper tongkat estafet dan berada dalam satu jalur. Tim yang lain bagaikan tim rugby yang bermain secara bersamaan, saling mengoper satu sama lain jika dibutuhkan, dan disatukan oleh kesamaan objective untuk mencetak skor sebanyak mungkin.

Takeuchi dan Nonaka beranggapan bahwa tim ‘pelari estafet’ tersebut ketinggalan jaman dan percaya bahwa cara ‘tim rugby’ akan memberikan perusahaan sebuah kekuatan untuk bersaing di dunia bisnis multinasional.

Lalu beberapa tahun setelahnya, John Sutherland, John Scumniotales, dan Jeff McKenna mengatakan bahwa mereka telah mencoba scrum di Easel Corp pada tahun 1993. Pada tahun 1995, Ken Schwaber dan Sutherland berkolaborasi dengan beberapa orang (ternasuk McKenna dan Scumniotales) mempresentasikan sebuah paper di OOPSLA yang berjudul “SCRUM Development Process.” Hasilnya? Scrum membuat para developer mempertanyakan efektivitas dari metode klasik ‘waterfall.’

 

Prinsip dan Komponen Scrum

Ada beberapa nilai di dalam scrum yang menjadikan framework ini paling populer di antara metode agile. Beberapa nilai tersebut adalah :

  • Commitment
    Sebuah tim dalam scrum mengarahkan dan mengawasi dirinya sendiri. Setiap anggota tim berarti telah mengerti dengan tanggung jawabnya dan mendedikasikan dirinya untuk menyelesaikan sebuah pekerjaan yang telah disepakati bersama.
  • Courage
    Sebuah tim merupakan satu entitas di mana gagal atau berhasilnya sebuah ide beserta eksekusinya ditanggung bersama.
  • Focus
    Prinsip scrum yang paling terasa adalah fokus. Metode scrum membatasi distraksi sehingga setiap anggota tim akan lebih berkonsentrasi pada pekerjaan yang harus diselesaikan pada hari itu.
  • Openness
    Sebuah tim diberikan kesempatan untuk berkumpul dan berbagi agar setiap anggotanya dapat menyampaikan ide, permasalahan, atau pun pandangannya tentang sebuah pekerjaan.
  • Respect
    Setiap tim terdiri dari anggota yang memiliki kelebihan dan kekurangan masing-masing. Setiap kelebihan dan kekurangan tersebut harus dihormati agar tidak saling menyalahkan jika membahas suatu kendala atau kegagalan.

 

Selain prinsip tersebut, Scrum juga memiliki beberapa komponen yang membedakannya dari framework manajemen yang lain. Komponen itu adalah product owner, scrum master, dan scrum development team.

  • Product Owner
    Anggota tim ini berperan sebagai perantara antara customer atau klien dan tim development. Product owner bertanggung jawab untuk memastikan produk akhir sesuai dengan ekspektasi klien atau customer dan memastikan bahwa ekspektasi klien sesuai dengan kemampuan development team.
  • Scrum Master
    Scrum master merupakan seorang fasilitator bagi seluruh anggota tim agar sistem scrum dapat berjalan semestinya. Kebanyakan peran scrum master ini disalahartikan sebagai ‘supervisor’ yang mengawasi setiap anggota tim. Padahal seperti yang telah disebutkan di atas, scrum mewajibkan anggota timnya untuk mengawasi dirinya sendiri. Peran scrum master hanyalah menjadwalkan seluruh ritual dari scrum dan menjadi moderator di dalamnya.
  • Scrum Development Team
    Tim inilah yang bertanggung jawab membuat, menguji, dan mengembangkan suatu produk.

 

Sebuah Framework Dengan Ritual

Dalam prosesnya, scrum mengajak para praktisinya untuk secara terus-menerus mengevaluasi bagian mana dari pekerjaan kita yang berhasil dan mana yang tidak. Dalam scrum, komunikasi adalah bagian penting dari sebuah proses. Oleh karena itu, scrum memiliki beberapa ritual meeting yang disebut dengan event. Beberapa event itu adalah :

 

Daily Scrum

Daily scrum merupakan rapat berdiri yang sangat singkat yang dilakukan setiap hari. Pada setiap kali pertemuan, anggota tim membahas tentang pekerjaan yang telah selesai di hari sebelumnya dan merencanakan pekerjaan apa yang harus selesai dalam waktu 24 jam ke depan. Dalam kesempatan inilah, setiap anggota tim bisa mengungkapkan masalah yang mungkin akan timbul dalam pengerjaan suatu project.

 

Sprint Planning Meeting

Sprint sebenarnya merujuk pada pekerjaan mana yang harus diselesaikan dalam satuan waktu. Waktu untuk setiap sprint berbeda-beda. Di meeting inilah tim merencanakan dan  mensinkronisasi semua sprint dalam jangka waktu seminggu ataupun sebulan tergantung dari jenis project.

 

Sprint Review

Di dalam meeting inilah semua pihak yang terlibat dalam sebuah project bertemu untuk meninjau sebuah sprint yang telah dikerjakan. ‘Product owner’ bisa bertindak sebagai stakeholder yang memberikan pandangan tentang hasil produk final dari sebuah sprint, tapi alangkah baiknya jika stakeholder sendiri ikut dalam sprint review ini.

 

Sprint Retrospective

Sprint retrospective diadakan saat seluruh sprint sudah selesai dikerjakan. Di dalam ritual ini, anggota tim development mengevaluasi seluruh proses sprint. Fokus dari ritual ini adalah ‘bagaimana pekerjaan yang lalu dikerjakan’ bukan ‘apa yang telah dikerjakan.’ Jadi goal dari ritual ini adalah lebih ke pengembangan diri dari setiap anggota tim bukan produk karena  untuk evaluasi produk sudah dilakukan pada saat sprint review.

 

 

Artefak Agar Tidak Lupa Dengan Sejarah

Salah satu kelebihan scrum adalah dokumentasi dari sebuah proses yang disebut dengan ‘artefak.’ Artefak ini membuat scrum menjadi sebuah framework yang membuat proses perencanaan, komunikasi, dan evaluasi menjadi mudah. Inilah jenis-jenis artefak dalam scrum :

  • Product Backlog
    Yang dimaksud dengan product backlog adalah bagian dari produk baik itu fungsi atau fitur dari suatu produk yang harus diselesaikan. Product backlog ini biasanya disusun oleh product owner bersama klien.
  • Sprint Backlog
    Sprint backlog adalah turunan dari product backlog yang disusun dalam sprint planning meeting. Sprint backlog ditujukan agar setiap tim dapat mengetahui bagian mana saja yang harus dia kerjakan dalam suatu product backlog.
  • Product Increment
    Product increment terdiri dari product backlog yang sudah selesai dikerjakan. Product increment ini mencerminkan sampai sejauh mana progres dari pengerjaan suatu product.
  • Burn Down
    Burn down adalah visualisasi data yang berisikan informasi pekerjaan yang belum terselesaikan dan waktu yang tersisa. Burn down menampilkan chart yang membandingkan linimasa pengerjaan ideal dengan linimasa pengerjaan aktual dari sebuah sprint.

 

Itulah tadi penjelasan singkat mengenai scrum. Jika kita dapat melihat gambaran besarnya, kita akan mengetahui alasan mengapa tech startup kekinian memfavoritkan scrum sebagai framework kerja dalam pengembangan sebuah produk. Tentu saja framework ini bukan tanpa kelemahan. Banyak kendala untuk mentransformasikan sistem manajemen klasik ‘waterfall’ seperti SDM yang masih awam sampai kendala tim yang terlalu besar sehingga scrum tidak berjalan efektif. Solusi yang paling masuk akal untuk menerapkan pada bisnis yang sudah lama berdiri adalah dengan mengadaptasikan scrum secara pelan-pelan ke dalam konsep waterfall yang sudah mengakar dari lama.

[Workshop]: “DIY IoT Using Arduino”

[Workshop]: “DIY IoT Using Arduino”

Dengan menyambungkan dunia nyata dan dunia virtual menggunakan peralatan elektronik yang tersebar di dalam rumah, kendaraan, jalanan, dan bangunan, IoT (Internet of Things) dapat memberikan banyak kegunaan terutama untuk sebuah smart city. Banyak contoh yang bisa kita ambil dalam pengaplikasian IoT ini seperti smart city dan smart home yang memiliki surveillance system dan dipantau di manapun kita berada atau sistem pendeteksi cuaca real-time yang dapat memberitahu kita bagian kota mana saja yang sedang hujan.

Masalahnya, banyak orang yang menganggap teknologi ini terlalu canggih untuk dipelajari. Padahal dengan Arduino sebagai controller board, orang dapat dengan mudah belajar tentang IoT dan bahkan merakit IoT dari nol.

Dalam workshop ini peserta akan mempelajari tentang :

  • Konsep IoT
  • Menyiapkan environment untuk bekerja dengan Arduino IoT
  • Memrogram running LED
  • Mengukur jarak
  • Mengukur suhu dan kelembaban ruangan

 

Pelaksanaan Event 

Workshop akan dilaksanakan pada:

Hari       : Kamis
Tanggal : 5 Juli 2018
Pukul     : 09.00 -15.00 WIB
Tempat  : Inixindo Jogja
Jalan Kenari No.69,Yogyakarta
Biaya     : Rp 500.000

 

Peserta akan mendapatkan :
  • perangkat Arduino board
  • sensor
  • sertifikat
  • lunch box
  • cash back Rp 100.000 (untuk pendaftaran sebelum tanggal 21 Juni 2018)

 

NB : Karena pihak penyelenggara harus menyiapkan perangkat dan peralatan yang akan digunakan dalam workshop ini, maka pendaftaran akan ditutup pada tanggal 29 Juni 2018. 

Register

 

Poster

[Workshop] : “Membuat Single Page App Dengan React JS”

[Workshop] : “Membuat Single Page App Dengan React JS”

Metode pengembangan aplikasi berbasis web kini telah berubah. Pengembangan aplikasi berbasis web dipisah kedalam dua bagian yaitu pengembangan pada sisi front-end, dan pengembangan aplikasi dari sisi back-end. Kompleksitas aplikasi pula yang akhirnya memaksa para pengembang untuk membagi tugas pengembangan aplikasi menjadi dua. Hal ini dikarenakan perkembangan teknologi web yang telah mencakup berbagai macam platform. Aplikasi web pada saat ini tidak hanya melayani client berupa browser, tetapi juga dituntut untuk bisa melayani berbagai platform seperti mobile app, ataupun aplikasi web lainya. Dengan adanya web service hal ini bukanlah menjadi subuah kendala lagi.

Pada pengembangan aplikasi web, front end developer bertugas untuk memenuhi tuntutan pengguna, karena front end bertanggung jawab untuk membuat UI (User Interface). Tantangan front end developer saat ini tidak sebatas User Interface (UI) saja, tetapi ditambah satu tuntutan lagi yaitu UX (User Experience). User experience inilah yang akhirnya melahirkan sebuah trend baru dalam pengembangan aplikasi web.

Pengembangan aplikasi web yang tadinya synchronous, kini sudah tidak di mininati lagi karena sudah tidak bisa mengikuti tuntutan zaman. Trend yang berjalan adalah Asynchronous process, dimana
halaman hanya di load diawal secara keseluruhan, kemudian untuk interaksi selanjutnya dilakukan secara Asynchronous melalui xhr atau lebih dikenal dengan istilah AJAX. Practically pengembangan web pada saat ini hanya membutuhkan single page sebagai inisiasi. Maka muncul lah sebutan baru yaitu
Single Page Application (SPA).

Ada beberapa framework untuk front end untuk membangun Single Page Application, React,Vue, dan Angular. Semua framework tersebut opensource dengan keunggulan dan kelemahan masing masing. Salah satu cara memilih product open source yang akan kita gunakan hal yang perlu dipertimbangkan adalah komunitas. Berdasarkan data yang dimiliki oleh NPM React JS merupakan framework yang paling banyak diunduh.

 

Waktu dan Pelaksanaan Event

Waktu     : Kamis, 7 Juni 2018

Tempat    : Inixindo Jogja, Jalan Kenari No.69 Yogyakarta

Biaya       : Gratis*

*slot terbatas

 

Poster

Front-End vs Back-End Developer. Apa Bedanya?

Front-End vs Back-End Developer. Apa Bedanya?

Jika Anda mengetikkan URL di tab browser Anda dan menekan enter. Seketika Anda disuguhkan dengan tamplilan visual web yang memukau. Animasi-animasi indah serta konten interaktif yang memberikan experience lebih kepada kita sebagai pengguna terkadang menggelitik rasa penasaran kita, bagaimana membuat website yang seperti ini?

Sering kali website yang eksepsional seperti itu dibuat tidak hanya oleh seorang web developer saja melainkan satu tim dengan spesialisasi masing-masing. Dalam tim tersebut biasanya terdiri dari 3 profesi yaitu UI/UX designer, front-end developer, dan back-end developer. Apa saja perbedaan pada setiap profesi tersebut? Yuk kita bahas satu per satu!

 

UI/UX Designer

Kita tidak akan banyak membahas tentang UI/UX designer karena profesi ini lebih ke arah desain. Seperti halnya arsitek, UI/UX designer sangat berperan dalam menentukan estetika dan pengalaman pengguna dalam sebuah web yang Anda kunjungi. Peran UI/UX designer hanya sebatas membuat wireframe (sketsa layout untuk sebuah web) dan tentunya web design itu sendiri mulai dari komposisi letak, jenis dan ukuran font, sampai warna-warna yang digunakan. Seorang UI/UX designer sama sekali tidak mengotori tangannya dengan menulis kode. Walaupun begitu biasanya UI/UX designer memahami bagaimana HTML, CSS, dan JavaScript bekerja sehingga tidak ngawur dalam mendesain website.

 

Front-End Developer

Setelah UI/UX designer menuangkan ide-ide cemerlang dan tangan terampilnya dalam desain sebuah web, kini giliran front end developer yang akan meneruskan proyek membangun website ini.

Jika tadi UI/UX designer kita ibaratkan sebagai arsitek, si front end developer ini adalah engineer-nya. Tugas front end developer adalah merealisasikan desain kreatif nan imajinatif dari sang UI/UX designer. Jika ada ungkapan “architect’s dream is the engineer’s nightmare” di proyek properti, di proyek website ini ungkapannya hampir sama yaitu “Designer’s dream is front end developer’s nightmare”.

Ya! Tugas front end developer adalah memastikan konten yang ditampilkan di browser pengguna berjalan sesuai desain disepakati. Header yang menggeser ke samping atau yang disebut slider, ikon menu yang berubah saat di-scroll, serta animasi-animasi lucu dan menggemaskan yang membuat kita ingin mencubit layar monitor adalah fitur yang ditulis dengan kode pemrograman oleh sang front-end developer. Bahasa teknisnya, front end developer adalah orang yang bertanggung jawab atas semua kode yang dikirim dari server dan diterima oleh browser masing-masing pengguna.

Untuk menjadi seorang front end developer, kita mempelajari bahasa mark up seperti HTML dan CSS serta bahasa pemrograman JavaScript. JavaScript sendiri mempunyai banyak library dan framework seperti jQuery, AngularJS, ReactJS, dan lain-lain. Seorang front end developer juga harus mengerti bagaimana RESTful Service dan API bekerja. RESTful sangat dibutuhkan ketika kita ingin menghubungkan web kita dengan aplikasi web lain seperti Facebook atau Twitter.

Seperti profesi yang lain, ada bagian di mana menjadi seorang front end developer itu menyenangkan dan ada bagian tidak enaknya pula. Bagian menyenangkannya adalah semua output dari kode yang kita tulis dapat dilihat dengan mata sehingga memudahkan kita untuk mencari bagian mana dari kode yang kita tulis yang tidak berjalan. Bagian tidak enaknya adalah web yang kita buat harus berjalan dengan sempurna di berbagai browser dan berbagai perangkat yang dimiliki pengguna, apalagi sekarang lebih banyak orang yang membuka web dari perangkat mobile.

 

Back-End Developer

Jika dummy website sudah dibuat dan berjalan semestinya di browser masing-masing pengguna, saatnya back end developer mengambil alih tanggung jawab. Kode HTML, CSS, dan JavaScript untuk setiap jenis atau bagian halaman dipecah lagi agar dapat dijadikan semacam template. Bagian footer yang pasti ada di setiap jenis halaman misalnya, kita tidak perlu menulis kode footer tersebut berulang-ulang setiap akan membuat halaman baru. Di sinilah peran back end developer diperlukan.

Back end developer bertanggung jawab memprogram server agar mengirimkan dokumen (dalam hal ini HTML, CSS, dan kode JavaScript) ke browser pengguna setiap kali pengguna memintanya melalui http request. PHP, JavaScript, Python, dan Ruby adalah bahasa pemrograman yang biasanya dipakai di server.

Back end developer juga akan sering berkutat dengan database dan manajemen konten di suatu website. Bentuk dari tanggung jawab tersebut yang paling bisa dilihat adalah Content Management System (CMS). Kita tentunya sudah sering memakai blog seperti WordPress dan blogspot. Nah, CMS ini mirip dengan aplikasi blogging sehingga memudahkan admin web untuk mengisi konten tanpa harus menuliskan kode HTML maupun CSS. Tentu saja tidak semua back end developer membuat sendiri CMS website yang sedang mereka kembangkan. Banyak dari back end developer yang memakai CMS yang dikembangkan oleh pihak ketiga seperti WordPress yang merupakan CMS open source yang bisa kita install sendiri di server kita.

Selain CMS dan database, seorang back end developer juga bertanggung jawab memastikan keamanan sebuah web. Bagian yang paling menjengkelkan adalah ketika ada seorang ‘penyusup’ dapat mengakses web server dapat mengacak-acak konten, maupun database, dan yang terparah adalah mengganti seluruh system di server kita.

 

Full Stack Developer

Sebenarnya tidak ada yang perlu dijelaskan lagi mengenai full stack developer karena full stack adalah front end dan back end developer yang dirangkap oleh 1 orang. Perkembangan teknologi yang cepat membuat batasan front end dan back end semakin kabur. Apalagi sekarang banyak diantara bisnis yang menginginkan hasil cepat dan murah sehingga para developer ‘penyendiri’ mulai mengembangkan dirinya menjadi full stack untuk menghemat waktu dan tentu saja biaya produksi.

Memang kebanyakan dari full stack developer memiliki kecenderungan untuk lebih ahli di sisi front end atau back end. Sangat sedikit yang kemampuannya benar-benar hebat di dua bidang tersebut sekaligus. Selain memiliki logika dan problem solving yang baik seperti back end developer, seorang full stack developer juga dituntut untuk memiliki kreativitas yang tinggi seperti front end developer.

Full stack developer merupakan profesi yang populer setelah Facebook merekrut full stack developer walaupun untuk mengerjakan bagian front end saja atau back end saja. Alasannya adalah full stack developer lebih paham bagaimana proses pembuatan website di dua bagian tersebut sehingga mempermudah komunikasi antara divisi front end dan back end.

Jika Anda tertantang untuk menjadi seorang full-stack developer dari nol, Anda bisa ikut bootcamp full stack web programming yang diselenggarakan Inixindo Jogja. Batch bootcamp ini dibuka tiap bulan.

Almanak Sejarah Singkat Tak Akurat Bahasa Pemrograman

Almanak Sejarah Singkat Tak Akurat Bahasa Pemrograman

Sepertinya halnya makhluk hidup, bahasa sebagai alat berkomunikasi terus berevolusi dari waktu ke waktu. Hal ini juga dialami oleh bahasa pemrograman, alat komunikasi antara manusia dengan mesin. Bedanya, jika diperlukan waktu berabad-abad untuk bahasa manusia berevolusi, bahasa pemrograman hanya membutuhkan waktu maksimal 10 tahun saja untuk berevolusi.

Hal ini disebabkan oleh kemajuan teknologi yang semakin cepat dan juga umur mesin atau komputer yang tidak selama manusia. Berapa banyak komputer yang diproduksi 15 tahun lalu masih hidup sampai sekarang? Apalagi sekarang perkembangan teknologi informasi lebih ke arah mobile. Tentunya akan menjadikan bahasa pemrograman yang kaku alias tidak bisa menyesuaikan diri di berbagai macam platform akan ditinggalkan.

Seperti kisah cinta yang bisa berujung manis dan lebih sering berujung pahit, kisah bahasa pemrograman juga mengalami hal yang sama. Ada yang populer dan menjadi idola developer kekinian ada juga yang digunakan programmer lawas hanya untuk bernostalgia mengenang kejayaan masa lampau. Seperti apa sih ceritanya? Yuk, kita simak almanak sejarah singkat tentang bahasa pemrograman yang tidak akurat ini!

 

1800 – Mesin Pemintal

Yup! Anda tidak salah baca. Mesin pemintal adalah cikal bakal lahirnya pemrograman. Mungkin inilah satu-satunya mesin yang menggunakan multi-thread secara harfiah. Joseph Marie Jacquard membuat mesin pemintal yang sebelumnya dilakukan secara manual menjadi bisa diprogram sesuai dengan keinginan manusia. Memang pemrograman yang dilakukan masih sebatas pemrograman mekanis karena pada saat itu bohlam lampu saja masih belum ditemukan. Mesin ini diperintah melalui media kartu berlubang yang terbuat dari kayu.

 

1842 – Algoritma

Pada tahun ini, Ada Lovelace seorang mathematician dan juga seorang penulis menciptakan sebuah mesin penghitung. Berbeda dengan mesin penghitung seperti simpoa, mesin ini dapat melakukan penghitungan yang jauh lebih rumit daripada itu. Pada suatu hari, Ada Lovelace merasa bosan dan tidak ingin dianggap makan gaji buta. Dia kemudian mengeluarkan buku panduan yang disebut-sebut algoritma pertama yang pernah ditulis untuk memrogram sebuah mesin walaupun saat itu belum ada komputer untuk diprogram.

 

1936 – Turing

Pada tahun ini, Alan Turing menerbitkan sebuah makalah berjudul “On Computers Numbers, with Application to the Entscheidungsproblem” yang membuktikan bahwa the turing machine yang dia ciptakan dapat memecahkan segala problem matematika jika ditunjang dengan algoritma yang benar. Mesin inilah yang kemudian dianggap sebagai awal lahirnya komputer modern. Sebenarnya ada satu matematikawan lagi pada tahun ini yang bernama Alonzo Church yang juga memecahkan Entscheidungsproblem tapi tidak bisa seterkenal Alan Turing (mungkin karena Alonzo Church tidak mirip dengan Benedict Cumberbatch. 🙂

 

1957 – FORTRAN

John Backus menciptakan bahasa pemrograman pertama yang hampir mirip dengan bahasa pemrograman masa kini dan benar-benar digunakan programmer untuk memrogram komputer.

 

1959 – COBOL

Karena Grace Hopper tidak bisa berbahasa Jawa, dia lalu menciptakan bahasa pemrograman yang lebih mendekatkan diri ke Bahasa Inggris yang disebut COBOL. COBOL merupakan singkatan dari Common Business Oriented Language. Benar kan? Dari singkatannya saja kita bisa tahu kalau bahasa ini mirip dengan Bahasa Inggris.

 

1964 – BASIC

John Kemeny dan Thomas Kurtz menganggap bahwa bahasa pemrograman yang ada terlalu rumit dan memutuskan untuk back to basic dengan cara menciptakan bahasa pemrogaman yang disebut BASIC.

 

1970 – Pascal

Niklaus Wirth suka membuat bahasa pemrograman. Maka dari itu dia membuat bahasa Pascal dan bahasa pemrograman lainnya. Dia juga mencetuskan Wirth’s Law yang mengukuhkan Moore’s Law karena software developer cenderung menulis program yang semakin boros resource yang bahkan komputer mainframe susah payah untuk menjalankan software tersebut.

 

1972 – C

Dennis Ritchie yang merasa bosan lalu membuat sebuah bahasa pemrograman C. Banyak yang berspekulasi mengapa disebut C. Ada yang mengatakan gara-gara si Dennis hanya mendapatkan nilai C di kelas Bahasa Inggris dan ada yang mengatakan C diambil dari ‘curly braces’ di mana banyak digunakan di bahasa pemrograman ini. Masih merasa makan gaji buta akhirnya si Dennis bersama temannya menciptakan sistem operasi yang disebut Unix.

 

1980 – Object Oriented Programming

Alan Kay menemukan bahasa pemrograman yang memiliki paradigma Object-Oriented Programming dan dinamakan SmallTalk. Di bahasa ini, semua adalah object, bahkan object adalah object. Tak ada yang mengerti mengapa bahasa pemrograman ini disebut SmalTalk.

 

1983 – C++

Bjarne Stroustrup berkelana dengan mesin waktu dan saat sampai di masa lalu dia menemukan fakta bahwa C terlalu lama di-compile. Dia lalu kembali ke masa depan lalu menambahkan semua fitur di C dan dinamai C++.

 

1986 – Objective C

Brad Cox dan Tom Love memutuskan untuk membuat versi C yang tidak dapat dibaca yang terinspirasi dari SmallTalk. Semua orang tidak dapat mengerti syntax dari Objective C ini.

 

1987 – Perl

Larry Wall menciptakan bahasa Perl. Tiba-tiba dia ingin pergi umrah dan mengeluarkan buku “Programming Perl” dengan unta yang dijadikan sebagai model cover buku.

 

1991 – Python

Guido Van Rossum tidak menyukai kurung kurawal (curly braces) dan akhirnya menciptakan Python bahasa pemrograman yang namanya justru lebih mirip kurung kurawal bila dibandingkan dengan bahasa C.

 

1994 – PHP

Rasmus Leedorf membuat template engine untuk CGI scripts yang akan digunakan untuk halaman web pribadinya dan kemudian merilis dot-file di web. Semua orang akhirnya menggunakan dot-file untuk semua hal. Karena semangat yang terlalu menggebu-gebu akhirnya si Rasmus memberikan database binding ke dot-file ini dan menyebutnya PHP.

 

1995 – Ruby

Yukihiro Matsumoto tidak begitu bahagia, programmer lain juga tidak bahagia. Dia menciptakan Ruby agar semua bahagia. Setelah menciptakan Ruby, Matz (nama panggilan Matsumoto) menjadi bahagia, komunitas Ruby juga bahagia, dan semua orang bahagia.

 

1995 – Javascript

Brendan Eich memanfaatkan akhir pekannya untuk mendesain bahasa yang akan digunakan seluruh web di dunia dan mungkin juga Skynet. Dia menawarkan ke Netscape dan bilang bahwa “ini adalah LiveScript”. Pada saat Netscape sedang direview semua orang sedang keranjingan Java dan akhirnya mereka memutuskan untuk menggunakan kurung kurawal (curly braces) serta menyebutnya Javascript.

Java akhirnya diberi trademark yang dapat menyebabkan masalah pada Javascript. Jadi, Javascript kemudian diberi nama ECMAScript tapi sampai saat ini orang-orang masih menyebutnya Javascript.

 

1996 – Java

James Gosling membuat Java, bahasa pemrograman yang sangat terlalu digembar-gemborkan sekali sebagai bahasa OOP (Object-Oriented Programming) pertama dimana desain dianggap jauh lebih penting daripada pragmatisme.

 

2001 – C#

Anders Hejlsberg menggubah kembali Java dan menyebutnya C# karena menurutnya memrogram dengan C jauh lebih keren dibandingkan dengan Java. Semua orang suka dengan versi baru Java ini karena benar-benar berusaha tidak mirip dengan Java.

 

2005 – Ruby On Rails

David Heinemeier Hansson menciptakan framework untuk Ruby dan menyebutnya Ruby On Rails. Sekarang orang-orang tak ingat lagi jika Ruby dan Ruby On Rails itu merupakan bagian yang terpisah.

 

2006 – jQuery

John Resig merancang sebuah library untuk JavaScript. Semua orang menganggap jQuery adalah bahasa pemrograman. Sekarang orang bisa mendapatkan penghasilan dengan cara meng-copy-paste kode jQuery dari internet.

 

2009 – GO

Ken Thompson dan Rob Pike memutuskan untuk membuat bahasa pemrograman mirip C tapi dengan safety equipment, menamakannya “GO” , dan membuatnya lebih marketable dengan memakai Gophers sebagai maskot yang imut.

 

2010 – Rust

Graydon Hoare juga ingin membuat bahasa seperti bahasa C. Dia lalu menamakannya Rust. Tiba-tiba semua orang ingin semua software ditulis dengan Rust sesegera mungkin. Karena ingin dompetnya setebal ensiklopedia, Graydon bergabung dengan Apple untuk mengerjakan Swift.

 

2012 – TypeScript

Anders Hjelsberg ingin menulis C# di web browser. Dia merancang TypeScript, bahasa pemrograman yang mirip JavaScript dengan lebih banyak unsur Java di dalamnya.

 

2013 – CoffeeScript

Jeremy Ashkenas ingin bahagia seperti para developer Ruby. Jadi, dia menciptakan CoffeeScript yang ter-compile menjadi JavaScript tapi lebih mirip Ruby. Jeremy Ashkenas tak akan pernah menemukan arti kebahagiaan sejati seperti Matz dan developer Ruby lainnya.

 

2014 – Swift

Chris Lattner menciptakan Swift dengan obyektif utama “tidak menjadi Objective C.” Pada akhirnya, Swift lebih mirip Java.

 

Itulah tadi sejarah singkat tapi tak akurat tentang bahasa pemrograman. Kami harap artikel ini dapat dijadikan bacaan ringan yang menghibur untuk mengisi waktu luang seperti menunggu air yang Anda masak untuk membuat kopi matang. Kami sangat tidak menganjurkan artikel ini dijadikan referensi baik skripsi ataupun thesis. Kami menyediakan link ke Wikipedia jika Anda ingin sejarah yang akurat.

Chat via Whatsapp