teleren/devto huggingface dataset:
Hello, world !
Published: 2023-02-02 17:17:18

My first post has inpirated by another dev.to user lol

So, i spend many days to post a first words to my space and show my goals and contents to write here, this informations i show bellow:

- Java and springboot content and best pactices
- Scala best practices
- DevOps content with Docker and K8s

So, thats it at moment, if you have questions dont hesite to send a comment, see ya.
Diário de bordo #9
Tags: javascript, webdev, programming, discuss
Published: 2023-02-02 17:03:23

## Operadores de Sufixo e Prefixo em JavaScript

A maiória dos operadores das linguagens de programação são muito importantes para a utilização no dia a dia de um desenvolvedor, mas alguns deles podem causar um pouco de confusão ao realizar uma explicação de como eles funcionam por de baixo dos panos, ou até mesmo entender realmente como eles agem. Então neste post eu irei trazer um breve resumo do que é e qual a diferença entre os **Operadores de Sufixo e Prefixo no JavaScript**


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

## O que são os Operadores Sufixo e Prefixo?

Estes operadores são extremamente uteis para quando queremos incrementar(adicionar) ou decrementar(remover) um determinado valor númerico. 

Uma das formas que já foram vistas para quem estuda ou já estudou alguma linguagem de programação pela primeira vez é a partir do exemplo abaixo:

```
let x = 10
x = x + 1
```
A variável `x` está sendo re-atribuida ao seu valor atual e sofrendo uma incrementaçõ através do operador `+ 1`. Sabendo disso, existe uma outra forma mais simples de se realizar o mesmo procedimento atual, que é utilizando os operadores Prefixo e Sufixo:

## Operador Prefixo
```
// Operador Prefixo ++<variável>
let x = 10
let y = 0
y = ++x
console.log( y ) // Retorna 11
```
A principio ele realmente atribui o valor de X para Y somado +1, mas o que ele faz de baixo dos panos é literalmente fazer essa re-atribuição o valor de `x` que é `10`, adicionando +1, atualizando o seu valor de `10` para `11` e re-atribuindo o valor de `y` com o valor atualizado de `x`. Veja o exemplo do que literalmente acontece sem ser visto: 

```
let x = 10
let y = 0
x = x + 1
y = x
//y = ++x (Operador Prefixo)
console.log( x ) // Retorna 11
console.log( y ) // Retorna 11
```
PS: Basicamente ele re-atribui e incrementa antes da variável `y` receber o valor 'real' de `x` que é `10`, fazendo-o receber um novo valor.

## Operador Sufixo

Também faz a atribuição da mesma forma, trazendo o valor da variável e aumentando o seu valor para +1. Só que com uma pequena diferença, atribuindo e incrementando o valor depois, veja o exemplo abaixo: 

```
// Operador de Sufixo <variável>++
let a = 24
let b = 0
b = a
a = a + 1
// b = a++ (Operador Sufixo)
console.log( a ) // Retorna 25
console.log( b ) // Retorna 24
```
PS: Esse operador faz o contrário do Prefixo, atribuindo a variável `b` ao valor da `a` e logo em seguida incrementando +1, fazendo com que `a` tenha o valor elevado à +1 e b tendo o valor antigo, que é `24`.
How to input brackets in a mac using a Portuguese PC Keyboard
Tags: mac, keyboard, reuse
Published: 2023-02-02 17:10:41



I've bought the new [Mac Mini M2](https://www.hammerspoon.org/)! And I don't have the mac magic keyobard. Nor a monitor specific for the Mac! I wouldn't wanna spend 100 bucks to get the quirks for the mac stuff. I wanna reuse my old keyboards put aside. The problem is... they're all PC Keyboards! Yes, I know, `Option` Key can be used as the `Alt` key modifier, and the `Cmd` Key can be used as the Windows (forget the publicity!) key. Problem is... Not everything works well. In my specific case, since I am portuguese, the brackets keys (`{}`) doesn't appear in the portuguese mac Keyboard, you have to use the combination `Shift+Cmd+7` to input `{` and Shift+Cmd+0 to input `}`. In a PC Keyboard, is `RightAlt+7` and `RightAlt+0`. Strangely, plugging in a PC keyoard in the mac, `RightAlt+8` and `RightAlt+9` outputs square parentesis (`[` and `]`) works but to input brackets does not. If I were in Windows, I would use [AutoHotkey](https://www.autohotkey.com/) to achieve this. But in the mac, there is a similar alternative, [Hammerspoon](https://www.hammerspoon.org/) ! which uses [Lua](https://www.lua.org/) as the language. This language is starightforward to learn, and after much trials and attempts, I've managed to achieve to Use Ctrl+C and Ctrl+V to work on the mac, using the following code:

```lua
-- remap copy+paste to ctrl+c and ctrl+v
hs.hotkey.bind({"ctrl"}, "c", nil, function()
    hs.alert.show("COPY!")
    hs.eventtap.keyStroke({"cmd"}, "c")
end)

hs.hotkey.bind({"ctrl"}, "v", nil, function()
    hs.alert.show("PASTE!")
    hs.eventtap.keyStroke({"cmd"}, "v")
end)

```
And that does the work, but to enter the brackets I had to fight to understand more ! I have found that the function [`hs.eventtap.keyStroke`](https://www.hammerspoon.org/docs/hs.eventtap.html#keyStroke) could be used to achieve the effect, the problem is that keycode for the left bracket falls in the number above 255 (ie, is not in the ASCII table), and does not a map to a single discrete integer value. So, there was a solution use the function [`hs.eventtap.keyStrokes`](https://www.hammerspoon.org/docs/hs.eventtap.html#keyStrokes) which outputs an entire string when called.
This way, I achieved my objectives with the follwing functions:
```lua
hs.hotkey.bind({"rightalt"},"7", nil,function ()
     hs.eventtap.keyStrokes("{")
end)

hs.hotkey.bind({"rightalt"},"0", nil,function ()
     hs.eventtap.keyStrokes("}")
end)
```
Next job will be to remap the characters which respective keys are in a different positions in the mac keyboard. Characters like `\|+*` in order to reuse the complete PC keyboard in a mac!





*Article posted using [bloggu.io](https://bloggu.io). Try it for free.*
Twitter: Small Talk, Big Impact
Tags: hiring, webdev, career
Published: 2023-02-02 17:03:50

Hey friend! I'm excited to join the DEV community! Quick about me-- I'm here to help. My goal is to guide as many job seekers and hiring managers in the tech community as I can. 

Here's a little nugget of guidance about my favorite networking platform…Twitter. If you want to watch/listen to the whole episode…https://www.youtube.com/watch?v=KRSvEOjrVYE

If you like reading more than watching Youtube….

If you’re used to slower-paced platforms (looking at you LinkedIn), Twitter can feel like an unleashed and uncontrolled flood of content. But with the constant stream of content comes more opportunities to network and potentially find your dream job. Let me give you a few pointers so you don't get swept away.

Leverage the Visuals— A banner image/profile picture combo? I thought this platform was all about words. In lots of ways yes, but lucky for you Twitter gives you the space to brand yourself with your profile visuals. Former chef looking for a job? Pop up that epic dish you plated. Thinking about getting back into yoga instruction? Boom, perfect spot for the crazy handstand beach picture. Your profile pic is all part of the package— keep it professional, people. There’s no hiring manager that wants to see your bathroom selfie no matter how great you think you look.

Bio Blues— I’m not asking you to write an autobiography here, folks. Simple, sweet and to the point: write who you are, what you do and what you (generally) tweet about. Easy as that. If you can make it intriguing and engaging, bonus points. The first rule of the internet is to not tell strangers where you live, but adding your location in your Twitter bio can help with potential connections. You might be talking to someone 500 miles away, but they might know someone with a job in your area.

Put a Pin in It— You ever just make a really great tweet that defines you as a whole and can basically be a mission statement for yourself? Pin in. No one is going doom scrolling through your profile to find it. And if that’s something you don’t have, make it.

You may be thinking, “but Taylor, I don’t have time to come up with 10 witty posts a day and honestly I’ve never had an original thought in my life.” And that’s totally okay. Close out TikTok for 20 minutes and take time to interact with other people on the platform. You don’t have to be constantly creating content to have success. This means doing things like commenting and joining communities— I mean they made the retweet button for a reason, right? Use lists as a way to connect with people and topics you’re interested in pursuing. And one final tip– keep the hashtags to a minimum. There are exceptions to every rule, but don’t let your tweet be overshadowed by a mountain of useless text. Let Twitter do the work, just jump in and have fun.

-Taylor

[solo.to/tdesseyn](url)
Test Post - Please Ignore
Published: 2023-02-05 17:34:36

---
title: Test Post - Please Ignore
published: true
date: 2023-02-02 17:01:50 UTC
tags: 
canonical_url: https://alex.party/posts/2023-02-02-test-post-please-ignore/
---

I’m setting up some automations, and I’m hoping that I’ll be able to let folks know more effectively what it is that I’m writing about and doing lately.

I’m doing this automation using [IFTTT](https://ifttt) and hopefully (if this goes right) it’ll post to twitter, mastodon, and linkedin.

Sorry linked in folks if y’all came here and were blinded by the sudden flash of colors and Comic Neue. I promise, I do write about many technology related topics usually.
How to measure performance of Voice Activity Detection (VAD) Software
Tags: 100daysofcode, challenge, machinelearning, opensource
Published: 2023-02-02 16:59:16

Picovoice has just realized the [new version of its Voice Activity Detection engine](https://picovoice.ai/blog/voice-activity-detection-accuracy-improvement/), Cobra. It's more accurate than its predecessor, making it much more accurate than webRTC VAD. That's why on **day 24** we'll discuss how to measure VAD performance.

[Receiver operator characteristics](https://en.wikipedia.org/wiki/Receiver_operating_characteristic) (ROC) curve is a known tool for inspecting the performance of binary classifiers across different decision thresholds. 

Voice Activity Detection is a binary classifier. It detects presence or absence of human speech in audio streams. Hence ROC curve is used to measure its accuracy.

The false positive rate is measured as the number of false positive frames detected over the total number of non-voice frames. Likewise, the true positive rate is measured as the number of true positive frames detected over the total number of voice frames. A larger area under the ROC curve is better.

![webRTC vs Cobra VAD Accuracy Comparison](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bimho4tozdam3b3k2yq4.png)

Picovoice developed an [open source benchmark](https://picovoice.ai/docs/benchmark/vad/) with [LibriSpeech](https://www.openslr.org/12) as it provides a diverse number of speakers and is gender-balanced. Then adds noise data from the [DEMAND](https://asa.scitation.org/doi/abs/10.1121/1.4799597) dataset. It has noise from 18 different environments (e.g. kitchen, office, traffic, etc.)

So if you want to draw a ROC curve with LibriSpeech for webRTC VAD, feel free to use the open-source benchmark. The steps are below: 

**1. Clone the repository:**

```
git clone https://github.com/Picovoice/voice-activity-benchmark
```
2. Install the dependencies:

```
pip3 install -r requirements.txt
```
3. Run the benchmark:
```
python3 benchmark.py \
--librispeech_dataset_path ${LIBRISPEECH_DATASET_PATH} \
--demand_dataset_path ${DEMAND_DATASET_PATH} \
--engine WebRTC
```

Accuracy is not the only consideration to evaluate the VAD performance. Runtime requirements are important, too. However, it depends on the platform you choose. For example, on a Raspberry Pi Zero, Cobra measured a realtime factor (RTF) of 0.05, or about 5% CPU usage whereas on a laptop it can be 0.0006, 100 times smaller.
Created A AI-Powered Solution For E-commerce Products
Tags: javascript, webdev, react, showdev
Published: 2023-02-02 16:57:24

## Hello everyone 👋

Trying to come up with the ideal title, description and other information for your products is taking up a lot of your time. Do you find it difficult to create enticing and comprehensive product descriptions that encourage clients to make purchases? So stop looking now! Writing product descriptions no longer needs to be a burden thanks to our AI-powered tools.
Link: - [Aiproducttools.com](Aiproducttools.com)



![Product Image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/80s1nq12v63epln66xqk.png)

## Why?
We noted that our friend, who works in online sales, struggles with the same thing. He puts a lot of thought and work into creating the best product title, description, and other information for his products. This inspired [Vaibhav](https://twitter.com/VaibhavAcharya_) and [Me](https://twitter.com/gitrevert) to develop a method that would reduce the time and work necessary for product descriptions while maximizing their effectiveness.

To assist online sellers like our friend, we created the AI-powered product tools. It was our goal to develop a platform where everyone can find the answer they require for their online selling business. With the help of this tool, anyone can quickly and easily create high-quality product descriptions, saving time and effort while still delivering outcomes that will increase sales.

## Tech Stack
Remix.run
OpenAI
TailwindCSS
Cockroachdb
Prisma

## Future goals
- Product image enhancer
- Product banner generator
- Product ad creator
- And many more

**Thanks for reading 😊.**

Give our product a try - [Aiproducttools.com](https://www.aiproducttools.com/)
And drop your suggestion below
How ChatGPT is going to help but also destroy new developers.
Tags: programming, beginners, career, ai
Published: 2023-02-02 16:54:05

First of all, **What is ChatGPT?** Well, ChatGPT is a chat-based artificial intelligence (AI) built by OpenAI using a technology called GPT-3, it is basically a chat where you can ask questions and the AI will answer like a real person, the funny thing is that ChatGPT is also able to give you code answers, for example, you can ask ChatGPT to solve your programming exercise and the results will be incredibly good, you will obtain a very well written code that works perfectly, the question here is, is this helpful for the developers? Well, in my opinion, it depends. So, if you are a senior developer with some experience and advanced knowledge about programming then ChatGPT could be a good option to help you with some stuff in your programs or apps, if you are having some issues with some functionality of your program then you can ask ChatGPT for some help because, as you are a Senior developer you should already have faced multiple problems so your programming skills are already developed, yes get better is always good but in this case, going to ChatGPT could be a great option, the problem is when that developer is less experienced, when you are starting to program, you have to make mistakes, learn from them and write tons of lines of code, with ChatGPT a young developer can fall into the temptation of asking ChatGPT for a solution for his problem and exactly here is where the problem comes. That young developer will just copy the code received by the AI, paste it on his program and voila, everything will be working fine but probably he doesn't even know how that code works, as i said before, to acquire experience in this, you need to make mistakes, write code and think about that, then you will evolve and improve your programming skills, if every single time that you have a problem you go to ChatGPT instead of trying to figure out the problem and the solution, then you will not improve your skills. However I also think that it could also be helpful for the young developers to figure out maybe another solution to his problem or maybe understand in a better way how something works as long as they have already tried to solve the problem by themselves. To conclude, I want to clarify that this is my opinion, your opinion may differ and is completely normal. Let me know your point of view in the comments below, thanks for reading :D
"Exploring the Art of Code Refactoring: Best Practices and Real-World Experiences"
Tags: codenewbie, programming, discuss
Published: 2023-02-02 16:30:41

Code refactoring is a crucial aspect of software development, but it often gets overlooked or delayed due to time constraints and prioritization of new features. However, taking the time to regularly refactor code can improve its maintainability, performance, and scalability, and make it easier for new team members to understand and work with.

The question is, when is the right time to refactor code? Should it be done incrementally as new features are added or should it be set aside as a dedicated project? What are the best practices for successful code refactoring? And how do we strike a balance between the immediate benefits of new features and the long-term benefits of a clean codebase?

Let's start a discussion on the topic of code refactoring and share our experiences, tips, and best practices. Let's see how we can all improve the quality of our code for the better.
Firebase - Controlar y optimizar tu aplicación sobre la marcha
Tags: firebase
Published: 2023-02-02 16:18:18

## Hacer actualizaciones sin volver a publicar

**Remote Config** le brinda visibilidad y un control detallado sobre el comportamiento y la apariencia de su aplicación para que pueda realizar cambios simplemente actualizando tu configuración desde la consola de Firebase. Esto significa que puedes activar y desactivar funciones de forma dinámica, personalizar por segmentos de audiencia y ejecutar experimentos, todo sin configurar ninguna infraestructura compleja ni lanzar una nueva versión.

{% embed https://www.youtube.com/watch?v=_CXXVFPO6f0&t=13s %}

## Implementa nuevas funciones con confianza

Implementa indicadores de funciones para que puedas implementar gradualmente nuevas funciones para asegurarte de que sean estables y funcionen bien, antes de implementarlas ampliamente. Si las nuevas funciones no cumplen con las expectativas o causan bloqueos, puede revertirlas rápidamente. Remote Config proporciona señales y medidas de seguridad para garantizar que solo se publiquen las funciones más atractivas y de alta calidad para todos sus usuarios.

## Personaliza tu aplicación para diferentes audiencias

Personaliza tu aplicación para diferentes segmentos de usuarios en función de su perfil, preferencias, acciones pasadas y comportamiento futuro previsto. Por ejemplo, puedes modificar la pantalla de inicio para los usuarios según su país. También puedes simplificar un nivel de juego para los usuarios que se prevé que abandonen para mantenerlos interesados.

## Ejecutar experimentos para probar ideas

Remote Config funciona a la perfección con las pruebas A/B para que puedas ejecutar experimentos para probar ideas y ver el impacto que tienen en los usuarios. ¿Quieres ver si tu nueva pantalla de pago realmente genera más compras? ¿Quieres probar un nuevo formato de anuncio para ver si aumenta los ingresos? Usa Remote Config con A/B Testing para obtener información sobre qué cambios están ayudando a lograr tus objetivos.

Firebase Remote Config es una excelente herramienta que te permitirá hacer cambios en la marcha sin tener que perder el tiempo de hacer grandes configuraciones.
Day 4: Accelerated Learning
Tags: beginners
Published: 2023-02-02 16:17:28

In terms of CS education, I keep thinking about this past summer, where I had the chance to observe elementary students learn the programming language Lua, and how I'm sort of going through the same accelerated approach with this program. With this cohort of 25 co-learners, it's been interesting observing the different types of learning and abilities all thrown together in a collaborative learning approach. Some folks are ahead, and others are catching up. We've had a crash course in HTML and CSS, and soon moving onto Ruby programming. Today we're purchasing our domain names.

On a personal level, I'm finding that my interests are starting to diverge from the main presentation. I believe the most engaged learning is when the learner works on something they're passionate or most engaged about. Artificial examples aren't as motivating to me as my own projects, so that's what I hope to work on more in the weeks ahead.
Fourth Major Version of dbForge Data Compare for PostgreSQL Released
Published: 2023-02-02 16:05:09

---
title: Fourth Major Version of dbForge Data Compare for PostgreSQL Released
published: true
description: Devart has announced an update of dbForge Data Compare for PostgreSQL. The new version is enhanced with new data comparison options and can now be used on Linux and macOS.
tags: 
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-02-02 15:57 +0000
---
Devart, one of the leading developers of database management software, ALM solutions, and data providers for the most popular database servers, has announced an update of [dbForge Data Compare for PostgreSQL](?utm_source=dev.to&utm_medium=referral&utm_campaign=pr_postgresql_31.01.2023), a GUI tool for data comparison and synchronization. 

The major news about the release: 

- dbForge Data Compare has been provided with Linux and macOS support.  

- The release brings new comparison options: now users can specify databases in the comparison wizard, copy source settings to the target database, copy target settings to the source database, and exclude newly added objects. Further new options also include Tolerance Interval, Hide Empty Columns, Ignore Computed Columns, and Ignore Internal Spaces.  

- Text Editor has also been improved. Now users can select entire lines with triple clicks and perform copy/cut and paste operations faster using shortcuts. Another enhancement is the display of RAISE [ NOTICE | WARNING | INFO ] in Error List & Output messages. 
- The release also delivers extended support for high-DPI devices.  

To learn more about the release, refer to https://blog.devart.com/meet-the-latest-update-of-dbforge-data-compare-for-postgresql-v4-0.html 

About Devart 

Devart is a multi-product company that develops advanced tools for database development and administration, ALM solutions, data providers for database servers, as well as data integration and backup solutions. 


For additional information about Devart, visit https://www.devart.com/.