Positron – Yeni Nesil Veri Bilimi IDE’si
(positron.posit.co)- Positron, RStudio’nun geliştiricisi Posit’in yeni geliştirdiği yeni nesil, veri bilimine özel bir IDE
- Bu IDE, R ve Python’u yerleşik olarak destekler ve birden fazla dilin birlikte kullanıldığı veri bilimi ortamlarına uygun şekilde tasarlanmış çok dilli (polyglot) bir platformdur
- Mimari olarak VS Code’un Code OSS tabanını kullanır; böylece tanıdık bir ortam ve zengin genişletilebilirlik sunarken, veri bilimcilerine özel grafik, değişken, yardım ve veri gezgini gibi özellikler de içerir
- Yeni R çekirdeği Ark ve Tree-sitter R sözdizimi desteği sayesinde kod çalıştırma, otomatik tamamlama, hata ayıklama ve doküman gezintisi daha da gelişmiştir; ayrıca R ile C++ karışık kodların hata ayıklanması da mümkündür
- RStudio hâlâ kararlı biçimde korunup destekleniyor olsa da Positron, çok dillilik, genişletilebilirlik ve modern mimari temeliyle uzun vadede veri bilimi geliştirme ortamlarının merkezi olma potansiyeli taşıyor
Positron’un tanıtımı ve neden gerekli olduğu
- Veri bilimine özel bir IDE olarak, genel yazılım geliştirme IDE’lerinden farklı biçimde veri analizi odaklı işlere uyarlanmış bir deneyim sunar
- GUI tabanlı bir araç yerine kod öncelikli (code-first) yaklaşımı benimseyerek üretkenliği ve yeniden üretilebilirliği artıran bir ortam sağlar
- Mevcut IDE’lerin (RStudio, Spyder, MATLAB vb.) tek dil odaklı sınırlarını aşarak, birden fazla dilin birlikte kullanıldığı gerçek iş akışlarına uygun yapıdadır
Başlıca özellikler
- Çoklu dil desteği: Şu anda R ve Python destekleniyor; mimari olarak başka dillere de genişleyebilir
- Tanıdık ama genişletilebilir arayüz: RStudio’ya benzer 4 panelli yapı (kaynak, konsol, değişkenler, grafikler) sunarken, VS Code tabanlı genişletilebilirliği de korur
- Dile özel motorlar (Language Packs): Python ve R bağımsız uzantılar olarak çalışır; bu sayede IDE’nin kararlılığı korunur ve bir çökme durumunda tüm IDE durmaz
R desteği için Ark
- Ark (An R Kernel): R için yeni bir Jupyter çekirdeği; kod çalıştırma, otomatik tamamlama, tanılama ve hata ayıklama özellikleri sunar
- Tree-sitter R sözdizimi desteği yeni geliştirilmiştir; GitHub kod araması ve diğer IDE’lerde (Zed, Neovim vb.) de kullanılabilir
- Hata ayıklamada yenilik: R kodundan C++ koduna doğrudan adım adım geçiş (step-through) yapılabilir; Rcpp/cpp11 tabanlı paket geliştirmede hata ayıklama verimliliğini en üst düzeye çıkarır
Veri bilimine özel işlevler
- Veri Gezgini (Data Explorer): Basit bir tabloyu (grid) aşarak özet istatistikler, eksik değer kontrolü, çoklu filtreleme ve histogram sparkline’ları sunar
- Değişkenler paneli (Variables Pane): Değişken adı, tür, önizleme ve sözlük yapılarının genişletilerek incelenmesini sağlar
- Grafikler paneli (Plots Pane): Görsel çıktıların biriktirilmesini, karşılaştırılmasını ve farklı formatlarda dışa aktarılmasını destekler (PNG, SVG, PDF vb.)
- Yardım paneli (Help Pane): Fonksiyon adının ardından
?girildiğinde anında dokümantasyon ve örnekler görüntülenebilir; RStudio’nun güçlü yanlarını Python kullanıcılarına da sunar
Teknik temel ve mimari
- RStudio’dan farklı olarak, tek süreçli bir yapı yerine VS Code’un Code OSS tabanlı çok katmanlı mimarisi benimsenmiştir
- Standart protokoller kullanılır:
- Kod çalıştırma → Jupyter Protocol
- Kod desteği (otomatik tamamlama, sözdizimi denetimi) → Language Server Protocol
- Hata ayıklama → Debug Adapter Protocol
- Bu standardizasyon sayesinde Jupyter Notebook, Zed IDE gibi çeşitli ortamlarla karşılıklı uyumluluk sağlanır
Topluluk ve genişletilebilirlik
- Open VSX Marketplace üzerinden çok sayıda VS Code uyumlu uzantı kullanılabilir (ancak GitHub Copilot desteklenmez)
- Quarto, Shiny, veritabanı bağlantıları gibi uzantılarla işlevler genişletilebilir
- Koyu tema, düzen değişiklikleri, RStudio tuş haritası uyumluluğu gibi kullanıcı özelleştirmeleri güçlendirilmiştir
RStudio ile ilişkisi
- RStudio kullanılmaya ve desteklenmeye devam edecek; kararlılık ve olgunluk avantajlarıyla bir süre daha birçok kullanıcı tarafından tercih edilmesi bekleniyor
- Positron ise deneysel ve yüksek genişletilebilirliğe sahip yeni bir seçenek olarak, uzun vadede veri bilimi IDE’lerinin evrim yönünü gösteriyor
Positron’un uygun olduğu kullanıcılar
- VS Code kullanıcıları: Veri bilimine özel özelliklerin yetersiz olduğunu düşünenler
- JupyterLab ve notebook kullanıcıları: Daha güçlü ve tam kapsamlı bir IDE’ye geçmek isteyenler
- RStudio kullanıcıları: IDE’nin özelleştirme ve genişletilebilirlik yönünü güçlendirmek isteyenler
- Çok dilli kullanıcılar: Python ve R dışında Rust, C++, JavaScript, Lua gibi dilleri de kullananlar
- Yapay zeka odaklı kullanıcılar: Veri bilimine özel yapay zeka entegrasyonları isteyenler
Gelecek görünümü
- Posit Workbench ve Cloud entegrasyonu planlanıyor; iş birliği özellikleri (gerçek zamanlı paylaşım, çalışma alanı paylaşımı) da araştırılıyor
- Büyük veri desteği, DuckDB ve Arrow entegrasyonu gibi disk üzerinde veri işleme yeteneklerinin güçlendirilmesi hedefleniyor
- Çok dillilik, genişletilebilirlik ve standart protokol temeli sayesinde veri bilimi IDE’lerinde yeni nesil standart hâline gelme olasılığı yüksek
2 yorum
Hacker News görüşleri
Gelişmiş özellikler için pyright ve jedi kullanılması hayal kırıklığı yaratıyor; bence basedpyright kullanmak daha iyi olurdu. jedi, Python dil desteği açısından pylance veya basedpyright’a kıyasla zayıf kalıyor. Açık kaynak deniyor ama sınırları gayet belirgin olmasına rağmen bu şekilde pazarlanması da pek hoş değil. Şirkette R Connect Server / Posit Server kullanmıştık; dahili bir uygulamada tek bir kimlik doğrulama özelliğini açmak için bile istenen fiyat yüzünden başka bir alternatife geçmek zorunda kaldık. Sonunda yeni bir alternatif bulduk ve güvenlik ekibini de memnun ettik, ama gerçekten çok zorlandık ve kullanıcılar da çok şikayetçiydi. Bu yüzden o zamandan beri Posit’in ticari ürünlerinden kaçınıyorum; bunda da yine bu belirsiz sınır yüzünden ciddi şekilde tereddüt ediyorum
Bu ürün iyi yapılmış gibi göründüğü için fazla yerden yere vurmak istemem ama düzgün bir SQL istemcisi olmadan veri bilimi IDE’si yapmak bana mantıklı gelmiyor. Belki bu benim önyargımdır ama SQL iş akışında gerçekten çok önemli bir parça. Sırf bu yüzden bile PyCharm veya Visual Studio’nun (Code değil, gerçekten VS) gerisinde kaldığını düşünüyorum. Tam teşekküllü IDE’lerin ağır araçlar olduğunu biliyorum ama sadece düzenleme yapacaksam vim kullanırım, gerçek iş yapacaksam da güçlü bir araç tercih ederim
Positron geliştiricisiyim. İlk yoruma tamamen karşı değilim. Python ve R için bağlantı yönetimi özellikleri sunuyoruz: connections pane. Veri gezgini, Quarto üzerinden Observable bağlantıları gibi hâlihazırda yaptığımız işlerin üzerine SQL desteğini büyütmek büyük hedeflerimizden biri. Bu yılın 4. çeyreğinden itibaren bu alana yatırım yapmayı planlıyoruz
Bu ürün sanki vsc tabanlı yapılmış gibi görünüyor. Muhtemelen iş gören bir SQL istemcisi eklentisi vardır diye düşünüyorum
Sorun açık kaynak olmaması: “Kullanıcıların yazılımın temel işlevlerine veya önemli bir bölümüne erişmesini sağlayacak şekilde yazılımı üçüncü taraflara barındırılan veya yönetilen bir hizmet olarak sunamazsınız” yazıyor
VSCode açık kaynağı temel alınarak yapıldığı söyleniyor ama proje sayfasında hangi özelliklerin veya bağımlılıkların açık kaynak olmadığı ya da ücretsiz olmadığı (ücretli abonelik, enterprise planı, premium hesap vb. gerektirdiği) çok belirsiz. Bu açıdan gelir modelinin nasıl kurulduğunun açıkça anlatılması iyi olurdu. IDE’ye GenAI assistant’ı paketlenmiş olarak koymaları da bence böyle “koşullar” olduğuna dair net bir işaret. FAQ’da bunların hiç yer almaması hayal kırıklığı yaratıyor
Emacs benim için tek gerçek yeni nesil veri bilimi IDE’si; tabii aynı zamanda önceki neslin IDE’si de
Özellikle hangi paketleri ve iş akışını kullandığınızı merak ediyorum. Kolay takip edilen, bakımı iyi yapılan başlangıç kaynakları pek yok gibi; bu yüzden yönlendirme faydalı olur
Biraz daha ayrıntı verebilir misiniz diye merak ediyorum
Artık vscode fork’larından kaçamayacak bir kaderimiz var gibi görünüyor
Bana "Days Since Last VSCode Fork" sitesini hatırlattı. Site burada ama sanki artık bakılmıyor
Monaco ekibinin gerçekten inanılmaz bir iş çıkardığını düşünüyorum. VS Code’un karmaşıklığında gerçekten özünde gerekli olan şeylerin ne kadarını kapsadığı belli değil ama biri kodun %10’u ile işlevlerin %90’ını sunan daha hafif bir sürüm yapsa, VS Code’un yaptığı kadar büyük bir editör dönüşümü yaratabilir. Bir de taşınabilir olursa harika olurdu, ama HTML+JS+CSS bağımlılığından kaçmak zor görünüyor. Dear ImGui uzantısı gibi denemelerden de söz etmek isterim
Akademide günlük olarak R studio kullanan biriyim ve Python için VS code kullanıyorum. Birkaç ay önce posit denedim ama günlük kullanım için yeterince kararlı değildi ve ihtiyacım olan paketlerin hepsi yoktu. Yakında tekrar denemeyi düşünüyorum. R ve Python kullanırken alışkanlıklarım o kadar net ayrılıyor ki, benim gibi kullanıcıların geçiş yapması zaman alacaktır. Yaklaşık bir hafta R’yi VS code’da kullanmayı denedim ama bir şeyler tam oturmadı. Bağlantı paneli gerçekten pürüzsüz çalışırsa bu umut verici olur
Positron aynı zamanda ultra kompakt bir 3D yazıcının adı. Positron3D ürünü ultra kompakt 3D yazıcı alanını yeniden tanımladı ve “Positron drive” adlı motor sistemi adı da tanıdık geliyor. Bunun kardeşlerinden biri JourneyMaker-Positron. JourneyMaker’ın maliyeti düşürülmüş bir sürümü olarak, CNC işlenmiş parça olmadan gövdesi doğrudan 3D basılabilen Lemontron da var
Bu araç ve ekosistem Julia’yı desteklemiyor. Günümüzde veri bilimi için çok dilli araç denince yalnızca R ve Python yeterli değil diye düşünüyorum. Julia’yı neden desteklemediklerini bilmiyorum
Positron geliştiricisiyim. Julia desteği talep eden issue’yu burada takip ediyoruz; isterseniz görüş bırakabilirsiniz
Julia hiçbir zaman yaygın kabul görmedi, hatta artık düşüşte bile denebilir
Bu tam olarak Anaconda veya WinPython ile gelen Spyder IDE’ye benziyor. Kod editörü, REPL, değişken denetleyicisi, satır içi grafikler gibi gereken her şey var
Jupyter yerleşik değil mi acaba.