teleren/devto huggingface dataset:
Top 10 Factors to Keep in Mind While Choosing an SEO Company

Tags: seo
Published: 2020-06-29 08:54:53

An [affordable SEO company](https://www.seotuners.com) can help you expand your marketing reach, improve your site traffic, and increase your revenue. Partner up with the right search engine optimization team to achieve those results. Here are ten factors to look for when you hire an SEO company. 

####Your Needs####
What does your business need? Think about what your target market wants. Now, figure out the kind of SEO assistance or support that you require to provide for the needs of your market. For instance, you might need a site that makes it easy for your customers to find upsells in your site, or you need to fix the navigational experience, so it’s not cluttered and messy. 

####Innovation####
Creativity is a must. Once you’ve figured out what your marketing goals are, talk to the firm and check out their suggestions on how to make your ideas happen. Do they understand the core of your business? Do their suggestions hit the nail on the head? 

####Keep Up####
Hire a team that can help you stay up to date. Google is known for rolling out changes to its algorithm. If you already have your hands full running your business, hiring an SEO firm is an excellent option as you’ll have someone to make sure your pages are up to date. 

####Social Media Know-How####
Pick a firm that knows how to use social media channels to boost traffic to your business. Which platforms are right for you? What campaigns will they build? Their help will be invaluable in building your online presence. 

####Experience####
How long has the firm been in the business? Does the company specialize in providing SEO services? What other types of digital marketing assistance can you expect?  

####Quality####
Make sure you don’t hire a firm that uses [black-hat marketing] (https://blog.hubspot.com/marketing/black-hat-seo) tactics. It might seem like a good idea to secure the services of an SEO firm that promises to get your pages to rank in a week or so. But that’s only possible through black-hat SEO. The only result you’ll likely get out of that is your pages getting penalized. Don’t let that happen. Google penalties are a nightmare to fix. 

####Reputation####
Check the firm’s reputation. Ask around. Do your homework. If the firm’s reputation is credible and trustworthy, then you’re on the right track. If there are too many complaints or bad comments about the firm, though, give it a wide berth instead. 

####Link Building Strategies####
Link building is a practice that’s still alive and well in many circles. Done properly, it can generate traffic to your site pages. Talk to an SEO team you trust and find out more about how link building helps your business. 

####Keyword Optimization####
This is an essential part of on-page optimization. Hiring an SEO firm will help you get pros who have the right tools and expertise to pull this off. You can optimize these keywords to get customers to pay a visit to your site. By excellent keyword optimization, you can make those visitors linger, long enough for them to check out your pages.
Developing with a beginner's mind
Tags: webdev, beginners, software, learning
Published: 2020-06-29 11:40:07

If you can’t fly then run, if you can’t run then walk, if you can’t walk then crawl, but whatever you do you have to keep moving forward.’ - Martin Luther King, Jr.

I’ve been working at Banked as a software engineer for a few months now, and one of the most astonishing things I’ve learnt in that time is that the human capacity to adapt and grow to meet the needs of their situation is well beyond what I thought possible.

To give some context, I’ve set myself some fairly interesting professional challenges in the past — investment banking, self-taught developer, launching a start-up — and those situations definitely demanded some learning and growth on my part. But if I were to plot that speed of adaptation on a graph, I might previously have assumed it was fairly constant. A few months at Banked has shown me that I would have been wrong.

Every week has involved a deep dive into a new technology, framework or paradigm: understanding and implementing it, evaluating the result, then throwing away and starting again where necessary. I see this sudden spike in learning and productivity in myself and in the team around me, and it’s fantastic, but it leads me to ask what it is about the setup here at Banked that has created such a desirable outcome. Why haven’t I been consuming new technology at this pace in the past?

The most obvious point is the one I led with: that we adapt to meet the need around us. This is true to an extent, since being in a relatively early stage as a company means there is a lot to be done. But I’ve been at this stage of a start-up before, with fewer people and hence more to do. Yet I wasn’t learning at the pace I am now.

Which leads me to what I think is the more genuine answer, and why Banked is different to where I’ve been before. We’ve managed to get the team just right. Having hungry engineers who are keen to level-up and become experts in every shiny new technology available is great, but that energy needs to be channeled in the right direction. This comes from having the right kind of tech leads and seniors, who recognise the balance between allowing the team to explore and make mistakes, and avoiding getting totally lost in a technical rabbit hole.

There is an idea in Zen Buddhism called Shoshin, which roughly translates as “beginner’s mind”. In essence, it’s about approaching any subject of study with openness and a total lack of preconception, just as a beginner or a child would. Often the biggest barrier to learning is all the assumptions we already hold about how things should be done. This can be especially true when you’re an expert in a particular technology: if you’re holding a hammer, everything looks like a nail.

For me, one unexpected benefit of the culture we’ve created at Banked — where constant learning is assumed and is just a normal part of everyone’s day — is that it helps to foster this mindset. When I joined a fintech start-up a few months ago, I didn’t know I would be getting a lesson in Zen Buddhism.

Authored By Tom Watt, Software Engineer @ Banked

‍
Supporting creators through patreon
Tags: patreon, monetization
Published: 2020-06-29 12:42:30

Hey people,
We love many of the creators who makes us to gain the knowledge by sharing their work in youtube, twitch, github, dev posts, medium, hackernoon, etc,.

* There are many places where developers love to support the people who follow them. And their followers also supports them.

* One of the best platform to support the people whom we love is [Patreon](https://patreon.com).

* You can support your favourite people if he/she is available on patreon. Some people will share their patreon page, if they love.

* I'm also having a patreon page [Vuelancer-Patreon](https://patreon.com/vuelancer). (sharing my patreon page only for showing how the Creator's patreon page will be like! **You don't need to pay me** unless you want)

~ Thank You.

### Support Me
* Youtube Channel -https://www.youtube.com/channel/UC0hmXRqXYVO0mocVt5D3GkQ

* Github - https://github.com/vuelancer

* Scrimba - https://scrimba.com/@selvakumardhivakar

* Patreon - https://patreon.com/vuelancer
Bookmarklet: Stop AccessiBe Tampering with WAVE
Tags: codepen, wave, a11y, javascript
Published: 2020-06-29 12:46:44

<p>When WAVE runs its tests, AccessiBe turns on settings that would not normally be turned on to enhance the WAVE test results.</p>

<p>This bookmarklet prevents AccessiBe from tampering with the WAVE results.</p>

{% codepen https://codepen.io/anevins12/pen/mdVOROb %}
How to make a API Call to Heroku from Chrome Extension
Tags: help, heroku, chromeextension
Published: 2020-06-29 14:35:19

Hi Dev,

So, I am stuck here trying to make this API Call to a Heroku project from a Chrome Extension I am developing.

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

I am familiar with Flask and NodeJs. 
I understand this has something to do with headers somewhere.
I tried searching but could not find a point solution.


Help me solve this problem.

Thanks in advance,
Revamping my personal site
Tags: showdev, discuss, vue, webdev
Published: 2020-06-29 15:20:56


## Overview

Initially, my website (https://www.nishantwrp.com) was a simple vue application where almost everything was hardcoded. I didn't take advantage of Vue at all.<br>

But recently I revamped my site and some of the major changes I made are
- **Migrated To Gridsome** - I used Gridsome which is a static site generator for Vue. Doing this had many benefits like 
	- SEO Friendly site
	- Easier to integrate with content management systems
	- Faster Site
- **Using a CMS** - I started using Contentful as a CMS to manage content easily.
- **PWA** - Because PWAs are cool!
<br>

## Tech Stack
-  [Gridsome](https://gridsome.org/) - I have used gridsome as the main framework.
-  [Contentful](https://www.contentful.com/) - I have used Contentful as the CMS for this site.
-  [Vue Js](https://vuejs.org/) - Well this is obvious by the fact that I'm using Gridsome.
-  [Vuetify](https://vuetifyjs.com/) - I have used Vuetify as the UI framework.
- [Gitalk](https://github.com/gitalk/gitalk) - I used gitalk as a commenting system for my posts.
<br>

## Things I Learnt
This was my first time working with a Static Site Generator. And I totally loved the experience and plan to use Gridsome in my future projects as well.<br>

This was my first time using an external CMS as well. I really liked how a CMS can make things organized.<br>

## Feedback
I would really like to hear some feedback about this site. 

PS: Thanks to the awesome people who gave feedback on the site here https://dev.to/nishantwrp/website-feedback-55bd
XmlAttributes.XmlIgnore Property
Published: 2020-07-06 14:25:53

using System;
using System.IO;
using System.Xml.Serialization;

// This is the class that will be serialized.
public class Group
{
   // The GroupName value will be serialized--unless it's overridden.
   public string GroupName;

   /* This field will be ignored when serialized--
      unless it's overridden. */
   [XmlIgnoreAttribute]
   public string Comment;
}
Reagent 101 / Hiccup vs. JSX
Tags: clojure, react, tutorial
Published: 2020-07-07 18:04:51

Hiccup is a Clojure library that enables us to represent HTML using Clojure vectors. In HTML and JSX, you have tags `<>`. In Clojure, you have vectors `[]`.

Herein, I will lay them side by side, to show how Hiccup coupled with Reagent (a Clojure interface for React) can emulate common patterns found in React.

### fragment

```clojure
;; Hiccup
[:<>
  [:p "Hello"]
  [:p "Bonjour"]]
```

```jsx
// JSX
<>
  <p>Hello</p>
  <p>Bonjour</p>
</>
```

### if-else rendering

```clojure
;; Hiccup
(defn home [{:keys [authenticated?]}]
  [:div.page
   (if authenticated?
    [profile]
    [signin])])
```

```jsx
// JSX
const Home = ({isAuthenticated}) => {
  return (
    <div className="page">
      {isAuthenticated ? <Profile /> : <Signin />}
    </div>
  );
}
```

### if rendering

```clojure
;; Hiccup
(defn foo [{:keys [child?]}]
  [:div
    "Parent"
    (when child? [:div "Child"])])
```

```jsx
// JSX
const Foo = ({ child }) => {
  return (
    <div>
      Parent
      {child && <div>Child</div>}
    </div>
  );
};
```

### conditional styling

```clojure
;; Hiccup
(defn button [{:keys [active?]}]
  [:button {:class [(when active? "a-class")]}])
```

```jsx
// JSX
const Button = ({active}) => {
  return <button className={active ? 'a-class' : null}
}
```

So what do you think? Not exactly a 1-1 mapping, but it's pretty similar, right? If you have some React experience under your belt, and you want to try out Reagent, I totally recommend it. You won't have a hard time, and this is partially owing to Hiccup's readability and expressiveness.

Warmly,
DH
Demand Entrapment
Tags: management
Published: 2020-07-06 19:44:57

![Demand Entrapment](https://imgs.xkcd.com/comics/tasks.png)
We can't know everything about everything, our experiences are unique and communication is limited, so we must work within those constraints. We also have our visions and our expectations of people and code to realize those visions. The question is: 
*Does our limited communication have the messaging and bandwidth to coordinate the team so we are all working towards a vision together?*

My go-to examples of harmony through communication are clocks syncing on sailing ships from the age of exploration, or metronomes syncing using a board and coke cans: {% youtube Aaxw4zbULMs %} 
Teams obviously have more Degrees of Freedom than these illustrations, but it does beg the question: 

*What communication brings my team into harmony?*

We can also ask: 
*What communication disrupts team harmony?*
Demand Entrapment is certainly disruptive.

Demand Entrapment, or Expectation Entrapment, is the self-fulfilling heuristic where:
1. A person expects something of someone
2. That expectation is unrealistic
3. Whatever is delivered, it's never good enough
4. Feedback is ignored and blame is spread around
5. Expectations never converge, and the cycle repeats.

As an Angel CTO I experienced this while supporting a recent startup I helped secure Angel Funding for on their way to a Seed Round. The short short version {% youtube 5X4HYA-lB-U %} is my co-founder wanted to iterate on design faster than we could keep up with, which affected their B2C experiments; in turn, I expected my co-founder to be familiar with our development style. Eventually the team was frustrated all around. I will always wonder what could have brought the dev and product team into harmony.

If you've ever experienced Demand Entrapment, or if you're guilty of it yourself (I know I am), please share your story and perhaps we can find new approaches to this common challenge.
React Quiz tutorial | with Typescript
Tags: javascript, programming, beginners, webdev
Published: 2020-07-07 13:27:41

---
title: React Quiz tutorial | with Typescript
published: true
description: Create a React Quiz game from scratch
tags: #javascript #programming #beginners #webdev
---

In this tutorial, I'll show you how to build a Quiz game in React with an open API for the questions. I'll use Typescript and Styled Components with React.

{% youtube SdOtuCdTdq8 %}
What does "agile" mean these days?
Tags: discuss, healthydebate, management, agile
Published: 2020-07-07 20:48:00

It's one of these terms that seems to be used either as _something specific_, or by others as _just a an adjective_.

When "agile" first came on the scene, I think there must have been a tighter line to its principles, but decades later, _who the hell knows_?

I'd like to open the floor for input. ❤️
Top 5 free HOSTING sites with Instructions
Tags: tutorial, beginners
Published: 2020-07-07 20:58:58

Getting your website deployed is probably the first thing you want to do and with these 5 sites, you can do it in just minutes. 

# Table of Contents - The order is alphabetical
1. [Firebase](#firebase)
2. [Netlify](#netlify)
3. [Render](#render)
4. [Surge](#surge)
5. [Vercel](#vercel)


# Firebase

With [Firebase hosting](https://firebase.google.com/docs/hosting), you can deploy web apps - both static and dynamic content by a single command.


Step 1. Install the Firebase CLI

```console
npm install -g firebase-tools
```

Step 2. Sign into Firebase

```console
firebase login
```

Step 3. Navigate into your project

```console
firebase init
```

Step  4. Prepare your site

```console
npm run build
```

Step  5. Deploy

```console
firebase deploy
```

# Netlify

[Netlify](https://www.netlify.com/) supports GitHub, GitLab and Bitbucket, it will redeploy the site just by pushing the code without manually rebuild.

Step  1. Login to Netlify and select `New site from git`

Step  2. Choose your repository and configure settings with options:
  * Branch to deploy, default `master`
  * Build Command, default `npm run build`
  * Publish directory, default `public`, but it is usually `public, dist, build,...`
 
Step  3. Select `Deploy site`

# Render

With [Render](https://render.com/), you can host static sites, backend APIs, databases, cron jobs, and all your other apps in one place.

Step 1. Login to Render and create a new Web Service and give access to your repository

Step 2. Enter your settings
  * **Environment**: `Static Site`
  * **Build Command**: e.g `npm run build`
  * **Publish Directory**: e.g `public, dist, build,...`

Step 3. Select `Create Web Service`

# Surge

[Surge](https://surge.sh/) is a cloud platform to publish static web
for Front-End Developers.

Step 1. Install the surge CLI

```console
npm install -g surge
```

Step 2. Build your site

```console
npm run build
```

Step 3. Deploy your site providing your Publish Directory

```console
surge public/
```

# Vercel

[Vercel](https://vercel.com/) is a cloud platform for websites and serverless APIs, free and easy to use

Step 1. Install the Vercel CLI

```console
npm i -g vercel
```

Step 2. Deploy

```console
vercel
```

## Conclusion

Deploy and hosting is fast and easy. These sites are perfect for you to host any solutions from [devchallenges.io](https://devchallenges.io/)

- Website: [devchallenges.io](https://devchallenges.io/)
- Twitter: [@DevchallengesI](https://twitter.com/DevchallengesI)
- Blogs: [devchallenges Blogs](https://devchallenges-blogs.web.app/)

Feel free to leave me any comments
Interfaces in Go
Tags: go, tutorial, video
Published: 2020-07-07 23:53:45

{% youtube Nr2FcSMVK6w %}

Despite not having Object Oriented Programming (OOP) language features, Go does have interfaces.
 
Interfaces allow you to interchange what data types you are passing as arguments to a function, as long as that type has the required methods.

Interfaces in Go are different compared to, say, C# or Java, in that you don't have to explicitly state you are implementing an interface, which is pretty cool.

Check it out and let me know what ya'll think. Any feedback is greatly appreciated.

If you liked it and want to know when I post more, be sure to [subscribe](https://www.youtube.com/DonaldFeury?sub_confirmation=1) and thank ya'll again for your time!
YouTube Video | Create a twitch clone using React -1
Tags: react, webdev, youtube, javascript
Published: 2020-07-08 04:34:00

This video is from my YouTube channel — The Web Dev. 

Here, we will create a clone of the popular streaming service [https://www.twitch.tv/](https://www.twitch.tv/) using ReactJS.

{% youtube TMGvxGlfab8 %}

Please do like it and [Subscribe](https://www.youtube.com/channel/UCRf7mazcufqZxd2pR3oQJuQ?sub_confirmation=1) to my channel for more videos.
ApiGatewayManagementApi: syntax error, unexpected '?', expecting variable for guzzlehttp
Tags: help, aws, php, sdk
Published: 2020-07-08 07:53:53

Why I am unable to send data from my backend to the websocket?

{% stackoverflow 62789992 %}

I get the following error:

```
<b>Parse error</b>:  syntax error, unexpected '?', expecting variable (T_VARIABLE) in <b>/var/www/html/vendor/guzzlehttp/guzzle/src/ClientInterface.php</b> on line <b>81</b><br />

```

Once I try to initialize an ApiGateWayManagementApi via php aws sdk.
Code Documentation Planning
Tags: documentation
Published: 2020-07-08 15:25:59

---
title: Code Documentation Planning
published: true
description: Planning a documentation framework for a large company
tags: documentation
cover_image: https://images.unsplash.com/photo-1457369804613-52c61a468e7d
---

# Code Documentation Planning

Recently I've been working to set the vision and strategy for documenting code in my large company going forward. We've tried several different forms of code documentation in the past including markdown collocated with code, an internal knowledge base, our company wide confluence website, google docs, and a internal hosted mkdocs site. However, we have yet to hit the sweet spot where teams are compelled to write and find good docs.

## A bit about why

Code documentation increases development speed by reducing the time to onboarding, reduce the time of technology adoption, and reducing the need for conversations with experts. Documentation also increases the accessibility of our technology by allowing engineers to digest information in their own time and in their timezone without needing to talk to an expert. Psychological safety is paramount, and documentation is critical to creating a safe, welcoming, and equitable environment for all contributors to succeed.

## The Vision

Successful code documentation should be easy to write and predictable to find. We propose putting documentation next to related code in simple markdown. This will lower the friction of tooling and reduce cultural barriers by allowing engineers to write documentation without any special tooling and minimal context switching.

### Features

Doc updates should automatically trigger a build of the docs site with predictable URL structure. The minimal requirements for the site are search, navigation, and view metrics. This ensures a level of findability and tracking of success.

### Future Features

Additionally, I have many ideas for ways a doc site can go from adequate to awesome:

* Permalinks
* Tagging (filtering by tag)
* Liking (show most popular, most viewed, and recently updated lists)
* MDX integration
* Auto-archival option
* Simple deprecation of document sections
* Documentation type templates (e.g. microservice API doc)
* Slack integration (weekly summary based on keywords)
* Content linter (e.g. abrasive / inclusive language warnings)
* Diagram plugin

## Summary

Documentation is important for accessibility and can be a huge time and money saver. Documentation must be easy to write, find, and read. We don't need perfect documentation with all the bells and whistles, start with a baseline and iterate.

## Sources

I learned a ton from the [Write the Docs](https://www.writethedocs.org/) community.

I recently learned that [instructional design](https://www.reddit.com/r/instructionaldesign/) also has a community of support.
HAProxy 2.2 announced
Tags: news, linux, devops
Published: 2020-07-08 17:00:50

Daniel Corbett | Jul 7, 2020 announced HAproxy 2.2:

The following updates included in this release:

-Dynamic SSL Certificate Storage
-SSL/TLS Enhancements
-Native Response Generator
-Dynamic Error Handling
-Health Check Overhaul
-Syslog over TCP
-Performance Improvements
-Observability & Debugging
-HTTP Actions
-Security Hardening
-New Sample Fetches & Converters
-Lua

Full details:
https://www.haproxy.com/blog/announcing-haproxy-2-2/