Como aprende uma nova linguagem?
Já conhecia uma linguagem musical? Eu também não conhecia abaixo vou mostrar um pouco sobre.
Mas o foco aqui é como aprendo uma nova linguagem?
Primeiramente, é mais fácil quando já se sabe ao menos duas linguagens, mas ai pode parecer um paradoxo 'kkk Mas calma lá....
O erro é começarmos a segunda linguagem como se fosse a primeira, deixando de aproveitar todo o conhecimento adquirido.
A maioria das linguagens possuem um estilo similar, que acabamos chamado de c-like que é uma sintaxe parecida com C.
O que difere entra uma e outra é decisões técnicas. E conhecer as decisões técnicas no início é praticamente inútil, melhor seria nos focar em ser produtivos.
Ok, e como deveríamos fazer?
Pega algum projeto que já desenvolve na linguagem X e replica em Y.
Seria como copiar e colar, porém com o adicional de que precisamos converter para algo equivalente na nova linguagem.
----------- Abaixo fica mais extenso o post.
Bem eu teria acabado o post aqui, porém eu senti que precisava de um exemplo.
Então eu escolhe essa nova linguagem diferente do que você já viu! Essa linguagem chama strudel que é uma linguagem musical (acho que é isso).
Cai sem querer no playground dessa linguagem, então decidi apertar o play e começou o badunts 🎵 'kkk
O código era o seguinte (Ouvir):
$: s("[bd hh oh bd]").bank("tr909").dec(.5)
Então modifiquei pra quela música famosa e simples do Queen (Ouvir):
$: s([lt, mt, bd]*2 <sd, rim>).fast(2.5)
Eu não sou música, nem conheço a linguagem e em 1h eu fiz isso.
Fiz o que expliquei acima: Peguei uma música que já conhecia e tentei replicar. E para que serve os colchetes aqui? É tipo um array?
Sim, porém tem um comportamento... Além de agrupar, vai executar em uma sequência contínua, e não como pedaços, exemplo:
bd [lt mt bd]
~
bd [lt mt bd]
~
bd [lt mt bd]
~
bd [lt mt bd]
~
O contrário seria:
bd <lt mt bd>
~ ~
bd [lt mt bd]
~ ~
bd [lt mt bd]
~ ~
Operador , vírgula serve para executar o som do grupo ao mesmo tempo.
Operador * Asterisco, confesso que não compreendi completamente, as vezes ele duplica a execução/grupo, porém em alguns momentos ele só acelera a execução. por isso estou usando o método fast() para acelerar ao invés do operador *
E como aprendi, as batidade lt, mt e etc... eu peguei da doc e exemplos e tentei replicar, removi, adicionei e fui testando pra ouvir como ficava o som.
Quis continuar, e mudar o som do tambor (sei lá o nome) da bateria para o prato.
E na doc explica, queria ter feito Lengo Tengo, com o bank("gm_acordion"), porém é complexo demais fazer isso 'kkkk
Pra mim foi suficiente pra testar algo novo, com isso eu quero mostrar que independe da tech, o que importa é como você vai estruturar o seu aprendizado. Adiciona abaixo o que mais ajuda aprender uma nova tech/linguagem.

blog: https://andrelz.invdual.com/
YT: https://www.youtube.com/@mais.foco42
IN: https://www.linkedin.com/in/andreluizss/
TN: https://www.tabnews.com.br/Andreldev
X: https://x.com/luizdidev