Balancing DX and Web Standards:
My Experience with Astro and Lit
When working with web standards, it’s easy to assume that developer experience (DX) will suffer without the conveniences of large frameworks. In a recent internal project, I decided to forgo frameworks entirely, using Lit with JavaScript. While this approach eliminated the need for a build environment, it introduced challenges like repetitive HTML templating and the need for a bundler. Enter Astro—a tool that not only provides excellent HTML templating but also a robust build environment for JavaScript and CSS. In this article, I’ll share how combining Astro and Lit has improved my productivity and why modern web standards, paired with the right tools, can rival the DX of large frameworks.
Bridging Web and Native:
Using WebView for Mobile Apps
After realizing that PWAs couldn’t fully meet my mobile project’s needs, I turned to WebView as a solution. Unlike hybrid frameworks, which often come with unnecessary overhead, WebView allows me to integrate my web application directly into a native mobile project. This approach gives me the flexibility to decide how much logic runs in the web environment versus the native one, all while maintaining a lightweight architecture. In this article, I’ll share how WebView has become my go-to solution for bridging web and native development, offering the best of both worlds without the complexity of hybrid frameworks.
PWAs and Web Standards:
Balancing Flexibility and Opinion
As a strong advocate for web technologies, I’ve seen firsthand the potential of Progressive Web Apps (PWAs). However, the growing emphasis on using ‘pure’ web standards, often at the expense of frameworks, can be limiting. While standards provide a solid foundation, frameworks offer flexibility and efficiency that shouldn’t be dismissed. In my own work, I’ve hit the limits of web standards, particularly with native file system access and background processing on mobile devices. In this article, I’ll discuss why a balanced approach—embracing both standards and frameworks—is crucial for innovation and why rigid opinions can hinder progress in web development.
Choosing the Right Tools:
Avoiding the Noise in Software Development
Software development is full of passionate debates about the ‘best’ programming languages, frameworks, and methodologies. But when the noise gets too loud, I turn away. Whether it’s the endless arguments over operating systems, the fervor around languages like Rust, or the rigid adherence to methodologies like TDD or Scrum, I’ve learned that the key is to choose what works best for your specific needs. In this article, I’ll share why I prioritize simplicity and practicality over hype, and why the right tools for the right tasks are more important than any one-size-fits-all solution.
Bridging the Gap:
When Web Apps Need Native Help
While Progressive Web Apps (PWAs) are incredibly versatile, they still have limitations. Tasks like GPS tracking in the background or full file system access remain out of reach for web technologies. For my current project, this means most functionality can be handled by a PWA, but a native app is needed to fill the gaps. This ‘sidecar’ approach, while not ideal, offers a compromise until Web APIs evolve further. In this article, I’ll discuss the challenges of combining PWAs with native apps, the trade-offs involved, and whether this hybrid solution is worth pursuing.