October 2021: Good Software's about So Much More than Just Working Code
My new course on React apps is live, and there's a bunch of great free content to go with it.
Hi all,
I hope you had a great October - I know I did: my course on how to modernize an enterprise React app on newline.co went live this month!
Introducing “The newline Guide to Modernizing Enterprise React Apps”
Building enterprise level applications is about so much more than just writing functional code, and it frustrated me that there were no tutorials out there showing how to take an existing React site (a common situation many developers will face) and upgrade it to today’s modern software standards.
It includes 54 lessons and 10.5 hours of videos where I share all that I've learned about building & maintaining enterprise-size React apps, with lots of hands on coding examples as we upgrade a real world React application to follow today's software engineering best practices.
The course covers:
How to modernize an existing React application according to today's standards
How React Hooks work compared to class components
How config tools like Volta and Node engines simplify development
How to set up ESLint and Prettier to improve code quality
How to upgrade an existing React app and refactor it as you go
How to write integration tests with React Testing Library and Jest to ensure app functionality
How end-to-end tests with Cypress.io can test mission critical user flows
How to incorporate a component library to speed up design and development time
And more!
If you'd like a taste of what the full course includes, there's a free video on YouTube to whet your appetite. Click here to learn more about the whole course - your support would mean the world to me.
In addition to my course, I wrote a blog post about Volta - the faster way to manage Node.js environments.
Part of “good software” involves things like making development environments consistent across dev machines and production. Volta lets you automate your Node.js development environment.
It allows your team to use the same consistent versions of Node and other dependencies. Even better, it allows you to keep versions consistent across production and dev environments, eliminating the subtle bugs that come with version mismatches.
Volta has much in common with tools like NVM, but it’s even easier to install and it takes the thinking part out of the equation: once Volta's set up in a project and installed on a local machine, it will automatically switch to the proper versions of Node. It’s truly awesome, and I highly recommend it.
Finally, I wrote a second blog post about automated end-to-end testing and how Cypress.io keeps improving it with new features like Cypress Studio.
Testing is basically a requirement for modern software today, not a nice-to-have.
In the past, end-to-end testing was hard to set up, flaky, and generally a pain to deal with, but it's the best automated option to confirm software works. Cypress.io continues to improve the e2e testing experience and its new feature Cypress Studio takes it a step further to make writing tests quicker and easier too.
With Cypress Studio, you can show Cypress exactly how to test by recording interactions against the application under test. You click around in the DOM, and Cypress generates the test code to mimic what you're doing. Test written. Done.
It’s a game changer in the best way, and it just keeps getting better with time.
I hope you enjoyed this month’s edition of “Paige Codes”. Please share with your friends if you did.
See you again at the end of November,
- Paige