teleren/devto huggingface dataset:
Preparando ambiente de trabalho para usar MongoDB
Tags: mongodb, tutorial, braziliandevs
Published: 2024-01-23 17:01:34

Guia rápido de como preparar o ambiente de trabalho para começar a usar MongoDB

#Instalando no Windows
- Vá em [Download MongoDB](https://discord.com/invite/Q6FafYV) e faça o download do MongoDB Community Server.

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


Aqui você pode escolher a versão e pacotes de acordo com seus requisitos. 

- Quando o download estiver completo abra o arquivo MSI e clique em 'next' até concluir a instalação. Se você for um iniciante, não precisará fazer configurações especificas. 

- Agora vá até o diretório que o MongoDB está instalado e copie o caminho 

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

Agora crie uma variável de sistema para assegurar que não vamos ter problemas de caminho no futuro.

>>Editar variaveis do Sistema>>Variaveis do Ambiente>>Path>>New>> Cole o caminho que você copiou.

A variável PATH é uma configuração do sistema operacional que lista os diretórios nos quais o sistema deve procurar por executáveis quando você digita um comando no prompt de comando ou em um script. 

- Depois de configurar o ambiente de variaveis, vamos rodar o servidor MongoDB. Abra o prompt de comando e digito o comando:
```
mongod
```

Você verá um erro de i.e. C:/data/db/not found. 

Agora, abra a unidade C e crie uma pasta chamada "data" dentro desta pasta crie outra pasta chamada "db". Depois de criar essas pastas. Abra novamente o prompt de comando e execute o seguinte comando:

```
mongod
```
Agora o servidor mongo vai estar rodando :)

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

#Rodando Mongo shell

Agora vamos conectar nosso servidor (mongod) ao shell mongo. Então, mantenha aquela janela do mongod e abra uma nova janela de prompt de comando e escreva mongo. Agora, nosso shell mongo se conectará com sucesso ao mongod.

Agora você está pronto pra escrever queries no mongo shell
My Experience Listing My Tool on AI-Directories 🤖
Tags: ai, webdev, buildinpublic, startup
Published: 2024-01-23 16:50:00

12,000 AI tools featured on 'There's an AI for That'. With so much stuff out there, how do you even get noticed? I'm gonna dig into whether getting on AI directories helps people find your tool.

## Why Directories

I remember back in 2008 it was common to get your project listed on various directories to boost your PageRank (it seems no one talks about PageRank anymore nowadays). So I decided to do the same for Marblism.

The plan was to use brute force: list my AI tool on 150 AI directories. There are some lists you can find online and services you can use and they will do it for you. To be honest, I wasn't convinced it would work, but I thought, hey, why not?

## The Process

Each directory had its audience, focus, and requirements. The key was not just to list the tool everywhere but to select directories that aligned with your tool’s capabilities and potential user base. 

Some directories are not free. For example 'There's an AI for that' charges $150 just to get listed. It's a pretty good business model.

## The Waiting Game and Gradual Results

After the listings were completed, it became a waiting game. Initially, the results were not ground-breaking. But over time, a steady stream of traffic began flowing from these directories. 

## Traffic Impact

![Google analytics](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/os5fan9vzw70rjes4foz.png) Nice surprise on Wednesday morning – we got featured!

I was surprised to see Marblism featured in 3 publications: 
- Bensbites
- Therundown.ai
- Smarterwithai.news

![google analytics](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/94z89mbh8k4gzfkj395b.png)

Bensbites was the best with 542 people coming in a week to our website. 

Decent outcome!

## Domain Authority Impact

From 0.2 => 2, still a long way to go but better than 0! It should continue to increase as it has been only a week. I'll monitor and report back. 

15th Jan 2024
![domain authority](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uuhox5rbwc8u0r3w208l.png)
20th Jan 2024
![domain authority](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zamypylbue451lis8w7l.png)

## Lessons Learned

Here’s what I learned: In a world where every tool is dying for attention, directories are an okay tool in the arsenal. You won't enter hyper-growth mode but if you get featured in a couple of places it's a good way to get some users. ‍

Wishing you the best of luck for your launch!

Ulric.
Introducing the Major GPA Wizard!
Published: 2024-01-23 16:47:16

Our team embarked on a journey to address a common concern among students—the absence of major GPA information on their transcripts. The result? The Major GPA Wizard is a user-friendly application designed to simplify the process of calculating major GPA from formatted PDF files.

[Major GPA Wizard](https://major-gpa-wizard.vercel.app/)

**Key Features of Major GPA Calculator:**

1. **Automated CS Subject Detection:** The application automatically identifies and extracts major CS subjects from uploaded PDFs, streamlining the GPA calculation process.

2. **GPA Calculation:** It computes the total GPA based on the extracted CS subjects, offering a comprehensive overview of academic performance.

**How It Works:**

The Major GPA Calculator takes a formatted PDF as input, extracts relevant information using Node.js, and follows these steps:

1. **File Upload:** Users upload their PDF files through a simple and intuitive interface.

2. **PDF Parsing:** The backend, built with Node.js and Express, uses the "pdfreader" package to efficiently parse PDF content.

3. **Data Filtering:** Parsed data is converted into JSON format, and filtering operations extract necessary information related to CS subjects.

4. **GPA Calculation:** The backend calculates the total GPA based on the extracted CS subjects, providing users with a clear understanding of their academic achievements.

**Technology Stack:**

**Frontend:**

- React.js
- Vite.js (for React project setup)

**Backend:**

- Node.js
- Express.js
- pdfreader (for PDF parsing)
- multer (for file uploading)
- cors (for handling CORS issues)
- dotenv (for managing environment variables)

**Frontend Implementation:**

The frontend utilizes React and Vite.js for a responsive and interactive user interface, including a header, a file input section, and a result table dynamically appearing after processing the PDF.

**Backend Implementation:**

Built with Node.js and Express.js, the backend employs the "pdfreader" package for efficient PDF parsing, "multer" middleware for file uploading, and other packages to handle CORS and environment variables.

**Backend Functions:**

parsePdf: Parses the PDF content and returns the data.
API Route: Accepts the uploaded PDF file and sends it to the parser function.
Data Filtering: Processes the parsed data, filters relevant information, and returns it in JSON format.

**Challenges Faced:**

1. **Frontend PDF Parsing:** Initial attempts to parse PDFs in the frontend using "tesseract.js" OCR faced challenges, resolved by switching to a Node.js backend with the "pdfreader" package.

2. **File Upload:** Uploading and handling files on the server posed challenges, streamlined by the use of the "multer" middleware.

3. **PDF to Image Conversion:** Exploring PDF to image conversion for OCR posed difficulties initially. Ultimately, the "pdfreader" package emerged as a suitable solution for parsing PDFs directly.
What is Software Testing ? What do we need to know about Software Testing ? What is the relevance of Software Testing..
Published: 2024-01-23 16:47:12

As the name self explains, any new software that is developed by the software developers for a client as per their requirements is prone to have error or bugs and defects. To capture, convey, address and resolve these defects, Software Testing plays an essential role which helps create a bug free, defect less application that can be utilised at its best performance by the client. 

The process of evaluating and verifying the software for bugs and/or defects is called Software Testing.

First thing a Software Tester needs to know about Software Testing is if the software in question is adhering to all the client's requirements and is functional and not breaking on the ideal environment provided. Another thing is if it is doing exactly what it is expected to do. Also, if the purpose of Software testing is fulfilled, like ensuring that the software is functioning correctly, is helping to identify the issues and fixing early on during development thereby reducing the cost and efforts of fixing them later on.

Relevance of Software Testing is that it helps to point out errors and defects from the various phases of software development. Software testing ensures that the overall quality of the software including its functional aspects, performance, security, customer experience, etc are met as specified by the business or the clients.

Most all testing methodologies use Agile methodologies nowadays where testing starts from the very initial stage, like when gathering requirements from the clients. Of course a business analyst, scrum master plays an important role while trying to understand the business requirements, however, the testing team may participate by studying and understanding the product or software in question. Just like the SDLC - Software Development Life Cycle, there is STLC - Software Testing Life Cycle which covers the end to end testing requirements and aspects to be implemented.

Software Testing Life Cycle -

The Software Testing Life Cycle (STLC) is a series of specific actions performed on the software to be tested during the testing process to ensure that the software quality objectives are met and the software is performing as per the requirements.

Following are the 7 Phases of STLC -

Phase 1 — Requirement Analysis.
Phase 2 — Test Planning.
Phase 3 — Test Design.
Phase 4 — Test Environment.
Phase 5 — Test Execution.
Phase 6 — Defect Tracking.
Phase 7 — Test Reporting.


Software Testing are of two types - Manual Testing and Automation Testing.
In Manual Testing, once a tester is asked to test the product, they have to define the test plan, write the test scenarios and test cases based on what the product is supposed to do in alignment with the client's requirements and specifications. Then the can test for the defects and discuss with the developers about the fixes the product requires. So, based on their own creativity and product knowledge and understandings, they have to come up with the testing of the product.
Tip del Dia en C#
Tags: codesmell, csharp, backend, performance
Published: 2024-01-23 16:41:04

Code Smell:
𝗣𝗿𝗲𝗳𝗲𝗿 𝗔𝗻𝘆() 𝗼𝘃𝗲𝗿 𝗖𝗼𝘂𝗻𝘁()

✅ El método 𝗖𝗼𝘂𝗻𝘁() se utiliza para obtener el número total de elementos de una colección que satisfacen una condición determinada. Devuelve un valor entero que representa el recuento de elementos coincidentes.

✅ El método 𝗔𝗻𝘆() se utiliza para determinar rápidamente si una colección contiene algún elemento que cumpla una condición determinada. Devuelve un valor booleano (verdadero si algún elemento coincide con la condición; en caso contrario, falso).

🚀 Usar 𝗔𝗻𝘆() sobre 𝗖𝗼𝘂𝗻𝘁() puede ser más eficiente cuando solo está interesado en determinar si existe algún elemento que coincida con una condición en la colección. Esto se debe a que Any() deja de recorrer la colección tan pronto como encuentra el primer elemento coincidente, mientras que Count() recorre toda la colección para contar todos los elementos coincidentes. En los casos en que la colección es grande, Any() puede proporcionar potencialmente un mejor rendimiento.

🔥 Utilice 𝗔𝗻𝘆() sobre 𝗖𝗼𝘂𝗻𝘁() cuando solo le importe si hay elementos en una colección, no el número exacto de elementos. También debes usar Any() cuando la colección sea grande o evaluada de forma diferida. Y deberías usar Any() cuando quieras mejorar la legibilidad de tu código.

Ejemplo en Codigo:


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/crgknoa6r33nsj14awe8.png)
mit python & einer IDE auf Linux starten...
Tags: webdev, beginners, tutorial, python
Published: 2024-01-23 16:25:57

Es gibt mehrere Methoden, Python unter Ubuntu zu installieren:

Über APT. Installieren der neueste Version, die eben halt im Standard-Ubuntu-Repository verfügbar ist. Aus dem Quellcode. Installieren der gerade neuesten Version von der offiziellen Python-Website.
Über PPA. Installieren von Python über das Deadsnakes PPA, ein (speziell) für Ubuntu entwickeltes Drittanbieter-Repository.
Was ist für Euch den der am meisten zu empfehlende Vorgang:
Welchen Prozess würdet ihr wählen:
okay - vllt. spricht ja für jede Installationsmethode etwas, sodass man im Grunde diejenige auswählen kann, die den eigenen Anforderungen am besten entspricht.

Methode 1: Python über APT installieren
Dieser Prozess setzt ja den apt-Paketmanager ein und das Standard-Ubuntu-Repository, um Python zu installieren.  Diese Methode ist vllt. auch die einfachste, stellt jedoch möglicherweise nicht immer die neueste Python-Version bereit. Die neuesten Versionen sind immer auf der offiziellen Website oder in einem Drittanbieter-Repository verfügbar.

da müsst ich dann ganz am Anfang folgendes machen:
Schritt 1: Aktualisieren des Paket-Repository
ferner wär wohl noch wichtig: Aktualisieren des Paket-Repository, um sicherzustellen, dass auch auf alle Fälle die neueste verfügbare Programmversion erhalten ist.

das sollte gehen mit dem folgenden Befehl:
Sudo apt-Update

dann gehts weiter:

Schritt 2: Python installieren

Nachdem die Paket-Repository-Informationen aktualisiert wurden, sollte man dann mit dem folgenden Befehl weitermachen, um Python zu installieren:

sudo apt install python3
und so weiter und so fort: Also - aber da gibt es dann ggf ja auch die Möglichkeit

hier noch ein Wort zu den virtuellen Umgebungen:

Also meine Freunde sagen:

a. Starte auf alle Fälle mit pyenv. damit loslegen ist superwichtig: und dann halt noch mit Pfaden und Versionen gleich vertraut machen
oder, und ganz ganz anders:
b. Sollte ich denn die einfach Python installieren, dann halt einen Ordner erstellen, in dem ich die Projekte speichern möchte.  Danach erstelle ich dann eine Datei __main__.py im Projektverzeichnis und erledigen dann halt alles Aufgaben dort.
M.a.W - also da bräuchte ich dann erstma keine virtuellen Umgebungen, um mit dem Programmieren usw. zu beginnen. Die kann man darüber lernen, wenn man die Grundlagen erledigt hat.
Würdet ihr denn den VS-Code-Editor einsetzen
Document: Developer Better Coding Practices
Tags: webdev, beginners, programming, documentation
Published: 2024-01-23 16:24:31


![Tackling Developer Challenges](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5gw0f649n6khehytenlr.jpg)

## Document: [Explore Doc✨...](https://peacockindia.mintlify.app)

Hello, everyone! I'm Jackson Kasi, a passionate coder on a mission to share vital insights and best practices in web development. Through my own coding adventures, I've encountered many hurdles and learned valuable lessons. Now, it's time to share these gems with you to smooth your coding journey. 🚀

👨‍💻 **The Developer's Dilemma:** Many developers, especially in team settings, face challenges due to the lack of standardized guidelines for code structure. This often leads to conflicts and inefficiencies.

📚 **A Solution at Your Fingertips:** To address these issues, I've curated a comprehensive documentation - a one-stop resource for both budding and seasoned developers. This guide covers everything from organizing imports to secure coding practices, and is peppered with beginner-friendly examples illustrating both good and bad practices.

🔑 **Key Highlights:**
- Organizing Imports
- Managing Colors
- Centralized Typography
- ... and much more!

🌱 **Beginner-Friendly:** Each topic is broken down with clear examples of what to do and what to avoid, making it accessible for all skill levels.

If you find this guide helpful, consider giving it a star on the repo and sharing this article. You can also contribute by writing about the document, sharing the link with your co-workers or friends, and helping to spread the word. Together, we can make coding a more enjoyable and efficient experience for everyone. Happy coding! 🌟👩‍💻👨‍💻

[Explore More Doc✨...](https://peacockindia.mintlify.app)
20 Whitepapers that changed the world
Tags: softwareengineering, systemdesign, developer, programming
Published: 2024-01-23 16:17:22

Source: [Video YouTube](https://www.youtube.com/watch?v=WWGM4hY34pI)

- [Monolith: Real Time Recommendation System With Collisionless Embedding Table](https://arxiv.org/pdf/2209.07663v2.pdf)

- [FlexiRaft: Flexible Quorums with Raft](https://www.cidrdb.org/cidr2023/papers/p83-yadav.pdf)

- [Spanner: Google’s Globally Distributed Database](https://dl.acm.org/doi/pdf/10.1145/2491245)

- [Scalable Statistical Root Cause Analysis on App Telemetry](https://arxiv.org/pdf/2010.09974.pdf)

- [Cassandra - A Decentralized Structured Storage System](https://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf)

- [FoundationDB: A Distributed Unbundled Transactional Key Value Store](https://www.foundationdb.org/files/fdb-paper.pdf)

- [Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases](https://pages.cs.wisc.edu/~yxy/cs764-f20/papers/aurora-sigmod-17.pdf)
- [Pregel: A System for Large-Scale Graph Processing](https://15799.courses.cs.cmu.edu/fall2013/static/papers/p135-malewicz.pdf)

- [Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](https://static.googleusercontent.com/media/research.google.com/en//archive/papers/dapper-2010-1.pdf)

- [The Chubby lock service for loosely-coupled distributed systems](https://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf)

- [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/36971.pdf)

- [Bigtable: A Distributed Storage System for Structured Data](https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf)
- [MapReduce: Simplified Data Processing on Large Clusters](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/16cb30b4b92fd4989b8619a61752a2387c6dd474.pdf)

- [The Google File System](https://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf)

- [TAO: Facebook’s Distributed Data Store for the Social Graph](https://www.usenix.org/system/files/conference/atc13/atc13-bronson.pdf)

- [Scaling Memcache at Facebook](https://www.usenix.org/system/files/conference/nsdi13/nsdi13-final170_update.pdf)

- [Monarch: Google’s Planet-Scale In-Memory Time Series Database](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/d84ab6c93881af998de877d0070a706de7bec6d8.pdf)

- [Gorilla: A Fast, Scalable, In-Memory Time Series Database](https://www.vldb.org/pvldb/vol8/p1816-teller.pdf)

- [Dynamo: Amazon’s Highly Available Key-value Store](https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf)

- [Zanzibar: Google’s Consistent, Global Authorization System](https://storage.googleapis.com/pub-tools-public-publication-data/pdf/10683a8987dbf0c6d4edcafb9b4f05cc9de5974a.pdf)
Why Will You Buy Verified Cashapp Accounts From Smmvcc?
Tags: webdev, javascript, buycashapp, beginners
Published: 2024-01-23 16:09:03

You should buy verified Cashapp accounts from [Smmvcc](https://smmvcc.com/product/buy-verified-cash-app-accounts/) because they offer secure and trustworthy accounts. 

Introducing Smmvcc, the go-to platform for purchasing verified Cashapp accounts that prioritize security and trustworthiness.

With their wide range of secure accounts, Smmvcc ensures that you can buy with confidence, avoiding potential risks and scams. 

Whether you’re an individual or a business, their verified Cashapp accounts provide the peace of mind you need to securely transfer and receive funds.

Smmvcc's commitment to quality and reputation is evident in their rigorous verification process, ensuring that all accounts meet the highest standards. 

Say goodbye to the hassles of unreliable accounts and embrace the convenience and security of Smmvcc's verified Cashapp accounts.

Our All Accounts Are 100% Legit and Verified

♦ 100% verified accounts, USA, UK, CA and other countries
♦ BTC enabled and Non BTC Enabled (Available)
♦ 100% Satisfaction Guaranteed
♦ Phone Verified Accounts
♦ Email Verified
♦ SSN Verified
♦ Card Verified
♦ Bank Verified
♦ BTC Enabled
♦ ID, License, Passport Verified
♦ Money-back guarantee 100%
♦ Login Guaranteed
♦ 30 Days Unlimited Free Replacement
♦ 24/7 customer Support

Have more questions? Contact us right now-

Email: admin@smmvcc.com
Telegram: @smmvcc
Skype: smmvcc.0@gmail.com
WhatsApp: +1 (424) 479-1518

**Benefits Of Verified Cashapp Accounts
**
When it comes to buying verified Cashapp accounts, Smmvcc is your go-to option. The benefits of purchasing these accounts are numerous, but let's focus on two key aspects: security and safety, and increased transaction limits.

Smmvcc ensures that all the Cashapp accounts they provide are fully verified, offering an extra layer of security for your transactions. 

With these verified accounts, you can have peace of mind knowing that your personal and financial information is protected. 

Smmvcc follows strict guidelines to ensure that all accounts meet the highest security standards.

Buying a [verified Cashapp account](
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b94b6zmx1pvo2mv0j1n9.png)

) from Smmvcc allows you to enjoy higher transaction limits. This means that you can send and receive larger amounts of money, making it convenient for both personal and business transactions. 

With increased transaction limits, you have the flexibility to make larger purchases or handle higher financial volumes.

**Conclusion**

With Smmvcc, [buying verified Cashapp accounts](https://smmvcc.com/product/buy-verified-cash-app-accounts/) is the smart choice for seamless transactions and enhanced security. Their commitment to providing genuine accounts, quick delivery, and excellent customer support sets them apart. 

So, why hassle through the complexities when you can trust Smmvcc for hassle-free transactions?

Don't let the opportunity slip away - experience the convenience and reliability of verified Cashapp accounts today!
Planning For Interview Preparation (2 months)
Tags: interview, career, webdev, javascript
Published: 2024-01-23 15:55:59

## بِسْمِ اللهِ الرَّحْمٰنِ الرَّحِيْمِ

I am a software engineer currently working for a health tech company for last 1.5 years. I am in my notice period for 1 month. 

This post is all about my interview preparation planning for next 2 months. I will share the whole journey and will post everyday that I will cover. In these 2 months I will try to cover some important topics which are give below.

1. **Data structure and Algorithm**: I will try to solve 3-4 problems each day. I will share the problems I will solve each day.

2. Object Oriented Programming.
3. System Design.
4. Database Management System(MySQL).
5. Nodejs & React

I will share all the study materials and Links.
Understanding and Implementing Foreign Keys in SQL Server
Tags: sql, sqlserver, dbforge, devart
Published: 2024-01-23 15:55:55


Learning to manage foreign keys in SQL Server is essential to designing and maintaining databases. This article serves as a thorough tutorial, going over each step of creating foreign keys and how to tackle any problems that may crop up. Adeptly handling foreign keys ensures data integrity and a well-structured database environment. Throughout this article, we will utilize dbForge Studio for SQL Server as our testing ground for all the examples, demonstrating practical implementations of each idea.

Learn more: https://blog.devart.com/foreign-key-in-sql-server.html