
PyLab
Full-stack geliştirici
Python öğrenirken kodun sonucunu görmek.
PyLab’da öğrenci bir öğrenme patikasını izliyor, tarayıcıdaki editörde alıştırma çözüyor ve test sonuçlarını görüyor. İlerleme takibi, yapay zekâ mentoru ve sınıf araçları aynı çalışma alanında yer alıyor.
Geliştirme ayrıntıları
- İhtiyaç
- Python öğrenirken bir konuyu okumak ile kendi başına çalışan bir çözüm yazmak arasında ciddi bir adım var. PyLab’ı, öğrencinin küçük alıştırmalarla deneme yapabildiği, hatasının çıktısını inceleyebildiği ve kaldığı yerden devam edebildiği bir ortam olarak geliştirdim.
- Katkım
- React arayüzünü ve Django API’sini geliştirdim; Monaco Editor’ü alıştırmaların başlangıç kodu, testleri ve teslim kayıtlarıyla birleştirdim. Öğrenme patikalarına projeler, bilgi kartları ve mentor desteği ekledim. XP, rozetler ve günlük görevler öğrencinin ilerlemesini görünür kılıyor; öğretmenler sınıf oluşturup ödev verebiliyor.
- Mimari
- Kod çalıştırma isteği Django’dan iç ağdaki ayrı bir runner servisine gidiyor. Bu servis her çalıştırma için ağ erişimi kapalı, süre ve kaynak sınırları olan bir Docker konteyneri açıyor; çıktı ve hata bilgilerini API’ye döndürüyor. Öğrenme ve teslim kayıtları PostgreSQL’de, önbellek Redis’te tutuluyor. Böylece öğrenci kodunun çalıştırılması web uygulamasından ayrılıyor.




