WebDevPro #40: CSS One-Line Upgrades, Styling Tables, React.js Cheatsheet, AppleVision wrapper, GitHub Copilot Research, GitLab password reset bug

Test URL Advertise with Us | Sign Up to the Newsletter

Kickstart Your Upskilling Here!
WebDevPro #40: CSS One-Line Upgrades, Styling Tables, React.js Cheatsheet, AppleVision wrapper, GitHub Copilot Research, GitLab password reset bug
February 2, 2024
Hi <<First Name>>,
Welcome to the _webdevpro! Your one stop for all things Web Dev! This issue arrived in your inbox a day later than usual. I was stuck in a snowstorm but I’m back in business now.
We start today’s issue with community discussions on:
Don't miss our repository of manually curated collection of ChatGPT resources for web developers. Wanting to learn about Ruby? Our tutorial covers Ruby Classes and Modules from the book ‘From PHP to Ruby’.
Our relatively new section captures internet jibber-jabber about topics in the web ecosystem:
Easy-to-Use Apple Vision wrapper for text extraction and clustering
New GitHub Copilot Research Finds 'Downward Pressure on Code Quality'
GitLab password reset bug leaves more than 5.3K servers up for grabs
Today's news covers Node.js, Laravel, Ruby on Rails and Spring.
P.S.: If you have any suggestions or feedback, or would like us to feature your project on a particular subject, please write to us. Just respond to this email!
If you liked this installment, fill in our survey below and win a free Packt PDF.
Thanks,
Apurva Kadam
Editor-in-Chief, Packt
WebDev Community Speak
What is the WebDev industry talking about? Latest Developments? Cool tricks? Tutorials? Cheatsheets? How are Web Developers upskilling? Read about it all here.
12 Modern CSS One-Line Upgrades - Sometimes, improving your application CSS just takes a one-line upgrade or enhancement! Learn about 12 properties to start incorporating into your projects, and enjoy reducing technical debt, removing JavaScript, and scoring easy wins for user experience.
A Guide to Styling Tables – I've recently noticed a small paradox: Many years ago –before CSS grid — we used <table>s to simulate grid layouts. Now that we have grid layouts, we use them to simulate tables! Which is wrong. Tables are for tabular data; and it doesn't make sense to present tabular data in a bunch of <div>s. Let's look into the elements of a <table>, and then how to structure and style them.
Specialized Python libraries for Unique Tasks - Python is the language of Data, ML, and AI, but Python also has various libraries for other specific needs. These lesser-known libraries serve interesting and particularly specific needs.
Getting started with Ruby on Rails and Postgres on Supabase - Every Supabase project comes with a full Postgres database, a free and open source database which is considered one of the world's most stable and advanced databases. Postgres is an ideal choice for your Ruby on Rails applications as Rails ships with a built-in Postgres adapter! In this post we'll start from scratch, creating a new Rails project, connecting it to our Supabase Postgres database, and interacting with the database using the Rails Console.
How to Write Clean Vue Components - Writing code that's both easy to test and easy to read can be a challenge, especially with Vue components. This blog post shares a design idea that will make your Vue components better. This method won't speed up your code, but it will make it simpler to test and understand. Think of it as a big-picture way to improve your Vue coding style. It's going to make your life easier when you need to fix or update your components.
React.js Cheatsheet - React.js is your go-to for designing dynamic, efficient user interfaces. Whether you’re a seasoned developer or new to web development, this blog will explain React components, elements, and key ideas. We’ll help you master JSX syntax, React properties, and conditionals.
On a scale of 1-10, how would you rate the relevance and usefulness of the community discussions in today’s issue?
lowest 1 2 3 4 5 6 7 8 9 10 highest
Sorry, voting is closed.
WebDev Repos
We at WebDevPro highlight Web resources in a week-on-week series. This week we bring you manually curated collection of hosted ChatGPT resources for web developers:
ChatGPT for Chrome & YouTube Summary - Access ChatGPT from the Chrome toolbar, see transcripts of YouTube videos, and summarize YouTube videos.
ChatGPT Enhancement Extension - Enhancements to the ChatGPT web UI.
ChassistantGPT - Chrome browser extension that embeds ChatGPT as a hands-free voice assistant.
Talk-to-ChatGPT - Talk with ChatGPT using your voice and listen to answers.
ChatGPT for Google Colab - Embed ChatGPT inside Google Colab.
codereview.gpt - Reviews your pull requests.
GPT2Markdown - Export your ChatGPT conversations to Markdown.
ChatGPT Widescreen Mode - Adds widescreen and fullscreen mode to ChatGPT.
ChatGPT Infinity - Makes ChatGPT automatically answer random questions to increase your knowledge.
Meeper - Transcriptions, summary and more using ChatGPT and Whisper AI for meetings and any browser tab.
YouTube Summary by TubeSum - Summarize YouTube videos.
On a scale of 1-10, how would you rate the relevance and usefulness of the repositories in today’s issue?
lowest 1 2 3 4 5 6 7 8 9 10 highest
Sorry, voting is closed.
Have a GitHub project you want to show off? Write to us and we will feature it!
Internet Web Dev Jibber-Jabber
Random curious musings and interesting words about Web Dev on the Internet.
In Loving Memory of Square Checkbox - Apple is the first major operating system vendor who had abandoned a four-decades-long tradition. Their new visionOS — for the first time in the history of Apple — will have round checkboxes. How should we even call these? Radio checks? Check buttons? Anyway, with Apple’s betrayal, I think it’s fair to say there’s no hope for this tradition to continue. I therefore officially announce 2024 to be the year when the square checkbox has finally died.
Easy-to-Use Apple Vision wrapper for text extraction and clustering - apple_ocr is a utility for Optical Character Recognition (OCR) that facilitates the extraction of text from images. This Python-based tool is designed to help developers, researchers, and enthusiasts in the field of text extraction and clustering. It leverages a combination of various technologies to achieve this, including the Vision framework provided by Apple.
New GitHub Copilot Research Finds 'Downward Pressure on Code Quality' - New research on the effect of AI-powered GitHub Copilot on software development cites some adverse results. The "Coding on Copilot" whitepaper from GitClear sought to investigate the quality and maintainability of AI-assisted code compared to what would have been written by a human. In other words: "I sit more similar to the careful, refined contributions of a Senior Developer, or more akin to the disjointed work of a short-term contractor?" Read on to know more.
GitLab password reset bug leaves more than 5.3K servers up for grabs - Critical GitLab vulnerability CVE-2023-7028 was not patched on more than 5,300 servers as of Tuesday, potentially enabling remote takeover of software developers’ accounts. The bug, with a maximum CVSS score of 10, was first disclosed and patched by GitLab on Jan. 11. The vulnerability in GitLab’s login system would allow an attacker to have a password reset link sent to their own unverified email address without any user interaction by the victim.
Surprise! Google Chrome goes native for Windows on Arm - Google appears to be readying a version of its popular Chrome browser for Windows on Arm. X (formerly Twitter) user Pedro Justo spotted a native version of the browser for Windows 11 Arm-powered devices in the latest nightly builds of Chrome in the Canary channel.
On a scale of 1-10, how would you rate the relevance and usefulness of the Internet Jibber-Jabber section in today’s issue?
lowest 1 2 3 4 5 6 7 8 9 10 highest
Sorry, voting is closed.
Web Dev Tutorial
Ruby classes and modules
In Ruby, modules are a way to group code so that it can be reused. Specifically, modules are collections of methods and constants that can be injected into classes. By themselves, modules aren’t useful as you can’t use them in an isolated manner. We use modules to add functionality to a class.
A class, as you probably know, is a blueprint of an abstraction from the real world taken to the programming world. A class can have different methods to represent actions and attributes to represent values. A class can be enhanced by including additional methods and constants from a module. So, in simple terms, a class can attach methods and constants from a module – and that’s what the include method does.
Let’s look at this in a simplified example. Create a file called include_module.rb with the following code:
# include_module.rb
class MyClass end
Here, we’re creating a simple empty class called MyClass with no methods. Now, let’s create an instance of this class:
my_class_instance = MyClass.new
We can’t do much with this class as it is empty, so let’s add a Utilities module to it:
module Utilities end
And just like the previous class (MyClass), this is just an empty module. Let’s add a method called debug to our module so that both our class and module end up looking like this:
# include_module.rb
class MyClass end
module Utilities
def debug
puts 'We are debugging' end
end
my_class_instance = MyClass.new
With this code, we’ve declared a method named debug that prints the text “We are debugging.” Can we add this method to MyClass? Well, this is where the include method comes in.…read more.
Read the “From PHP to Ruby Basics” book now!
On a scale of 1-10, how would you rate the relevance and usefulness of the tutorial section in today’s issue?
lowest 1 2 3 4 5 6 7 8 9 10 highest
Sorry, voting is closed.
What's Happening in Web Dev?
Your dose of the latest releases, news and happenings in the Web Development industry!
Node.js
Security Releases - The Node.js project will release new versions of the 18.x, 20.x and, 21.x releases lines on or shortly after, Tuesday February 6, 2024, in order to address four high severity issues and medium severity issue along with one low severity issue.
Laravel
Dive into the Streamlined Directory Structure in Laravel 11 - We think you’ll love the fresh skeleton you start with in a Laravel 11 app that is coming out next week! Newcomers will appreciate the minimalism, and experienced developers upgrading will not experience breaking changes. You don't have to change your Laravel 10application structure to upgrade to Laravel 11.
Download Over 1,500 Google Fonts in Your Laravel Project - Laravel Webfonts is a package that allows you to easily download, install, and preload over 1,500Google fonts locally in your Laravel project. Using the amazing Laravel Prompts feature, you can quickly search for fonts and install them via the CLI.
Ruby on Rails
Add customized prompt for Rails console - Rails console now indicates the current Rails environment with the name and color (red for production).
Fix rotation detection for HDR videos - This fix removes the positional reference on side_data and explicitly searches for the “Display Matrix” property to retrieve the rotation angle.
Consistently raise an Argument Error when passing an invalid argument to a nested attributes association writer - Previously, this would only raise on collection associations and produce a generic error on singular associations. Now, it will raise on both collection and singular associations.
Spring
Spring Cloud 2022.0.5 (aka Kilburn) Is Out! - the General Availability (RELEASE) of the Spring Cloud 2022.0.5 Release Train is available today. The release can be found in Maven Central. You can check out the 2022.0.5 release notes for more information.
Spring Cloud Commons 4.1.1 has been released - The 4.1.1 release of Spring Cloud Commons is available today. The release can be found in Maven Central. This is primarily a bugfix release containing a fix for #1315 . You can check out the 4.1.1 release notes and reference for more information.
On a scale of 1-10, how would you rate today’s issue of WebDevPro in terms of being informative, engaging, and useful?
lowest 1 2 3 4 5 6 7 8 9 10 highest
Sorry, voting is closed.
And that’s a wrap.
P.S.: If you have any suggestions or feedback, or would like us to feature your project on a particular subject, please write to us. Just respond to this email!
Someone forwarded this email? Sign Up here!
Not for you? Unsubscribe here.




Copyright (C) 2024 Packt Publishing. All rights reserved.
As a GDPR-compliant company, we want you to know why you’re getting this email. The _webdevpro team, as a part of Packt Publishing, believes that you have a legitimate interest in our newsletter and the products associated with it. Our research shows that you, <<Email Address>> , opted-in for communication with Packt Publishing in the past and we think that your previous interest warrants our appropriate communication. If you do not feel that you should have received this or are no longer interested in _webdevpro, you can opt out of our emails by unsubscribing here.
Our mailing address is:
Want to change how you receive these emails?
You can update your preferences or unsubscribe


