2min Devops

Developer bouwt Zasper, een “vier keer betere” IDE dan JupyterLab

Developer bouwt Zasper, een “vier keer betere” IDE dan JupyterLab

Developer Prasun Anand heeft op GitHub een IDE ‘geïnspireerd door Jupyter’ vrijgegeven. Zasper is open-source en heeft slechts een kwart van de RAM- en CPU-capaciteit nodig van JupyterLab.

Alternatieven voor de frontend-tools JupyterLab zijn er al, zoals Databricks Notebooks en Deepnote Notebooks, geeft Anand toe. Echter onderscheidt Zasper zich door het feit dat het volledig open-source is op AGPL-3.0 basis en een stuk efficiënter lokaal draait dan JupyterLab. De alternatieven van Databricks en Deepnote zijn daarnaast cloudgebaseerd, iets dat wegens de footprint van Zasper onnodig lijkt. “Terwijl JupyterLab ongeveer 104,8 MB aan RAM gebruikt en 0,8 CPU’s, gebruikt Zasper 26,7 MB en 0,2 CPU’s”, aldus Anand. Het doel is om een volledige IDE te leveren die steeds efficiënter wordt en los zal staan van Jupyter Notebooks, met eenvoudige integratie voor bestaande tooling.

Eenmanszaak

Vooralsnog is Zasper een project dat alleen Anand fulltime bijhoudt. Echter verwelkomt hij contributies in de vorm van documentatie, het rapporteren van bugs en het verzenden/beoordelen van pull requests.

De kans van slagen van dergelijke projecten is altijd lastig in te schatten, aangezien de betrokkenheid van anderen veelal de adoptie van nieuwe tools bevordert en niet op een voorspelbare wijze ontstaat. Maar kritiek op JupyterLab is er genoeg, zoals de constatering dat de UI “opgezwollen en bugged” is en er meer input lag is dan bij bijvoorbeeld Vim.

Voor Zasper is er wel nog een weg te bewandelen naar volwassenheid. “Hoewel het lijkt alsof hier veel moeite in is gestoken, moet een alternatief dezelfde platformen, talen en gerelateerde tooling ondersteunen, niet alleen draaien op macOS, gedeeltelijke ondersteuning op Linux en IPython”, stelt één developer.

Geschreven in Go

Onder de motorkap draait Zasper op de programmeertaal Go. Dit verklaart de prestatieverbeteringen ten opzichte van Jupyter Notebook, dat gebouwd is met een mengeling van verschillende open-source libraries en verschillende talen, waaronder Python. Tijdens een eerder project ontdekte Anand dat Go de ideale taal was voor een rebuild van het Jupyter-project. “Go heeft uitstekende ondersteuning voor REST-, RPC- en WS-protocollen. Concurrency en prestaties zijn de gebieden waar Go erg goed uit de verf komt.”

Lees ook: AWS betaalt om programmeertaal Rust veilig te krijgen