teleren/devto huggingface dataset:
My Process for Reviewing Pull Requests
Tags: process, pullrequests, prs, review
Published: 2024-01-23 11:00:04

---
title: My Process for Reviewing Pull Requests
published: true
date: 2024-01-23 00:00:00 UTC
tags: process,pullrequests,prs,review
canonical_url: https://seankilleen.com/2023/08/my-process-for-reviewing-pull-requests/
---

I often do a lot of code reviews and pull request reviews. As a follow-up to [my article on submitting pull requests](/2023/08/my-process-for-submitting-pull-requests/), I wanted to talk about how I review them as well.

## First – A Few Caveats

- **This is my style; yours might vary, and that’s fine!** I think there are a lot of ways to do this well, and there’s no sense in being dogmatic about it.
- **I don’t follow this 100% every time**. I don’t think you have to do these things exactly in order to be successful. It’s better to adapt to your situation/context.
- **I’m assuming you’re familiar with pull requests and how they work.** If you’re not yet familiar with that, I recommend searching around and finding some great articles on that first, or some of the contents of this article might be confusing.
- **This advice is geared less toward public OSS projects.** In those cases, there are additional requirements for review IMO, because the OSS authors will have to maintain that code in perpetuity after the change is merged, and the original author may or may not be available. This article assumes we’re talking about a team project.
- **This assumes you _want_ pull requests.** Many teams prefer to forego them because they feel they add unnecessary overhead. I disagree; I think they build historical context and communication skills that pay off in the long run. My point is, if you doubt pull requests in general, then this post isn’t for you.

## Before Beginning – the Right Mindset

I try to always keep a few things in mind prior to reviewing code:

- **Reviewers should be rooting for those they’re reviewing**. I should want the person whose code I’m reviewing to succeed.
- **Code always has a context, and no code/author is perfect.** This perspective is important, I think. Too often, we review pull requests outside of the context in which they’re offered.

I find reminding myself of these things put me in the right mindset to add constructive, helpful comments.

## Tips I Use While Reviewing

[Read the rest at SeanKilleen.com!](https://seankilleen.com/2023/08/my-process-for-reviewing-pull-requests/)
a rhyzome of game narrative archetypes
Tags: gamedev, writing
Published: 2024-02-25 21:27:57

---
title: a rhyzome of game narrative archetypes
published: true
date: 2024-01-23 00:00:00 UTC
tags: [ 'gamedev', 'writing' ]
canonical_url: https://onwriting.games/daily/20240123-2320-a-rhyzome-of-game-narrative-archetypes/
---

Did you see how many video games have a "character creator" that presents a finite set of hair, eyes, nose, face shapes, etc.?

What if we take this concept and apply it to the **archetypes of our characters** or NPCs?

We can generate a combinatorial explosion in our favor, and be able to create characters that work in unexpected but consistent ways in different narrative situations.

I think this could be implemented with some variables, like D&D does with alignment:

```
Chaotic / Neutral / Lawful
Good / Neutral / Evil

```

With 6 values, we get 9 very clear combinations of how characters behave.

What can we do if we apply this to archetypes?

I would be interested to see someone explore this... do you know if someone has already done it?
Update React Native app page from a Google Sheets and Google Calendar
Tags: reactnative, api, sheets, calendar
Published: 2024-01-22 23:48:20

I am wanting to update two different pages in my app from a Google API. The first is a calendar of events that can be added to the google calendar and will automatically appear on the React Native app. 

The next is a numbered list added in Google Sheets that will automatically appear on the React Native app.

Only examples and documentation I can find is for the other way around where there is a form input on the app and it populates the data to Google. 

This is basically what I want to do but I would format mine a little different. https://www.youtube.com/watch?v=o2RFdhnMXBM
What is the ideal Tech stack to build a website in 2024? 👨‍💻
Tags: webdev, frontend, backend, website
Published: 2024-01-22 23:37:31

While this question plagues many and myself, it is as frequently asked as it is frequently debated. Whether you’re looking to make a complete web application or your first web page, the technologies you choose to do it come with their own their pros and cons. Here I am to list my favourite’s and why. 

## My personal favourites

With the amount of upcoming JavaScript frameworks and the new benefits they each have, they all define a new set of rules which can limit your projects scalability with other technologies. I remember trying to use Svelte with PHP and that did not go well. That said, here is how I’d do it going into 2024. 

- Typescript (for perfect JavaScript)
- Reactjs / Vuejs
- Postgres (Database)
- Redis (if needed)

With these fundamentals I would argue that you could achieve a fast and efficient website that doesn’t compromise the ability to look amazing. [React](https://react.dev/) has been a good framework for me to learn regarding front end development though it can be restricting when making multiple pages. In this case, I would lean more toward things like [Next.js](https://nextjs.org/). In reality, many organisations aren’t even using frameworks. It remains true that 70% of pages make use of JQuery to this day and the era of frameworks is still a new one, an era some are choosing to adapt to rather than others. And not in all cases is it necessary to. However you put your page online, good luck to you in 2024. ❤️
Unveiling a JavaScript Trick: Array Comparison Pitfall
Published: 2024-01-22 23:36:23

Have you ever come across a JavaScript interview question that left you scratching your head? Here's a little trick that might catch you off guard:
```js
const a = [1, 2, 3];
const b = [1, 2, 3];
console.log(a === b);
```

What do you think the result will be on the console? It might seem logical to expect true, but the actual answer is false! Intrigued? Let's unravel this mystery.


**The Expectation: True?**
At first glance, comparing arrays a and b using === might lead you to believe that the result should be true. After all, both arrays seem identical, containing the same elements in the same order.

**The Reality: False!**
The surprising reality is that JavaScript's strict equality (===) checks for reference equality, not content equality. In other words, it's comparing the memory addresses of the arrays, not their actual content.


**Why It Happens**
Arrays, being reference types, create distinct instances in memory even if their content is the same. Hence, a === b evaluates to false because a and b refer to different memory locations.

**The Solution: Content Equality**
If you want to compare arrays based on their content rather than their reference, you can use `JSON.stringify()`:
```js
console.log(JSON.stringify(a) === JSON.stringify(b)); // true
```

This approach converts the arrays to JSON strings, allowing for a content-based comparison.


JavaScript's array comparison can be a subtle trap, and understanding the difference between reference equality and content equality is crucial. The next time you encounter a similar scenario, you'll be armed with the knowledge to navigate through the trickery.

**Console You Later!**
Day 899 : I Think
Tags: hiphop, code, coding, lifelongdev
Published: 2024-01-22 23:31:27

_liner notes_:
- Saturday : Did the radio show from my van again this week. I've been pretty productive with the time I get back from not having to travel to the station. The recording of this week's show is at https://kNOwBETTERHIPHOP.com

![Radio show episode image of an illustration of a rich person counting money while children work on a home construction site with the words Jan 20th 2024 Skim The Top](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/txewik4s78et97xtkntw.jpg)

- Sunday : It was pretty chilly day. Did my study sessions at https://untilit.works. I was pretty slow, but still got some stuff done. haha. Ended the night watching a couple of episodes of "Rurouni Kenshin".

- Professional : Today I only had one meeting. Spent the day helping with some community questions and converting a demo to use some new credentials. The day flew by.

- Personal : Made a little bit of progress on my side project. Working on the dashboard for artists to use. I think I may have decided on the merch manufacturer that I'll use for the side project.

![A view of the Mediterranean Sea from a cave in Mallorca, Spain. The water is a deep blue and the sky is light blue. The cliffs surrounding the cave are covered in green vegetation.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mhg4wrrwd2fif3s50hjv.jpg)

Going to work on my side project. Will work on the adding YouTube videos functionality. Maybe go through some tracks for the radio show. I'll end the night watching a couple of episodes of "Rurouni Kenshin".

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube PGk1RbNmDvo %}
Consejos diario para C#
Tags: csharp, tips, backend, net
Published: 2024-01-22 22:52:44

Hola buen dia devs aqui te dejo un consejo diario si trabajas con C# 

**
## Patron Relacional
**

su pongamos que tenemos el siguiente codigo y queremos refactorizar y hacerlo mas entendible o legible.

en el siguiente codigo evaluaremos si un alumno paso el examen donde la calificacion minima es 70 puntos

💡𝗖#𝗧𝗶𝗽

✅ 𝗥𝗲𝗹𝗮𝘁𝗶𝗼𝗻𝗮𝗹 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 𝗠𝗮𝘁𝗰𝗵𝗶𝗻𝗴 es una característica introducida en 𝗖# 𝟵 que mejora las capacidades de coincidencia de patrones del lenguaje. La coincidencia de patrones es una forma de comparar valores con patrones.

✅ Es una técnica de programación 𝗳𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝗮𝗹, lo que significa que se centra en la evaluación de expresiones en lugar del flujo de control de su código.

  🔥 𝗔𝗱𝘃𝗮𝗻𝘁𝗮𝗴𝗲𝘀 𝗼𝗳 𝗿𝗲𝗹𝗮𝘁𝗶𝗼𝗻𝗮𝗹 𝗽𝗮𝘁𝘁𝗲𝗿 𝗻𝘀 𝗺𝗮𝘁𝗰𝗵𝗶𝗻𝗴:
◾ 𝗖𝗼𝗻𝗰𝗶𝘀𝗲𝗻𝗲𝘀𝘀: la coincidencia de patrones relacionales se puede utilizar para crear código más conciso y legible.
◾ 𝗘𝘅𝗽𝗿𝗲𝘀𝘀𝗶𝘃𝗲𝗻𝗲𝘀𝘀: La coincidencia de patrones relacionales se puede utilizar para expresar condiciones más complejas.

💡 𝗥𝗲𝗹𝗮𝘁𝗶𝗼𝗻𝗮𝗹 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝘀 𝗠𝗮𝘁𝗰𝗵𝗶𝗻𝗴 no siempre es la mejor solución. A veces, es más sencillo y eficaz utilizar la forma tradicional de comprobar si una expresión coincide con una determinada condición.

Ejemplo en Codigo:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yw79vysmto6ik8c73ck5.png)
UML: Uma Apresentação
Tags: beginners, programming, learning, architecture
Published: 2024-01-22 22:50:42

## Introdução
Olá a todos! Tenho como objetivo aqui escrever um pouco sobre conceitos e diagramas da UML que estou revendo. 

Ela é uma linguagem para ajudar as equipes de desenvolvimento se comunicarem de forma visual e padronizada.

Você não é obrigado a usa-la, mas se precisa de algo para padronizar a documentação, diagramas e certas comunicações, é uma opção bem interessante.

## Objetivo
O principal objetivo dela é uma padronização na definição de requisitos, comportamentos, estrutura lógicas, características e muito mais. Ela padroniza a comunicação entre o time, além de servir como documentação e consulta posterior.

Hoje em dia tem como usar ela com outras ferramentas para permitir versionamento com o git inclusive :D

## História 
A linguagem inicialmente é a junção de outras três linguagens que já eram usadas no mundo do desenvolvimento de software na década de **1990**:
 - Método de Booch;
 - Método OMT (Object Modeling Technique de Jacobson)
 - Método OOSE (Object-Oriented Software Engineering de Rumbaugh)

Estes três senhores são conhecidos como **os três amigos**.

Inicialmente começou com a junção do método de Booch com o OMT na Rational Software. Resultou-se daí o Método Unificado. Depois o método OOSE também foi unificado com a entreda de Rumbaugh na Rational. Neste momento era conhecido como a versão 0.8 do Unified Process. 

A partir dos anos 2000 essas especificações foram aprovadas pela OMG (Object Management Group - consórcio internacional de empresas que define e ratifica padrões na área de Orientação a Objetos) dando início oficial a versão 0.9 da UML.

A versão 2.0 foi lançada por volta de 2005 e a 2.5 foi lançada em 2017.

## Conclusão
Foi apresentado uma breve apresentação da linguagem assim como seu objetivo. Foi apresentado também um resumo da história da linguagem desde quando eram três linguagens até quando foi aprovada a unificação e assim criação da modelagem unificada.

Se este artigo serviu para algo, ou tem alguma coisa que preciso acertar, só comentar :)

Abraços 

## Referências
GUEDES, Gilleanes T. A., **UML 2: Uma Abordagem Prática**. São Paulo, Novatec, 2009.

FELIZARDO, Jose Henrique Lincoln da Fonseca, **História da UML**. Disponível em <https://www.projetodiario.net.br/historia-da-uml/#:~:text=Hist%C3%B3ria%20da%20UML%20A%20UML%20tem%20origem%20na,%C3%BAnica%20linguagem%20de%20modelagem%20comum%20e%20largamente%20utilizada>. Acesso em: 22 de Janeiro de 2024.

WIKIPEDIO, **UML**. Disponível em <https://pt.wikipedia.org/wiki/UML>. Acesso em: 22 de Janeiro de 2024.
5 Dead-Simple Tips to Make Your Code More Readable as a Junior Frontend Developer (And Get Your Pull Requests Approved Faster) 🎉
Tags: webdev, javascript, beginners, career
Published: 2024-01-22 22:34:50

I have reviewed more than **1,000 frontend pull requests**.

I've noticed some common comments made to junior developers, which I also got when starting out. Dealing with these comments often makes the review process longer.

So, if you're a junior developer just starting:

## Here are 5 simple tips to make your code more readable.

**1. Save meaningful or shared values as constants. **If a value is significant in your code or used in multiple places, store it in a constant variable in ALL UPPERCASE. This helps give the variable context and makes it easier to locate or modify.

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

**2. Include the unit in variable names when relevant.** You saved your meaningful variables in constants. Great 🎉. Now, make sure to specify the unit if applicable. For example, instead of naming a variable `DEBOUNCE_TIME`, use `DEBOUNCE_TIME_MS` to make it more straightforward.

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

**3. Use the JavaScript numeric separator when possible.** Improve the readability of numbers like `1000` or `20000` by writing them as `1_000` or `20_000`.

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

**4. Return as early as possible in functions.** Whenever feasible, exit a function early to enhance the code clarity. This will drastically increase the code readability.


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

**5. Avoid negative conditionals.** Instead of naming a variable isWebsiteNotAccessible, name it isWebsiteAccessible and use !isWebsiteAccessible. Positive conditions are generally easier to understand.

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

---

Thank you for reading this post 🙏.

Leave a comment 📩 to share a tip.

And Don't forget to Drop a "💖🦄🔥".

If you like articles like this, join my **FREE** newsletter, **[FrontendJoy](https://frontendjoy.substack.com/)**, or find me on [X/Twitter](https://twitter.com/_ndeyefatoudiop).
Learn Next.js 14
Tags: nextjs, javascript, webdev, documentation
Published: 2024-01-22 22:08:16

### Vercel has been up to some big things lately

When I started using Next.js in January of 2023, I was quickly thankful for the upgrade in developer experience. With the intro of **version 13** in October, 2022, came the **/app** layout for the popular web framework. While the new layouts, page routing, and React Server Components were very useful, there was a bit of a learning curve. 

The documentation was rather poor for the early months of version 13, and there were even some issues that needed work - it was an interesting challenge all the more. 

**Now**

In my last post I talk a bit about my latest break, and how it helped me. I have decided to jump back into learning the latest updates of Next, with their release of Next.js Version 14. 
![Landing page of the learn Nextjs 14 course website](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/54jh1v103d28aiapepi5.png)

#### What I learned so far

Next.js has a site - [Learn Next.js 14](https://nextjs.org/learn) where they have some **wonderful** documentation in regards to the new update (Next.js Version 14 - released Oct 26, 2023). 

Within the material, you will learn how to set up a fully functioning dynamic web application with a back end using Next.js v14 - all while learning about the new updates and how to add them. Not only is this good for new users, but also good for users that just would like to stay current with the latest updates in their tech stack.

Currently, I have seeded my postgres SQL database (offered with free tier version from Vercel) with my dummy info for customers in accordance with the course instructions, and I am working now on adding in dynamic information to the dashboard. 

![Dashboard page for user on the Nextjs 14 course web app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z4ys1bpgjda09bg0m4tc.png)

It is very pleasing when there is clear, guided documentation to walk you through the updates to a major framework like Next, especially when you learn better visually - like me. The team at Next.js really did an amazing job being very clear and helpful within the documentation, while even providing troubleshooting tips for some sections. I was honestly _blown away_.

This little course, **completely free**, is helping me come back from my break and re familiarize myself with a lot of the great benefits of Next.js, while also helping to really cement the new stuff - like how they have added font optimization by statically pre-rendering additional fonts at build time (the same way it does with the images). 

_Not to mention_ that it is a cool little project that can be hosted on your portfolio (or wherever you showcase your work). I personally am hosting my repo on [my GitHub](https://github.com/bealecs/learnNext14), and have started creating branches for each chapter so I can keep track of the curriculum. I am looking forward to continuing to building more this year with Next.js v14.
Which is the best to use: Shopify or WooCommerce?
Tags: shopify, woocommerce, webdev, programming
Published: 2024-01-22 22:07:57

The choice between Shopify and WooCommerce depends on your specific needs, preferences, and technical proficiency. Here are some considerations to help you decide which platform may be best for you:

## Choose Shopify if:

**Ease of Use:** If you're looking for a platform that is easy to set up and manage without dealing with the technical aspects of hosting and website maintenance, Shopify may be a better choice.

**Hosted Solution:** If you prefer an all-in-one solution where hosting is taken care of, and you don't want to deal with finding a separate hosting provider, Shopify is a fully hosted platform.

**Simplicity:** If you're a beginner or a small business owner who wants a straightforward, user-friendly platform with a quick setup process, Shopify is known for its simplicity.

**Scalability:** Shopify is scalable and suitable for both small businesses and large enterprises, making it a good choice if you plan to grow your online store.

**Security:** Shopify takes care of security measures, including SSL certificates, reducing the need for users to manage security aspects themselves.

## Choose WooCommerce if:

**Customization:** If you require extensive customization options and want complete control over your website's design and functionality, WooCommerce, being a WordPress plugin, offers a higher level of flexibility.

**WordPress Familiarity:** If you are already familiar with or prefer using WordPress as your content management system, adding WooCommerce allows you to leverage the power of WordPress for your e-commerce needs.

**Cost Control:** If you want more control over your costs, WooCommerce's basic plugin is free. You only need to pay for hosting, domain, and any premium themes or plugins you choose to use.

**Content Marketing:** If content marketing is a significant part of your strategy, WooCommerce integrates seamlessly with WordPress, making it easier to manage both your content and e-commerce aspects in one place.

**Ownership and Control:** If having complete ownership and control over your website and data is a priority, WooCommerce allows you to choose your hosting provider and manage your site independently.

**[What is the differences between Shopify and WooCommerce?](https://dgihost.com/index.php/2024/01/22/differences-between-shopify-and-woocommerce/)**

**[How to convert Joomla Website to WordPress?](https://dgihost.com/index.php/2024/01/22/convert-joomla-website-to-wordpress/)**

Ultimately, the "best" platform depends on your specific requirements and preferences. If you prioritize simplicity, ease of use, and a fully hosted solution, Shopify may be a better fit. If you value customization, control, and are comfortable with WordPress, WooCommerce might be the ideal choice.
install and setup VSCode on Endeavor
Tags: webdev, programming, beginners, python
Published: 2024-01-22 21:28:10

hello dear Commuinty

i want to install and setup VSCode on Endeavor -

are the following steps enough - and sufficient to get a full and correct setup?

To install VSCode on EndeavourOS and set up a Python development environment, we can follow these steps:

first we have to open a terminal and update the package list by running the following command:

`sudo pacman -Syu`

Install the Visual Studio Code package using pacman:

`sudo pacman -S code`

Install the Python extension for Visual Studio Code. Open VSCode, we have to click on the Extensions icon on the left sidebar, search for “Python”, and install the extension by the Microsoft-company.

We can install Python on our system. EndeavourOS comes with Python pre-installed, but we can check the version by running the following command:

`python --version`

If we need to install a different version or a specific package, we can use pacman or the pip package manager.

Create a virtual environment for your Python projects. This step is optional, but it’s a good practice to isolate our project dependencies. To create a virtual environment, navigate to our project folder and run the following command:

`python -m venv venv`

This will create us a folder named “venv” that contains the Python interpreter and pip packages for your project.

Activate the virtual environment by running the following command:

`source venv/bin/activate
`
we should see the name of your virtual environment in the terminal prompt.

We can install any packages or libraries that your project requires. we can use pip to install packages from the Python Package Index (PyPI). For example, to install the NumPy library, we run the following command:

`pip install numpy`

now we can open our project folder in Visual Studio Code and start coding! You should see the Python extension in action, providing syntax highlighting, code completion, and other useful features.

That’s it! With these steps, we should have a working Python development environment with Visual Studio Code on EndeavourOS