Helplate é uma ideia que nasceu a dois anos atrás, e inicialmente se chamava helpme. Escrevi um arquivo falando da ideia, que chamava-se helpme, pois é inspirada em situar a pessoa na sua atividade e contexto. Eu estava trabalhando e pensando sobre quantos aspectos, muitas vezes são esquecidos de avaliar ou de se especificar por que simplesmente foram esquecidos.

As empresas estão cheias de experiências, e lembram de péssimas experiências na integração de pessoas novas no roteiro de atividades do cotidiano.

A primeira linha do arquivo mencionado anteriormente diz:

Todos os dias fizemos repetidamente várias tarefas como esta:

Esta qual?

No meu caso podem ser tarefas de desenvolvimento, escrever no blog, fazer um orçamento, criar um projeto etc.

Cada tarefa, é composta por diversos passos, diversas variáveis que podem fazer com que você não realize-a com sucesso. Quando você faz uma vez com sucesso, logo sabe como fazer e aprende a receita. Quando erra, procura não seguir mais aquele caminho do erro.

Durante muito tempo me perguntei como poderia criar uma lingugem simples de ajuda que também pudesse realizar a tarefa. O que esta “ajuda” precisava saber era como a tarefa era executada, e se faltasse alguma informação, esta própria ajuda poderia lhe pedir explicações sobre o assunto.

Helplate é uma ideia de criar uma linguagem para auxiliar o preenchimento de uma template interativa e humanizada. Inicialmente cobre apenas um documento, mas é possível “programar” ela. A primeira programação a ser executada, é o levantamento das variáveis ainda não descobertas.

Esta template tem como objetivo, sugerir a estrutura de um documento, e questionar sobre as variáveis do contexto.

O exemplo a seguir, mostra a criação de um novo post no meu blog, iniciando pelo uso da template.

jonatas@xonatax-mac: helplate $ ./helplate newpost title='Helplate welcome aboard!'

Após isso, a template irá pedir se quero adicionar alguma tag:

Tags dividido por ‘,’

Então preencho:

helplate, template, ruby, liquid

Então a template pede:

Inicie seu post assim

E eu digito:

Helplate é uma ideia que veio para ficar

Então a template pede:

Deseja adicionar algum código fonte

Digito enter sem escrever nada.

Então a template é preenchida conforme as respostas dadas por mim exibindo o seguinte post:

---
  layout: post
  title: Helplate welcome aboard!
  categories: ['helplate', 'template', 'ruby', 'liquid']

---

# Helplate welcome aboard!

Helplate é uma ideia que veio para ficar

<div><pre class="prettyprint">
$ ./helplate newpost title='helplate welcome aboard'
</pre></div>

As perguntas foram feitas e a estrutura foi definida através da seguinte template:

jonatas@xonatax-mac: helplate $  cat newpost
---
layout: post
title: \{\{ title }}
categories: \['\{\{ categories \| join glue: ', ' }}'\]
---

# \{\{ title }}

\{\{ description }}

help:
description: Inicie seu post assim
title: Qual é o título
categories: Tags dividido por ','

A template vai até a linha em que começa com a palavra help:, e neste local, são descritos as variáveis anteriormente utilizadas. O interessante desta descrição é tornar a template menos confusa, e resolver o problema dos passos iterando sobre cada uma das variáveis do contexto.

Trabalhando com uma ajuda útil, é possível gerar documentos específicos e ao mesmo tempo padrõnizar os documentos. A descrição de cada variável pode ser simplesmente colocada como:

bem vindo ao mundo \{\{ nome }}
help:
nome: Digite seu nome

O protótipo está no ar em http://github.com/jonatas/helplate, quem puder ajudar, acredito que a ideia pode evoluir!


Share → Twitter Facebook Linkedin


Hello there, my name is Jônatas Davi Paganini and this is my personal blog.
I'm developer advocate at Timescale and I also have a few open source projects on github.

Check my talks or connect with me via linkedin / twitter / github / instagram / facebook / strava / meetup.