teleren/devto huggingface dataset:
Recurrent Neural Network In a Spreadsheet
Tags: machinelearning, tutorial, neuralnetworks, beginners
Published: 2021-10-25 11:27:49

---
title: Recurrent Neural Network In a Spreadsheet
published: true
description: To better understand recurrent neural networks and how they remember things, I built one in a spreadsheet. You can too!
tags: machinelearning, tutorial, neuralnetworks, beginners
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9e49kegtibno9xhzlmvr.png
---

Truly understanding Recurrent Neural Networks was hard for me. Sure, I read [Kaparthy's oft-cited RNN article](http://karpathy.github.io/2015/05/21/rnn-effectiveness/) and looked at a diagrams like:
![A typical basic RNN diagram, with only 3 arrows and very little explanation](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7jxk2rp5dk83b6k1qukl.png)

But that didn't resonate in my brain. How do numbers "remember"? What details are lurking in the simplicity of that diagram?

To understand them better, I built one in a spreadsheet. It was not as straightforward as my [previous](https://dev.to/kjlubick/training-a-simple-neural-network-in-a-spreadsheet-2n05) [attempts](https://dev.to/kjlubick/building-an-image-recognizing-spreadsheet-30kh) to build neural networks this way, mostly because I had to discover novel ways to visualize what was going on:

![A visualization of how the hidden layer of an RNN progresses through time to spell the word "mississippi". There is a plot with colored regions and an arrow moving around them.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1c6q6smqmyzgzy2d8jgu.png)

Those visualizations really helped RNNs click for me, and I was able then to implement one and figure out the weights to make it work. I walk through that [entire process in this YouTube video](https://www.youtube.com/watch?v=a4JLw4Du8YM).

The [completed spreadsheet is here](https://bit.ly/RNNSheet2).

More of my work:
 - Building a traditional neural network in a spreadsheet to learn AND and XOR ([Part 1](https://www.youtube.com/watch?v=fjfZZ6S1ad4), [Part 2](https://www.youtube.com/watch?v=1zwnPt73pow))
 - Building a convolutional neural network in a spreadsheet to recognize letters ([Part 1](https://www.youtube.com/watch?v=8QfFtUcuYCU), [Part 2](https://www.youtube.com/watch?v=pH0s0e62GT8))
Todo App | React 17 + Tailwindcss + useReducer + localStorage
Tags: react, tailwindcss, webdev, spanish
Published: 2021-10-25 11:23:46

A modo de practica decidi hacer la tipica Todo App pero usando funciones reducer y el hook useReducer de React para una manipulacion más estructurada del estado. Asi mismo, use Taildwindcss para darle estilos personalizados y la API de Local Storage para persistencia de datos en el navagador.

Les dejo el link del repo final:

{% github crisdux/todo-app-react-reducer%}
Wow, I completed 4 PR this year Hacktoberfest! 🎉🌟😁
Tags: hacktoberfest, opensource, github, git
Published: 2021-10-25 11:20:44

### Yes! I completed my **Hacktoberfest** journey successfully after completing 4 PR request! 

### My plan for Hacktoberest.

Since last month I was keep in touch by **Digital Ocean** about Hacktoberfest event. I was learned how to make **Pull Request** to make Hacktoberfest event successfully complete. Then I make a webinar with my friends in a Facebook event, in where we teach hundreds of others how to do open source contribution, git and GitHub, Pull Request and as well as Hacktoberfest event. 

We teach and let them know that If you know coding then you can do open source contribution to great projects. It help them many way like enrich their portfolio since GitHub is one of the profile what recruiter want to check out.

If you know coding/programming then it is okay, you can contribute many great projects. But if you don't know code well, then how can you contribute and participate Hacktoberfest? Well, Coding is not only option for contribution. You can contribute open source by helping documentation section too. And many projects don't need to know code for contribution. I also contribute projects in where I don't need to know code. 

### Progress

My first PR was bit hard and faced several failed attempts for twisted git issues. It was because I couldn't set remote upstream git repository. Then I tries several times, googling, read Stack overflow solutions and finally solved that issue. 

After my first Pull Request completed then others PR was easy to completed. It takes almost 15 days to complete my total 4 PR requests. 

### Contributions

I mainly contributed to a cheatsheet repository, which name is **Devsonket**. Devsonket is helping others about cheeetshet of almost everything like Windows 10 OS cheetSheet, Linux command line cheetsheet, Adobe Photoshop cheetsheet and many more. It is mainly for Bengali communities. You can check it out! 

{% github devsonket/devsonket.github.io %}

I choose this repository because I got help from this and as I know little bit of shortcut of windows 10 and Linux command prompt, so it is easy to contribute and make PR to this repositories and make myself open source contributor.  


### Reflections

So it is really great experience to contribute Hacktoberfest event and successfully completing is another awesome experience. Now I know how to contribute open source. My contribution will continue. My next plan is contribute by coding in some great repositories. 

Thanks to **Digital Ocean**, **Dev.to**, **GitHub** and others. Without Hacktoberfest I may never know how to contribute open source. Feel proud to be an open source contributor!
Art Of Negotiation - freelancing as a developer.
Tags: freelancing, beginners, webdev, programming
Published: 2021-10-25 10:47:32

Hi, my name is Saifullah Usmani. I am a Programmer and a Graphic Designer. I have been programming for almost 5 years now. And I have worked with several freelance clients.

If it sounds like a thing that will add value in your life then consider following my page because I keep creating quality content for you.

##What is negotiation(in freelancing):
The **negotiation** in freelancing is part of **Sales Communication Skill**.
The sales Communication skill teaches you how to make the other person accept your terms in our case the price.

##Why learn the art of negotiation?
Because it will help you achieve what you want from an agreement, deal or debate.
A good conversation is not only about understanding the other person's point of view but also deliver your point of view and agree on the terms that will not only benefit the other person but also you.

While making a deal, most of the time the freelancers with little to no knowledge of sales communication skill and negotiation end up doing a deal in the other person's favor.
Which is good for them and bad for you.

It is not wise neither good to do that when you have to feed yourself. Some people think this shows a good heart. Profiting other's is good but profiting not only other but yourself is necessary when you have to feed yourself. There is no bad in that. Be selfish so you can be generous afterwards.

##How to learn the art of negotiation:
In our case we are freelancers so we need to learn sales communication skill. It is basically the art of negotiation. And I learned it through YouTube. I shared more thoughts on it in the first part of this series. Get that link from top or bottom of this article.

I hope it added value in you. Please follow my page so you can get more updates.




[![DigitalOcean Referral Badge](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/00rcc3tqicv68383vo0r.png)](https://www.digitalocean.com/?refcode=9d6f3f71c1b4&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)
Affiliate Link☝



##Follow me:
Hire me: https://www.fiverr.com/saifullah02 (For web development Purposes)
My New Blog: [saifullahusmani.com](https://saifullahusmani.blogspot.com/)
*Follow me here:* https://dev.to/saifullahusmani
*YouTube:* http://bit.ly/saifullahusmani (Programming Tutorials Coming Soon).
*Discord:* https://discord.gg/AKyvy8Y
*Facebook*: https://www.facebook.com/SaifullahUsmani693
Day 17 of 100 Days of Code & Scrum: Finished My User Stories Guide
Tags: 100daysofcode, beginners, programming, webdev
Published: 2021-10-25 10:32:40

Good day, everyone!

I have pretty great news for today! I managed to finish my guide, [The Art of Writing Agile User Stories](https://dev.to/rammina/the-art-of-writing-agile-user-stories-17o9). The intended target readers are beginners who want to get started on writing user stories for their own projects
and/or just to learn more about Scrum. Feel free to check it out!

## Yesterday

I finished planning out my Weekly Goals and I also wrote most of the content for my user story guide.

## Today

### Scrum

I proofread, edited, and then posted my user story guide. I'm pretty content with the results for now, but it seems like there are still sections I can add and cleanup.

I hope everyone is doing well. Thank you for reading!

![Thank You Banner](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8dk911bay3opl2qhllpg.png)

### Resources/Recommended Readings

- [The 2020 Scrum Guide](https://scrumguides.org/scrum-guide.html)
- [Mikhail Lapshin's Scrum Quizzes](https://mlapshin.com/index.php/scrum-quizzes/)

#### Image Credits

- [Cover Photo](https://unsplash.com/@firmbee?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)

### DISCLAIMER

**This is not a guide**, it is just me sharing my experiences and learnings. This post only expresses my thoughts and opinions (based on my limited knowledge) and is in no way a substitute for actual references. If I ever make a mistake or if you disagree, I would appreciate corrections in the comments!

### Other Media

Feel free to reach out to me in other media!

<span><a target="_blank" href="https://www.rammina.com/"><img src="https://res.cloudinary.com/rammina/image/upload/v1638444046/rammina-button-128_x9ginu.png" alt="Rammina Logo" width="128" height="50"/></a></span>

<span><a target="_blank" href="https://twitter.com/RamminaR"><img src="https://res.cloudinary.com/rammina/image/upload/v1636792959/twitter-logo_laoyfu_pdbagm.png" alt="Twitter logo" width="128" height="50"/></a></span>

<span><a target="_blank" href="https://github.com/Rammina"><img src="https://res.cloudinary.com/rammina/image/upload/v1636795051/GitHub-Emblem2_epcp8r.png" alt="Github logo" width="128" height="50"/></a></span>
Finding out the RGB value of an image with python
Tags: python, programming, images, pil
Published: 2021-10-25 10:16:58

As a fulstack developer, challenges comes up in their very unfamiliar forms; hence, the need to be open minded and patient as a developer. I bring you the knowledge of seeking out the RGB or HEX values of an image; using python. So; say for instance, you were working on a mobile app (in my case) and a logo was given to you by the client; and he wants you to use the color codes on the logo as the primary colors for the app; however; without giving you the color codes for any of the colors on the logo. Let's get on then!!!
<b>Step 1: </b><b>Create a python script or module</b>: If you're going to need the functionality of finding out colr codes on images, a python module would be preferable. Otherwise, create a singular script.
<b>Step 2: </b><b>Install the PIL library:</b> install the python manage library. You could create a virtual environment or continue with the working workspace already active. The command below installs the PIL (python image library).
```
pip install pillow
```
<b>Step 3: </b>The code:</b>:
```
from PIL import Image
import os
filename = os.path.join(os.path.dirname(__file__), "your_image_filename.format")
# ensure that the image exists in your current working path

with Image.open(filename) as rgb_image:
    image_color = rgb_image.getpixel((30,30))
    print(image_color)
```
The RGB values are displayed; you can then copy to an image picker to get the HEX - values. Thank you!
Hacktoberfest
Tags: hacktoberfest, github
Published: 2021-10-25 10:00:47

I finished hacktoberfest! I'm so impatient to receive my t-shirt :)
![Hacktoberfest congratulations message](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/er1fyhkdbwz23ovyv3s8.png)
It's a Go-Hacktoberfest
Tags: opensource, go, webdev, firstpost
Published: 2021-10-25 09:50:35

Hey Community Members!. Today, I successfully completed Hacktoberfest 2021, presented by digital ocean, appwrite, Intel and deep source. Thanks to the entire community for organizing the open-source contribution events to initiate the passion of contributing to the open source. 

As this is my first Hacktoberfest, I would love to choose three areas for contribution.
- Programming.
- Web Dev.
- Non-programming(Documentation).

I love go language. So, I chose my programming area as a go related project.

Here is the repo I have contributed for go.
- https://github.com/sagar-jadhav/go-examples

My merged PR links,
- https://github.com/sagar-jadhav/go-examples/pull/154
- https://github.com/sagar-jadhav/go-examples/pull/153

Apart from the language specific, I chose my next contribution to the web dev project. I modified a few changes in the footer section of the [LVM-community](https://lwm-community.github.io/LWM-Community-Web-Page/).

Here is my merged PR,
- https://github.com/LWM-Community/LWM-Community-Web-Page/pull/31.

Finally, I contributed to the documentation section(Non-programming).

Here is my merged PR,
- https://github.com/LWM-Community/LWM-Community-Web-Page/pull/34.

![Wooh](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zbbs64r26u2kostz9bmk.png)
 
Nothing has stopped me to contribute to the open source. My open-source has been continuing and has no end.  

Follow me on,
- [Twitter](https://twitter.com/yuvaraj_11_)
- [Github](https://github.com/yuvan11)
- [LinkedIn](https://www.linkedin.com/in/yuvaraj-ramsamy/)
- [StackOverFlow](https://stackoverflow.com/users/13635342/yuvaraj)

> Open-source contribution has no destiny, it needs our hands to shine more.

> Learn more! Share more! Grow more!

Finally, a bag of rewards(Goodies)

[Hacktoberfest Swags](https://twitter.com/yuvaraj_11_/status/1493846619410042883)
Best Accounting and Finance Courses - Finprov Learning
Tags: financetraining, accountingtraining, accountingcourses, financecourse
Published: 2021-10-25 09:44:39

Finprov is one of the Best Accounting and Finance Training Institute in Kerala, Providing courses like Tally, CBAT, QuickBooks, GST, and Income Tax.Home of the Best Accounting and Finance Courses. Finprov provides Job-oriented finance course, accounting training from master trainers.
My 10 favorite Tech Twitter Tweets from this week
Tags: webdev, beginners, programming, tutorial
Published: 2021-10-25 09:27:16

_If you found value in this thread you will most likely enjoy my tweets too so make sure you follow me on [Twitter](https://twitter.com/VladPasca5)  for more information about web development and how to improve as a developer. This article was first published on my [Blog](https://vladpasca.hashnode.dev/)_

Learning how to code is all about building stuff on your own

By VittoStack 

{% twitter 1451494470059429909 %}


Understanding how the structure of an URL is something every developer should know

By _georgemoller 

{% twitter 1451622576078430211 %}


Investing in yourself is always a good idea, especially as a developer or designer

By razacodes 

{% twitter 1451798486597386242 %}


This is how you can learn web development completely for free

By Prathkum 

{% twitter 1451659323512262656 %}


You don't need to spend money on a new laptop, you can start with what you have right now

By study_web_dev 

{% twitter 1450141642606927874 %}


Looking to learn more CSS? Then this thread is for you:

By denicmarko 

{% twitter 1450768106872311809 %}


You literally have no excuse to not become a dev

By heyOnuoha 

{% twitter 1451147884913733640 %}


Communication is a key skill for all developers

By catalinmpit 

{% twitter 1450420822837968896 %}


Being consistent is the easiest way to stand out

By TheAnkurTyagi 

{% twitter 1450815578126569476 %}


Here is a different take on web3 and NFTs (and I love it)

By DThompsonDev 

{% twitter 1451329495680552962 %}


_I hope found this useful and if you did please let me know. If you have any questions feel free to DM me on  [Twitter](https://twitter.com/VladPasca5)._let me know. If you have any questions feel free to DM me on  [Twitter](https://twitter.com/VladPasca5)._
Hashing 
Published: 2021-10-25 05:23:58

DEFINITION:
A hash table is a special collection that is used to store key-value items. So
instead of storing just one value like the stack, array list and queue, the
hash table stores 2 values. These 2 values form an element of the hash
table.

Do C have a built in hash table:
In C we only have indexed arrays to work with. Thus to make a hash table
we will need to retrieve data with functions that use indexed arrays.

*HASHING:
Hashing is an efficient method to store and retrieve elements.
It’s exactly same as index page of a book. In index page, every topic is
associated with a page number. If we want to look some topic, we can
directly get the page number from the index.

How to calculate the hash key? Let’s take hash table size as 7.
size = 7 arr[size];
Formula:
key = element % size

*INITIALIZATION OF THE HASH BUCKET
Before inserting elements into array. Let’s make array default value as -1.
-1 indicates element not present or the particular index is available to
insert.

*INSERTING ELEMENTS

INSERTED 24

INSERTED 8

*What if we insert an element say 15 to existing hash table?
Insert : 15
Key = element % key
Key = 15 % 7
Key = 1
But already arr[1] has element 8 !
Here, two or more different elements pointing to the same index under
modulo size. This is called collision.

*IMPLEMENTATION OF HASH PROGRAM
Create an array of structure, data (i.e a hash table).
Take a key to be stored in hash table as input.
Corresponding to the key, an index will be generated.
*BASIC OPERATION OF A HASH TABLE
searches ,inserts and deletes an element from the hash table

*USES:
to compute an index ,also called hash code ,into an array of buckets or
slots from which the desired location can be found
*ADVANTAGES:
Synchronization
In many situations, hash tables turn out to be more efficient than search
trees or any other table lookup structure. For this reason, they are widely
used in many kinds of computer software's, particularly for associative
arrays, database indexing, caches and sets.

*DISADVANTAGES:
Hash collisions Hash tables becomes quite in efficient when there are
many collisions Hash tables does not all
yarn link when develop cli project
Tags: yarn, cli
Published: 2021-10-25 08:41:57

It's difficult to make `yarn link` work as intended when developing a command line project. The easiest way is:

- `yarn link` in your cli project

assume your cli project is `cli-project`, assume the name is cliProject

```sh
# in cli-project
yarn link
```


- create a demo project and init with yarn

```sh
mkdir demo-project
cd demo-project
yarn init -y
```

- add your cli project as dependency in `package.json`

- `yarn link cliProject` in `demo-project`

```sh
# in demo-project
yarn link cliProject
```

now you can use `yarn cliProject` here. In my situation, I would

```sh
# in demo-project
yarn cliProject --version # to check if yarn link succeeded
yarn cliProject new haha-project # to test my new command

```
Intro to FTP server 
Tags: systems, beginners, ftp, networking
Published: 2021-10-25 08:35:37

 FTP Server is an file transfer protocol used with SSH encrypted format. Therefore it is an secure file transfer protocol. It is very easy to install and configure. The primary purpose of FTP server is easy to download and upload files. 

FTP runs on port 20 and 21 and both must be open for the successful file transfer.  The FTP server can provide connection to users without login credentials; however, the FTP server can authorize these to have only limited access. FTP servers can also provide anonymous access. This access allows users to download files from the servers anonymously but prohibits uploading files to FTP servers.
Visual Studio Live Share
Published: 2021-10-25 08:30:31

**Overview**

When we talk about collaboration in one or more development projects, sometimes it's very inconvenient.
You need to sync code or configure the same development tools, settings, or environment.

Microsoft comes with Live Share for you to solve these kind of problems.
With Live Share, you can easily collaborate with your colleague. Each of you can open files, navigate, edit code, or highlight - and changes are instantly reflected. As you edit you can see your friend's cursor, jump to the same location, and follow their actions.

**Installation**
1. Download and install Visual Studio Live Share Extension Pack from Marketplace. [Link](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare-pack)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g7meirqnl3ucsmb8tbmr.png)
2. Reload VS Code


**How to use?**


1. Before you can start share your project with your friends, you need to sign in.
You can sign in with Microsoft personal account or Github account.
2. Start share your project by simply click on live share icon at right of your panel or click on live share button at the bottom of your status bar or press Cmd + Shift + P / Ctrl + Shift + P > type Live Share: Start
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/115b5yzj2cz9cqf9uzz2.png)
3. Share link will be automatically copied to your clipboard.
4. Simply share your link through chat or any platform.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hcgg4oz4t5avmt864pzz.png)
You can also make read-only session by clicking “Make read-only”
5. To join a session, can join via join button, simply copy and paste your link to the browser.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ldd85mgn5tb2k36iwamm.png)
6. If you successfully join a session, there will be a mark that signed you're following the host
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zfqkwytxgazcref68vqw.png)
7. To Share Terminal, you can click on “Share terminal” button or press Cmd + Shift + P / Ctrl + Shift + P > type Live Share: Share Terminal.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2yl159saqsd9ojt1830r.png)
8. You can choose whether you want to share read-only / read-write terminal session.
9. You can type or run command inside the terminal when host share read-write terminal session.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1pk3h2lhsdk07vwcddg7.png)
10. To Share Server, you can click on “Share server” button
or Cmd + Shift + P / Ctrl + Shift + P > type Live Share: Share Server.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v4eln0mmw2yhlrc5pmoe.png)
11. You can choose what port do you want to share.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mrq68l01d7zp4u7t1gh7.png)
12. Voila, when it is success, your friend can open the server on their end. Example: by open localhost:4000 on their browser
What is the full-stack monitoring solution you use?
Tags: devops, programming, aws, monitoring
Published: 2021-10-25 08:26:17

Hello guys!

Could you, please, share which full-stack monitoring solution you prefer to use within your organization?

I've heard that most companies are using InsightCat (https://insightcat.com/), Datadog (https://www.datadoghq.com/), Zabbix (https://www.zabbix.com/).
Personally, I've heard a lot about Zabbix (at least from my DevOps and Sys Admin colleagues :)) If you use one of them, please, tell me why and what do you really recommend to set up within a big organization (enterprise, SMB)?

To make the question more detailed, let's concentrate on full-stack, infrastructure monitoring, and log management.

Thank you!