teleren/devto huggingface dataset:
Add Art to your Agile Retrospectives 🧑‍🎨🎨
Tags: agile, scrum, productivity, management
Published: 2024-06-29 21:44:58

Hey there 👋 Are your retrospectives starting to feel a bit stale? Well, it's time to grab your digital crayons and get ready to add some fun into your team meetings!

## Why Draw in Retros?

Incorporating drawings into your retrospectives isn't just about showcasing your (or lack of) artistic skills. It's about:

1. Breaking the ice and lightening the mood
2. Encouraging creative thinking
3. Boosting team engagement
4. Creating memorable experiences

## Quick and Quirky Drawing Ideas

1. **Sprint Snapshot**: 60 seconds to draw your sprint summary. Go!
2. **Agile Pictionary**: Can you draw "technical debt" without words?
3. **Team Spirit Animal**: What creature embodies your sprint?

![GIF of a team Drawing](https://i.giphy.com/media/v1.Y2lkPTc5MGI3NjExOTMwZzZtcDF0a2F4bmc1dmhnZms0a2hraGMweDdkeG5tc2UyM2FwcSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/Do2QvSFIYujw0IbVRz/giphy.gif)

These simple drawing activities can transform your retros from mundane meetings to laughter-filled brainstorming sessions. They're not about artistic perfection – they're about creativity, encouraging participation, and building stronger team bonds.

But why stop at drawings? Gifs, stickers, and more can all play a part in making your retrospectives more engaging and productive.

Curious about more fun retrospective ideas and how to implement them? 

[Read the full article here](https://kollabe.com/posts/agile-retrospective-with-drawings) to discover:
- More hilarious drawing game ideas
- The unexpected benefits of adding fun to your retros
- Tools that can help you bring drawings (and more) into your retrospectives

Remember, in Agile, it's not about being the best artist – it's about continuous improvement and having fun along the way. So, are you ready to doodle your way to better retros? 🎨😄
Chrome removing third party cookies
Tags: node, webdev, beginners, tutorial
Published: 2024-06-29 21:41:08

I was working on authentication and when I inspected my cookie in my client and I saw this warning from google chrome [insert image here] that 3rd party cookies are been deprecated and will be blocked in the future. They are working to stop 3rd party tracking via cookies [google blog](https://blog.google/products/chrome/privacy-sandbox-tracking-protection/) thereby creating tracking protection.In my case I was hosting the backend and the frontend on separate servers. The frontend is hosted on vercel, while the backend on render, so when the backend sends the cookie to the client since they are not on the same server hence different domain [an article explaining](https://web.dev/articles/same-site-same-origin), the cookie will be treated as a 3rd party cookie. 

##### Cookie prefix

The solution I implemented was from reading mdn documentation [mdn_doc](https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies). I added a prefix `__Host-` to the cookie name. `__Host-` is called a cookie prefix. There are two types; `__Host-` and `__Secure-`.
a. `__Host-` means that the cookie is domain-locked, when you set a cookie with this header prefix it is accepted if it's marked with the `Secrue` attribute, was sent from a secure origin `https`, does not include a `Domain` attribute and has the `Path` set to `'/'`.

So my code looks like this now. After modifying my cookie options, the warning did not show again because. 
```js
const cookieOptions = {
	maxAge: 60 * 60 * 24 * 30 * 1000, // 30 days
	httpOnly: true, // prevents client scripts from accessing the cookie
	secure: process.env.NODE_ENV === "production", // the cookie should be sent over secure https connection
	sameSite: process.env.NODE_ENV === "development" ? "Lax" : "None",
	path: "/",
}

res.cookie(process.env.NODE_ENV === "development"
? "sage_warehouse_token":"__Host-sage_warehouse_token",'refreshToken',cookieOptions)
.header("Authorization", 'accessToken')
```

If anyone encountered this same issue I would love to know how they resolved it, I am learning backend development with `express.js`, which is fun. I am currently working on an e-commerce application to solidify my knowledge as I learn new concepts.  

If you are interested in learning backend development and you don't want to do it alone you can checkout [HNG](https://hng.tech/internship) where you will participate in tasks with peers and ask for help from mentors as you go along in your tech journey, they also have a  [premium version](https://hng.tech/premium) where you can earn a certificate and it also comes with some perks.
Don't Pray To The Duck
Tags: rubberduck, debugging, educational
Published: 2024-06-29 21:37:08

I think every programmer out there has heard of rubber duck debugging. If you have not heard of it, I will cover the basics here.

I want to share with you some very important advice a co-worker gave to me when I pointed out that talking to him seemed to help more than rubber duck debugging, even though I realized what I was doing wrong while talking to him before he provided me any feedback.

That's when he introduced me to the concept: Talk to the Duck, Don't Pray to the Duck.

Something about walking through the problem verbally makes it easier to spot errors.

## How to properly utilize a rubber duck

1. Acquire a rubber duck. ([Amazon Has a Great Selection](https://amzn.to/3WgL9VK))
2. Place said rubber duck on the desk in front of you.
3. Start Coding.
4. When you reach a bug, explain to your rubber duck what the code is suppose to do, then go into detail and explain your code line by line.
   1. Here is the important part **You must do so out loud**.
   2. Remember we are talking to the rubber duck, not praying to the rubber duck.
5. As you tell your rubber duck all about your problems, you may suddenly realize what the problem was
   1. Remember code is 10 times harder to debug than to write.
   2. Since you wrote the most clever code possible you are by definition not smart enough to debug it.
   3. The duck is beaming this information straight into your brain.

Authors Note: It HAS to be a rubber duck. No other type of object will work. I swear a rubber duck is not making me write this.

Remember, respect your rubber duck. The Duck has a PhD.

Originally published at [TheSimpleDev.com](https://thesimpledev.com/blog/dont-pray-to-the-duck/)
A CURSORY LOOK AT THE RETAIL DATA SET
Published: 2024-06-29 21:21:47

This dataset captures the sales performance of some retails outlets spread across North America, Asia and Europe. The dataset could be got from kaggle repository (https://www.kaggle.com/datasets/kyanyoga/sample-sales-data?resource=download). The focus of this review is to fulfill the condition of stage zero of HNG 11 Internship programme see link https://hng.tech/internship
This report presents an analysis of a retail sales dataset from automobile companies covering the year 2003 to 2005. The dataset contains 2,823 row entries and 25 columns.

## **Key Data Overview**
**Numerical Data:**  The columns below contain numerical data and they are 9 in number.
•Price
•Sales
•Year ID
•Quantity
•Order Date
•Order Line Number
•Month ID

**Categorical Data:** There are 16 columns with categorical data some of them are shown below.
•	Product
•	Deal Size
•	City
•	State
•	Contact Last Name
•	Contact First Name

**Missing Values**
There are missing values in the following columns:
•	Address Line 2
•	State
•	Postal Code
•	Territory

**Data Anomalies**
The dataset contains some unusually high sales figures that do not align with the corresponding quantity ordered and price per item. These anomalies warrant further investigation to determine their accuracy.

**Trends in Sales**
The sales trend in the dataset is non-stable, exhibiting periodic increases and decreases. This variability indicates that sales are not consistent over time. There is a sharp fall in 2005 from 2004 and a significant rise in sales from 2003.

**Sales Variability**
Sales values also vary across different deal sizes, reflecting differences in purchasing behavior and sales strategy.

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

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

The most notable finding is that the United States leads in the number of orders placed, followed by Spain and France. These three countries collectively account for over 50% of the total orders, highlighting their significant contribution to the company's overall sales.

In conclusion, this dataset provides a comprehensive view of the company's sales activities, highlighting key numerical and categorical data, missing values, anomalies, and sales trends. Further analysis and validation are needed to address the identified issues and derive actionable insights.The dominance of the US, Spain, and France in terms of order volume suggests these regions are crucial markets for the company. These insights can guide targeted marketing strategies and resource allocation to maximize sales and customer engagement in these key areas. Through HNG 11 premium network, see link https://hng.tech/premium, we hope gather more experience in conducting analyses such as this.
Solving complex backend challenges: My journey and insights from optimizing a high-traffic Web App
Tags: mongodb, node, javascript, webdev
Published: 2024-06-29 21:14:13


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

Hello, Welcome, This is my first blog ever as a Developer, and I am thrilled and excited about it, By the way, I am Quadri Kobiowu and I am a Backend Developer with 3 years of experience in MERN full-stack development. Several months ago, I faced a complicated issue at work when the web application’s database queries had to be optimized.

My approach to the problem

**1. Identify the Problem:** Do well to observe the activity of servers, and realize that the problem was in slow database queries.
 
**2. Analyze Slow Queries:** By implementing a query log and identifying the queries that are taking longer time with the help of tools. 

**3. Optimize Queries:**
      - **Rewrite Queries:** Simplified complex subqueries with similar features as that of the query, optimized joins. 
      -**Limit Data:** In coded statements featured pagination and incorporated the usage of limiters to massive data acquisitions. 
      - **Optimize Aggregations:** Describe use cases where summary tables for frequently aggregated data are created. 
      - **Test and Monitor:** Make changes to the staging, load some tests on these changes, and look at the reactivity of the production.
 
With the advent of the HNG Internship, I look forward to solving new problems and working with brilliant minds from all around the globe. To go with my excitement, the HNG Internship is one of the best opportunities to learn and develop oneself and I am ready to start. To get more details about the program visit the HNG Internship https://hng.tech/internship or the HNG Hire website https://hng.tech/hire.


Thank you for reading, and I hope you enjoy it!...
Understanding Docker: A Comprehensive Guide
Published: 2024-06-29 21:10:13

## **Introduction**

Docker is a powerful platform designed to simplify the process of building, deploying, and managing applications using containerization. This guide explores the fundamental concepts of Docker, its benefits, and practical usage in modern software development.


## **What is Docker?**

Docker is a containerization platform that automates the deployment of applications inside lightweight, portable containers. It ensures that software runs consistently across various environments, from development to production.


## **Containers: The Core of Docker**

Containers are lightweight, standalone executable packages that include everything needed to run a piece of software, including the code, runtime, system tools, libraries, and settings. Unlike virtual machines, containers share the host system's kernel, making them more efficient and faster to start.


## **Docker vs. Virtual Machines**

While both Docker containers and virtual machines allow for isolated environments, they differ significantly in resource utilization and performance. Containers are more lightweight and efficient, sharing the host OS kernel, whereas virtual machines run full-fledged operating systems, which consume more resources.


## **Key Components of Docker**

**Docker Engine:** The core service for creating and managing Docker containers.
**Docker Hub:** A cloud-based repository for finding and sharing container images.
**Docker Compose:** A tool for defining and running multi-container Docker applications.


## **Benefits of Using Docker**

**Consistency:** Ensures applications run the same across different environments, reducing bugs and discrepancies.
**Efficiency:** Containers are lightweight and consume fewer resources compared to virtual machines.
**Isolation:** Provides isolated environments for applications, enhancing security and stability.
**Portability:** Containers can run on any system that supports Docker, simplifying the process of moving applications between environments.
**Scalability:** Facilitates easy scaling of applications by adding or removing containers as needed.


## **Practical Usage**

Creating a Docker container involves writing a Dockerfile, which defines the environment and instructions for the container, and then building and running the container using Docker commands. This process allows developers to package their applications with all dependencies, ensuring consistency across different deployment environments.


## **Conclusion**

Docker revolutionizes the way applications are developed, deployed, and managed. By providing a consistent, efficient, and portable environment, Docker helps streamline the development process, reduce deployment issues, and improve application scalability. Embracing Docker in your development workflow can lead to more robust and reliable applications.


This comprehensive guide covers the essential aspects of Docker, making it a valuable resource for developers looking to enhance their software development and deployment processes.
Solving a Complex Back-End Challenge and My Journey with HNG Internship.
Published: 2024-06-29 21:03:01


My name is Damilola Olawoore, a full stack developer.

Before I started my journey into back-end development, I had a conversation with a front-end developer who was trying to integrate an API to get information about cars. His goal was to fetch the image and every detail about the car to use in his React project. However, he faced issues because the API wasn’t completely free, and some functionalities were only accessible in the premium version.

One of the functionalities that intrigued me was filtering and sorting. The problem I saw was how back-end engineers could construct complex URL parameters, like `www.example.com/?filter...`. At the time, I thought only highly skilled developers could construct such endpoints.

Recently, I was working on a blog post API and needed to include filtering in the GET endpoint. I did my research and found a package that helped me understand how to implement this feature.

Before this project, I had already started creating URL patterns for my views, which I once thought were only possible for advanced developers. I began by creating CRUD (Create, Retrieve, Update, Delete) endpoints, and gradually, I became more comfortable with constructing complex URLs.

I am a junior full-stack developer still growing my knowledge of using the tools at my disposal. I am looking forward to gaining a lot of experience through this internship and, most importantly, being able to add it to my CV/Resume.
Visit [hng.tech/premium](https://hng.tech/premium) or https://hng.tech/internship to know more about the internship.
Кисели краставички
Published: 2024-06-29 20:56:14

Киселите краставички са обичана и популярна туршия – една от най-познатите консервирани храни в света. Техният уникален вкус и хрупкава текстура ги правят незаменими когато сядаме на масата зимно време. Не е лъжа, че често правенето на мариновани краставички се проваля, затова ви предлагаме една изпитана рецепта за кисели краставички, при която няма нужда от варене (стерилизация). Приготвят се бързо и лесно, ако следвате стъпките по-долу.

За краставичките ви съветваме да вземете пресен млад корнишон и по възможност по-дребен. Ето и необходимите продукти за количествата на съставките, които трябва да сложите в 1 буркан.

[млади корнишони](https://tami.bg/%D0%BC%D0%B0%D1%80%D0%B8%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8-%D0%BA%D1%80%D0%B0%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%87%D0%BA%D0%B8-%D0%B0%D1%81%D0%BF%D0%B8%D1%80%D0%B8%D0%BD-%D0%B2%D0%B0%D1%80%D0%B5/);
80 мл. винен оцет;
1 шайба лук, на парчета;
няколко зрънца черен пипер;
1 с.л. захар;
1 равна с.л. сол;
1 дафинов лист;
1-2 зрънца бахар;
копър;
аспирин 1 брой;
вода.
How HNG Internship 11 helps me achieve my goals
Tags: design, uidesign
Published: 2024-06-29 20:55:22

I have always wanted to work in fast paced settings where I'm challenged to do the best I can.

In 2023, I was introduced to the HNG internship by a friend who was further in his tech career. He had told me that it was a gruelling and fast paced internship program where only the toughest survive. 

At the time, I had just started learning the basics of UI/UX design and I believed I could make it through the internship; from knowing myself to be energetic and resilient to pressure and difficulty.

I signed up for it, mostly out of curiosity, and found everything my friend had said to be true, so I dropped out of the cohort.

Now, I have a better knowledge of design principles and more familiarity with design tools, so I signed up the 11th cohort of HNG internship. 

Recently, I made an [infographic in figma](https://www.figma.com/design/LV79kanRbJb6OHXVegeKCH/Desire-Destiny-Infographic?node-id=0-1&t=6MycSKsH7KH1AsyT-1) that showcases my professional and personal objectives as a product designer over the next 2 years.

The way HNG 11 helps me achieve my goals are that - it introduces me to a fast paced work setting where I have to deliver hard tasks before deadlines and learn while at it, which builds my experience and skill as a designer. It also exposes me to industry professionals who serve as mentors during the internship process and offers a platform to network and collaborate with other ambitious technologists who are interning at HNG. 

All of these and more that the HNG internship offers are the bedrocks from which I achieve the milestones I set in my career roadmap. So to all techies, irrespective of location, role and experience, considering an internship program that trains you to be the best in a highly competitive market, go for the [HNG internship](https://hng.tech/internship). 

To learn more about HNG, check [hng.tech](https://hng.tech/)
Master Observability with Logs: An In-Depth Guide for Beginners
Tags: monitoring, beginners, devops, programming
Published: 2024-06-29 20:54:57

I have just finished publishing my latest article, "Master Observability with Logs: An In-Depth Guide for Beginners."

Topics:
• 🪵 Logs and Observability: Challenges with modern cloud-native applications and maximising observability while minimising costs.
• 📊 Logs vs Metrics: Differences in data collection, visibility, and cost predictability.
• 🔍 Logs vs Traces: Traces as enhanced logs, tracking operation durations and nesting.
• 🖨️ Logs vs Print Statements: Benefits of logging libraries over print statements.
• 🚀 Code sample in Golang: Structured logging, log levels, and log context for efficient error investigation.

Read the full article for detailed insights and practical code snippets at https://cloudnativeengineer.substack.com/p/master-observability-with-logs

--
Are you ready to take your skills to new heights? 🚀

🚢 Let's embark on this journey together!

👣 Follow me to receive valuable content on AI, Kubernetes, System Design, Elasticsearch, and more.

📬 Be part of an exclusive circle by subscribing to my newsletter on Substack.

🎓 If you are looking for personalized guidance, I am here to support you. Book a mentoring session with me at https://mentors.to/gsantoro on MentorCruise, and let's work together to unlock your full potential.

♻️ Remember, sharing is caring! If this content has helped you, please re-share it with others so they can benefit from it.

🤩 Let's inspire and empower each other to reach new heights!
How I solved a problem I encounter as a backend developer
Tags: backend, webdev, javascript
Published: 2024-06-29 20:53:55

Growing up, I have always been fascinated by technology. How they work, how they are made, I just want to know how things work, I would open up spoilt radios just see what was inside it and how it works. I remember my brother used to have an electric teddy bear that talked and I was curious about it so one night I tore it open and I brought out the element.

P.S: The next day I almost met my maker, if you know you know

Anyway, that curiosity died (died is a strong word, let me say me subsided) from the hands of long hours in the classroom just talking theory. I used to hate computer as a subject, all we did was talk about computers all long without using the computer.

My curiosity was ignited when I saw my neighbor coding, I did not understand what he was doing but then again I was curious and he explained to me what he was doing. Fast forward, my neighbor introduced me to HTML, Css and JavaScript, he gave series of courses to watch.

One of the first projects i built was a Sign-up website. It was a static website, it was not really doing anything special other than users inputting their details. So I did my research and I was going to add authentication to my Sign-up page
I found a tutorial on YouTube and followed the tutorial step by step and boom, I had written my first backend code even though I didn’t understand what I wrote.
 
I was so excited about my code and was going to test on the frontend  

But then I encountered an error

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k091oo4lf17k0oyd1qef.png)
 
 
I had to watch the tutorial all over to ensure I didn’t miss something, of course I did not miss anything, it was not in the tutorial


After 1 hour spent searching Google and reading articles. Voila! I found it, speak of the devil


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


How I solved the error
The port that the frontend was running on has to be given the access in order for the backend to work


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


**About Me**
I am a Frontend developer with little experience in backend development and I would love to explore backend more. One of the traits of a curious person is the thirst for knowledge. I love to learn more

**My Expectations of the HNG Internship:**
My expectations include learning to write clean, effective and efficient codes, learning best practices of writing code, learning to function and think under pressure also, learn how to work in a team and also, learning leadership skills
My ultimate expectation is to come out of my comfort zone.

https://hng.tech/internship
https://hng.tech/hire