Adam Ernst talks about how functional programming and immutable data structures have made Facebook’s iOS app much easier to test and debug. By decoupling the data pipeline from the UI objects, and minimising the wrk on the UI thread, the application has become easier to test and suffers less bugs than when the UI was generated procedurally.
Christian Legnitto describes FB's release process for mobile apps, how FB has no dedicated iOS or Android teams, A/B testing and the Play Beta program, tools used for the build process, and much more.
Keith Adams explains how/where/why Facebook uses PHP, PHP's benefits (lack of state/programmer workflow/concurrency), efficient PHP with HHVM, the Hack project for optional typing PHP and much more.
Brian LeRoux talks about the PhoneGap Build service, mobile web apps vs native, Facebook's switch to a native iOS app, PhoneGap adoption in emerging markets, Firefox OS, Adobe's web tools and more.
Serkan Piantino explains how Facebook has managed to scale up, what types of errors occur in an architecture that size and how to handle them, RAM vs disk, and much more.
Max Sklar talks about machine learning at Foursquare, the use of Bayesian Statistics and other methods to build Foursquare's recommendation system and much more.
In this interview Joe Armstrong and Robert Virding, co-inventors of the Erlang language, talk about the future of the language, including its use in web programming, its ability to scale and more. The duo also discuss Erlang support for NoSQL databases, running the language on the Java Virtual Machine (JVM) and comparisons with other languages such as Google’s Go.
Nick Kallen from Twitter is interviewed by Randy Shoup about Twitter’s use of the Scala programming language. Nick discusses using Scala to build high-performance and scalable network services (including FlockDB), the powerful dualism of Scala which combines the best of object-oriented and functional approaches and also provides his views on the tradeoffs between static and dynamic languages.
In this interview Martin Odersky, the creator of the Scala language talks about work on the next version of Scala and how the functionalities in the JVM help make Scala better. Odersky touches on how some of the most popular entities on the web, such as Twitter and LinkedIn use Scala. And he discusses the complexity of the language and its role as a functional and object-oriented language.
Adrian Cole discusses his jclouds project, which is an open source library that helps Java developers get started in the cloud and reuse their Java development skills. Cole also talks about some of the challenges of creating a cloud agnostic library, such as the use of different hypervisors and that various cloud implementations are written in different languages, such as VB, Python, Ruby, etc.
In this interview Jez Humble discusses the concept of continuous delivery, which implies that software should always be production ready throughout its lifecycle. That means that every build could be released into production and run effectively. Continuous delivery involves build and deployment automation, continuous integration, test automation, managing infrastructure and environments and more.
In this interview taken by InfoQ’s Ryan Slobojan, Dan Farino, Chief Systems Architect at MySpace, talks about the system architecture and the challenges faced when building a very large online community. Because MySpace is built almost entirely on the .NET Framework, Dan explains how a .NET product scales on hundreds of servers.