July 15, 2019
Facebook was built using PHP, a programming language that was used widely in the late 90s and early 2000s. PHP allows developers to get web applications built quickly and easily, although PHP has a reputation for being difficult to scale.  In the early days of Facebook, the company was scaling rapidly on every dimension.  New
July 8, 2019
Edge computing allows for faster data access and computation. When your client application makes a request, that request might be routed to the edge. Edge servers are more numerous and more widely distributed than normal data centers, but an edge server might not have all of the data or the complete application logic for the
July 2, 2019
Google Earth allows users to explore the imagery of the real world. Imagery for Google Earth is taken from satellites, cars equipped with cameras, and other sources. Google Earth renders a data intensive 3-D model of the world on a client application such as a desktop browser or virtual reality system.  WebAssembly is a runtime
June 24, 2019
Software projects are organized and planned using project management software. Examples of project management software include JIRA, Trello, and Asana. There are hundreds of tools for managing a software project because there are infinite ways that a project could be managed. Google Docs changed project management by allowing documents to be easier to share and
June 20, 2019
WebAssembly allows for web-based execution of languages other than JavaScript. Programs written in Rust or C++ can be compiled down to WebAssembly and shipped over the browser for on-the-fly execution in a safe, memory controlled environment. WebAssembly has been in development for more than two years, and is still an immature ecosystem because building the
May 8, 2019
WebAssembly is a binary instruction format for applications to run in a memory-constrained, stack-based virtual machine. The WebAssembly ecosystem consists of tools and projects that allow programs in a variety of languages to compile into WebAssembly and run in a safe, fast, sandboxed runtime environment. WebAssembly is a transformative technology for the Internet. Most users
March 25, 2019
Upcoming events: A Conversation with Haseeb Qureshi at Cloudflare on April 3, 2019 FindCollabs Hackathon at App Academy on April 6, 2019 Coding in the browser has been attempted several times in the last decade. Building a development environment in the browser has numerous technical challenges. How does the code execute safely? How do you
March 6, 2019
WebAssembly is a runtime that lets languages beyond JavaScript to execute in frontend web applications. WebAssembly is novel because most modern frontend applications are written entirely in JavaScript. WebAssembly lets us use languages like Rust and C++ after they have been compiled down to a web assembly binary module. Language interoperability is only one part
February 22, 2019
React Native allows developers to build native applications for iOS and Android using components written in the React JavaScript framework. These ReactJS components render to native application code by going over a JavaScript bridge, a message bus that communicates between JavaScript code and native iOS or Android runtimes. For most mobile application use cases, React
January 23, 2019
React, Vue, and Angular are the most popular frontend JavaScript frameworks. Each of these frameworks lets frontend developers build components. A component is a high level visual abstraction that is used to compose a user interface. Frontend development has moved towards component-driven-development. At a typical technology company, a designer will put together a design file
December 20, 2018
Ten years ago, there was a distinction between “backend” and “frontend” developers. A backend developer would be managing the business logic and database transactions using Ruby on Rails or Java. A frontend developer would be responsible for implementing designs and arranging buttons using raw HTML and JavaScript. Today, developers can build entire applications in JavaScript.
December 14, 2018
Wes Bos has created popular courses on React, GraphQL, and JavaScript. With hundreds of thousands of students, Wes has earned a cult following for his fun, practical lessons on web development. The courses produced by Wes teach developers how to build useful applications such as a complete e-commerce store. Wes has built a career around
October 24, 2018
Engineers can build applications faster by using tools that abstract away infrastructure. Major cloud providers offer this tooling in the form of functions-as-a-service, as well as managed services such as Google BigQuery or Azure Container Instances. The term “serverless” refers to these functions-as-a-service and the managed services–because when you use these tools, you are not
October 22, 2018
Google Search is a highly interactive JavaScript application. As you enter a query, results are being automatically suggested to you before you even finish typing. When you press enter, some of your search results may be widgets that represent the weather, the price of a stock, a recipe for green bean soup, or a language
October 2, 2018
Kotlin is a statically typed programming language that started as a JVM language. It gained popularity because it reduces the amount of boilerplate code required for a typical Java project. Many of the early adopters of Kotlin were building Android apps or Java applications, but it has grown to a variety of use cases including
September 26, 2018
JavaScript performance has improved over time due to advances in JavaScript engines such as Google’s V8. A JavaScript engine performs compiler optimization, garbage collection, hot code management, caching, and other runtime aspects that keep a JavaScript program running efficiently.  JavaScript runs in browsers and servers. The resources that are available to a JavaScript engine vary
August 20, 2018
WebAssembly allows developers to run any language in a sandboxed, memory controlled module that can be called via well-defined semantics. As we have discussed in recent episodes with Lin Clark and Steve Klabnik from Mozilla, WebAssembly is changing application architectures both in and outside the browser. WebAssembly is being adopted by all of the major
August 17, 2018
WebAssembly is a low-level compilation target for any programming language that can be interpreted into WebAssembly. Alternatively, WebAssembly is a way to run languages other than JavaScript in the browser. Or, yet another way of describing WebAssembly is a virtual machine for executing code in a low level, well-defined sandbox. WebAssembly is reshaping what is
July 27, 2018
React Native allows developers to reuse frontend code between mobile platforms. A user interface component written in React Native can be used in both iOS and Android codebases. Since React Native allows for code reuse, this can save time for developers, in contrast to a model where completely separate teams have to create frontend logic
July 20, 2018
JavaScript has been the exclusive language of the web browser for the last 20 years. Whether you use Chrome, Firefox, Internet Explorer, or Safari, your browser interprets and executes code in a virtual machine–and that virtual machine only runs JavaScript. Unfortunately, JavaScript is not ideal for every task we want to perform in the browser.
April 19, 2018
Most new frontend webapps today use ReactJS. An increasing number of mobile apps are created using the cross-platform components of React Native. GraphQL, Facebook’s open source data-fetching middleware tool is being used by more and more companies, who are finding that it simplifies their development. Facebook’s open source suite of technologies created a new developer
December 21, 2017
Modern frontend development is about components. Whether we are building an application in React, Vue, or Angular, components are the abstractions that we build our user interfaces out of. Today, this seems obvious, but if you think back five years ago, frontend development was much more chaotic–partly because we had not settled around this terminology
December 1, 2017
Most user interfaces that we interact with are not animated. We click on a button, and a form blinks into view. We click a link and the page abruptly changes. On the other hand, when we interact with an application that has animations, we can feel the difference. The animations are often subtle. If you
October 2, 2017
React is a programming model for user interfaces. ReactJS is for building user interfaces for web applications. React Native is for building UI on Android or iOS. ReactVR is for building user interfaces in virtual reality. React Native was originally developed to make it easier to maintain parity between the web, iOS, and Android teams
August 24, 2017
Content websites are supported by advertising. Most of the advertisements around the internet are dynamic ad slots that change depending on the user who visits the site. Those dynamic ad slots are available to a variety of different bidders. For each ad slot, an auction occurs. The highest bidder gets to serve an ad for
August 17, 2017
GatsbyJS is a framework for building web applications for JavaScript. Gatsby’s original goal was to allow users to create super fast static web sites that could be hosted and served efficiently at a low cost. Most web pages have components from a framework like React or Angular that need to render after the user requests
August 11, 2017
Slack is an application for team communication. Users chat across mobile devices, web browsers, and a desktop application, which means Slack has three places to deploy on rather than two. And the desktop apps on Windows, Mac, and Linux are not identical, so Slack has even more places to deploy. With so many different runtime
August 10, 2017
Animations make an application more fun and engaging. For most apps, animation is an afterthought. Developers are concerned with getting the functionality right, and designers have enough work to do simply getting icons, text formatting, and page layout correct. There is also the issue of cross-device compatibility. iOS, Android, and web have different ways of
August 9, 2017
JavaScript is moving so fast. It’s not easy to keep up with all of the frameworks, build tools, and packages. No other language spans frontend to backend, mobile to web to server. Sacha Greif is an independent designer and developer most prominent in his roles as co-author of Discover Meteor and community builder at Sidebar.io,
July 7, 2017
Airbnb is a company that is driven by design. New user interfaces are dreamed up by designers and implemented for web, iOS, and Android. This implementation process takes a lot of resources, but it used to take even more before the company started using React Native. React Native allows Airbnb to reuse components effectively. React
July 6, 2017
React Native allows developers to reuse components from one user interface on multiple platforms. React Native was introduced by Facebook to reduce the pain of teams who were rewriting their user interfaces for web, iOS, and Android. Nader Dabit hosts React Native Radio, a podcast about React Native. Nader also trains companies to use React
April 11, 2017
React Native has unlocked native mobile development to web engineers who may now apply their skills to build iOS and Android applications in JavaScript. For the first time, cross platform JavaScript-based applications feel as if they were written in the native language of choice for the platforms. Businesses who choose to adopt React Native for
March 31, 2017
Brendan Eich created the first version of JavaScript in 10 days. Since then JavaScript has evolved, and Brendan has watched the growth of the web give rise to new and unexpected use cases. Today Brendan Eich is still pushing the web forward across the technology stack with his involvement in the WebAssembly specification and the
January 19, 2017
Over the past few years, React has become the most popular front end JavaScript framework. As React has matured, the open source community around React has identified areas for improvement. Since React itself is too mature to refactor completely, new projects have been started to take the best aspects of React and start from scratch.
October 25, 2016
Netflix has a highly interactive user interface. As I move my mouse around the page, hovering over titles and inspecting movie descriptions, there is a lot going on under the hood. One component of this UI is RxJS, a library for building reactive JavaScript. Reactive programming uses the observer pattern to create objects that emit
October 6, 2016
Scala is a functional programming language built on the JVM. For more than a decade, this didn’t mean anything to front end web developers. More recently, ScalaJS has brought Scala to the front end. ScalaJS is a project that compiles any Scala program down to JavaScript–so that all of your Scala programs can run on
June 13, 2016
JavaScript programming usually is done through the use of frameworks, such as ReactJS, AngularJS, and EmberJS. These frameworks abstract away some of the messy details of JavaScript, and simplify web development so that engineers can build products at a faster pace. When we build software using JavaScript frameworks, we are missing out on some of
June 6, 2016
Smart phone apps have better performance than web apps. When we have an application that we use on a regular basis, we download that application to a smart phone rather than using the browser based version on our mobile browser. Google’s Polymer Project wants to improve the gap between native app performance and mobile web
May 10, 2016
React started as just a view layer–it was the V in MVC. React has moved down the stack, with Flux, Redux, GraphQL, and Relay providing opinions for how React applications should structure their data flow. Jared Forsyth works at Khan Academy, which uses React on the front end. At Khan Academy, Jared has experimented with
April 11, 2016
“Seeing stuff happen is exciting in the early days. But when you try to be at the senior level, at the architect level, you have to understand that there is a cost to adopting a higher level abstraction.” Frontend web development was simpler in the past–CSS, HTML, and JavaScript were all you needed to know.
April 5, 2016
“JavaScript as a language is evolving year over year with new implementations and new language features, and we need to make sure we stay on top of those.” Code analysis tools can help a developer understand code. One tool for code analysis is bitHound, which provides code and dependency analysis for NodeJS applications. On today’s
March 4, 2016
“Events provide a very nice organization over persistent connections and that’s why we chose them. We think they’re also a very fundamental way of thinking about systems.” Socket.io enables realtime bidirectional communication. But what does “realtime” actually mean? Today’s guest is Guillermo Rauch, the creator of Socket.IO, a widely used technology for client server communication.
February 17, 2016
“But the bottom line is, accessibility is actually a challenge for coders, and I’ve yet to meet a coder that doesn’t like a good challenge.” Disabled individuals account for over a billion people worldwide. This represents the world’s largest minority on the Web, with $220 billion in discretionary spending power in the United States alone.
February 16, 2016
“The model-view-intent architecture is really cool and innovative – it’s basically combining the technologies of observables with the virtual DOM, and you’ve got this whole new paradigm of thinking.” Reactive programming emphasizes writing code that is readily responsive to events. It is an increasingly popular paradigm with highly interactive websites like Netflix. It draws on
February 15, 2016
“Node doesn’t have dependency hell – JavaScript absolutely does.” Node.js powers an increasing number of applications in the modern web. As node’s popularity grew, npm evolved in parallel as its default package manager and it has become a robust system for sharing and developing node programs. Yet today, npm is growing beyond its roots, and
February 12, 2016
“So much writing about tech is cheerleading – really being enthusiastic and throwing around words that don’t necessarily mean the things that people think they mean.” Lin Clark is today’s guest on Software Engineering Daily, and she joins Jeff to talk about Code Cartoons, a webcomic that explains Facebook’s open source projects like Flux and
February 11, 2016
“The smart phone itself is turned into the browser.” Continue reading…
December 29, 2015
“When you have different goals – it’s impossible to say ‘we have the best practices for doing everything’. Because the web is just so versatile.” Vue.js is a lightweight front-end JavaScript framework that makes it simple to begin prototyping and building web interfaces. Vue.js provides a flexible API for MVVM data bindings, and can serve
December 22, 2015
“I think that anybody who’s not using universal JavaScript is wasting a ton of time and a ton of money, and it’s just a silly thing to do.” Eric Elliott is a JavaScript advocate, and the author of Programming JavaScript Applications. He is also an entrepreneur tackling social issues including homelessness and inequality in the
December 21, 2015
“Part of the point of Tessel is that it just works – you don’t have to worry about it. Much in the way that you would throw your app up on Heroku.” Tessel is an open-source microcontroller that is programmable in JavaScript and compatible with Node.js. Kelsey Breseman is a hardware engineer and Steering Committee
Loading earlier episodes...
      0:00:00 / 0:00:00