teleren/devto huggingface dataset:
Windows Host Automation with Terraform and cloud-init on Packet
Tags: windows, packet, terraform, docker
Published: 2020-07-17 21:12:41

---
title: Windows Host Automation with Terraform and cloud-init on Packet
published: true
date: 2020-03-24 06:25:38 UTC
tags: windows,packet,terraform,docker
canonical_url: https://medium.com/@jmarhee/windows-host-automation-with-terraform-and-cloud-init-on-packet-d2e67fa35b09
---

A very common tool for many cloud providers is the ability to use cloud-init, and likewise in Terraform, the ability to apply a cloud-init…

[Continue reading on Medium »](https://medium.com/@jmarhee/windows-host-automation-with-terraform-and-cloud-init-on-packet-d2e67fa35b09?source=rss-d532e3e97d0f------2)
Before and After Pseudo
Tags: css, javascript, html, wordpress
Published: 2020-03-24 06:08:13

Difference Between Before and After.
Follow Me: https://www.linkedin.com/in/ubair-noor-314b68146/
Follow Me Instagram: https://www.instagram.com/ubair_noor/

{% codepen https://codepen.io/ubairnoor-the-decoder/pen/xxGyVXx %}
Stablecoins can help governments with Covid-19
Tags: covid19, crypto, stablecoins, stimulus
Published: 2020-03-24 05:51:00

As the threat of Covid-19 boldens, governments are now left with no option but to announce stimulus packages. The extent of uncertainty is nothing but crushing. 

Amid this chaos, the probability of this stimulus reaching out to the target can be quite low. To solve this, stablecoins could be used. 



Here's some reading about it: 

Stablecoins for emergency coronavirus payments: https://www.coindesk.com/the-us-should-use-stablecoins-for-emergency-coronavirus-payments

Cryptocurrency for Governments: https://minddeft.com/blog/the-future-of-blockchain-technology-five-predictions-for-2025-part-1/

Happy Reading!

Let's Discuss.
Three Tools to Help Your New Remote Team
Tags: career, productivity, inter
Published: 2020-03-24 05:32:56

As companies across the world continue to take precautions against COVID-19, many teams find themselves "suddenly remote" and adjusting to a new set of challenges on top of their daily work. At [Exponent](https://tryexponent.com/?src=devto), we've been operating as a remote team for most of the past year, with engineers, designers, and PMs spread across several time zones—not to mention thousands of users around the world who are part of our Slack community and [Interview Practice](https://tryexponent.com/questions) forum.

While we don't have all the answers, we wanted to share a few of our favorite tools that we've been using to keep our team together:

## 1. Tandem
The largest obstacle to progress as a remote team (or any team for that matter) is the lack of direct communication between team members. When you work in an office, you know when people are around, you can tap on someone's shoulder when you have a question, and you feel like a part of the same team.

[Tandem](https://tandem.chat) gives you back some of this convenience in the form of a lightweight 'remote office' where you can instantly chat and share your screen with coworkers. To be honest, the always-on nature of the app is a bit off-putting at first (read: lots of mouth-sounds), but it's so much faster than setting up a conference call or pinging someone on Slack to see if they're available.

## 2. Figma
Another major problem with working remotely is that it's hard to communicate visually with teammates on rough ideas, sketches, and designs. [Figma](https://figma.com) was a game-changer for our team in the way that we iterate and share designs at Exponent, allowing us to quickly gather feedback and create a source of truth for final design on our team. And even though Figma is technically meant for user interface design, we've found it to be useful as a more general collaborative workspace, where we can share inspiration and organize various projects that we're working on.

## 3. Notion
There are tons of products for writing and organizing docs—Google Docs, Paper, Coda, etc—but we've found that [Notion](https://notion.so) has the best balance of organization and ease of discovery (you'll learn to love the Cmd-P search bar). It's not perfect for everything, but it's quickly become our home base for meeting notes, product specs, and even drafts of blog posts like the one you're reading. Plus, we love the ability to quickly publish beautifully formatted docs online and share them with anyone.

Do you have any tips or favorite tools for remote work? Share your thoughts below in the comments!
I Did My First #CodePenChallenge
Tags: codepen, css
Published: 2020-03-24 04:51:44

While I am so sure the instructions wanted me to do it with mostly JavaScript, I opted to use CSS animation and the Document Object Model (DOM). This is because I feel I haven't been practicing enough CSS animations as I want and haven't used the DOM to activate CSS animation. 

As shown below, I want the animation to zoom out towards you. I used keyframes for this. Within the keyframes, I had the font-size go from 0px at 0% to 120px at 75% back down to 0px at 0%. 

For the DOM, I used this code: 

```document.getElementById("hello-world").style.animation =
  "fontzoom 20s infinite";```

This is just a way for me to implement JavaScript in the project. In CSS, I was taught to activate the animation below the keyframes like this (this might be wrong as I am still learning): 

```#hello-world { animation: fontzoom 20s infinite }```

As you can see, it's essentially the same thing except you have to use dot notation rather than calling it like you would in CSS.

From a design standpoint, I decided to use the colors green and aqua to represent water and grass since I have been feeling particularly shut-in during the pandemic. The font is Merienda from Google Fonts. I wasn't going to use a script font but decided at the end since it looks nicer. I added a text-shadow of a different shade of blue...which is blue. Finally, media queries have been added for responsiveness at max-width of 750px and 500px.

If you have any questions, let me know in the comments below.

{% codepen https://codepen.io/angelyoung24/pen/vYOVBgX %}
Preparing Visual Studio to start coding
Tags: visualstudio, productivitypowertools
Published: 2020-03-24 03:51:52

It's nice to install some useful extensions or plugins to your Visual Studio before start programming. One of the best of these is the "Productivity Power Tools" extension. You can directly download and add it to Visual studio from the "Tools" menu "Extensions and Updates..." or download it from  https://marketplace.visualstudio.com/ and install.

If you installed this extension, now let's have a look at one of a feature of it.

In order to remove all unused namespaces from a .cs file on saving you just need to enable the "Remove and Sort on save" feature of this extension from the "Tools" menu,  "Options".

<img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ODEJET0F--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://dev-to-uploads.s3.amazonaws.com/i/vrvt7hp1m0ociiw3zgmy.jpg" alt="cover">

Please be note, there are several extensions with this name, It's nice to get the one which created by Microsoft or MirosoftLab.

Here are some extension to write better code
* [CodeMaid](https://marketplace.visualstudio.com/items?itemName=SteveCadwallader.CodeMaid )
* [SonarLint](https://marketplace.visualstudio.com/items?itemName=SonarSource.SonarLintforVisualStudio2019)
Dark Mode in One Keypress (on Mac)
Tags: darkmode
Published: 2020-03-24 03:16:56

---
title: Dark Mode in One Keypress (on Mac)
published: true
description: Make dark and light mode easy on Mac.
tags: Dark Mode
---

Short and sweet, here it is. It's a bummer to click all over the place come evening time to switch my Mac to dark mode. Here are the steps I took to make it all happen at the press of a button (or automatically!)

- [Dynamic Dark Mode](https://github.com/ApolloZhu/Dynamic-Dark-Mode) will give dark mode a keyboard shortcut, schedule it with sunrise and sunset, and more! Also allows you to pick wallpapers for each mode 🎉.
- [Visual Studio Code has built-in setting now!](https://github.com/microsoft/vscode/pull/87405) see the prefs listed in that PR to set them up.
- iTerm2 has a new Python API that [will allow a simple script to change the mode for you](https://gitlab.com/snippets/1840760) if you set it up. 
- [Dark Reader for Chrome and Firefox](https://chrome.google.com/webstore/detail/dark-reader/eimadpbcbfnmbkopoojfekhnkhdbieeh?hl=en-US) has an option to turn on and off automatically with your system for in-browser darkening goodness.

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

If there are tools I haven't listed here that need special instructions, please leave a comment below!
Cohort 4 Recap
Tags: collablab, juniordevelopers, earlycareerdevelopers, webdev
Published: 2020-03-24 03:03:47

---
title: Cohort 4 Recap
published: true
description: Collab Lab’s 4th cohort wrapped up today. They’re awesome and you should hire them! 🙂
tags: collablab, juniordevelopers, earlycareerdevelopers, webdev
---

Collab Lab’s 4th cohort wrapped up today. They’re awesome and you should hire them! Well, if you can. Some of them already have jobs! 🙂

[This cohort](https://the-collab-lab.codes/about-us/#cohort-4) consisted of Haley Elder, Jaela Wesley, Matthew Hughes, and Rachael Bouissey. [The mentors](https://the-collab-lab.codes/about-us/#mentors) were Michael Sholty, Radhika Morabia, and Stacie Taylor-Cima.

![TCL-4 on our weekly sync call](https://dev-to-uploads.s3.amazonaws.com/i/lwve88ppc3wqvuk55o1y.png)

Each time I get on our last call with a cohort, I can’t believe that it’s gone so fast. Cohort 4 felt like it was done in the blink of an eye!

This group came in with some strong development chops and it showed. The mentors commented that this group was able to act more independently than they expected because they were comfortable with the technologies being used out of the gate.

This freed us to focus in on learning how a software team works as well as allowed the participants to get creative with how they satisfied the requirements of the project.

As with every group we’ve welcome through, the group learned a ton about working as a team _remotely_ as they went. By the end, they’d fully bought in to the need to be “noisy” in the team channel about status, both progress and blockers.

So, yes, you should hire them! But know that a couple of them are already working as developers, so if you want ’em, you better swoop in fast! 🙂
ALL AWS Exams Can Now Be Taken at Home, including the SAA-C02 exam!
Published: 2020-03-24 03:03:16


You can now book and take all AWS Certification exams at the comfort of your home or office! Prior to this change, you are only limited to take the official AWS Certified Cloud Practitioner (CCP) exam online but starting today, you can take all of the available AWS certifications remotely! You can book your CCP, Associate-level, Professional-level, and Specialty-level exams and take them inside the safety of your house.  

![Take your AWS exam at home](https://tutorialsdojo.com/wp-content/uploads/2020/03/tutorialsdojo-home.png)

This is possible in Pearson Vue via online proctoring. Take note that this option is not yet available with PSI. Take note that there is a significant wait time for online-proctored appointments due to expected high demand across the globe.

To view the official AWS statement, check out this page: https://aws.amazon.com/certification/faqs/ 

For more information, you can also read this article:
https://tutorialsdojo.com/breaking-news-you-can-now-take-all-aws-certification-exams-at-home-saa-c02/
Listen on port 80 for node in linux
Tags: webdev, architecture, archlinux, sysadmin
Published: 2020-03-24 02:59:24

# Node Permission Denied
Today I came across a node error when trying to run a simple express server on a amazon ec2.

```bash
Error: listen EACCES: permission denied 0.0.0.0:80
```

After some commands and research I realized that Linux architechture by default only lets ports lower than **1024** be listened by **root**.

This means that for running applications such as node which, **should not be ran as root**, we need to create a port redirect.

# Using iptables to fix it

**iptables** is a user-space utility program that allows a system administrator to configure the tables provided by the **Linux kernel firewall**.

We will create a redirect of port 80 to 8080 in our scenario.

```bash
sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
```

To check if the route has been added successfully you can execute the following command:

```bash
sudo iptables --table nat --list
```

You should see something like this:
```bash
REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 8080
```
CompileSwift Podcast Episode 20 - iPad Gets A Cursor
Tags: podcast, ipad
Published: 2020-03-24 02:01:37

In this episode, I talk about iPadOS 13.4 and what that means to take on the laptop. I think it is a turning point for both Apple's acceptance of the iPad's role and how the Surface may just be scaring them a little.

[Play it here on Anchor](https://anchor.fm/compileswift/episodes/iPad-gets-a-cursor-plus-how-much-is-that-magic-in-the-window-ebr8e5)
AWS & Serverless Architecture
Tags: aws, softwareengineering, softwaredevelopment, cloudcomputing
Published: 2020-03-29 22:59:51

---
title: AWS & Serverless Architecture
published: true
date: 2020-03-24 01:44:02 UTC
tags: aws,software-engineering,software-development,cloud-computing
canonical_url: https://medium.com/@bryn.bennett/aws-serverless-architecture-c99ef21dbfb1
---

[![](https://cdn-images-1.medium.com/max/2600/1*espHCMdfK1FcuM_XRr297w.jpeg)](https://medium.com/@bryn.bennett/aws-serverless-architecture-c99ef21dbfb1?source=rss-5676ca6163ee------2)

This is a beginner’s guide to serverless architecture and AWS. It discusses what these terms actually are and explains how they are used…

[Continue reading on Medium »](https://medium.com/@bryn.bennett/aws-serverless-architecture-c99ef21dbfb1?source=rss-5676ca6163ee------2)
Automated Deployments from Scratch
Tags: devops, git
Published: 2020-03-24 01:35:00

I'm going to share a simple method for automating your deployments from scratch.

While working on a project that uses Go and React, I realized that there were too many steps in the deployment process to do it manually. I needed to generate assets for transfer using three different programs, then I needed to send it over to my production host, and then I needed to move those assets into place in production. I had read about using git hooks to do this kind of thing before, so I looked into them. It turns out that git hooks are easy to use. You just put a script into the .git/hooks/ folder and name it after the event that you want it to be executed during.

I used the pre-commit hook, and wrote a bash script for compiling all of the assets, compressing them, and scp'ing them to my production server.

Now doing git commit -a causes a compile, packaging, and transfer of the compressed assets to the production server. What is left though, is to have the production server automatically install the new assets. As a solution, I wrote a watcher script that polls for changes in a file.

The watcher script runs on the production host and looks for changes in the file that the pre-commit hook pushes to it. When the file changes, it unpacks the archive, stops the app, installs the assets, removes leftover artifacts and starts the app.

That's it. Automated deployments with git and a couple of bash scripts. One script in your development environment that's kicked off by git and another on your production host that's triggered on a file change.
ColdFusion Test for new Amazon Trust Services Certificates
Tags: aws, java, coldfusion, cfml
Published: 2020-03-24 00:46:47

I received an email notification from Amazon that Amazon S3 and Amazon CloudFront were migrating default certificates to Amazon Trust Services in March 2021.

> In 2018, AWS announced a broad migration of AWS services' SSL/TLS certificates to our own Certificate Authority, Amazon Trust Services. Consistent with this change, and beginning March 2021, Amazon S3 and Amazon CloudFront will begin migrating the Certificate Authority for each services' default certificate. Using our own Certificate Authority, AWS services can better manage the security practices used to handle our default certificates.
> 
> Your action may be required to ensure your applications continue normal operation after this change. If you already use other AWS services, your application most likely already trusts Amazon Trust Services as many AWS services have already migrated. Visit https://www.amazontrust.com/repository/ for more information about Amazon Trust Services.
> 
> To prepare for this migration, visit the announcement blog or review the FAQs below:
https://aws.amazon.com/blogs/security/how-to-prepare-for-aws-move-to-its-own-certificate-authority/

As a ColdFusion developer, I use Amazon S3 for a couple projects. I've encountered issues in the past and have had to resort to using [S3Express: Amazon S3 Command Line Utility](https://www.s3express.com/) to improve performance, thread stability and avoid time-outs. I continue to use CFML to access S3 to generate real-time, time-expiring download links for digital downloads.

I've also accessed some websites via [CFHTTP](https://cfdocs.org/cfhttp) that are hosted by Amazon CloudFront.  I decided to check to determine if I needed to manually import the certificates into the trust store or if it would just work.  _(**NOTE:** I prefer using [CFX_HTTP5](http://adiabata.com/cfx_http5.cfm) and it worked without having to make any code changes or manually import any certificates. [CURL](https://curl.haxx.se/) also worked. They both use WinHttp API which leverages the certificates that are updated automatically by Microsoft.)_ Since this was announced back in 2018, I figured Adobe was on top of this and would have added it to ColdFusion 2018, but it appears that they didn't.  (I'm not sure if they've added it to CF2020.  Could someone check on that?)

Here's a [ColdFusion script](https://gist.github.com/JamoCA/829e15110b1f8b81576e1782f760475d) that I wrote that performs GET requests using the currently available test URLs:
- https://good.sca1a.amazontrust.com/
- https://good.sca2a.amazontrust.com/
- https://good.sca4a.amazontrust.com/
- https://good.sca0a.amazontrust.com/

I noticed that the new AWS certificates work when testing TryCF and I'm not sure why.  (Are they using a proxy?)  If you test using [CFFiddle](https://cffiddle.org/), a connection failure error is returned.

## TryCF.com Demo

https://www.trycf.com/gist/829e15110b1f8b81576e1782f760475d

## Source Code

{% gist https://gist.github.com/JamoCA/829e15110b1f8b81576e1782f760475d %}
Clear Search Highlight in Vim
Tags: vim
Published: 2020-07-01 15:30:36

---
title: Clear Search Highlight in Vim
published: true
date: 2020-03-24 00:00:00 UTC
tags: vim
canonical_url: https://tech.serhatteker.com/post/2020-03/clear-search-highlight-in-vim/
---

After searching in __Vim__ with `/` all occurences highlighted and this stays for a while. It may be a unwanted or even annoying thing. There are many methods to disable it;

### 0: Temporarily Disable
To turn off highlight until next search, in `exe` mode:

```vim
:noh
```

### 1: Persistent Disable
If you want to disable it completely:

#### 1.0: For existing session/buffer:
In `exe` mode:

```vim
:set nohlsearch
```

#### 1.1: For all sessions/buffers:
Put this in your `.vimrc`:

```vim
" disable search highlight
set nohlsearch
```

### P.S:
I personally use 'temporarily disable' with key mapping. I mapped `:noh` to `<esc>` key. Since hitting `<esc>` is a very common and intuitive situtation in Vim.

```vim
" noh - no highlight
map <esc> :noh <CR>
```

You can also map `nohlsearch` to a key for toggling.

All done!
For those WFH due to COVID-19 and not feeling organized.
Tags: wfh, socialdistancing, quarantine, routine
Published: 2020-03-23 23:59:49

### tldr; 

No one should know the right answers now. These are very odd and confusing times. Cherish little victories right now - even if that means making a simple schedule.

If you've recently started WFH, build out a schedule. Somewhere. Google Calendar. Your computer's built-in calendar. Post-it notes. Doesn't matter.

---

This post was inspired by a teammate of mine at [Squarespace](https://www.squarespace.com/). We were having a virtual call with the whole team and going around giving our standup updates. She had posed the following question as Squarespace has recently required employees to work remotely due to the COVID-19 pandemic:

> _How do you all organize your day? I don't find myself reviewing pull requests as much as I did when I was in the office and I just think it's because I don't feel organized because of working from home..._

My team lead put it best:
> _We're all in this together. There's no need to feel like you need to be optimal at any of the tasks you're doing right now. We're all trying to figure it out._

![neil amen](https://media.giphy.com/media/zKsfeEYZI4Ku4/giphy.gif)

It's true. There's a lot of things going on right now that need priority and are a lot bigger than websites. That's the reality.

That being said, we still need a way to find a sense of solace when we feel confined to our home. So, feeling good for me means organization. 

Organization means...a schedule?

Below a WIP schedule that I have on a weekly basis with this new WFH routine:

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

### Breakdown

<b>8AM - 10AM</b>
Coffee / Workout / Breakfast

Need caffeine to work out. Need food after workout.

I'm currently doing [this bodyweight workout routine](https://thehybridathlete.com/bodyweight-training-plan/) and am enjoying it a lot. 

Make sure your breakfast includes protein + fruits / vegetables.

<b>10AM-11AM</b>
Email / Slack / Notes

Go over notes from yesterday and catch up on email. Also look at any notable slack conversations. Pretty straightforward.

<b>11AM-1PM</b>
Focused Work

"Focused" in this sense typically means I have headphones on and am deeply into writing code / working on a task (which probably means writing code). Slack might be turned off / muted for me. I work with the goal / intent of having something to demo or put up in a pull request for code review.

<b>1PM-2PM</b>
Lunch

Nom nom nom.

<b>2PM-4PM</b>
Pair Programming or Focused Work Continued.

This is a window of time where I make myself available for video calls and pair programming. If no one is available for a call, I'll continue on with focused work.

<b>4PM-5PM</b>
Coffee + Code Review

Make another cup. Review some code that my team and other engineers wrote.

<b>5PM-6PM</b>
EOD / Notes

Collect any notes and email them to the team. 

Call it a day. 

Like I said, this is still a WIP. I'm still adjusting it but this so far has worked. Feel free to share how you're scheduling out your time with this new reality.

Be good. Wash your hands.
Learning Destructuring
Tags: javascript, destructuring
Published: 2020-03-23 23:34:39

What exactly is the new feature destructuring in ES6?

Destructuring helps to break up your code by giving it the pattern you are expecting to get back. It aims to make your code more readable. Destructuring is an assignment task, not a declarative task.

Lets look at the different between the regular imperative way and with ES6 destructuring technique:

```js
function someData() {
  return [dog, cat, fish];
}

var tmp = someData();
var first = returnedData[0];
var second = returnedData[1];
var third = returnedData[2];
```

We now take the same logic and implement with ES6 destructuring: 

```js
function someData() {
  return [dog, cat, fish];
}

var [
  first,
  second,
  third] 
= someData();
```
If you want to define a default value, you can use a default value expression for the destructured method:

```js
var [
  first,
  second = 10,
  third
] 
= someData();
```
Whereas, prior to ES6, you would implement your default value as such:
```js
var second = returnedData[1] !== undefined ? returnedData[1] : 10;
```