#developer experience

Subscribe
Developer experience (DX) is the overall satisfaction of a developer when using a particular technology. It encompasses aspects such as ease of use, performance, scalability, security, and documentation. DX helps developers to quickly understand the technology, build applications faster, and provide better user experiences. In the context of JavaScript, DX includes features such as code readability, modularity, reusability, and compatibility with other technologies. It also involves understanding the unique challenges of developing for the web and how to best utilize the language’s features. By having a good DX, developers are able to create applications that run efficiently and offer users a great experience.
Integrating LangChain with JavaScript for Web Developers
React Summit 2024React Summit 2024
92 min
Integrating LangChain with JavaScript for Web Developers
Featured Workshop
Vivek Nayyar
Vivek Nayyar
Dive into the world of AI with our interactive workshop designed specifically for web developers. "Hands-On AI: Integrating LangChain with JavaScript for Web Developers" offers a unique opportunity to bridge the gap between AI and web development. Despite the prominence of Python in AI development, the vast potential of JavaScript remains largely untapped. This workshop aims to change that.Throughout this hands-on session, participants will learn how to leverage LangChain—a tool designed to make large language models more accessible and useful—to build dynamic AI agents directly within JavaScript environments. This approach opens up new possibilities for enhancing web applications with intelligent features, from automated customer support to content generation and beyond.We'll start with the basics of LangChain and AI models, ensuring a solid foundation even for those new to AI. From there, we'll dive into practical exercises that demonstrate how to integrate these technologies into real-world JavaScript projects. Participants will work through examples, facing and overcoming the challenges of making AI work seamlessly on the web.This workshop is more than just a learning experience; it's a chance to be at the forefront of an emerging field. By the end, attendees will not only have gained valuable skills but also created AI-enhanced features they can take back to their projects or workplaces.Whether you're a seasoned web developer curious about AI or looking to expand your skillset into new and exciting areas, "Hands-On AI: Integrating LangChain with JavaScript for Web Developers" is your gateway to the future of web development. Join us to unlock the potential of AI in your web projects, making them smarter, more interactive, and more engaging for users.
Atomic Deployment for JS Hipsters
DevOps.js Conf 2024DevOps.js Conf 2024
25 min
Atomic Deployment for JS Hipsters
This Talk discusses atomic deployment for JavaScript and TypeScript, focusing on automated deployment processes, Git hooks, and using hard links to copy changes. The speaker demonstrates setting up a bare repository, configuring deployment variables, and using the post-receive hook to push changes to production. They also cover environment setup, branch configuration, and the build process. The Talk concludes with tips on real use cases, webhooks, and wrapping the deployment process.
How to Make a Web Game All by Yourself
JS GameDev Summit 2023JS GameDev Summit 2023
27 min
How to Make a Web Game All by Yourself
This talk guides you on how to make a web game by yourself, emphasizing the importance of focusing on tasks that interest you and outsourcing the rest. It suggests choosing a game engine that allows distribution on the web and aligns with your understanding and enjoyment. The talk also highlights the significance of finding fun in the creative process, managing scope, cutting features that don't align with the game's direction, and iterating to the finish line. It concludes by discussing the options for publishing the game on the web and leveraging unique web features.
Your GraphQL Groove
GraphQL Galaxy 2022GraphQL Galaxy 2022
31 min
Your GraphQL Groove
The Talk discusses the value proposition of GraphQL and its ability to solve common pain points in API development. It highlights the importance of making informed decisions when choosing GraphQL clients, servers, and schema builders. The Talk also emphasizes the need to focus on the best developer experience in the present rather than seeking a perfect long-term solution. Additionally, it mentions the future of the Urkel GraphQL client and the reasons for dropping ReScript support. Overall, the Talk provides insights into the current state and future trends of GraphQL development.
Remix Flat Routes – An Evolution in Routing
Remix Conf Europe 2022Remix Conf Europe 2022
16 min
Remix Flat Routes – An Evolution in Routing
Top Content
Remix Flat Routes is a new convention that aims to make it easier to see and organize the routes in your app. It allows for the co-location of support files with routes, decreases refactor and redesign friction, and helps apps migrate to Remix. Flat Folders convention supports co-location and allows importing assets as relative imports. To migrate existing apps to Flat Routes, use the Remix Flat Routes package's migration tool.
Enhancing Development Efficiency with Monorepos and Tuburepo
Enhancing Development Efficiency with Monorepos and Tuburepo
Article
Monorepos enable code reuse and shared standards.Monorepos facilitate team collaboration and atomic changes.Tuburepo optimizes task execution with caching and parallel processing.Tuburepo operates without runtime overhead, focusing on development tasks.CI performance improves with Tuburepo's caching and task dependency management.When managing software projects, the choice between monorepos and multirepos can significantly impact development efficiency. Many companies traditionally use multirepos, allowing teams to independently manage their own codebases. This approach provides flexibility, enabling teams to use preferred tools and methodologies. However, organizing code within a single repository, known as a monorepo, offers several advantages worth considering.One key benefit of monorepos is enhanced code reuse. With all code housed in the same repository, sharing modules and components becomes straightforward. This setup is particularly beneficial when teams need to use standardized elements like UI components or database modules. By centralizing these resources, teams can avoid duplicating efforts and streamline the integration process.Shared standards are another advantage of monorepos. Maintaining consistent configurations across all projects is easier when everything resides in one place. For instance, a unified ESLint setup or a single TypeScript configuration can be applied across the entire codebase, ensuring uniform coding practices. This consistency simplifies updates and reduces the chances of configuration drift between projects.Collaboration within teams also improves with a monorepo setup. Engineers can review and provide feedback on code changes more efficiently since the entire team shares the same context. Setting up pair programming sessions is seamless because all necessary tools and dependencies are already in place. This ease of collaboration fosters a more cohesive development environment, speeding up the feedback loop and enhancing productivity.Monorepos also support atomic changes, a crucial aspect of maintaining code integrity. Developers can make modifications across multiple applications and libraries within a single pull request, ensuring compatibility and reducing the risk of integration issues. In contrast, multirepos require meticulous coordination between teams to synchronize changes, which can slow down development and increase the potential for errors.Isolation within a monorepo is achievable through workspaces, a feature supported by npm, pnpm, and YARN. Workspaces allow packages to remain self-contained with their own dependencies, ensuring that changes in one package do not inadvertently affect others. This level of isolation maintains the integrity of individual components while benefiting from the shared infrastructure of a monorepo.Despite the advantages, managing tasks efficiently in a monorepo can be challenging. This is where Tuburepo comes into play. Tuburepo, a build system specifically designed for the JavaScript and TypeScript ecosystems, addresses this challenge by optimizing task execution. It ensures that repetitive tasks are not unnecessarily rerun, leveraging caching to remember previous runs. This approach saves time and computational resources, especially for tasks like builds, tests, and linting.Tuburepo's caching capability is a game-changer, allowing cache sharing across development teams and CI systems. This feature not only speeds up the development process but also maintains consistency in task execution. Developers see immediate feedback on task outcomes without rerunning unchanged tasks, which enhances overall efficiency.Moreover, Tuburepo excels at optimized task scheduling. By identifying available CPU resources, it runs tasks in parallel whenever possible. This parallel execution maximizes resource utilization and ensures that dependent tasks are executed in the correct sequence, maintaining task integrity and reducing idle time during builds.An added benefit of Tuburepo is its zero runtime overhead. As a development dependency, it doesn't impact the production code. This separation ensures that the build system remains a development tool, leaving the production environment untouched and optimized.Setting up a monorepo with Tuburepo involves defining a clear task pipeline. The pipeline specifies task dependencies and outputs, guiding Tuburepo in executing tasks efficiently. For instance, a test task may depend on a build task, ensuring that the build is completed before testing begins. This dependency management is crucial for maintaining task order and achieving reliable results.Incorporating Tuburepo into a CI environment further enhances performance. By utilizing the same caching mechanisms, CI systems can retrieve cached results from previous runs, significantly reducing build times. This capability streamlines CI processes, ensuring that only necessary tasks are executed, which is particularly beneficial in large, complex projects.In summary, the combination of monorepos and Tuburepo offers a robust framework for improving development workflows. Monorepos centralize code management, facilitating code reuse, shared standards, and team collaboration. Tuburepo enhances this setup by optimizing task execution through caching and parallel processing, all while maintaining minimal impact on the production environment. Together, they create a development ecosystem that is both efficient and scalable, meeting the needs of modern software engineering teams.
Harnessing Geckos.io for Real-Time Client-Server Communication
Harnessing Geckos.io for Real-Time Client-Server Communication
Article
Geckos.io enables real-time client-server communication using UDP and WebRTC.UDP is preferred for real-time applications due to its speed and efficiency.Geckos.io can be complex to deploy, requiring UDP port configurations.Geckos.io is ideal for real-time multiplayer games with authoritative servers.Practical deployment examples include Docker configurations for hosting.Geckos.io provides a unique solution for real-time client-server communication, leveraging the power of UDP and WebRTC. The library was developed to address the need for faster, more efficient communication protocols that are typically used in real-time multiplayer games. Unlike TCP, which is reliable and ordered, UDP is preferred in these scenarios because it is faster and allows for unordered and potentially unreliable data transfer, which is often acceptable in gaming environments.Understanding the distinction between TCP and UDP is crucial for developers working on real-time applications. TCP ensures that all data packets are received in the correct order and without error, making it ideal for applications where data integrity is paramount. However, this reliability comes at a cost of speed and efficiency, which is where UDP excels. By allowing packets to be received out of order and occasionally dropped, UDP reduces latency, making it the protocol of choice for many real-time applications like multiplayer games.While UDP is commonly used in desktop and console games, its integration into browser-based applications has been limited. WebRTC provides a workaround by allowing UDP-based peer-to-peer connections. However, establishing client-to-server connections with UDP has been a challenge. Geckos.io addresses this by enabling UDP connections between a browser and a Node.js server using WebRTC data channels. This setup requires the server's IP address to be publicly accessible and involves handling the signaling on the server side.Deploying Geckos.io can be a complex task, primarily due to the need to configure UDP ports. Many users encounter difficulties when deploying applications on platforms like Heroku, which do not support UDP ports. A common deployment scenario involves setting up the server with open UDP ports and configuring a load balancer, such as NGINX, to handle HTTP requests. The WebRTC connections bypass the load balancer, connecting directly to the server, which necessitates specific server configurations.Geckos.io shines in applications requiring real-time communication with an authoritative server, such as real-time shooters or other fast-paced multiplayer games. For turn-based games like chess, where real-time data transfer is not critical, other solutions like WebSockets or simple HTTP requests could suffice. This specificity highlights the importance of choosing the right communication protocol based on the application's requirements.For those new to Geckos.io, starting with a simple example can be beneficial. A typical setup might involve a server file using Express and initializing Geckos within it. Docker can be used to containerize the application, making it easier to deploy across different environments. By forwarding the necessary TCP and UDP ports, developers can host multiple Geckos instances on the same server, illustrating the flexibility and scalability of the library.WebRTC and UDP offer powerful tools for real-time applications, and Geckos.io enhances these capabilities by bridging the gap between client-server communications. While deployment can be challenging, understanding the underlying principles and configurations allows developers to harness the full potential of Geckos.io for their real-time applications. Practical examples and clear documentation are invaluable resources in navigating these complexities, ensuring that developers can effectively implement and maintain their applications.
Streamlining Web Development: An Insight into Remix Flat Routes and Routing Evolution
Streamlining Web Development: An Insight into Remix Flat Routes and Routing Evolution
Article
Comparison of Remix and Next.js routing conventions.Introduction of Remix Flat Routes for simplified routing.Benefits of co-locating support files with routes.Migration tool for converting existing apps to Remix Flat Routes.Configuration options for flat files and flat folders.The landscape of web development is continually evolving, driven by the need for more efficient and structured code management. One significant aspect of this evolution is routing, which is integral to building scalable and maintainable applications. Two prominent frameworks, Remix and Next.js, have introduced their unique takes on routing conventions, each offering distinct advantages.Traditional routing structures in frameworks like Remix have followed a nested layout convention. This involves using folders to determine parent layouts, with each folder containing files for individual routes. While this approach is functional, it has its limitations. The separation of folders and layout files in editors can be cumbersome, especially in large applications with numerous routes. Remix uses named exports for various route-related functions, while Next.js opts for separate files, which can lead to a proliferation of files in a project.Next.js has introduced its own nested layout convention that requires a folder for every segment of the route, with a file named 'page' serving as the leaf route. This approach allows for the co-location of supporting files within the route folder, a feature that many developers have found beneficial. However, this can also result in a large number of files, particularly in complex applications.Against this backdrop, Remix has introduced Flat Routes, a new convention that aims to simplify routing structures. Currently available as a separate npm package, Remix Flat Routes is poised to become a core feature in future versions of the framework. The primary goal of Flat Routes is to streamline the way routes are organized and managed within an application.One of the standout features of Remix Flat Routes is the ability to co-locate support files with routes. This means that styles, components, images, and other assets can be kept alongside the routes they support, making it easier to manage related files. By reducing the nesting of folders, Flat Routes decrease the friction associated with refactoring and redesigning codebases.Flat Routes also facilitate the migration of existing applications to Remix by eliminating the need for a nested routes folder structure. This convention makes it easier to port applications from other frameworks, such as Next.js, by simplifying the routing setup.The Remix Flat Routes package introduces new file naming conventions. For example, pathless layouts now use a single underscore instead of a double underscore prefix. The entire route is represented in the filename, with dots instead of slashes separating URL segments. This approach allows for a more straightforward visualization of the application's routing structure.Flat Routes offer two main configurations: flat files and flat folders. Flat files are suitable for simpler applications, where everything is contained within the filename without any folders. This configuration provides a clear view of the URL structure at a glance. In contrast, flat folders use the folder itself as the route name, with the route file located inside. This setup supports co-location of support files and allows for relative imports within the route file.For developers looking to migrate existing applications to the new Flat Routes convention, the Remix Flat Routes package includes a migration tool. This tool allows developers to convert their current routing structure to either flat files or flat folders, preserving the hierarchy and paths of the original routes.With these advancements, Remix Flat Routes is poised to enhance the efficiency and manageability of web development projects. By simplifying the routing structure, co-locating support files, and providing a seamless migration path, developers can focus on building robust applications without getting bogged down by complex routing conventions.
Managers Are From Mars, Devs Are From Venus
TechLead Conference 2024TechLead Conference 2024
111 min
Managers Are From Mars, Devs Are From Venus
Workshop
Mo Khazali
Mo Khazali
A Developer’s Guide to Communicating, Convincing, and Collaborating Effectively With Stakeholders
It’s a tale as old as time - collaboration between developers and business stakeholders has long been a challenge, with a lack of clear communication often leaving both sides frustrated. The best developers can deeply understand their business counterparts’ needs, effectively communicate technical strategy without losing the non-technical crowd, and convince the business to make the right decisions. Working at a consultancy, I’ve both failed and succeeded in architecting and “selling” technical visions, learning many lessons along the way.Whether you work at a product company, are a consultant/freelancer, or want to venture beyond just being a developer, the ability to convince and clearly communicate with stakeholders can set you apart in the tech industry. This becomes even more important with the rise of GenAI and the increasingly competitive developer market, as problem-solving and effective communication are key to positioning yourself.In this workshop, I’ll share real-world examples, both good and bad, and guide you through putting the theory into practice through dojos.
From Senior Developer to Manager and Back: The Journey of Returning to Coding
TechLead Conference 2024TechLead Conference 2024
19 min
From Senior Developer to Manager and Back: The Journey of Returning to Coding
The Talk explores the transition from software developer to team leader, highlighting the different responsibilities and challenges involved. It discusses the role of an engineering manager in organizing team work, making top-level technical decisions, and representing the team externally. The challenges and satisfaction of being a manager are also explored, with an emphasis on the importance of the team's success and growth. The Talk concludes with tips for new managers and the possibility of returning to an engineering role.
Pixels, Promises, and Panic: Horror Stories of Production Nightmares
C3 Dev Festival 2024C3 Dev Festival 2024
28 min
Pixels, Promises, and Panic: Horror Stories of Production Nightmares
The Talk covers the importance of preventing and dealing with bugs in software development, with the speaker sharing their experiences and solutions. They discuss the impact of bugs on user experience and revenue, the importance of stress testing and implementing alerts, and the surprising impact of CSS. The speaker also emphasizes the importance of simplicity, monitoring, and refactoring, as well as the need to address security threats and learn from failure. They provide tips for writing postmortems and highlight common mistakes to avoid, especially for junior developers.
Not Your Everyday Tech Lead: What Does It Mean To Be TL in a Lean Software Company?
C3 Dev Festival 2024C3 Dev Festival 2024
20 min
Not Your Everyday Tech Lead: What Does It Mean To Be TL in a Lean Software Company?
The Talk discusses the role of a tech lead in a lean software company and the challenges they face. It emphasizes the importance of problem-solving and continuous improvement in software development. The speaker shares their personal struggles as a tech lead and the need to prioritize between being a maker and a manager. The Talk also highlights the significance of identifying root causes and solving problems to prevent future issues. Overall, it provides insights into the role of a tech lead and the role problem solving plays in creating optimal conditions for developers.
The Power of a Second Brain in a Developer's Workflow
C3 Dev Festival 2024C3 Dev Festival 2024
8 min
The Power of a Second Brain in a Developer's Workflow
The Talk emphasizes the importance of maintaining a second brain, a curated collection of digital notes, to enhance memory retention in software engineering. Building a second brain helps in recalling information, problem-solving, and retention. It is easy to create your own second brain using various tool options like Notion, Obsidian, Reflect, Rome Research, and Tana. Starting with small, self-contained notes and gradually expanding to form a mesh of related information is recommended for effective learning and retention.
The Entanglement of Concerns between People and Software Development
C3 Dev Festival 2024C3 Dev Festival 2024
8 min
The Entanglement of Concerns between People and Software Development
As a software developer, the entanglement between people and the software they develop is important. Legacy software poses challenges due to lack of time, understandability, and optimization. Legacy systems in health care face similar challenges. Microsoft's evolution and innovation highlight the value of change. Developing adaptable and user-friendly software requires considering the interconnectedness of all actors.
The Dark Side of Open Source
Node Congress 2024Node Congress 2024
37 min
The Dark Side of Open Source
The talk explores the dark side of open source, focusing on supply chain attacks and the need for improved security measures. It highlights the dangers of loading external code and the importance of mitigating supply chain risks. The talk also discusses the use of AI and LLMs in code analysis to enhance security. It emphasizes the challenges of sustaining IC maintained open source projects and the future of supply chain security. Lastly, it touches on the variations in open source definitions and the empowerment of the open source community.
Yarn: From Design to Implementation
DevOps.js Conf 2024DevOps.js Conf 2024
28 min
Yarn: From Design to Implementation
Today we'll discuss the evolution and implementation of YARN, which focuses on determinism and stability. YARN Modern was re-architected to support projects with multiple packages and embraced Monorepos. YARN 2 improved workspace implementation, codebase partitioning, and stability. Dependency resolution and linking in YARN are handled by different resolvers and fetchers. YARN has a plugin system, a constraint engine, and a redesigned website. It prioritizes compatibility, performance, testing, and contributions to other projects.
The day I broke React Native
React Day Berlin 2023React Day Berlin 2023
30 min
The day I broke React Native
Watch video: The day I broke React Native
The Talk discusses an incident where a React Native release caused broken builds and how it was fixed. The incident occurred due to the NPM package becoming too big, leading to the move of Android artifacts to Maven central. The use of dynamic versions and the plus dependency in React Native were identified as contributing factors to the problem. Lessons learned include the importance of removing plus dependencies and the need for better recommendations for creating resilient libraries.
Code on Demand: The Future of Code Collaboration
React Advanced Conference 2023React Advanced Conference 2023
27 min
Code on Demand: The Future of Code Collaboration
Watch video: Code on Demand: The Future of Code Collaboration
During the Talk, the speaker discusses the power of streaming and its impact on music consumption and production. They also explore the challenges and benefits of incorporating streaming into software development, using examples from Spotify. The future of code development is envisioned as a streaming world, where code is always live and changes are instantly available to everyone. The speaker emphasizes the importance of treating components as complete products, prioritizing component reviews, and enhancing the workflow for forking and contributing to components.
Building Better React Debugging with Replay Analysis
React Advanced Conference 2023React Advanced Conference 2023
31 min
Building Better React Debugging with Replay Analysis
Watch video: Building Better React Debugging with Replay Analysis
Today's Talk focused on building better React dev tools with replay time travel analysis. The React DevTools provide valuable insights into React apps, using a fiber data structure to represent component instances. Replay is a time-traveling debugger for React, with plans to make Chrome their primary recording browser. They extract React information from recordings using their time travel API and have built a UI for debugging and inspecting the content. The long-term goal is to have Replay work offline and in permanent record mode.
All You Need Is a Contract…
React Advanced Conference 2023React Advanced Conference 2023
29 min
All You Need Is a Contract…
Watch video: All You Need Is a Contract…
The speaker discusses the challenges of server state and test maintenance, and how they found solutions using React Query and Mock Service Worker. They emphasize the benefits of defining contracts for faster development and stress reduction. The speaker also highlights the advantages of using Mock Service Worker over mock servers and explains how it allows for easy customization and test overrides. They mention the upcoming release of V2 of MS-Double and encourage the audience to stay updated.
Rogule: Tales From the Dungeon of a Web Based Rogulelike
JS GameDev Summit 2023JS GameDev Summit 2023
19 min
Rogule: Tales From the Dungeon of a Web Based Rogulelike
Chris McCormick, an independent software developer, discusses his latest game Rogl, a minimalist online roguelike game. He shares the story of how Rogl gained popularity and emphasizes the importance of marketing and giving your creations a chance. McCormick highlights the value of frugality and underengineering, as well as the power of finding the best tech for efficiency. He explains why ClojureScript is the best tech for him and discusses deployment strategies using Piku. Overall, the talk emphasizes the importance of informing people about your project, prioritizing fast development, and user feedback.
Using UDP in the Browser for faster Client/Server Connections
JS GameDev Summit 2023JS GameDev Summit 2023
21 min
Using UDP in the Browser for faster Client/Server Connections
Top Content
This talk introduces geckos.io, a real-time client-server communication library using UDP and WebRTC. The speaker discusses the benefits of UDP for real-time multiplayer games and explains how geckos.io enables UDP connections between browsers and Node.js servers. The deployment process for geckos.io involves opening UDP ports and handling signaling through an HTTP request. The speaker demonstrates how geckos.io works with Docker and showcases the ability to host multiple servers on the same machine. Overall, this talk provides an overview of geckos.io and its applications in real-time communication.
Machine Learning in Game Development
JS GameDev Summit 2023JS GameDev Summit 2023
18 min
Machine Learning in Game Development
Today's Talk explores cheating in video games and the role of machine learning in detecting and preventing it. Trust and fairness are crucial in gaming, as players invest time and emotion into virtual worlds. Traditional rule-based models assess player actions, while machine learning can detect complex and evolving cheating methods. Training models and organizing data are key challenges in utilizing machine learning for cheating detection. The future lies in collaborative security systems that combine rule-based models with machine learning to protect against cheating.
The Secret to Good Game Iteration
JS GameDev Summit 2023JS GameDev Summit 2023
21 min
The Secret to Good Game Iteration
This talk explores game design, iteration, and prototyping, emphasizing the importance of playtesting with non-developers and smooth prototype testing. Observing playtesters carefully and gathering their feedback is crucial for understanding their thoughts and feelings. Playtesters are essential during the design process to ensure a cohesive and enjoyable game. The speaker shares a personal example of solving multiple problems with a single solution in the game Beast of Colchis. The talk concludes with a reminder to prototype, be nice to playtesters, and focus on making gameplay fun.
Using the Gamepad API for a Better Gaming Experience on the Web
JS GameDev Summit 2023JS GameDev Summit 2023
21 min
Using the Gamepad API for a Better Gaming Experience on the Web
The Talk discusses the web gamepad API and its use in game development on the web platform. It explores the GamePad API, which allows developers to connect gaming devices to the browser and use them in gaming applications. The implementation of the GamePad API involves tracking button presses and joystick movements using request animation frame. The Talk also introduces the JoypadJS library, which extends the GamePad API to track button presses, axis movements, and provides haptic feedback. JoypadJS works on modern browsers with GamePad API support and is used in games, interactive applications, and IoT projects.
Lessons From 7 Years of .IO Games: What Works, What Doesn’t Work, Where to Go From Here
JS GameDev Summit 2023JS GameDev Summit 2023
14 min
Lessons From 7 Years of .IO Games: What Works, What Doesn’t Work, Where to Go From Here
I-O games are multiplayer web games that are easy to pick up but can be played for hours. Developers have added deeper game mechanics and adapted I-O games for mobile, generating high revenue. Acquiring users for I-O games is done by sharing the games to play together at school. Monetization of I-O games is primarily through ads, as it is difficult to generate in-app purchases from the web. Web standards and user-generated content are opening up new possibilities for better web games.
The Potential of Higher-Kinded Types for Library Semantics
TypeScript Congress 2023TypeScript Congress 2023
8 min
The Potential of Higher-Kinded Types for Library Semantics
The Talk discusses the potential of higher kind of types (HKTs) for library semantics, enabling better inference and type-level operations. It explains how HKTs can be created in TypeScript by exploiting function types as a function of object attributes. This allows for the creation of composable functional utilities with intelligent type inference and a chaining interface that computes type-level results. Overall, the Talk highlights the benefits and possibilities of using HKTs in software development.
Generating types without climbing a tree
TypeScript Congress 2023TypeScript Congress 2023
30 min
Generating types without climbing a tree
This talk explores the challenges and benefits of generating types for APIs. The speaker discusses the need for a better client experience and the popularity of generating clients. They also explain the use of OpenAPI for generating REST API clients and the use of Cold Block Writer for code generation. The talk covers the process of defining types for parameters and responses, generating the client and request, and using the generated client. The speaker also touches on validation in production and the initial challenges with TypeScript.
Improving Developer Happiness with AI
React Summit 2023React Summit 2023
29 min
Improving Developer Happiness with AI
Watch video: Improving Developer Happiness with AI
GitHub Copilot is an auto-completion tool that provides suggestions based on context. Research has shown that developers using Copilot feel less frustrated, spend less time searching externally, and experience less mental effort on repetitive tasks. Copilot can generate code for various tasks, including adding modals, testing, and refactoring. It is a useful tool for improving productivity and saving time, especially for junior developers and those working in unfamiliar domains. Security concerns have been addressed with optional data sharing and different versions for individuals and businesses.
Game Changer! Building Search Into Your Applications
Node Congress 2023Node Congress 2023
8 min
Game Changer! Building Search Into Your Applications
Implementing the right strategies and tools, such as Apache Lucene, can improve search performance and user experience. The choice of analyzer affects search results, and query operators provide various search options. Relevant scoring is crucial for ranking documents based on relevance. Custom scoring can prioritize specific criteria. Consider analyzers, query operators, and scoring methods to optimize the search experience.
What Engineering Leaders Should Know About DevRel (But Were Too Busy to Ask)
TechLead Conference 2023TechLead Conference 2023
21 min
What Engineering Leaders Should Know About DevRel (But Were Too Busy to Ask)
DevRel is about understanding the audience and collaborating with different departments. Dev Advocates bridge gaps between engineering and marketing, provide feedback, and stay updated on industry trends. DevRel helps raise team profiles, assists with editing and getting on podcasts, and aims to make engineers successful. Collaboration is key in DevRel.
Supercharging Your Dev Experience With Turborepo
React Day Berlin 2022React Day Berlin 2022
26 min
Supercharging Your Dev Experience With Turborepo
Top Content
This Talk explores the benefits of using TuberApple, a tool for supercharging the development experience. It highlights the advantages of monorepos, such as code reuse, shared standards, improved team collaboration, and atomic changes. TuberApple, specifically Tuburepo, offers efficient task execution through caching and optimized scheduling. It simplifies monorepo development by allowing parallel execution of tasks and seamless coordination of changes. Tubo, another tool within TuberApple, enables smart task execution, declaring task dependencies, and efficient caching in monorepos.
Accelerate Innovation
React Day Berlin 2022React Day Berlin 2022
10 min
Accelerate Innovation
Today's Talk focuses on accelerating innovation and the importance of solving the right problem. Design Thinking and the product life cycle are discussed as tools for product innovation. The R approach, which involves constant experimentation and learning, is introduced. The idea of syncing production components from storybook to Figma is explored. Finally, the Talk emphasizes the role of developers as the new creators, unlocking their powers to innovate.
Lessons Learned From Troubleshooting a Shopping Cart Issue
React Day Berlin 2022React Day Berlin 2022
9 min
Lessons Learned From Troubleshooting a Shopping Cart Issue
This Talk discusses lessons learned from troubleshooting a shopping cart issue in a restaurant marketplace app. The bug was difficult to reproduce but occurred more frequently as the app grew. The investigation involved checking frontend logs and using tools like Sentry and Fullstory. The solution involved using the customer's view at checkout as the source of truth and emphasizing the importance of testing and financial responsibility.
Your Personal Remix!
Remix Conf Europe 2022Remix Conf Europe 2022
24 min
Your Personal Remix!
Today's Talk discusses Remix and Personalization, highlighting the benefits of personalized experiences in websites and web applications. Different types of personalization are explained, along with the steps to implement a personalization strategy. The use of Remix and Storyblock to implement personalized experiences on a website is demonstrated. The structure of a page with personalized content for different user types is shown, along with the use of cookies to identify user interests. The implementation of a personalization strategy using React components and the Storyblock API is explained.
Understand Your Codebase to Innovate Faster
React Advanced Conference 2022React Advanced Conference 2022
19 min
Understand Your Codebase to Innovate Faster
We can improve developer efficiency by helping people understand code more effectively through open source software, iterative development, cloud infrastructure, continuous integration, and service-based architecture. The software development lifecycle consists of an outer loop focused on team efforts and an inner loop for individual developers. A universal search platform helps developers understand and search code, reducing the time spent on code comprehension. Code navigation and automation tools like Sourcegraph enable developers to navigate code, adhere to best practices, and automate changes across multiple repositories.
Improving Developer Happiness with Preview.js
React Summit 2022React Summit 2022
21 min
Improving Developer Happiness with Preview.js
Francois, a developer happiness engineer, discusses the challenges of slow builds and their impact on productivity. He explores the implementation of showing unavailable menu items in a food delivery app and demonstrates the use of Storybook for component design. Francois introduces Preview.js, a tool for previewing React, Vue, and Solid components, and explains how it simplifies the development process. He also highlights the benefits of using PrivyJS with Storybook and VIT for faster and more efficient development.
Fast React Monorepos with High Quality DX
React Summit 2022React Summit 2022
22 min
Fast React Monorepos with High Quality DX
Welcome to a talk about fast React monorepos with high quality DX. Monorepos allow for collaboration and code sharing between packages, providing a more organized development environment. Leveraging caching and distribution in CI can improve speed and efficiency. NX provides a feature-rich monorepo setup for React, improving developer experience. Monorepo tools like NX console extension and project graph visualization enhance capabilities and enforce code quality.
Content Modeling 101
JSNation 2022JSNation 2022
7 min
Content Modeling 101
This Talk provides an introduction to content modeling and its importance in organizing content for teams. It explores the top-down approach to simplify and make content models more reusable, using a recipe app as an example. The Talk also highlights the best practices for content modeling, including considering reusability, rendering for end users, content governance, platform considerations, and continuous iteration.
TypeScript for Library Authors: Harnessing the Power of TypeScript for DX
TypeScript Congress 2022TypeScript Congress 2022
25 min
TypeScript for Library Authors: Harnessing the Power of TypeScript for DX
TypeScript for library authors offers benefits for both internal and external use, improving code quality and providing accurate understanding of libraries. Documentation and examples should be in code to provide up-to-date information. Testing types alongside unit tests ensures accurate typing. Managing changes and exposing types requires careful versioning. Deep integration of types improves usability. Using a map in TypeScript allows for simpler implementation and customization. Leveraging types in libraries can generate code based on user access. TypeScript integration with Nuxt provides support and type declarations.
How to create editor experiences your team will love
React Advanced Conference 2021React Advanced Conference 2021
168 min
How to create editor experiences your team will love
Workshop
Lauren Etheridge
Knut Melvær
2 authors
Content is a crucial part of what you build on the web. Modern web technologies brings a lot to the developer experience in terms of building content-driven sites, but how can we improve things for editors and content creators? In this workshop you’ll learn how use Sanity.io to approach structured content modeling, and how to build, iterate, and configure your own CMS to unify data models with efficient and delightful editor experiences. It’s intended for web developers who want to deliver better content experiences for their content teams and clients.
The Forest for the (Abstract Syntax) Trees
React Advanced Conference 2021React Advanced Conference 2021
8 min
The Forest for the (Abstract Syntax) Trees
Hydrogen is an opinionated React framework and SDK for building fast and dynamic Shopify-powered custom storefronts. With Hydrogen, developers can leverage compilers to easily compose common operations and improve developer experience. The framework focuses on image performance, request caching, server-side rendering, and React server components. It also provides auditing for accessibility, security, web vitals, and framework violations. The Hydrogen CLI offers a powerful and fun developer experience for bootstrapping, enforcing best practices, ongoing maintenance, and testing.
The Legendary Fountain of Truth: Componentize Your Documentation!
React Advanced Conference 2021React Advanced Conference 2021
24 min
The Legendary Fountain of Truth: Componentize Your Documentation!
Welcome to this session about documentation in a command-driven era. The Data Axis framework provides a comprehensive approach to documentation, covering different areas of the development process. Component-driven development and MDX syntax enable faster development, simpler maintenance, and better reusability. Embedding components in Markdown using MDX allows for more advanced and useful documentation creation. Tools like Storybook and Duxy with MDX support are recommended for documentation solutions. Embedding documentation directly within components and migrating to MDX offer a comprehensive documentation experience and open up new possibilities for embedding and improving documentation.
Supercharging Developer Productivity With Advanced Code Search
React Advanced Conference 2021React Advanced Conference 2021
10 min
Supercharging Developer Productivity With Advanced Code Search
Developers can use Sourcegraph to easily search for code using literal, regular expression, and structural patterns. Sourcegraph allows searching through open source and private code indexed across GitHub and GitLab, and supports searching for unstable batch API in React.js. It also enables searching with regular expressions, finding dependencies and usage patterns. With structural search, developers can search for specific blocks of code and narrow down their search using keywords. Sourcegraph is essential for developer velocity, helping teams quickly search through repositories, find references to shared systems, and providing powerful search parameters.
Full-stack & typesafe React (+Native) apps with tRPC.io
React Advanced Conference 2021React Advanced Conference 2021
6 min
Full-stack & typesafe React (+Native) apps with tRPC.io
Top Content
Alex introduces tRPC, a toolkit for making end-to-end type-safe APIs easily, with auto-completion of API endpoints and inferred data from backend to frontend. tRPC works the same way in React Native and can be adopted incrementally. The example showcases backend communication with a database using queries and validators, with types inferred to the frontend and data retrieval done using Prisma ORM.
Optimising Developer Experience with Nuxt 3
Vue.js London Live 2021Vue.js London Live 2021
26 min
Optimising Developer Experience with Nuxt 3
This Talk discusses optimizing developer experience with Nuxt 3. It highlights improvements in documentation, auto importing libraries, server developer experience, and deployment. Nuxt 3 introduces a unified solution for schema, documentation, and defaults, as well as auto imports for easy component access. It also introduces a faster server framework called H3 and allows for efficient network requests with isomorphic fetch. Deployment is simplified with a single entry point and support for various platforms. The goal is to make Nuxt 3 amazing and backport features to Nuxt 2 apps.
How to Code Boring Internal Apps 10x Faster
JSNation Live 2021JSNation Live 2021
7 min
How to Code Boring Internal Apps 10x Faster
ReTool is a platform that focuses on building internal tools quickly. It offers easy integrations with databases and APIs, supports custom React components and JavaScript libraries, and provides extensive support and deployment options. Developers can try it out at retool.com.