Frontend First artwork

Frontend First

185 episodes - English - Latest episode: 10 days ago - ★★★★★ - 18 ratings

A podcast about modern UI development on the web. Hosted by Sam Selikoff and Ryan Toronto.

Technology technology web javascript ember ember.js software development design
Homepage Apple Podcasts Google Podcasts Overcast Castro Pocket Casts RSS feed

Episodes

The Product Gap

September 27, 2018 10:53 - 1 hour - 57.3 MB

Sam and Ryan continue their discussion about the role of product in an engineer's daily working life. They talk about what product gaps are, the symptoms of product gaps on tech teams, and what you can do about product gaps if you're on a team with no product manager. Topics: 2:05 – All about product More product responsibilities fall on engineers than ever before Coders can help surface valuable info to business teams about the tradeoffs of their product decisions Learning product make...

80% done, 80% to go

September 12, 2018 17:47 - 54 minutes - 50 MB

Sam and Ryan talk about the cost of using engineering as discovery, the consequences of embedding product decisions throughout the design and development phases of a project, and other lessons that software engineers can learn from product developers. They also chat about how they categorize Github issues. Topics: 0:00 – GitHub issue categorization The importance of issue triage Prioritizing bugs over features Getting Things Done 7:53 – Managing product 7:53 - Engineering issues as a ...

Ember Octane

August 29, 2018 18:42 - 43 minutes - 39.7 MB

Sam and Ryan talk about the Ember 2018 Roadmap RFC and its focus on improving communication, completing in-progress work, and shipping Ember Octane. They also talk about how to verify complex addon behavior by using full-blown test apps and addons. Topics: 0:00 – Test apps Using full apps and addons in a subdirectory of an addon to facilitate testing complicated scenarios Avoiding implementation details of the build pipeline in testing 12:14 – Ember Octane The Ember 2018 Roadmap RFC T...

Melanie Sumner on empowering JavaScript engineers

August 22, 2018 15:11 - 53 minutes - 50.4 MB

Mel chats with Sam about getting into Ember, lessons learned from collaborating at work an in open source, and how to make it easier for JavaScript engineers to use better UI patterns. Topics: 0:00 – How Mel got into Ember at JPMorgan 4:45 – Feeling welcome in the Ember community 7:45 – Investing in Ember for the long-term 9:00 – Communicating vision, removing our ego, and empowering others to do work 17:07 – Learning team projects 19:30 – Improving the native accessibility story for ...

I am a lighthouse

August 15, 2018 11:14 - 1 hour - 58.5 MB

Sam and Ryan chat (on new mics!) about Ryan's recent video on declarative keyboard events, changes to EmberMap's FastBoot architecture, and some of Ryan's recent work on FastBoot testing. Topics: 0:00 – Ryan's video on declarative keyboard events; other declarative components that haven't been discovered 9:52 – Our evolving FastBoot architecture; which parts can be generalized; a high Lighthouse score; a long uncanny valley 29:11 – Sam's Mirage work, fixing bugs, approaching 1.0; Mirage ...

Jonathan Jackson on FastBoot Rehydration and Codemods

August 09, 2018 14:28 - 1 hour - 81.8 MB

Jon joins Sam and Ryan to talk about his recent work on rehydration in FastBoot and all the creative ways we can use Codemods to automate the routine parts of our jobs. Topics: 0:00 – How Jon got into Ember at HashRocket 4:45 – Jon and Chase starting the EmberWeekend podcast 7:30 – Greenfield vs. brownfield projects at a consultancy 13:30 – Infrastructure complexities in Ember's ecosystem 18:07 – Jon's work on FastBoot rehydration 41:29 – Jon's work on Codemods & the new testing APIs ...

Provide this!

July 20, 2018 16:01 - 52 minutes - 49.3 MB

Sam and Ryan chat about provider components in Ember, including the first renderless components they wrote, the different types of data components can provide, and the patterns of template composition that providers unlock. They also talk about the need for a unified API for styling Ember components. Topics: 0:40 – Our first provider components 10:12 – Using providers to isolate the business logic for a form 27:35 – Patterns of composition in templates 34:35 – How to constrain more flex...

Jen Weber on imaginary bars

July 13, 2018 22:11 - 37 minutes - 35.4 MB

Jen talks to Sam and Ryan about her journey learning from and giving back to Ember, and how she keeps her community contributions sustainable by tying them back to personal goals and rewards. Topics: 7:00 – Learning Ember at General Assembly 9:00 – How did you go from learner to contributor? 13:25 – Thoughts on Slack, Stack Overflow and Discourse 18:12 – What advice do you have for folks looking to contribute back to Ember? 24:66 – What are some things you'd like to see change about Em...

Mirage, meet Node

July 06, 2018 13:24 - 55 minutes - 52.2 MB

Sam and Ryan talk about their initial attempts to get Mirage running in Node, the benefits and workflows that it will unlock, some different approaches for using code in both the browser and Node, and how we might test FastBoot apps in the future. Topics: 4:28 – Getting Mirage to run in Express 21:58 – How to use addons like Mirage work in Node 42:53 – Testing FastBoot apps

Let's be optimistic

June 30, 2018 15:37 - 53 minutes - 50 MB

Sam and Ryan talk about how to deal with building non-optimistic UIs using Ember and Ember Data, and how constrained visual design tools might help us build better UIs. They also answer some questions and talk about their current series on Functional CSS and Rendering tests. Topics: 0:00 – What's new on EmberMap 8:06 – Options for non-optimistic UI in Ember Data 22:34 – Visual programming Questions: 34:08 – What techniques do you have for authorization (not authentication)? 40:42 - Ho...

A man can dream

June 23, 2018 01:02 - 50 minutes - 47.3 MB

Sam and Ryan talk about bringing the ideas of declarative rendering over to our data layers, how easy it is for data to become stale in SPAs, and more stories from their recent adventures in FastBoot land. Topics: 0:00 – Declarative data fetching 18:50 – Stale data in SPAs 30:46 – FastBoot

Wrapping libraries reponsibly

June 15, 2018 14:05 - 51 minutes - 49.1 MB

Sam and Ryan chat about what to do when a node module breaks in FastBoot, how to best wrap 3rd-party libraries in an Ember Addon, and how to test the filesystem. They also answer some listener questions. Topics: 0:00 – Node modules in FastBoot 13:55 – Ember Addons that wrap 3rd-party libraries 19:07 – Testing the filesystem with Broccoli Test Helpers Q&A: 32:11 – How can I speed up my Ember CLI build times? 38:31 – What do you think about the Angle Bracket Polyfill? Would you use it? ...

Bugs vs. features

June 07, 2018 19:28 - 1 hour - 64 MB

Sam and Ryan chat about some ideas around caching in FastBoot, different ways of prioritizing work, and the difference between easy things and hard things in Ember. Topics 0:00 – Caching & FastBoot 16:18 – Project process, workflow, bugs, features, and issue urgency 37:47 – Easy vs. hard things in Ember. Ember focusing on its strengths.

Toran Billups on Hot Reloading

May 29, 2018 18:44 - 41 minutes - 39.1 MB

Toran talks to Sam and Ryan about his project Ember CLI Hot Loader, which is an implementation of component-based hot module reloading for Ember apps. Topics: 0:00 – Losing hot reloading when moving from handwritten CSS to functional css 2:16 – Why Toran wrote the Hot Reloader 4:45 – How the hot reloader leverages Ember CLI to reload components 8:31 – The need for hot reloading 14:56 – Are there situations where you don’t want to use the hot reloader? 19:05 – What’s the easiest way to...

Test before commit

May 18, 2018 14:24 - 40 minutes - 38.9 MB

Sam and Ryan chat about Ember at Microconf, two-way bindings, and TDD vs. "Test before commit". Topics: 0:00 – When direct state mutations make sense 8:15 – Ember at MicroConf & how other communities think about Ember 29:42 – TDD versus “Test before commit” Links: Pure UI by Guillermo Rauch

Adam Wathan on Tailwind CSS

May 11, 2018 19:29 - 1 hour - 63 MB

Adam joins Sam and Ryan to talk about coupling in HTML and CSS, different approaches to styling applications, and his popular open-source library Tailwind CSS. Topics covered: 0:00 – Adam's motivation for creating Tailwind 3:20 – Reusability in CSS 8:20 – Semantics and coupling in HTML and CSS 16:05 – Messy templates in functional CSS 20:52 – CSS patterns in server-rendered apps 24:45 – Component classes in Tailwind 31:20 – CSS patterns in SPAs 39:31 – Experimental design tools 46:...

Robert Jackson and Tom Dale on Ember at LinkedIn

May 03, 2018 20:44 - 1 hour - 61.6 MB

Robert and Tom join Sam and Ryan to chat about how LinkedIn uses Ember, when teams should use Engines, build optimizations that are coming to Ember CLI and more. Topics: 0:00 – Engineering challenges of scale at LinkedIn 6:00 – Engines at LinkedIn 8:40 – When should teams use Engines? 15:25 – What are some of the downsides of Engines? 17:38 – Build-time versus AOT library transpilation 21:47 – How just-in-time compilation relates to code-splitting and importing node modules 29:50 – E...

Concretions and abstractions

April 26, 2018 11:58 - 48 minutes - 45.5 MB

Sam and Ryan chat about Tailwind and compilers (again), Ryan's EmberJS homepage teardown, and releasing with git tags. They also answer some listener questions. Topics covered: 0:00 – Compilers, Tailwind, and APIs for styling components 17:00 – Ember.js Homepage teardown 30:48 – git tag for immutable gh references We also answers some listener questions: 37:14 – Q: What's the deal with using websockets in Ember? Any good patterns beyond creating some kind of Ember service to listen to ...

Sketch Prototyping and Amazon Workspaces

April 19, 2018 13:25 - 53 minutes - 50.7 MB

Sam and Ryan chat about Sketch’s new Prototyping feature, using Amazon Workspaces to develop Ember apps in a Windows environment on a Mac, and how to use git tag to ensure your project’s dependencies don’t disappear. They also answer some listener questions. Topics Sketch prototyping + design Ember on Windows git tag for immutable gh references Questions Q: with the latest Router service it’s possible to transition to another page from everywhere in the code. Before, we created specifi...

Alex Matchneer on Routing Patterns

April 12, 2018 19:28 - 1 hour - 83.4 MB

Alex Matchneer chats with Sam and Ryan about challenging routing patterns in Ember, his involvement with the Ember community, and what Ember’s next router might look like. Topics covered: Routing patterns from mobile apps that are difficult with Ember Lessons learned from community involvement The concept of timespans Fighting community conventions Server-driven state changes Declarative routing Alex also answers some listener questions: When are you going to release a full album? ...

Steelman vs. strawman

April 05, 2018 14:51 - 46 minutes - 44.4 MB

Sam and Ryan talk about their new series, “Declarative rendering,” and why we should use steelman arguments instead of strawman arguments when talking about technology. They also answer some listener questions. Topics covered: Declarative rendering, their new series Steelman versus strawman arguments Listener questions: I care about lazy loading ember code, like routes. My knowledge is that’s its only possible with ember engines, but I’m not sure. Thanks a lot – @sommer_gerrit on Twitte...

Making the impossible, impossible

March 30, 2018 14:12 - 48 minutes - 45.5 MB

Sam and Ryan talk about Functional CSS training at EmberConf Some ideas for hiding styling implementation details from templates A new setup for multiple staging environments An idea from data modeling called “Making the impossible, impossible” How to use data down actions up effectively in forms They also answer some listener questions: When should I use polymorphic or reflexive relationships? When do I need to explicitly name a relationship’s inverse? When should I reference relat...

Oli Griffiths on the Benefits of Static Typing and How Broccoli Works

March 07, 2018 17:42 - 51 minutes - 48.6 MB

Oli Griffiths joins Sam and Ryan to talk about his experience using typed languages, what kinds of benefits static could bring to the Ember developer experience, and his upcoming EmberConf training on Broccoli.js.

JSONAPI Operations, Caching in FastBoot, and Ember's Strengths

February 22, 2018 19:24 - 44 minutes - 42.4 MB

Sam and Ryan talk about the upcoming Operations addition to the JSON:API spec, adding FastBoot support to Storefront, how to think about caching in Fastboot, and a thought experiment around how Ember might niche down and focus on its strengths.

Tom Dale on Static Analysis, Upstreaming Glimmer, and Ember in 2018

January 31, 2018 20:58 - 56 minutes - 53.6 MB

Tom Dale chats with Sam and Ryan about static analysis and compilers, upstreaming learnings from Glimmer, and what sort of size and speed improvements Ember.js will see in 2018.

Babel Plugins, Compile-time Components, and Extending Integration Tests

January 24, 2018 17:20 - 50 minutes - 47.3 MB

Sam and Ryan talk about writing Babel plugins, components that can be transformed to plain HTML at compile-time, the differences between run-time and compile-time error messaging, and one way to make integration tests more reusable and domain-specific.

Avoiding Imperative APIs and Expired Data

January 17, 2018 14:34 - 37 minutes - 36 MB

Sam and Ryan chat about Sebastian Markbage’s 2015 React Europe talk “DOM as a Second-Class Citizen” and how to deal with stale data in an Ember app. Sebastian Markbage's talk DOM as a Second-Class Citizen

Breaking Production, Functional CSS and UI Components, and Testing Async Errors

January 10, 2018 16:59 - 47 minutes - 44 MB

Sam and Ryan chat about all the different ways you can make sure your app is working, some of their latest thoughts on functional CSS and presenter components in Ember, and how to test asynchronous errors in an acceptance test.

Declarative Data Fetching, Disposable Code, Easier Upgrades, and the Upfront Cost of Ember

December 07, 2017 15:57 - 37 minutes - 36.2 MB

Sam and Ryan talk about a new Storefront API and why routes should declare their data needs, patterns that make your code more disposable, how Ember CLI Update simplifies the process of upgrading your Ember apps, and what teams should consider when choosing Ember for their next project.

Photo Uploads, Server Errors in Ember Data, NPM Dependencies and Ember CLI Addon Docs

November 08, 2017 15:47 - 40 minutes - 37.4 MB

Sam and Ryan talk about uploading images to S3, a new Storefront API for dealing with server errors in Ember Data, how to be a good community citizen when it comes to publishing consumable libraries given that our package managers now use lockfiles, and some ongoing work on the Ember CLI Addon Docs addon.

Async Relationships, Store Forking, and Batch Saving in Ember Data

October 27, 2017 14:52 - 38 minutes - 35.9 MB

Sam and Ryan discuss community feedback on Ember Data's pain points, including asynchronous relationships, store forking and batch saving.

Forms, Authentication, Ember 3.0, and Liquid Tether

October 06, 2017 21:05 - 32 minutes - 29.8 MB

Sam and Ryan discuss using contextual components to clean up forms, a unique authentication scenario using cookies and JWT, the release blog post about Ember 3.0, and building animations with the Liquid Tether addon.

Luke Melia on Styleguides

September 14, 2017 17:44 - 40 minutes - 37.1 MB

Special guest Luke Melia chats with Sam and Ryan about styleguides, CSS patterns, Ember Freestyle and more. Links from the episode: Luke Melia on Twitter Suit CSS Ember Freestyle Ember Prop Types Yapp Labs on Github Ember CLI Deploy

FastBoot, Structural Components and Ember Data Transactions

August 29, 2017 17:16 - 33 minutes - 30.6 MB

Sam and Ryan chat about adding FastBoot to EmberMap's codebase, the difference between reusable and structural components, and the road to adding transactions to Ember Data.

Glimmer, Ember's reputation and Tachyons

June 02, 2017 18:00 - 26 minutes - 24 MB

Listen to Sam and Ryan chat about their experience using Glimmer, how Ember is perceived in the larger front-end community, and their experience with Tachyons, the functional CSS library.

Twitter Mentions

@samselikoff 21 Episodes
@ryantotweets 16 Episodes
@dan_abramov 7 Episodes
@sebmarkbage 3 Episodes
@ryanflorence 3 Episodes
@rich_harris 2 Episodes
@rauchg 2 Episodes
@garybernhardt 2 Episodes
@pzuraq 1 Episode
@joshwcomeau 1 Episode
@davewasmer 1 Episode
@lukemelia 1 Episode
@floydophone 1 Episode
@katiegengler 1 Episode
@keystonelemur 1 Episode
@jwwweber 1 Episode
@getajobmike 1 Episode
@nselikoff 1 Episode
@derrickreimer 1 Episode
@tantantanmian 1 Episode