teleren/devto huggingface dataset:
SemVer but with Extra Steps
Published: 2022-12-30 16:39:01

This is a variant of <a href="https://semver.org/">SemVer</a> which mostly meets all its rules, except for releases prior to 0.2.0, where we bend them slightly.

It is my intention to use this versioning system for all open source software I develop from 1 January 2023 onwards. Existing open source projects I manage will adopt this scheme from their next release onwards. (<a href="https://typetiny.toby.ink">Type::Tiny</a> already somewhat does.)


* Like with SemVer, versions have three parts: MAJOR, MINOR, and PATCH.
* Adopting a common pattern that many projects use (including Linux), versions with an odd-numbered MINOR part are considered unstable.
* During unstable development periods (i.e. odd-numbered minor versions), you can add new features, break backwards compatibility, etc as much as you like. This <em>would</em> violate SemVer, except...
* All unstable development releases must have a pre-release identifier such as <code>-dev</code> applied to them. SemVer explicitly states:<blockquote><p>"A pre-release version indicates that the version is unstable and might not satisfy the intended compatibility requirements as denoted by its associated normal version."</p></blockquote>
* As an exception, 0.1.x releases should not be assumed to have a stable API at all, and thus do not need <code>-dev</code> suffixes.
* At the end of an unstable development cycle, for example, 0.5.x versions, the developers should judge whether to release the next stable release as 0.6.0 or 1.0.0 based on how much it differs with the 0.4.x versions, as if the 0.5.x versions never happened.

## Example

* The first release of a project would be 0.1.0. This would be unstable.
* The next release of a project would be 0.1.1. This would also be unstable and could include breaking changes.
* Perhaps now there has been sufficient experimentation, so the next version would be 0.2.0 and would be considered stable.
* Version 0.2.1 might include bug fixes but no breaking changes.
* New features are desired, so 0.3.0-dev is released with a first draft of these features.</p></li>
* 0.3.1-dev, 0.3.2-dev, and 0.3.3-dev follow swiftly after.
* The new features are judged to be stable enough. The developers must then decide whether the next release will retain compatibility with 0.2.x (and thus be called 0.4.0) or break compatibility (and thus warrant a bump to 1.0.0).

## Decimal Variation

Although dotted version numbers like 1.2.3 are supported by most of the Perl toolchain, simple decimals with a single dot are more commonly used. So an interpretation of the above using simple decimals is desired. The MAJOR part of the version number translates to units, MINOR to thousandths, and PATCH to millionths. So version 1.2.3 becomes 1.002003.

In Perl it is also common to use an underscore in the version number to indicate an unstable release. For example version 1.3.2 might be 1.003_002.
How I Get FREE LinkedIn Premium For 6 Months AS a Collage Student
Tags: linkedin, career, resume, webdev
Published: 2022-12-30 16:36:22


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rzsayzlns3huvfij9bii.jpg)NOTE: Get FREE LinkedIn Premium For 6 Months For Students. LinkedIn provides its premium service for students free of charge. For students in India, They are offering a FREE 6-month LinkedIn Premium subscription but you will need your school ID and class schedule to claim/redeem the benefits. Verify you're a student at an eligible institution.

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

Students can get FREE LinkedIn Premium for 6 months by following these steps:

You can apply for the giveaway by [clicking here](https://members.linkedin.com/en-in/student/linkedin-premium)

To claim free products, follow these steps:

Would you like to receive your own personalized 6-month LinkedIn Premium subscription for free? 
Fill out our form to get started!
 
Before going any further, please verify that you are a current college student by following these steps:  
1. Request for Student Status | Enter your college/university name, name, DOB, and email address.
2. Click on Verify My Student Status to send your request.
3. Now you need to upload school documents as follows:  Any school-issued document that shows - Your full name, Your school, and the date proving enrollment for the current term (or within the last 3 months) You can upload - School ID card with the expiration date, Class schedule, or Tuition receipt The file must be .jpg, .jpeg, .png, .pdf, .gif or .bmp format Documents will be reviewed in half an hour by staff at SheerID.
4.LinkedIn uses SheerID as a trusted partner to verify that you are a current student. SheerID only collects information that assists in verifying your eligibility.

 Additional information or documentation may be requested. Now you are eligible to get 6 FREE months of LinkedIn Premium! Offer Validity: Get FREE LinkedIn Premium For 6 Months for Students deal is available for a limited

LinkedIn is a powerful professional social networking site that provides a rich and vibrant community for professionals to connect and share ideas, insights, and opportunities. An enhanced LinkedIn Premium Membership features with increased visibility through the use of advanced search capabilities on the most complete professional network on the web. Check out more of what [we can offer](https://dev.to/singh_in_cloud).
Luos monitoring and debugging tool
Tags: monitoring, opensource, devtool, luos
Published: 2022-12-30 16:30:00

As a developer, having bugs and resolving them is nothing out of the ordinary, but it takes up a lot of time!

To help you in your development journey, Luos provides monitoring and debugging mechanisms that can give you the opportunity of having clearer visibility of your network.

⏩Discover more [here](https://www.luos.io/docs/tools/monitoring)
Introduce • Fully Typed Tailwindcss
Published: 2022-12-30 16:23:43

**Halo `tailwind` & `Typescript` lovers!** 

Do you want to combine tailwind with typescript? Shortly, Fully typed classname for tailwindcss!

**Introducing the [tailwindest library](https://github.com/danpacho/tailwindest) that combines `tailwind` with `Typescript`!** 

With this package, you can enjoy both the **benefits of CSS in JS** and `tailwindcss`!

I'm really happy to think that developers will enjoy using it! 

Thank you for reading! Comments are always welcome👍
**Have a happy end of the year! And Happy coding!**
How to read data from Google Sheets using Sheetson
Published: 2022-12-30 15:32:58

## Introduction

To read data in Google Sheets you can use the Google API [Here](https://developers.google.com/sheets/api/guides/concepts) 

You can also use a service that simplifies our authentication work and is ideal for testing an APP: Sheetson, this service simplifies development work, especially Google authentication, which can be complicated and take a long time, so this service It is ideal for developing prototypes and testing quickly and effectively.

The service works as follows: it offers a free version that works well and a payment for 10 USD per month. I used the free version and it worked well for me.

## Description

To start, go to the website of the service [Sheetson] (https://sheetson.com) , register with your google account in the "Get Started" button under the free account.


![Get Started](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k9bib9mkjmeaa7r00jae.png)

Once you are registered, press the "go to console" button that is at the top right of the page.


![Console](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k4odb1nhvswp8hiatvwo.png)

Here you can see your name, your email and your API Key, you can also generate an API KEY for reading only.

Ready now you can see the page ”Examples” there you will find detailed examples in CURL and Javascript, for example to read data you can see the page: 

[Create Rows](https://docs.sheetson.com/manage-data/create-rows/)

![Doc create rows](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0m3h3pf50y60zgfzme60.png)

The examples are simple and well detailed so it won't take you long to understand the API.

In my case, I used it to make a GET API call and it connects to the Google Sheets spreadsheet with the information of the new users of my APP in SwiftUI that showed me the data correctly.

### Diagram:

![Diagram](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1gir9iynkgold9oz8z58.png)

### In my App:

![my App](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i1t7wzcvl0t0n97d8je5.jpg)

Well, I hope I have been motivated to use this service, since in my case it helped me to finish my prototype quickly and visualize the information in my app correctly.
How to run a code in editor in Atom IDE
Tags: ide, atom, screenshot, programming
Published: 2022-12-30 15:17:53

Hello, I need a little help from you. I have a Atom IDE and I have a problem with set a console or terminal to visible for me. That's a one problem for me. The second problem for me is compile a code. In connected files is my screenshot, that I take after little while and there is editor and my Python code what I need to compile and run in console or terminal, but I don't know how. I have a MacBook Air and newest Atom IDE, 2022. Thanks.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gzz42xzy31ozaaxjkfe1.png)
Singleton Design Pattern in Typescript
Tags: typescript, architecture, programming
Published: 2022-12-30 14:45:32

The **singleton** design pattern is a software design pattern that ensures that a class has only one instance and provides a global point of access to it. This is useful in situations where <mark>you need to ensure that a resource is shared among all the users</mark> of a system, or when you need to keep track of the global state for example ensuring that there is only one database connection in your application.

Here's an example of how to implement the singleton design pattern in TypeScript using a database connection class:

```typescript
class DatabaseConnection {
  private static instance: DatabaseConnection;

  private constructor() {}

  static getInstance(): DatabaseConnection {
    if (!DatabaseConnection.instance) {
      DatabaseConnection.instance = new DatabaseConnection();
    }
    return DatabaseConnection.instance;
  }
}
```

To use the singleton, you can call the `getInstance` method and store the returned instance in a variable. You can then use this variable to access the methods and properties of the singleton.

```typescript
const connection = DatabaseConnection.getInstance();
connection.runQuery('SELECT * FROM users');
```

The singleton design pattern can be useful in a variety of situations, such as creating a database connection, managing global configuration, logging messages, or caching data. By using the singleton design pattern, you can ensure that your application is efficient, maintainable, and easy to use.

---

Get the latest in tech with [HackerTab](https://hackertab.dev)! Our browser extension helps you stay up-to-date with the latest development news, tools, and events. Try it out today!
How I set up eslint in my projects
Tags: webdev, nuxt3, eslint, prettier
Published: 2023-01-08 15:03:46

---
title: How I set up eslint in my projects
published: true
date: 2022-12-30 14:34:57 UTC
canonical_url: https://blog.rrrm.co.uk/post/how-i-set-up-eslint-in-my-projects
tags: webdev,nuxt3,eslint,prettier
---

### Set up eslint and prettier in Nuxt

Create a project 
```bash
npx nuxi init nuxt-lint
```

install the dependencies after project is created

```bash
npm install
```

Now let’s install some eslint packages

Add the following packages

```bash
npm i -D vue-tsc typescript prettier eslint-plugin-prettier eslint-config-prettier eslint @nuxtjs/eslint-config-typescript
```

Create `.eslintrc.js` file

```js
module.exports = {
 root: true,
 env: {
   browser: true,
   es2022: true,
   node: true,
 },
 extends: ["@nuxtjs/eslint-config-typescript", "plugin:prettier/recommended"],
 parserOptions: {
   ecmaVersion: "latest",
   sourceType: "module",
 },
 rules: {},
};
```

Create ` .prettierrc` file
```json
{
 "trailingComma": "es5",
 "singleQuote": true,
 "allowParens": "always",
 "printWidth": 100,
 "endOfLine": "auto"
}
```

Now I just need to tell the IDE to lint file on save. I use one of the JetBrains IDE's.

Open `settings -> tools -> File Watchers` click on the + icon on the top right and select custom

![jetbrain ide adding new file watchers](https://sli1n332.directus.app/assets/c068a73f-8547-4b31-86e7-7bc73e38ccc9)

current settings for the following fields: 

- File type: `Vue template`
- Programs:  `$ProjectFileDir$\node_modules\.bin\prettier`
- Arguments: ` --write $FilePathRelativeToProjectRoot$`
- Output paths to refresh: `$FilePathRelativeToProjectRoot$`

that should be it. we can now create duplicates of this for each language you need to change the `file type` and select a language you want to lint e.g.  JavaScript, TypeScript. make sure you select the level to global, this will then be available for all other projects. You will still have to enable them for each project

![duplicating file watchers](https://sli1n332.directus.app/assets/a42e410f-b6d2-42e4-ab42-331f3209e92e)
How Blogging Can Boost Your Career as a Developer
Tags: career, productivity, community
Published: 2022-12-30 14:31:26

# Introduction
Ah, blogging - that old but surprisingly helpful pastime. If you're a developer, blogging can be an incredibly rewarding activity. It can help you hone your skills and learn new technologies and also allow you to make some extra passive income! So, let's get to it! In this article, we'll cover the many benefits of blogging for developers and provide tips for getting started.

# Benefits of Blogging for Developers
Developers have a lot to gain by blogging. Here are some of the key benefits you can experience:

## Enhancing Your Skills and Knowledge
One of the most significant advantages of blogging as a developer is that it can help you hone your skills and learn new technologies. That's because blogging is a great way to stay up to date with industry trends, network with other professionals, and get a better understanding of what's going on in the tech world.

Furthermore, you can expand your knowledge base and become an expert by writing about technology topics. This can help you stand out from the crowd and make you a more attractive hire for employers.

## Increasing Visibility and Credibility
Blogging is also great for increasing your visibility and credibility in the tech community. By creating a portfolio of work that showcases your abilities, you can prove to potential employers or clients that you know what you're doing.

Additionally, you can make yourself known to a larger audience by connecting with other professionals and industry experts. This can lead to exciting opportunities you otherwise wouldn't have access to.

## Generating Passive Income Opportunities
Finally, blogging can be a great way to generate passive income. You can create monetized content, leverage affiliate marketing opportunities, and even build an audience to market your content. This can be a great way to make some money on the side.

# Tips for Getting Started with Blogging as a Developer
Now that you know the benefits of blogging for developers, here are some tips for getting started:

Decide on a topic and create a plan for your blog posts.

Choose the right platform for hosting your blog and decide on the design elements you want to include.

Promote your blog posts on social media platforms and other channels to reach more people.

Make sure you are consistent in creating content and engaging with readers.

Use SEO tactics to help your blog posts rank higher in search engine results pages.

Track your progress by measuring key metrics such as page views, time spent on the page, etc., so you can adjust your strategy accordingly.

Leverage guest blogging opportunities to increase your reach and establish yourself as an authority in the field.

# Conclusion
As you can see, blogging can be an excellent way for developers to enhance their skills, increase their visibility and credibility, and even make some extra money. So, get those creative juices flowing and start blogging today! With the right strategy and commitment, you, too, can start blogging and see the benefits for yourself.
View (Markdown) Source button on DEV
Tags: productivity, discuss, beginners, dev
Published: 2022-12-30 14:23:14

---
title: View (Markdown) Source button on DEV
published: true
description: Having a view-source button on DEV could help learning how to use Markdown on this site
tags: productivity, discuss, beginners, dev
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2022-12-29 21:13 +0000
---

One of the best ways to learn anything is to be able to look at the source code. Browsers provide an easy way to see the HTML source code of a web site.

I think it would be nice to have a button (maybe behind the ... on each article and each comment) that you could click and see the Markdown source of it.

For example I'd like to be able to see how the **table of contents** was added to [this article](https://dev.to/matusstafura/introduction-to-singly-linked-list-and-basic-operations-in-php-1d71).

I think this would be a nice way to help people improve their knowledge of Markdown
Solidity: The Go-To Language for Writing Smart Contracts
Published: 2022-12-30 14:16:16



A smart contract is a self-executing contract in which the terms and conditions between a two parties are written directly in lines of code. These contracts are stored on the blockchain, making them secure, transparent and immutable.

One of the most popular programming languages ​​for writing smart contracts is Solidity. Developed by the Ethereum Project, Solidity is a statically typed high-level language specifically designed for writing smart contracts that run on the Ethereum Virtual Machine (EVM).

Solidity is considered the programming language of choice for smart contracts for several reasons.


Solidity was developed specifically for EVM. EVM is a virtual machine that runs smart contracts on the Ethereum blockchain. It has its own instruction set, data types, and gas model, which sets it apart from other virtual machines and programming languages. Solidity was specifically designed to be EVM compatible, making it the best choice for creating smart contracts that run on the Ethereum blockchain.

## Solidity is easy to learn and use.

Solidity is a high-level language that is easy for developers new to blockchain and smart contracts to learn and use. It has a simple syntax and supports a variety of programming constructs such as functions, loops, and if-else statements, making it familiar and intuitive to developers with experience in other programming languages.

Here is an example of a simple Solidity contract that stores a value on the blockchain:

```
pragma solidity ^0.6.0;

contract SimpleStorage {
    uint256 public storedData;

    function set(uint256 x) public {
        storedData = x;
    }

    function get() public view returns (uint256) {
        return storedData;
    }
}
```

## Solidity has a large and active community.

Solidity has a large and active community of developers and users who contribute to the development of the language and use it to build decentralized applications (DApps). This community provides a wealth of resources such as documentation, tutorials, and code samples to help developers learn and use his Solidity.

## Solidity is widely used and tested.

Robustness is widespread and tried and tested. Solidity is the most widely used programming language for creating smart contracts on the Ethereum blockchain. It has been thoroughly tested and deployed in various real-world applications such as decentralized exchanges, prediction markets, and supply chain management systems. This extensive use and testing makes Solidity a reliable and proven choice for creating smart contracts.

In summary, Solidity is the programming language of choice for smart contracts due to its compatibility with EVM, ease of use, large and active community, and wide usage and testing. If you want to build smart contracts or DApps on the Ethereum blockchain, Solidity is the language to use.
Want to Search Inside Videos Like a Pro? CLIP-as-service Can Help
Tags: clipasservice, video, search, database
Published: 2022-12-30 14:14:37

Wouldn’t it be great if you could search through a video the way you search through a text?

Imagine opening a digitized film, just hitting ctrl-f and typing “Santa”, then getting all the parts of the video with Santa Claus in it. Or just going to the command line and using the grep command:


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

Normally, this would be impossible, or only possible if you had gone through the film and carefully labeled all the parts with a Santa in them already. But with Jina AI and CLIP-as-service, you can create a video grep command for MP4 film with just a few Python functions and a standard computer setup. There is no need for a GPU and no complex AI tech stack to install, just off-the-shelf and open-source Python libraries, with Jina AI Cloud doing all the heavy lifting.

This has immediate applications for anyone who has video data: film archivists, stock image vendors, news photographers, or even regular people who just keep videos from their cellphones around and post them to social media.


## Preliminaries
You need Python 3, and you might want to create a new virtual environment before starting. Then, install a few components at the command line with pip:


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

This installs:

- Jina AI’s [DocArray library](https://docarray.jina.ai/)

- Jina AI’s [CLIP-as-service](https://clip-as-service.jina.ai/) client

<u>If you want to learn more how imagine an #AI-powered grep command, one that could process a film and find segments matching a text. With Jina AI's CLIP-as-service, you can rea more [here](https://jina.ai/news/?utm_campaign=jina-news&utm_source=dev.to&utm_medium=post)</u>
SQL or NoSQL
Tags: sql, nosql
Published: 2022-12-30 14:11:48

BIG DATA ANALYSIS: SQL Or NoSQL?
What exactly is SQL?
SQL is an abbreviation for Structured Query Language. SQL allows you to access and manage databases. It was adopted as an American National Standards Institute (ANSI) standard in 1986 and as an International Organization for Standardization (ISO) standard in 1987.

What Does SQL Have to Offer?
SQL can run queries against databases.
SQL may get information from a database.
SQL may enter data into a database.
SQL may be used to update database records.
SQL has the ability to delete records from a database.
SQL has the ability to build new databases.
SQL may add additional tables to a database.
SQL may be used to build stored procedures in a database.
SQL may generate database views.
SQL may grant access to tables, procedures, and views.
 

To be ANSI compatible, they must all support at least the major commands such as:
(SELECT, UPDATE, DELETE, INSERT, WHERE)

**Considerations when choosing a SQL or NoSQL database:**

1. Structure of data:
The first and most important consideration in deciding between SQL and NoSQL is the nature of your data.

2. Data querying ability:
The second thing to think about is how frequently you’ll query your data, how rapidly you need to perform queries, and who will be in charge of conducting these queries.

3. Scaling:
SQL and NoSQL databases scale differently, so you’ll need to consider how your data set will expand in the future.

_**[Zenkoders](https://zenkoders.com/)**_ provides their clients with the best requirements for whether the usage of SQL is required in the database or not, to lessen the burden on their potential customers.