Kako se Mozilla brine za Firefoxovo zdravlje - i što iz njega možete naučiti

Trenutno radim na nadzornoj ploči za Firefox kao dio svoje prakse za Outreachy s Mozillom. I evo glavnih ciljeva koje namjeravamo postići tijekom prakse.

  • Dodajte nove značajke grafičkom prikazu podataka o izvedbi
  • Prenesite postojeću nadzornu ploču JS Team (Firefox Performance) na zdravstvenu nadzornu ploču
  • Poboljšajte postojeće informacije na grafikonima i ispravite neke pogreške

Glavna svrha ovog posta je objasniti projekt nekome tko nije u zajednici i nije upoznat sa stvarima koje radimo u Mozilli. Namjera je pomoći početnicima i ostalim suradnicima da razumiju nadzornu ploču kako bi mogli doprinijeti ovom projektu otvorenih izvora s više osjećaja za ono što se događa unutra.

Što je nadzorna ploča Firefox Health?

Firefox health projekt je za stvaranje nadzornih ploča za voditelje projekata i inženjere. Prikazuje Firefoxove matrice i uvide koji pomažu u ispunjavanju kriterija izdanja. Omogućuje uključivanje podataka / mjernih podataka iz Mozillinog programa za praćenje problema (Bugzilla), podataka o performansama (Perfherder), mjernih podataka proizvoda (Telemetrija) i još nekoliko izvora. Svi se podaci prikazuju u obliku grafikona pomoću biblioteke grafikona otvorenog koda ChartJS za prikaz uvida u različite datume i platforme.

Prije je bila poznata kao Platform Health. Refaktoriziran je u siječnju 2018. kao nadzorna ploča Firefox Health. Jedna od glavnih promjena u ovoj refaktorizaciji bila je odvajanje pozadine od prednje strane. Ovo je poboljšalo održivost koda.

Tehnologije:

Zaštita je napisana pomoću NodeJS i Koa. Prednji kraj izrađen je pomoću ReactJS-a zajedno s bibliotekom grafičkih datoteka otvorenog koda ChartJS. Neki podaci dolaze iz različitih hostova kroz različite knjižnice. Na primjer, perf-google traži Mozillin Perfherder za podatke o izvedbi. Informacije o prijavljenoj grešci dolaze iz Bugzille. Dakle, ako planirate doprinijeti negdje u budućnosti, morate razumjeti gore spomenute tehnologije.

Ova nadzorna ploča služi za izvedbu različitih verzija i uređaja Firefoxa. Ali danas ćemo razgovarati o Firefoxu androidu i o tome kako se inženjeri u Mozilli brinu o njegovim performansama.

Podaci / mjerni podaci za Firefox android

Trenutno podaci za Firefox android dolaze iz različitih izvora. Podatke prikazujemo u obliku grafikona radi boljeg razumijevanja i analize. Sve uvide u Firefox android možete vidjeti na nadzornoj ploči zdravlja. Evo nekoliko izvora i informacija o Firefoxu android koji će inženjerima pomoći da poboljšaju performanse preglednika.

Bugzilla:

Razvila ga je Mozilla, Bugzilla je besplatan alat otvorenog koda za praćenje grešaka, problema i zahtjeva za promjenama u velikim složenim aplikacijama. Koriste ga tisuće organizacija za praćenje izvedbe svojih proizvoda. Koristimo ga na Nadzornoj ploči zdravlja kako bismo pratili bugove koji se pojavljuju u Firefoxu Android.

Kao što je gore spomenuto, za prikaz podataka koristimo ChartJS. Ovdje imamo grafikon koji predstavlja broj bugova prijavljenih na različite datume za Firefox Android na Bugzilli. Bug s oznakom P1 ima najveći prioritet. Treba ih popraviti što je prije moguće. Zatim dolaze P2 bugovi s 2. najvišim prioritetom. Bugovi na razini P3 imaju najniži prioritet i inženjeri ih mogu popraviti kad god imaju vremena. To pomaže programerima i menadžerima proizvoda da učinkovitije pregledaju pogreške različitih prioriteta i riješe ih prema prioritetu.

NimbleDroid:

Koristimo uslugu treće strane pod nazivom NimbleDroid da bismo dobili uvid u podatke nakon pokretanja testova protiv Firefoxa Android. NimbleDroid je usluga testiranja funkcionalnih performansi za android i IOS uređaje.

Pratite svaki kritični tijek korisnika za svaku izgradnju vaše mobilne aplikacije. Utvrdite probleme koji pogoršavaju korisničko iskustvo na početku razvojnog ciklusa. Jednostavno se integrirajte s vašim CI tijekom rada. - Službena stranica

Telemetrija:

Telemetrija je alat koji ima sposobnost pružanja podataka o performansama i upotrebi Mozilli kako bi pomogao inženjerima i donositeljima odluka da mjere performanse Firefoxa u stvarnom svijetu. Ima mogućnost prikupljanja performansi, hardvera, korištenja, prilagodbe i ostalih neosobnih podataka od korisnika Firefoxa i svakodnevno slanje Mozilli kako bi pomogao inženjerima da poboljšaju kvalitetu i učinkovitost preglednika.

Za Android uređaj, preglednik mjeri vrijeme potrebno za učitavanje stranice sa sadržajem na uređaj i izvještava ga natrag putem Telemetrije. Zatim ga prikazujemo u grafičkom obliku. Na primjer, snimka zaslona kaže da je 75% korisnika 19. rujna 2018. prijavilo ukupno vrijeme učitavanja stranice sa sadržajem od 4,9 sekundi. A ti se podaci prikupljaju s različitih uređaja različitih korisnika. To pomaže inženjerima da pripaze na vrijeme učitavanja preglednika kako bi poboljšali njegovu brzinu i učinili ga učinkovitijim.

Perfherder:

Perfherder je sustav koji pomaže inženjerima da vizualiziraju i analiziraju podatke o performansama proizvedene u mnogim automatiziranim testovima pokrenutim protiv Mozillinih proizvoda kao što su Firefox ili Firefox Android. Perfherder je dio projekta Treeherder. To je još jedna nadzorna ploča za prijave na Mozilline projekte. Glavni cilj ovog alata je osigurati da se izvedba Firefoxa s vremenom poboljšava. Pomaže programerima u razumijevanju njihovih promjena i potencijalnih popravki izvještavanjem o regresijama.

U narednim člancima govorit ćemo o Firefox Quantumu i nadzornoj ploči JS tima. Vidjet ćemo kako ovi alati rade na poboljšanju izvedbe preglednika Firefox.

Vodič za doprinos:

Ako vam je stalo do zdravlja Firefoxa ili ste zainteresirani za doprinos projektu, onda je to put.

  • Klonirajte i postavite projekt na lokalnom stroju
  • Slijedite readme
  • I započnite s dobrim prvim izdanjima ako smatrate da je nadmoćno početi

Pratite nas da saznate više o nevjerojatnosti koju radimo u Mozilli.