teleren/devto huggingface dataset:
Cloud Resume Challenge Chunk 2
Tags: devops, webdev, aws, career
Published: 2024-05-31 21:42:27

Please see [Chunk 1 to see how we got here](https://dev.to/brianhaas/cloud-resume-challenge-chunk-1-3681)


## What's needed for the CRC chunk 2

Chunk 3, is the "back end" of the [CRC](https://cloudresumechallenge.dev/) challenge. Here are the pieces needed:
   * A database to store the hit count - I chose DynamoDB.
   * An API to retrieve/update the hit count in the database. I chose to use a Lambda function using Python. 
   * A way to trigger the Lambda function as a REST API. I chose to use Apigateway. 

### Getting started

I used the aws console at first to get reacquainted with dynamodb, lambda and apigateway. After getting everything to work, I used [Terraform](https://www.terraform.io/) to deploy all of the infrastructure pieces. The Github repo can be found [here](https://github.com/chronosAZ/CRC-Backend).

Using boto3 and python in Lambda functions was nothing new. I was not that familiar with APIGateway though.

The function to update the hit count in the dynamodb table is [pretty straight forward](https://github.com/chronosAZ/CRC-Backend/blob/main/code/hitcount.py)

The APIGateway pieces took a bit longer. It required some time reading the docs to understand staged, deployments, CORS configuration, etc. But, in the end, I got it all working and was able to use CURL and Postman to test out the API and successfully update the hit counter. 

Here is all of the [code](https://github.com/chronosAZ/CRC-Backend/tree/main)

It was now time to glue it all together.
I built a React Native Boilerplate to ship your apps faster🚀
Tags: reactnative, javascript, mobile, beginners
Published: 2024-05-31 21:31:09

Hey everyone!

I'm excited to introduce my latest project: ExpoShip. It's a React Native/Expo boilerplate designed to make your development process much faster and pain free. ExpoShip comes with:

- **Paywall integration**: Ready-to-use in-app purchase and subscription setup.
- **User authentication**: Secure and seamless user login and registration.
- **Push notifications**: Pre-configured to keep your users engaged.
- **UI components**: A collection of reusable and customizable UI elements.
- **Dark mode**: Built-in support for dark mode to enhance user experience.

For first 100 customers use code **FIRST100** at the checkout to get 40% off.

I'd love for you to check it out and share your feedback!

[https://expoship.dev](https://expoship.dev)

Happy coding!
Babylon.js Browser MMO - DevLog - Update #1 - Rewriting to ECS framework
Tags: babylonjs, gamedev, indie, mmo
Published: 2024-05-31 20:56:16

Hello after long break!
Finally I'm back and I'll continue working on my project.
Project code got messy and it was harder and harder to add new things. After long thinking I decided that I'll rewrite whole code base and try to implement simple ECS framework (just for sake of maintainability and extensibility).
What You see on the video is effect of integrating server and client and loading player after receiving confirmation from the server. Sounds easy but under the hood there's quite advanced mechanism (hopefully not overengineered - will found out in the future).

Next on the backlog is player movement - for now without any client side prediction.

{% youtube f-w7piZwI6A  %}
HOW MUYERN TRUST HACKER HELP IN RECOVERING FROM CRYPTO FRAUD
Published: 2024-05-31 20:53:06

Muyern Trust Hacker stands as a beacon of trust and reliability in the ever-expanding realm of digital asset recovery. In a world where online scams and cybercrime proliferate, finding a trustworthy ally like Muyern Trust Hacker can be a game-changer for those who have fallen victim to fraudulent schemes. My journey with Muyern Trust Hacker began after a devastating loss to a fake investment firm. Amidst the despair and frustration, Muyern Trust Hacker emerged as a guiding light, offering hope and tangible solutions to reclaim what was rightfully mine. What truly sets Muyern Trust Hacker apart is its unwavering commitment to its clients. Unlike other recovery firms that may prioritize profit over people, Muyern Trust Hacker operates with integrity and transparency at every turn. From the initial consultation to the successful recovery of funds, their dedication to providing top-notch service is evident in every interaction. Muyern Trust Hacker's expertise is nothing short of exceptional. With a deep understanding of cybersecurity protocols and digital forensics, they possess the technical acumen to navigate even the most complex cases. Whether recovering stolen cryptocurrencies, tracing fraudulent transactions, or combating identity theft, Muyern Trust Hacker approaches each challenge with precision and skill. What truly impressed me about Muyern Trust Hacker was their commitment to delivering results promptly. In an industry where time is of the essence, their swift action and efficient approach ensure that clients can reclaim their assets with minimal delay. This alleviates the financial strain caused by the loss and provides much-needed peace of mind. Furthermore, the level of personalized attention and support provided by Muyern Trust Hacker is unparalleled. Unlike larger firms where clients may feel like just another case number, Muyern Trust Hacker fosters a genuine connection with each individual. From regular updates on the progress of the recovery process to tailored strategies based on the specific circumstances, clients can rest assured knowing that their case is receiving the attention it deserves. In addition to their impressive track record of success, Muyern Trust Hacker's commitment to ongoing support is commendable. Even after the recovery process is complete, they continue to offer guidance and advice to ensure that clients are equipped with the knowledge and tools necessary to safeguard their assets in the future. In conclusion, Muyern Trust Hacker is more than just a recovery firm – they are a trusted partner in the fight against online scams and fraud. With their unwavering dedication to their clients, unmatched technical expertise, and proven track record of success, Muyern Trust Hacker stands as a beacon of hope for those seeking justice in the digital world. Web page: https: //muyerntrusthack .solutions/ and Tele gram at: muyerntrusthackertech

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/by0p80o9tjnql60jkenw.jpg)
Cloud Resume Challenge Chunk 1
Tags: devops, webdev, aws, career
Published: 2024-05-31 20:52:12

## Chunk 1: Building the Front End

Chunk 1 of the AWS [CRC](https://cloudresumechallenge.dev/) has a few things to accomplish:
  * Build a resume site using static HTML and CSS
  * Host the static content on an s3 bucket
  * Access the website using HTTPS, which requires CloudFront
  * Use a custom domain name, which will require a certificate for https usage and DNS entries using Route53


### Getting started
I am not a front-end web developer, and UI/UX design is not one of my skills. So, rather than fumble around trying to make my resume webpage look good, I decided to use a static website generator. I chose to use [Hugo](https://gohugo.io/), since they have a lot of templates to choose from. 

Hugo has a bit of a learning curve, but once I got through that, it was pretty straight forward to edit and generate my [site] (https://brianwhaas.com/).

### The infrastructure

To make things easy, I went ahead and registered a new domain name with AWS, and it automatically created a Route53 hosted zone. So that part was done.

Rather than point and click in the AWS console, I decided to start with IaC using [Terraform] (https://www.terraform.io/). I also decided to use GitHub actions(https://docs.github.com/en/actions) for CI/CD to get familiar with them. I had only used GitLab CI/CD and runners previously, which are very similar to GitHub Actions. 

You can see what I wrote [here](https://github.com/chronosAZ/CRC-Frontend/tree/main/tf). After scouring for examples, I wrote some scripts to create the s3 bucket, certificate, and CloudFront Distribution. 

Everything was working great, except I didn't realize that the CloudFront default root document(index.html), only applies to the actual web root, not any subdirectories. Unfortunately, the Hugo site I generated, used subdirectories for my individual pages. I [wrote](https://github.com/chronosAZ/CRC-Frontend/blob/main/tf/js/rewriteindex.js) a CloudFront function to rewire all requests for "/ or subdir/" to grab the index.html document in that folder.  

So far, so good. It was time to move onto the backend of the challenge.
Calorie Nutrition Tool
Published: 2024-05-31 14:26:04

Discover the wonders of nutrition with our [calorie nutrition tool](https://discoverybody.com/calorie-nutrition/)! If you've ever found yourself puzzled by the nutritional content of your meals, fret not - our user-friendly tool is here to guide you. Whether you're a seasoned health aficionado or a complete novice in the realm of nutrition, our tool provides a straightforward way to understand what you're eating.

From tracking your daily calorie intake to exploring the nutritional values of different foods, our tool empowers you to make informed dietary choices with ease. Join us on a journey towards healthier eating habits and a happier, more vibrant lifestyle. Explore the world of nutrition today with our calorie nutrition tool!

https://discoverybody.com/calorie-nutrition/


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f18lxueqe8h6bod47att.png)
Load Balancing
Published: 2024-05-31 20:48:39

Today I learned about Load Balancing. 

**What is Load Balancing?**
Load Balancing is a tool or application that distributes network or application traffic across multiple servers or applications to improve their performance and reliability.

**How does it do this?**

- **Distributing the Load:** Load balancing spreads the workload evenly across servers to improve application performance. It’s like having multiple checkout lanes open at a busy supermarket.
- **Reducing Latency:** By redirecting client requests to a server closer to the user, load balancing helps reduce the time it takes for a website to respond. It’s like choosing the fastest route to your destination.
- **Increasing Availability:** Traffic is distributed across multiple targets in different Availability Zones, ensuring that even if one zone has issues, your service remains up and running.
- **Auto-scaling:** Load balancers can collect information about server usage and dynamically adjust resources accordingly. 

**Why is it useful?**
Load balancing is useful because it ensures that incoming network traffic is distributed evenly across multiple servers, preventing any single server from becoming overwhelmed and improving overall application performance.
The end of my first week, can't wait for the next one!
Published: 2024-05-31 19:48:42

Hey everyone,

Can you believe it's already Friday? Time flies when you're having fun, and let me tell you, my first week at this gaming development internship has been nothing short of incredible!

Today kicked off with our weekly review meeting, where we all gathered to discuss the progress we've made throughout the week. And let me just say, I was blown away by how much ground we've covered in such a short amount of time. It's amazing to see how everyone's hard work and dedication have paid off, pushing our projects forward in exciting ways.

Before diving into the meeting, I spent the morning putting the finishing touches on my mini-game. It's been a whirlwind of tweaking and fine-tuning, like making it so the player doesn't move on game over or like making more boundaries, but I'm thrilled with how it's shaping up. Making those little tweaks here and there may seem insignificant, but it's those small details that can really elevate the player experience.

Throughout the week, I've had the opportunity to immerse myself in the world of game development, learning new skills and techniques along the way. From coding mechanics to designing gameplay elements, every day has been a new adventure filled with discovery and growth.

As I reflect on my first week here, I can't help but feel grateful for the opportunity to be surrounded by such a talented and passionate team. The support and encouragement I've received have been invaluable, and I can't wait to see what the future holds as I continue to learn and evolve in this exciting industry.

Thanks for joining me on this journey, and stay tuned for more updates as I navigate the world of gaming development!
How to overcome fluctuating productivity
Tags: productivity, programming, career, help
Published: 2024-05-31 20:22:50

## Problem

Hello DEV-Community i have a problem. I work now since nearly 3 years as a Data Scientist with a health insurance company. Most tasks are usually easy to accomplish. 

However, I notice that the longer a task takes, the less motivation I have (according to _Robert C. Martin, Clean Code [1]_) and my productivity fluctuates daily.

![[1]](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3n4kvhaosqnkxr8wyowd.png)*[1] Robert C. Martin, Clean Code, Page 37, 4A*

There are days when I get a lot done and others when I find it difficult to motivate myself. I notice that this happens to me even when I have deadlines and I don't want to miss a deadline.

## Question

I think that many people have this problem and that fluctuations are normal and are of course determined by many factors (sleep, diet, stress, etc.). 

However, I wanted to ask how you deal with it and how you deal with longer tasks and the decrease in productivity.

Do you use special software or special working methods or how do you keep your productivity at a certain level.

## Further Action

If there is no thread on this issue yet, I would like to collect the answers and create a __HowTo__ or a __Github repository__ from them.

I would also be happy to receive book suggestions that might help. I think this topic can help a lot of people, especially __CodeNewbies__.
Freewallet continues the deception!
Published: 2024-05-31 20:09:11


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

As part of our ongoing efforts to protect cryptocurrency users from fraud, we have come across yet another disturbing case involving the infamous cryptocurrency wallet Freewallet Freewallet. Recently, a user from Russia contacted us with a disturbing story that clearly demonstrates the deceptive tactics used by Freewallet.
The person, who wished to remain anonymous, registered on Freewallet around April 21-22 and funded his wallet with a significant amount of $6,400. However, as early as April 26, he discovered that he could not access his funds as the wallet hung on an endless loading screen. In desperation and anxiety, the user contacted Freewallet support for help.
After contacting support, access to the wallet was temporarily restored, indicating that the site's algorithm had automatically blocked the user's login. However, this was only the beginning of his ordeal. The user was asked to provide data about all IP addresses from which the wallet was accessed and about each transaction. Despite the intrusive nature of these requests, the user agreed and documented everything in detail in his email correspondence.

As another example of Freewallet's manipulative tactics, a user was asked to record a video from another Bings exchange account showing the transaction that sent the money. Again, the user agreed, hoping to resolve the issue and regain access to their funds.
Despite fulfilling all of these requirements, the user's problem remains unresolved. It is becoming increasingly apparent that Freewallet is using these endless verification steps not as a legitimate security measure, but as a tactic to frustrate and ultimately steal user funds.
Repeated occurrences
This case is not an isolated incident. We have received numerous reports from users around the world who have experienced similar issues with Freewallet. App administrators seem to be using KYC (Know Your Customer) and AML (Anti-Money Laundering) procedures as a cover for their fraudulent activities, blocking accounts and denying withdrawals under the pretext of security checks.
Our job is to stop these scammers and protect users from their schemes. If you have experienced similar problems with Freewallet, we encourage you to spread the word. Share your story with us at freewallet-report@tutanota.com. Together, we can expose these scams and prevent other users from being defrauded.

For those who have been victimized, we offer assistance in documenting evidence of fraud and drafting legal appeals to the appropriate authorities. Our goal is to ensure that stolen funds are returned to all victims and to hold Freewallet accountable for their actions.
Be vigilant and remember that your voice matters in the fight against cryptocurrency fraud.
FastAPI Beyond CRUD - Part 4 Modular Project Structure With Routers
Tags: fastapi, python, programming, api
Published: 2024-05-31 20:03:56

In this video, we restructure our API from a single file to a more organized structure that shall scale with our project. We achieve this using FastAPI routers. FastAPI routers allow us to organize our project into modules allowing us to group related endpoints together.

{%youtube _kNyYIFSOFU%}
Ibuprofeno.py💊| #116: Explica este código Python
Tags: python, spanish, learning, beginners
Published: 2024-05-31 20:00:00

## **<center>Explica este código Python</center>**
#### <center>**Dificultad:** <mark>Fácil</mark></center>

```py
my_tuple = (1, 2, True, 3)
print(my_tuple.count(1))
```

👉 **A.** `1`
👉 **B.** `2`
👉 **C.** `3`
👉 **D.** `Ninguno de los anteriores`

---

{% details **Respuesta:** %} 

👉 **B.** `2`

Recordemos que los booleanos en Python derivan del tipo number, entonces el valor `True` del ejemplo equivale a un `1`.

Por ello al contar cuantos valores `1` existen el resultado es `2`.

{% enddetails %}
Learning Blog 05/31/24
Published: 2024-05-31 19:59:09

Learning Markdown to better format posts.
[Link](https://www.markdownguide.org/cheat-sheet/)
Helpful cheatsheet (There's another cheatsheet on the right side)

`pp "Hello World"`
An example of inline code

```
for a in 1..5 do
     
 puts "wow"
  
end
```
An example code block

Setting up VSCode, Git, and GitHub in a new environment is always a pain

For Mac OS, first install homebrew
[Link](https://brew.sh/)
Then install git
[Link](https://git-scm.com/download/mac)
Then set your username in git
[Link](https://docs.github.com/en/get-started/getting-started-with-git/setting-your-username-in-git)
Install GitHub CLI
[Link](https://github.com/cli/cli#installation)
Run 'gh auth login'
[Link](https://cli.github.com/manual/gh_auth_login)
Run 'git init' on the repo
[Link](https://git-scm.com/docs/git-init)
Generate new SSH key
[Link](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)
Add the key to your GitHub account
[Link](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account)

Now you can add new repos from the command line onto GitHub using SSH

That should be all, full install found here
[Link](https://docs.github.com/en/get-started/getting-started-with-git/set-up-git)

Definitely want to install iterm2
[Link](https://iterm2.com/)
And then Ohmyzsh
[Link](https://ohmyz.sh/) 
So the regular terminal stops burning your retinas
Retro: Working with the Playwright Framework
Tags: playwright, javascript, testing, programming
Published: 2024-05-31 19:57:36

**Welcome to a Simple Introduction to Playwright**

In this introductory piece, I explore the basics of the Playwright framework, a powerful tool for web developers who are seeking a robust solution for cross-browser test automation. Here’s a quick look at what makes Playwright stand out in the crowded field of automation tools.

**Why Playwright?**

Playwright is designed to simplify the process of testing web applications across all modern browsers. Whether you're targeting Chrome, Firefox, Safari, or even Internet Explorer, Playwright offers a consistent API to automate actions without worrying about browser-specific quirks.

**Key Features of Playwright**

- **Cross-Browser Compatibility**: Playwright provides seamless integration across all popular browsers, ensuring that your tests are compatible no matter the environment.
- **Headless Testing**: Run tests in headless mode for faster execution, ideal for CI/CD pipelines where visual rendering is unnecessary.
- **Automation Beyond Browsers**: Not limited to browser automation, Playwright can automate web-based mobile applications, offering tools for mobile testing that include device emulation.
- **Powerful Tooling**: With features like the Playwright Inspector, developers can debug tests easily, inspect DOM elements, and even record user interactions to generate robust test scripts.

**Ease of Use**

Playwright's straightforward setup and detailed documentation make it accessible to developers new to automated testing, while its advanced features satisfy the needs of seasoned QA professionals.

**Integration with Development Workflows**

Integrating Playwright into your development pipeline is straightforward, thanks to its support for major CI/CD tools like GitHub Actions. This ensures that tests run automatically with every build, helping to identify issues early in the development cycle.

**Future Prospects**

Looking forward, Playwright is continuously evolving, with updates that promise to enhance mobile testing capabilities, introduce more intuitive visual and user experience testing, and expand its low-code testing features.

**Summing Up**

This brief overview highlights how Playwright is transforming the landscape of test automation with its comprehensive features and forward-looking roadmap. As I continue to explore this versatile framework, its potential to improve web application testing becomes even clearer, making it an invaluable asset for developers looking to streamline their testing processes.
Variables (O'zgaruvchilar)
Tags: jsvariable
Published: 2024-05-31 19:50:03


## O'zgaruvchilar (variables) dasturda ma'lumotlarni saqlash va ularga qayta murojaat qilish uchun ishlatiladi.


```
o'zgaruvchilarni e'lon qilish uchun var, let yoki const
kalit so'zlaridan foydalaniladi.
```

---

`var`

```
ES5 (ECMAScript 5) va undan oldingi versiyalarda o'zgaruvchilarni 
e'lon qilish uchun ishlatiladi.Bu kalit so'z bilan e'lon qilingan
o'zgaruvchilar funktsiya doirasida (function scope)mavjud
bo'ladi va agar funktsiya ichida bo'lmasa, global o'zgaruvchi
hisoblanadi.

Misol:

var name = "John";
console.log(name);
```

---

`let`

```
ES6 (ECMAScript 2015) bilan kiritilgan va blok doirasida
(block scope) o'zgaruvchilarni e'lon qilish imkonini beradi.
Bu kalit so'z bilan e'lon qilingan o'zgaruvchilar faqat 
{} ichida mavjud bo'ladi.

Misol

let num = 30;
console.log(num); // "30"
```

---

`const`

```
ES6 bilan kiritilgan va doimiy (o'zgarmas) qiymatlar uchun
ishlatiladi. const bilan e'lon qilingan o'zgaruvchining
qiymatini keyinchalik o'zgartirib bo'lmaydi. Shuningdek,
const blok doirasida mavjud bo'ladi.

Misol:

const name = "Ali";
console.log(name); // "Ali"
```

---