Yeni bir ürün geliştirirken birdenbire sayısız zorlukla ve kararlarla karşı karşıya kalırsınız. Ne yazık ki, ister yeni başlıyor olun ister deneyimli bir girişimci olun, doğru seçimleri yapmanın sihirli bir formülü yok. Ekip olarak bu yolu birkaç kez yürüdüğümüz için, bunun getireceği heyecanı ve endişeyi anlıyoruz.
Yakın zamanda küresel bir ağ test platformu olan Globalping'i başlatan küçük bir ekibiz. Bu proje özeldir çünkü benzer ürün fikrine sahip bir startup'ın istenen sonuca ulaşamamasından sonraki ikinci girişimimizdir. Globalping ile hedeflerimize ve ürün vizyonumuza ulaşmak için farklı bir yaklaşım benimsiyoruz.
Bu blog yazısında startup'la olan deneyimlerimizden elde edilen içgörüleri ve öğrendikleri ve bunların Globalping'deki yaklaşımımızı nasıl etkilediğini paylaşacağım. Özellikle neden JavaScript tabanlı açık kaynaklı bir platform oluşturduğumuzu ve bu seçimlerin projeyi nasıl dönüştürdüğünü yazacağım.
PerfOps adında bir startup kurduğumuz birkaç yıl öncesine gidelim. Fikir, İnternet tabanlı uygulamaları optimize etmek için bir B2B SaaS platformu oluşturmaktı. CDN sağlayıcılarındaki performans ölçümlerini toplamak ve Çoklu CDN yük dengeleme işlevini etkinleştirmek için RUM (Gerçek Kullanıcı İzleme) verilerini kullandı.
Bonus olarak, kullanıcıların dünya çapında farklı konumlardan traceroute ve kazma gibi ağ ölçüm isteklerini çalıştırmasına da olanak tanıdı.
Birçok startup gibi bizim de finansmana ihtiyacımız vardı. VC desteğini aldığımızda şans bizden yanaydı; bu da bir ekip oluşturmamıza ve isteğe bağlı ağ testi için küresel bir ağ oluşturmak üzere yüzlerce VM (sanal makine) kiralamamıza olanak sağladı. Sonuç olarak milyarlarca RUM veri noktasını analiz etmek ve bunları gerçek zamanlı olarak DNS tabanlı yük dengelemede kullanmak için yeni teknolojiler geliştirebiliriz.
Bu girişim öngörüldüğü gibi ilerlemese de, kazanılan deneyim çok değerliydi ve Globalping'in bugünkü yolunu şekillendiriyor.
Bazı çıkarımlar:
Ancak girişimin talihsiz kaderinden sonra bile doğru, açık ve güvenilir ağ testi ve performans izleme potansiyeli ve ihtiyacını hala gördük. Ve böylece Globalping doğdu; bazı şeyleri farklı yapmak ve deneyimlerden yararlanarak kullanıcılarımız ve kendimiz için daha iyi bir hizmet yaratmak için ikinci bir şans. Şimdi bunu nasıl yaptığımızı sizlerle paylaşalım.
Globalping'i açık kaynaklı bir proje haline getirmenin doğal bir ilerleme olduğuna inanıyoruz. Bir kere bu konsepte zaten aşinayız. Aylık 230 milyardan fazla isteğe hizmet eden ücretsiz, açık kaynaklı, çoklu CDN hizmeti olan jsDelivr'i yaklaşık 10 yıldır çalıştırıyoruz.
Yani açık kaynağın artılarını ve eksilerini, ne yapmamız gerektiğini ve nelerden kaçınmamız gerektiğini zaten biliyorduk; bunun hakkında ne kadar çok düşünürsek, Globalping'in açık kaynak olması gerektiği o kadar mantıklı geldi.
Globalping'i açık kaynak haline getirmenin ana nedenleri şunlardı:
Doğal olarak açık kaynağın da zorlukları var. Ürün geliştirme, geliştiricilere, tasarımcılara, pazarlamacılara ve geliştirici ilişkileri uzmanlarına ihtiyaç duyar. Topluluğumuzdaki teknoloji uzmanlarının desteğine sahip olsak da, çalışmalarının karşılığını alan çekirdek bir ekiple çalışmaya devam ediyoruz.
VC finansmanına güvenmek yerine artık benzer düşüncelere sahip şirketlerle ortaklıklar kuruyoruz ve bağışları bizi ayakta tutan GitHub sponsorlarından destek arıyoruz.
Bir sonraki önemli karar Globalping'i oluşturmak istediğimiz teknolojiydi. Büyük ölçekli, gerçek zamanlı JavaScript uygulamalarını çalıştırma konusundaki deneyimimize dayanarak JavaScript'i güvenle seçtik.
Dile aşinalığımızın faydaları şimdiden karşılığını verdi ve daha az tanıdık dillere kıyasla yeni özellikleri daha hızlı geliştirmemize ve hataları daha kolay bulup düzeltmemize olanak tanıdı.
Ayrıca, JavaScript'in dünya çapındaki uygulama ve web geliştiricileri arasındaki popülaritesi, onu bizim için bariz bir seçim haline getirdi. Dil, geliştirme hedeflerimize uygun, zengin ve sağlam bir araç, kitaplık ve paket ekosistemine sahiptir. Diğer açık kaynaklı projeleri kullanarak, tekerleği yeniden icat etmekten kaçınarak topluluğun bilgi ve çabalarından yararlanabiliriz.
JavaScript'in kendisi geniş bir topluluğa sahip olduğundan, Globalping'e katkıda bulunabilecek birçok potansiyel kişi vardır. JavaScript kodunun okunması çoğunlukla basit olduğundan, yeni gelenlerin kaynak kodunda gezinmesi ve anlaması daha kolaydır.
Sonuç olarak geliştiriciler daha hızlı katkıda bulunabilir, bu da motivasyonu yüksek tutar ve projeyi ileriye taşır.
Sonuçta çekirdek ekibimiz sürekli olarak Globalping üzerinde çalışırken, platforma yapılacak her türlü katkıyı memnuniyetle karşılıyoruz . JavaScript'i seçerek, Globalping'i yararlı ve kullanıcı dostu bir ağ test platformu haline getirmekle ilgilenen herkesi davet eden açık ve işbirliğine dayalı bir ortam sağlayabiliriz.
Son olarak, sizi kısaca Globalping platformuyla tanıştırmak istiyoruz ve ekiplerinizdeki sorun giderme ve ağ testlerini geliştirmek için merakınızı uyandırmayı umuyoruz!
Ölçüm sonuçlarına hızlı erişim sağlayın: İster ağ profesyonelleri ister yeni başlayanlar olsun, farklı kullanıcıların ihtiyaçlarını karşılamak için çeşitli entegrasyonlar geliştirdik. Terminalinizde kendinizi en rahat hissediyorsanız CLI aracımızı kullanın. GitHub botumuz ve Slack uygulamamız, ağ sorunları üzerinde birlikte çalışan ekipler için harika yardımcılardır.
Son olarak, örneğin normal kurulumunuza erişiminiz olmadığında testleri çalıştırmak için Globalping'i web sitemizdeki basit ve kullanıcı dostu bir grafik arayüzde de kullanabilirsiniz.
Entegrasyonlar arasında tutarlı komutlar yazın: Entegrasyonları her değiştirdiğinizde her şeyi sıfırdan öğrenmenizi istemediğimiz için tek tip bir komut yapısı uyguladık. Genel olarak tüm Globalping komutları aynı formatı izler:
globalping [command type] [target] from [location] [flags]
Örneğin, Viyana ve Berlin'den jsdelivr.com'a iki sonda (limit bayrağıyla tanımlanan) kullanarak ping çalıştırmak için aşağıdaki komutu yazarsınız:
globalping ping jsdelivr.com from "Vienna, Berlin" --limit 2
Sonuç şu şekilde görünebilir:
API'mızla kendi araçlarınızı oluşturun: Globalping platformunu kullanarak kendi aracınızı oluşturmak ister misiniz? Sorun değil; istediğinizi oluşturmak için REST API'mizi (cömer sınırlarla) kullanabilirsiniz!
Ağın bir parçası olun: Globalping, topluluğumuz tarafından desteklenen küresel olarak dağıtılmış bir araştırma ağına dayanır. Tüm kullanıcılara ücretsiz olarak güvenilir sonuçlar sunmaya yardımcı olmak için evinde, ofisinde veya sunucularında Docker'da bir araştırma kuran herkesi aramızda görmekten mutluluk duyarız.
Bugün, Globalping'in geçmiş deneyimlerimiz ve öğrendiklerimiz tarafından şekillenerek nasıl gelişip büyüdüğünü görmekten mutluluk duyuyoruz. Sonunda Globalping'in İnternet performansı, gecikme ve çalışma süresiyle ilgili her şey için başvurulacak platform haline geleceğini umuyoruz.
İlgilenen herkesin platformu kullanabilmesi için özellikleri geliştirmeye ve harika bir kullanıcı deneyimi sunmaya devam edeceğiz.