Tim Carlson
Spring 2026

<info 340/>

Conclusions

View of the Day

  • Quiz Retake (sec b) Check-in Quiz (sec c)

  • Last Questions?

  • Conclusions: Tools & Libraries

  • Review examples of "Individual Mastery" git commit cleanup

  • Work time!

Quiz Retake (sec b)

This quiz is closed book, closed note.

Each question is worth 1 point.

Mark your chosen answers clearly, such as by circling
the letter.

You have 20 minutes, good luck!

Check-in 6 (sec c)

This isn't being graded, so do yourself a favor and keep it closed book. Make sure to answer the last question to get credit for completing.

 

https://canvas.uw.edu/courses/1882381/quizzes/2381748

 

You have 15 minutes, good luck!

Quiz 5: Frequently Missed Questions

Project Final Draft

For the Final Draft of the project, we're looking for it to be totally complete! See the Canvas page for full details.

  • Well-structured and appropriate HTML (in React)
  • Well-constructed React Components. Uses props and state!
  • Interactive features: "two and a half" significant features
  • Routing and navigation Needs multiple pages; url params
  • External React Library rendering a Component. react-bootstrap is okay (if used meaningfully e.g., interactive widget)
  • Data Persistence through Firebase (includes asynchronous work; effect hooks, etc)
  • Good Visual Style, Accessibility, Responsiveness
  • Correct code style -- check the course textbook!

What have we learned...?

So many tools...

Tool Dependency

Much of the web (and software in general) is built on shared, reusable libraries.

"Protestware"

Are they the right tools?

Future of Frameworks?

I've been building lots of apps by using LLMs and Agents. I'm currently up to about 17 tools, utilities and demos over the duration of a couple of weeks. I build them for me and because tools like Replit have enabled me during my small spots of free time to build fully working sites and apps that solve the immediate problem that I have. I've felt incredibly productive.

...

I'm of the belief that software development is entering a radical shift that is currently driven by agents like Replit's and there is a world where a person never actually has to manipulate code directly anymore. As I was making broad and sweeping changes to the functionality of the applications by throwing the Agent a couple of prompts here and there, the software didn't seem to care that there was repetition in the code across multiple views, it didn't care about shared logic, extensibility or inheritability of components... it just implemented what it needed to do and it did it as vanilla as it could. I was just left wondering if there will be a need for frameworks in the future? Do the architecture patterns we've learnt over the years matter? Will new patterns for software architecture appear that favour LLM management?

- Paul Kinlan, Chrome Developer Relations Team lead, Nov 2024

Course Feedback

Check your email for course evaluations! Do them NOW please!

Thank you for your hard work in this class!

Common 'mastery' issues to fix

  • Use react-router, not react-router-dom
    The older package may still work, but our course standard is the current, non-deprecated router package.
  • Move .map() logic above the return
    This makes the mapping logic easier to read and debug.
  • Use named handler functions
    Avoid embedding callback logic directly inside JSX.
  • Prefer CSS classes over inline styles 
    Keep styling rules in CSS so they are easier to reuse, update, and maintain.


Goal: write code that is easier to debug, explain, and maintain — not just code that “works.”


What's next?

  • Complete the Course Evaluation

  • Late Problem Sets 7,8,9 due by Friday June 5

  • Final Project due on Monday June 8

    • Hard deadline; no grace period

    • Have a great break!

 

Now: work time! (after course evaluations)

info340sp26-conclusions

By Tim Carlson

info340sp26-conclusions

  • 65