teleren/devto huggingface dataset:
Resumable file upload (TUS protocol implementation) using pure bash
Tags: tus, resumableupload, bash, showdev
Published: 2019-08-20 13:31:36

---
title: Resumable file upload (TUS protocol implementation) using pure bash
published: true
description: TUS client protocol implementation using pure bash.
tags: tus, resumable-upload, bash, showdev
---

Introducing `tusc.sh` - bash script for resumable file upload using tus protocol.

{% github adhocore/tusc.sh %}

### Installation

```sh
sudo apt install jq -y

curl -sSLo ~/tusc https://raw.githubusercontent.com/adhocore/tusc.sh/master/tusc.sh
chmod +x ~/tusc && sudo ln -s ~/tusc /usr/local/bin/tusc
```


### Getting Started

To get hands on locally, you can install [tusd](https://github.com/tus/tusd#download-pre-builts-binaries-recommended) server.

Then,


```sh
# run tusd server (http://0.0.0.0:1080)
tusd -dir ~/.tusd-data &

# start uploading large files
DEBUG=1 tusc --host 0:1080 --file /full/path/to/large/file
```

While upload is in progress, you can force abort it using `Ctrl+C`

Then resume upload again:
```sh
DEBUG=1 tusc --host 0:1080 --file /full/path/to/large/file
```

It should start from where it last stopped.

You can check the uploaded files like so:
```sh
ls -al ~/.tusd-data
```

Feedback and suggestions are welcome and highly appreciated.

Thanks :)
How and why to publish with Netlify
Tags: netlify, github, publish, webdev
Published: 2019-08-20 13:29:22

---
title: How and why to publish with Netlify
published: true
description: Get your apps out of Git and onto the web
tags: netlify, github, publish, web-dev
cover_image: https://thepracticaldev.s3.amazonaws.com/i/dygt6rjwv8bt474qyvjt.jpg 
---

You have an awesome looking portfolio or a killer web app but it's just sitting in your Git repo. A prospective hiring manager or recruiter isn't able (or possibly technically capable) of cloning the repo and getting it up and running to see all your hard work.

You need to publish it to a URL!! **Something that just works.**

Bobby Davis will show you how to take your project from **GitHub** and publish it to **Netlify** for FREE.

{% youtube O-fdE_mDR8w %}
Architecture, Design Patterns...
Tags: beginners, learning, architecture
Published: 2019-08-20 13:22:33

---
title: Architecture, Design Patterns...
published: true
description: What you really need to know
tags: beginners, learning, architecture
---

When starting to learn to code, the language is the only thing that matters. You go through tutorials and video courses to learn how to program something using the language you chose. You try to implement the various exercises or replicate the tutorial's goal. It's only much later that you came up the various terms that populate the programming world and never seems to directly relate to anything concrete. The consensus is that it's important to learn them, but it's hard to evaluate their importance when you just start learning to code or even comprehend what they are about.

# Architecture

> Software architecture refers to the fundamental structures of a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.
[Wikipedia](https://en.wikipedia.org/wiki/Software_architecture)

In a nutshell, Software Architecture dictates what's going to be implemented and where it will be put. It's just a guideline for you to follow. But why do you need it?

In the Wikipedia page, you can see that the Software Architecture should display certain characteristics. But the most important concern is that **you should be able to easily change anything later**. What you decide today could be irrelevant tomorrow and your code should be flexible enough so that it's not too costly to alter. 

# Design Patterns

> In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design.
[Wikipedia](https://en.wikipedia.org/wiki/Software_design_pattern)

While the high-level logic of software can be different from each other, you will find similarity when you start thinking about the low-level part. That's why we have frameworks. But design patterns are actually more localized than that. 

**Design patterns are not ready to be coded solutions, they are more like a description of what the solution should look like**. When you take the Facade design pattern, the general description is to reduce the interactions with external dependencies by going through a single and often simplified API. but the actual implementation depends on the programming language and even the person that is doing it.

What you should retain from design patterns is that the problem and the solution to the problem are closely related. They are both equally important to learn. Design patterns can be used to solve architecture problems, but you should remember that the formers are localized to the context while the architecture is more general in its application.

---

I'm not advocating to learn everything by heart, but you should try to understand as much as you can about these concepts as you will encounter them often in your work. By practicing to implement them, you will understand better their use cases and the reasons behind them.
Growing EBS Volumes in Place
Tags: aws, ebs, linux
Published: 2021-06-18 02:04:47

---
title: Growing EBS Volumes in Place
published: true
date: 2019-08-20 13:10:27 UTC
tags: aws,ebs,linux
canonical_url: http://unixorn.github.io/post/growing-ebs-volumes-in-place/
---

Yesterday I had to grow a live filesystem on a server in EC2, without downtime. I do this just infrequently enough to not _quite_ remember all the details without poking around the internet, so I’m documenting it all in one place.

## Grow the volume

1. Log into the EC2 console and find your instance. In the description tab, look at the block devices (bottom right as of August 2019) and find the volume you need to grow and get its volume ID.
2. Find that volume in the EBS volumes list. Now is a good time to name it something useful like "InstanceName /data01" if you haven't already named it.
3. Click **Modify Volume**, then give it a new size. It may take a minute or two to finish growing the volume, you'll see a percentage displayed.

## Resize the filesystem

1. Log into the instance and start a `tmux` or `screen` session to do all the work in. Getting disconnected in the middle of resizing the filesystem would be bad.
2. Use `lsblk` to confirm that the EBS block device has increased to the size you expect.
3. If you have partitioned your drive, do `sudo growpart /dev/xyz1 0` to grow the partition.
4. Check `/etc/fstab` to see what format the filesystem is.
5. If you're using xfs, `sudo xfs_growfs /dev/DEVICE`. If you're using **ext2**, *ext3* or *ext4*, do `sudo resize2fs /dev/DEVICE`. If you're using **ext2** or **ext3**, seriously consider replacing this filesystem with an **ext4** one during your next downtime window.
6. **Wait**. Depending on how much larger the EBS volume has become and the instance type, it can take several minutes for the filesystem to finish growing.
7. Confirm the new size with `df`
Myself and a friend built a chrome extension manager in order to learn git. Best feature? Groups! Latest feature? Tabbing! 🙌💜
Tags: productivity, webdev, showdev
Published: 2019-08-20 12:36:25

---
title: Myself and a friend built a chrome extension manager in order to learn git. Best feature? Groups! Latest feature? Tabbing! 🙌💜
published: true
description: chrome extension manager update - tabbing now works!
tags: productivity, webdev, showdev
cover_image: https://thepracticaldev.s3.amazonaws.com/i/39a1uiqhuel5wrt5vm1r.png
---

Built this chrome extension manager a few years ago with my good friend [Ciaran Maguire](https://twitter.com/ciaranmag) when he was in South East Asia for 6 months and we both wanted to learn Git.

Here's a *[link to the extension for those interested](https://chrome.google.com/webstore/detail/custom-chrome-extension-m/balnpimdnhfiodmodckhkgneejophhhm?hl=en)*.

We're both fiends for chrome extensions, and we wanted a way to quickly toggle them on or off so that they weren't eating resources when they didn't have to be. 

Also, we wanted to _group_ them so that you could just hit one button and that _group_ of extensions all turn on (or off). 

So, we built it. We hit 10,000 users recently and almost hitting 11,000, which is amazing. 

## Features
* Group extensions so you can quickly toggle them on or off in one go (handy for webdev, or adblocking etc)
* Can show chrome apps currently installed (via settings)
* Quickly uninstall extensions
* Quickly get to their homepage (if they have one)
* Compact or expanded view
* Material theme (built with materialise.css)

## Latest Features
We just added some stuff. I have a short video here: [custom chrome extension manager latest update](https://chrisdermody.com/extension-manager-custom-chrome-update-1-0-3/) if you'd prefer video. ;)

### Tabbing
Version 1.0.3 adds proper tabbing! This was really annoying me as when I opened the extension it auto-focuses the search, which is great, but tabbing from there didn't focus the first extension's toggle, and now it does! 

This means that, combined with a shortcut to open the chrome extension (configured at [chrome://extensions/shortcuts](chrome://extensions/shortcuts)), you can completely manage your extensions with _just_ your keyboard. 

### Quickly search the chrome web store right from the extension
Lets say you're not sure you have an extension installed, so you open custom chrome, and search for it. It's not there, but you want it.

Well now, we give you a shortcut to the web store with that search term, so you can quickly get an extension you need. 

---

Just wanted to share here, never mentioned it before, and also to ask for feedback. We'd love your thoughts.
Blogging in other languages at dev.to. Should I create a different dev.to account?
Tags: discuss, goodpractices, blogging
Published: 2019-08-20 12:23:28

I am originally from a Portuguese speaking country, Brazil, and I have plans to start blogging also in Portuguese as there's a "lack" of technical articles in the language and unfortunately there's also a lack of English skills among the Brazilian population where 5% only of the population are able to speak/read English according to the statistics. 

I would really like to help people getting started with technology and development there, I don't live in Brazil anymore for many years but when I was there I participated of groups to teach students Programming and I really loved it and I also used to blog in Portuguese in another platform. But now that I know dev.to I want o keep blogging here I really like the community and the platform that is being built here.

Any recommendations, opinions? What are the good practices? Should I have a different account for blogging in a different language?  I feel like yes but I've seen some people doing differently and using the same account.
JAMstack Roundup for August 20th 2019
Tags: graphql, react, webdev, javascript
Published: 2019-08-20 12:16:25

# Here are 5 great reads we're bringing to you this week! #

1. [PWA for E-Commerce](https://medium.com/pilon/pwa-for-e-commerce-1b8db3d07a16)

    As of 2019 📅, real-world adoption of PWAs (Progressive Web Applications) in e-commerce is accelerating 📈and we may be at a tipping point. Using [TakeShape](https://www.takeshape.io/), you can seamlessly create an 🛍e-commerce PWA that is dynamic and beautiful. 

2. [Netflix's learnings from adopting GraphQL](https://medium.com/netflix-techblog/our-learnings-from-adopting-graphql-f099de39ae5f)

    When Netflix started out 🐛, the React UI layer accessed traditional REST APIs. Over time as the application evolved 🦋, the use cases became more complex and they switched over to GraphQL 📊. 

3. [What are Webhooks? Easy Explanation & Tutorial](https://snipcart.com/blog/what-are-webhooks-explained-example)

    If you've never used webhooks 🤷‍♀️, we’ve got a great article for you 😊. Put bluntly, webhooks are a way for apps to communicate 🗣with each other automatically. Without stress 🧘‍♂️, you could even integrate webhooks into your next [TakeShape](https://www.takeshape.io/) website!

4. [A Designer's Guide to Redux](https://www.smashingmagazine.com/2018/07/redux-designers-guide/)

    For those who want to design 🎨with Redux in mind 🧠.

5. [A Developer's Guide to Redux](https://developer.okta.com/blog/2019/03/18/beginners-guide-to-redux)

    For those who want to code ⌨️with Redux in mind 🧠.
Garbage collector in java 
Tags: java
Published: 2019-08-20 11:43:10

Hello friends🙋‍♂️

When we write code, Garbage Collector's job is to manage memory
And objects we don't use Identifies them And ,free the trash
This process is completely automatic
Waste is collected in a part of memory called heap.
Gc Garbage In the heap it detects objects that we do not need to clear.

Wait for the next posts🙋‍♂️😉👨‍💻

Write your own comments👇👇
webMethods.io Examples 1.1
Tags: integration, webmethods, tutorial
Published: 2019-09-11 07:46:27

---
title: webMethods.io Examples 1.1
published: true
tags: integration, webmethods, tutorial
canonical_url: http://techcommunity.softwareag.com/web/guest/pwiki/-/wiki/11809/webMethods.io+Examples
---

## Overview

Collection of examples for beginner webMethods-io developers. It consists of common use cases and starting points for developers getting up to speed with webMethods.io. Each example will contain instructions on how to recreate itself from a blank project.

Table of Contents

1. [Hello Email](https://github.com/SoftwareAG/webmethodsio-examples/blob/master/hello-email)
2. [Pagerduty-Slack](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/pager-slack)
3. [SalesForceLeads-Slack](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/salesforceleads-slack)
4. [Github-Slack](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/github-slack)
5. [Slack-Twitter-Linkedin](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/slack-twitter-linkedin)
6. [AWS-Lambda](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/aws-lambda)
7. [Twilio-Receive-SMS](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/twilio-receive-sms)
8. [Twilio-Send-SMS](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/twilio-send-sms)
9. [Cumulocity-S3](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/cumulocity-s3)
10. [Cumulocity-Freshdesk](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/cumulocitytofreshdesk)
11. [Convert-XML-JSON](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/convertdata-xml-json)
12. [Dropbox-Sendemail](https://github.com/SoftwareAG/webmethodsio-examples/tree/master/dropbox-sendemail)

## Further Instructions

For further instructions visit the repository at GitHub: **[webmethodsio-examples](https://github.com/SoftwareAG/webmethodsio-examples)**

** Software AG open code at:**

![GitHub_Logo](http://techcommunity.softwareag.com/documents/10171/0/GitHub_Logo.jpg/fbaab271-6fd1-4bb0-b109-02426c5e37e6?t=1521809442771)

* * *

Forking and pull requests are welcome. For bugs related to the code please create an issue in the Github Repository. For any questions or requests, please post a comment below.
What is API Gateway?
Tags: apigateway, cloud, apicomposite, cloudnative
Published: 2019-08-20 11:29:33

---
title: What is API Gateway?
published: true
description: API gateway is an interface layer that standing in front of your API and handle all the incoming request before redirecting it to the internal service. Know more about it.
tags: API Gateway, Cloud, API Composite, Cloud-Native
cover_image: https://thepracticaldev.s3.amazonaws.com/i/o1ombc4fbjsalvb4cwbs.jpg
---

API gateway is like a wall with a gate and guard standing in front of it. Everyone that arrives on this gate has a question to ask someone from another side of the gate. They have the name of the person that knows the answer but they do not know where it is located.
So the guard tells:

> *“Give your question and the name of the guy you are looking for and I will deliver it. Sometimes this name is a nickname and I need to ask more than one person to have the answer to your question. But you do not need to concern about it. “*

>

Although this guard is responsible for some security aspect they are not so specialized as a guard that works at the firewall. This small metaphor gave you an overview of what is and how an API Gateway works. The tech side of the story is that API gateway is an interface layer that standing in front of your API and handle all the incoming request before redirecting it to the internal service. This behavior is known as reverse proxy. They have functions like:

- Route the incoming traffic to the appropriate service.
- Limite the exposure of various APIs
- Filter incoming traffic from different rules like web, mobile and so on
- Implement security mechanisms to authenticate and log service usage

Use of API gateways provides the following benefits:

- **Separation of concerns:** Allow the separation between the service consumer and the microservice provider.
- **Orchestration:** Allow the orchestration of multiple services calls into one API call.
- **Monitor**: Provides the ability to monitor API invocations

Besides the benefits, API gateway introduces more points of failure and add more items to be managed. The pros and cons need to be carefully analyzed. You can implement the [API Gateway pattern](https://microservices.io/patterns/apigateway.html) / [API Composition pattern](https://microservices.io/patterns/data/api-composition.html) by yourself using [cloud-native](https://educosta.dev/blog/what-is-cloud-native/) technologies or use the [API Gateway from a cloud provider](https://aws.amazon.com/pt/api-gateway/). See also the [API Gateways technologies](https://landscape.cncf.io) you can apply in your project that are supported by [Cloud Native Foundation](https://www.cncf.io/).

This post was originally released on my [Blog](https://educosta.dev/blog/api-gateway/). If you have any doubts or questions feel free to drop a comment here or reach me out on Twitter [@educostadev](http://twitter.com/educostadev).
Godot Wild Jam 12
Published: 2019-08-20 10:48:00

---
title: "Godot Wild Jam 12"
published: true
Description: "Between the 9th and 16th August 2019 I took part in the Godot Wild Jam #12. Let’s go through what it was like, and the things I learned this time."
Tags:
    - Game Jam
    - Godot
    - Game Engine
    - Game Design
Categories:
    - Game
canonical_url: "https://sausage-factory.games/post/godot_wild_jam_12/"
---
Between the 9th and 16th August 2019 I took part in the [Godot Wild Jam #12](https://itch.io/jam/godot-wild-jam-12-one-year). Let’s go through what it was like, and the things I learned this time.

![MatchUp, Created in a week using Godot](https://thepracticaldev.s3.amazonaws.com/i/j263i7ld896o3jtqapff.png)

My game, [MatchUp](https://ncotsoftware.itch.io/matchup) is a fairly simple match-the-coloured-blocks game. It’s not a match-3, because the game doesn’t care how you match the tiles, and each level has a different number of tiles that need matching. Think of it as a mix between those “Same Game” block games and ZooKeeper on the DS.

With this game, I was trying to create something fun, with lots of visual interest. The previous games I’ve made haven’t had much fancyness or design to them. I also actually playtested this game, and spent quite a while tweaking the gameplay to make it feel more fun to play.

## So what did I learn?

### A week is a long time

There’s plenty of time to design and test a game, and to make it look and place nicely. There’s no need to rush!


### Using tools saves time.

I was using Godot, which has a large userbase and people have made many many tutorials for it. When I got stuck I could just go and read or follow some, rather than having to spend hours of my own time figuring out problems from first principles.


### Cutting things because they’re broken and will take too long to fix is a good strategy

This was a big deal. Mouse dragging was buggy and the bugs were annoying when playing the game, so I ripped out the mouse controls entirely and replaced them with keyboard controls. Fixed all the control issues and made the game more fun, too!


### Iterate quickly

The first two or three ideas I had were rubbish, but by trying to make them I understood why they were rubbish.


### Not everything can be planned from the start

I didn’t quite know what I was making, but “sliding block puzzle game” was the general direction. Once I had that basic mechanic working, I was free to experiment and find something that worked.


### Don’t clone games, but do be inspired by mechanics

Nobody wants another match-3 puzzle game, and there really doesn’t need to be yet another “Same Game” out there. But the general mechanics are fun, and it doesn’t take much to mash things together into a new idea.
SD-WAN Architecture
Tags: sdwan
Published: 2019-08-20 10:22:40

SD-WAN architecture is the shape of the hardware and software machine that make up the Software-Defined WAN and its deployment. In easy terms, it allows in SD-WAN deployment. <a href="https://www.computertechreviews.com/definition/software-defined-wan-sd-wan/">SD-WAN</a> architecture is decided by enterprise scale, needs, and related value.

Companies that put into effect technology including SD-WAN can use public hyperlinks to provide relaxed, excessive-overall performance connections from the bottom to the cloud. Thanks to the utility of this technology, businesses gain from a cloud architecture that protects the organization from all forms of vulnerabilities.

Types of SD-WAN Architecture

SD-WAN has been classified into 3 kinds:

On-premises-handiest:
On-premises-best <a href="https://www.computertechreviews.com/definition/software-defined-wan-sd-wan/sd-wan-architecture/">SD-WAN Architecture</a> is the same as it sounds. If your corporation has an SD-WAN setup, having actual-time site visitors shaping at each web site… and that’s it.

When compared to other architectures, the on-web site SD-WAN setup doesn’t connect with a cloud gateway. It simplest connects on your organization different websites.

Cloud-enabled
Whereas cloud-enabled SD-WAN structure, it offers an answer at onsite SD-WAN setup connecting to a cloud (virtual) gateway. Using this architecture, organizations get the benefits of an on-prem-simplest, plus elevated overall performance and reliability of your cloud programs.

Cloud-enabled plus spine
Cloud-enabled SD-WAN architecture is some other stage or pinnacle-stage whilst it receives a backbone. Cloud-enabled plus backbone SD-WAN structure gives an on-web site SD-WAN setup connecting agencies to the SD-WAN issuer’s nearest community.  With this your site visitors hops on the SD-WAN company’s non-public, fiber optic, network backbone.

SD-WAN Benefits

Before discussing <a href="https://www.computertechreviews.com/definition/software-defined-wan-sd-wan/sd-wan-benefits/">SD-WAN Benefits </a>, allow us to Software-Defined era carried out to WAN (Wide Area Networks) networks is called SD-WAN. And is being imposed, specially in the ones companies which have one of a kind locations and must be continuously related. The resulting revel in is like anyone working inside the same place.

The exponential increase of records site visitors and the wishes of fast get right of entry to to it via enterprise quit-customers is driving the implementation of software program-defined WAN networks. In this weblog we're going to talk about approximately SD-WAN advantages.

The network is a key useful resource in the company IT structure. Traditional LAN and WAN networks increasingly guide the distribution of unstoppable quantities of facts and actual-time access needs of company customers.