teleren/devto huggingface dataset:
Weekly Dev Findings 7
Tags: news, javascript, python, webdev
Published: 2023-10-01 07:42:46

It appears that there are not many Russians here, so I decided to write this issue in English. I wonder if Russian language will be a problem, or if it does not matter, and that is my doom to do stuff on the Internet without any feedback.

---

## Yandex Scale 2023

Yandex Scale - annual conference about Yandex Cloud. Here are the news:

- Redesigned Documentation UI & GPT-search
- Open sourced technologies:
    - [Datalens](https://datalens.tech/) - analytic platform
    - [Diplodoc](https://diplodoc.com/) - documentation tool
    - [GravityUI](https://gravity-ui.com/) - Yandex Cloud UI-kit
- YDB support for Postgres SQL & Kafka
  - YDB is a serverless DB with auto-scaling capabilities which means that Yandex Cloud now has cheap auto-scaling SQL-compatiple cloud DB!

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

- Yandex Cloud Postbox - new email service like Sendgrid
- Serverless improvements
    - Async Cloud Funcion execution
    - Multi core execution
    - API Gateway improvements: rate limiting, canary deployment
- Security improvements
- Yandex Wiki updated editor
- Yandex GPT closed preview
- Yandex SpeechSense - new audio analyzing service
- [All anounces in single article](https://cloud.yandex.ru/blog/posts/2023/09/scale-2023)


--- 

## Python

- https://deshaw.github.io/pyflyby/ - tool to add auto imports
- https://github.com/litestar-org/litestar - Fast API competitor
- https://github.com/pydantic/pydantic/releases/tag/v2.4.0 - new Pydantic version with updated docs
- https://github.com/zqqqqz2000/shshsh - yet another way to run shell commands in Python
- https://ponder.io/why-are-there-so-many-python-dataframes/ - dataframes overview

## Frontend

- https://wouterlms.github.io/forms/ - yet another form lib for Vue based on Zod
- https://ui-libs.vercel.app/- ui-kit comparison tool for Vue (finally)
- https://tunnel.dev/ - ngrok alternative (share localhost server to public)


## AI

- [llm-vscode](https://marketplace.visualstudio.com/items?itemName=HuggingFace.huggingface-vscode) - new Hugging Face VSCode coding assistant
- [Copilot support for Python in Excel](https://techcommunity.microsoft.com/t5/excel-blog/introducing-copilot-support-for-python-in-excel-advanced-data/ba-p/3928120) - which means you can analyze excel data by typing prompts
- https://github.com/vanna-ai/vanna - AI-SQL client
- https://www.gettyimages.nl/ai/generatie/over - image generator by Getty Images

## Tools

- https://blog.jetbrains.com/webstorm/2023/09/webstorm-2023-3-eap1/ - new WebStorm features: Cypress support, jsonc support
- https://railway.app/ - Firebase alternative
- https://www.shuttle.rs/ - Heroku Rust alternative
- https://hurl.dev/ - raw HTTP request client (free JetBrains HTTP client)
Vendor slashes prices for pre-built Azure DevOps Agent
Tags: devops, azure, cicd
Published: 2023-10-01 07:34:54

RTBusinessValidation has slashed the price for their pre-built Azure DevOps agent image by a whopping **66 percent**. The image is available in the [Azure Marketplace](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/rtbusinessvalidation1685730553911.ado-agent-ms-stack-ubuntu2204?tab=Overview) and contains all the open source tools included in the official Microsoft Hosted pool image.

Save time by using the pre-built image. No more lost sprints for maintance of build and deployment agents.
Software Development Diagrams - Base Exercise
Tags: diagrams, productivity, beginners, softwaredevelopment
Published: 2023-10-01 07:05:00

This exercise will be utilized in the upcoming articles to comprehend and apply the concepts using a real-life example.

The **MyDoctor** application aims to be a management tool for the appointments of a doctor.

A hospital has multiple offices. 

The users of the application can be doctors and patients.

The doctors can apply to practice in offices and create a schedule for an office. The schedules in different offices can’t overlay.

📝 *Example:
Doctor Ana is available in Office 4 on the 4th of September during 1 PM - 5PM.
Doctor Ana can’t practice in Office 5 on the 4th of September during 3PM - 8 PM, but she can practice in Office 5 on the 4th of September during 5:30PM - 8 PM.*

The patients can see the existing doctors in the system, the schedule of the offices and can book appointments for specific doctors and for specific schedules. The appointments can be of 3 types: 

- Blood Test - 15 mins
- Consultation - 30 mins
- Surgery - 60 mins

The booking of an appointment will not be possible if another appointment is already booked at the same time frame. An email is sent to the patient with the confirmation of the appointment.

<aside>
📝 _Example:
**Action 1**: User Mike will create a blood test booking for Doctor Ana for the 4th of September starting with 15:30 PM → Possible
**Action 2**: User Mike will create an intervention booking for Doctor Ana for the 4th of September starting with 15:00 PM → Not Possible
**Action 3**: User Mike will create an intervention booking for Doctor Ana for the 4th of September starting with 16:00 PM → Possible_
</aside>
How to become a pro at JavaScript
Tags: hello, world
Published: 2023-10-01 06:45:42

In this post, I will show you 5 awesome javascript tricks which will make your life more easier. And will help you to become a better developer. So if you are interested, continue reading.

New one

## Trick-1: Remove duplicates from an Array!

This trick is pretty simple. Suppose I have an array which is containing number, strings and booleans. And in this array I want to make sure, that there's no duplicate item. So how do you do do that?

```javascript
const array = [1, 2, 3, 2, 1, true, true, false, 'Ratul', 1, 5];
const filtered__array = [...new Set(array)];
console.log(filtered__array) // [ 1, 2, 3, true, false, 'Ratul', 5 ]
```

Simple!

## Trick-2: Turn a Decimal Number to a integer.

This one is a pretty straight forward trick. Let me show you.

```javascript
const number = 23.6565
console.log(number | 0);
```

Isn't it so simple!

## Trick-3: Getting the Last Value of an Array!

Suppose you have an array of something. Now if you want to have the last item of the array, how will you do that?

```javascript
const array = [1, 2, 3, 4, 5]
const last_Item = array.slice(-1)
console.log(last_Item)
```

Here we go! Now if you put -2 instead of -1, you will get the last two values of the array and then if you give -3 instead of -2, you will get the value of last three index's and so on.

## Trick-4: Get a random index value from an array.

Suppose we are doing a lottery programme. We have an array which is containing the names of the prticipants. Now we want only one user randomly from the array to decide a winner.

```javascript
const participants = ['Ratul', 'George', 'july', 'Padrik', 'G']
const winner = participants[Math.floor(Math.random() * participants.length)]
console.log(winner) // july was the winner 😊
```

## Trick-5: Detect the most lengthy word in an array

Create an array and add some different strings. Now print the most lengthy string of this array.

```javascript
const array = ['Apple', 'Pine-apple', 'Banana', 'Jack-fruit']
let most_lengthy_string = ''
array.forEach((item) => {
if (item.length > most_lengthy_string.length) {
most_lengthy_string = item
}
})
console.log(most_lengthy_string)
```

Simple! So let me explain you what's going on here. Firstly we have array which is containing some strings. And After that, I have created a variable which is containing an empty string. And now, to detect the most lengthy string in this array, I need to take a look at all of the array items So I have looped through the array. And if the array's item length is greater that the length of our "most_lengthy_string" The we are reassigning the value of the variable and after all I am just printing out the variable. That's all!

### Conclusion

Thanks for reading this article. Hope you enjoyed that. If you have any doubt regarding that post, please let me know. And make sure you follow me to recieve all the informational posts just like that.

# :)
AWS Best Practices & Tips
Tags: aws, devops, cloud, productivity
Published: 2023-10-01 06:45:03

[✅ Subscribe to Newsletter 👨🏻‍💻](https://short.firstfinger.in/newsletter)

---

## Operations

- Disable SSH access to all servers  
- Treat servers like cattle, not pets - automate everything and don't rely on custom configurations
- Don't assign static or elastic IPs to servers
- Automate all possible processes with scripts and infrastructure-as-code
- Require IAM accounts for all users instead of using root credentials
- Keep application state off of servers as much as possible

## Security

- Prefer EC2 roles over assigning IAM users to servers
- Assign IAM permissions to groups, not individual users
- Set up automated security auditing across all services 
- Use CloudTrail to keep an API audit log of all activity

## S3

- Use "-" instead of "." in bucket names for SSL certificate compatibility
- Avoid filesystem mounts and direct EC2 access to S3
- Putting CloudFront CDN in front of S3 can improve performance
- Add random strings to the beginning of object keys for anonymity  
- Restrict public access to buckets and objects

## EC2/VPC

- Tag all resources for identification and organization
- Use termination protection for non-auto-scaling instances
- Launch instances within a VPC for network control
- Use reserved instances to save money for steady-state workloads
- Lock down security groups to only necessary ports and sources  
- Don't keep unassociated Elastic IPs which incur charges

## Monitoring

- Use CloudWatch for metrics and CloudTrail for API logs
- Leverage the free metrics provided by AWS services  
- Send custom application logs and metrics to CloudWatch
- Enable detailed monitoring for granular CloudWatch data

## Auto Scaling

- Scale down on insufficient data, not just on alarms
- Use ELB health checks over EC2 checks for accurate auto-scaling
- Only use the same AZs that the attached ELBs are configured with
- Avoid multiple scaling triggers in the same group

## ELB

- Terminate SSL on the ELB, not on instances
- Pre-warm ELBs before big traffic spikes when possible

## RDS

- Set up event subscriptions to respond to RDS events

## Billing

- Set up granular billing alerts to avoid unexpected costs

## Route 53

- Use alias records to route to AWS resources

## EMR

- Specify an S3 location for Hive query results

## General

- Horizontally scale systems when possible
- Be aware of service limits before deploying
- Decide on a resource naming convention early
- Validate if AWS is appropriate for a workload
- Distribute resources across AZs for high-availability
- Delete unused resources to minimize costs
- Decide on key management from the start

---
![AWS Best Practices](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5kaxm0hh5qgvk6qfqydl.jpg)

Source & Credit: roadmap.sh

[✅ Subscribe to Newsletter 👨🏻‍💻](https://short.firstfinger.in/newsletter)
WATCH MOVIES ON AN ONLINE WEBSITE
Published: 2023-10-01 06:44:49

In the dynamic digital entertainment landscape, dedicated streaming apps have revolutionized how we engage with movies and shows. The Pikashow app, consistently introducing new versions with enhanced features, has emerged as a prominent player in this realm. Delving into why individuals gravitate towards downloading the Pikashow new version APK -- download instead of conventional online websites unveils a combination of convenience, content curation, and offline accessibility.
**[Click](https://nameboost.blogspot.com/watch-movies-on-online-website)**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f81fl7wgcnupjbdanis2.jpg)
Data Science for Beginners: 2023 - 2024 Complete Road Map
Tags: datascience, data, dataengineering
Published: 2023-10-01 06:32:27

The pathway to data science can be a daunting task in this world filled with tutorials, courses, articles, and more. While this is yet another data science article, it takes a different approach to simplicity and brevity.

## Understanding Data Science
Data science covers the collection, analysis, and interpretation of data to uncover patterns and insights. It helps you make informed decisions and solve problems. Let's break it down.

## Prerequisites (Programming and Math)
   - Python or R – These are versatile programming languages built specifically to be easy to use for handling and manipulating data.
   - Yes. You do need mathematics. Especially statistics and linear algebra.

## Data Gathering
   - This is a skill that is not emphasized enough, but data is the main pillar for the entire data science field. Learning how to gather data into a form that can be processed is crucial.
   - For this, you need a combination of sources, building Python scripts to combine datasets, getting from other programs, and more.
   - For a start, there is no need for complexity, as there are plenty of datasets online to reuse.

## Data Handling
   - Master tools like NumPy and Pandas for playing with data.
   - Visualize data using Matplotlib and Seaborn.
   - Learn how to clean and transform data.
   - Use EDA techniques to understand your data better.

## Extracting Insight from Data
   - This is possible through visualizations, with Python having libraries like Matplotlib and Seaborn for that. Other useful tools include R and its powerful ggplot2 library, Tableau, Power BI, and more.
   - The key is to pick a few and get good at using them, the importance lies in understanding what the data represents rather than using the tools.

## Machine Learning Basics
   - Machine learning (ML) is basically divided into supervised, unsupervised and semi-supervised learning. 
Supervised data includes data that has labels, so the ML labels understand its structure. 
   - Unsupervised is the opposite, where the models have to figure out the structure and patterns. 
   - Semi-supervised strikes a balance between the previous two (don't worry, there is more to learn as you progress).
   - Other notable mentions are deep learning and reinforcement learning, but these come in the advanced stages of data science and might not be suitable for a beginner.

## Applying the Knowledge
   - Make noise and keep documenting your journey through articles and social media posts. Oh, and do not forget to build a portfolio while at it, you need to prove your skills if you expect to get hired.

**NB: Keep learning.**
תיקון דלתות כניסה: יציבות ובטיחות לבניין שלך
Published: 2023-10-01 06:28:46


**[תיקון דלתות כניסה](https://telavivlocksmith.link/%D7%AA%D7%99%D7%A7%D7%95%D7%9F-%D7%93%D7%9C%D7%AA%D7%95%D7%AA-%D7%9B%D7%A0%D7%99%D7%A1%D7%94-%D7%9C%D7%91%D7%A0%D7%99%D7%99%D7%9F/)** הוא נושא חשוב שקשה להתעלם ממנו. הדלת הכניסה היא הנקודה הראשונה שמבקרים בה אורחים והיא משמשת כסמל לבניין כולו. בנוסף לאספקת בטיחות, הדלת הכניסה גם משמשת כמגע בין הבית או העסק לעולם החיצוני. במאמר זה, נתמקד בתיקון דלתות כניסה ונספק מידע רב על היתרונות שבו, החומרים שניתן להשתמש בהם, וההוצאות הצפויות.

יתרונות שבתיקון דלתות כניסה:

שיפור בבטיחות: הדלת הכניסה היא נקודה פוטנציאלית לחציות ופריצות. בביצוע תיקון מתאים, ניתן לשפר את בטיחות הבניין ולמנוע כניסה לא מורשית.

שיפור בידוד תרמי: דלתות כניסה במצב רע יכולות לגרום לאובדן חום או קרירות בבניין. תיקון הדלת יכול לשפר את בידוד התרמי ולחסוך בהוצאות החשמל והחימום או הקירור.

מראה אסתטי: הדלת הכניסה היא גם מרכז האופי והעיצוב של הבניין. תיקון דלת יכול לשדרג את המראה החיצוני שלו ולתת פרטיות עיצובית לבניין.

הגנה מאובדן רעש: דלת מתוקנת כראוי יכולה להפחית את הרעש מסביב וליצור אטמוספירה שקטה יותר בבניין.

עמידות לתנאי מזג אוויר: תיקון הדלת יכול לחזק את הדלת ולהגן עליה מנזקי מזג האוויר הקשים, כמו גשמים חזקים או חום חצייתי.

חומרים לשימוש בתיקון דלתות כניסה:

עץ: עץ הוא חומר טבעי ואסתטי שנמצא בשימוש נרחב בדלתות כניסה. יש להתייחס לתחזוקתו ולציון לגבי מגמתו החיצונית.

פלדה: פלדה היא חומר חזק ועמיד המתאים לדלתות כניסה מאובזרות במערכות נעילה מתקדמות.

אלומיניום: אלומיניום הוא חומר קל ועמיד בפני חלודה שנפוץ ביותר לבניית דלתות כניסה.

PVC: PVC הוא חומר פלסטי המשמש לדלתות כניסה בעיקר בבניינים המגיעים בתקציב נמוך יותר.

הוצאות משוערות:

הוצאות לתיקון דלתות כניסה יכולות להשתנות בהתאם למשימה ולחומרים שנבחרו. תיקון של דלת פשוטה עשויה לעלות בין 500 דולר ל-1,500 דולר ארה"ב, בעוד שתיקון של דלת כניסה מרוכזת יכול לעלות באופן ממוצע בין 2,000 דולר ל-5,000 דולר ארה"ב או יותר.

בסיכום, תיקון דלתות כניסה הוא צעד חשוב לתחזוקת הבניין ולשיפור הבטיחות והבידוד התרמי שלו. בבחירת חומרים וביצוע תיקון תקין, ניתן להבטיח שהדלת הכניסה תשמש את מטרותינו הפונקציונליות והאסתטית בצורה מושלמת.
Single Responsibility Principle in React
Tags: react, typescript, javascript, learning
Published: 2023-10-01 06:25:48

## S (Single Responsibility Principle)

> _A class should have only one reason to change._

![Too much responsibility](https://media.tenor.com/hVNj2fT1mPUAAAAM/toomuch-responsibility.gif)

The Single Responsibility Principle (SRP) in React suggests that each component should have one clear responsibility or role. In other words, a React component should do one thing and do it well. 

This principle helps keep your codebase clean and maintainable by ensuring that each component is focused on a specific task. For example, if you have a button component, its responsibility should be limited to rendering the button and handling user interactions. Any unrelated tasks, such as data fetching or state management, should be handled by separate components or modules.

By adhering to the SRP, your React code becomes more organized, easier to understand, and less prone to errors, making it more efficient to develop and maintain.

Let's take a look at this sample code.

```typescript
const BookList = () => {
  const [books, setBooks] = useState<IBook[]>([]);

  const fetchBooks = async () => {
    try {
      const response = await fetch("https://api.com/books");
      const data = await JSON.parse(response);
      setBooks(data);
    } catch (err: any) {
      console.log(err.message);
    }
  };

  useEffect(() => {
    fetchBooks();
  }, []);

  return (
    <div>
      {books?.map((book) => (
        <Book title={book.title} image={book.image} key={book.id} />
      ))}
    </div>
  );
};
```

The code seems pretty standard here. What it does is it fetch book data and render it.

Apparently the code violates this principle because the code would have more than one reason to change or more than a single responsibility which are rendering and fetching.

What we can do about it is to simply separate the logic between the rendering and fetching and the component would only receive the final data and doesn't care about the fetching logic.

```typescript
  // useGetBooks.hook.tsx
const useGetBooks = () => {
  // We moved the fetching logic into a custom hook
  const [books, setBooks] = useState<IBook[]>([]);

  const fetchBooks = async () => {
    try {
      const response = await fetch("https://api.com/books");
      const data = await JSON.parse(response);
      setBooks(data);
    } catch (err: any) {
      console.log(err.message);
    }
  };

  useEffect(() => {
    fetchBooks();
  }, []);

  // Return only the final books result
  return { books }
}
```

```typescript
// BookList.component.tsx
const BookList = () => {
  // We call the hook and retrieve the books
  const { books } = useGetBooks();

  return (
    <div>
      {books?.map((book) => (
        <Book title={book.title} image={book.image} key={book.id} />
      ))}
    </div>
  );
};
```

Now we have two different files which has their own responsibility and it looks neat!

## What's next?

Let's not stop here since there are 4 more principles left to learn in SOLID which I will cover in the next article so stay tuned.

Dadah~ 👋
How to Fix “react-scripts is not recognized as an internal or external command” Error
Tags: react, reactjsdevelopment, javascript, frontend
Published: 2023-10-01 06:19:57

If you’ve encountered the error message “react-scripts is not recognized as an internal or external command” while working on your React project, it’s likely due to an issue with the installation or configuration of react-scripts. In this article, we will explore the different steps to resolve the error.
[Read More](https://reactjsguru.com/react-scripts-is-not-recognized-as-an-internal-or-external-command/)
97 berufliches Vorwärtskommen: Überzeugung und Gewissheit.
Tags: deutsch, career, motivation, discuss
Published: 2023-10-01 06:00:00

Moin Moin,

die eigene Überzeugung, sowie die Wertevorstellungen der Gemeinschaft prägen einen sehr. Sie prägen einen sehr im Bezug darauf, wofür man sich auf seinem Karriere-Weg entscheidet – also auch wie man seine Restzeit gestaltet. 
Einige Fragen dies bezüglich sind also
- Was für Wertevorstellungen hat man?
- Woher hat man diese?
- Hat man sich vergewissert, dass diese Wertevorstellungen gut (1) sind?

Es macht keinen Sinn sich unnötig selbst zu sabotieren, daher empfehle ich einmal gründlich zu prüfen.
Ein bekannter Ausspruch bzgl.  freier Software unter der GPL ist bspw. [„Linux is a cancer …“↗](https://www.theregister.com/2001/06/02/ballmer_linux_is_a_cancer/) von Steve Ballmer dem damaligen Geschäftsführer von Microsoft ( Jahr 2001 ).

Nun mag mancher diese Meinung übernehmen und sich darauf berufen, dass ein Geschäftsführer von Microsoft dies sagte – da müsse ja etwas dran sein. Für den eigenen Karriere-Weg ist es jedoch besser man versteht genau worum es geht. Hat man die unterschiedlichen Software-Lizenzen gelesen? Versteht man deren Ziele? Versteht man die unterschiedlichen Modelle?

Eine genaue Auseinandersetzung mit den eignen Wertevorstellungen beeinflusst auch für welche Unternehmen man arbeitet bzw. mit welchen. Nutzt ein Unternehmen beispielsweise gerne freie Software, bezeichnet es jedoch als Krebsgeschwür und trägt entsprechend nichts zur Förderung derartiger Projekte bei, ist es fraglich, ob man dort arbeiten sollte, wenn man doch freie Software unterstützen möchte.

Was denkst du zu dem hier ausgeführten?
Wie stehst du zu Ethik in der IT?
 

Lass uns mittels Kommentaren austauschen.

Beste Grüße,
Mustafa

Oder auch mittels E-Mail: mustafa.kevin.dwenger@posteo.de
Betreff: Austausch

(1) zu verstehen als:
[(sittlich) einwandfrei, wertvoll↗](https://www.dwds.de/wb/gut#d-1-5)