Logo
    Search

    Podcast Summary

    • Discussing WebRTC, Get User Media, and Personal ProjectsWebRTC and Get User Media enable webcam, microphone access and browser-to-browser data transfer. Developers can improve websites with custom platforms, server-side rendering, code splitting, and new features.

      WebRTC and Get User Media are essential technologies for web developers, allowing direct access to webcams, microphones, and a new method for browser-to-browser data transfer. Scott and Ed discussed their current projects: Scott upgraded his Meteor site with React Router 4, server-side rendering, and code splitting, while Ed completed a major coupon system overhaul with new restrictions and pricing options. They both agreed on the benefits of custom platforms, allowing for greater freedom and flexibility in implementing ideas. Additionally, Scott shared his first Father's Day experience with his one-month-old son.

    • The parent effect boosts productivity with WebRTCParenting increases motivation and efficiency, WebRTC enables direct browser-to-browser communication without servers for real-time apps, leading to successful projects.

      Becoming a parent can bring about a significant increase in productivity and motivation due to the added responsibility and increased consequences of not getting things done. This "parent effect" can be particularly beneficial when it comes to work projects that require real-time communication, such as video or audio chat, which can be efficiently handled through WebRTC. Web Real-Time Communication (WebRTC) is a new protocol that allows for direct browser-to-browser communication without the need for a server in between. This can be especially useful for real-time applications that require heavy bandwidth or have many points of failure when using a traditional server. The use of STUN and TURN servers is necessary to establish a connection between the browsers, but these services can often be rented or hired from third parties with minimal overhead. Overall, the combination of the parent effect and the efficiency of WebRTC can lead to increased productivity and success in various projects.

    • Exploring WebRTC: Real-Time Communication and Media Sharing in the BrowserWebRTC is a browser API that enables real-time access to webcams, microphones, and other input devices, enabling possibilities like video conferencing, interactive educational tools, and decentralized data transfer.

      WebRTC (Web Real-Time Communication) is a powerful browser API introduced in 2010 that allows developers to access users' webcams, microphones, and other input devices directly in the browser. This opens up endless creative possibilities, such as building video conferencing apps, manipulating video streams in real-time, or even creating a decentralized BitTorrent client. When you request a user's webcam or audio, the browser provides you with a blob, which can be piped into an audio or video element, taken as a screenshot, or manipulated in a canvas. The potential uses for this data are vast, from creating custom video filters to building interactive educational tools. WebRTC's impact is evident in various applications, such as Slack's video conferencing feature and WebTorrent, a decentralized BitTorrent client that uses WebRTC for peer-to-peer data transfer. This technology has the potential to revolutionize the way we share and consume media online. For instance, in an educational context, students could watch a lecture and simultaneously seed the video for other students, reducing the load on the server and improving overall accessibility. This is already being employed by services like Spotify to save bandwidth and provide a smoother user experience. Overall, WebRTC's ability to enable real-time, peer-to-peer communication and media sharing in the browser makes it an essential tool for developers and an exciting advancement for users.

    • Using technology to enhance dance performancesThe getUserMedia API can be used to record and playback 30 seconds of video, creating a 'time machine mirror' for dancers to see their performance in real-time with a delay.

      Technology can be used to create innovative solutions for various artistic expressions, such as dance performance recordings. The speaker discussed how they started with music and video programming, leading them to web development. They shared their desire to create a "time machine mirror" that records and plays back 30 seconds of video, allowing dancers to see their performance in real-time with a delay. This was achieved by using the getUserMedia API to capture the video stream, recording it in 30-second spurts, and then playing back the previous 30 seconds using MediaRecorder. The speaker also mentioned the possibility of saving and sharing the recorded performances as video files. Additionally, they mentioned the Electron app and the CAP (Capture) tool, which can be used for creating desktop applications and recording the screen or camera feeds. Overall, this discussion highlights the potential of using technology to enhance artistic experiences and create new ways of capturing and sharing moments.

    • Exploring advanced features with browser APIsBrowser APIs enable developers to create powerful applications like screen recording software and motion detection systems directly in the browser, democratizing access to advanced features and reducing costs.

      The use of browser APIs and technologies like HTML, CSS, and JavaScript have made it possible for developers to create powerful applications, such as screen recording software and motion detection systems, directly in the browser without the need for expensive proprietary systems. This was exemplified in the discussion about Get Easy Media, a free screen recording tool, and the speaker's personal project of using a browser to detect motion from a security camera feed. The speaker shared how they used Opera, one of the first browsers to support these APIs, to build a system that captured video feeds from a security camera, took screenshots every 200 milliseconds, and compared the resulting pixel arrays to detect motion. This process was run on an old Android device, demonstrating the capabilities of these technologies. The importance of these browser APIs lies in their ability to democratize access to advanced features, making them accessible for free and without the need for extensive engineering resources, as shown in the case of Skype. This not only reduces costs but also opens up opportunities for innovation and experimentation for developers and users alike.

    • Hands-on learning with WebRTC through fun projectsApply new tech like WebRTC through practical projects, have a clear goal, and be invested for best results.

      Learning new technologies, such as WebRTC, is best done through practical application and building something fun and engaging. The speaker shares his experience of using WebRTC to create a system that tracked motion between two browsers and captured images, including of the mailman. He emphasizes the importance of having a clear goal and being invested in the project to push oneself further. The speaker also mentions his earlier project, a color bar projection that played notes when someone walked into a specific color bar, which was based on the same idea of using a difference between two video streams to trigger an event. These projects demonstrate the power of hands-on learning and the potential for creative applications of new technologies.

    • Advancements in web-based image and video recognitionFace and object detection, augmented reality, and real-time masking are now possible on the web using pre-trained models and libraries.

      Video tracking and image recognition technologies, which were once limited to specific platforms or required extensive coding, can now be implemented on the web with the use of pre-trained models and libraries. In 2011, the speaker described building a face detection system using a library that could detect faces in images and overlay amusing masks on them in real-time. While this was a simple and effective application, modern libraries can detect not only faces but also other objects and even perform more complex tasks such as augmented reality. The speaker also mentioned using 3D technology with QR codes or fluorescent sticky notes to overlay digital images on real-world video feeds. These advancements are evident in applications like Hangouts, which allow users to apply virtual costumes or masks during video calls. Overall, the accessibility and versatility of these technologies have expanded significantly, making it possible to create engaging and interactive web experiences.

    • Creating innovative projects with webcam and JavaScriptWebcam and JavaScript enable image processing, leading to interactive and innovative projects like a webcam theremin, screenshots, and pixel manipulation. Resources like the JavaScript 30 series provide a foundation for learning these techniques.

      With the advancements in web technology, it's now possible to create innovative and interactive projects using just a webcam and JavaScript. One example given was creating a theremin using a webcam, where the position and distance of an object in 3D space could control the pitch and frequency of the sound. This demonstrates the potential for image processing and manipulation, which can lead to endless possibilities. Even simple projects, like taking a screenshot or manipulating pixels, can yield impressive results. These techniques can be learned through resources like the JavaScript 30 series, which provides a foundation for accessing the webcam, manipulating pixels, and experimenting with filters. The possibilities are endless, and the barrier to entry is lower than ever before.

    • Exploring new technologies leads to valuable discoveriesInnovative ideas can arise from not knowing the limits or possibilities of new technologies. Ensure user data privacy by using HTTPS for live sites.

      Exploring new technologies, even without being an expert, can lead to valuable discoveries and learning experiences. This was emphasized during a discussion about manipulating pixel data from a canvas in JavaScript. The speaker mentioned that not knowing the limits or possibilities can lead to innovative ideas and the realization that modern machines are capable of powerful computations. They also highlighted the importance of using HTTPS for live sites when accessing user's webcams or microphones. During the conversation, the speaker shared an experience of learning a new aspect of JavaScript when working with pixel data, which isn't a regular array and requires a different approach for iteration. They were amazed by the machine's ability to handle such large computations and expressed excitement about trying it out on iOS 11. Another important point was the need for a secure origin, such as HTTPS, when working on live sites to ensure user data privacy. The speaker also mentioned that while their examples kept the data within the browser, it could be sent to a server or streamed using WebRTC. Lastly, the speaker shared their appreciation for a practical item they recently purchased – a backpack with a luggage pass-through feature, which is particularly useful for their frequent travels.

    • Peak Design Everyday Backpack and Quick App RecommendationsThe Peak Design Everyday Backpack offers functionality, durability, and style with features like multiple zippers, dividers, swivel design, laptop sleeve, key lanyard, and adjustable straps. Quick app by GoPro is a versatile mobile video editing tool with auto-editing and music, or manual fine-tuning for creating high-quality videos on the go.

      The Peak Design Everyday Bag is an exceptional backpack for travelers and professionals who value functionality, durability, and style. This backpack offers various features such as multiple zippers, dividers, swivel design, laptop sleeve, key lanyard, and adjustable straps. It's perfect for carrying sunglasses, laptops, and other essentials while maintaining a non-corporate look. The bag is well-made with high-quality materials and can be compact or expandable depending on the user's needs. On the other hand, the speaker recommends the mobile video editing app "Quick" by GoPro for those who are always on the go and need a versatile video editing tool. Quick offers both basic and advanced features, allowing users to create videos quickly with auto-editing and music, or manually fine-tune every detail. The speaker has had positive experiences with both the Peak Design Everyday Bag and the Quick app and highly recommends them to anyone seeking high-quality and functional travel gear and mobile video editing solutions.

    • Discover a unique video editing interface with Splice by GoProSplice offers a fresh, intuitive interface for video editing with granular control and the ability to add time stamps to older videos.

      The Splice app by GoPro offers a unique and intuitive interface that provides users with a quick overview of their clips while also offering granular control for editing and adding effects on an individual clip level. This makes it a standout option in the video editing app genre. The app's interface is uncommon but still intuitive and beautiful, making it a thought-provoking experience for users. The app also offers the ability to add a fresh time stamp to older videos, making it a useful tool for social media content creation. While it may seem similar to other apps like Quick, they have distinct differences, with Quick offering more automated editing features and Splice providing more control. Overall, the Splice app is a fresh and effective solution for video editing needs.

    • The value of feedback for personal and professional growthConstructive criticism and continuous learning are essential for improvement. Engage with the Syntax.fm community for feedback and keep an open mind.

      Importance of seeking and incorporating feedback in our personal and professional growth. The speakers emphasized the value of constructive criticism and continuous learning. They also encouraged listeners to engage with the Syntax.fm community by subscribing, leaving reviews, and sharing their thoughts. Remember, feedback is a crucial tool for improvement, and it's essential to keep an open mind and a positive attitude towards it. So, don't hesitate to ask for feedback and be willing to learn from it. Keep growing, keep learning, and we'll see you next time on Syntax.fm. Don't forget to check out the full archive of shows on their website. Happy listening!

    Recent Episodes from Syntax - Tasty Web Development Treats

    789: Do More With AI - LLMs With Big Token Counts

    789: Do More With AI - LLMs With Big Token Counts

    Join Scott and CJ as they dive into the fascinating world of AI, exploring topics from LLM token sizes and context windows to understanding input length. They discuss practical use cases and share insights on how web developers can leverage larger token counts to maximize the potential of AI and LLMs.

    Show Notes

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    CJ: X Instagram YouTube TwitchTV

    Randy: X Instagram YouTube Threads

    788: Supabase: Open Source Firebase for Fullstack JS Apps

    788: Supabase: Open Source Firebase for Fullstack JS Apps

    Scott and CJ chat with Paul Copplestone, CEO and co-founder of Supabase, about the journey of building an open source alternative to Firebase. Learn about the tech stack, the story behind their excellent documentation, and how Supabase balances business goals with open-source values.

    Show Notes

    • 00:00 Welcome to Syntax!
    • 00:30 Who is Paul Copplestone?
    • 01:17 Why ‘Supa’ and not ‘Super’?
    • 02:26 How did Supabase start?
    • 08:42 Simplicity in design.
    • 10:32 How do you take Supabase one step beyond the competition?
    • 12:35 How do you decide which libraries are officially supported vs community maintained?
      • 15:17 You don’t need a client library!
    • 16:48 Edge functions for server-side functionality.
    • 18:51 The genesis of pgvector.
    • 20:59 The product strategy.
    • 22:25 What’s the story behind Supabase’s awesome docs?
    • 25:26 The tech behind Supabase.
    • 35:46 How do you balance business goals with open source?
    • 42:01 What’s next for Supabase?
    • 44:15 Supabase’s GA + new features.
    • 48:24 Who runs the X account?
    • 50:39 Sick Picks + Shameless Plugs.

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    CJ: X Instagram YouTube TwitchTV

    Randy: X Instagram YouTube Threads

    787: You Should Try Vue.js

    787: You Should Try Vue.js

    Scott and CJ dive deep into the world of Vue.js, exploring what makes this frontend framework unique and why it stands out from React and Svelte. CJ gives a comprehensive tour, covering everything from getting started to advanced features like state management and Vue’s built-in styles.

    Show Notes

    Vue.js: The Documentary.

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    786: What Open Source license should you use?

    786: What Open Source license should you use?

    Scott and CJ dive into the world of open source, breaking down its meaning, benefits, and the various types of licenses you’ll encounter. From permissive licenses like MIT and Apache 2.0 to copy-left licenses such as GNU GPLv3, they’ll help you choose and apply the right license for your project.

    Show Notes

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    785: What’s Next for NextJS with Tim Neutkens

    785: What’s Next for NextJS with Tim Neutkens

    Scott and Wes dive into the world of Next.js with special guest Tim Neutkens from Vercel. They explore the latest updates, including the React Compiler and React Server Components, discussing their impact on developer workflows and the future of Next.js development.

    Show Notes

    • 00:00 Welcome to Syntax!
    • 00:30 What does the React Compiler do?
    • 05:04 Will React Compiler help with managing Context?
    • 06:39 What happens if you’re not using a React Compiler?
    • 09:30 Will this work on any NextJS version?
    • 12:18 What are React Server Components?
    • 16:28 Shipping all the data inside an encapsulated component.
    • 20:17 Clearing up the frustrations around retrofitting server components.
    • 23:13 Handing migration.
    • 28:30 Is this just a fetch request with props?
    • 36:41 How closely are the NextJS and React teams working?
    • 41:53 Will we ever get Async Client Components?
    • 43:52 Async Local Storage API.
    • 45:31 Turbopack.
    • 57:51 Sick Picks & Shameless Plugs.

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    784: Logging × Blogging × Testing × Freelancing

    784: Logging × Blogging × Testing × Freelancing

    In this Potluck episode, Scott and Wes tackle listener questions on modern blogging, website environmental impact, and using LangChain with LLMs. They also cover CSS hyphens, unit vs. integration testing, and balancing web development with new parenthood.

    Show Notes

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott: X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    783: How We Built a Netflix Style “Save for Offline” Feature Into Syntax

    783: How We Built a Netflix Style “Save for Offline” Feature Into Syntax

    Scott and Wes dive into the world of browser caching for audio files, exploring the File System API and the Cache API. They discuss size restrictions across different browsers, how tools like Riverside.fm leverage IndexedDB, and walk through code examples for creating, retrieving, and managing cached audio data.

    Show Notes

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott:X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    782: The Developer’s Guide To Fonts with Stephen Nixon

    782: The Developer’s Guide To Fonts with Stephen Nixon

    Scott and CJ are joined by Stephen Nixon of ArrowType to delve into the world of fonts and type for developers. They explore the intricacies of font creation, the utility of variable fonts, and offer tips for making visually appealing typography on the web.

    Show Notes

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott:X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    781: Potluck - The Value of TypeScript × Vue vs Svelte × Leetcode

    781: Potluck - The Value of TypeScript × Vue vs Svelte × Leetcode

    In this potluck episode of Syntax, Scott and CJ serve up a variety of community questions, from the nuances of beginner vs. advanced TypeScript to the pros and cons of SvelteKit. They also discuss falling out of love with React, shipping private packages via NPM, and the eternal struggle of always starting but never finishing projects.

    Show Notes

    Sick Picks

    Shameless Plugs

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott:X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    780: Cloud Storage: Bandwidth, Storage and BIG ZIPS

    780: Cloud Storage: Bandwidth, Storage and BIG ZIPS

    Today, Scott and Wes dive into cloud storage solutions—why you might need them, how they use them, and what you need to know about the big players, fees, and more.

    Show Notes

    Hit us up on Socials!

    Syntax: X Instagram Tiktok LinkedIn Threads

    Wes: X Instagram Tiktok LinkedIn Threads

    Scott:X Instagram Tiktok LinkedIn Threads

    Randy: X Instagram YouTube Threads

    Related Episodes

    WebRTC

    WebRTC

    Everyone has used programs that talk to a server: Uber, podcast apps, etc.. Most people also know about peer-to-peer applications such as bittorrent, but did you know that video chat programs such as Skype and Google Hangouts are also peer-to-peer? You can even write your own peer-to-peer applications to communicate or share information without the need for a server to relay everything. In this episode, we sit down with Sean DuBois, creator of Pion, to talk about WebRTC: a specification and set of tools for peer-to-peer communication over the internet. We also discuss Pion, an implementation of WebRTC that you can embed in almost any program you write. Happy Hacking! Show notes: https://www.programmingthrowdown.com/2019/10/episode-95-webrtc-with-sean-dubois.html

    ★ Support this podcast on Patreon ★

    Implementing SIP Trunking in the Enterprise

    Implementing SIP Trunking in the Enterprise

    Only 20% of U.S. businesses were using SIP Trunking (session initiation protocol) for their communications in 2014, but 75% of businesses interviewed claimed they were planning on implementing it by the end of 2016.  Whoa.  Check out this handy infographic for more SIP market details.

    In this informative conversation with Steven Johnson, North American president of InGate Systems, we discuss the basics of SIP Trunking and what businesses need to know to implement SIP effectively.  If you are considering migrating to SIP, this is a must listen.

    Going Beyond Omni-Channel with Customer Experience Management

    Going Beyond Omni-Channel with Customer Experience Management

    Customer Experience Management (CEM) is quickly becoming a strategic imperative for brands in a multitude of industries.  And it's no wonder, with a recent report stating that within two years CEM will be more important to a customer's perception of a brand than their product or the price of the product.

    To learn more about this critical topic and how innovative companies are looking to deploy the right technology in their contact centers and throughout the enterprise, take a listen to this interview with David Jodoin, the Chief Technology Officer at CafeX.  We dig into the trends impacting the market, the role mobile technologies and applications are playing, how WebRTC is changing the game in video in contact centers and ways in which companies are working to create a more personal connection with their customers while quickly solving their problems.

    If your job is to make sure your customers are happy, this podcast is a must listen.

    Standard Server JavaScript - Deno, Workers, Bun and More

    Standard Server JavaScript - Deno, Workers, Bun and More

    In this episode of Syntax, Wes and Scott talk about JavaScript runtimes available to use, what to consider, and packages to use.

    Show Notes

    ××× SIIIIICK ××× PIIIICKS ×××

    Shameless Plugs

    Tweet us your tasty treats