Bismillah,

Pada tulisan ini, saya ingin membagi links tutorial yang menurut saya sangat bermanfaat bagi seseorang yang ingin menjadi Software Develover secara Autodidak. Tidak mengesampingkan pentingnya kuliah di jurusan IT, namun semangat mempelajari ilmu pengetahuan yang tinggi, walaupun oleh seorang yang belajar Autodidak, bisa saja menghasilkan Software Developer (Programmer) yang handal.

  1. Linux
    • Linux Tutorial

      Ini adalah tutorial yang saya gunakan untuk belajar Command Line di Linux sekitar tahun 2005. Update terakhir tutorial ini sekitar tahun 1998, namun saya menilainya masih cukup relevan untuk di gunakan di tahun 2018, 20 (dua puluh) tahun kemudian.

    • Introduction to Linux

      Sangat bagus untuk mengenal dunia Linux dan Command Line nya.

    • Pocket Linux Guide

      Tutorial Favorite saya, sering saya praktek kan waktu dulu. Melatih kesabaran kita untuk compile kernel, compile ini dan itu sampai bisa booting linux mini nya. Toturial ini sangat berkesan bagi saya. Bahkan saking senang nya membuat distro mini ini, saya menulis kan catatan nya di sini dan di sini.

    • Belajar Vim

      Ini satu hal yang sangat penting bagi seorang Software Developer, yaitu menguasai Vim, lho kok Vim? iya, Vim, karena bagi saya pribadi, tidak ada text editor yang lebih memadai untuk di gunakan di dunia Unix-like, semisal Vim. saya menyarankan untuk menggunakan “vimtutor” yang tersedia di distro-distro Linux yang ada, karena itu yang paling mudah menurut saya. Kuasai dulu Vim, sebelum belajar Bahasa Pemprograman.

    • Sed dan Awk

      Powerfull sekali untuk mengedit file text. Tuturial tambahan tentang linux command line bisa di lihat di sini

  2. Bahasa C
    • C Programming Tutorial

      Bahasa C adalah Bahasa Pemprograman yang seyogyanya di kuasai oleh seorang Software Developer. Karena Bahasa ini merupakan pondasi dari sebagian Bahasa Pemprograman Tingkat tinggi lainnya. Pada tutorial ini, saya belajar dan praktek dasar-dasar Pemprograman Bahasa C

    • C Programming

      Pada tutorial Bahasa C ini, materi singkat dan padat, disertai contoh soal dan jawabannya. Sangat bermanfaat untuk latihan sejauh mana penguasaan terhadap materi yang ada.

  3. Bahasa Assembly
    • Programming from the Ground Up

      Iya, betul, Bahasa Assembly. Setelah Belajar Bahasa C, kita putar balik ke bahasa yang lebih rendah, yaitu bahasa Assembly. Dengan belajar Bahasa ini, akan lebih mudah paham apa itu pointer di bahasa C dan hal lainnya. Sehingga, bisa mengulang kembali (revisit) materi bahasa C yang di rasa kurang paham, setelah belajar Bahasa Assembly.

  4. OpenBSD
    • OpenBSD Frequently Asked Questions

      OpenBSD adalah salah satu sistem Unix-like (semisal Unix) yang focus pada security. OpenBSD ini banyak di gunakan sebagai Firewall untuk Infrastruktur Internet. Saya pribadi memilih OpenBSD sebagai server untuk aplikasi-aplikasi yang saya develop.

    • OpenBSD PF - User’s Guide

      Kekuatan Utama OpenBSD adalah sebagai Firewall. Fitur penting yang tersedia di OpenBSD PF, kalau di setting dengan baik, diantaranya; mampu membendung Reverse telnet, anti DDOS, anti Sync attack. Saya menulis tentang PF ini di sini dan di sini. Adapun untuk PF versi OpenBSD 4.6 yang saat ini syntax nya sudah tidak berlaku lagi di OpenBSD terbaru bisa di lihat di sini.

  5. SQL
  6. PHP
    • Reportico

      Ini adalah Aplikasi Reporting Tool yang di bangun dengan PHP. Mudah di konfigurasi untuk terkoneksi dengan Postgresql. Aplikasi inilah yang saya gunakan sebagai Framework untuk laporan-laporan yang saya Query dari Database Postgresql.

  7. Python
    • Python Tutorial

      Banyak tutorial Python tersedia di internet, tapi ini adalah tutorial resmi dari website python.org yang saya gunakan untuk mempelajari bahasa Python. Langsung ke sumber nya.

    • Project Euler

      Latihan algoritma, mengasah skill dan mental problem solving, sangat bermanfaat. Bermanfaat untuk mengasah, sejauh mana pengetahuan kita terhadap suatu bahasa pemprograman. Saya biasa menyelesaikan nya dengan Bahasa Python. Coba selesaikan beberapa soal yang dianggap mudah antara nomor 1 sampai nomor 100. Kalau bisa menjawab 40 soal saja sudah bagus menurut saya.

    • Django Tutorial

      Framework yang saya gunakan untuk membangun aplikasi-aplikasi berbasis Web. Silahkan di ikuti tutorialnya, mudah dan menarik. Pakai SQLite aja untuk latihan.

  8. Rekayasa Perangkat Lunak
  9. Version Control System
    • CVS

      cukup ketik “info cvs” di terminal, ikuti tutorialnya di situ. Saya menggunakan cvs ini untuk mengelola kode sumber saya yang terdapat data-data rahasia, semisal password dll, sehingga hanya tersimpan di cvs server saja. Ini sedikit catatan saya mengenai cvs di sini.

    • Github

      Software Developer sebaiknya kenal juga dengan git dan github. Saya menyimpan data-data yang tidak sensitif di Github. Tulisan saya tentang github bisa di lihat di sini.

  10. Networking

Sekian dari saya, link-link yang saya anggap bermanfaat untuk di pelajari bila berminat menjadi seorang Software Developer. Mungkin ada yang berbeda pendapat, bahwa list yang saya buat ini terlalu condong ke Unix-like Operating System. Namun, daftar ini adalah pendapat saya pribadi.

Kemudian, sebagai refensi tambahan, berikut links Lainnya:

  1. OpenBSD Books

Alhamdulillah