January 7, 2024 7 Ocak 2024
Open source software is a big deal in the tech world, where people work together to create and share free software. Teknoloji dünyasında önemli bir kavram olan açık kaynak yazılım, insanların birlikte çalışarak ücretsiz yazılım oluşturduğu ve paylaştığı bir sistemdir.
This report, "The State of Open Source Contribution in Turkey," looks at data from GitHub and shows the stats related to GitHub usage in Turkey and the contributions from Turkey to open source. Bu rapor, "Türkiye'de Açık Kaynağa Katkının Durumu", GitHub'dan gelen verilerı kullanarak Türkiye'deki GitHub kullanımı ve Türkiye'nin açık kaynağa katkıları ile ilgili istatistikleri göstermektedir.
We also talk about "focus projects", which are special projects we want more Turkish contributors to work on. These projects offer a great chance for Turkish developers to get involved and make a difference in the worldwide open source community. Ayrıca, daha fazla Türk katılımcının katkı yapmasını istediğimiz özel projeler olan "odak projeler"hakkında da konuşuyoruz. Bu projeler, Türk geliştiricilerin katılabileceği ve dünya çapındaki açık kaynak topluluğunda fark yaratma şansı sunan projelerdir.
We collected the data from GitHub API using a custom written software called OpenTR/CuttleCat. All the location related data is collected from the location field of the user profile. We went an extra mile to understand if the location is actually in Turkey. Verileri GitHub API'sinden OpenTR/CuttleCat isimli özel yazılan bir yazılım kullanarak topladık. Tüm konumla ilgili veriler, kullanıcı profili içindeki konum alanından toplanmıştır. Konumun gerçekten Türkiye'de olup olmadığını anlamak için ekstra bir çaba sarf ettik.
Collected data can be found in OpenTRFoundation/state-of-oss-contribution repository. Toplanan veriler, OpenTR/state-of-oss-contribution repository'sinde görülebilir.
GitHub Innovation Graph is a great resource for understanding country specific GitHub usage. Its data is aggregated from GitHub network activity and data. GitHub Innovation Graph, ülkelere özel GitHub kullanımını anlamak için harika bir kaynaktır. Verileri, GitHub ağ etkinliği ve verilerinden toplanmıştır.
GitHub is using some internal resources when building their Innovation Graph, which are not accessible to public. They don't need to use the location field user provided, as they have access to the IP address of the user and thus the location. GitHub uses the IP address to determine the country of the user as described in their datasheet. GitHub, Innovation Graph'ı oluştururken herkese açık olmayan bazı iç kaynakları kullanmaktadır. Kullanıcının IP adresine ve dolayısıyla konumuna erişebildikleri için, kullanıcının sağladığı konum alanını kullanmalarına gerek yoktur. GitHub, veri seti bilgilendirmesinde yazıldığı üzere, kullanıcının ülkesini belirlemek için IP adresini kullanmaktadır.
We compared our data with the data from GitHub Innovation Graph, and we understand that GitHub Innovation Graph data is more accurate, but it is less detailed. As they only provide aggregated data, we can't see the distribution of the users in Turkey per province for example. Similarly, we cannot see the number of active users or their contribution to open source projects. Verilerimizi GitHub Innovation Graph verileri ile karşılaştırdık ve GitHub Innovation Graph verilerinin daha doğru olduğunu, ancak daha az ayrıntılı olduğunu anladık. Yalnızca toplu veri sağladıkları için, örneğin Türkiye'deki kullanıcıların il bazında dağılımını göremiyoruz. Benzer şekilde, aktif kullanıcıların sayısını veya açık kaynak projelerine katkılarını göremiyoruz.
For example, GitHub Innovation Graph data shows 1,317,401 users in Turkey as of Q1 2023, while we found around 110,000 users with a location field somewhere in Turkey. This is because the location field is a plain-text and optional input. Örneğin, GitHub Innovation Graph verileri, 2023 Q1 itibariyle Türkiye'de 1.317.401 kullanıcı gösterirken, biz konum bilgisi Türkiye'de bir yer olarak girmiş olan yaklaşık 110.000 kullanıcı bulduk. Bu, konum alanının düz metin ve opsiyonel bir alan olması nedeniyledir.
This 1.3M vs 110K ratio can be used to have a feeling about the number of users from Turkey who don't have a location field in their profile with a value of somewhere in Turkey. Bu 1,3 milyona karşı 110 bin oranı, Türkiye'de olmalarına karşın, profillerinde Türkiye'de bir yer olarak bir konum yazmayan kullanıcıların sayısı hakkında bir fikir edinmek için kullanılabilir.
This section gives an overview of software industry in Turkey, with regard to GitHub usage. Bu bölüm, GitHub kullanımı açısından Türkiye'deki yazılım endüstrisine genel bir bakış sunmaktadır.
These users have entered a location on GitHub that we matched with Turkey. As GitHub's location input is a plain-text input, we worked hard to understand if the location is actually in Turkey. Bu kullanıcılar, GitHub'da Türkiye ile eşleştirdiğimiz bir konum yazan kullanıcılar. GitHub'ın konum girdisi düz metin bir girdi olduğu için, konumun gerçekten Türkiye'de olup olmadığını anlamak için çok çalıştık.
Istanbul has the most users by having ~40% of the all users. Ankara comes the second, followed up by Izmir. İstanbul, tüm kullanıcıların ~40%'ına sahip olarak en fazla kullanıcıya sahip. Ankara ikinci sırada, İzmir ise onu takip ediyor.
These 3 big provinces have more than 50% of the users. Bu 3 büyük il, kullanıcıların %50'sinden fazlasına sahip.
It is not possible to determine the provinces of ~30% of the users. Kullanıcıların %30'unun ilini belirlemek mümkün değil.
Coloring of the provinces are based on the number of users in that province per 1M people. This can be thought of a score of a province's software industry. İllerin renklendirmesi, o ildeki kullanıcı sayısına göre 1 milyon kişi başına düşen kullanıcı sayısına göre belirlenmiştir. Bu, bir ilin yazılım endüstrisinin bir puanı olarak düşünülebilir.
There has been a steady increase in the number of users signing up to GitHub with a location somewhere in Turkey until 2021. Please note that, this chart does not show the location specified by the users at the time they signed up, but the location they have in their profile at the time of data collection. 2021'e kadar, konum olarak Türkiye'de bir yer belirten yeni GitHub kullanıcılarınin sayısında istikrarlı bir artış oldu. Ancak, bu grafik kullanıcıların kayıt oldukları sırada belirttikleri konumu değil, veri toplama sırasındaki profilindeki konumu göstermektedir.
After 2021, the number of new users signing up has decreased. We believe that this is due to the fact that users update their location after some time they sign up. The numbers from 2023 gives that impression too. 2021'den sonra, kayıt olan yeni kullanıcıların sayısı azaldı. Kullanıcıların kayıt olduktan sonra bir süre sonra konumlarını güncellemelerinden kaynaklandığını düşünüyoruz. 2023'ten gelen sayılar da bu izlenimi veriyor.
Only ~20% of the users are active, according to the criteria below. Kullanıcıların yalnızca ~20%'si aşağıdaki kriterlere göre aktif.
Ratios of the provinces are similar to the total user count. İllerin 1 milyon kişiye düşen aktif kullanıcı sayıları, 1 milyon kişiye düşen toplam kullanıcı sayıları ile orantılı.
OpenTR's mission is to increase the number of contributors from Turkey to open source projects. However, what are these projects? This section gives an overview of such projects. OpenTR'nin misyonu, Türkiye'den açık kaynak projelere katkıda bulunanların sayısını artırmaktır. Ancak, bu projeler hangileri? Bu bölüm, bu tür projelere bir genel bakış sunmaktadır.
Any public project on GitHub is open source by definition (as long as it has a OSS license). However, we want more contributors to work on some projects that we think have an impact. GitHub'daki herhangi bir public proje, tanım gereği açık kaynaktır (bir açık kaynak lisansı varsa). Ancak, daha fazla katılımcının etkili olduğunu düşündüğümüz bazı projelerde çalışmasını istiyoruz.
We call these projects focus projects. Bu projelere odak projeler diyoruz.
Criteria for focus projects can be seen in the next section. Odak projeler için kriterler bir sonraki bölümde görülebilir.
We use the term project in an abstract way to refer to a project such as Linux, Kubernetes, or React. We cannot tie a project to a repository or a GitHub organization, as some projects may have multiple repositories. Some projects may even have repositories under different organizations. Linux, Kubernetes veya React gibi bir projeden bahsederken, soyut bir şekilde proje terimini kullanıyoruz. Bir projeyi bir repository veya GitHub organizasyonuna bağlayamayız, çünkü bazı projelerin birden fazla repository'si olabilir. Bazı projeler, farklı organizasyonların altında bile repository'lere sahip olabilir.
For example Kubernetes has multiple repositories under the kubernetes
organization, but it also has repositories under other organizations such as kubernetes-sigs
. Conversely, the Linux project does not have an organization. Its main repository is the torvalds/linux
repository. Örneğin Kubernetes, kubernetes
organizasyonunun altında birden fazla repository'ye sahip, ancak kubernetes-sigs
gibi diğer organizasyonların altında da repository'lere sahip. Bunun aksine, Linux projesinin bir organizasyonu yok. Ana repository'si torvalds/linux
.
To make things simpler, we use the term focus organization to refer to an organization that has at least one repository that meets the criteria below. Similarly, we use the term focus repository to refer to a repository that meets another set of criteria below. İşleri sadeleştirmek için, aşağıdaki kriterleri karşılayan en az bir repository'si olan bir organizasyondan bahsetmek için odak organizasyon terimini kullanıyoruz. Benzer şekilde, aşağıdaki diğer kriterleri karşılayan bir repository'den bahsetmek için odak repository terimini kullanıyoruz.
OpenTR's goal in this report is to find the number of contributors to open source projects. It is not finding the number of open source repositories or organizations in general. So, when we check users from Turkey, we only check the users who contributed to any repository in a focus organization or to a focus repository. OpenTR'nin bu rapordaki amacı, açık kaynak projelerine katkıda bulunanların sayısını bulmaktır. Genel olarak açık kaynak repository'lerinin veya organizasyonlarının sayısını bulmak değildir. Bu nedenle, Türkiye'den kullanıcıları kontrol ettiğimizde, yalnızca bir odak organizasyonun herhangi bir repository'sine veya bir odak repository'ye katkıda bulunan kullanıcıların bilgilerini çekiyoruz.
Contributions to any repositories under these organizations are counted as contributions to open source. Bu organizasyonların altındaki herhangi bir repository'ye yapılan katkılar, açık kaynağa yapılan katkılar olarak değerlendirilmiştir.
We only show the top 50 organizations the following word cloud. Aşağıdaki word cloud'da sadece ilk 50 organizasyonu gösteriyoruz.
Similarly, contributions to any of these repositories that are not under any organization are counted as contributions to open source. Benzer şekilde, herhangi bir organizasyonun altında olmayan bu repository'lerin herhangi birine yapılan katkılar, açık kaynağa yapılan katkılar olarak değerlendirilmiştir.
We only show the top 50 repositories the following cloud. Aşağıdaki word cloud'da sadece ilk 50 repository'yi gösteriyoruz.
We found N organizations that have at least repository that meets the criteria below. These organizations have multiple repositories. However, number of repositories is not exactly relevant, as we're interested in finding people who contribute any repository under these organizations. Aşağıdaki kriterleri karşılayan en az bir repository'si olan N organizasyon bulduk. Evet, bu organizasyonların birden fazla repository'si var, ancak repository sayısı tam olarak önemli değil, çünkü bu organizasyonların altındaki herhangi bir repository'ye katkıda bulunan kişileri bulmak istiyoruz.
On top of the organizations, we found N repositories that meet the criteria below. Organizasyonların yanı sıra, aşağıdaki kriterleri karşılayan N repository bulduk.
Focus organizations: Odak organizasyonlar:
Focus repositories: Odak repository'ler:
This section gives an overview of the contributors from Turkey to open source projects. Bu bölüm, Türkiye'den açık kaynak projelerine katkıda bulunanlara bir genel bakış sunmaktadır.
# | Username Kullanıcı adı | Name İsim | Company Şirket | Score Skor | Most contributed organizations En çok katkıda bulunduğu organizasyonlar |
---|
According to the criteria mentioned below, there are ~500 open source contributors from Turkey who made contributions in the last 90 days. Aşağıda belirtilen kriterlere göre, son 90 günde bir katkı yapmış ~500 Türkiye'den açık kaynak katkıda bulunan kişi var.
Three big provinces have the same pattern of distribution as the total user count. Üç büyük il, toplam kullanıcı sayısının dağılımında aynı desene sahip.
It is not possible to determine the provinces of ~35% of the open source contributors. Açık kaynak katkıda bulunanların %35'inin ilini belirlemek mümkün değil.
Scoring calculation is not taking the project's popularity into account. For example, a pull request to Linux kernel is counted as 10 points, while a pull request to a small project is also counted as 10 points. This can be improved in the future. Skor hesaplaması, projenin popülaritesini dikkate almıyor. Örneğin, Linux kernel'e yapılan bir pull request 10 puan olarak sayılırken, küçük bir projeye yapılan bir pull request de 10 puan olarak sayılıyor. Bu ileride geliştirilebilir.
This section gives an overview of the companies that contribute to open source from Turkey. Bu bölüm, Türkiye'den açık kaynağa katkıda bulunan şirketlere bir genel bakış sunmaktadır.
# | Company Şirket | OSS Contributor Count Açık kaynağa katkı veren kişi sayısı | Sum of scores Skor toplamı | Most contributed organizations En çok katkıda bulunduğu organizasyonlar |
---|
There are only a few companies that have more than 1 contributor to open source projects. Furthermore, out of those companies, there are only a handful of companies that contribute to organizations that they don't own. Açık kaynak projelere birden fazla katkıda bulunan kişi çalıştıran şirket sayısı oldukça az. Dahası, bu şirketlerin içinde, sadece kendi organizasyonlarına katkıda bulunmayan şirketlerin sayısı da parmakla sayılacak kadar az.
Score calculation is not taking the project's popularity into account. It is simply the sum of the scores of the contributors of the company. Skor hesaplaması, projenin popülaritesini dikkate almıyor. Sadece şirketin katkıda bulunan kişilerinin skorlarının toplamı.
Change the "I open sourced my project" mindset to "I contribute to open source projects". "Projemin kaynağını açtım" düşüncesini "açık kaynak projelere katkıda bulunuyorum" düşüncesiyle değiştirin.
Be part of something big! Contribute to open source projects and gain valuable experience. Seek mentorship, read OpenTR's guides, and join OpenTR community for support and guidance. Encourage your company to contribute to these projects and make a positive impact. Büyük bir şeyin parçası olun! Açık kaynak projelerine katkıda bulunun ve deneyim kazanın. Mentorluk arayın, OpenTR rehberlerini okuyun ve destek ile rehberlik için OpenTR topluluğuna katılın. Şirketinizi bu projelere katkıda bulunmaya teşvik edin ve olumlu bir etki yaratın.
Why you should do that? Neden bunu yapmalısınız?
Why your company should do that? Neden şirketiniz de bunu yapmalı?
Make your presence known! Set your location on GitHub to Turkey or your province. Also make sure to update your company name on your GitHub profile. Varlığınızı bilinir hale getirin! GitHub'ta konumunuzu Türkiye veya ilinize ayarlayın. Ayrıca GitHub profilinizde şirket adınızı güncellediğinizden emin olun.
Check out OpenTR's website to learn more about OpenTR, open source and how you can contribute to open source. Açık kaynak hakkında, açık kaynağa nasıl katkıda bulunabileceğiniz hakkında ve OpenTR ile ilgili daha fazla bilgi edinmek için OpenTR'nin web sitesini ziyaret edin.