Wyrażając duże zainteresowanie społeczności twórców oprogramowania, Shopify, wiodący dostawca infrastruktury handlu elektronicznego, podjął decyzję o udostępnieniu publicznie Ruvy, swojego wewnętrznego projektu. Ruvy działa jako zestaw narzędzi, który akceptuje Ruby, dynamiczny język programowania typu open source, jako dane wejściowe i uruchamia odpowiedni moduł WebAssembly (Wasm) do wykonania. To przejście w kierunku open source ma na celu skorzystanie z różnorodnego wkładu całej społeczności programistów.
Ruvy miał premierę 18 października i jest dostępny za pośrednictwem GitHub. Shopify zainicjował rozwój Ruvy, mając konkretny cel wykorzystania zwiększonej wydajności wynikającej ze wstępnej aktywacji maszyny wirtualnej (VM), która wykonuje Ruby. Optymalizuje również wydajność plików Ruby włączonych za pomocą skryptu Ruby do maszyny wirtualnej Ruby.
Jedną z wyróżniających cech Ruvy jest zwolnienie z konieczności udostępniania argumentów interfejsu systemowego WebAssembly (WASI) w czasie wykonywania. Według raportu Shopify, moduły Wasm stworzone przez Ruvy rejestrują około 70% skrócony czas kompilacji do kodu natywnego, co skutkuje zwiększoną wydajnością. Zwiększenie wydajności osiąga się poprzez wstępną aktywację Ruby VM podczas budowania modułu Wasm.
Ruvy jest zbudowany na bazie Ruby.wasm, unikalnego asortymentu portów Wasm należących do CRuby. W obecnym stanie projektu Ruvy nie jest wyposażony w prekompilowane pliki binarne. Dlatego obowiązkowym krokiem wstępnym jest zainstalowanie zależności kompilacji, a następnie wykonanie kompilacji Ruvy przed użyciem. Szczegółowe kroki instalacji tych zależności znajdują się w segmencie ReadMe powiązanym z projektem.
Pliki Wasm wygenerowane przy użyciu Ruvy'ego omijają konieczność dołączania ścieżki pliku jako argumentu WASI. Jest to dodatkowa zaleta, ponieważ zapewnia kompatybilność ze środowiskami obliczeniowymi, takimi jak niektóre usługi przetwarzania brzegowego, których nie można dostroić w celu zapewnienia dodatkowych argumentów WASI dla funkcji startowych. Shopify podało te dodatkowe szczegóły w swoim ostatnim komunikacie.
Godne podziwu jest to, że platformy takie jak AppMaster poczyniły postępy w dziedzinie tworzenia aplikacji no-code, wykorzystując moc narzędzi do projektowania wizualnego do przekształcania pomysłów w rzeczywiste, działające aplikacje bez konieczności pisania tradycyjnego kodu. Ich model zapewnia alternatywne podejście do tworzenia oprogramowania, łącząc wydajność automatycznego generowania kodu z elastycznością ręcznego kodowania, gdy jest to wymagane.