teleren/devto huggingface dataset:
Makers - Week 8
Tags: rails, ruby, agile, teamwork
Published: 2020-02-15 15:35:13

This week was a great insight into, not only the final project, but also into working with a team in a professional dev environment. 

The week started with the coding gods blessing me yet again with a fantastic team, something we made quick work putting into action and immediately broke down the brief into concise and bite-sized user stories.

We then got into the meat of the week, by diving into the world of Rails (Ruby on Rails). It was a bittersweet encounter, it was confusing, content heavy and directory ridden all in one. But after a couple of hours playing around with the 'generator' looking at a few other tutorials, and simply typing in commands it dawned on me....this was a bloody fantastic framework that i wish we could have discovered sooner. 

I understand the process Makers put us through, learning all the basics to get us to a point where we understand all the moving components, and then expose us to software that would do all the legwork for us. What would have taken hours, now took minutes, and all in the intuitive, easy to understand dynamic that Ruby offers. This was the equivalent of finding a frozen pizza that tasted the same as one that i spent 2 hours making myself - it was sublime!

The other main feature of this week involved bi-weekly sprints with the  product owner, and technical lead of the team. Both were played by our lovely coach Josh, and gave us an insight into working in a real dev team. The product owner had extremly specific requirements, and the technical lead was more on 'our side' to aid in any rails drama we were facing. 

Team Umberto-Jack-Asia-Katie-David stormed into action, completing the entire of the 2 weeks tasks by Friday morning, with Flat-Cap-Josh (product owner played by coach Josh) completely satisfied with the Acebook we had made for him.

Next week involves a different product manager who will give us further additional features to utilise, furthering our quest into rails and teamwork. I have massively enjoyed working with my team so far, and am really looking forward to another week of collaborative effort and head cracking sessions.

As always wish me luck!

David
Articles that made my Week #002
Tags: career, discuss, watercooler, todayilearned
Published: 2020-02-15 15:34:43

Hello again! I started this thing where I share five articles I read that meant a lot to me for some reason. This is last weeks..

{% link https://dev.to/malgamves/articles-that-made-my-week-001-k00 %}

This  week has been a little tougher for some reason. Random events, terrible scheduling, below par health and just a bunch of other things. Regardless here they are.



A lot of my week has been spent doing prep and planning for [DevCon Zambia](https://devcon.co.zm) (Yes, 6 months before). I've been trying to think about new ways to enable, speak about and promote collaboration in the community. Though not very related, this article by [Jeremy Meiss](https://dev.to/jerdog) gave me more than a few things to think about and consider. 

{% link https://dev.to/jerdog/broaden-your-community-and-developer-relations-reach-through-collaboration-413 %}



[Amrata Ranade](https://dev.to/amrutaranade) makes a return to the list, I'm really enjoying her content. I'm trying to get better at writing, I realized that I'm really good at writing tutorials but really suck at in-depth analysis and opinion pieces. I'm trying to get better and this did help me figure out what I was doing wrong. 

{% link https://dev.to/amrutaranade/how-to-write-a-blog-post-the-four-drafts-method-1k7b %}



Career wise, if you're like me and want to be intentional with what you learn and how that helps you grow then this article will be really good for you. I'm at a stage in life where I just want to work towards being incredibly good at something. This piece by [Foundsiders](https://dev.to/foundsiders) just spoke to that part of me and low-key reignited that flame to excel! Helps stay motivated with the job hunt at least.

{% link https://dev.to/foundsiders/when-is-the-perfect-time-to-move-on-as-a-developer-ofb %}


On a list of things I've been wanting to go in-depth with, Kubernates is a close second. [KodeKlouds](https://dev.to/kodekloud) idea of a Kubernates walk-through that is both engaging and informative was hard to ignore to be honest. Not to mention the Game Of Thrones vibes, if you're looking to learn too you should check it out. 

{% link https://dev.to/kodekloud/learn-kubernetes-by-playing-the-game-of-pods-43g4 %}


It's less than last week but hey, that's been my week - slow. How was your week??
Explain React Hooks Like I'm Five
Tags: explainlikeimfive, react
Published: 2020-02-15 15:33:51

I have worked with ReactJs on a previous project at a previous employer, but I never got to use React Hooks. Since that is the way React is going explain to me what it is!

Other questions you can answer are: 
- why is it important? 
- what is it replacing? 

*For extra high fives from a five year old, give me a code example I can understand!*

**Who will be my Clarissa and explain it all to me?**

![Clarissa Explains It All](https://media.giphy.com/media/14beEDDbL8FGIo/giphy.gif)
Daily Challenge #188 - Break camelCase
Tags: challenge
Published: 2020-02-15 15:30:30

---
title: Daily Challenge #188 - Break camelCase
published: true
series: Daily Challenge
description: Implement a function that will break apart camelCase words
tags: challenge
---
Write a function that will turn a camelCase word into a regular one by adding spaces and lower-casing the words. 

###Examples
`ccbreaker("camelCasing")`  ==  `"camel casing"`
`ccbreaker("garbageTruck")` ==  `"garbage truck"`

###Tests
`ccbreaker("policeSiren")` == `"police siren"`
`ccbreaker("camelCasingTest") == `"camel casing test"`

Good luck!

***
_This [challenge](https://www.codewars.com/kata/5208f99aee097e6552000148) comes from hakt on CodeWars. Thank you to [CodeWars](<https://codewars.com/>), who has licensed redistribution of this challenge under the [2-Clause BSD License](<https://opensource.org/licenses/BSD-2-Clause>)!_

_Want to propose a challenge idea for a future post?  Email **yo+challenge@dev.to** with your suggestions!_
10 aprendizados de uma desenvolvedora Junior
Published: 2020-02-15 15:19:49

1. FOCO. FOCO. FOCO.

2. Amamos o autocomplete do VSCODE.

3. Se acostume com uma linguagem. Pegue os jeitos dela até que sua sintaxe fique natural e automática.

4. Ser criativo não serve apenas para as artes. Acredite nos seus insights de código e vá fundo com eles.

5. Criar a mentalidade de resolver problemas.

6. Encontre padrōes para seguir.

7. Os códigos são organizados como um quebra cabeça, sendo que pode haver peças com varias outras partes. No final das contas, eu ainda estou em dúvida se comparo os projetos com um quebra-cabeça e/ou com uma árvore cheia de galhos e ramos.

8. Comportamentos, views e modelos são essenciais. Dividir sua mente em camadas é o core.

9. É tudo questão de relatividade. Inclusive, se o projeto vai bem. Mas com a equipe se ajudando, tudo dá certo. 

10. As branchs não são locais definitivos. Às vezes você pode ficar muito angustiado porque uma feature não está no lugar ou, simplesmente, nem aparece. Mas aí é algo que um git pull deve resolver para atualizar o projeto. Não criar branchs novas somente depois de att a master é um tiro no pé.

11. Olhar apenas para uma parte do código ou do problema. E olhar bem. 
"Esquecer todo o resto do projeto" (por um momento rs) e todos os outros bugs, mas focar com todas as suas forças apenas em um. E, não se desesperar com o resto. Eu diria que vale mais a pena ser menos ansioso, resolver um problema por vez do que não resolver nenhum. É assim na vida, é assim na programação.
Makers - Week 7
Tags: javascript, tdd, singlepage, frontend
Published: 2020-02-15 15:10:42

This week followed the traditional makers methodology and involved the same same but different for this week. Instead of using the wonderful world of JQuery, it now is traditional, bog standard javascript only. Raw, vanilla, no added sugar Javascript.

The theme of this week was to make a front end, single page app using only Javascript. A couple of weeks ago this would have seemed preposterous, but now it just about seemed plausible. To spice things up further, we had to create and use our own testing library, instead of using trusty old Jasmine. 

Again the cycle started, fear, followed by questioning my existence, followed almost immediately by that 'penny-drop' moment. It really, really was not so bad at all. After getting over the initial prospect of writing my own testing library, i quickly dived in, and realised the comparisons of the other testing libraries we had used so far, and although they were packaged up in different styles/syntax, they had the same principal. 

It was at this point that i had a pretty serious revelation once again. There is indeed method to the Makers madness! It sets you up, and then beats you down...all so the next beat down is not so bad. The rest of the week was spent building an app that takes and stores notes, but the entire page is on a single URL with no redirects. Again something i had explored in the MakersBnB challenge, so the week went by well with little drama, learning more and more about the asynchronous life of javascript. 

Next week is the dry run of the final project, it will involve a 2 week group project building a Facebook clone. This roller-coaster adventure never seems to stop!

As always wish me luck,

David
[Tutorial Git] git add: Adicionando arquivos no Git
Tags: git, add, braziliandevs, github
Published: 2020-02-15 15:00:03

## Iniciando o Git

Entre na pasta a qual você pretende fazer o versionamento e no terminal digite:

```
$ git init
```

Para inicializar o **Git**, caso ainda não o tenha feito.

- o símbolo **$** indica que você deve usar o **usuário comum** para fazer essa operação.

Desse modo a pasta **.git** será criada. É essa pasta que armazenará as imagens das versões do projetos criados.


## Entendendo o fluxo do Git

A partir daqui, vamos entender o fluxo do Git.

- **Working directory**: é onde estão seus arquivos que serão trabalhados. Aqui ficam os arquivos que ainda não receberam o comando *commit*.

- **Index** ou **Staging area**: é a sala de espera do Git. É aqui que ficam os arquivos que já receberam o comando *commit*.

- **Repositório**: é onde são guardados os seus *commits*.

![fluxo git](https://dev-to-uploads.s3.amazonaws.com/i/95gav9m139teejed019a.png)


## Git status

Vamos supor que o diretório está vazio. Então vamos verificar o estado atual do **git**. Assim:

```
$ git status
```

O retorno do terminal será algo semelhante a:

![retorno git status](https://dev-to-uploads.s3.amazonaws.com/i/pb5zm86wfoxb482yxin1.png)

Agora vamos criar dois arquivos nesse diretório:

```
$ touch index.html estilo.css
```

- o comando **touch** serve para criar arquivos no Linux.

Digitando novamente o comando ```git status```, temos:

![arquivos ainda não monitorados](https://dev-to-uploads.s3.amazonaws.com/i/wnk3liwr8hk2coeemssl.png)

Esses dois arquivos ainda não estão sendo monitorados pelo **git**.

No fluxo do git, temos:

![fluxo inicial do git](https://dev-to-uploads.s3.amazonaws.com/i/s5c2i18p7vzytrq1192i.png)

Como podemos perceber, esses dois arquivos ainda não receberam o *commit*. Por isso eles estão no **working directory**.


## Git add

Para adicionar os dois arquivos, **um de cada vez**, digite:

```
$ git add index.html
```

```
$ git add estilo.css
```

Ou para adicionar ambos **ao mesmo tempo**,

```
$ git add index.html estilo.css
```

Caso queira adicionar **todos os arquivos de um diretório recursivamente**; o que inclui seus subdiretórios e arquivos ou pastas ocultas,

```
$ git add .
```

Para adicionar todos os arquivos de uma **determinada extensão**. 

```
$ git add *.txt
```

- supondo que a extensão desejada seja **txt**.

Após incluir nossos arquivos, vamos verificar novamente o estado do **Git**.

> É recomendável usar sempre o ```git status``` após cada comando do git para saber onde se está.

![arquivos monitorados](https://dev-to-uploads.s3.amazonaws.com/i/qfrr6u0im7yl202zyhdm.png)

Observando o **fluxo** do git, temos:

![arquivos no index](https://dev-to-uploads.s3.amazonaws.com/i/99hl0ciot0ty8chhk3vn.png)

Aqui, estamos no **index (staging area)**; a *"sala de espera"* do git.

Abaixo um resumo das variações do comando **git add**:

![git add](https://dev-to-uploads.s3.amazonaws.com/i/0nb6hk4k1p3lkxsi9w9q.png)

É a partir daqui que poderemos realizar o **commit**.
Containerized Cookiecutter
Tags: docker, cookiecutter, python, devops
Published: 2020-02-15 14:30:59

<table>
<tr>
<td>
<a href="https://travis-ci.com/ckaserer/cookiecutter">
    <img src="https://travis-ci.com/ckaserer/cookiecutter.svg?branch=master" style="height: auto !important; width: auto !important; "/>
</a>
</td>
<td>
<img src="https://img.shields.io/docker/pulls/ckaserer/cookiecutter" style="height: auto !important; width: auto !important; "/>
</td>
<td>
<img src="https://img.shields.io/github/license/ckaserer/cookiecutter" style="height: auto !important; width: auto !important; "/>
</td>
<td>
<img src="https://img.shields.io/maintenance/yes/2020" style="height: auto !important; width: auto !important; "/>
</td>
</tr>
</table>
## What is cookiecutter?!

A command-line utility that creates projects from **cookiecutters** (project templates), e.g. creating a Python package project from a Python package project template.

* Documentation: [https://cookiecutter.readthedocs.io](https://cookiecutter.readthedocs.io)
* GitHub: [https://github.com/cookiecutter/cookiecutter](https://github.com/cookiecutter/cookiecutter)
* PyPI: [https://pypi.python.org/pypi/cookiecutter](https://pypi.python.org/pypi/cookiecutter)
* Free and open source software: [BSD license](https://github.com/cookiecutter/cookiecutter/blob/master/LICENSE)

---

## Cookiecutter as a Container

Wonderful, now let's use cookiecutter from a container instead of installing it on your machine.

### Base image
The image is based on [python:3](https://hub.docker.com/_/python) and can be build for any architecture supported by python:3.

### Flavors
The cookiecutter container image is available in 2 flavors
* **latest** is build daily via travis and if the base images changes
* **version** during each travis build the current cookiecutter version is validated and the image is tagged accordingly starting with `1.7.0`. More versions can be found on [hub.docker.com/r/ckaserer/cookiecutter](https://hub.docker.com/r/ckaserer/cookiecutter).

### Requirements
* Bash
* docker

---

## Getting started

To process any cookiecutter template you can execute  

```shell
docker run --rm -it -v $(pwd):/cookiecutter ckaserer/cookiecutter TEMPLATE
```

Or if you like the a more convinient approach you can put following lines in your bashrc

```bash
# cookiecutter
function cookiecutter () {
  local command="docker run --rm -it -v $(pwd):/cookiecutter ckaserer/cookiecutter"
  echo "+ ${command} $@" && ${command} $@
}
readonly -f cookiecutter
[ "$?" -eq "0" ] || return $?
```

and after sourcing your bashrc again to load the newly added function into our shell via 

```bash
source ~/.bashrc
```

you can process your template just like you would when installing cookiecutter on your machine via

```
cookiecutter TEMPLATE
```

---

### Source 
* [cookiecutter.readthedocs.io/en/latest/README.html](https://cookiecutter.readthedocs.io/en/latest/README.html)
* [github.com/ckaserer/cookiecutter](https://github.com/ckaserer/cookiecutter)
* [hub.docker.com/r/ckaserer/cookiecutter](https://hub.docker.com/r/ckaserer/cookiecutter)
3-Step RDP Honeypot: Step 3 | Build the Bot
Tags: security, forensics, cybersecurity
Published: 2020-02-15 20:30:56

---
title: 3-Step RDP Honeypot: Step 3 | Build the Bot
published: true
date: 2020-02-15 20:26:44 UTC
tags: security,forensics,cybersecurity
canonical_url: https://medium.com/@chapindb/3-step-rdp-honeypot-step-3-build-the-bot-c6552fab1740
---

[![](https://cdn-images-1.medium.com/max/600/1*41EPHXSqGYN8v5j5hAeYZw.png)](https://medium.com/@chapindb/3-step-rdp-honeypot-step-3-build-the-bot-c6552fab1740?source=rss-3eefa9ecbc14------2)

In this mini-series, we have setup our honeypot, extracted valuable features from our PCAP data, and now we operationalize this intel.

[Continue reading on Medium »](https://medium.com/@chapindb/3-step-rdp-honeypot-step-3-build-the-bot-c6552fab1740?source=rss-3eefa9ecbc14------2)
Yuk membaca buku
Tags: book, read, habit
Published: 2020-02-15 14:11:30

---
title: Yuk membaca buku
published: true
description: Mari kita membaca buku
tags: book, read, habit
series: Habit
---

Zaman sekarang ini semua kegiatan serba dilakukan digital. Belanja digital, cari alamat digital, cari referensi jurnal digital. Segalanya serba digital. Segalanya bisa dilakukan dengan smartphone.

Namun, tidak dengan membaca buku.

Kok bisa? Bukankah membaca buku bisa juga dilakukan dengan membaca PDF?

Ternyata sih nggak. Soalnya, membaca buku berbeda dengan membaca PDF. Menatap lembaran buku berbeda dengan menatap layar HP. Berikut beberapa perbedaannya:

- Menatap layar HP dengan lama, membuat mata lelah
- Kalau di HP, orang cenderung untuk menscroll dengan cepat supaya cepat selesai ke endingnya
- Akhirnya, kalau membaca di HP, susah khatamnya. Kalau khatam pun, pemahaman akan kurang jika dibandingkan dengan yang membaca di lembaran-lembaran buku

# Manfaat membaca buku

- Melatih fokus
- Melatih otak supaya terbiasa membaca teks-teks panjang
Java ecosystem's 10 New Best Practices for the 2020s 
Tags: java, backend, server, database
Published: 2020-02-15 13:10:13

I (Vic Cekvenich) published a 4 page article 'Java ecosystem's 10 New Best Practices for the 2020s',
 the full 4 page article is here: https://intuition-dev.github.io/SNX/#/README

###### Summary: There are some radical differences in today's Java ecosystem relative to the prior decade. The listed difference add up to a difference in kind, not a difference in degree. We have achieved an order of magnitude improvement with the new adjustments in our development. The list has 10 points in 4 pages, including code examples.

Here is the TOC:

1: Starter enterprise cloud software architecture<br/>

2: Scala, Kotlin, Groovy<br/>

3: Cloud, eg.: S3<br/>

4: DB in RAM Memory<br/>

5: Tools: Gradle.build, Jitpack, Jitpack CI/CD, Cloud IDE <br/>

6: JAR for Services/'REST', with Reactive Streams <br/>

7: Stress/Load testing <br/>

8: Client side API, Client side ViewModel <br/>

9: Switch testing focus to: E2E testing <br/>

10 SSR (Server Side Rendering) with Pug<br/>



I you'd like to read the entire article, please click https://intuition-dev.github.io/SNX/#/README
3-Step RDP Honeypot: Step 2 | Operationalize PCAPs
Tags: security, forensics, cybersecurity
Published: 2020-02-15 20:30:33

---
title: 3-Step RDP Honeypot: Step 2 | Operationalize PCAPs
published: true
date: 2020-02-15 20:03:14 UTC
tags: security,forensics,cybersecurity
canonical_url: https://medium.com/pythonic-forensics/3-step-rdp-honeypot-part-2-operationalize-pcaps-2abb7ba2649a
---

[![](https://cdn-images-1.medium.com/max/1241/1*mqJBC9mjncnKLwxbbVTa1A.png)](https://medium.com/pythonic-forensics/3-step-rdp-honeypot-part-2-operationalize-pcaps-2abb7ba2649a?source=rss-3eefa9ecbc14------2)

With our RDP Honeypot PCAP data captured, let’s analyze it. We will leverage Moloch to assist us with extracting valuable PCAP features.

[Continue reading on Pythonic Forensics »](https://medium.com/pythonic-forensics/3-step-rdp-honeypot-part-2-operationalize-pcaps-2abb7ba2649a?source=rss-3eefa9ecbc14------2)
3-Step RDP Honeypot: Step 1 | Honeypot Setup
Tags: security, forensics, cybersecurity
Published: 2020-02-15 20:30:07

---
title: 3-Step RDP Honeypot: Step 1 | Honeypot Setup
published: true
date: 2020-02-15 20:02:31 UTC
tags: security,forensics,cybersecurity
canonical_url: https://medium.com/@chapindb/3-step-rdp-honeypot-part-1-honeypot-setup-b5f01af19f4d
---

[![](https://cdn-images-1.medium.com/max/1276/1*EVx4erBmFzY9ux3NvP-iyQ.jpeg)](https://medium.com/@chapindb/3-step-rdp-honeypot-part-1-honeypot-setup-b5f01af19f4d?source=rss-3eefa9ecbc14------2)

Step 1 in our process is creating our Honeypot service and start capturing the request data. This brief post dives into building the most…

[Continue reading on Medium »](https://medium.com/@chapindb/3-step-rdp-honeypot-part-1-honeypot-setup-b5f01af19f4d?source=rss-3eefa9ecbc14------2)
3-Step RDP Honeypot: Step 0 | Introduction
Tags: security, forensics, cybersecurity
Published: 2020-02-15 20:29:38

---
title: 3-Step RDP Honeypot: Step 0 | Introduction
published: true
date: 2020-02-15 20:01:56 UTC
tags: security,forensics,cybersecurity
canonical_url: https://medium.com/@chapindb/3-step-rdp-honeypot-part-0-introduction-7b572d563e83
---

[![](https://cdn-images-1.medium.com/max/1203/1*4dKCu0aaL2aUvmUhrBhXvQ.png)](https://medium.com/@chapindb/3-step-rdp-honeypot-part-0-introduction-7b572d563e83?source=rss-3eefa9ecbc14------2)

Easily set up your own RDP Honeypot, capture bots scanning for vulnerable systems, and operationalize the data to help the InfoSec…

[Continue reading on Medium »](https://medium.com/@chapindb/3-step-rdp-honeypot-part-0-introduction-7b572d563e83?source=rss-3eefa9ecbc14------2)
Unnessessary Censorship ! has the world gone mad ?
Tags: bigbrotherishere, censorship, worldgonemad
Published: 2020-02-15 12:08:53

what is one of the most useful sites on the web ever ? how about archive.org or waybackmachine.org ? however its INTERESTING that many content protection proxys BLOCK IT because of 'adult' content ! 

so what can you do if your work or education establishment are blocking archive.org !  

simples ! i thought lets tether to my mobile but NO ! my mobile provider giffgaff are also blocking archive.org so you have to goto your [gg profile](https://www.giffgaff.com/profile/details) and enter your DRIVING LICENCE number to  enable 'adult' content ! FINALLY you can access THE HISTORY OF THE WEB 

moral : DOMAINNAME blocking is NOT granular enough

#bigbrotherishere #firstworldproblem #worldgonemad
Daily Developer Jokes - Saturday, Feb 15, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-02-15 13:00:11

---
title: "Daily Developer Jokes - Saturday, Feb 15, 2020"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Saturday%2C%20Feb%2015%2C%202020"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1259ab8700f.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q___: Why was nobody given food at the developer conference?

___A___: It was a serverless function!
 -->
CRMin2020andBeyond
Tags: crmin2020andbeyond
Published: 2020-02-15 12:39:20

The long-run has come at least it has from the area of customer relationship management or CRM program, among the quickest growing kinds of company programs. We’re going into the age of smart, integrated CRM, and also the ongoing future of CRM is much more intelligent.<a title="CRM in 2020 and Beyond " href="https://www.marketing2business.com/crm-look-like-in-2020/">CRM in 2020 and Beyond </a>