100 days of code was started by Alexander Kallaway in 2016 but recently it has been gaining more momentum (we all know why). Practice is the only way to master any discipline so if you have been thinking about joining the challenge, I have compiled a list of project ideas to help you get started.Continue reading “Weekly Digest #5: 100 days of code”
Since I moved to react at work I have been using and trying different testing strategies and I wanted to share some thoughts and best practices around snapshot testing.
In the past I have worked on different projects on frontend, from simple websites to complex editors. Along the journey I have used different testing frameworks and tools.
While recently snapshot testing has become popular, in my opinion it can be a double edged sword, and here is why.
This weekly digest focuses on React internals. Understanding how react works internally helps to follow best practices when coding, better understanding on performance and extra skills to debug those hard bugs. React defines that UI is a function of state:
UI = f(s) . Every time the state changes react calculates the new UI (reconciliation) and renders the differences:
Continue reading “Weekly Digest #4: On React internals”
Read the following sources to understand better how the whole process works:
In this quick tutorial I will show how you can add test coverage to your vscode plugin repository.
I like sharing quick demos to all the stakeholders as soon as I start developing something new. I find that sharing soon helps to get early feedback and make sure that everyone’s requirements are covered.
But sometimes it is hard to find out the proper format to share. If I share only an image, then all the interaction is lost. Or if I share a video, then depending on the format some users might not be able to open it (and is also usually big in size).
After trying a few different formats I found that gifs are the best way of sharing quick demos. I follow a 2 step approach to it:
- I record the screen using Quick Time.
- I convert this CLI I found online called screengif.
- Typescript 3.8 was announced on February 20th. Bringing Type-Only Imports and Exports, ECMAScript Private Fields support, `export * as ns Syntax`, Top-Level await, es2020 for target and module, JSDoc Property Modifiers, Better Directory Watching on Linux and watchOptions, “Fast and Loose” Incremental Checking, and more.
- Also, Typescript 3.9 beta was announced on March 27th. Improvements in Inference and Promise.all, Speed Improvements, Uncalled Function Checks in Conditional Expressions, etc.
- Nextjs 9.3 was announced on March 9th. Includes a lot of new features for static site generation and a smaller runtime (32kb less!!). Also they enabled Github discussions check what the community is asking!.
- Babeljs 7.9 was announced on March 16th. Support for `@babel/preset-modules` directly under `preset-env` with a flag (`bugFixes`), Ts 3.8 support, flow declare fields, and a new JSX transform (under experimental flag). Also check Babeljs 8.0 roadmap (which is targeted for 2020)
- Prettier 2.0 has arrived!!! Officially announced on March 21st. Improved method chain breaking heuristics, Ts 3.8 support, changed the default trailing comma to ES5 standard, changed the default value for arrowParens to always, and a bunch of fixes. Looking forward to try this release!!! NOTE: works for nodeJS versions >= 10.
- Git 2.26 was announced on march 22nd. Performance improvements due to making the V2 Protocol a default, new config options, `git sparse-checkout` which should speed up mono-repo checkout process, improved `git grep` performance, and more.
- Last but not least, React Router v6 is in alpha (close to beta). Reach Router is being “acquired” by React Router, improving routes, changing how history API is used and reducing the bundle size (from 20kb to 8kb!!!),
Let me show you how to install it and run it!!
- Planning to try all this out? Check this article on best online IDEs: 12+ Best Online Code Editors for Web Developers. I recommend Stack blitz (it is vs code online)
In this post I will present a quick example on how ES6 can improve readability and help build code that is easier to maintain.
Also, I will be exploring partial application, a nice technique to keep in your developer toolbox.