Seorang teman telah menulis bahasa pemrograman. Memiliki sintaks yang mengingatkan pada SGML. Dia telah menulis penerjemah untuk itu, dan sebuah IDE. Dia dan rekan-rekannya menggunakannya di rumah sebagai bahasa sisi server. Itu juga dapat digunakan untuk menulis alat baris perintah.
Dia ingin membuatnya tersedia untuk umum, dengan harapan orang akan membeli lisensi untuk menggunakannya. Dia ingin menyimpan kode yang mengekspresikan implementasi bahasa untuk dirinya sendiri, karena ada sedikit kekayaan intelektual yang terikat di dalamnya.
Saya terus mengatakan kepadanya bahwa hari bahasa pemrograman sumber tertutup sudah tidak ada. Saya berkata, "Lihat semua bahasa utama: sebagian besar adalah open-source. Anda juga harus open-source jika Anda ingin ada orang di luar perusahaan memperhatikan apa yang telah Anda buat."
Apakah saya memberinya nasihat yang bagus atau masih ada ruang untuk bahasa yang Anda bayar?
KEMUDIAN
Den bertanya, "... bisakah Anda juga menjelaskan bagaimana suatu bahasa dapat menjadi sumber tertutup?"
Saya berkata, "@Apakah Anda membuat poin yang bagus. Apa yang ingin dihindari oleh teman saya, saya kira, adalah situasi di mana Microsoft memasak bahasa yang mirip Java, menyebutnya J ++ dan kemudian masuk ke pengadilan dengan Sun tentang ke-Jawa-annya. Bagaimana Anda melindungi sintaksis dan metodologi pemrograman agar tidak dibajak oleh perusahaan yang implementasinya dapat membuat Anda gulung tikar? "
sumber
Jawaban:
Jawabannya adalah ya, dan tidak. Itu tergantung pada motivasi komersial dari calon pelanggan dan atribut dari bahasa dan masalah yang dipecahkannya.
Tidak, dunia tidak memerlukan bahasa komputasi serba guna lain yang dibuat oleh individu atau tim kecil. Ketika Perl, Python, Ruby, Java, dan Javascript dan dibuat ada kekosongan untuk mengisi, bahasa berpemilik mahal dan penghalang untuk masuk rendah. Rebol adalah salah satu yang mulai berbayar dan sekarang gratis. Lihat C # dan Pergi untuk melihat seberapa sulit sekarang dan seberapa besar tim, bahkan untuk bahasa yang lebih atau kurang gratis.
Tapi ya, dunia sangat membutuhkan bahasa khusus untuk mengisi seluruh jajaran peran spesifik dan akan membayarnya dengan baik. Saya tidak bisa mengutip contoh dari Anda karena Anda maupun saya belum pernah mendengar sebagian besar dari mereka, tetapi mereka digunakan secara rutin dalam situasi yang sangat khusus dan mereka menghasilkan uang untuk pencipta mereka. Selesaikan masalah dan Anda akan dibayar.
Jadi, agar teman Anda menghasilkan uang, ia membutuhkan satu atau lebih dari tiga hal.
Masalah yang disebutkan dalam mengandalkan perusahaan kecil tidak unik untuk bahasa pemrograman, dan mudah diselesaikan dengan cara komersial.
Pengungkapan: Saya adalah penulis sistem bahasa pemrograman komersial (Powerflex) yang membantu banyak orang membangun bisnis perangkat lunak. Jendela itu ditutup ketika jendela Internet dibuka.
sumber
Bahasa bukanlah sumber terbuka atau sumber tertutup. Misalnya, G ++ adalah open source sedangkan MSVC ++ adalah closed source. ISO C ++ juga tidak, itu adalah standar non-eksklusif non-bebas.
Teman Anda dapat merilis implementasi Open-Source yang tidak mengoptimalkan, dan menjual kompiler optimisasi yang mewah. Kekayaan Intelektual yang menarik tidak akan dibutuhkan untuk implementasi langsung.
Bahasa yang ada yang berfungsi dengan model ini adalah PHP / Zend Server
sumber
Apakah bahasanya melakukan sesuatu yang cukup banyak orang akan membayar?
Itu benar-benar satu-satunya hal yang memutuskan apakah model bisnis akan berhasil. Apakah Anda memiliki pasar besar pengguna yang cukup besar untuk tidak khawatir tentang biaya lisensi? Apakah bahasa tersebut mendukung perangkat atau standar yang tidak dapat hidup tanpa pelanggan, dan tidak ada yang mendukung? Apakah ini luar biasa hebat sehingga pelanggan akan dapat merekrut programmer terbesar, tercerdas dan mencapai peningkatan produktivitas besar hanya dengan menggunakan bahasa ini, dan apakah manajemen memahami pertukaran itu ?
Jika salah satu dari ini atau sesuatu yang sebanding terjadi, maka model bisnis mungkin akan berfungsi. Kalau tidak, itu mungkin tidak akan: cepat atau lambat, seseorang akan datang dengan langkah pemotongan biaya yang melibatkan beralih ke alternatif yang lebih murah.
sumber
Saya percaya bahwa tidak, tidak ada ruang untuk bahasa baru dengan implementasi kepemilikan yang dijual oleh perusahaan kecil.
Pertama, pengembang memiliki banyak implementasi bahasa gratis lainnya (setidaknya sebagai "dalam bir", dan sering sebagai "dalam pidato"), dan mereka tidak akan repot-repot mencoba bahasa (pricy).
Kedua, manajer mana pun akan segera keberatan: apa yang akan terjadi - pada basis kode kami yang dikodekan dalam bahasa baru - jika perusahaan kecil yang menyediakan implementasi bahasa tersebut bangkrut? Argumen ini mungkin akan melarang siapa pun untuk membeli implementasi bahasa!
Sebaliknya, implementasi bahasa perangkat lunak bebas dapat dievaluasi secara berlebihan oleh pelanggan, yang selalu dapat menangani layanannya kepada penyedia lain, jika perusahaan asli yang menulisnya bangkrut.
Dari sudut pandang klien, biaya mengadopsi bahasa baru bukan dalam lisensi implementasi, tetapi dalam keterampilan yang diperlukan untuk menggunakannya.
Dan ada banyak implementasi bahasa perangkat lunak bebas yang hampir tidak digunakan.
sumber
Bahasa tidak dapat menjadi sumber tertutup. Pustaka kompiler dan run-time-nya bisa tertutup. Tata bahasa formal dari suatu bahasa dapat dirahasiakan dan dilindungi secara hukum (NDA, dll.) Dan biaya yang dikumpulkan untuk penggunaannya.
Teman Anda dapat mengklaim kekayaan intelektual atau paten jika bahasanya sangat baru dan novel. Saya sendiri memiliki keraguan tinggi bahwa ini akan sepadan dengan usaha.
Saat ini, sebagian besar perusahaan memilih teknologi yang tersedia untuk umum terlebih dahulu, tidak peduli berapa banyak kerja keras untuk mencapai efek yang sama dengan pendekatan sumber tertutup. Selanjutnya, jika overhead super besar, maka mereka pergi ke solusi standar industri - bahasa eksklusif standar (misalnya Matlab), dengan penetrasi dan dukungan yang baik.
Bahasa internal biasanya dibuat sebagai DSL (bahasa khusus domain), dan dewasa ini upaya lebih kecil daripada membeli DSL milik orang lain dan mengadaptasinya. Selain itu, DSL sangat spesifik untuk domain masalah.
Sekarang, jangan mencegah teman Anda untuk memonetisasi bahasanya. Ada cara untuk melakukan ini - menjualnya ke perusahaan besar yang sudah mapan, atau meminta beberapa investor membeli ide dan berinvestasi di dalamnya -, tetapi masalah utama dalam pendekatannya adalah ia mengembangkan solusi tanpa meneliti masalah pengembangan. Dan itu bukan masalah apa yang dia anggap sebagai masalah, itu adalah apa yang dianggap oleh pelanggan potensial . Jadi dia bisa keluar dan berbicara dengan orang-orang ini tanpa memberikan rincian tentang solusinya dan membuat orang-orang itu membayar - ini bukan tidak mungkin tetapi sangat tidak mungkin.
sumber
Saya sudah melakukan diskusi ini sendiri ketika salah satu klien saya mempertimbangkan untuk mengembangkan aplikasi besar menggunakan ColdFusion. Secara pribadi saya tidak bisa memikirkan alasan untuk menggunakan CF (dan membayar untuk itu) ketika saya bisa menggunakan PHP (dan tidak membayar untuk itu). Namun, CF memiliki perusahaan besar di belakangnya yang menenangkan OSS-phobiacs (berurusan dengan cukup banyak manajer TI dan Anda akhirnya akan bertemu dengan beberapa dari mereka pada akhirnya) dan itu cukup bagus sehingga cukup banyak pengembang yang benar-benar menyukainya.
Namun, hasil tangkapannya adalah, tentu saja, bahwa teman Anda perlu menemukan sesuatu yang cukup baik dan dengan cukup dukungan di belakangnya. Yang pertama tidak ada trik jahat hari ini dengan semua platform open source yang matang sepenuhnya, dan yang terakhir membutuhkan dukungan dari pihak setidaknya ukuran, dari, katakanlah, Adobe.
Belum lagi fakta bahwa CF bahkan memiliki pangsa pasar marginal hari ini dibandingkan dengan OSS.
Singkatnya, jika teman Anda cukup brilian untuk menghasilkan sesuatu yang mengalahkan PHP, Python dan teman-teman dan bisnis yang cukup cerdas untuk menjualnya ke salah satu pemain yang lebih besar dan lebih terkemuka di pasar, jawabannya adalah "mungkin". Kalau tidak, itu adalah "tidak" yang tegas.
sumber
Saya pikir jawabannya adalah tidak pasti dalam hal ini. Memiliki bahasa baru yang didorong oleh entitas kecil menyebabkan risiko tinggi bug kritis atau fitur utama hilang.
Jika bahasa itu adalah hak milik, maka sebagai pengguna Anda benar-benar kacau jika bahasa tidak berkembang ke arah yang Anda butuhkan pada kecepatan yang Anda butuhkan. Jika bahasanya gratis, Anda dapat membuang uang atau tenaga orang pada masalahnya (yang setidaknya untuk perusahaan besar adalah pilihan).
Teman Anda akan jauh lebih baik menjual produk atau layanan pelengkap. Berikan dukungan, pelatihan, konsultasi. Dapatkan bayaran untuk menambahkan fitur yang diminta secara khusus. Berikan tooling (misalnya dalam bentuk plugin komersial untuk IDE populer). Berikan beberapa perpustakaan di bawah model lisensi komersial (tetapi masih dengan sumber yang termasuk dalam batasan yang sesuai).
sumber
Meskipun saya benci untuk mencegah teman Anda, saya pikir tidak mungkin dia akan berhasil meyakinkan orang untuk membayar alat pengembangan hari ini kecuali alat ini memberikan peningkatan produktivitas yang sangat besar (seperti dalam "menghasilkan perangkat lunak yang berfungsi dengan membuat manajer terlihat juling." di layar sambil memikirkan pikiran yang baik !!! "). Baik atau buruk ada sangat sedikit pasar untuk alat pengembangan "bayar untuk bermain" saat ini karena kuantitas dan kualitas alat gratis sangat baik. (Saksikan bahasa seperti Java, Ruby, Python, Clojure - IDE seperti Eclipse dan LightTable - basis data seperti MySQL dan PostgreSQL - daftar berjalan dan terus dan terus dan terus dan terus ...). Saya berharap yang terbaik untuknya dengan usaha ini.
sumber
Bisa. Jika memang:
Sebenarnya - sebagai permulaan itu harus benar-benar kuat pada 2 item pertama dan sangat diskon dibandingkan dengan nilai sebenarnya.
Saya melihat sebagian besar orang mengeluh tentang manajer jahat yang tidak suka membayar uang tunai besar untuk itu - Anda tidak pernah mengatakan teman Anda meminta banyak uang untuk lisensi. Bagaimana jika dia meminta $ 500 setiap tahun dan menghemat beberapa jam kerja perusahaan setiap tahun? Manajer cerdas mana pun akan mengambilnya.
sumber
Itu tergantung apakah bahasa itu menawarkan sesuatu yang cukup cerdik sehingga saya (mewakili pelanggan) bersedia membayar uang untuk itu.
Sebagai manajer proyek saya perlu mempertimbangkan:
3 poin pertama berlaku untuk setiap bahasa dan terutama yang pertama adalah sulit untuk diatasi untuk setiap bahasa baru, karena saya perlu alasan waktu produktivitas sangat rendah dengan sesuatu, dan yang lebih baik menjadi yang baik.
Poin ke-4 adalah yang hanya berlaku untuk bahasa sumber-tertutup, seperti yang saya bergantung pada pihak ke-3, yang mungkin atau mungkin tidak ada dalam 5 tahun dari sekarang. 5 tahun sebelumnya dari sekarang, aplikasi seluler bukan hal yang besar seperti hari ini, akankah bahasa dari saat itu beradaptasi dengan situasi saat ini dan memungkinkan saya untuk menulis aplikasi seluler juga? Apakah akan kompatibel dengan persyaratan baru? Jika ada persyaratan seperti itu untuk pelanggan saya, dapatkah saya menghubungi pengembang bahasa itu dan mengajukan permintaan untuk peningkatan?
Jika salah satu dari pertanyaan itu dijawab dengan "tidak", maka itu bisa menjadi bahasa terbaik di dunia, saya tidak bisa menggunakannya. Dan jika saya mendengar bahwa ada satu orang yang menemukan bahasa ini di "waktu luang" dan sekarang bekerja sebagai perusahaan orang lajang, saya akan sangat curiga tentang hal itu dan lebih suka tidak menggunakan bahasa itu, kecuali saya mendapat janji yang sangat solid dan bahasa itu menawarkan sesuatu yang tidak lain memungkinkan saya untuk melakukannya.
sumber