teleren/devto huggingface dataset:
How being proactive in tech communities can bring a smile on your face
Tags: writing, productivity
Published: 2020-09-02 11:59:33

# Gifts

A couple of days ago I finally received my goodies from [DigitalOcean](https://m.do.co/c/0afa6ab0aa5a). What these are? A hoodie and a t-shirt - personally chosen by me from their SWAG store. The overall price was $75. The cool part here is - I did not pay for them, it was all part of a gift. And not only I received a $75 gift card to use in their store, but I also received $25 to contribute to any opensource project I like through [OpenCollective](https://opencollective.com/).

The day I received the email with the gifts, I instantly felt so great, I could do anything. My motivation instantly skyrocketed and I was ready to work 16 hours/day on my projects. All-day. Every day. Imagine one of the companies you admire for their services giving you the chance to not only wear their merch **for free** but also contribute to any opensource project you love. Trust me, it's awesome!

# _" But why did you receive these gifts? Did you do something big for them? "_

No, not at all. I was just killing time in their [community](https://www.digitalocean.com/community/questions) by answering questions that happen to fall under my expertise. And I can't say I answered tons of questions, maybe twenty? Twenty-five? What I am trying to point out here is I did close to nothing and still got recognized. So then again - why not being proactive and get to experience the same excitement I did?

# Proactiveness = Motivation

For me, these two go hand-in-hand. The more I push myself to be part of the tech community, the more I feel motivated to work on my projects. Maybe for each person, it works differently but what I am sure of - it does not hurt to try. On the contrary, you boost the industry by putting even more awesome content out there. Say you answered a question on 'How-To`. Now, say I am a person looking for a solution and I search 'How to ____'. I find your post. Your post just fixes my issue and I am grateful to you for that.

# Conclusion

That's my short story on how answering 20 questions in a community forum made my day. And boy oh boy, was it superb when the items arrived at my place.

Hey, and if you are already out there in these tech communities providing life-saving answers - continue putting smiles on our faces! On behalf of the whole internet - we are grateful!

![thanks](https://media.giphy.com/media/26gsjCZpPolPr3sBy/giphy.gif)
Git: Reset to an older git commit
Tags: github, git, devops
Published: 2020-09-02 11:34:30

This is more of a note to self on how to permanently delete commits from git.

I forgot to add a config file to .gitignore while working on a public project and it ended up on github when I pushed it. I did add it to .gitignore later but it was there for anyone if they checked my previous commit.

Anyway, here are some quick commands if you want to reset your git branch. Normally rebase is the way to do it but my repo had just a handful of commits and has not any precious data, so I did it the quick and dirty way.

Type the following to see you git commits:

```bash
git log
This will list a history of your commits with respective commit ids:
commit 15e227a3a0a201295296302b391a28ef (HEAD -> master, origin/master)
Author: Vijay Joshi 
Date:   Tue Aug 18 20:36:09 2020 +0530
removed .firebaserc
commit d3e0f41f84ed41a432750070fac1b6e
Author: Vijay Joshi 
Date:   Tue Aug 18 20:34:46 2020 +0530
test commit
commit 4a73669e5fb47b0b9d488b1865b7e
Author: Vijay Joshi 
Date:   Tue Aug 18 20:34:07 2020 +0530
added .firebaserc sample
commit 279955296678df915eb8b094b76be
Author: Vijay Joshi 
Date:   Tue Aug 18 20:26:49 2020 +0530
Updated readme
commit 08794a0476f2616c2090146a05f7
Author: Vijay Joshi 
Date:   Tue Aug 18 20:24:46 2020 +0530
...skipping...
commit 27ad40be15e227a3a0a201295296302b391a28ef (HEAD -> master, origin/master)
Author: Vijay Joshi
```
I made the mistake in third commit from the top, so I wanted to reset my repo to fourth commit from top. Here are the commands:

```
git reset --hard commit_id
git push origin HEAD --force
```

**WARNING:** Doing this will remove all commits newer than the commit id provided above and you will lose all your changes before this commit. So, make sure you have taken backup of your repo beforehand.

All I want to say in the end is, make sure you are attentive earlier, it is a dirty way to cleanup and is somewhat I would advise using as a last resort.
#100DaysOfCloud | Day 8
Tags: dynamodb, serverless, aws, 100daysofcloud
Published: 2020-09-02 11:31:44

What Did I Learn -

I learned, or re-learned quite a bit about Indexes for DynamoDB. For example, Local Secondary Indexes have to be generated when you create your table, unlike the Global secondary index, local uses same partition key as your table and global uses a different one, and how they both utilize different sort key, which goes with the whole concept of "Secondary Index" I think. I also learned within a query you can reverse the order results by setting the `ScanIndexForward parameter = false`(It is also helpful to know this is for a query). In Postgres I would generally set to Asc or Desc when specifying Order by, so this was helpful to find out. Also that a Scan does not search a database, but grabs the entire database, and you have the option to filter information out based on what you need. Another helpful tip is that queries find info in a table only using primary keys. I also learned the calculations for Provisioned throughput | 1 Write Capacity Unit = 1KB WPS (Write per second), 1 Read Capacity Unit = 1 x4KB Strongly consistent Read OR 2x4KB Eventually Consistent reads per second.

What Did I Do - 

We just kept it simple on this one, we went to DynamoDB, we were prompted to make a table, enter our table name, we just used NewTable and for our primary key we just used primary-key as the string. From here we use the create item tab to create new item key value pairs, such as Field as item value as socks, price:5, etc with the + append button, note that `+ insert` will add above the line you are currently on, while the `+ append` adds below it.

For Tomorrow -

Tomorrow, or rather today it is all about AWS KMS
Trying Node.js
Tags: node
Published: 2020-09-02 11:28:25

Time to time, I am tempted to experience a new technology or language or get involved in an open source project. But what that happens most of the time is that I start but I can not continue due to many reasons. This time I'm more serious. I am making my second try to master Node.js/Express!
But why Node.js/Express? Because of a couple of reasons. Firstly, it is based on JavaScript, and JavaScript is the most used programming language at the time. Secondly, I can use JavaScript on front-end programming. Almost all of front-ends works with JavaScript. It includes React.js and Vue.js too. Thirdly, I am originally a back-end engineer. APIs and database manipulating is quite familiar for me. And finally, it has more tight connections with open source community than C#, my main programming language.
I learn technologies better when it is done via a project. A real project works better but a fictional one is good too! This time I started with a sample project to buy properties, but then changed it to be a software to deliver truck loads. It's named byprop and resides [here](https://github.com/afsharm/byprop/) in the Github.
Though I have not decided about the front-end, I am primarily interested to React.js because I have some acquaintance. I want to concentrate more into back-end than front-end. As my surrounding market is mainly around relational databases, I decided not to use MongoDB. Instead I chose PostgreSQL as it relational. As I have no experience with it, it's more fascinating for me. Indeed, most part of my work on the project till now is dedicated to exploring PostgreSQL. It's installation was not easy. Specially on Ubuntu. This project is worked on both Ubuntu as my home installation and Windows as my office machine. Moreover, it took some time to get used to it because my database has been MS SQL for years.
Now I have made some commits and have explored nice similarities with ASP.NET. Let go on and explore more things!
JavaScript Promises Explained in 10 Minutes
Tags: javascript, promises
Published: 2020-09-02 11:25:47

---
title: JavaScript Promises Explained in 10 Minutes
published: true
description: In this tutorial, we'll talk about JavaScript Promises and how you can use them in your code.
tags: javascript, promises
---

Originally published [here on YouTube](https://youtu.be/Sp9cPxhJgi4).
(Please give me a thumbs up and subscribe if you found this useful 🙏).

Check out some of the other Junior Developer Central videos in [this series](https://www.youtube.com/watch?v=3U_PpEo9Dig&list=PLpc_YvcwbxaQmh1HRa2LYVdVfQArMsrw1&index=3)

— Follow Me —
Twitter: https://www.twitter.com/codebubb
Facebook: https://www.facebook.com/juniordevelopercentral/
Blog: https://www.juniordevelopercentral.com/
— Thanks! —

So this JavaScript tutorial will take you through the basics of what JavaScript Promises are and give you some example of how to use them in your code.

There are a few similarities with the callback vs Promise JavaScript approaches and at the start of the video we'll take a look at the differences between callbacks and Promises and see how Promises provide you with a nice interface for handling asynchronous code.

So we'll take a look at the JavaScript callback vs Promise approach and then we'll move on to creating JavaScript Promises and see how you can use the provided resolve and reject functions that are passed in to a new JavaScript Promise to provide either a success of failure approach depending on the result of a particular operation.

You'll see in the video how JavaScript Promises handle asynchronous code gracefully and we'll also take a some of the other built in function available to work with multiple promises in JavaScript.

Finally, we'll take a look at the fetch API to examine how it uses JavaScript Promises and explain how each function actually returns a Promise and how these Promises can be chained together.
Demystifying ARM Templates: Template Output
Tags: azure, cloud, devops, tutorial
Published: 2020-09-02 10:26:03

## Azure DevOps - DevOps Lab - Video

{% youtube T-GnsabXcGY %}
- [YouTube](https://youtu.be/T-GnsabXcGY)
- [Channel9](https://channel9.msdn.com/Shows/DevOps-Lab/ARM-Series-6-Template-Output?WT.mc_id=learnARM-c9-fboucher)

In the Outputs section of your template, you can specify values that will be returned after a successful deployment.  You can use those outputs in your templates to return properties from the resources you are deploying. For example, it might be helpful to get the endpoints for a newly deployed storage account, or the public IP address or a newly deployed resource.

The Output section uses the reference function to get the runtime state of the resources. To get the runtime state of a resource, you pass in the name or ID of a resource.

there are certain elements that make up the outputs section.

```JSON
"outputs": {
    "<output-name>": {
        "condition": "<boolean-value-whether-to-output-value>",
        "type": "<type-of-output-value>",
        "value": "<output-value-expression>",
        "copy": {
            "count": <number-of-iterations>,
            "input": <values-for-the-variable>
        }
    }
}
```

- **output-name**: Must be a valid JavaScript identifier.
- **condition**: (Optional)	Is a boolean value that indicates whether this output value is returned. When true, the value is included in the output for the deployment. When false, the output value is skipped for this deployment. When not specified, the default value is true.
- **Type**: The types of the output value supported are the same as the types of template input parameters.
    - NOTE: If you specify securestring for the output type, the value isn't displayed in the deployment history and can't be retrieved from another template. To use a secret value in more than one template, store the secret in a Key Vault and reference the secret in the parameter file. For more information, see Use Azure Key Vault to pass secure parameter value during deployment.
- **Value**: (Optional) Template language expression that is evaluated and returned as output value.
- **Copy**: (Optional) the Copy is used to return more than one value for an output.

For more information, and for the full documentation on outputs you can refer to [Output iteration in Azure Resource Manager templates](https://docs.microsoft.com/azure/azure-resource-manager/templates/copy-outputs?WT.mc_id=learnARM-devto-frbouche).

And for a complete set of examples of outputs, refer to the [Outputs in Azure Resource Manager template](https://docs.microsoft.com/azure/azure-resource-manager/templates/template-outputs?WT.mc_id=learnARM-devto-frbouche) document.



## References

- [GitHub: Learning-ARM](https://github.com/microsoft/Learning-ARM)
mysql triggers
Published: 2020-09-02 10:35:56

Hello. I need 2 small triggers written. Now before you tell me I could just run a join in my select query to get what I'm looking for, other limitations not in my control will not allow me to do so. So, I need to get creative...

Trigger 1:
On insert into the Contact table, I need a trigger to copy the ExternalId from the Company related to a new contact record to the CompanyExtId field on the Contact.

On update of an existing record in the Contact table, I need a trigger to copy the ExternalId from the (potentially updated) Company related to the updated contact record to the CompanyExtId field on the Contact.

Here is an example schema:
create TABLE Company (Id int auto_increment, Name char(20), ExternalId char(20), PRIMARY KEY (Id));
create TABLE Contact (Id int auto_increment, FirstName char(20), LastName char(20), CompanyExtId char(20), PRIMARY KEY (Id));
New Live Coding Sessions scheduled! Join us :)
Tags: javascript, tdd, frontend, interview
Published: 2020-09-02 10:35:37

---
title: New Live Coding Sessions scheduled! Join us :)
published: true
description: September brings a lot of news for the CodeJourneys family. We planned the next two live coding sessions: Unit Testing in JS and Front-End Job Interview Simulation. 
tags: javascript, tdd, frontend, interview
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/yd5e29idagah3or9tmc4.jpg
---

Hello everyone,

September brings a lot of news for the CodeJourneys family. :tada:

- We have started planning the next Live Coding Sessions
- We are 300 now and the community is growing fast
- We are on twitter: [@codejourneys](https://twitter.com/codejourneys)
- We use eventbrite for event registration
- We have an [agenda](https://codejourneys.org/agenda/) :)

:tada: Many other news will follow in the coming days. :tada:

## Live Coding Sessions
:calendar: The next scheduled sessions are:

### 1) Unit Testing in JavaScript

“Unit testing” is a type of software testing where individual units or components of a software are tested. We’ll create together a small application using the “Test Driven Development” approach.

![Unit Testing in JavaScript banner](https://dev-to-uploads.s3.amazonaws.com/i/96nx914k2dv5nwubs8qt.png)

### 2) Job Interview Simulation: Junior Front-End Developer
We’ll do a live job interview simulation for junior front-end developers.
We’ll analyse common questions, exercises, algorithms and katas.

![Front-End Dev Job Interview Simulation banner](https://dev-to-uploads.s3.amazonaws.com/i/0bazkvxzg3ti8zhd1qhq.png)

### :tickets: FREE slots :tickets:
Since we are becoming "professional" :smile:, now you can reserve a free slot on the website: https://codejourneys.org/agenda/

### JOIN US ###

You can join us on [Slack](https://join.slack.com/t/codejourneys/shared_invite/zt-djxdx003-PZGS0gzHjN43p66Bb~qOvw) or you can visit our [website](https://codejourneys.org).


:speech_balloon: FEEDBACKS are always welcome.

Happy coding! :smile:
Download macOS EL Capitan DMG file
Published: 2020-09-02 10:35:18

macOS El Capitan proved to be one of the most used operating systems of Apple Inc. It was initially released in the 2015 worldwide developer conference. However, it latest update has been released in September 2018. However, there is still a large number of machines running on macOS X El Capitan. therefore, I am going to provide the chance to download the DMG file of macOS El Capitan.

If you want to download the DMG file of macOS El Capitan, but cannot get a free version. so, you should download the file from the report that I am going to provide. the DMG file available in the article is totally free and anyone can download it free. So, therefore, if you require the file please visit the article and follow the instructions given there. and finally, you can download the file easily.

https://techvatan.com/download-macos-el-capitan-dmg-file-latest-version/

Moreover, if you like the article and considered it useful. So, you can follow us for more knowledgeable up to date content. Moreover, you can also read the following article for more informative ideas.

https://techvatan.com/download-macos-catalina-iso-dmg-and-vmdk-files/
Top Things No One Wants To See In Your Portfolio 🎤
Tags: codenewbie, javascript, 100daysofcode, career
Published: 2020-09-02 10:05:38

#Top things no one wants to see in your portfolio 👇

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/tp3syhs105j26un1p3q3.JPG)

>Portfolios come in all shapes and sizes. There are no one-size-fits-all answers to creating the best presentation of your work.

>Individual personality and creativity are part of what you want to show.

#1. Everything you’ve ever done 

It can be hard to resist the temptation to include everything you've ever worked on, from school projects right up to your latest work. 

Try to include enough variety for the client to be able to form an impression, without it being too much to take in.

#2. Your life story 

Clients won’t be interested in knowing about where you went to primary, how many cities you've lived in, or where you go on holiday.

Too much information can come across as rambling and unprofessional.

It’s best to aim for a simple, genuine personal intro.

#3. An overly complex or distracting layout 

An elaborate and unusual layout can showoff creativity or coding skills, but it can also be bewildering and frustrating for potential clients with little time on their hands and no patience to work out how your portfolio is organized.

Often simpler is better, with the most important details easy to find. 

Certainly don't make a potential client have to search for your email address or social links.

#4. Only one type of work 

Unless you specialize in a particular niche or are someone to whom clients come looking for a very specific work, you will probably have clients looking for different types

Aim to present a range of work of different stacks that you did in the past.

Potential clients may form the impression that you have a personal style that you impose on all projects and that 

you don't have the versatility they need to develop something different.

#5. Unresponsive content

It's a given that anyone working in the digital era needs to make sure their own portfolio site performs well and looks at the business on any device.

Clients are as likely to be looking at your work on a mobile phone as on a desktop.

There's no worse first impression than that caused by a sluggish site that fails to adjust to mobile or tablets.

Hope you find this useful. 

Please share your feedback in the comments 💙👍
FullView Js Example Landing Page
Tags: codepen, npm, webdev, javascript
Published: 2020-09-02 10:02:21

<p>Create full-screen pages fast and simple - A simple and easy to use a library that creates fullscreen scrolling websites  FullView.js is a simple, light-weighted and easy to use JavaScript library to create full-screen scrolling websites.</p>

<p>Its enables the visitor to navigate through pages with a smooth full-screen scroll effect. Supports keyboard, mouse wheel on desktop, and swipe up/down/left/right events on touch device.</p>

<p>Also comes with a side navigation dots, containing anchor links that allow the visitor to scroll the page to a specific content section.</p>

{% codepen https://codepen.io/someone1218/pen/eYZEgGR %}
ReactJS Online Training
Tags: react, software, career, courses
Published: 2020-09-02 09:59:57

Naresh I Technologies provides you the  100% assurance on your ReactJS Online Course with Success. Our ReactJS online training Course focuses on practical oriented training. You can now learn React JS online training from the real-time developers of the IT industry. Join us today to experience the best of best Online React JS Training! With React JS, you can create dynamic web applications that deliver amazing user-interface to the users. That is the reason why today most of the companies prefer to use ReactJS.
What is ReactJS:
React JS is a javascript library mainly used for building a user interface. React is widely used for building single-page applications. React JS and React Native are the two technologies that are being used widely in web development and mobile development. This is introduced by Facebook to simplify the development process and give a better user experience. Our React JS Online Training Module is designed by Industry experts, this helps you in being trained on Fundamental concepts, React components and its architecture. From this React JS Online Training, you will learn all the Concepts with real-time cases & live examples by professionals.
Course Objectives:
* This Online training will help you in building simple components and integrating them with complex components
* Build applications using React Components
* Learn How to use different tools React tools for debugging
* To present structures for your applications
* Understanding React JS componentS architecture
Who should go for this Course?
* Any Graduate Freshers
* IT professionals
* Software Developers from Angular & other UI/UX, JavaScript frameworks
* Frontend Developers
Pre-requisites:
* Basic Knowledge of Javascript, HTML, and CSS
* Fair Knowledge On basics of testing tools
* Basics of OOPS Concepts
What you learn:
ReactJS allows developers to create large web applications. It helps develop dynamic apps. Data changes in dynamic apps without reloading the page. The main advantage of ReactJS is that it makes the application simple and dynamic. Static web applications don’t give the desired user-interface to the user. Hence, attending ReactJS Online Training will help you build lively apps.
ReactJS Online Course will guide you in:
* Building complex UI
* Creating any type of web application, mobile application, or command-line interfaces.
* Developing a flexible and dynamic front-end for the user view

ReactJS Online Course provided by Naresh I Technologies will benefit you in many ways:

We save your time and money by cutting short your travel time

You can attend three demo sessions with free of cost

Where ever you are, you can still attend the training via Zoom 

We are giving instructors the to lead live teaching. 

Our trainers are real-time experts.

We are providing video recordings of every live class with one year of access.

Our trainers will provide a soft copy of the class notes for every concept. 

For more details please visit: https://nareshit.com/reactjs-online-training/