teleren/devto huggingface dataset:
Is Manual Testing Dying?
Tags: webdev, testing, programming, devops
Published: 2023-08-04 11:33:39

As technology continues to advance at a breakneck pace, many have wondered if manual testing is dying. After all, with the rise of automation and artificial intelligence, it's tempting to think that human testers are becoming obsolete. However, the reality is far more complex. 

First, let's define what we mean by "manual testing." Simply put, manual [testing](https://tenjinonline.com/) refers to the process of testing software by hand, without the use of automated tools or scripts. In other words, a human tester carefully walks through the software, looking for bugs, errors, and other issues. This is in contrast to automated testing, where tools and scripts are used to simulate user behavior and test the software automatically.

So, is manual testing dying? The answer is both yes and no. On the one hand, automated testing is becoming more prevalent in many industries. This is especially true in areas where repetitive, predictable tasks can be easily automated, such as regression testing or load testing. Automated testing is faster, more efficient, and less error-prone than manual testing in many cases. 

However, this doesn't mean that manual testing is going away completely. There are still many scenarios where manual testing is essential. For example, manual testing is often used for exploratory testing, where the tester's goal is to uncover unexpected behavior or edge cases. This requires human intuition, creativity, and problem-solving skills that automated testing simply can't match. 

Moreover, manual testing is often necessary in industries where safety and reliability are paramount, such as healthcare or aerospace. In these cases, a single bug or error could have catastrophic consequences, so it's important to have human testers carefully scrutinize every aspect of the software. 

It's also worth noting that manual testing is often used in conjunction with automated testing. In many cases, automated testing is used to quickly catch basic errors or bugs, while manual testing is used to validate more complex functionality and edge cases. 

So, while it's true that automated testing is becoming more prevalent, manual testing isn't dying. Instead, it's evolving to meet the changing needs of the industry. Manual testing is still essential in many scenarios, and skilled human testers will continue to be in demand for the foreseeable future. 

In conclusion, the answer to the question "Is manual testing dying?" is a resounding no. While automated testing is becoming more prevalent, there will always be a need for skilled human testers who can bring their intuition, creativity, and problem-solving skills to the testing process. As the industry continues to evolve, it's likely that the role of manual testing will change, but it will never disappear entirely.
Thank Goodness It's Friday: Celebrating Developer Wins! 🎉
Tags: discuss, weeklyretro
Published: 2023-08-04 10:54:43

Hey there, fellow developers! As the week comes to a close, we can all breathe a sigh of relief and revel in our accomplishments. From Monday's ambitious goals to Friday's victorious moments, we've poured our hearts and minds into writing code, fixing bugs, and crafting solutions that push the boundaries of innovation.

**It's Friday!!!** ![Friday](https://media.giphy.com/media/FV8nzuvp7pcHu/giphy.gif)

Each day brought its unique challenges, and we faced them head-on, armed with our favorite debugging tools and the support of our awesome teammates. We've witnessed the thrill of those "aha" moments when the solution to a complex problem suddenly clicks into place, and we've savored the satisfaction of seeing our code run flawlessly.

But it's not just the individual triumphs that make our developer community so special; it's the camaraderie and collaboration that flourish here. We've shared knowledge, encouraged one another, and created an environment where everyone can thrive. Together, we're a force to be reckoned with, and that's something to be truly proud of.

So, let's take a moment to share our proudest achievements from this week in the comments below. Whether you smashed a stubborn bug, optimized a critical algorithm, or launched an incredible new feature, we want to hear about it! Let's celebrate our wins and inspire each other for the exciting coding challenges that await us in the weeks to come.

As we embark on the weekend, let's cherish this time to unwind and recharge. Take a break, indulge in your favorite hobbies, or maybe even explore a side project that's been on your mind. Because, come Monday, we'll be ready to dive back into the world of code, fueled by the satisfaction of another week filled with developer victories.

_Thank goodness it's Friday, dear developers! Let's raise a virtual toast to each other's hard work, dedication, and unwavering passion for all things code. Here's to us, the architects of innovation, making the world a better place one line of code at a time. Cheers! 🚀😊_


![cheers](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/68j31wowuoiw3dy9cuo4.jpeg)
Flutter Full Stack Premium Resource Pack - 2023
Tags: flutter, mobile, programming, beginners
Published: 2023-08-04 10:54:37

Hey Fellow Devs!

I spent 10+ hours curating Flutter Full Stack Premium Resource Pack for 2023 with 50+ awesome learning content from verified sources.

This resource pack covers:

- Flutter integration with AI, Web3, IOT, WebRTC and more.
- Best open-source projects ( most of them usually take part in GSOC every year).
- Beginner to advanced git tutorials.
- Unit, Integration & Widget Testing.

And much more.

If you're interested in accessing this valuable resource pack, kindly do the following:

1. Like this post to show your support.
2. Follow me for more such awesome posts.
3. Drop your email and I'll be more than happy to mail you.

Let's grow and learn together in the world of Flutter! 🚀

{% embed https://youtu.be/KFbrF7tnJfM %}
The No-Code Revolution: From Integromat to Latenode
Tags: nocode, lowcode, seo, development
Published: 2023-08-04 10:41:54


Hello, DEV community! I'm Oleg Zankov, the co-founder of [debexpert.com](https://medium.com/r/?url=https%3A%2F%2Fwww.debexpert.com%2F), a place where we've successfully implemented over 150 business process automations on the no-code platform, Integromat. But today's conversation is more of a chronicle of our journey - moving from a reliable partner to carving our own path in the tech landscape.

Back in February 2022, Integromat announced its transformation to Make.com and a tripling of its price. This was an unexpected shift, causing ripples of surprise and concern within their community and across social media platforms.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dop74kon2hhpmb058b50.png)

In the aftermath, we were initially promised a seamless transition to the new platform. However, the reality was starkly different. Our 150 operations, carefully customized for [debexpert.com](https://medium.com/r/?url=https%3A%2F%2Fwww.debexpert.com%2F), remained anchored in the Integromat realm.

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

We began questioning Make.com's capacity to handle complex operations. Despite its new avatar, it shared the same limitations that most no-code drag-and-drop automation solutions possess:

1. strict time constraints for operations
2. the inability to insert custom code.

This constraint hindered us from enhancing operational efficiency and maintaining a balanced budget.

The subsequent announcement from Integromat about the project's discontinuation by September 2023 was the final straw. This sparked the idea of creating our own platform - [Latenode.com](https://medium.com/r/?url=https%3A%2F%2Flatenode.com%2F).

Our vision for [Latenode](https://medium.com/r/?url=https%3A%2F%2Flatenode.com%2F) was a platform that would offer:

1. A user-friendly drag-and-drop interface for building processes.
2. Flexibility to integrate JS Code for more complex operations.
3. Affordability, eliminating the barrier of high costs.

Now, that vision is a reality. [Latenode.com](https://medium.com/r/?url=https%3A%2F%2Flatenode.com%2F), currently in beta, is an amalgamation of accessibility for beginners (zero coders) and versatility for seasoned coders (low coders). We're constantly updating our tool library and creating ready-to-use Nodes - these are building blocks for creating operation chains.

Even now, those of you proficient with HTTP requests and APIs can construct smart, seamless operations to support your business processes.

**We invite you to join us:**
On [Latenode.com](https://medium.com/r/?url=https%3A%2F%2Flatenode.com%2F), where you can embark on a journey into the world of no-code without limitations.
In our [Discord  ](https://discord.gg/ARvtuUnWny)community, where we are ready to answer your questions and provide assistance.

We look forward to seeing you as we continue this exciting journey into the future of no-code!
Data Encryption and Security in PostgreSQL
Tags: apacheage, postgressql, security, encryption
Published: 2023-08-04 10:36:14

**Introduction**
In today's digital world, data security is crucial, and PostgreSQL, an open-source relational database management system, offers a number of features to guarantee reliable data encryption and protection. In order to protect sensitive data, we'll give a brief review of PostgreSQL's data encryption and security procedures in this post.


**Authentication and Authorization:**
The robust authentication system provided by PostgreSQL supports a number of techniques, including password-based authentication, certificate-based authentication, and others. Access to databases and associated objects can be managed using user roles and permissions. By allowing fine-grained access control down to specific table columns, access control lists (ACLs) further improve security.

**Encryption of data**
Data stored on disc is kept secured thanks to PostgreSQL's support for encryption at rest. In the event that physical storage is compromised, this safeguards data from unauthorized access.

**SSL/TLS Encryption**
PostgreSQL uses SSL/TLS encryption to enable secure communication between clients and the database server. This guards against possible data interception and eavesdropping during transmission.

**Encryption at Rest**
Data kept on disc can be encrypted using PostgreSQL's capability for encryption at rest. The database files cannot be meaningfully accessed without the decryption key, even if someone manages to physically obtain them. PostgreSQL accomplishes this via a variety of encryption techniques, including AES (Advanced Encryption Standard).

**Transport Layer Encryption**
Data transferred between a client and a PostgreSQL server may be intercepted, hence transport layer encryption is recommended. PostgreSQL offers SSL/TLS encryption to reduce this risk by ensuring that information transferred between the client and server is secure and difficult to intercept or tamper with.


**Key Management**
Secure key management is necessary for effective encryption. By connecting with other key management systems or using built-in procedures, PostgreSQL offers alternatives for maintaining encryption keys. As a result, security is improved because encryption keys are held apart from encrypted data.


**Conclusion**
A key element of a comprehensive data security plan in PostgreSQL is data encryption. Users can make sure that their important data is kept private and shielded from unauthorised access by using encryption at rest, secure transport layers, and column-level encryption. But it's crucial to keep in mind that encryption is only a small component of an all-encompassing security strategy. In a PostgreSQL environment, regular upkeep, updates, robust authentication, and access controls all help to preserve the integrity and security of your data.
Help with tricky mysql query
Tags: webdev, mysql, mariadb
Published: 2023-08-04 10:20:54


Did not work. ~~SOLVED: maybe. will update later.~~


DB structure: 
```
section
id 

posts:
id | updated_at | section_id
    
form_element: 
id | type 
    
post_form_element_values :
post_id | form_element_id | value 

- Each section can have multiple posts. 
- posts and form_element tables have a many to many relationship.
- form_element: type col can be either 0 OR 1 
```  

Task: Get all posts of a particular section that satisfy the criteria
`type = 2 AND f.value < '2023-08-04 02:33:11' OR type=0 `
Note: all posts of a section will have the same type value (0 OR 1)

---
I wrote this :

```  
SELECT p.id 
FROM posts p
WHERE  p.section_id = 4 and p.id NOT IN (SELECT f.post_id 
                   FROM post_form_element_values f
                            LEFT JOIN form_element v ON v.id = f.form_element_id
                    WHERE (v.type = 2 AND f.value > '2023-08-04'))
ORDER BY p.id
LIMIT 10
```     

Works perfectly - 50ms. 
But changing "ORDER BY p.id" to "ORDER BY p.updated_at" slows it - 3 seconds 
But removing (NOT IN) and keeping "ORDER BY p.updated_at" is still fast.
On its own the subquery is fast - 30ms

How can I write this differently ? Stuck for days. I tried joins and not exists. this is killing me...

---
Explanation of various experiments:

- ORDER BY **updated_at** AND 'not in' condition' (slow)

1,PRIMARY,s,range,section_id_idx,section_id_idx,,9,114764,Using index condition; **Using where; Using filesort**
2,DEPENDENT SUBQUERY,s3,ref,entry_id_idx,"answer_index_idx,entry_id_idx,form_element_id_idx",func,8,3,Using where
2,DEPENDENT SUBQUERY,s4,eq_ref,PRIMARY,"PRIMARY,tenant_id_idx,form_id_idx,widget_id_idx,privacy_idx,form_element_category_id_form_element_id",.s3.form_element_id,8,1,Using where

- ORDER BY **id ** AND 'not in' Condition (fast)
1,PRIMARY,s,ref,section_id_idx,section_id_idx,9,const,114764,**Using where; Using index**
2,DEPENDENT SUBQUERY,s3,ref,"answer_index_idx,entry_id_idx,form_element_id_idx",entry_id_idx,8,func,3,Using where
2,DEPENDENT SUBQUERY,s4,eq_ref,"PRIMARY,tenant_id_idx,form_id_idx,widget_id_idx,privacy_idx,_form_element_category_id__form_element_id",PRIMARY,8,labspadang.s3.form_element_id,1,Using where



- ORDER BY  **p.updated_at** AND  'NOT IN' is removed (fast) 
1,SIMPLE,s,range,section_id_idx,section_id_idx,9,,114764,**Using index condition; Using filesort**

help please
The Right Way to Split String Into Words in JavaScript
Tags: javascript, nlp, chinese, thai
Published: 2023-08-04 10:17:12

When processing text, one of the common tasks is breaking a string into array of words. In a hurry? [Jump to the correct way](#correct-way).

## Wrong way

The quick and dirty way to do it is to use built-in JavaScript function `split` with space character as the separator:
```javascript
"Hello world!".split(" ")
// ['Hello', 'world!']
```

This approach, however, does not take into account double spaces and punctuation. One way to improve it is by using built-in function `match` to find all words `\w+` excluding punctuation:
```javascript
"Let's try again: hello world!" . match(/\w+/g);
// ['Let', 's', 'try', 'again', 'hello', 'world']
```
Whoops, the apostrophe broke the word `Let's` into two words.

You could try to fix the regular expression (for example do `[\w\']+`), but as you tackle different edge cases, it will be more and more difficult to make `match` work correctly.

## I18n

If you expect other people to use your code, you should also know that there are a number of languages that don't use any word separators at all: Chinese, Japanese, Thai, etc. In total about 1.5 billion people speak these languages or about 20% of world population.

When our company [BestKru](https://bestkru.com/) was looking for NLP solution to work with Thai text, we found out that lots of popular libraries, frameworks and apps support only space separated text. Which means we could not use them at all! I'm writing this post to raise awareness of this problem and to encourage developers to use the better way for breaking the text into words.

## Correct way

To make your code support different languages and work correctly with complex punctuation, use the standard built-in JavaScript object [Intl.Segmenter](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter) which utilizes the Unicode Standard's segmentation rules.

This is how you use it:
```javascript
const text = "What's up, world? 你好世界！ こんにちは世界！สวัสดีชาวโลก";
const segmenter = new Intl.Segmenter([], { granularity: 'word' });
const segmentedText = segmenter.segment(text);
const words = [...segmentedText].filter(s => s.isWordLike).map(s => s.segment);
// ["What's", 'up', 'world', '你好', '世界', 'こんにちは', '世界', 'สวัสดี', 'ชาว', 'โลก']
```
As you can see, all punctuation, the apostrophe, and four languages all handled correctly.

You can also use `Intl.Segmenter` to break a text into sentences, but that is a story for another time.
Xnxubd 2021 Frame Rate Xbox One, Best Xnxubd Frame Rate for Xbox?
Published: 2023-08-04 09:59:59

We’re going to review the pros and cons of the latest released graphic cards, so make sure to read the full blog to get all the details. Are you interested in the brand new xnxubd nvidia driver updates? Do you want to know about the [xnxubd 2021 frame rate](https://cemca.org.in/xnxubd-2021-frame-rate-xbox-one/) on Xbox? In this article, we’ll be discussing all things xnxubd, including what the 2021 frame rate is, what it means for Android devices, and how it affects video quality.

Additionally, we’ll be diving into the Nvidia GeForce expertise and the recent improvements made to the interface layout. The Nvidia GeForce Specialization is a software program developed specifically for customers who use Nvidia graphics cards, so it’s essential to know about the recent improvements. Overall, this article will provide you with a comprehensive understanding of xnxubd and the Nvidia GeForce expertise. So, buckle up and get ready to learn all about the latest updates and improvements in the world of graphic cards.
บันทึกการปรับ Performance ให้ระบบ Code Name: Peppermint #2 ย้ายไป Logger Database
Tags: devjournal, database, performance
Published: 2023-08-04 09:41:05

---
title: บันทึกการปรับ Performance ให้ระบบ Code Name: Peppermint #2 ย้ายไป Logger Database
published: true
description: 
tags: #devjournal #database #performance
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-07-26 09:49 +0000
---

[Part 1 Upgrade Server Spec](https://dev.to/codebanban/banthuekkaarprab-performance-aihrabb-code-name-peppermint-1-8g8)

หลังจาก Review ระบบปัจจุบันกันแล้ว
จึงตัดสินใจปรับ infra ของตัวระบบ
เพื่อให้รองรับการ scale ที่ง่ายขึ้น

ระบบตอนแรก Design แบบ simple เลย คือ ตัวแอพ และ database อยู่ในเครื่องเดียวกันเลย
จึงทำให้เครื่องทำงานค่อนข้างหนัก
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ng86nvoj068kh0qxfia8.jpg)

ทางทีมจึงตัดสินใจ แยกส่วน database ออกไปอีกเครื่อง
เพื่อช่วยกระจายการทำงานของแต่ละส่วน
จากที่คุยกัน ทีมตัดสินใจแยกเครื่อง database ออกไปอีก 2 ส่วน คือ
1. Main DB ซึ่งเบื้องต้นจะทำ Replicate master/slave
2. Logger DB ไว้เก็บ activity log ทุกๆการเรียก api

แต่การย้ายทั้งหมดเป็นเรื่องค่อนข้างยาก จึงค่อยๆ ทยอยทำเป็นส่วนที่กระทบน้อยก่อน
ใน Part นี้ จึงเลือกย้าย Acitivity log ไปเครื่อง Logger DB ก่อน
ฝั่ง server จึงปรับออกมาเป็นตามนี้
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4cqms2kbin7gjy7u9ax0.jpg)

หลังจากย้าย Activity Log ไปอีกเครื่องแล้ว
จะเห็นว่า CPU ลดลงมาอยู่ที่ 30%-35% ซึ่งทำให้เครื่องเสถียรขึ้นพอสมควร
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vtq367pk5dn9kqtybjx0.jpg)
Appuploader Quickly create iOS certificate （.p12 and .mobileprovision）
Published: 2023-08-04 09:31:44

Appuploader tool can quickly and easily create iOS certificates .p12 and .mobileprovision iOS certificate files.
And can be done in the Windows system, do not need a key pad assistant.
ios distribution certificate Application
Release certificate released to the app store and ad hoc release test certificate, here App Store released to create a release certificate, if you want to see the real machine debugging debugging Certificate creation tutorial iOS. Create a iOS release certificate
1, open the Appuploader, select Certification

2, click + ADD type will appear a variety of certificate options, according to their own needs to create a certificate type selection.

iOS App Development
Apple Push Notification service SSL(Sandbox)
App Store and Ad Hoc
Push Notification Auth Key (Sandbox & Producyion)
Push Notification service SLL(Sandbox & Producyion)
Pass Type ID Certificate
Website Push ID Certificate
Watchkit Services Certificate
voIP Services Certificate
Apple Pay Certificate
3, in order to App Store and Ad Hoc certificate, for example, enter the certificate name, mailbox, password (when packing IPA), click OK to create.

4, click p12 File, save the certificate file to the computer.

Two, create iOS release description file
1, open the Appuploader, select Profiles

2, click + ADD, according to the need to select the configuration file type

iOS App Development
tvOS App Development
App Store
tvOS App Store
Ad Hoc
tvOS Ad Hoc
3, with the release of the description file, for example, before the choice of the developer center to create APP IDs, tick selected, enter the name, click OK to create.

4, click on the Download download, save to the computer
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gzehr2zwj37b3svnizk4.png)
What was your win this week?
Tags: discuss, weeklyretro
Published: 2023-08-04 09:30:00

---
title: What was your win this week?
published: true
description: Looking back on this past week, what was something you were proud of accomplishing?
tags: discuss, weeklyretro
published_at: 2023-08-4 09:30
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wyck78r593005hlbngyn.jpg
---

Hey everybody 👋

Hope that y'all all have wonderful weekends. 

Looking back on this past week, what was something you were proud of accomplishing?

All wins count — big or small 🎉

Examples of 'wins' include:

- Starting a new project
- Fixing a tricky bug
- Walking the dog 🦮

---

![A man pushing his dog on a cart](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8l1n0830vt2hnv38llnu.gif)