teleren/devto huggingface dataset:
Create You Own Pod
Tags: pods, library, ios, swift
Published: 2023-03-13 10:00:50

So far you would have used pods as a dependency in your project. 
Do you want to create your own pod and help others?

Let's do it by below easy steps - 

1. Open terminal and type the command ->  `pod lib create Your_Pod_Name`
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r0snyonfm3mbeicd99dl.png)

2. It will ask you some questions and then will create an XCode project for you. This Xcode project will contain some files added for you 
    1. .podspec -> will contain the details/specifications about your library
    2. README.md -> the README file in markdown format. 
    3. License -> this will hold the default MIT license. You can replace with your own if required.
    4. ReplaceMe.swift -> A default swift file to guide where to add your files.

Lets setup the project now - 
1. **README.md** - Open this file and add/edit the details relevant to you. You can remove the details which are not required.
2. **Addling classes** - 
    1. Delete the Replace Me file.
    2. Click on MyFirstPod under Pods and Create a folder with name Sources
    3. Now add your library files to this folder.  
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xmlqe2m88rg20zb8sihv.png)
3. **Adding Resources** - You need to add the resources like xib,asset,icons etc to a separate folder. If you don’t have any then you can skip this step.
    1. Create a folder named Resources on the same level as we did for Sources.
    2.  Now add your resource files to it here 
4. **Update folder path in podspec file** - Open you podspec file and set the following keys one by one
    1.  set s.source_files to this 
       `s.source_files = 'Sources/**/*.swift'`
    2. s.resources to below. You can add the extension of files you have added to your project. 
       `s.resources = "Resources/**/*.{png,xib}"`
    3. Add the description and summary for your project
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fu3dyqbrmt7ezrxzxf6h.png)
5. **Deploy your library -**
    1. **Push to your Git Repo -**
        1. Create a repository for this project and push your project to it.
        2. Now we need to add a tag to the last commit. This tag should be the one mentioned in podspec file on `s.version`. This tag is becomes the version of your pod.
    2. **Validate -**
        1. Open terminal 
        2. Traverse to the folder where the podspec file exists.
        3. Run `pod lib lint --allow-warnings`. This will validate your library.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q651u2mchdp8lq4a2dgq.png)
    3. **Deploy to public** - Run `pod trunk push --allow-warnings`. If everything goes right then you will see as below - 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fn91tvnh0fh7dc46xago.png)

That's it. Now you can install this pod in any other project.🎉

You can find the demo project on below link - 
https://github.com/NalineeR/NRCustomPod
Paracetamol.js💊| #202: Explica este código JavaScript
Tags: javascript, webdev, spanish, programming
Published: 2023-03-13 10:00:00

## **<center>Explica este código JavaScript</center>**
#### <center>**Dificultad:** <mark>Intermedio</mark></center>

```js
const one = () => Promise.resolve("one");

const fn = async () => {
  console.log("Hola")
  const res = await one();
  console.log("Mundo")
  console.log(res)
}

console.log("Antes de la función")
fn()
console.log("Despues de la función")
```

A. `Antes de la función`, `Hola`, `Después de la función`, `one`, `Mundo`
B. `Antes de la función`, `Hola`, `Después de la función`, `Mundo`, `one`
C. `one`, `Hola`, `Mundo`, `Antes de la función`, `Después de la función`
D. `Ninguno de los anteriores`

Respuesta en el primer comentario.

---
Git Stash For Temporary Save
Tags: git, github, gitstash
Published: 2023-03-13 09:57:40

```
git stash 
```

git stash is a Git command that allows you to temporarily save changes that are not yet committed to a branch, so you can switch to a different branch or perform other operations without committing the changes. The command creates a stash, which is a stack of saved changes that you can later apply or drop.

When you run **git stash** , Git saves your changes and reverts your working directory to the state of the last commit. You can then switch to a different branch or perform other operations without worrying about committing incomplete changes.

```
git stash apply
```
To retrieve the saved changes, you can use the git stash apply command. 

```
git stash pop
```
If you want to apply the changes and remove them from the stash, you can use git stash pop.

```
git stash save -m "my message"
```

You can also create a stash with a message by using the -m or --message option. This can be useful to help you remember why you stashed the changes in the first place.


```
git stash list
git stash drop
git stash clear
```

In addition to **git stash apply** and **git stash pop**, there are several other commands you can use to manage stashes, such as git stash list to list all stashes, git stash drop to remove a stash from the stack, and git stash clear to remove all stashes.

**git stash clear** removes all the stashes from the stash stack, but it does not restore any changes that were previously stashed. If you had stashed changes before running **git stash clear**, then those stashes would have been deleted, but any changes that were already applied from the stash would still be present in your working directory.

If you want to restore your working directory to the state it was in before you applied the stash, you can use the **git stash apply** or **git stash pop** command to reapply the stash and restore your changes, and then either commit those changes or discard them as appropriate.

```
git stash apply stash@{n} 
```
For example, you could run **git stash pop** to apply the most recent stash and remove it from the stash stack. If you want to apply a specific stash, you can use **git stash apply stash@{n}**, where n is the index of the stash you want to apply. You can use **git stash list** to see the list of available stashes and their indexes.
#TestCulture 🦅 Episode 28 – Concept of 3 Amigos
Published: 2023-03-13 09:52:21

To prepare for the next sprint, the Product Owner organizes, possibly with the help of the Scrum Master, meetings called “Sprint Refinements” where he presents the User Stories to certain members of the team in order to facilitate sprint planning.

The practice of the 3 Amigos consists of inviting to the refinement Sprint a Developer to spot how the US would be implemented, and another actor from the development team who can identify the most relevant acceptance criteria.

To do this, a Tester or any other person capable of decentring from the “how” problem is necessary. 💭 This extra person must provide insight into the use of the US, both in terms of the proposed functionality and its exploitation. 🔩

This person's questions should lead to:
1️⃣ The PO to identify the answers, specify the test data involved in these questions and the level of added value seen from the field associated with these questions so as to provide the underlying requirements for the US.
2️⃣ The Developer to integrate these functional requirements and those that have an impact on the architecture, this is the notion of “Architectural Significant Requirement”.
‍It can be noted that this workshop can be enriched by adding different profiles (UX, security, customer,…). 💪🏼

📰 Learn more about the concept of 3 Amigos: https://www.agilitest.com/cards/3-amigos

A thread [on Twitter.](https://twitter.com/agilitest/status/1626248102184161281?s=20)
Being a Developer Advocate: Week 23 + 24
Tags: devrel, learninpublic
Published: 2023-03-13 09:50:26

Hello everyone 🥰

I hope you are all well and had great last two weeks.
For me they were extremely busy with our hackathon event and all the subevents like keynotes, workshops and a panel discussion around them.

I got some serious hosting experience under my belt now. I also feel more comfortable doing the hosting now 🥰 Talking is easy but hosting an event is a different beast because you have to take care of so much stuff at once.

## Hackathon Experience and Learnings
The hackathon we try to host quarterly is something special and important. We actually can see how our users try to use the product, get a ton of feedback and see where our product still lacks.

Also we get to host some events with speakers from the community and the topics are not specific to our product and thus helpful for the community 🦄

Learnings:
* Hosting events is easier with someone managing the chat and taking care of things you might have missed in the heat of the moment
* Panel discussions live from differing points of view and also respect among the panelists. Make sure to select your speakers for this
* Send possible questions for the panel discussion to the speakers beforehand
* Make sure to include the audience if an interesting and related question arises in chat
* Doing a workshop: Write down every step and everything you want to link to and keep it handy. Do not let anything happen by chance!
* Having docs to refer to is essential. I noticed that my work on the docs came in handy. I can not count the times I said "And you can also read everything here in detail!" 😊

## More Docs Work - API docs
Our API docs are not up to the task when it comes to helping our users achieve things. One even mentioned that they look *Unfinished* (Yikes!).

So I looked up some nice API docs and one stood out: https://plaid.com/docs/api/products/assets/#asset_reportcreate

I also love the nginx docs for their simplicity: One pager with at least one example for each directive!

So I set out to recreate a one-pager in Docusaurus where you can search with your browser search. I actually hate when getting the details of a command requires to open a new tab.

With the new version of our product our API docs will have a one pager with all the API commands and you can get into the details on the exact same page 🥰

## Speeding up Our Website
Last but not least our website needed more love. By accident I found out that 36% of our website visitors come from mobile and the landing page was not pretty there 🥶

With some tinkering it looked ok but the performance on slower mobile networks was awful: 3-4 seconds until first paint!

Turned out fixing this is easy: The hero-image that is above the fold should be converted to a smaller version -> SVG 1.8mb => png 27kb.

Also eager and not lazy-loading it speeds up. Do this for everything above the fold!
React MVC Store, Reducer, Controller all in one
Tags: react, reducer, controller, store
Published: 2023-03-13 09:45:40


 
 I have created a React library to help front-end developers build React application with stores, reducers and controllers patterns. This is a pure React library, lightweight and easily adaptable to any current React based application. It doens't introduce any new technology but utilize the built-in React core functions to ensure the performance and integrity of React Framework.

If you were a fan of traditional MVC architect, then you won't be able to resist going ahead with "trendy" Flux pattern, a front-end architect by Facebook that focusing in unidirectional data flow. You probably get familiar with view, action, dispatcher, store and also reducer in Redux, another version of Flux. Redux in recent years has gained popularity as the de facto partner for many React applications.

However there is still an open question regarding Flux & Redux patterns: where is the Controller? You may see different answers depending on people's point of view, but the common information is that the Controllers don't have good place in the store - reducers pattern like Redux, they are unnecessary. Still, it was an unsatisfactory answer.

React-controducer not only provides stores, reducers, but it can also fill that gap by bringing Controllers into the store-reducer cycle and centralizing the management of React view components. If you're familiar with the Redux syntax, the controller will give you the same effect but with React's native rules.

Features

- Define configurable stores across application
- Define Reducers and Actions set for each store
- Define Controllers that can "consume" one or many stores and processing data for React components group
- Define Duty, an independent executable unit that can be called from anywhere in the application
- Built-in Hooks for store, controllers, duties

Document

- Getting started - Quick Start Guide: https://yoopage.org/react-controducer-y1/getting-started-p1/quick-start-guide-s3
- Installation: https://yoopage.org/react-controducer-y1/getting-started-p1/prerequisite-installation-s2
- API Reference: https://yoopage.org/react-controducer-y1/api-reference-p2
- How to configure multiple nested store: https://yoopage.org/react-controducer-y1/getting-started-p1/configure-nested-branch-stores-s10
- Create Duty, an excutable asynchronous function outside controller: https://yoopage.org/react-controducer-y1/getting-started-p1/bring-more-duties-to-the-code-s4
Working with Databases-Creating Tables
Tags: opengauss, database
Published: 2023-03-13 09:39:30

**Background**
A table is created in a database and can be saved in different databases. Tables under different schemas in a database can have the same name. Before creating a table, refer to Planning a Storage Model.

**Procedure**
Run the following statement to create a table:

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

If the following information is displayed, the table has been created:

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

c_customer_sk, c_customer_id, c_first_name, and c_last_name are the column names of the table. integer, char(5), char(6), and char(8) are column name types.
FindProxy.org - Your Go-To Source for Proxy Selection
Published: 2023-03-13 09:39:08

As the use of proxies becomes more common for various online tasks, finding the right proxy can be a daunting task. That's where FindProxy.org comes in - a reliable source for understanding and selecting the best proxy for your needs.

FindProxy.org provides in-depth information on different types of proxies including datacenter, residential, and mobile proxies, as well as their use cases. This platform is dedicated to being a reliable source of accurate information on all things proxies, with a mission to empower users to make informed decisions when it comes to proxy selection by providing up-to-date information.

Mobile proxies, for instance, are a type of proxy that use IP addresses from mobile devices, such as smartphones and 4G modems, making them ideal for tasks such as mobile advertising, scraping, and social media automation. Residential proxies, on the other hand, use IP addresses from actual internet service providers (ISPs), making them less likely to be detected and blocked by websites and apps, and ideal for scraping, social media automation, and online advertising. Datacenter proxies use IP addresses from datacenters and are generally faster and more reliable, making them preferred for web scraping, social media automation, and online advertising.

Whether you are a business owner, marketer, or web developer, FindProxy.org has you covered. Browse their website to learn more and make informed decisions when it comes to proxy selection. The platform also provides information on the privacy policy and terms and conditions of using their services.

In conclusion, if you need to use a proxy for your online tasks, [FindProxy.org](https://findproxy.org/) is your go-to source for understanding and selecting the best proxy for your needs. With their up-to-date information on different types of proxies and their use cases, you can make informed decisions and ensure that you are using the right proxy for your online tasks.
Week 8: Admin page design and records server integration
Tags: opensource
Published: 2023-03-12 23:25:04

## Overview
This week I have been working on two major things, which are:
- UI design for the admin panel page 
- Records creation, prolonging and deletion flow integration with front end

## Design
People from Seneca requested our team to include some sort of admin panel in the startchart and as the first step of doing so, we needed some ideas on its design of it. What I liked about developing design first with the close collaboration of all team members is that it stimulates everybody to think about how certain functionality is gonna work on all layers. I presented my ideas on the design on Wednesday for the team and as I expected we had a very productive conversation on not only the design itself but also on how the admin functionality is gonna be implemented in general. As a result, we got a pretty decent concept of what UI design is gonna include and how it is gonna be done. 

## Records flow integration
The day has come and I finally created the PR on integrating the records creation flow which includes not only creating the record in DB but also manipulating with Route53. Since the flow was implemented on the back end side I was able to integrate it on the front end. I faced one interesting issue while doing so. 

That issue was when I tried to delete records which were created by seeding DB and had an issue with doing so. At a certain point with the help of Won I realized that since we create the fake hosted zone after seeding DB these records are not in fake route53 but only in the database. This made me integrate record creation first, so I could work with other manipulation on them. I also deleted seeding DB with that records, because it provides more confusion than benefits.  

UPD: looks like E2E tests are failing because of removing tests, maybe I should do something else 

## Conclusion 
It was a nice week, especially the few last days. I started proactively fighting against my huge social media addiction and it helps to make more stuff done and just feel better in general. My focus is returning to me and I feel like I can start to look deeper into things. Hope the next week is gonna be even better. Peace ✌️
When you should not use Wordpress
Published: 2023-03-13 09:30:49

When you should not use Wordpress

Wordpress is a great platform for many things. But there are also some instances when it might not be the best option. Here are some examples:

1. When you need a highly customized website

If you need a website that is very unique and custom-built, then Wordpress might not be the best option. While there are many themes and plugins available, they might not be enough to create the exact website you need. In this case, it might be better to hire a web developer to create a custom website for you.

2. When you need a very simple website

If you just need a simple website with a few pages, then Wordpress might be more than you need. In this case, a static HTML website might be a better option. This will be much simpler to create and maintain, and will likely be faster and cheaper than using Wordpress.

3. When you need a website that is easy to maintain

If you need a website that is easy to update and maintain, then Wordpress might be a good option. However, if you don't have much experience with website development, then you might find Wordpress to be confusing and difficult to use. In this case, you might want to hire a web developer or designer to help you with the maintenance of your Wordpress website.

4. When you need a website that is easy to scale

If you need a website that you can easily add more content and features to as your needs grow, then Wordpress is a good option. However, if you need a website that is very basic and doesn't need to be changed much, then Wordpress might not be the best option.

5. When you need a website that is secure

If you need a website that is secure from hacking and other security threats, then Wordpress might not be the best option. While there are many security plugins and features available, Wordpress websites are still often targeted by hackers. In this case, you might want to consider a more secure platform such asSquarespace or Wix.
install VSCode on EndeavourOS and set up a Python developement environment
Tags: python, vscode, programming, beginners
Published: 2023-03-13 09:16:40


To install VSCode on EndeavourOS and set up a Python developement 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.

**venv **and the **Creation of 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 our 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
Jayalakshmi Sea Foods Pvt. Ltd.
Tags: beginners, productivity, news, startup
Published: 2023-03-13 09:02:18

We are the premium exporters of finest quality, ready to eat shrimp from India since 1995. Our journey began as a family owned business and with our commitment towards top notch quality product and services combined helped us create a market niche for ourselves in the Western countries. Our processing facilities with a capacity of 8000 MTPA are strategically located in Bhimavaram, Andhra Pradesh which is the prime location of aquaculture seafood business in India.

“A successful Business depends on relationships built on trust and a shared passion to deliver quality of both product and service”

Read More: J[ayalakshmi Sea Foods Pvt. Ltd.](https://jlsf.in/)

Thanks
Kasi Mavuri