teleren/devto huggingface dataset:
Getting Started Gets Better With You
Tags: workplace
Published: 2017-05-05 12:34:14

---
title: Getting Started Gets Better With You
published: true
description: Transform company culture by transforming a lesser onboarding experience into a great one for future hires.
tags: Workplace
canonical_url: https://wrotenwrites.com/getting_started_gets_better_with_you/
---

**How was your onboarding experience?** How were your first moments of any development job in recent recollection?

If you recall it being a pleasant experience, then I'm glad for you. Generally, onboarding a new developer involves a process of awkwardly asking people you barely know what feel like stupid questions.

# Getting Started Gets Better With You

Write down your questions no matter how seemingly simple they may be. Then follow up on your notes with the answers.

> * Where is the app's repo?
> * How do I install the app's dependencies?
> * How do I launch the app?
> * Where do I find work to do?

Suddenly you wind up with something akin to an _FAQ_ (Frequently Asked Questions). Passing along these questions and answers to the next new hire can make a dramatic impact on their **first impression** and ability to **ramp up quickly**.

## Making It Real

Asking for forgiveness rather than permission can be daunting when you're new. A safe way to spread and better your notes is sharing them with the next new hire. Be sure to gather any questions they have and improve your notes with each person you work with.

Ideally publishing these notes internally in an internal knowledge base, wiki, or the README.md of the project repo can be a great resource. I encourage
anyone to submit a pull request to clean up the often neglected README's in repositories to answer the typical questions that currently may be answered by repetitive word of mouth.

# See a problem? Be the solution.

Anyone can make a positive impact on company culture by sharing what you've learned with others.

Take notes. Share them. Don't be afraid of taking initiative. Imagine the impact such an effort could've had on your first days and don't let the trend of ignoring onboarding continue.
Self Code Review with Git Add Patch
Tags: git, workplace, codereview
Published: 2017-05-05 12:31:34

---
title: Self Code Review with Git Add Patch
published: true
description: Reduce errors and typos while building confidence with every chunk you commit.
tags: Git, Workplace, Code Review
canonical_url: https://wrotenwrites.com/self-code-review-with-git-patch
---

Code reviews reduce logical errors, call out typos, and prevents accidentally committing more code than intended ([1](https://www.atlassian.com/agile/code-reviews)). They're essential for _all sized teams_ pushing to the same code base while _maintaining sanity_.

Should a developer find themselves discovering any accidental "oops!" in their pull request it's a good indicator of a flaw in workflow. **Introducing the interactive self code review:**

``` bash
git add --interactive
```

Interactive adding in git offers a choose-your-own-adventure style "What Now>" series of options.

## The Useful Bit: _Git Patch_

Today let's look at the _**p**atch_ option. We can skip to the patch option in the future with this handy shortcut:

_Example pretends we have file.ext and have added a line that defines a version..._

``` bash
git add -p

diff --git a/file.ext b/file.ext
index sha1..sha2 sha3
-- a/file.ext
++ b/file.ext
{
  "name": "example json",
  +"version": "1.0.0",
  "private": true,
Stage this hunk [y,n,q,a,d,/,e,?]?
```

Looks like a huge chunk of stuff! Broken down, the response describes what file was modified followed by a chunk of color coated git diff.

### Now What? Staging Hunks of Code

Many options are provided in the "Stage this hunk?" prompt following a git add patch.

Pressing `?` in response to the prompt explains each valid response. These are some essentials:

* **y** - stage this hunk
* **n** - do _not_ stage this hunk
* **q** - quit

You'll find that by going through this process you can read every line you'd like to add to a commit and make better choices about them.

### Splitting `s`

These "magical" feeling chunks aren't always smart enough. Sometimes there's a need to split (with the `s` response) a chunk into smaller chunks. This comes up more often than you'd think if you're developing empathetically.

### `a` Add or `d` Don't Add Entire File

An `a` response will stage the current hunk and all the following within the current file automatically. This is **_not_ recommended because you're opting to skip parts of your personal code review**.

However, `d` is a nice way to skip adding anything from an entire file and can save a lot of time.

### Manually Editing

Typos or "oops!" can be quickly corrected with the `e` response. This will open just the chunk for quick adjustments including line adding and removal.

# Summary

Git patch has become a core part of my workflow to **ensure quality** and boost **personal confidence in the code I ship**. Give it a try today!
Easy Git Commit Targeting
Tags: git, tipsandtricks
Published: 2017-05-05 12:26:13

---
title: "Easy Git Commit Targeting"
published: true
description: Shortened SHA hashes and relative offsets
tags: Git, Tips and Tricks
canonical_url: https://wrotenwrites.com/git-commit-targeting/
---

A generally agreed upon goal of a developer is to use the mouse as little as possible. An often overlooked moment of touching the mouse is the seemingly inevitable moment of having to target a git commit via it's SHA hash. Truth is this doesn't need to be an ordeal.

**Let's look at some alternative ways to target commits**.

## By Shortened SHA Hash

Traditionally to find the `git diff 123abc456def789ghi` on a SHA you'd use the entire SHA hash. Instead, you can type just the first few characters and Git will figure out the rest.

``` bash
git diff 123abc
```

## Tilde

A common target is the previous commit from the HEAD. Using `HEAD~` will specify the intention of one commit before the HEAD.

``` bash
git diff HEAD~
```

### Past Tilde

Adding a number after the tilde `~` will target a commit prior to the head equal to the number specified.

``` bash
git diff HEAD~3
```

## Stacked Carets ðŸ¥•ðŸ¥•ðŸ¥•

Alternatively, the number of caret characters after HEAD will similarly target a commit prior to HEAD equal to the number of carets.

``` bash
git diff HEAD^^^
```

## Combine These Tricks

So close! Ever want to target the commit just previous to a SHA hash? It's easier than you think.

``` bash
git diff 123abc~
```

Through a combination of shortened SHA hashes, HEAD, and relative tilde/caret characters anyone can fly through git history with confidence.
Hi, I'm Joe L. Wroten
Tags: introductions
Published: 2017-05-05 12:20:50

---
title: Hi, I'm Joe L. Wroten
published: true
description: Who dat?
cover_image: https://pbs.twimg.com/profile_banners/14245736/1398260628/1500x500
tags: introductions
---

I have been coding for 6+ years.

You can find me on Twitter as [@SharpShark28](https://twitter.com/SharpShark28)

I live in Austin, TX.

I work for [Q2ebanking](https://www.q2ebanking.com/).

I mostly program in these languages: JS, HTML/HBS, CSS/Sass.

I am currently learning more about Haskell.

A pleasure to meet you!
WordPress Customize Registration Form by FMEAddons
Tags: wordpress, woocommerce, registrationform
Published: 2017-05-05 06:40:09

---
title: WordPress Customize Registration Form by FMEAddons
published: True
description: Wordpress custom registration form by FMEAddons allows you to add additional registration attributes to the user sign up form. 
tags: wordpress, woocommerce, registration form
---

WordPress customize registration form plugin by FMEAddons allows you to easily customize the user sign up form by additional input fields. This is a powerful plugin as it helps you to collect valuable information about customers demographics, behavioral and marketing insights. This plugin allows you to add ten different registration fields such as Text box, select box, text area, password field, file/image, date and time picker, radio button, checkbox and multi select box. Users can edit the information they entered during the sign up procedure from their account section.

This plugin provides you the following features once you installed on your website

Add unlimited fields on user sign up form
Simply drag and drop fields
Customize fields and labels
Make fields mandatory or optional
Hide fields
Placeholder for fields
Customers can edit profile

More Info: https://www.fmeaddons.com/woocommerce-plugins-extensions/customer-registration-plugin.html
Hi, I'm Mika Andrianarijaona
Tags: introductions
Published: 2017-05-05 03:40:55

---
title: Hi, I'm Mika Andrianarijaona
published: true
cover_image: 
tags: introductions
---

I have been coding for 5 years.

You can find me on GitHub as [mikaoelitiana](https://github.com/mikaoelitiana)

I live in Antananarivo, Madagascar.

I work for TAG-IP 

I mostly program in these languages: Javascript, CoffeeScript.

I am currently learning more about Elixir language.

Nice to meet you.
Hi, I'm CaptainKraft
Tags: introductions
Published: 2017-05-05 03:04:02

---
title: Hi, I'm CaptainKraft
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 6 years.

You can find me on Twitter as [@CaptainKraft](https://twitter.com/CaptainKraft)

I live in Lincoln, Nebraska.

I work for NO ONE!

I mostly program in C.

I am currently learning more about debuggers and systems programming.

Nice to meet you.
Hi, I'm Ashley Roach
Tags: introductions
Published: 2017-05-04 23:32:38

---
title: Hi, I'm Ashley Roach
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 10 years.

You can find me on GitHub as [aroach](https://github.com/aroach)

I live in Denver.

I work for Cisco

I mostly program in these languages: JavaScript (NodeJS).

I am currently learning more about React, Serverless, Containers.

Nice to meet you.
Hi, I'm Bryan McCoy
Tags: introductions
Published: 2017-05-04 18:40:17

---
title: Hi, I'm Bryan McCoy
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding "professionally" Since 2010.

You can find me on GitHub as [bmccoy04](https://github.com/bmccoy04)

I live right outside of Baton Rouge.

I work for a large health insurance company.

I mostly program in these languages: Javascript (angularJs, react), c# (Asp.net Mvc/.net Core)

I am currently learning more about Identity Servers and Mongodb.

Nice to meet you.
Faster App Starts With Prepack & Webpack
Tags: javascript, prepack, webpack
Published: 2017-05-04 18:22:10

---
title: Faster App Starts With Prepack & Webpack  
published: true
description: How to use Prepack with Webpack
tags: javascript, prepack, webpack
---

_TL;DR Here is a GitHub [repository](https://github.com/kay-is/prepack-webpack-plugin-example) with the example :)_

As if we hadn't had enough tools already, things are getting worse... or better? 

This time with a tool called [Prepack](https://prepack.io/)!

> A tool for making JavaScript code run faster.

"But Kay, isn't JavaScript blazing fast already?"

Maybe, who am I to tell you? I can barely set up Webpack by copy and pasting a config from GitHub.

Anyway, __this tool is highly experimental__ and you should use it at your own risk, it might overheat your Firefox.

"So what exactly does it make faster?"

The startup of your application.

"And how does it achieve this?"

I have no idea!

But it seems to run your application code once and then saves the state after that run. Later it replaces your code with a simplified version that produces the same state.

This should allow you to write nice code, that may be slow, then run it at build time and generate not so nice code that is fast, when it gets started in the browser. This is achieved by means of Voodoo.

It seems that this whole startup thing is a problem of code produced by Webpack, so it's worth a try on your Webpack based projects. So that you have an idea if it's worth waiting for Prepack to stabelize so you can use it in production __in the future(!)__.

There is already a [Webpack plugin](https://www.npmjs.com/package/prepack-webpack-plugin) for this, so it's easy to integrate.

"Is there a catch?"

Yes, since you code is run (and rewritten) at build time, you can't simply write code that requires global browser APIs:

     import { h, render } from "preact";

     const app = (
       <div id="foo">
         <span>Hello, world!</span>
         <button onClick={e => alert("hi!")}>Click Me</button>
       </div>
     );

     const domRoot = document.getElementById("app");
     render(app, domRoot);

Because Prepack doesn't know much about `document` and such, but luckily JavaScript doesn't care much about you writing code that uses undefined references till you actually run the code, so I rewrote my simple example by exposing a global function that isn't run when when the script is loaded, like this:

     import { h, render } from "preact";

     const app = (
       <div id="foo">
         <span>Hello, world!</span>
       <button onClick={e => alert("hi!")}>Click Me</button>
     </div>
    );

    global.bootApp = () => {
      const domRoot = document.getElementById("app");
      render(app, domRoot);
    };

Later, in my `index.html`, which is outside of my build process, I simply called `window.bootApp();` to run my _prepacked_ code.

In my example the size blew up from __24.7 KB__ to __50.6 KB__, but the whole thing isn't about size, but about costly computations at startup time, so your mileage may vary.

Whelp, play around with it and tell me if it improved your life.
Hi, I'm jocialmedia
Tags: introductions
Published: 2017-05-04 17:38:40

---
title: Hi, I'm jocialmedia
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 4 years.

You can find me on Twitter as [@jocialmedia](https://twitter.com/jocialmedia)

I live in Hamburg.

I work for the travel company [@funreisen](https://twitter.com/funreisen)

I mostly program in these languages: PHP, Python, Javascript, Bash.

I am currently learning more about: PHP, Python, Javascript, Bash.

Nice to meet you.
Hi, I'm Phil Smith
Tags: introductions
Published: 2017-05-04 12:39:50

---
title: Hi, I'm Phil Smith
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for [number] years.

You can find me on GitHub as [PhilSmithABB](https://github.com/PhilSmithABB)

I work for ABB building QCS systems for the Pulp and Paper industry

I mostly program in these languages: JavaScript, C#.

I am currently learning more about rxJS.

Nice to meet you.
Popup Magento Extension
Tags: popupmagento
Published: 2017-05-04 12:26:29

---
title: Popup Magento Extension
published: true
description: Popup Magento extension by FMEAddons helps to create popups on Magento e-stores. 
tags: Popup Magento
---

Popup Magento extension by FMEAddons allows you to display important information or message to your users when they visit your website. You can create product specific popup which is displayed only on the specific product page, and the global popup is displayed on all the pages of the website. With popup extension, you can also display the popup window to the specific group of customers. 

Key Features of Popup Plugin for Magento:
 - Static block for popup
 - Add catchy banners, links, images and text in a popup
 - Display pop-ups on CMS, home, category and product pages
 - Popup Window is responsive
 - Set the size of popups
 - 100% money back guaranty
 - Free lifetime support

<a href="https://www.fmeaddons.com/magento/popup-splash-screen.html">Download Popup Extension for Magento</a>

<img src="https://thepracticaldev.s3.amazonaws.com/i/ggpwqpx1zrt4aw4iivc6.jpg"/>


<img src="https://thepracticaldev.s3.amazonaws.com/i/y35uzvhcg5rd9pqdv7y6.jpg"/>


<img src="https://thepracticaldev.s3.amazonaws.com/i/vuz7jseqhxh9x1ul46yg.jpg"/>
WooCommerce Product Custom Options by FMEAddons
Tags: productoptions, woocommerceplugins
Published: 2017-05-04 11:08:17

---
title:  WooCommerce Product Custom Options by FMEAddons
published: True
description:  WooCommerce Product custom options plugin allows your customers to personalize your products by additional custom options.  
tags: product options, woocommerce plugins
---

WooCommerce product custom options plugin allows your valuable customers to personalize your products by adding additional options with dropdown, radio buttons and checkboxes. Using this extension, your customers can select the options according to their preferences and get a personalized product. This plugin allows you to grab more information from customers about the products they want to order. 

This plugin supports the following fields 

1. Custom field 

2. Area 

3. file 

4. Drop down

5. Radio buttons 

6. Checkbox 

7. Multiple select 

8. Date and time. 

You can easily sort all these files according to the priority 

More Info: https://www.fmeaddons.com/woocommerce-plugins-extensions/custom-fields-additional-product-options.html
GO-Gulf Dubai Website Development Agency
Tags: webdev, webdesign, dubaiwebdesign
Published: 2017-05-04 10:48:59

---
title: GO-Gulf Dubai Website Development Agency
published: true
description: GO-gulf Dubai custom website development & web applications development agency
tags: web development,web design, dubai web design,
---

![GO-Gulf Dubai Web Development](https://thepracticaldev.s3.amazonaws.com/i/rf2k17hjklpwiskrlp9p.png "GO-Gulf Dubai")


GO-Gulf Dubai is a custom website development & web applications development agency founded in 2005. Till date, the company has delivered hundreds of web development projects to businesses across UAE. Our in-house team of experts use cutting edge technologies and proven tactics to create responsive and visually appealing websites for businesses.

GO-Gulf offers:

 - Custom web design & development
 - Ecommerce development
 - Magento solutions    
 - Intranet & Extranet Solutions
 - Business Consultancy
 - Web applications development
 - Brand Identity
 - Search engine optimization
 - Web hosting

More details - [Go-Gulf Web Development Agency](http://www.go-gulf.ae)
Calling Amazon API Gateway Authenticated Methods with axios and aws4
Published: 2020-09-08 18:55:13

---
title: Calling Amazon API Gateway Authenticated Methods with axios and aws4
published: true
date: 2017-05-03 00:00:00 UTC
tags: 
canonical_url: http://blog.iamjkahn.com/2017/05/calling-amazon-api-gateway-authenticated-methods-with-axios-and-aws4.html
---

[Amazon API Gateway](https://aws.amazon.com/api-gateway/) provides a convenient, easy-to-use service that allows developers to publish, monitor, and maintain APIs. It also provides a separation of concerns between your custom business logic and common needs such as caching, throttling, and authorization.

For a recent project, I needed to secure my APIs such that only authorized users could call them (e.g. administrator endpoints). API Gateway supports a number of approaches to [controlling access to your services](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-to-api.html). I also needed to provide authentication for a pool of users and opted to leverage AWS’s powerful IAM capability to control access via [Amazon Cognito](https://aws.amazon.com/cognito/). Cognito provides both user management as well as federated identity to provide secure access to AWS resources, including [calling an API Gateway method](https://docs.aws.amazon.com/apigateway/latest/developerguide/permissions.html).

Enough background, on to the code…

On the frontend, I used the popular [axios](https://github.com/mzabriskie/axios) HTTP library in addition to [aws4](https://github.com/mhart/aws4), a library to sign requests using [AWS Signature v4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). While the configuration of API Gateway is beyond the scope of this post, know that we need to sign and provide an `Authentication` header in order for the call to be allowed by secured APIs. This is what aws4 helps to enable. Signing the requests allows the frontend to assume an AWS Role authorized to call the API.

Note: the following code snippets assume the user has already authenticated via Cognito and retrieved temporary credentials (including an access key, secret key, and session token).

First, the following code demonstrates a `GET` to an API secured with `AWS_IAM` authorization:

<noscript><pre>400: Invalid request
</pre></noscript><script src="https://gist.github.com/06f0cc95c0356e175b5bbca8eab196a7.js"> </script>

Next, let’s consider how the above changes for a `PUT` request. Note the addition to the request body as well as a content-type header.

<noscript><pre>400: Invalid request
</pre></noscript><script src="https://gist.github.com/3fb39f28728f5fc30362768d7c1abd49.js"> </script>

I hope you found the above useful as you work with these great frontend packages and Amazon API Gateway.
Hi, I'm M Sreekant
Tags: introductions
Published: 2017-05-04 10:46:56

---
title: Hi, I'm M Sreekant
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for eight years.

You can find me on Twitter as [@msiyerTweets](https://twitter.com/msiyerTweets)

I live in Chennai.

I mostly program in these languages: C#, Python.

I am currently learning more about Cryptography.

Nice to meet you.
Hi, Jonell here
Tags: introductions
Published: 2017-05-04 09:01:20

---
title: Hi, Jonell here
published: true
description: Like somebody cares!
cover_image: 
tags: introductions
---

I have been coding for more than 13 years.

You can find me on Twitter as [@thejonell](https://twitter.com/thejonell)

I live in Manchester, UK.

I mostly program in PHP and I use C# for my hobby project, which will be online pretty soon!
Hi, I'm Carlos DurÃ¡n Roca
Tags: introductions
Published: 2017-05-04 05:50:21

---
title: Hi, I'm Carlos DurÃ¡n Roca
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 4 years.

You can find me on Twitter as [@Carlosmassacubi](https://twitter.com/Carlosmassacubi)

I live in **Valencia** which is in Spain.

I work for a StartUp called *Beewo* set up with a friend

I mostly program in these languages: Python, C++ , C# Ruby, Arduino.

I am currently learning more about Ruby on rails framework.

Nice to meet you.
Hi, I'm Josh Pike
Tags: introductions
Published: 2017-05-04 01:17:24

---
title: Hi, I'm Josh Pike
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 5 years.

You can find me on GitHub as [heidilux](https://github.com/heidilux)

I live in Dexter.

I work for MedHub

I mostly program in these languages: PHP.

I'm building an api for a startup mobile app with Laravel

, Cheers!
Hi, I'm kappa77
Tags: introductions
Published: 2017-05-03 06:55:55

---
title: Hi, I'm kappa77
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 12 years.

You can find me on GitHub as [kappa77](https://github.com/kappa77)

I live in Trento, Italy.

I work for Brennercom AG Spa.

I mostly program in these languages: c# , PHP.

I am currently learning more about C#.

Nice to meet you.
Hi, I'm Fernando Possebon
Tags: introductions
Published: 2017-05-03 21:36:34

---
title: Hi, I'm Fernando Possebon
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for [number] years.

You can find me on GitHub as [possebon](https://github.com/possebon)

I live in [city].

I work for [company]

I mostly program in these languages: [languages].

I am currently learning more about [topic].

Nice to meet you.