
Apakah Anda tahu siapa John Galloway? Sementara itu, dia. Dia tidak hanya salah satu penulis Professional ASP.NET MVC, tetapi juga orang yang merupakan direktur eksekutif .NET Foundation, pada kenyataannya - dia bertanggung jawab atas keseluruhan open source .NET. Topik utama artikel ini adalah rincian .NET Foundation, contoh tugas yang harus diselesaikan, dan beberapa kata tentang buku dan transisi ke .NET Core. Selamat datang di kucing!
- .NET Foundation adalah salah satu perusahaan paling menarik dalam sejarah .NET. Beth Messi menulis posting yang bagus di Media tentang bagaimana awalnya. Anda bergabung dengan .NET Foundation pada tahun 2017. Bisakah Anda membagikan kisah Anda tentang apa yang terlihat bagi Anda?
- Jujur, sebelum saya mendapatkan pekerjaan ini, saya tidak terlalu akrab dengan .NET Foundation secara khusus, atau dengan organisasi semacam ini secara umum. Suatu hari, direktur eksekutif sebelumnya .NET Foundation dan ikon sumber terbuka Martin Woodward mengatakan bahwa ia mengambil peran baru dan menarik di Microsoft dan ingin saya berpikir untuk mengambil alih tempatnya di .NET Foundation. Untungnya, terima kasih kepada Martin dan Beth, saya sudah sedikit terbiasa dengan .NET Foundation. Tetapi menyadari apa organisasi ini, saya sangat senang dengan kesempatan itu.
.NET Foundation adalah organisasi independen (didirikan dan didukung sebagian oleh Microsoft, tetapi yang terpisah), yang tujuannya adalah mendukung open source .NET. Untuk melakukan ini, Anda harus melakukan banyak pekerjaan:
- mendukung lebih dari 75 proyek .NET open source (beberapa disponsori oleh Microsoft, tetapi sebagian besar berasal dari komunitas);
- menyelesaikan masalah hukum dan logistik yang memungkinkan perusahaan dan pengembang individu untuk mengerjakan proyek di .NET Foundation;
- mengatur pekerjaan grup Pro Meetup, yang mencakup hampir 300 grup di seluruh dunia dengan jumlah total lebih dari 215 ribu peserta;
- Buat presentasi dan lokakarya untuk mendukung pembicara yang berbicara tentang .NET
- Mendukung ratusan acara di seluruh dunia, termasuk .NET Conf
- untuk mensponsori konferensi dan hackathon;
- untuk melakukan banyak pekerjaan tak kasat mata di luar untuk menghilangkan hambatan, masalah hukum dan logistik yang menghambat pertumbuhan komunitas .NET;
- Terlibat dalam apa pun yang dapat membantu komunitas .NET tumbuh dan melakukan hal-hal keren.
- Anda adalah direktur eksekutif .NET Foundation. Bisakah Anda memberi tahu kami lebih detail apa yang Anda lakukan?
- Ini adalah pekerjaan yang menarik, menarik dan sulit. Saya seorang karyawan Microsoft dan Microsoft memungkinkan saya untuk menghabiskan sebagian besar waktu kerja saya di .NET Foundation. Ini mirip dengan sistem di mana perusahaan mengizinkan karyawan untuk berkontribusi pada proyek sumber terbuka. Saya melapor kepada dewan direksi kami, bekerja dengan dewan penasehat, dewan teknis strategis, kelompok sponsor perusahaan. Saya baru saja mendaftarkan hal-hal yang dilakukan oleh .NET Foundation; tugas saya adalah mewujudkan semua ide ini. Saya mengelola semuanya, termasuk anggaran, pendaftaran bisnis, perjanjian hukum, inisiatif baru, komunikasi, perlengkapan, acara lokal, semua jenis hal dan acara baru. Tentu saja, ketika satu orang berurusan dengan segalanya, itu tidak skala, jadi bagian penting lain dari pekerjaan adalah mengembangkan organisasi dan menghubungkan orang-orang baru.
- Direktur Eksekutif harus berpartisipasi dalam banyak tugas berbeda. Saya yakin Anda tahu banyak cerita menarik tentang .NET Foundation. Bisakah Anda memberi tahu saya sesuatu? Apakah ada masalah yang tidak biasa atau aneh yang perlu ditangani?
- Pertanyaan bagus! Kisah favorit saya adalah tentang bagaimana kami melakukan sesuatu yang bermanfaat yang membantu banyak orang sekaligus.
Sebagai contoh, saya pernah membaca di Twitter bahwa layanan SymbolSource ditutup. SymbolSource menyediakan simbol debugging untuk paket NuGet, dan sebelum mereka secara mandiri memberikan dukungan untuk dua level: berbayar dan gratis. Setelah beberapa tahun menjalankan bisnis seperti itu, mereka menyadari bahwa opsi berbayar tidak membawa cukup pendapatan untuk terus memberikan layanan gratis, dan mereka harus menutupnya. Saya menghubungi mereka dan bersama dengan tim NuGet kami mengubahnya menjadi proyek .NET Foundation dan meluncurkan versi gratis pada fasilitas .NET Foundation di Azure.
Tugas menarik lainnya adalah mendapatkan sertifikat dan layanan untuk menandatangani kode untuk proyek .NET Foundation. Untuk proyek-proyek sumber terbuka, merupakan praktik yang baik untuk menandatangani majelis biner (penginstal, paket NuGet, dll.), Tetapi untuk mendapatkan layanan tersebut memerlukan mendaftarkan proyek sebagai badan hukum, dan mengatur penandatanganan perakitan bukanlah tugas yang mudah. Oren Novotny, anggota dewan penasehat dan selanjutnya - dewan pimpinan, datang dengan solusi yang sangat baik - mendaftarkan proyek sebagai merek dagang dari .NET Foundation. Kami mulai bekerja dengan DigiCert, penyedia sertifikat, dan menerima diskon untuk proyek .NET Foundation. Lebih lanjut, kami merancang .NET Foundation sebagai organisasi sub-sertifikasi, sehingga setiap proyek dapat menerima sertifikat atas namanya sendiri. Setelah itu, kami menyiapkan layanan penandatanganan untuk langganan Azure kami dan memberikan kesempatan untuk menggunakannya untuk semua proyek kami yang membutuhkannya. Itu adalah ide Oren, tetapi saya sangat senang bahwa itu adalah .NET Foundation yang menerima ini dan menghidupkannya.
- Baru-baru ini ada pengumuman .NET Foundation Open Membership . Selain itu, dewan direksi dipilih berdasarkan suara terbuka . Bisakah Anda berbicara lebih banyak tentang ini, dan mengapa ini sangat penting bagi komunitas .NET?
- .NET Foundation telah menjadi entitas yang terpisah sejak pendiriannya, tetapi pada awalnya dua dari tiga direktur adalah karyawan Microsoft, dan yang ketiga ditunjuk oleh Microsoft dan karenanya tidak sepenuhnya independen. Kami mempelajari banyak organisasi sumber terbuka lainnya, dan kami menyukai cara kerjanya di GNOME: orang-orang yang paling aktif dalam komunitas pengembangan dapat menjadi anggota organisasi dan terus memilih saran mereka sendiri. Karena itu, dewan baru kami memiliki satu anggota yang ditunjuk oleh Microsoft (Beth Messi), dan enam direktur yang tersisa adalah anggota terpilih. Masing-masing dari mereka bekerja selama satu tahun, setelah itu dia dapat berpartisipasi dalam pemilihan ulang jika dia mau.
Ini penting karena dua alasan utama:
- Ini sangat jelas memberikan kontrol atas .NET Foundation ke komunitas .NET open source, memutuskan apa yang sedang dilakukan organisasi, dan menyebarkannya ke komunitas, memperluas jumlah orang yang terlibat.
- Ini adalah model yang baik untuk menentukan skala apa yang kita lakukan atau dapat lakukan. Alih-alih meminta direktur eksekutif tunggal melakukan semua pekerjaan, sekarang ada tujuh anggota dewan dan ratusan anggota masyarakat membentuk tim dan mengerjakan hal-hal yang tampaknya penting bagi mereka. .NET Foundation mencakup banyak proyek berbeda .
- Bayangkan bahwa salah satu peserta dalam konferensi kami memiliki proyek open source sendiri. Apa yang harus dia lakukan untuk bergabung dengan organisasi? Bantuan apa yang akan ia terima jika ini terjadi?
- Jika Anda ingin bergabung dengan organisasi, Anda dapat mulai di sini dari halaman ini: https://dotnetfoundation.org/projects . Jika Anda belum dijawab karena suatu alasan, ide yang bagus untuk melakukan ping ke kami di contact@dotnetfoundation.org. Kadang-kadang banyak pekerjaan jatuh pada kita dan kita berusaha untuk tidak menampilkan proyek lebih cepat daripada kita mengatasi dukungan mereka. Tapi periksa tidak pernah sakit. Setelah itu, Anda perlu mengisi beberapa formulir untuk memverifikasi bahwa proyek tersebut cocok dengan organisasi. Setelah itu saya mengirimkan proyek untuk mendapatkan saran, kami menandatangani perjanjian, mengubah hak cipta, dan terhubung ke layanan kami.
Setelah bergabung dengan proyek, kami bekerja sama untuk mengimplementasikan layanan yang diperlukan: menandatangani kode, persetujuan kontributor untuk permintaan tarik, membangun server, hosting, dan sebagainya. Kami melihat peran kami dalam mendukung proyek yang sudah hidup sendiri - terlepas dari kenyataan bahwa ada daftar hal-hal tertentu yang perlu diimplementasikan oleh proyek baru, pada kenyataannya, kami hanya membantu ketika proyek memintanya. Selain itu, kami menangani masalah-masalah tertentu seperti dukungan hukum, pemasaran dan sebagainya.
- Anda adalah salah satu penulis seri buku Professional ASP.NET MVC . Yang terakhir (Professional ASP.NET MVC 5) diterbitkan pada 2014. Haruskah saya menunggu pembaruan seri untuk ASP.NET Core?
"Aku tidak tahu." Saya adalah tim penulis pada saat ASP.NET 1.0, kami bekerja bersama pada draft buku, tapi kami semua sangat sibuk dengan hal-hal lain, dan ternyata sangat sulit untuk mengikuti laju pengembangan ASP.NET Core - segera setelah kami menyetujui sketsa, ASP sudah terjadi .NET Core 1.1, 2.0 dan seterusnya. Selain itu, dokumentasi Microsoft telah menjadi sangat baik dalam beberapa tahun terakhir sehingga buku menjadi jauh lebih tidak perlu. Saya benar-benar menikmati mengerjakan buku, tetapi saya tidak tahu kapan yang berikutnya akan dirilis, atau apakah akan ada pembaruan untuk ASP.NET Profesional sama sekali.
- Banyak peserta dalam konferensi kami mendukung proyek warisan di ASP.NET dan .NET Framework. Apakah menurut Anda masuk akal untuk port mereka ke .NET Core? Apa manfaat yang bisa diperoleh dari pembaruan seperti itu?
- Saya membuat seluruh laporan tentang itu - dan ini bukan pertanyaan yang mudah. Saya akan memberikan jawabannya dengan daftar pemikiran singkat:
- Jika Anda mengembangkan sesuatu yang baru, Anda disarankan untuk menggunakan ASP.NET Core.
- Jika Anda memiliki aplikasi pada ASP.NET MVC atau WebAPI dan Anda tidak terbenam dalam kustomisasi mendalam, Anda dapat mem-porting sejumlah besar kode - terutama layanan, model, dan sebagian besar logika dalam pengontrol. Bagi saya, lebih mudah untuk membuat proyek Core ASP.NET baru dan menyalin kode di sana. Sebagai contoh, tim Stack Overflow porting kode mereka dari ASP.NET MVC ke ASP.NET Core - dan mereka mengatakan bahwa butuh hampir satu tahun, tetapi proyek mereka cukup besar.
- Jika Anda memiliki aplikasi Formulir Web, porting akan cukup sulit. Namun, ada beberapa opsi untuk melakukan pembaruan secara bertahap. Proyek pada DotVVM bekerja dengan baik OWIN dan ASP.NET Core, sehingga dimungkinkan untuk secara bertahap memperbarui halaman pada DotVVM yang bekerja dengan OWIN, dan segera setelah semuanya berjalan pada DotVVM, beralihlah ke ASP.NET Core. Selain itu, model seperti Razor Pages atau Blazor secara konsep tampak lebih mudah bagi sebagian besar pengembang WebForms daripada MVC, jadi ketika melakukan porting, saya menyarankan Anda untuk memilih salah satunya.
- Tetapi jika Anda memiliki proyek yang berfungsi dengan baik di Formulir Web, Anda bisa meninggalkan .NET Framework. Microsoft tidak akan menambahkan fitur baru, tetapi tidak akan berhenti mendukung untuk waktu yang lama.
- Rilis terakhir .NET Core 3.0 akan berlangsung di paruh kedua tahun 2019 . Apa perbedaan paling menarik dari versi ini? Bisakah saya sudah mencoba versi pratinjau, atau haruskah saya menunggu rilis stabil?
- Oh, ada banyak hal baru! Beberapa fitur teratas dirancang untuk pengembang desktop - Anda dapat mulai porting aplikasi WPF dan Windows Forms Anda ke .NET Core, pada saat yang sama mendapatkan penyebaran berdampingan, peningkatan kinerja, API baru dari .NET Core, kemampuan untuk merakit semuanya menjadi satu EXE, MSIX dan masih banyak lagi. Ada banyak fitur bagus di platform dan SDK, seperti kemampuan untuk menggunakan C # 8.0 dan kompilasi berlapis. Pengembang web akan dapat membuat layanan web lebih cepat menggunakan hal-hal seperti HTTP / 2, pemrosesan JSON cepat, templat pekerja baru, dan sebagainya.
Bertanya kepada saya apakah akan beralih ke versi pratinjau tidak selalu berguna. Saya akan selalu mengatakan ya, tentu saja, pergilah! Tetapi saat ini kami memiliki Pratinjau 5, dan perubahan utama sedang terjadi dalam penyetelan dan meningkatkan dukungan untuk pengembangan desktop. Ini jelas waktu yang tepat, setidaknya, untuk memulai pengujian, menemukan dan memperbaiki bug pemblokiran.
Kami mengingatkan Anda bahwa John lusa akan menyampaikan ceramah tentang "Yayasan perangkat lunak sumber terbuka: tidak benar-benar membosankan, benar-benar sangat luar biasa" pada konferensi DotNext 2019 Piter. Jika Anda ingin datang, maka ini adalah kesempatan terakhir. Tiket ada di sini .