Executando verificação de segurança...
33

Pitch: O terceiro e o quarto mês do Curto

Oi, aqui é o Vitor, como vocês ja sabem, quero mostrar com muita transparência como foram os terceiro e quarto meses do Curto, que completou quatro meses de vida.

Você pode acompanhar os outros posts que fiz sobre a construção da plataforma aqui:

O aumento no uso

A quantidade de redirecionamentos realizados no Curto deu um BOOM absurdo, passando de incríveis 25K de cliques para 319K e aumentando (um aumento de 11.760% 🚀), fazendo com que eu tomasse uma decisão importante, que foi apressar a migração do registro e consulta de cliques de um banco de dados em documento (MongoDB) para um banco de dados em colunas (Tinybird), e essa migração foi finalizada na última semana, e com isso, minha expectativa é não precisar ter que se preocupar com a quantidade de dados e retenção dos mesmos nos próximos 3 anos.

O racional por trás da migração

O grande valor do Curto para o mercado está no grande volume de dados armazenados a respeito da performance de cada um dos cliques criados. Posso facilmente dizer que é muito provável que para cada link encurtado, exista pelo menos o registro de 500 cliques no mesmo, por isso que hoje eu tenho somente 1.500 links encurtados, mas 300 mil cliques registrados, tendo uma razão atual de 207 cliques por link encurtado.

E quando falamos em grande escala, é preciso saber responder uma importante pergunta a respeito do produto que estamos desenvolvendo: Qual desses dois tipos "OLAP (Online Analytical Processing) ou OLTP (Online Transactional Processing) ele se encaixa mais?"

Ter a resposta para essa pergunta pode nos ajudar muito no desenho de uma arquitetura adequada para o nosso tipo de sistema.

OLTP (Online Transaction Processing)

Um sistema OLTP é caracterizado pela capacidade de lidar com transações em tempo real com confiança, consistência e eficiencia.

O principal objetivo de um sistema OLTP é garantir consistência em cada uma das transações efetuadas por ele, mesmo que simultâneas, tornando-se uma ótima opção para sistemas que efetuam transações bancárias, processamento de pedidos, envio de mensagens, registros de estoque, pois cada uma dessas operações precisam ser altamente precisas para não gerarem inconsistências perigosas, como estoque negativo, saldo negativo, pedidos duplicados e etc.

Mas não se limitando a isso, uma transação pode ser considerada qualquer tipo de operação que precisa ter a resposta de que foi bem sucedida, ou não, de forma consistente e síncrona, ou seja, se eu realizei uma transação, o sistema deve me responder se ela foi feita ou não no momento que eu a realizo (síncrono) e não através de uma notificação (assíncrono).

Deu pra entender? Se sim, ótimo, porque este não é o caso do Curto.

OLAP (Online Analytical Processing)

Um sistema OLAP é caracterizado pela capacidade de performar análises detalhadas, interativas e multidimensionais em um grande volume de registros sem aumentar latência.

O principal objetivo de um sistema OLAP é fornecer uma visão rápida, flexível de grandes conjuntos de dados, comumente utilizado para replicar dados importantes de um sistema OLTP e facilitar a tomada de decisões baseado nas análises realizadas.

Como o OLAP é otimizado para leituras de um grande volume de dados, a sua desvantagem é que sua consistência é eventual, ou seja, mesmo que eu insira um dado em um banco de dados ou sistema do tipo OLAP, o dado é propagado assim que possível mas não imediatamente, fazendo com que um atual consulta retorne o último valor disponível, e não o mais atual.

É fundamental que o Curto permita com que os usuários tenham visibilidade sobre os milhares de cliques que seus links teriam sem uma alta latência, mesmo que isso signifique alguns segundos de "delay" e por isso, OLAP caiu como uma luva para o próximo passo do Curto.

Você pode ver mais sobre OLTP vs OLAP nesse post da AWS, que eu recomendo a leitura.

Arquitetura antiga X Arquitetura nova

No post Pitch: como eu desenvolvi o módulo de analytics do meu micro-saas eu mostrei o seguinte desenho, que representa como era a arquitetura para armazenar os dados de um "clique" no Curto:

old curto analytics

E agora, com a migração ao Tinybird, passa a ser assim:

new curto analytics

Onde todo o processamento de salvar os dados dos "cliques" passa a ser assíncrono em uma fila, que eventualmente vai ingerir esse dado no Tinybird, tornando ele disponível para o cliente.

Feature nova: Micro-Sites

Lancei uma versão (não tão estável) dos micro-sites no Curto, um micro-site é uma alternativa aos "Links na Bio" presentes na web, como Linktree, allmylinks, e outros.

Foi um desafio e tanto desenvolvê-lo e tive bastante trabalho pra fazer uma experiência bacana, mas que precisa de muitos ajustes.

Inclusive, dá uma olhada nessa página bonitona de análise de acessos:

micro site analytics preview

Se você ficou interessado, dá uma olhada la na plataforma e me dá um feedback do que você achou!

Inclusive, segue a página que eu criei pra compartilhar meus links: https://curto.io/m/medeiro.tech

Próximos passos

Tive dois meses bem dificeis pessoalmente, que acabou fazendo com que o Curto desacelerasse em seu crescimento, mas agora, volto com força total pra conseguir desenvolver o "momento WOW" do Curto, que tenho certeza, que pode acontecer mais cedo do que eu imaginava.

É isso pessoal, espero que algo do que eu tenha escrito tenha agregado à você! Se você tem alguma sugestão ou quer falar comigo de alguma forma, entre em contato comigo em algum desses canais:

E-mail: [email protected]
LinkedIn: https://medeirol.ink/linkedin
GitHub: https://medeirol.ink/github
Instagram: https://medeirol.ink/instagram
YouTube: https://medeirol.ink/youtube

5

Vou deixar meu depoimento como beta tester e usuário pagante da plataforma.

Meu caso de uso:
Eu sempre no canal estou fazendo alguns testes A/B para entender a aceitação do público em um determinado assunto, meu ponto de partida é sempre o https://chorume.dev onde tenho um linktr.ee com coisas interessantes.

O linktr.ee tem algumas estatíscas de cliques, também é possível compartilhar um link interno, porém a experiência não é tão boa...

Quando o usuário clica no link, ele é direcionado para o "microsite" e um overlay é exibido informando onde o usuário deve clicar, são milisegundos, mas isso é prato cheio para churn 🥲

é aí que o curto entra 🎉 ...

Eu encurto meus links, esses mesmos links são enviados no linktr.ee, são compartilhados durante as lives no chat do YT e da Twitch e também através de stories.

Graças as estatísticas do curto eu consigo filtrar a origem e entender qual canal a conversão de clique é maior, qual dia da semana converte mais, etc...

Tudo muito simples de analisar, zero problemas de instabilidade (presenciado ou reportado)

Eu poderia desenvolver? Poderia... Mas o custo é tão acessível e tudo funciona tão bem que não vale a pena, prefiro gastar meu tempo bebendo e andando de moto.

1

Cara, você é o exemplo perfeito de persona ideal para o curto! A pessoa que usa o link em muitas redes sociais, foruns e afins e quer saber o resultado da campanha sem muito problema.

Muito obrigado pela confiança de sempre e estou sempre dando valor pros feedbacks que você traz, são muito valiosos!

Valeu meu mano!

1
1

Hoje o MRR não é tão alto, estou em 288 de MRR e aumentando pouco a pouco. Por enquanto isso não é um problema pois meu custo é 0 atualmente, então por enquanto só estou acumulando receita haha.

1