Product Development

Technology

February 10, 2023

January Engineering Monthly Round-Up

January Engineering Monthly Round-Up

January Engineering Monthly Round-Up

Ugur Oruc

Tech Lead

We’re one month into the new year, and we’re already looking forward to all the new releases, articles, conferences, and more that are headed our way. Last month at OAK’S LAB, we got straight to work building our products and had the pleasure of hosting a few of our stakeholders during the process. We started the year off strong, so let’s take a look at what we were reading, watching, and discovering in the first month of 2023.

News & Exploration

Typescript 5.0 Beta is out

The beta release of Typescript 5.0 happened at the end of last month. You can expect new features such as the new decorators standard, improved support on ESM projects, @satisfies support, const type parameters, speed optimizations, and more. Check out the release notes to find out more details.

Astro 2.0 is out

It’s 33% faster with 90% less JavaScript… Astro is coming hot in 2023. Astro 2.0 offers next-gen frontend architecture, and release features include hybrid rendering, Vite 4.0 updates, a new public roadmap, and more. The major takeaway? Astro 2.0 is the first major web framework to deliver complete type-safety for Markdown and MDX. Check out the release notes to find out more details. It's available on npm today.

How to clone objects in JavaScript

No, it's not "JSON.parse(JSON.stringify(obj))" or "_.cloneDeep(obj)". There's a new API available in browsers for you to use: "structuredClone(obj)". It’s the modern, native way to do deep copies of objects in JavaScript. See it in action at the link above.

A cure for React useState hell?

In React, an application's usage of "useState" can go far more than you need or expect. There might actually be an easy way to fix it. Check out this article to read more about an alternative state hook that is more powerful and easier to use than you might think.

Optimizing selectors on CSS

Using an excessive amount of selectors or specifying too many can have CSS performance issues. The Microsoft dev team wrote some tips and tricks on how to improve certain CSS selectors to lead to important performance gains.

The State of JavaScript 2022 survey results are out

If you read one of our past newsletters, we linked the State of JavaScript survey that went out at the end of 2022. This survey has been released annually since 2016 and collects data from over 20,000 developers each year to identify current and upcoming trends. It’s one of the biggest JS ecosystem surveys out there, and this time, ~40,000 people participated. Check out all the results and see the things that stood out most.

React ref Callback Use-Cases

How many use cases of "ref" are you aware of in React? And did you know all of the use cases are easy to apply and improve your React skills? Read this article to learn more.

Math in React

Do you need to visualize math expressions in React? Or maybe you just need to draw a great circle for your users and put some lines with it as well? Mafs is just for you. Discover how you can build interactive, animated visualizations with declarative code at the link above.

Read & Watch

A Final Challenge

We’re closing it out with another engineering challenge!

We would like to zip our arrays to a new array so we can have 1 array output instead of 2. Let’s create a function called zipWith (or anything you like) that will take 3 arguments:

  1. A function that takes 2 number arguments and returns the number as a result.
  2. An array that has a length of X with random numbers
  3. An array that has a length of X with random numbers

Your function should return an array that has a length of X with the numbers that are zipped with the function that is defined in the first argument. Example:

Notes: You can assume both arrays are the same length, but if you want to challenge yourself more, some additional requirements are below:

  • Arrays can be of different lengths. (Should throw an error when it’s different.)
  • It can work with multiple types not just numbers.
  • Adding generic types to accept arguments in the function depending on the arrays that are passed.

Our Jobs

Do you want to shape the future and help build companies from scratch? Here is a list of job openings available right now at OAK’S LAB.

That’s the end of the January 2023 Engineering Monthly Round-Up. Thank you for reading, and we hope you've enjoyed the articles, videos, and insights we shared. We look forward to seeing what this year brings our way. If you have any comments, suggestions, or other interesting material to share, please feel free to comment below or send me an email directly at ugur.oruc@oakslab.com. Thank you again, and we’ll be back next month.

Subscribe to our quarterly newsletter and receive our latest insights.

Top articles

Building AI-Powered Products Without ML Teams

October 15, 2024

Learn how to build AI-powered products without a dedicated machine learning team. This article outlines practical steps for integrating AI using pre-built models, improving your product's personalization, automation, and efficiency with minimal investment.

Unicorns, Exits, and Global Recognition: The Rise of Prague’s Tech Scene

February 1, 2024

A review of Prague's tech landscape post-2020.

The OAK’S LAB WAY: An Introduction to Our Product Development Methodology

January 23, 2023

Our product development methodology designed to take an early-stage startup from pre-seed to series A and beyond.

How to Set Your Startup’s Mission & Vision

March 14, 2023

The twin north stars navigating startup founders and our teams on the journey to build a product that makes a big impact in the world.

Building a Strong Company Culture: The Core Values That Drive Our Success

February 29, 2024

Take a deeper look at the foundational principles that guide everything that we do at OAK'S LAB.

Building Products with LLMs | 7 Tips for Success

August 1, 2023

Over the last few months, we’ve been fortunate enough to work with some startups that have LLM-driven products. Here are the best practices that we’ve learned along the way.