The unwanted stack

Maya Shavin - Vue Amsterdam 2022

@mayashavin

This is a talk about the new

UnwantedJS

Definitely NOT

@mayashavin

This is a talk about

refactoring & bundling

It is about performance, but NOT that

@mayashavin

It's a talk about...

The evolution of building a window

@mayashavin

The beginning

Freedom of choices

Any frame(work)

Any shape

Any supporting tool

Any build technique

@mayashavin

After a while...

Delivery/Deploying

Team

Scalibility

Maintenance

Integration

Frameworks

Tools

Platforms

Rules

@mayashavin

@mayashavin

Deployment

CI/CD

Architecture

Platforms

Compliance

Deployment

CI/CD

Architecture

Compliance

Platforms

@mayashavin

Every company has its favorite platform & stack

But it's not always your favorite one.... eventually

@mayashavin

The New Guy Phenomenon

The one who think he's cooler & knows better

@mayashavin

@mayashavin

@mayashavin

It's not about you....

It's not about Evan You either....

@mayashavin

Deployment

CI/CD

Architecture

Compliance

Platforms

It's about the window

Project

@mayashavin

@mayashavin

Deployment

CI/CD

Architecture

Compliance

Platforms

@mayashavin

Architecture

Team performance (skills, expertise)

Project nature (Size, type, etc)

Code Maintenance

Scalability

@mayashavin

Compliance

Accessibility support

Testing (E2E, Unit test)

UI Consistency

Integration/Customization

@mayashavin

select(newCoolTool)

  • Priorities 
  • Alternatives comparison
  • Compatibility
  • Proposal with data

@mayashavin

select(e2etesting)

  • What is the goal? 
  • How compatible is it?
  • Why would it be THE solution?
  • Show me some data

@mayashavin

What is the goal?

  • Speed?
  • Visual support?
  • Cross-browser support?
  • Flexibility in changing test runner?
  • Parallel testing?
  • Accessibility testing support?

@mayashavin

How compatible is it?

  • Platform integration?
  • CI/CD integration?
  • Maintenance effort?
  • Learning effort?

@mayashavin

Why is <cool testing> THE solution?

  • What are the tradeoffs?
  • Developer experience?
  • Community support
  • Comparisons
  • Scalability

@mayashavin

Show me some data

and be ready for questions

@mayashavin

Be open minded

Everything inside the window is a feature

@mayashavin

Change the stack

Or make the best out of it

@mayashavin

Keep the coding standard

Use TypeScript

Be open-minded

Create solution, not refactor

Understand your window nature first

Plan your window

Instead of why, try "What can be better?"

@mayashavin

And blame JASON for everything else

@mayashavin

A LITTLE BIT about me

Senior Software Engineer

MICROSOFT

Core Team

STOREFRONT-UI

Organizer

VUEJS ISRAEL

Blogger & Book Author

@mayashavin

mayashavin.com

Thank you

@mayashavin

mayashavin.com

Made with Slides.com