054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013!PanelDavid Herman (twitter blog Effective JavaScript) Ariya Hidayat (twitter github blog) Tim Caswell (twitter github howtonode.org) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up)
Discussion
00:48 - David Herman and Ariya Hidayat Introduction044 JSJ Book Club: Effective JavaScript with David Herman 023 JSJ Phantom.js with Ariya Hidayat
01:54 - Parsing JavaScript and ASTs and Language Grammars
04:44 - Semantics
06:08 - Abstract Syntax Tree (AST)Esprima: Parser SpiderMonkey
10:37 - Lexer
12:16 - Writing your own languagecreationix / jack The C Programming Language
17:41 - Parser GeneratorsJavaScriptCore
21:04 - Evolving a Syntax
Automatic Semicolon InsertionPost correspondence problem Halting problem
28:05 - Language DesignThe Rust Programming Language
30:35 - GrammarRegular Expressions (Regex) Backus–Naur Form (BNF) Recursion How to Design Programs (HTDP)
38:00 - Recursive Descent Parsers
42:48 - Benefits of knowing language internals and syntaxApache Lucene - Apache Lucene Core LPeg - Parsing Expression Grammars For Lua
48:48 - Abstract Syntax Tree (AST)PicksMass Effect 3 (Joe) A Beginner's Guide to Irrational Behavior | Coursera (Joe) Go write a programming language to learn one (Tim) Thumbs and Ammo (Jamison) ISM by Savant (Jamison) Vimcasts (Jamison) The iPhreaks Show (Chuck) Mozy (Chuck) Tech & Go Bright Pink Micro USB Cable (David) asm.js (David) Beyond Office Politics: The Hidden Story of Power, Affiliation & Achievement in the Workplace by Linda Sommer (Ariya) gotwarlost / istanbul (Ariya)
Next Week
Web Developer Skills
Transcript
JAMISON: I am Linus Torvalds and I pronounce Linux, Linix.[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.][This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.]CHUCK: Hey everybody and welcome to Episode 54 of the JavaScript Jabber Show. This week on our panel, we have Tim Caswell.TIM: Hello.CHUCK: Jamison Dance.JAMISON: Hi guys.CHUCK: Joe Eames.JOE: Hey there.CHUCK: Merrick Christensen.MERRICK: Hey guys, what’s up?CHUCK: I’m Charles Max Wood from DevChat.tv. And we have two special guests this week. We have Dave Herman.DAVID: Hey there.CHUCK: Ariya Hidayat.ARIYA: Hello everyone.CHUCK: And these guys are so smart that we brought them back. So, if you’re interested, we’ll put links to the episodes that they were on. David was on when we talked about his book ‘Essential JavaScript’ and Ariya was on when we talked about PhantomJS.JAMISON: Effective JavaScript.CHUCK: Effective? What did I say?MERRICK: Essential.CHUCK: Essential? Well, it’s an essential book on Effective JavaScript. How’s that?[Laughter]MERRICK: Good save.DAVID: At least, you didn’t say Defective JavaScript.[Laughter]CHUCK: No, that’s what I write. I’m really good at writing defective JavaScript.ARIYA: Actually, there’s a book about Essential on Defective JavaScript.CHUCK: I also want to announce really quickly that Fluent Conf has given us a discount code. So, if you want to get 20% off on your registration for Fluent Conf, just enter JAVAJAB and you’ll get 20% off when you register for Fluent Conf.Alright. Well, let’s get started. This is going to be a really, really interesting topic and it’s something that I’ve wanted to know more about for a long time. And I just haven’t delved as deeply into it as I would like to. And that is,Special Guests: Ariya Hidayat and David Herman.

Support this podcast at — https://redcircle.com/javascript-jabber/donations

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Avsnitt(733)

Personal Branding for Developers with Morad Stern - JSJ 642

Personal Branding for Developers with Morad Stern - JSJ 642

The JSJ panel talks with Morad Stern from Wix about personal branding; what it is, why it’s important for developers, and how to build it.LinksObama asks America to learn computer scienceConfiguring Apache Solr Multi-core With Drupal and Tomcat on Ubuntu 9.10PicksAJ - War Stories | How Crash Bandicoot Hacked The Original PlaystationAJ - Crash Bandicoot Co-Creator Andy Gavin: Extended Interview | Ars TechnicaAJ  - The Story of Spyro the Dragon | Gaming HistorianAJ  - Utah Node.js: Scaling Node.js at PlaidSteve  - Six13 Uptown Passover - an "Uptown Funk" adaptation for PesachDan  - Scott LynchMorad  - This Is Marketing: You Can't Be Seen Until You Learn to See: Seth GodinBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

30 Juli 202451min

Making AI Accessible for Developers - JSJ 641

Making AI Accessible for Developers - JSJ 641

In this captivating episode, they dive deep into the world of AI, hands-on learning, and the evolving landscape of development with Steve Sewell from Builder.io. They explore the misconceptions about needing deep AI expertise to build AI products and highlight the importance of rapid iteration and practical experience. They discuss everything from the financial implications of AI, and strategies to manage cost and value, to the innovative tools like MicroAgent that are shaping the future of code generation and web design. Steve shares his insights on optimizing AI use in development, the rapid advancements in AI capabilities, and the critical role of integrating AI to enhance productivity without the fear of replacing jobs. Join them as they unravel the complexities of AI, its real-world applications, and how developers can leverage these powerful tools to stay ahead in a competitive market. Plus, stay tuned for personal updates, user interface innovations, and a glimpse into the future of AI-driven design processes at Builder.io.SocialsLinkedIn: Steve SewellPicksCharles - Mysterium | Board GameCharles - TrainingPeaks | Trusted By the World's BestSteve - Introducing Micro AgentSteve - BuilderIO/micro-agentBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

23 Juli 20241h 25min

Framework Comparisons, Real User Metrics, and Effective Performance Tools - JSJ 640

Framework Comparisons, Real User Metrics, and Effective Performance Tools - JSJ 640

In today's episode, they dive deep into web performance optimization and the strategies employed by our expert panel to achieve it. Join Dan, Steve, Charles, and guest Vinicius Dallacqua as they explore robust techniques like code splitting, lazy loading, and server-side solutions to enhance website performance.In this episode, you'll hear Vinicius discuss his experiences with different benchmarking frameworks and innovative optimization strategies, including how he improved performance for the Prometheus client for Node. They delve into the importance of performance metrics, data analysis, and real user monitoring (RUM) tools. They underscore the need for precise measurements before and after optimizations and share insights on overcoming the challenges posed by third-party integrations.Hear about practical tools like Partytown and Lighthouse, and how companies like NEXX Insurance have achieved significant performance gains. The conversation also touches on the critical balance between backend performance, CDNs, and frontend optimizations, alongside recommendations for engaging management to prioritize performance enhancements.Plus, for a bit of fun, our episode includes some light-hearted "Dad jokes of the week" and book recommendations around TypeScript and AI. SocialsLinkedIn: Vinicius Dallacqua PicksCharles - Take 5 | Board GameDan - Total TypeScriptSteve - Warp: Your terminal, reimaginedVinicius - Watch Sweet Tooth | Netflix Official SiteBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

16 Juli 20241h 19min

Adapting to Effect Cluster: JavaScript Developers' Guide to Enhancing Code Maintainability - JSJ 639

Adapting to Effect Cluster: JavaScript Developers' Guide to Enhancing Code Maintainability - JSJ 639

In today's episode, they dive deep into the world of JavaScript and TypeScript. They explore the innovative message-passing style between components using Effect Cluster, a game-changing alpha product that integrates seamlessly with solutions like Remix and React Server Components.Join them as Michael sheds light on the ease of transitioning TypeScript developers familiar with frameworks like React and Svelte to Effect, thanks to JavaScript’s component-based mindset and features similar to async/await. They also talk about the role of TypeScript and Effect in ensuring code maintainability and correctness amidst legacy JavaScript at Sisense.As they navigate through topics like performance optimization, multithreading in JavaScript, and backend development,  discover how the Effect framework simplifies testing, enhances type inference, and boosts code stability. Plus, they touch on coding challenges, error handling, and the importance of proper monitoring with tools like OpenTelemetry.But it's not all code! They share fun anecdotes from personal experiences with go karting, discuss the NBA draft, and even delve into some light-hearted humor with dad jokes and comedic analogies. This episode is packed with insights, laughter, and invaluable advice for developers and tech enthusiasts alike.Tune in now for a comprehensive discussion filled with expert knowledge, practical tips, and community insights, exclusively on Top End Devs!SocialsLinkedIn: Michael Arnaldi Twitter: @MichaelArnaldiPicksAJ - MSF Basic Rider CourseAJ - Alpine MotoSafe Wind Noise Ear PlugsDan - Pillar of Fire | Episode 1Dan - Pillar of Fire | Episode 2Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

9 Juli 20241h 35min

Building and Distributing PWAs: Tools, Techniques, and Insights - JSJ 638

Building and Distributing PWAs: Tools, Techniques, and Insights - JSJ 638

In today's episode, they delve into the fascinating world of mobile web development with our esteemed guest, Maximiliano Firtman, a seasoned web developer from Buenos Aires, Argentina, who has over two decades of experience.Join them as Maximiliano takes you on a journey through the evolution of web and mobile development, starting from the early days of pure HTML and classic ASP, progressing through the milestones of Perl, PHP, and eventually into the realm of mobile technologies. He provides an insightful look at how mobile development has transitioned from early platforms like WML and BlackBerry to the modern era of Progressive Web Apps (PWAs).Together with Steve, they unpack the benefits and challenges of bringing the open web into the mobile space, discuss the impact of mobile performance on user experience, and explore various tools and best practices for developing efficient, fast-loading PWAs. From understanding the role of service workers and web manifests to exploring innovative APIs and caching methods, this episode is packed with invaluable knowledge for any developer aiming to enhance their mobile web development skills.Whether you're interested in optimizing web performance, getting hands-on with PWAs, or curious about the future of mobile app distribution, this episode has something for everyone. Tune in now to uncover actionable insights and expert advice on staying ahead in the ever-evolving landscape of mobile web development.SocialsLinkedIn: Maximiliano FirtmanFirt.DevPicksMaximilliano - llama-cliSteve - The ClubBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

2 Juli 202437min

High-Performance Networking: Key Resources and Tools for Web Developers - JSJ 637

High-Performance Networking: Key Resources and Tools for Web Developers - JSJ 637

Robin Marx is a Web Protocol and Performance Expert at Akamai. They dive deep into the fascinating world of networking performance, where experts share invaluable resources and insights to optimize your web development projects. The speakers recommend essential tools and books like "High-Performance Browser Networking" by Ilya Grigorik and Barry Pollard's work on HTTP 2, and they dissect the nuances of modern web protocols such as HTTP 2 and HTTP 3. Special guest Robin Marx joins us to unveil the complexities of networking, emphasizing the importance of understanding how your server and browser interact to maximize efficiency.But it's not all technical; they also share some lighter moments. Discover TV shows like Netflix’s "Eric" and "Criminal Minds Evolutions," explore engaging articles from Big Think, and indulge in some geeky humor with a segment of dad jokes. Whether you're tuning in for professional insight or just some good old tech banter, this episode has something for everyone.SocialsLinkedIn: Robin MarxPicksCharles - Skyjo | Board GameCharles - Criminal MindsDan - Watch Eric | Netflix Official SiteRobin - We Are Legion (We Are Bob)Robin - HadesSteve - Is the Universe Finite or Infinite?Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

25 Juni 20241h 22min

Transforming React Development: The Experimental Compiler’s Approach to Memoization and Performance - JSJ 636

Transforming React Development: The Experimental Compiler’s Approach to Memoization and Performance - JSJ 636

In this episode, they dive deep into the latest advancements in React with a special focus on the experimental React Compiler. Our guest speakers, Sathya Gunasekaran and Joe Savona, share their insights on how this cutting-edge tool aims to enhance performance and streamline development without disrupting existing code. They explore the goals of the React Compiler, including auto memoization, linting, and runtime optimizations, and how it plans to minimize unnecessary DOM updates. This is an in-depth discussion on subjects like referential equality, the complexities of memoization, API improvements for useEffect, and the compelling debate about whether React should introduce signals as a TC39 standard. Additionally, they discuss the potential transition for existing projects, the importance of community feedback, and the intriguing differences between React’s approach to UI as a function of state versus the signal-based model.Stay tuned to learn about the future of React, the practical benefits of the new compiler, and the ongoing experiments that could shape how we write and optimize JavaScript with React.SocialsLinkedn: Sathya GunasekaranPicksAJ - webinstall.devDan - Godzilla Minus One (2023)Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

18 Juni 20241h 29min

Practical Strategies for Web Optimization: Using Chrome DevTools - JSJ 635

Practical Strategies for Web Optimization: Using Chrome DevTools - JSJ 635

Jack Franklin is a Senior Software Engineer at Google. They dive deep into the world of performance optimization. They explore the sophisticated capabilities of Chrome DevTools, focusing on the performance and insights panels. Jack shares invaluable tips on utilizing tools like Lighthouse and the flame chart to prioritize and analyze web performance, along with practical advice for maintaining a clean environment for accurate profiling.Join them as tehy decode the intricacies of debugging, from handling long tasks and layout thrashing to understanding the context of flame charts and network requests. Plus, they discuss the collaboration efforts between Chrome and Microsoft Edge, valuable educational resources, and even touch on topics like involvement in local politics and upcoming movie releases. Whether you're a seasoned developer or a tech enthusiast, this episode is packed with knowledge, humor, and practical advice to help you master web performance optimization. Tune in now!SocialsLinkedIn: Jack FranklinPicksCharles - Legendary: A Marvel Deck Building Game – SHIELD (2019)Dan - Dan Shappir: How to Maximize Web PerformanceJack - Sky Team | Board GameBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

11 Juni 20241h 24min

Populärt inom Business & ekonomi

badfluence
framgangspodden
varvet
rss-jossan-nina
uppgang-och-fall
rss-svart-marknad
rss-borsens-finest
bathina-en-podcast
24fragor
lastbilspodden
avanzapodden
rss-kort-lang-analyspodden-fran-di
affarsvarlden
borsmorgon
rss-dagen-med-di
kapitalet-en-podd-om-ekonomi
tabberaset
svd-tech-brief
dynastin
rss-en-rik-historia