teleren/devto huggingface dataset:
Count triaged issues week on week
Tags: githubhack23
Published: 2023-05-13 16:13:39

## What I built 

A Jupyter Notebook that will allow you to count issues that have been applied a specific label week on week, for a number of weeks that you choose.

This is particularly useful if you use a specific label to triage issues e.g. "triaged". You can then see how many issues were triaged week on week and by whom.

### Category Submission: 

Maintainer Must-Haves

### App Link
You can try it directly in GitHub Codespaces.

### Screenshots 

![Input parameters](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mr8c5qqo5sw1jqwot95w.png)

![Output](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8v668lp5fc5gz0jepif2.png)

### Description 

This Python script is used to count the number of issues in a specific GitHub repository that have been labeled with a specific label within a given number of weeks. The script uses the GitHub API to fetch and process the repository's issues.

Here's a breakdown of what each function in the script does:

* `get_start_of_week()`: returns the datetime object of the start of the current week (Monday at 00:00:00).

* `get_total_issues(repo_owner, repo_name, access_token, label)`: returns the total number of issues in the given repository with the given label. It does this by sending a GET request to the GitHub API's search endpoint.

* `count_labelled_issues(repo_owner, repo_name, access_token, label, weeks)`: main function of the script. It counts the number of issues in the given repository that have been labeled with the given label within the given number of weeks. It does this by sending a GET request to the GitHub API's issues endpoint, then iterating over the response data and counting the number of issues that meet the criteria. The function also prints a report for each week, listing the issues that were labeled during that week, their titles, their URLs, and the user who labeled them. I also included closed issues in the output.

The script uses the colorama library to print coloured text to the console (it doesn't show in the Jupyter Notebook version).

### Link to Source Code 

https://github.com/plopcas/labelled-issues-jupyter

### Permissive License

MIT license 

## Background (What made you decide to build this particular app? What inspired you?) 

Trying to gather metrics for triaging process. GitHub doesn't make it obvious to work with events like "labeled". This script allows me to generate metrics week on week.

### How I built it (How did you utilise GitHub Actions or GitHub Codespaces? Did you learn something new along the way? Pick up a new skill?) 

I used GitHub Codespaces with the [Jupyter Notebook template](https://github.com/github/codespaces-jupyter) which allowed me to very quickly test the functionality as I was building it.
Github actions are awesome!
Tags: osdc, ci, github, python
Published: 2023-05-13 16:09:28

Today, Saturday, I had a lot of free time to explore github a little more. I was searching for a python repository that has tests to run, but without the CI to do it automatically.

I found [this](https://github.com/vpaeder/pymx2) cool python driver repository which uses the computer motherboard serial ports (HDMI and such). It didn't had any CI workflow so I decided to make one for it!

I saw that it requires python version of 3.9 or higher and that's it! No pytest or poetry needed, simple as that.

I thought that it will be a great idea to make sure the tests will run once a week, at Sunday midnight. By that way, they can check the CI results once they wake at Monday. Since it needs python version of 3.9 or higher, I gathered the versions of 3.9, 3.10 and 3.11. It is important to check that it will also work on different type of operating systems so I chose linux ubuntu, macOS and Windows. Ofcourse it will run their latest versions, so nothing will surprise on new releases.

Once I finished writing the YML script, I sent a [PR](https://github.com/vpaeder/pymx2/pull/3) to the repository, which I forked and tested it. I really hope he likes and approves it!
Github has a lot of cool features that makes our lives easier.
Can't wait to learn more, thank you @szabgab for this useful information!
Why it Took Me 3 Years (Instead of 6 Months) to Land My First Development Role
Tags: beginners, webdev, codenewbie, motivation
Published: 2023-05-13 16:01:00

---
title: Why it Took Me 3 Years (Instead of 6 Months) to Land My First Development Role
published: true
description: I tried to land my first development role in 6 months, but it took me 3 years.
tags: #beginners #webdev #codenewbie #motivation
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
published_at: 2023-05-13 16:01 +0000
---
Five years ago, I graduated from law school.

I immediately knew that **it wasn't for me**. 

Instead, I wanted to become a **Software Developer**.

With determination, I embarked on a **6-month** self-taught programming journey, aiming to secure a remote software development role.

**It took me 3 years.**

{% twitter 1650970959778574338 %}

Because I went with a self-taught approach, I made **plenty** of mistakes.

Some of these mistakes were:
1. Building too many **small** projects.
2. Spending **too much time on tutorials**.
3. Not **collaborating** enough.
4. **Giving up too soon**.

I spent over 2 years in an IT Helpdesk role, before I could land a role as an Integration Engineer, and _then_ (**finally!**) get promoted to Software Developer.

As an Integration Engineer, I spent most of my time developing **APIs** and other types of integrations using **Python**, **MySQL**, and **AWS**.

Even if I didn't have the title, **I was already developing software**!

Also, my passion for Computer Science (CS) has turned out to be so great that I'm in my second semester of a **CS degree**.

I'm no genius or specially talented, I'm just **a regular guy who just kept pushing through**.

So if you are looking to land your first role, **you don't have to make it in 6 months**. The important part is simply to **make it**.

---
_I write a weekly, bite-sized, newsletter for aspiring developers. If you find this post useful, I think you might enjoy it! Check it out [here](https://taketheleap.dev) 🗞️ Connect with me on [Twitter](https://twitter.com/_eduardoltorres) 🤝_
My CKA Journey
Published: 2023-05-13 15:48:26

Greetings, everyone! 

Today, I want to share with you my experiences in obtaining the Certified Kubernetes Administrator (CKA) certificate. In this journey, I first watched Mumshad Mannambeth's course on Udemy, then continued with trainings on KodeKloud. Here's how I achieved success during this process:

Starting with Mumshad Mannambeth's Course on Udemy

When I decided to obtain the CKA certificate, I first purchased Mumshad Mannambeth's course on Udemy. This course explains Kubernetes topics in an understandable and straightforward language. The videos are full of examples and practical information. The summary section and exam tips at the end of the course were very useful for quickly reviewing before the exam.

Continuing with KodeKloud

After completing the course on Udemy, I started the trainings on KodeKloud. KodeKloud offers numerous training videos covering Kubernetes from basic to advanced levels. Additionally, the interactive lab environments allowed me to reinforce the theoretical knowledge I learned by applying it in practice. These labs helped me gain experience by working on real scenarios related to Kubernetes.

Exam Preparation with Sample Questions

While continuing my trainings on KodeKloud, I focused on solving sample questions. These questions cover situations and topics that I could encounter during the exam. By solving these sample questions, I got used to the exam format and time management. Moreover, I identified my shortcomings and determined the areas I needed to work on.

Exam Day and Success

After all these preparations, I felt ready when the exam day arrived. During the exam, I succeeded thanks to the knowledge and experience I gained from Udemy and KodeKloud. Finally, I obtained the CKA certificate, proving my competence in the Kubernetes field.

In conclusion, I recommend Mumshad Mannambeth's course on Udemy and KodeKloud trainings for those who want to obtain the CKA certificate. With these resources and sample questions, you can establish a solid foundation in the Kubernetes field and successfully pass the exam.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6iq8375cj2q1gap66qsx.jpg)
21 Ways to Increase Your Focus — Summary of Part 3 of Fast Focus by Damon Zahariades 📕🚀
Tags: motivation
Published: 2023-05-13 15:42:21

## 21 Ways to Increase Your Focus — Summary of Part 3 of **_#Fast_Focus_** by **_#Damon_Zahariades_** 📕🚀

One of the best books to read **if you are a beginner reader!**
**_Brief synopsis of the book:_**

> -> You will know how to organize and arrange your office, your work space, and this will help you achieve and focus faster.
> -> You will know ways to achieve and ways to avoid distractions.
> -> You will know the types of obstacles and obstacles that cause lack of concentration.
> -> You will learn the art of mastering the completion of things and projects according to your priorities without pressure.
> -> You will learn the secrets of concentration if you have to work from a cafe or a public place.
> -> Useful for people diagnosed with ADD or ADHD.

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

---

**_The 21 ways to increase your focus:_**

`1- Start your day with exercise (not a gym requirement - the important thing is movement for your heart, joints and muscles)
2- Make a daily to-do list
3- Determine your daily tasks and don't let them exceed 5 tasks at the beginning
4- Clearly define your goal for doing each daily task (everything we do has a purpose)
5- I use a timer
6-Catch fast ideas quickly
7- Know the causes of your distraction
8- Take breaks between tasks
9- Commit to one task at a time
10- Categorize your tasks into groups
11- Arrange your day in the form of periods of time
12- Disconnect from the Internet and turn off the phone
13- Reduce the time you spend on social media
14- Reduce the time for family and friends meetings
15-Set limits on other people's expectations
16-Know and control your energy levels
17- Give yourself some time with God and get closer to Him
18- Avoid email
19- Create useful daily habits
20- Tame your perfectionism
21- Reduce your caffeine intake`

---

> _What I've Benefited!
> Mohamed Abu-Alhgag_
HTML CSS 基礎 Part 05 -- 表に font-awesome のアイコンを組み込む
Tags: html, css, javascript, fontawesome
Published: 2023-05-13 15:28:43


## why

テーブルから詳細にリンクする際、右矢印があるとわかりやすい。
しかし、文字の→をそのまま書くとダサい。

font-awesome を使うと美しいが、ハマりどころがあったので記事に残す

## 結論

これらに気をつければ、生成された　html に、後付けでアイコンを付与できる。ただの js を使うだけで。

1. Table Row の tr の一つ上の要素、tbody の child として tr を取得できる。
  a. querySelectorAll("tbody tr") では取得できなかったので。
2. 各セルに　append するときは毎回別の i タグを生成すると、すべてのセルに反映される。
  a. 毎回生成せずに使い回すと最後の　append しか反映されなかったので。


## css

目に優しく暗く

```css
body {
  background-color: #282c34;
  color: #f8f8f2;
}

table {
  width: 100%;
  border-collapse: collapse;
}

table, th, td {
  border: 1px solid #6272a4;
}

th, td {
  padding: 15px;
  text-align: left;
}

thead {
  background-color: #44475a;
}

tr:nth-child(even) {
  background-color: #32363c;
}

```

## html

```html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link rel="stylesheet" href="style.css">
  <link 
    href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" 
    rel="stylesheet"
  >
  <title>ts-dom</title>
</head>
<body>
  <table>
    <thead>
      <tr>
        <th>#</th>
        <th>金額</th>
        <th>リンク</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <th>1</th>
        <th>100</th>
        <th>詳細</th>
      </tr>
      <tr>
        <th>2</th>
        <th>200</th>
        <th>詳細2</th>
      </tr>
      <tr>
        <th>3</th>
        <th>300</th>
        <th>詳細3</th>
      </tr>
    </tbody>
  </table>
  
</body>
<script src="main.js"></script>
</html>
```

font-awesome の cdn リンクと、シンプルなテーブル。
css と js のリンク。

## js

```ts
const tbody = document.querySelector('tbody');
let tableRows = Array.from(tbody.children);

  tableRows.forEach(row => {
    const iElement = document.createElement("i");
    iElement.classList.add("fas","fa-arrow-right")

    let thElements = Array.from(row.getElementsByTagName('th'));

    let thirdTh = thElements[2];

    thirdTh.appendChild(iElement)
  });
```

1. 一つ上の要素の child で複数取得。
  a. querySelectorAll では取得できなかったので。ハマりどころ1
2. 配列に変換して forEach で回す
3. i タグを生成して、class を付与。
  a. 毎回生成せずに使い回すと最後の　append しか反映されなかった。ハマりどころ2
4. th タグの　3 つめを取得。左から 3 つめのセル。
5. i タグを th タグの　3 つめに append


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

これで、既存のテーブルの 3 列目のセルにのみ font-awesome のアイコンを付与できた。
How to Make Games Without Coding
Tags: beginners, programming, gamedev, tutorial
Published: 2023-05-13 15:00:00

Do you want to be a video game maker but don’t know how to code?

Today, you have options – modern game engines have made it so you can make hit games without knowing how to write a single-line code.

In this blog, we will discuss the best engines for creating great games without having to do any coding/programming. We’ll also show you the types of games that these engines have created in the past.

## Basics of Game Development

Before naming the actual engines, let’s discuss some game development basics. That way, you can better understand why it is possible to make games -and not just basic games- great ones without knowing how to code.

Let’s start by thinking of games as building blocks. Games are made up of building blocks or objects.

A game will have hundreds or even thousands of objects. A game engine will display these objects but also do up to three more things based on the needs of the game designer: The Engine will give life to these objects by giving them attributes and characteristics. The Engine will allow these objects to interact with one another. And The Engine will allow these objects to interact with the user.

---
Continue Reading......

This Blog is Originally Published at **The Last Words**

Read More from Here: [How to Make Games Without Coding](https://thelastwords.wiki/how-to-make-games-without-coding/)
How to Use PyCharm with Raspberry Pi Pico W and MicroPython
Tags: pycharm, micropython, raspberrypi
Published: 2023-05-13 14:57:59

{% embed https://www.youtube.com/watch?v=aGvKvesLVKk %}

**DONT FORGET TO SUBSCRIBE**

**Step 1-) Download PyCharm**
https://www.jetbrains.com/pycharm/download/#section=mac

The community version is fine for this work.

**Step 2-) Install MicroPython on Pico**

- Plugin the device into the computer while holding the bootsel button.

- Go to https://micropython.org/download/ and download the latest version for the Pico or Pico W

- Drag the UF2 file onto your Pico once it is done downloading. *It should show up on your Desktop as RP1-RP2.

- Once it is done, the RP1-RP2 will disappear.

- Unplug and replug the Pico (without holding the bootsel). You need to do this so PyCharm can find the device.

**Step 3-) Install MicroPython Plugin in PyCharm**


![Plugin](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/19x9lqkcz23iq84vgk6v.png)

- Open PyCharm, go to Plugins, and download the MicroPython plugin.

- Restart the IDE

**Step 4-) Write Code**

![Env](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7yzgqw3nluexvkmbwnnt.png)

- Go to File > Create Project. Create an environment as shown above.

- Go to Preferences and enable MicroPython as shown here below.

![MicroPython](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fyzdkyxahi8c2dtxoli7.png)

- You can find the device path on a Macbook in the terminal using the command -> ls /dev/tty.*

- On a Windows, this would be a COM port.

- You can now run code on the device by right-clicking the file and selecting `Run Flash <filename>`

- Add the following code to check if it works by blinking the LED

```
import machine
import time

led_pin = machine.Pin("LED", machine.Pin.OUT)  # GPIO pin 25 controls the onboard LED

while True:
    led_pin.toggle()  # Toggle the LED state
    time.sleep(0.1)    # Wait for 1 second
```


If you run it and you see the LED blinking you did everything correctly, congrats!

**Some Pros:**

- Very easy to set up, and benefits of IntelliSense in PyCharm

- Good for very simple projects

**Some Cons:**

- You cannot edit files directly on the device with the IDE

- You can only run code in the main.py file

- You cannot run files if you are connected with another IDE like Thonny

**Conclusion:**

If you learned something here please **subscribe** to the channel. Let me know if you have any questions, thanks!
How to Convert YouTube Videos to mp3 Using Free Online Converters
Tags: youtubetomp3converter, youtubetomp3, convertyoutubetomp3
Published: 2023-05-13 14:56:22

YouTube is a great platform for watching videos, but sometimes you just want to listen to the audio. That's where YouTube to MP3 converters come in. These converters allow you to download YouTube videos as MP3 files, so you can listen to them on your phone, computer, or any other device.

There are many different YouTube to MP3 converters available, but not all of them are created equal. Some converters are slow, while others are unreliable. Some converters also have malware or adware, which can infect your computer.

If you're looking for a safe and reliable YouTube to MP3 converter, I recommend using [iformat.io](https://www.iformat.io/).
It is a free and easy-to-use converter that works on any device. To use iFormat.io, simply follow these steps:

Go to iFormat.io in your web browser [iformat.io](https://www.iformat.io/youtube-to-mp3/)
Paste the URL of the YouTube video you want to download into the text box.
Click the "Convert" button.
Wait for the conversion to finish.
Click the "Download" button to save the MP3 file to your computer.
That's it! It's that easy to download YouTube videos as MP3 files using iFormat.io.

Here are some of the benefits of using iFormat.io:

- Free and easy to use
- Works on any device
- Safe and reliable
- No malware or adware
- High-quality audio
If you're looking for a great way to download YouTube videos as MP3 files, I highly recommend using [iFormat.io](https://www.iformat.io/youtube-to-mp3/).

Here are some additional tips for using YouTube to MP3 converters:

## Only use reputable converters. 
There are many scams out there, so be sure to do your research before using a converter.

## Make sure the converter is safe.
 Some converters contain malware or adware, which can infect your computer.

## Choose the right quality. 
Some converters offer different quality options for your MP3 files. Choose the quality that best suits your needs.

## Be patient. 
Converting a YouTube video can take some time, so be patient and let the converter do its job.

https://www.iformat.io/youtube-to-mp3/
My C# Code Conventions and Style Guide
Tags: csharp, dotnet, coding, programming
Published: 2023-05-13 14:17:24

I like to follow "Modern Microsoft" conventions and styles for C# and dotnet; these are the conventions typically found in modern Microsoft GitHub repos like .NET, EF, etc. They are generally also the defaults within Visual Studio.

I go for standard Microsoft conventions as they would be most popular in the community and would generally be more familiar to new developers joining the team.

## 1. Boolean Evaluations


:grinning: DO prefer expression operator short-hand syntax.

```csharp
var success = true;

if (success)
{
    // do if true
}

if (!success)
{
    // do if not true
}
```

**Why**: Consistent with Microsoft’s .NET Framework and makes code simpler, more concise, and easier to read.

:rage: DO NOT use long form operator syntax:

```csharp
var success = true;

if (success == true)
{
    // do if true
}

if (success == false)
{
    // do if not true
}
```

## 2. Abbreviation Casing


:grinning: DO prefer PascalCase for a abbreviations of any length found within member names:

```csharp
public DateTime CreatedUtc { get; set; }
public string SqlConnection { get; set; }
```

:rage: DO NOT UPPERCASE abbreviations:

```csharp
public DateTime CreatedUTC { get; set; }
public string SQLConnection { get; set; }
```

**Why**: Consistent with Microsoft’s .NET Framework and easier to read.

## 3. Conditional and Loop Brackets


:grinning: DO always include brackets around single-line conditional and loop statements:

```csharp
if (true)
{
    DoSomething():
}
```
:rage: DO NOT omit brackets:

```csharp
if (true)
    DoSomething();
```

**Why**: It makes the scope of the statements clearer and avoids future issues if those statements are expanded.

## 4. Var Keyword


:grinning: DO always prefer using the var keyword instead of the 
explicit type:

```csharp
var option = new CookieOptions();
```

:rage: DO NOT use the explicit type:

```csharp
CookieOptions option = new CookieOptions();
```

**Why**: It simplifies the code and isn’t any less understandable. 

## 5. LINQ Single vs Where


:grinning: DO always prefer using the Where function instead of the Single :

```csharp
var order = await DbContext.Orders
   .Where(x => x.Id == id)
   .Where(x => x.Status == OrderStatus.Created)
   .Where(x => x.Customer.Id == customerId)
   .SingleAsync(cancellationToken);
```

:rage: DO NOT use the explicit type:

```csharp
var order = await DbContext.Orders
  .SingleAsync(x => x.Id == id && x.Status == OrderStatus.Created && x.Status == OrderStatus.Created, cancellationToken);
```

**Why**: It improves readability of the code.

Thank you for reading!

If you enjoyed this post and want to stay updated, follow me on [Twitter](https://twitter.com/KedziorArtur) for the latest updates and check out my projects on [GitHub](https://github.com/kedzior-io).

May the code be with you!
Building a Backend Developer's Blog
Tags: discuss, php, learning
Published: 2023-05-13 13:54:17

**Hi everyone!** 

I'm a back-end developer with 3 years experience.
Decided to create my own blog where I could share my experience with different problem solutions and some my points based on my knowledge background. 

**The goal** is to share how I have handled different business problems from developer perspective and which strategies, architecture concepts I have used.

Preferred stack of technologies: Laravel as backend framework, Angular as frontend framework, Next.js for server side rendering which DB I am going to use I`m not sure:)

If you have some examples of <u>cool blogs</u> with unique design you could leave them in comments.

**Thanks for your time!**