Codeminer42 Dev Weekly #11

HELLO EVERYONE!!! It’s May 17th, 2024, and you are reading the 11th Codeminer42’s tech news report. Let’s check out what the tech world showed us this week!

React Conf 2024

Yeah! This week we had the so-waited React Conf, when the main trend was the new React 19 version with amazing features like a whole new compiler that will kill the usage of useMemo hook in new applications. Check out what happened at the conference, it is like an E3 or Gamescom (the old good ones), or even a Champions League match for devs, hehe.

Google I/O 2024 recap: Making AI accessible and helpful for every developer – by Jeanine Banks

Wow, this week was amazing! We also had Google I/O 2024, focusing on making AI accessible and helpful for every developer. It covers topics such as generative AI, new Gemini models, mobile development with Gemini in Android Studio, Kotlin Multiplatform, Jetpack Compose, web development with Gemini Nano in Chrome, and many more. Check it out!

Chrome DevTools: From friction to flow – by Chrome for Developers

The Chrome DevTools team addressed common frustrations during web development, particularly during debugging, which can save a lot of time. They identified and addressed four main pain points, releasing a series of improvements to enhance workflow. These improvements include easier UI testing, increased understanding, improved focus, and performance optimization opportunities. Examples given include mocking API responses and using the new emulator Focus page to debug disappearing elements. Other improvements include hiding source maps and unnecessary network requests by default, and updates to the performance panel for more precise zooming and data tracking.

What’s new in the web – by Rachel Andrew

Our friend Rachel presents us the new features and updates in web development, including the introduction of Baseline, the Web Platform Dashboard (next post below), and various new CSS features like container queries,:has() selector, and more. It also covers new HTML elements like “, new APIs like Compression Streams, and more.

Announcing the Web Platform Dashboard – by Rachel Andrew

At the "Google I/O" event, was announced the new Web Platform Dashboard. Now we have a way to see the entire web platform mapped as a set of features, along with their support in browsers. It is similar to the very well-known website: Can I Use.

The Screen Wake Lock API is now supported in all browsers – Thomas Steiner

The Screen Wake Lock API is now supported in all major browsers, including Chrome, Safari, and Firefox. This API allows users to control a device’s screen wake behavior, ensuring uninterrupted interactions with web applications. Check it out!

Microservices vs Monoliths: Benefits, Tradeoffs, and How to Choose Your App’s Architecture – by Daniel Adetunji

The article discusses the differences between monolithic and microservices architectures, explaining the benefits, tradeoffs, and how to choose between the two. It also covers data management, and database isolation, and provides heuristics for choosing between the two architectures.

AI coding tools are your interns, not your replacement – by Matt Asay

This article talks about how AI coding tools can be helpful for developers, but they should be seen as interns rather than replacements. It emphasizes the importance of skill and experience in recognizing when code generated by AI tools may fail. The text also highlights the need for developers to be cautious and not blindly trust the output of AI tools, as they may not always be accurate.

JavaScript: The differences between var, let, and const – by Jenuel Oras Ganawed

This very recommend post talks about the differences between var, let, and const in JavaScript, highlighting their scopes and use cases. The post explains when to use each keyword and provides good examples to illustrate their behavior, which you can easily test on your machine.

Introducing GPT-4o – by OpenAI

The famous OpenAI announces the release of GPT-4o, which provides GPT-4 intelligence but is faster and improves capabilities across text, vision, and audio, making interaction with AI more natural and easy. Additionally, the video showcases the advancements in ChatGPT’s capabilities, including real-time responsiveness, voice generation, and emotional detection, as well as its ability to solve math problems and assist with coding concepts.

Snappy UI Optimization with useDeferredValue – by Joshua Comeau

Our friend Joshua highlights the use of React’s useDeferredValue hook for optimizing application performance, emphasizing its significant positive impact on user experience, especially on low-end devices. The author shares a personal success story of resolving a complex performance issue on their blog using this hook, likening the improvement to "black magic". Check it out!

Understanding the generative AI development process – by Martin Heller

The article discusses the evolution and current state of machine learning and generative AI development. Initially, machine learning required extensive training on all data to find the best model. With the introduction of transformer neural networks, large language models (LLMs) became more accessible, transforming the development process. Generative AI now involves selecting models, prompt engineering, hyperparameter tuning, retrieval-augmented generation (RAG), and using agents to tailor outputs. The article provides practical steps and strategies for each stage of this modern AI development workflow.

How to Structure Vue Projects – by Alexander Opalic

This useful post presents various structures for Vue projects based on their size and complexity. Each approach has its pros and cons, and the choice of structure should align with the organization’s size and complexity. It is worth mentioning that the content of the post does not necessarily address the issue of the responsibility of each component itself at an architectural level, but rather the folder structure, as mentioned

A learning analytics-based collaborative conversational agent to foster productive dialogue in inquiry learning – by Adelson de Araujo, Pantelis M. Papadopoulos, Susan McKenney, Ton de Jong

This interesting academic article investigates the effectiveness of a Collaborative Learning Agent for Interactive Reasoning (Clair) in improving student dialogue in online collaborative inquiry learning. Two separate studies were conducted with secondary school students from Brazil and the Netherlands. The presence of Clair in the chat resulted in a higher frequency of students sharing their thoughts and engaging with each other’s reasoning. The study highlights the importance of a multidimensional perspective in analyzing the impact of Collaborative Conversational Agents (CCAs) on student dialogue.

Understanding Offset and Cursor-Based Pagination in Node.js – by Rishabh Rawat

This blog post discusses the importance of pagination, and different types of pagination, and focuses on offset-based and cursor-based pagination in Node.js. It explains the pros and cons of each approach, provides code snippets for implementation, and highlights the challenges and considerations for implementing cursor-based pagination.

Creating Forms in Ruby on Rails with Simple Form – by Thomas Riboulet

This blog post talks about using Simple Form in Ruby on Rails to simplify creating and handling forms. It explains how Simple Form can generate forms based on object data, how to install and use it, customize form fields, handle validations, work with different column types, and support multiple languages.

Android Support for Kotlin Multiplatform to Share Business Logic Across Mobile, Web, Server, and Desktop Platforms – by Maru Ahues Bouza

The famous mobile operational system Android has announced support for Kotlin Multiplatform (KMM), allowing developers to share code across mobile, web, server, and desktop platforms. This helps increase the productivity and quality of Android apps. The Android Gradle Plugin now officially supports KMM. Future areas of work include expanding support for KMM in Android Studio.

And that’s all for this week! Wish you all a great weekend and happy coding!

We want to work with you. Check out our "What We Do" section!