Facebook delar med sig av information om utvecklingen av den egna appen och jag vet inte vad jag ska tro

av | feb 8, 2023

⏱ Ca 3 minuter att läsa

Facebook firar 10 år med den egna, officiella appen och nu delar Facebook med sig av information om hur appen har utvecklats under åren och jag vet inte riktigt vad jag ska tro och om det här är en redogörelse för en kodcirkus eller utvecklingen av app som förfinats för varje version.

Facebooks app är känd som en minnesgris, en app som slukar onormalt mycket resurser och som periodvis slukar extremt mycket resurser i jämförelse med andra, liknande appar. Det är svaret på om appen blivit bättre, mer förhand mellan versionerna och anledningen till det berättar Facebook direkt i sin text:

Facebook för iOS (FBiOS) är den äldsta mobila kodbasen på Meta. Sedan appen skrevs om 2012 har den bearbetats av tusentals ingenjörer och skickats till miljarder användare, och den kan stödja hundratals ingenjörer som itererar på den åt gången.

Tusentals utvecklare under åren. Tveksam om det är en siffra som ska vara imponerande eller om att det är ett bevis på en kodcirkus där lite för många kockar varit inblandade.

En ny utvecklare, varje dag i tio år?

Que?

After years of iteration, the Facebook codebase does not resemble a typical iOS codebase:

  • It’s full of C++, Objective-C(++), and Swift.
  • It has dozens of dynamically loaded libraries (dylibs), and so many classes that they can’t be loaded into Xcode at once.
  • There is almost zero raw usage of Apple’s SDK — everything has been wrapped or replaced by an in-house abstraction.
  • The app makes heavy use of code generation, spurred by Buck, our custom build system.
  • Without heavy caching from our build system, engineers would have to spend an entire workday waiting for the app to build.

Nej, Facebooks ser verkligen inte ut att vara en typisk app. Snarare en salig röra av bibliotek och annat som du vanligen inte ser i appar och program som hållits samman, som skrivits för att fungera optimalt.

Det jag inte riktigt förstår är hur det kommer sig att Facebook inte kan ha två team – ett för iOS, ett för Android som utvecklar en slimmad, optimerad, snabb och välutvecklad version av den officiella appen?

Imponerande

Dustin Shahidehpours text är förmodligen tänkt att vara en imponerande redogörelse för en apps tioåriga utveckling men för mig ger den snarare intryck av att vara en redogörelse över hur en app lagts i händerna på alldeles för många olika utvecklare som valt att använda lite för många olika tekniska lösningar, bibliotek och kod.

I believe Shahidehpour’s post is an attempt at bragging, but to me it reads like a cry for help.

My thoughts turn to Melvin Conway’s eponymous law: “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure.” If that’s true regarding Facebook’s system design for their iOS app, it’s a miracle the company ever gets anything done.

John Gruber

blank

Mikael Winterkvist

Fyrabarns-far, farfar, morfar och egen företagare i Skellefteå med kliande fingrar. Jag skriver om fotografering, sport, dataprylar, politik, nöje, musik och film. Vid sidan av den här bloggen så jobbar jag med med det egna företaget Winterkvist.com. Familjen består av hustru, fyra barn (utflugna) och fem barnbarn.

Jag har hållit på med datorer sedan tidigt 1980-tal och drev Artic BBS innan Internet knappt existerade. Efter BBS-tiden har det blivit hemsidor, design, digitala medier och trycksaker. Under tiden som journalist jobbade jag med Mac men privat har det varit Windows som har gällt fram till vintern 2007. Då var det dags att byta och då bytte vi, företaget, helt produktionsplattform till macOS. På den vägen är det.

_____________________________________________________________________________________

Anmäl dig till Magasin Mackens nyhetsbrev

Du får förhandsinformation om Macken, våra planer och du får informationen, först och direkt till din mail. Vi lovar att inte skicka din information vidare och vi lovar att inte skicka ut mer än max ett nyhetsbrev per månad.

Anmäl dig här

_____________________________________________________________________________________

Magasin Macken använder AI för att samla in information och underlag för de texter som publiceras. Vi använder även AI för att skapa bilder och illustrationer. Dessa märks alltid med att det är AI-bilder om bilderna är fotorealistiska. I förekommande fall så läggs även till länkar till källa och referenser till i texterna som alltid kontrolleras av en mänsklig skribent - som är den som skriver och redigerar alla texter till alla väsentliga delar.

Vill du kommentera den här texten, komma med förslag, kritik eller ställa frågor så gör du det enklast i något av de sociala medier som jag och Magasin Macken finns med i. Länkarna hittar du nedan.

  • Facebook
  • Instagram
  • Bluesky
  • Threads
  • Mastodon
  • LinkedIn
  • YouTube
  • Vimeo
  • Twitter
  • RSS
  • E-Mail

De senaste inläggen: