teleren/devto huggingface dataset:
Weird Follower Spike on Dev.to
Tags: discuss, writing, devjournal, meta
Published: 2023-05-12 05:00:16

Yesterday I got an email from dev.to covering a significant spike in my followers:

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

I typically get a few subscribers every day but this is a big jump. I chucked it up to "I'm probably doing something right" and moved on. Today I got an email with even more subscribers. 

I'm not the type of person to let things go. That's important in our profession. I need to know why subscription is up? What happened?

First place I went is the dev.to dashboard and indeed followers are rising. Today there's a slope but it could be because of the hour of the day:

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

So did I write something compelling this week that caused it?

No:

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

In fact, if we look at these statistics for the past month this spike makes even less sense:

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

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

I blog on other platforms too and I checked my socials. It doesn't seem that this spike is correlated in other platforms. My only guess is that someone featured my account and asked people to subscribe but it's hard to find the source of that.

Looking at the traffic sources in the analytics dashboard I can't see a specific reason. Curious if other dev.to bloggers experienced something similar or have an idea?
How To Use OpenAI(chatGPT) As a Javascript developer
Tags: javascript, chatgpt, chatbot, webdev
Published: 2023-05-12 04:31:29

As a JavaScript developer, you can use OpenAI by integrating its natural language processing capabilities into your applications using the OpenAI GPT-3 SDK. This SDK allows you to access OpenAI's state-of-the-art language model and use its capabilities in your JavaScript applications.
To use OpenAI as a JavaScript developer, you will need to create an account on OpenAI and obtain an API key(https://beta.openai.com/docs/quickstart). You can then install the OpenAI GPT-3 SDK using npm, the package manager for JavaScript, by running the following command:

`npm install openai-gpt-3`

Once the SDK is installed, you can import it into your JavaScript code and use it to access OpenAI's language model. For example, you could use the following code to generate text using OpenAI:

```
const openai = require('openai-gpt-3');

// Set the API key for accessing OpenAI
openai.apiKey = '<your-api-key>';

// Generate text using OpenAI
openai.text(
  {
    model: 'text-davinci-002', // The name of the OpenAI model to use
    prompt: 'Hello, how are you?', // The prompt or context for the generated text
    maxTokens: 100, // The maximum number of tokens (words or phrases) to generate
    n: 1, // The number of text samples to generate
  },
  (err, response) => {
    if (err) {
      console.error(err);
    } else {
      // Print the generated text
      console.log(response.data[0].text);
    }
  }
);

```
This code uses the OpenAI GPT-3 SDK to generate text based on the given prompt, using the "text-davinci-002" model. The generated text is then printed to the console.
Overall, using OpenAI as a JavaScript developer can help you add natural language processing capabilities to your applications, making them more user-friendly and powerful.
일 잘 하는 사람은 어떻게 알 수 있나
Tags: 일, performance, contribution, work
Published: 2023-05-12 04:20:21

일이라는 정의는 넓고 깊지만 일반적으로 개인의 산출물과 협업 관점에서 볼 수 있다. 협업은 두 말 할 것 없이 같이 해 봐야 아는 것이지만, 개인의 산출물 또한 혼자만 판다고 평가할 수 있는 영역이 아니다. 이유는, 개인의 산출물이란, 혼자 문제 정의하고 기획하고 솔루션/산출물을 만들기란 현실세계에서 매우 희박한 일이기 때문이다. 대부분, 프리랜서로 일해도, 팀으로 일하거나 조직에 속해서 일하게 되면 클라이언트나 동료, 조직의 맥락 안에서 개인의 산출물 기대치와 모습, 형채, 내용이 달라지게 되기 때문이다. 

2-3년 전까지만 해도, SNS에서 활동 많이 하고 큰 전문성이 있어보이는, 네트워크 넓고 인지도가 높은 분들은 '해당 분야에서 당연히 일을 잘 하겠지'라고 착각했었다. 여기서 착각한 부분은 '당연히'의 부분이었다. 업계, SNS에서 유명세를 타는 것이 일을 잘 해 왔던 여러 이력과 레퍼런스들 때문일 수도 있지만, 그렇지 않을 수 있다는 것도 알게 되었다. 각 사람의 화려한 배경과 백그라운드, 각 분야 아젠다에 대한 코멘트들을 자주 공유하는 것이 높은 업무 퍼포먼스를 보장하진 않더라.

업무 퍼포먼스와 별개로, 조직 기여도 측면에서 보면, 조직 안에서 매우 어렵고 중요한 일을 열심히 동료들과 집중해서 풀어야 하는 지식노동자들이 하루 24시간이 정해져 있는데 외부 활동을 그렇게 활발하게 하는 것에 대해 솔직히 앞뒤가 맞지 않기도 하다. (모든 외부 활동하는 분들이 그렇다는 건 아니지만)

그렇다고 이런 요소들에 대해 편견화 하고 판단하려 하진 않는다. 그래서 유일하게 일 잘 하시는지 알 수 있는 방법은 함께 작게라도 일을 해 보는 경험을 가져보는 것이 유일하다 생각한다. 더욱이, 매우 적은 확률로 보편적으로 일을 잘 하는 사람이, 나와 우리 조직에 맞지 않기 때문일 수도 있기 때문에 '일 잘함'의 더 정확한 표현은 '나와 우리 조직의 맥락에서 높은 퍼포먼스와 기여도를 보여줄 수 있는가'이겠다. 

이런 맥락에서, 본격적으로 같이 일하는 것에 대해 본격적으로 이야기하거나, 얼굴 마주 보기 직전까지 이메일, 대화(chat)등이 어떻게 이루어지는지 상호작용 데이터를 기반한 예측은 꽤나 유의미한 참고 자료가 된다. 같은 배경에서 상대방 역시, 커피타임, 면접 자리뿐 아니라 그 자리가 만들어지기 전까지 모든 대화 내용과 분위기에서 평가하고 판단할 수 있다.
iphey.com - Lalicat Antidetect Browser Fingerprint Test
Tags: iphey, ipheycom, lalicat, browserfingerprint
Published: 2023-05-12 03:32:06

{% embed https://youtu.be/i_ikfV9GlTQ %}
**[IPHey](https://youtu.be/i_ikfV9GlTQ)** is a website of online tools that can detect various information leaks on browsers and computers, including the following:

IP Address: Display your current IP address and location information.

Browser fingerprint: Display information such as browser version, operating system, screen resolution, installed plug-ins and fonts, which can be used to identify users.

WebRTC: Displays the local and public IP addresses of WebRTC, and whether a STUN/TURN server is enabled.

DNS: Displays the IP address and response time of the DNS server.

HTTP Header: Displays the HTTP header information sent by the browser, including user agent, referrer, cookie and other information.

WebSockets: Test whether the browser supports the WebSocket protocol.

Proxy detection: Test whether a proxy server is used, and display the IP address and port number of the proxy server.

Test for DNS Pollution: Test if DNS is polluted and if DNS queries are being redirected to the wrong IP address.
How to easily install Laravel on Ubuntu
Published: 2023-05-12 03:30:31

Here's a step-by-step guide to installing Laravel on Ubuntu:

**Step 1:** Install PHP: Laravel is a PHP framework, so you need to have PHP installed on your Ubuntu system. To install PHP, open a terminal window and run the following command:

"sudo apt-get install php"

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

**Step 2:** Install Composer: Laravel uses Composer, a package manager for PHP, to manage its dependencies. To install Composer, run the following commands in your terminal:

"curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer"

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

**Step 3:** Install Laravel: Once you have PHP and Composer installed, you can use Composer to install Laravel. Run the following command in your terminal:

"composer global require laravel/installer"

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

**Step 4:** Add Laravel to your PATH: To use the laravel command globally, you need to add it to your system's PATH. Open the ~/.bashrc file using your preferred text editor and add the following line at the end of the file:

"export PATH="$PATH:$HOME/.config/composer/vendor/bin"

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

**Step 5:** Save and close the file. To activate the changes, run the following command:

"source ~/.bashrc"

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

**Step 6:** Create a new Laravel project: Now that you have installed Laravel, you can create a new Laravel project by running the following command:

"laravel new project-name"

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

That's it! You have successfully installed Laravel on your Ubuntu system and created a new Laravel project.
pixelscan.net - Lalicat Antidetect Browser Fingerprint Test
Tags: pixelscan, pixelscannet, lalicat, antifingerprintbrowser
Published: 2023-05-12 03:30:16

{% embed https://youtu.be/qsf-VHhdmeQ %}
**[PixelScan](https://youtu.be/qsf-VHhdmeQ)** can detect the following browser fingerprinting parameters:

User Agent: This is a string containing browser, operating system, and device information that can be used to identify a user.

HTTP Accept Headers: These headers contain content types and encodings acceptable to the browser, and can also be used to identify users.

Browser Plugins: These plugins can be used to detect whether a user has installed specific browser plugins, such as Flash and Java.

Fonts: The browser can detect the fonts installed in the user's system, and these fonts can be used to identify the user.

WebRTC: WebRTC is a browser technology that can be used for real-time communication and file sharing, and can detect the browser's IP address and network configuration.

Canvas Fingerprint: Canvas Fingerprint is a technique that leverages browser support for HTML5 Canvas to generate a unique browser fingerprint.

WebGL Fingerprint: WebGL Fingerprint is a technology that can take advantage of browser support for WebGL to generate a unique browser fingerprint.
CreepJS - Lalicat Antidetect Browser Fingerprint Test
Tags: creepjs, lalicat, antidetectbrowser, abrahamjuliot
Published: 2023-05-12 03:26:52

{% embed https://youtu.be/MmXanKLemPc %}
**[CreepJS](https://youtu.be/MmXanKLemPc)** is an open source JavaScript library that can be used to detect and obtain various parameters and fingerprint information of browsers. Here are some browser parameters that CreepJS can detect:

User-Agent: contains browser, operating system and device information, which can be used to identify users.

Language Environment: The browser can detect the user's language settings, including preferred and alternate languages.

Browser Plugins: It can detect whether the user has installed specific browser plugins, such as Flash and Java.

Screen Resolution: It can detect the user's screen resolution and zoom ratio to determine the physical size of the display.

Time zone: It can detect the time zone where the user is located to determine the user's geographical location.

Target Object: The target object that can detect the user's last click or touch event on the page.

Browser Fingerprint: A unique browser fingerprint can be generated, which is composed of multiple parameters and information, and is used to identify and track users.

CreepJS can collect this information through JavaScript code and generate browser fingerprints. This information can be used to identify and track users, so if you wish to protect your privacy, you can use browser plug-ins or other tools to mask this information.
New Way To Write Transform Properties In CSS 🙌
Tags: css, html
Published: 2023-05-12 02:44:00

A few days ago, Google held its annual event to introduce the latest updates on its products, Google I/O 23. There were many cool things announced, but one of my favorites was the individual transform property in CSS.

## What is Individual Transform Property?
In CSS you can add movement to your component by adding transformation. Such as translation, rotation, scalling, etc. And usually you write transform property in CSS like this:

```
div{
  height: 60px;
  width: 60px;
  background-color: green;
  transform: translate(50%, 70%) rotate(30deg) scale(1.2);
}
```

But with Individual transform property, you can specify transform properties individually, like this:

```
div{
  height: 60px;
  width: 60px;
  background-color: green;
  translate: 50% 70%;
  rotate: 30deg;
  scale: 1.2
}
```

This individual transform property will come in handy when you're writing a complex keyframe, like making animation. As an example, you want to make animation that translate on 0% and 100%, and rotate the element from 25% to 85%. In the past, you have to calculate manually value for that 2 transformation at the different keyframe points. 
The code will be look like this:

```
div{
  height: 60px;
  width: 60px;
  background-color: green;
  animation: anima 5s linear 2s infinite;
}

@keyframes anima{
  0%{ transform: translateX(0);}
  10%{ transform: translateX(10%) rotate(72deg);}
  25%{ transform: translateX(25%) rotate(90deg);}
  85%{ transform: translateX(85%) rotate(180deg);}
  95%{ transform: translateX(90%) rotate(240deg);}
  100%{ transform: translateX(100%) rotate(360deg);}
}
```
But with individual transfrom property, you don't need to calculate in between points. Just simply write values for individual property.

```
div{
  height: 60px;
  width: 60px;
  background-color: green;
  animation: anima 5s linear 2s infinite;
}

@keyframes anima{
  0% {rotate: 0;}
  25%, 85% {rotate: 180deg;}
  100% { rotate: 360deg;}
  
  0% {translate: 0 0;}
  100% { translate: 100% 0;}
}
```

As you can see, the code much easier to read and manage if you want to add more transformation. But you need to know that is individual transform property is only support on browser like:

- Chrome: version 104 (and above)
- Microsoft Edge: version 104 (and above)
- Mozilla Firefox: Version 72 (and above)
- Safari: Version 14.1 (and above)

Although it is currently only supported on the latest versions of popular browsers, it is an exciting development that will undoubtedly streamline the process of web design. 

Happy Coding, And Stay Creative
Lalicat Antidetect Browser for Multi-accounting
Tags: lalicat, antidetectbrowser, multilogin, virtualbrowser
Published: 2023-05-12 02:36:46

1. Google  {% embed https://www.youtube.com/watch?v=eTRxwtUoDDY %}
2. Youtube {% embed https://www.youtube.com/watch?v=aHywRmm_q54 %}
3. Gmail  {% embed https://www.youtube.com/watch?v=jhpzCXBJE-k %}
4. Google Ads  {% embed https://www.youtube.com/watch?v=StUta10mYrk %}
5. Google Adsense {% embed https://www.youtube.com/watch?v=wrG6BZVVkLk %}	
6. Google Drive  {% embed https://www.youtube.com/watch?v=bEYALZ9onGk %}
7. Pinterest  {% embed https://www.youtube.com/watch?v=zCCNqmIm_IA %}
8. Facebook  {% embed https://www.youtube.com/watch?v=_aJX92_-UNk %}
9. Twitter  {% embed https://www.youtube.com/watch?v=ZHusccE8oHA %}
10. Instagram  {% embed https://www.youtube.com/watch?v=7DDX4HAJsPU %}
11. Tinder  {% embed https://www.youtube.com/watch?v=H0VHN1UJxFA %}
12. Reddit  {% embed https://www.youtube.com/watch?v=x1nNXbYeZcc %}
13. Tumblr  {% embed https://www.youtube.com/watch?v=wtgJQlP-NH8 %}
14. Discord  {% embed https://www.youtube.com/watch?v=rgOwfzEOFlc %}
15. Tiktok  {% embed https://www.youtube.com/watch?v=KSbJ0UaXCHU %}
16. Rumble  {% embed https://www.youtube.com/watch?v=LA5Czsfxec4 %}
17. Quora  {% embed https://www.youtube.com/watch?v=qZfOMcT6JL4 %}
18. Amazon without phone number{% embed https://www.youtube.com/watch?v=fEqvQAyyEeM %}
19. Amazon with phone number{% embed https://www.youtube.com/watch?v=FszqEKNkmos %}
20. Walmart  {% embed https://www.youtube.com/watch?v=Q0qBnn5miqE %}
21. Wish  {% embed https://www.youtube.com/watch?v=vPrruPbh03M %}
22. Shopee  {% embed https://www.youtube.com/watch?v=zAGwQC7M6Dw %}
23. Etsy  {% embed https://www.youtube.com/watch?v=jG8AZlkmunw %}
24. eBay  {% embed https://www.youtube.com/watch?v=gUWE_BVQhTY %}
25. AliExpress  {% embed https://www.youtube.com/watch?v=CoR4OZRdqq4 %}
26. Target  {% embed https://www.youtube.com/watch?v=ybOqHZqChI8 %}
27. Nike  {% embed https://www.youtube.com/watch?v=xtqB7tOEX14 %}
28. Outlook  {% embed https://www.youtube.com/watch?v=7LSGOLjuHAU %}
29. Proton Mail  {% embed https://www.youtube.com/watch?v=z5wCLfjeKFA %}
30. Crunchyroll  {% embed https://www.youtube.com/watch?v=urNP7OBKfwk %}
31. Roblox  {% embed https://www.youtube.com/watch?v=6AqKTgEvPjQ %}
32. Blizzard  {% embed https://www.youtube.com/watch?v=QPwYIvg9fqY %}
33. Steam  {% embed https://www.youtube.com/watch?v=4LwcJAgUnMI %}
34. EA  {% embed https://www.youtube.com/watch?v=cge_ay-5hFA %}
35. Terraform  {% embed https://www.youtube.com/watch?v=dDauoGXk0j0 %}
36. Stripe  {% embed https://www.youtube.com/watch?v=31muxjEDzNU %}
37. MetaMask  {% embed https://www.youtube.com/watch?v=zJ1mHEHlD5s %}
38. Webex  {% embed https://www.youtube.com/watch?v=QtzUnmVzEXA %}
39. Dropbox  {% embed https://www.youtube.com/watch?v=6BGXg452AWY %}
40. Todoist  {% embed https://www.youtube.com/watch?v=P5rQwN_dVCU %}
Squarewebsites.org - Squarespace plugins
Tags: plugins, saas, cloud
Published: 2023-05-12 02:33:30

At Squarewebsites, we're experts in building powerful plugins to enhance your Squarespace website.

Our plugins are beautiful, easy to install, and don’t require coding knowledge - except for the Universal Filter plugin, which requires basic code understanding.

If you ever encounter any issues with our plugins, don't hesitate to contact our product experts. We're always here to help and just an email away.

[https://www.squarewebsites.org](https://www.squarewebsites.org)
Konfigurasi DNS pada Slave Part 2
Tags: pens, jaringan
Published: 2023-05-12 02:21:21

Ini merupakan lanjutan dari konfigurasi DNS pada minggu sebelumnya.

1. Yang pertama dilakukan adalah menambah `allow-transfer` pada zone di file **named.conf.local**

![named.conf.local](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1u08dhu677y815r47fdy.png)

2. Kemudian tambahkan juga forwarder dari IP DNS di **/var/cache/bind9/**


![/var/cache/bind9/](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8bq7zzog6iaax0yz2e8k.png)

3. Langkah berikutnya restart service bind9


![Restart Bind9](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/40fams9vtp9kx55tapjt.png)

4. Konfigurasi pada apache agar bisa diakses 

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


Berikut hasil akhirnya 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6k5kkj08prncxreiehsh.png)
Konfigurasi DNS pada Slave
Tags: pens, jaringan
Published: 2023-05-12 02:19:33

Ini merupakan lanjutan dari konfigurasi DNS pada minggu sebelumnya.

1. Yang pertama dilakukan adalah menambah `allow-transfer` pada zone di file **named.conf.local**

![named.conf.local](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1u08dhu677y815r47fdy.png)

2. Kemudian tambahkan juga forwarder dari IP DNS di **/var/cache/bind9/**


![/var/cache/bind9/](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8bq7zzog6iaax0yz2e8k.png)

3. Langkah berikutnya restart service bind9


![Restart Bind9](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/40fams9vtp9kx55tapjt.png)

4. Konfigurasi pada apache agar bisa diakses 

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


Berikut hasil akhirnya 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6k5kkj08prncxreiehsh.png)
6 Tips for staying healthy as a Software Developer
Tags: beginners, devjournal, programming, softwaredevelopment
Published: 2023-05-12 02:03:00

6 Tips for staying healthy as a Software Developer in 2023:

1. Take regular breaks

2. Stay hydrated

3. Get regular exercise

4. Manage your posture

5. Learn to deal with stress

6. Avoid working long hours


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


Thanks for reading this.

If you have an idea and want to build your product around it, schedule a call with [me](https://calendly.com/pragyanatvade).

If you want to learn more about DevOps and Backend space, [follow me](https://dev.to/pragyanatvade).

If you want to connect, reach out to me on [Twitter](https://twitter.com/pragyanatvade) and [LinkedIn](https://www.linkedin.com/in/pragyanatvade/).
CentOS 7 裝 mycli
Tags: centos, mycli, mysql, mariadb
Published: 2023-05-12 00:18:08

## pip

因為本人的某種對新版的偏執的愛好，就是想用 Python 3，可是卻又找不到 python3-pip 這個包，故有以下解。

裝 Python 3：

```sh
$ sudo yum install python
```

然後參考一下 [Recommended way to install pip(3) on centos7](https://stackoverflow.com/questions/50408941/recommended-way-to-install-pip3-on-centos7/52518512#52518512) 這篇：

```sh
$ sudo python36 -m ensurepip
```

有興趣可以自己去調查一下 `ensurepip` 的由來。

這樣就有 pip 了！（撒花）

再用 pip 把它自己更新一下：

```sh
$ sudo -H pip3 install --upgrade pip
```

## mycli

mycli 有多種安裝途徑，做為全域工具，比較建議的裝法是透過 pipx。

所以話鋒一轉，我們要先搞定 pipx。

一行安裝：

```sh
$ python3 -m pip install --user pipx
```

把 `pipx` 加到 `PATH`：

```sh
$ python3 -m pipx ensurepath
```

因為改了 `PATH` 環境變數，要重新登入。

重新登入完應該就可以用了。

用 pipx 裝 mycli：

```sh
$ pipx install mycli
```

一行就裝完囉！

```sh
$ mycli -u root
```

可以連入應該就是沒問題。
Markdown is here!
Published: 2023-05-12 18:26:41

---
title: Markdown is here!
published: true
date: 2023-05-12 00:00:00 UTC
tags: 
canonical_url: https://blog.brainstory.ai/markdown/
---
>Smells like updog. What's updog? Just the opposite of markdown.

Engineers love to code. What feels like coding when you’re writing? Markdown. That’s why we’re excited to announce we now support markdown!

![Video of markdown demo](https://contenda.co/blogimages/markdown.gif)

## So how does it work?

Text boxes support basic syntax such as bolding, italics, lists, links, and code. The headers and images use markdown syntax by default as well. We don’t currently support extended syntax options such as tables, footnotes, subscript/superscript, or strikethrough. If you have a use case for extended syntax, let us know!

## Why did you do this?

1. Ease of publication (Most CMS’s support markdown as an import)
2. Ease of automation (Lots of AI tools can ingest markdown as a input type)
3. Images come included, without fuss (We host the images and link everything up for you)

## That’s it!

If you’d like to learn more, please feel free [to reach out to our team on Discord](https://discord.gg/bYda4pQz2v) or [sign up for our email list](https://contenda.ck.page/96e4e60222).

We can’t wait to see what you make!
Deprecation of puppetlabs-stdlib functions
Tags: community, puppet
Published: 2023-05-17 19:23:11

---
title: Deprecation of puppetlabs-stdlib functions
published: true
date: 2023-05-12 00:00:00 UTC
tags: community, puppet
canonical_url: https://puppetlabs.github.io/content-and-tooling-team/blog/posts/2023-05-12-deprecation-of-stdlib-functions/
---

Throughout the massive push to get our modules Puppet 8 compatible, we have also been working on finally removing old deprecated functions that have been living in the codebase for quite some time. Keep an eye out for the removals as this may impact your code base if you are using them.

### Impacted Functions

- abs
- camelcase
- capitalize
- ceiling
- chomp
- chop
- dig44
- downcase
- getvar
- hash
- has\_key
- is\_array
- is\_bool
- is\_float
- is\_ip\_address
- is\_ipv4\_address
- is\_ipv6\_address
- is\_numeric
- is\_string
- lstrip
- max
- min
- private
- round
- rstrip
- sort
- sprintf\_hash
- strip
- upcase
- unique
- validate\_absolute\_path
- validate\_array
- validate\_bool
- validate\_hash
- validate\_integer
- validate\_ip\_address
- validate\_ipv4\_address
- validate\_ipv6\_address
- validate\_numeric

This list is not exhaustive and for more information please check out the module source code [here](https://github.com/puppetlabs/puppetlabs-stdlib).

## Thank you to everyone that contributed and helped us!

I would like to take the opportunity to do a massive shout to the community with helping us on this one, it has been a massive team effort. None of this would have been possible without the dedication from everyone and in particular [smortex](https://github.com/smortex), [b4ldr](https://github.com/b4ldr), [bastelfreak](https://github.com/bastelfreak), [alexjfisher](https://github.com/alexjfisher) and [MartyEwings](https://github.com/MartyEwings).

## Need to chat to us?

Catch us on [Slack](https://puppetcommunity.slack.com/archives/C11LCKKQ9) and during [office hours](https://puppetcommunity.slack.com/archives/CFD8Z9A4T) weekly (Tuesday 2pm BST).