Accueil > Skills > Dicionário básico para se comunicar com programadores
Dicionário básico para se comunicar com programadores
Você sabe o que é um programador Full-Stack? Já ouviu alguém falando que tem que “comitar” o código? Confira estes e outros termos no nosso dicionário básico de programação pra você não passar vergonha na frente de desenvolvedores ;)
Índice de conteúdo
Você sabe o que é um programador Full-Stack? Já ouviu alguém falando que tem que “comitar” o código? – Um dicionário de programação
Preparamos um pequeno dicionário para quem pensa em programar ou quer ser capaz de conversar fluentemente com um programador sem provocar sua ira e impaciência:
Então, vamos lá:
1. API: Application Programming Interface ou, na língua do Chimbinha, “interface de programação de aplicativos“, é uma “er…” interface que faz… exatamente o que o nome diz: permite a programação de aplicativos! Não entendeu? No seu bairro deve ter uma pizzaria onde você pode ir e comprar uma pizza, certo? Mas você também pode telefonar e “programar” o cozinheiro para fazer a mágica dele, fabricar uma pizza e levar até sua casa, certo? Então, de maneira semelhante, as startups oferecem métodos alternativos para acessarmos os serviços que elas oferecem. Por exemplo: eu posso ir no site do Google Maps e fazer uma busca, ou posso fazer essa mesma busca no app do Uber que usa a API do Google Maps (pensa no telefone da Pizzaria, só que operado por robôs) para acessar as informações do Google e disponibilizá-las para você.
2. Algoritmo: maneira chique de falar passo-a-passo. Sabe aquela receita de bolo que a sua avó seguia? Então, aquilo era algoritmo em sua forma mais deliciosa.
3. Linguagens de alto nível: quando a gente fala que uma linguagem é de alto nível, isso não tem nada a ver com meritocracia, gosto musical nem hierarquia social! As linguagens de programação trabalham em conjunto e em diferentes níveis: aquelas que atuam mais próximas do hardware são chamadas de baixo nível e as que têm um nível de abstração elevado, mais próximas à linguagem humana e com alto nível de abstração (sacou?) são chamadas de alto nível. Ver: Baixo nível.
4. Back-End: É a parte da web que fica invisível para o usuário final. Programadores Back-end são os responsáveis por criar toda a magia que acontece “por trás dos panos”, toda vez que você usa uma aplicação. São inúmeras linguagens de back-end, sendo JavaScript, Ruby, Python e PHP as mais usadas por empresas de tecnologia, hoje. Ver: Back-End e Full-Stack.
5. Linguagens de baixo nível: No mundo da programação “baixar o nível” não é necessariamente algo ruim! Linguagens de baixo nível são aquelas que “falam” diretamente com o processador sem precisar (ou precisando pouco) de adaptação. Simplificando, podemos dizer que são sequências de instruções binárias entendidas pelo processador do computador e por alguns poucos humanos como Neo, Morpheus e toda aquela turma que conseguiu escapar da Matrix.
6. Bug: Também conhecido como “dar pau”, é aquela coisa injusta que acontece por culpa do computador (e nunca do programador), fazendo com que os programas não se comportem exatamente da maneira esperada.
7. Chatbot: É como se fosse aquele atendente automático da Net só que em versão chat que, por algum motivo desconhecido, ganhou fama de “cool” e passou a ser visto pelos leigos como algo super tecnológico e de outro planeta.
8. Codar:
9. Código elegante: aquele código que consegue, em poucas linhas ou de maneira simples, resolver problemas complexos. Também se caracterizam por serem limpos, indentados corretamente e bem documentados. Uma boa maneira de descobrir se um código é elegante seria observando se o desenvolvedor que está lendo-o não está sofrendo ímpetos de se transformar em um assassino sádico que mata lentamente apenas por prazer.
10. Comitar: É tipo um “save” tridimensional. Imagina que você está trabalhando em um projeto com centenas de arquivos e que, na hora de salvar, você pudesse guardar não apenas as mudanças feitas naquele arquivo, mas também as mudanças feitas em TODOS os arquivos do projeto, assim como saber quais arquivos foram modificados, adicionados ou apagados. Seria incrível, né? Pois é exatamente isso o que o Git faz (confira verbete!)! Quando um dev diz que “comitou”, ele quer dizer que já terminou aquela parte do trabalho e o estado do projeto está “salvo” no Git. Ver: Git.
11. Diretório: É a palavra que seu tio programador old-school usa para se referir às pastas do seu computador.
12. Debug/”debugar”: processo lento, doloroso e carcinogênico de retirar bugs de uma aplicação.
13. Foo: “foo” está para o desenvolvedor assim como “trem” está para o mineiro.
14.Força bruta: Resolver um problema usando o poder de processamento infinito do computador. É o contrário de elegância.
15. Funfa: Código que funciona (mesmo que a gente não saiba o porquê).
16. Framework: Pensa no pão-de-forma: uma porção de carboidratos pré-moldados que pode servir de base a várias aplicações alimentícias. Com um pão-de-forma, você pode criar desde clássicos da “larica” de geladeira vazia como o pão-de-forma com ketchup e maionese até bruschettas chiques, passando pela torta fria de pão-de-forma e frango da sua tia, até chegar aos universais e deliciosos misto-quente e PB&J. Podemos dizer que o pão-de-forma é um framework alimentar: oferece as funcionalidades básicas para qualquer aplicação alimentar (exceto as low-carb): e a cara, o formato e as características finais da aplicação, quem decide é o seu criador. (Sério, Fernando Americano, vc é a melhor pessoa.)
17. Front-End: É a parte da web que você vê. Desenvolvedores Front-End são aqueles que se preocupam com a experiência do usuário (UX) e com a interface (UI ou GUI), trabalhando principalmente com HTML, CSS e JavaScript. Ver: Back-end e Full-Stack.
18. Full-Stack: o cara que joga nas 11. São chamados Full-stack developers os devs que entendem tanto de front quanto de back-end. É aquele cara que compõe, grava, produz, mixa e ainda cria a capa do disco. Ver: Front-end e Back-end.
19. Git: Ferramenta de controle de versão de arquivos que permite o trabalho colaborativo sem a necessidade de ficar enviando e renomeando arquivos por e-mail, além da possibilidade de saber, para cada alteração: quem fez, quando, onde (em que arquivos e linhas de código) e por quê. Estamos em 2019 e ainda tem gente que fica naquele vai-e-volta de arquivo de Word por e-mail.
20. Hardware: Como diz o ditado, hardware é aquilo que a gente chuta. Software é aquilo que a gente xinga.
21. Indentação: São os recuos no texto de um código usados para organizar visualmente, melhorar a leitura e proteger a sua vida caso a pessoa lendo o seu código seja um psicopata assassino. Tipo regras da ABNT, mas com consequências mais graves.
22. Internet vs. Web: Muita gente pensa que Internet e web são a mesma coisa. Internet, a famosa “Rede mundial de computadores” nas palavras do William Bonner, é a infraestrutura de cabos, servidores, roteadores, etc. por onde transitam diversas aplicações: seus e-mails, os dados enviados e solicitados por seus apps e as páginas web. As páginas Web (isso aí que está rodando dentro do seu browser) são apenas uma das diversas aplicações que podem rodar usando a estrutura da Internet.
23. POO (Programação Orientada a Objetos): Steve Jobs já deu aquela que talvez seja a melhor explicação sobre o assunto! Com a palavra, Ele:
Objetos são como pessoas. Eles estão vivendo, respirando, realizando ações que têm conhecimento, além de possuírem memória dentro deles para que possam se lembrar de coisas. E ao invés de interagir com eles em um nível muito baixo, você interage com eles em um nível muito alto de abstração, como estamos fazendo aqui. Aqui está um exemplo: se eu sou seu objeto de lavanderia, você pode me dar sua roupa suja e enviar-me uma mensagem que diz: “Você pode pegar minhas roupas lavadas, por favor.” Acontece que eu sei onde fica a melhor lavanderia em San Francisco. Eu falo inglês e tenho dólares nos bolsos. Então, eu saio, chamo um táxi e digo ao motorista para me levar a este lugar em San Francisco. Eu pego suas roupas lavadas, entro novamente no táxi e volto aqui. Eu lhe entrego suas roupas limpas e digo: “Aqui estão suas roupas limpas”. Você não tem ideia de como eu fiz isso. Você não tem conhecimento do lugar da lavanderia. Talvez você fale francês e não pode sequer chamar um táxi. Você não pode pagar por não ter dólares no bolso. Mas eu sabia como fazer tudo isso. E você não tem que saber de nada disso. Toda essa complexidade estava escondida dentro de mim e fomos capazes de interagir em um nível muito alto de abstração. Isso é o que são objetos. Eles encapsulam a complexidade e as interfaces para que esta complexidade esteja em alto nível (de abstração).
24. POM (Programação Orientada à Modinha): doença viral espalhada pelo Reddit, conferências e “Campus Parties”, onde desenvolvedores são levados a fazer escolhas ilógicas sobre tecnologia e arquitetura de seus projetos, baseados em hype e buzzwords.
25. POG (Programação Orientada à Gambiarra): Paradigma avançado de “programação criativa”, onde nenhuma solução é precária o suficiente para ser considerada permanente. Não ver: Refatorar.
26. Refatorar: Reescrever um pedaço de código para cumprir o mesmo objetivo, mas de forma mais simples ou elegante. Ver: Elegante.
27. Software: aquilo que a gente xinga. Ver: Hardware.
28. “Stack Overflow”: Corporação de ofício onde os desenvolvedores-aprendizes vão para obter conhecimento, enquanto são humilhados e maltratados pelos desenvolvedores-mestres.
E aí, acha que aprendeu? Então, aqui vai um desafio: baixe o currículo do Le Wagon e me diga se conseguiu entender tudo!
A Le Wagon prepara sua mente para o desenvolvimento das habilidades essenciais para alcançar o sucesso. Escolha sua cidade e faça sua inscrição em nosso curso de Desenvolvimento Web em São Paulo, Rio ou Online e comece sua jornada de conhecimento.