teleren/devto huggingface dataset:
Props Vs State
Tags: javascript, react, props, webdev
Published: 2022-02-14 09:03:34


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m6te0k4xh1k7au3hff8h.gif)
**PROPS VS STATE**
Props :: are used to pass data from one component to another and 
State :: is a local data storage that is local to the component only and cannot be passed to another components
(i.e)

**PROPS** 
(short for "properties") are read only. arbitrary inputs of a react component accepted as first argument to react component.

> React is a component-based library
which divides the UI into little reusable pieces. In some cases known as component's, those components need to communicate (send data to each other) and the way to pass data between components is by using props.
for example 
when u want to pass or (send) some data to a child component from the parent component then your child component access that data as props 
the data can be anything from            
functions,variables,strings,arrys.....

> 
- But the important part here is that data with props is passed in a uni-directional flow. (one way from parent to child)

> 
Furthermore, props data is read-only, which means that data coming from the parent should not be changed by child components.

```
class ParentComponent extends Component {     
    render() {     
        return (         
            <ChildComponent name="First Child" />     
        );   
    } 
} 
 
const ChildComponent = (props) => {     
    return <p>{props.name}</p>;  
};
```
Firstly, we need to define/get some data from the parent component and assign it to a child component’s “prop” attribute.

```
<ChildComponent name="First Child" /> 
```
“Name” is a defined prop here and contains text data. Then we can pass data with props like we’re giving an argument to a function:

```
const ChildComponent = (props) => {   
  // statements 
};
```
And finally, we use dot notation to access the prop data and render it:

```
return <p>{props.name}</p>;
```

some points to take note

 
-Props are input value to components.
-Props are data passed down from a parent component to a child component. A child component can never send a prop back to the parent component.
-Props are read-only components that must be kept pure in other words, Props are immutable.
-It passes custom data to your component and trigger state changes.
-Props are the best way to pass data from one to another component.


Props are nothing but properties used as arbitrary input in react. They are like all the arbitrary inputs you declare in one component but want to use it in other components. For example you declare a function in component A but want to use in component B and C, you store the function as props and call it inside other components by referring to that. Otherwise you can directly declare the function you want to use in the second component and use it inside that component

I hope you find this helpful!
the next part will finish with start  happy coding 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bijpjbdn61g1v9w7r05e.png)
Convert Spreadsheet File Types
Published: 2022-02-14 09:00:45

---
canonical_url: https://ironsoftware.com/csharp/excel/examples/convert-excel-spreadsheet/
---

**C#:**
```
using IronXL;
 
//Import any XLSX,XLS, CSV or TSV Spreadsheet.
WorkBook workbook = WorkBook.Load("test.xls");
 
//Optionally Edit the Spreadsheet
workbook.Metadata.Title = "Import & Export Example";
 
//Export to many formats with fluent saving
workbook.SaveAs("test.xls");
workbook.SaveAs("export.xlsx");
workbook.SaveAsCsv("export.csv");
workbook.SaveAsJson("export.json");
workbook.SaveAsXml("export.xml");
 
//Also Export to a DataSet to allow easy integration with DataGrids, SQL and EF
System.Data.DataSet dataSet = workbook.ToDataSet();
```

**VB:**
```
Imports IronXL
 
'Import any XLSX,XLS, CSV or TSV Spreadsheet.
Private workbook As WorkBook = WorkBook.Load("test.xls")
 
'Optionally Edit the Spreadsheet
workbook.Metadata.Title = "Import & Export Example"
 
'Export to many formats with fluent saving
workbook.SaveAs("test.xls")
workbook.SaveAs("export.xlsx")
workbook.SaveAsCsv("export.csv")
workbook.SaveAsJson("export.json")
workbook.SaveAsXml("export.xml")
 
'Also Export to a DataSet to allow easy integration with DataGrids, SQL and EF
Dim dataSet As System.Data.DataSet = workbook.ToDataSet()
```

The `IronXL` library can be used to create and export XLSX, XLS, CSV, TSV, JSON and XML documents.

We can also export to `System.Data.DataSet` and `System.Data.DataTable` objects for interoperability with SQL.

You can download a file project from this [link](https://ironsoftware.com/csharp/excel/downloads/convert-excel-spreadsheet.zip).
This is how I brought back Youtube Dislike Count using Youtube Data API and Firebase Functions.
Tags: programming, googlecloud, firebase, node
Published: 2022-02-14 08:07:40

Hello Everyone, I hope everyone is well. I brought back the dislike count on YouTube. 

Checkout the video on Youtube: [https://youtu.be/0Ow82OqM_lI](https://youtu.be/0Ow82OqM_lI)

The dislike of the video is given in the title. It's updated in every minute. For this, I used YouTube Data API and Firebase Functions. 
       At every minute, YouTube will take a dislike count using the **Youtube Data API** and then update it to the title of the video. I used Google's **Firebase Functions** to repeat this process every minute. Because It's absolutely free.

Isn't it cool? Write down you opinion.
CSV to Excel (Code Example)
Tags: csharp, webdev, tutorial, ironxl
Published: 2022-02-14 08:03:06

---
canonical_url: https://ironsoftware.com/csharp/excel/examples/csv-to-excel
---

**C#:**
```
using IronXL;
 
//This is how we can load csv file and convert it to .xls or .xlsx workbook
//Also we can specify the column list delimiter
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
 
workbook.SaveAs("CsvToExcelConversion.xlsx");
```

**VB:**
```
Imports IronXL
 
'This is how we can load csv file and convert it to .xls or .xlsx workbook
'Also we can specify the column list delimiter
Private workbook As WorkBook = WorkBook.LoadCSV("test.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Private ws As WorkSheet = workbook.DefaultWorkSheet
 
workbook.SaveAs("CsvToExcelConversion.xlsx")
```

Use IronXL to quickly convert comma separated values text files (.csv) into Excel worksheets.

Shows how to import CSV and "tab separated values" TSV data into Excel WorkSheets in C#.
บทเรียนจากแบบฝึกหัดโปรแกรมตัดเกรด
Tags: beginners, programming, suggestion
Published: 2022-02-14 07:56:33

---
title: บทเรียนจากแบบฝึกหัดโปรแกรมตัดเกรด
published: true
description: 
tags: beginner,programming,suggestion
//cover_image: https://direct_url_to_image.jpg
---

โปรแกรมตัดเกรดเป็นตัวอย่างของ business logic ที่ดีเลยครับ เพราะว่าหลายครั้งก็มีการเปลี่ยนแปลงกฎเกณฑ์ วิธีคิดเกรดของแต่ละสถาบันไม่เหมือนกันก็ได้ บางวิชาในสถาบันเดียวกันก็ตัดเกรดไม่เหมือนกัน บางมีชามี A B C D F บางวิชามีเกรดแค่ S กับ U

อย่างไรก็ตามวิธีคิดเกรดในประเทศไทยมันไม่ค่อยเปลี่ยนแปลงอาจจะไม่เห็นภาพ ถ้าจะปรับให้เหมาะกับบริบทประเทศไทยควรจะเปลี่ยนโจทย์เป็นการคำนวณว่าใครได้เป็นส.ส.และส.ว.บ้างเพราะว่ารัฐธรรมนูญและกฎหมายลูกเปลี่ยนบ่อยเหลือเกิน และยังมีประเด็นในการตีความด้วย

เพราะว่าโปรแกรมเปลี่ยนตามกฎเกณฑ์ต่าง ๆ ซึ่งบางทีก็เปลี่ยนสามเดือนหลังจากที่เขียน บางทีก็สามปี บางทีก็สิบปี คนที่มาแก้ไขก็อาจจะเป็นคนละคนกับที่เขียนทีแรก

ถ้าอยากให้โปรแกรมแก้ไม่ยาก ก็จำเป็นต้องเดาใจคนอื่น เดาใจตัวเอง ว่าเขียนแบบไหนแล้วจะกลับมาอ่านง่ายหลังจากผ่านไปหลายปี และเขียนแบบไหนถึงจะกลับมาแก้ง่ายหลังจากผ่านไปหลายปี เป็นต้น

เรื่องว่าโปรแกรมทำงานช้าเร็วใช้หน่วยความจำมากน้อยก็สำคัญ แต่ก็ต้องพิจารณาเป็นกรณีไป หลายกรณีที่โปรแกรมมีประสิทธิภาพพออยู่ก็ไม่จำเป็นต้องไปปรับแต่งอีก
Mind Lab Pro:  Brain Booster Scam or Legit
Tags: health
Published: 2022-02-14 07:45:00

They wish to provide anything that gives a pressing explanation referring to it. The turn of events has won several awards in that area. I don't want to deny you the opportunity presented by that preference. That would actually kick several serious ass. They are getting wiped out because they didn't realize they were in the [Mind Lab Pro](https://ipsnews.net/business/2022/02/09/mind-lab-pro-is-this-nootropics-increasing-mental-power-and-performance-ingredients-warnings-and-side-effects/) business. Your conversion offers a glance at that trend. Can you handle it? That can only come from perfect planning and by doing your homework in order to find the best Brain Health Supplements. That can only be true in an era of a selection. It's a 24 hours a day, 7 days a week opinion. I'd say it is primarily in connection with using that. It is not recommended to do both at the same moment. That really works well you are going for that sarcasm. How do some ladies earn common Mind Lab Pro products? From this story it is possible to see that it is the way forward. I don't know if this working for them but I will try Mind Lab Pro. 

[https://ipsnews.net/business/2022/02/09/mind-lab-pro-is-this-nootropics-increasing-mental-power-and-performance-ingredients-warnings-and-side-effects/](https://ipsnews.net/business/2022/02/09/mind-lab-pro-is-this-nootropics-increasing-mental-power-and-performance-ingredients-warnings-and-side-effects/ )
🦸 How to Write an Effective Test Summary Report [QA Quide]
Tags: beginners, tutorial, testing, qa
Published: 2022-02-14 07:29:34

The article is based on [How is the testing going](https://www.developsense.com/blog/2018/02/how-is-the-testing-going/) by Michael Bolton.

Imagine that a Project Manager has approached you with a question “how is the testing going?”. We will let you know how and what to answer in this article.


An inexperienced tester will dive into numbers straight away, and his answer will sound like this: “Why, everything’s cool. I’ve completed 234 test cases out of 500. 16 automated tests out of 100 have gone down”. This here is a bad answer. Dry numbers with no context whatsoever do not reflect the state of the product, thus, useless. They do not help the manager decide what to do next and how the team should proceed. 

An experienced tester has to provide his team with useful information that will help assess risks correctly and set up the priorities.

## How to present information?

Present the useful information in this order:

1. **Explain the state of the product.** What serious problems we’ve encountered, why they are serious, and how they can affect our customers. This information helps the team understand what to deal with first
2. **Explain how the testing is going.** What still needs testing, what has already been tested, what we will not test and why is that. It’s important to mention how the testing was being done, what environment was used and why. This data is mandatory to assess the risk of receiving problems in the untested product areas and correct the testing plan, should the need arise
3. **Explain why we test the way we do it.** Why the tests we’ve chosen are more effective than those we haven’t. When time and resources are limited, it’s crucial that we choose the right testing areas and sort out priorities
4. **Let the team know about the problems we’ve encountered during testing.** Namely, what makes testing harder, what may cause us to miss bugs, what could help us make testing faster and simpler. If your team knows about your problems, they can help you.

The main task the tester has is finding problems that put the product’s value in danger and reporting on those problems to the project manager and the team. Providing this information in a timely manner allows creating a high-quality product without missing deadlines.

To catch any problem that endangers the product’s value quickly, we use test plans and test strategies. Stay tuned to find out how the plan and strategy are created!

Do you want to learn more about [our work processes](https://forasoft.com/process) and how we do things? Do not hesitate to contact us! 🙂
How to Login to Disney Hotstar Complete Guide 2022
Tags: hotstarloginguide, hotstar, stepstologintothedisneyhotstar, disney
Published: 2022-02-14 07:19:16

Disney+ Hotstar is a popular streaming platform and is owned by The Disney Walt. It has more than 300 million users. You can watch web series, television shows, matches, and cartoons here. All the Disney content is present here. It has free and paid content and also there are various plans you can choose from them. 

**

## Steps to log in to Disney + Hotstar
**

**Following mentioned are the steps to log in to Disney + Hotstar through your mobile phone:** 
1. Open the application and click on three horizontal lines.
2. Now click on log in and select the mode of login that is through your Facebook or email account.
3. Enter your credentials as required.
4. Now you will be able to access the application on your mobile phone.

**Following mentioned are the [steps to log in to Disney + Hotstar](https://famousbollywood.hpage.com/steps-to-log-in-to-the-disney-plus-on-tv.html) through your web:** 
1. Go to the Disney + Hotstar website from a supported browser and ensure that you have a proper internet connection.
2. You see a login option on the screen. Click on it.
3. Enter your credentials according to the login method you choose.
4. You will be required to link your phone number to your email account or Facebook account.

**Following mentioned are the steps to log in to Disney + Hotstar through Smart Tv:** 
1. Go to the Disney + Hotstar application and click on login. 
2. A code will be shown to you on the screen.
3. Go to www (dot) Hotstar/activate and enter the code there.
4. You will be logged in to your device.

You can choose the method as per your device for the [**Disney Hotstar login**](https://www.famousbollywood.com/disneyplus-com-login-begin-activate-disney-plus-hotstar/).
Get Notified When Package Dependencies Release An Update 🚀
Tags: javascript, reactnative, npm, webdev
Published: 2022-02-14 07:18:54

**Problem**
Keeping package dependencies up-to-date is quite important as it contains bug fixes, improvements & security updates but it gets quite hectic when the project is growing with more dependencies & keeping track of each package release is time-consuming.

What if there was a way to get notified automatically when a package has released a new update & based on its release notes you can decide whether to update the package under your dependencies or leave it as it is.

**Introducing Bonditore**

> [Banditore](https://bandito.re/) retrieves new releases from your starred GitHub repositories and generates an Atom feed with them & its completely free.

**Account Setup**
Star the repositories whose updates are important for you then create an account in [Banditore](https://bandito.re/) using your Github ( make sure its the same account using which you’ve starred the repo’s)
![starrting the repo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fquuah27ks7a5td02318.png)

Once the login is successful, reload the page and it will show you the latest releases & if doesn’t show then logout and log back in.
![dashboard](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xp0mgcdknmympn0gkntn.png)


**Notification Setup**
Copy the feed link which Banditore provides in the dashboard and then install [RSS Feed Reader](https://chrome.google.com/webstore/detail/rss-feed-reader/pnjaodmkngahhkoihejjehlcdlnohgmp?hl=en) extension in your browser. Once the installation is done setup the extension by going to its [settings page](https://feeder.co/settings/feeds/new?q=&tabId=&ctx=extension) & paste the feed link inside the search field and click search.

![Feed link update](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z6y4wido1roxbni0vnl9.png)

Once the search is complete it will show the feed info, Click on follow and its going to pop up the feed settings so setup it up as per your preference. 
![saving feed link](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zf6jjnglwg6xb6iaaw51.png)
![feed settings](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ne8g11jbm1xyc4eg7fhi.png)
 
Now sit back and relax, When a new release / tag is available, you’ll know it right away & when you click of any of the feed update it will redirect you to the official github release page which contains the release notes. 

![Feeds update](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1d6udek9a725jfh59m7y.png)
 
**Helpful Links**
[https://bandito.re/](https://bandito.re/)
[https://github.community/t/rss-feeds-for-github-projects/292/2](https://github.community/t/rss-feeds-for-github-projects/292/2)
How To Install Slack On Ubuntu
Tags: beginners, ubuntu, linux, slack
Published: 2022-02-14 06:59:27

Slack is one of the most popular collaboration platforms globally that brings all your communication together. Conversations in Slack are organized in channels. You can create channels for your teams, projects, topics, or other purposes. You can search through everything posted in channels or your messages. Slack also allows you to talk with your teammates over audio or video calls and share documents, images, videos, and other files.

This blog shows two ways of installing Slack on Ubuntu 20.04. Slack can be installed as a snap package via the Snapcraft store or as a deb package from the Slack repositories. It is not recommended to install both the Deb and Snap package on the same system. Slack is available for Android, iOS, and Windows.

So let’s go ahead and install Slack on Ubuntu.

## Option 1: Install Slack on Ubuntu Via Snap

Snaps are self-contained software programs that provide all the dependencies necessary for the application that runs the binary. It is also reliable and easy to update. Unlike the standard deb packages, snaps get a heavy-duty footprint and more excellent device startup time.

The Snap kit for Slack is managed and distributed by Microsoft.

You can install Snap packages from either the command-line or the Ubuntu Software application. Run the following command:
```
sudo snap install slack --classic
```
With the above command executed, your Ubuntu desktop now have Slack installed on it, so you can start using it.

The cool thing about installing it this way is that it updates automatically if the devs update the snap for it.

## Option 2: Install Slack on Ubuntu using the DEB package
You can also install Slack with the Debian package.

Navigate to the official [Slack download page](https://slack.com/intl/en-in/downloads/linux?ref=techvblogs.com). Then download the Slack Debian package on your system.

Once the download is finished, open a terminal and run the following command to install Slack on the Ubuntu system.
```
sudo apt-get install ~/Downloads/slack-desktop-*.deb
```
All done. Slack has been installed using the Debian package.

## Launch Slack Application

Press the command button to launch applications. Then search for “Slack” under the search bar. This will show you the slack launcher, then click the launcher icon to start the application.

You will see the create a new workspace or sign in page on the Slack application.

![How To Install Slack On Ubuntu](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gemp33gtcy4t3ushfuvy.png)

Sign up for a workspace from the main page or create one for your team.

Thank you for reading this blog.
Validating a hypothesis- Pt-1
Published: 2022-02-14 06:56:34

## Idea:
Play games, to win prizes. This format is an ancient ancient one. Such an idea with a twist popped up in my head, and now I have decided to test out whether it will be accepted in the market or not.

## Hypothesis:
Users play chance based games, and win discount on street food. For now, only [Panipuri](https://en.wikipedia.org/wiki/Panipuri).
To play games they need coins, some of which they get on sign up, but otherwise, they have to watch ads to earn them.
Some of the revenue of those ads will be directed towards giving them discounts.

## Burning questions:
1. How much will the app make from ads? Because the discount expenses must be covered by ad revenues completely. If a plate of Panipuri costs Rs. 15, viewing of x ads must at least give Rs. 15. 
2. How to onboard Panipuri vendors, and what loops to build in the app for the users to form habit?

## Action:
I am in the midst of creating a React Native application to find the answer to the first question. It will be an android only application, and should be released on the Amazon app store by Monday. 
Based on the answer, I may have to tweak the mechanics, and economy of in-game currency.

## P-0 features:

1. Google sign-in
    a. Log out
    b. ask for sign-in if user is not already logged-in
2. Show coin balance on all screens
3. Play screen -> Spin the wheel, and win coins (7, 9, 12, 20). 1 spin costs 5 coins 
    a. Watch ad to get 5 coins (Google admob, rewared ads)


Above features, are enough to find out the revenue the app generates with ads.
Group Row and Column Headers in React Pivot Table
Tags: react, reactnative, webdev
Published: 2022-02-14 06:54:34

Learn how easily you can group [pivot table](https://www.syncfusion.com/react-ui-components/react-pivot-table) row and column field items based on date, time, number, string types. This video demonstrates grouping dates in year, quarter, month, etc., and number types in ranges like 1–5, 6–10, etc. in row and column headers of the pivot table.

Product Overview: https://www.syncfusion.com/react-ui-components/react-pivot-table

Download an example from GitHub: https://github.com/SyncfusionExamples... 

Refer to the grouping documentation for the Syncfusion React Pivot Table component: https://ej2.syncfusion.com/react/document

Interact with the grouping demo for the React Pivot Table: https://ej2.syncfusion.com/react/demo

{% youtube 5UOKVbdZTCA %}
Striving for more
Tags: discuss, personal, improvement, growth
Published: 2022-02-14 06:54:06

---
title: Striving for more
published: true
description: You should always strive for more and be perfectly content and grateful for what you currently have
tags: discuss, personal, improvement, growth
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tb4xfns4bscnx7slfk2c.jpg
---

_Originally published on [my blog](https://www.nikola-breznjak.com/blog/daily-thoughts/striving-for-more/)._

> This sounds like an oxymoron, but you should always strive for more and be perfectly content and grateful for what you currently have.

---

This is [why I write](https://www.nikola-breznjak.com/blog/daily-thoughts/why-do-i-write-these-daily-thoughts-posts/) these 'daily thoughts' posts.
Work with Excel Ranges (Code Example)
Published: 2022-02-14 06:47:17

---
canonical_url: https://ironsoftware.com/csharp/excel/examples/excel-ranges/
---

**C#:**
```
using IronXL;
using System.Linq;
 
WorkBook workbook = WorkBook.Load("test.xls");
WorkSheet sheet = workbook.WorkSheets.First();
 
//This is how we get range from Excel worksheet
var range = sheet["A2:A8"];
//This is how we can iterate over our range and read or edit any cell
foreach (var cell in range)
{
    Console.WriteLine(cell.Value);
}
 
 
// Another Example
var oneMoreRange = sheet["A9:A10"];
 
//This is how we can combine our ranges into a single selection
var resultRange = range + oneMoreRange;
 
//Iterate over new range - get or set any Cell
foreach (var cell in resultRange)
{
    Console.WriteLine(cell.Value);
}
```

**VB:**
```
Imports IronXL
Imports System.Linq
 
Private workbook As WorkBook = WorkBook.Load("test.xls")
Private sheet As WorkSheet = workbook.WorkSheets.First()
 
'This is how we get range from Excel worksheet
Private range = sheet("A2:A8")
'This is how we can iterate over our range and read or edit any cell
For Each cell In range
	Console.WriteLine(cell.Value)
Next cell
 
 
' Another Example
Dim oneMoreRange = sheet("A9:A10")
 
'This is how we can combine our ranges into a single selection
Dim resultRange = range + oneMoreRange
 
'Iterate over new range - get or set any Cell
For Each cell In resultRange
	Console.WriteLine(cell.Value)
Next cell
```

A `Range` represents a selection of one or more cells in Excel.

With IronXL we can Read, Add, Sum, Average, Min, Max and Set Values over any Range of Cells.

You can download the software product from this [link](https://ironsoftware.com/csharp/excel/downloads/csharp-excel-range.zip).