teleren/devto huggingface dataset:
Trends: Loved vs Not-so-loved
Tags: todayilearned, discuss, todayisearched
Published: 2023-11-20 22:48:03

## Introduction

This article is about developers' __favorite__ languages versus the most __used__ languages. 

## Languages 💬

### Loved ❤

Apparently, 80% of [Rust](https://rust-lang.org/) developers want to use it again in the coming year. However, only 12% of developers use it professionally. 

65% of professional developers use JavaScript, and 57% of people who used it last year want to use it again this year. Only 0.33% of developers care to try Raku (formerly Perl 6), but 65% of users want to work with it again. It's also used by only 0.14% of professional developers. 

### Not-so-loved 🫤

Unsurprisingly, very few people want to try COBOL, and only 20% want to work with it again. The least loved language was MATLAB, with only 18% of developers wanting to use it again. 

## Trends 📉

It seems, by looking at the charts, that many more people who use a specific language want to use it again, compared with very low amounts of people wanting to try them. 

For example, 4% of developers would like to try Elixir, but 73% of people who actually use it like it enough to use it again. 

It is a very similar trend with databases. Less than 1% of developers want to try Datonic, but it's the second most loved database (70%), after only PostgreSQL. 

__What languages and tools do you like and why?__


Sources: 
* [2023 Stack Overflow Developer Survey](https://survey.stackoverflow.co/2023)
Raspberry 4 with SSD and nvme adapters performance
Tags: raspberrypi, nvme, ssd, nas
Published: 2023-11-20 22:46:37

Studying to create a NAS with raspberry pi4, it's not a reliable NAS but kind of backup of backup.

Since raspberry 4 has only USB3.0 this is our limit, but depends on the brand/chip of adapter the results are different.

The test to read used hdparm command and to write a dd command.
**Read**
`hdparm -tT /dev/sda
`
**Write**
` dd if=/dev/zero of=./TestingFile bs=100M count=10 oflag=direct status=progress
`
**Nvme + usb3.0 Orico / Realtek adapter**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pn8iybc2qlk4gkqvag85.png)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zro8mnccp5xsynqs7zok.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9hhkvjvt2ensrwbead1w.png)

**SSd + usb3.0 sata adapter Jmicron**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t5p4yaph8g9iq30fsw8u.png)

sucks 33 mb read and write on Jmicron chip

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ith1i6y2vn7kijlviroi.png)


**SSd + usb3.0 sata adapter ASmedia**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qcbq70070cys5snsfgt3.png)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vq7gboq6kxpvq4qtpqfc.png)

Not bad with usb3.0 and asmedia chip to sata.



Final Results


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lv5lcexsksftgsecs9b8.png)



From my opinion the better option is SSD SATA with asmedia chip, is good cost and benefit, nvme is good also but more expansive price.

In my case I have 4tb nvme for this test, but I'm waiting  the special case for raspberry pi that has the[ NVME adapter for raspberry pi  ](https://wiki.52pi.com/index.php?title=EP-0171) from 52pi that I hope that have a good chip like asmedia or realtek.
git diary
Tags: termux, blog, diary, git
Published: 2023-11-20 22:40:00

---
title: git diary
published: true
description: 
tags: termux,blog,diary,git
cover_image:
#Use a ratio of 100:42 for best results.

---
Recently, I've begun maintaining a personal diary on Termux on my smartphone, saving the entries through Git and pushing them to a repository.

While this might seem more challenging than using a typical blogging solution, I surprisingly find great enjoyment in creating a file titled with the command `touch "$(date +"%d_%m_%Y_%I_%M_%p")"`. This command generates a new file stamped with the current date and time, and I edit it using nano. Perhaps the allure of the terminal will never cease to captivate me.
I made a LogoQuiz for developers.
Tags: mobile, flutter, gamedev, showdev
Published: 2023-11-20 22:38:00

Hey everyone !
I just finished my first Flutter app. It's a logo quiz with tools and languages us developers use every day. I tried to make is as polished as possible. I would appreciate any feedback !

You get it on the [Play Store](https://play.google.com/store/apps/details?id=com.gamedevfr.quizdev&pli=1) or on the [AppStore](https://apps.apple.com/us/app/quiz-dev/id6468668076)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yhtn7jamm0smllan5kya.jpg)
Marketing Tips for Developers 💡
Tags: marketing, career, programming, tutorial
Published: 2023-11-20 21:46:13

## TL;DR

- I'm an experienced dev marketing leader
- I'm launching a new content series to show developers the marketing skills they can learn/improve to make them more successful
- You're invited to follow along and enjoy.

## Developers hate marketing.

Developers [hate marketing](https://www.heavybit.com/library/article/developer-marketing-mistakes). 

That's why there's so much content by dev marketers showing other dev marketers how to promote dev-centric stuff without annoying the technical audience in the process.

It's probably also why there's very _little_ such content for developers themselves, showing them how to improve and leverage their own marketing skills. After all, why in the world would a developer need to know anything about marketing?

But this is a misconception. 

Because like it or not, these days, we are all in marketing (yes - even you). 

A few quick examples that might sound familiar:

- Are you an open-source developer trying to get contributors for your new project? You'll need some marketing skills for that.
- Trying to make your portfolio/CV stand out so you can land a job? Here too, you'll need marketing.
- Want to publish more content and build some domain authority? Yep. Marketing.
- Want to grow and monetize your social presence? Maybe become a DevRel one day? You guessed it. Marketing. 

In my experience and IMHO, improved marketing skills will move the needle for virtually any developer at any level.

![Homer](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/206w9ddaaywmdd3eqjmw.gif)


## I show developers how to become good marketers.

For the past 2+ years, I've led go-to-market efforts at [Livecycle](https://livecycle.io/) - a dev-focused company solving the 'endless feedback loop' problem with tools that enable developers to share work instantly and collect feedback in context.

At this point, I have a ton of experience - not only in marketing to developers, but also in coaching developers on how to become natural marketers themselves.

The opportunities I've had to share relevant marketing insights, strategies, and tactics with the dev community have been so impactful that **I've decided to open it up to a wider audience through this content series - "Marketing for Developers".**

Some of the topics I'm planning to cover:
- Developing a personal brand
- Product launches for dev-oriented products
- How to increase traction for your open-source project
- How to grow and leverage your social media presence
- How to improve your content creation and distribution
- How to send cold emails to developers without getting hate mail in return
- And much more...

Feel free to follow me here. You can also [subscribe to the email list](https://devscandomarketing.substack.com/) and get more detailed and exclusive content about these topics. 

And if there are specific questions or topics you'd like me to address, please reach out or drop them in the comments below.
[Client] Auth with Next.js 14 & Supabase
Tags: webdev, javascript, nextjs, supabase
Published: 2023-11-20 21:11:51

If you have encountered problems setting up authentication with Next.js 14 and Supabase on the client side, this is probably the article you need to read.

To summarize: we want to use auth on Next.js 14 on the client side with Supabase. The new package @supabase/auth-helpers-nextjs offers us new methods to implement our authentication system.

However, after consulting Supabase Auth with the Next.js App Router written by Jon Meyers, I still couldn't implement the client-side solution. For some reason, middleware wouldn't catch my session.

I don't know if I was getting things mixed up, but after hours of research, after [reading Andrew Smith's comment on Stackoverflow](https://stackoverflow.com/questions/76910809/issues-with-authentication-and-session-handling-in-next-js-with-supabase) I managed to find the solution.

## Here's how to proceed:

1/ Only use @supabase/auth-helpers-nextjs & not @supabase/supabase-js

2/ Create a client to export with @supabase/auth-helpers-nextjs

```js
// @lib/supabase.ts

import { createClientComponentClient } from "@supabase/auth-helpers-nextjs";

export const supabase = createClientComponentClient()
```

3/ Use it everywhere (login example)

```js
// login.ts

...
const login = async () => {
    const { email, password } = data;
    try {
      setLoading(true);

      const { data, error } = await supabase
        .auth
        .signInWithPassword({
          email,
          password
        })
      
      if (error) return setError('Sorry impossible to login.');

      if (data) {
        const { user } = data
        const { access_token, refresh_token } = data.session
        await supabase.auth.setSession({
          access_token,
          refresh_token
        })
        setUser(user)
        router.refresh() // very important! we'll catch session on middleware
      }
      
    } catch (error: any) {
      throw new Error(error)
    } finally {
      setLoading(false);
    }
  }
...
```

4/ Setup a middleware:

```js

// middleware.ts

import { createMiddlewareClient } from "@supabase/auth-helpers-nextjs";
import { NextRequest, NextResponse } from "next/server";

export async function middleware(req: NextRequest) {
  const res = NextResponse.next()

  const supabase = createMiddlewareClient({ req, res })

  const {
    data: {
      session
    }
  } = await supabase.auth.getSession()

  if (!session) {
    return NextResponse.rewrite(new URL('/login', req.url))
  }

  return res
}

export const config = {
  matcher: [
    '/((?!api|_next/static|_next/image|favicon.ico).*)',
  ]
}
```

5/ You're good to go.

Guillaume Duhan

{% embed https://www.youtube.com/watch?v=8DTOTT7q0XA&t=13s&ab_channel=CodewithGuillaume %}
WHY AM I PIVOTING (CHANGING) REV25 TO A DIFFERENT SERVICE ?
Published: 2023-11-20 20:33:20

A few months ago, I wrote a few articles about rev25 .com, my website and the service it offered.

rev25 was a tool that reminded Linux programmers of the syntax of Linux. For example, if they want to remember what 'pwd' means, rev25 would remind them of it.

HOW I CAME UP WITH THE INITIAL IDEA
I was once scrolling through Twitter and  I saw a post by a linux user that said that he found it difficult to remember most linux commands, when he needed them.

I decided to look into that issue. I checked other Linux posts and saw similar complaints.

I decided to do something about that. I bought the domain (rev25 .com) and programmed a simple tool to solve this problem.

It took me about 3 days to the building and I spent the next few days talking about it on twitter.

I made rev25 so that if someone uses the tool, I would be automatically emailed about the question the user asked the machine and the answer the machine gave the user.

WHY I HAVE DECIDED TO CHANGE REV25 TO DO SOMETHING ELSE.

From the emails I received about my users, I noticed that a user tries the service and then doesn't come back.

From the questions users asked the tool, I noticed that they wanted the tool to write linux commands for them, rather than reminding them of linux commands.

This means that they expected the machine to replace them as humans, something the tool was not made to do.

Since this was the case, rev25 stopped getting linux users.

I also noticed from the beginning that, service to linux programmers was likely not going to become a full fledged business. 

The main reason rev25 is being changed to a different service (now it will become a tool to create CV/Resume ) is because Linux users wanted something different than what rev25 was offering them.
Navigating the Rapids: Managing Stress—Principles and Strategies for Health and Well-Being
Tags: webdev, beginners, productivity
Published: 2023-11-20 20:13:25


Introduction [(Approximately 60000 productin shop](https://amzn.to/40KWygy)):
In the chaotic rhythm of modern life, stress has become an inevitable companion for many. While stress is a natural response to challenges, its chronic presence can have detrimental effects on our health and well-being. This comprehensive exploration aims to unravel the principles of stress management, delving into the science of stress, its impact on various aspects of life, and practical strategies for fostering resilience and balance.

Understanding the Science of Stress [(Approximately 6000 product availeble)](https://amzn.to/40KWygy):
Stress, in its essence, is the body's response to perceived threats or challenges. Unravel the intricacies of the stress response, from the release of stress hormones like cortisol to the activation of the sympathetic nervous system. Explore the evolutionary purpose of stress and how, in the modern world, chronic stress can lead to a range of physical and mental health issues.

The Impact of Chronic Stress [(Approximately 4000 product in shop)](https://amzn.to/40KWygy):
Chronic stress is a silent assailant that can permeate every facet of our lives. Examine the physiological and psychological consequences of prolonged stress, including disrupted sleep patterns, weakened immune function, and heightened risk of mental health disorders. Explore the links between chronic stress and conditions such as cardiovascular diseases, diabetes, and autoimmune disorders.

Principles of Effective Stress Management [(Approximately 4000[](url)](https://amzn.to/40KWygy) product availeble):
Stress management is not about eliminating stressors but about developing adaptive strategies to cope with them. Uncover the foundational principles of effective stress management, from cultivating resilience and self-awareness to adopting a proactive mindset. Explore the role of positive psychology in shifting focus from stressors to strengths, fostering a more constructive approach to life's challenges.
There's a reason neurologist don't do open heart surgery.
Tags: beginners, codenewbie, productivity, career
Published: 2023-11-20 20:03:36

There’s a reason Neurologist don’t do open heart surgery.

The medical field is too large for any single doctor to know everything.

The technology field is the same way.

Being deliberate, choosing a path, and following thru with daily disciplined practice is a requirement for mastery in the technology field as well.

It’s easy to forget this lesson sometimes.

[Clean Code Studio](https://cleancode.studio)
SQL Magic with SQLite
Tags: tutorial, database, datascience, python
Published: 2023-11-20 19:37:25

**What is SQL magic?**

SQL magic is a technique that enables you to execute SQL queries directly within the Python environment. It provides a convenient way to interact with databases without switching between different tools or environments.

**Syntax**
To communicate with SQL Databases from within a JupyterLab notebook, you can use the SQL "magic" provided by the ipython-sql extension. "Magic" commands in JupyterLab start with "%". Below, we'll use the %load_ext sql magic to load the ipython-sql extension. In the lab environment provided in the course, the ipython-sql extension and the ibm_db_sa driver are already installed.

```
%load_ext sql
```
Here, we'll create and connect to a new SQLite database called SQLiteMagic. The syntax for connecting to SQL using SQLite is %sql sqlite://DatabaseName, where DatabaseName is your .db file.

```

%sql sqlite:///SQLiteMagic.db
```
For this blog, we'll consider the SQLite3 database.

```
import csv, sqlite3

con = sqlite3.connect("SQLiteMagic.db")
cur = con.cursor()

%load_ext sql
%sql sqlite:///SQLiteMagic.db
```
For convenience, %%sql (two %'s instead of one) at the top of a cell indicates that the entire cell should be treated as SQL. Let's use this to create a table and fill it with some test data.

```
%%sql

CREATE TABLE SPORT_ATHLETES (
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    nationality VARCHAR(50),
    sport VARCHAR(50)
);

INSERT INTO SPORT_ATHLETES (first_name, last_name, nationality, sport)
VALUES
('Michael', 'Phelps', 'USA', 'Swimming'),
('Usain', 'Bolt', 'Jamaica', 'Athletics'),
... (additional sample data)
```

**Using Python Variables in SQL Statements**

You can use Python variables in SQL statements by adding a ":" prefix to your Python variable names. For example, if you have a Python variable country with a value of "Canada", you can use it in a SQL query.

```
nationality = "Canada"
%sql SELECT * FROM SPORTS_ATHLETES WHERE nationality = :nationality
```
**Assigning Results to Python Variables**

You can use the normal Python assignment syntax to assign the results of your queries to Python variables.

**Converting Query Results to DataFrames**

Easily convert a SQL query result to a pandas DataFrame using the DataFrame() method. DataFrame objects are more versatile than SQL query result objects.

```
athletes_number = %sql SELECT COUNT(*) AS "Frequency" FROM SPORTS_ATHLETES GROUP BY nationality;
dataframe = athletes_number.DataFrame()
```

**Benefits of Using SQL Magic**

Using SQL magic offers several advantages:

- Integrated environment: Work with SQL and Python within the same environment, eliminating the need to switch between tools.
- Simplified workflow: It simplifies your data analysis workflow by making it easier to execute SQL queries directly within your Python code.
- Enhanced productivity: It can enhance your productivity by reducing the time and effort spent managing different tools and environments.
AWS Glue: Streamlining Data ETL in the Cloud
Published: 2023-11-20 19:15:19


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n8ogia0al3ns94zhrqor.jpeg)AWS Glue is a fully managed extract, transform, and load (ETL) service that eliminates the need for provisioning or managing servers. This serverless architecture allows users to focus on defining and managing their ETL jobs without the hassle of infrastructure maintenance. This results in increased agility and reduced operational overhead.

Data Catalog:
A central component of AWS Glue is the Data Catalog, which acts as a metadata repository for all available data sources. This catalog provides a unified view of the metadata, making it easier for users to discover, understand, and manage their data assets.

Dynamic ETL Script Generation:
AWS Glue employs a dynamic approach to ETL script generation. It automatically generates ETL scripts in Python or Scala based on the source and target schema definitions. This reduces the need for manual coding, accelerates development, and ensures consistency.

Data Transformation:
The service supports a variety of transformations, from simple ones like filtering and aggregating to more complex transformations. Users can leverage the built-in transformations or create custom ones using familiar programming languages like Python or Scala.

Data Crawlers:
AWS Glue includes crawlers that can automatically discover and catalog metadata from various data sources. This automated discovery simplifies the process of understanding the structure and schema of diverse datasets, including those stored in Amazon S3, Amazon RDS, and other supported sources.

Job Scheduling and Monitoring:
Users can schedule ETL jobs to run at specified intervals, ensuring that data is regularly updated. AWS Glue also provides comprehensive monitoring and logging capabilities, allowing users to track job execution, troubleshoot issues, and optimize performance.

Use Cases:

1. Data Warehousing:
AWS Glue is often used in conjunction with AWS's data warehousing solutions, such as Amazon Redshift. It streamlines the process of ingesting, transforming, and loading data into a data warehouse, providing a foundation for analytics and reporting.

2. Data Lake Management:
For organizations leveraging data lakes on Amazon S3, AWS Glue helps manage the ETL process seamlessly. It can handle large-scale data transformations, making it easier to derive valuable insights from raw, unstructured data.

3. Analytics and Business Intelligence:
With its ability to integrate with various analytics and BI tools, AWS Glue facilitates the preparation of data for analysis. This includes cleansing, transforming, and enriching data to ensure its suitability for reporting and visualization.

Pricing Model:

AWS Glue's pricing is based on the number of data processing units (DPUs) consumed by ETL jobs. Users pay for the resources consumed during the execution of ETL jobs, making it a cost-effective solution with pricing that scales based on usage.
What kind of website is needed for my business? Which steps should I follow?
Tags: businesswebsite, business, website, mrmijanjoy
Published: 2023-11-20 19:12:49

It mostly depends on your business goals, target audience, and the nature of your products or services. Here is a general guide to help you determine the kind of website you need and the steps to follow:

### Define Your Goals and Objectives:

- What is the purpose of your website? (e.g., e-commerce, informational, portfolio)

- Who is your target audience?

- What actions do you want visitors to take on your site?

### Choose a Domain Name and Hosting:

- Select a domain name that reflects your business.

- Choose a reliable web hosting provider.

### Select the Right Platform:

- Consider platforms like WordPress, Shopify, Wix, or Squarespace based on your needs.

- E-commerce businesses may prefer platforms like Shopify or Magento.

### Plan Your Website Structure:

- Outline the main pages and structure of your site (e.g., Home, About Us, Products/Services, Contact).

- Ensure a user-friendly navigation experience.

### Design Your Website:

- Choose a professional and responsive design.

- Consider the visual elements, color scheme, and branding.

### Develop Content:

- Create high-quality, engaging content that aligns with your brand.

- Include compelling images, videos, and other media.

### Implement SEO Strategies:

- Optimize your website for search engines to improve visibility.

- Use relevant keywords in your content and meta tags.

### Monitor and Update:

- Use analytics tools to track website performance.

- Regularly update content and make improvements based on feedback.

### Consider Security:

- Implement security measures to protect user data and your website.

### Compliance and Legalities:

- Ensure your website complies with relevant regulations (e.g., GDPR, ADA).

### Provide Contact Information:

- Include clear contact information for users to reach you.

If you're unsure about any aspect, consider consulting with professionals or agencies specializing in web development and design.

Here are some useful links:

I will design responsive SEO optimized pixel perfect website

You will get responsive SEO optimized pixel perfect website