5 à Sexta 🚀 – a nova newsletter cá do sítiohttps://brunobrito.pt/wp-content/uploads/2016/06/5-a-sexta.png620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/06/5-a-sexta.png
Nos últimos tempos tem sido complicado dedicar o tempo que desejo ao blog, devido às várias ocupações profissionais que possuo. O meu objectivo com este projecto sempre foi chegar à 6ª feira de cada semana com um artigo escrito, objectivo esse que não está a ser de todo alcançado.
Apesar de ter vários artigos alinhados para o Verão, altura em que deverei estar um pouco mais folgado, optei por começar outro projecto que exige menos de mim e que me permite manter em contacto com a comunidade de Marketing Digital e Web Development – a Newsletter “5 à Sexta 🚀”.
Uma newsletter? Qual é a ideia?
Este será, no fundo, o meu cantinho de content curation. Todos os dias me cruzo com informação super-interessante (uma nova app, um novo tutorial, uma entrevista que vale a pena ler e reler) que gostaria de partilhar com os leitores deste blog.
Sinto, no entanto, que existe demasiado ruído nas redes sociais para divulgar esses conteúdos. Ao mesmo tempo, a nível pessoal tenho verificado que o e-mail se tem tornado (cada vez mais) a melhor forma de me manter a par dos acontecimentos da indústria, muitas vezes através deste tipo de weekly digests.
Criar uma newsletter é naturalmente mais complexo do que partilhar meia-dúzia de links no LinkedIn ou no Facebook, mas é sem dúvida o caminho que quero seguir (até porque sou fã do E-mail e do controlo que este permite)!
O que posso esperar desta newsletter?
Como o nome indica, todas as sextas receberás uma nova newsletter com 5 links que serão, no fundo, os melhores conteúdos com que me cruzei durante a semana.
Pertencerão a uma destas 3 categorias, as principais do blog:
Apps;
Web Development;
Marketing Digital.
A primeira edição é já esta sexta, dia 1 de Julho de 2016. Nesta página ficarão também arquivadas todas as edições.
No próximo artigo, falarei um pouco mais sobre o processo a nível técnico. Por agora, podes inscrever-te no formulário (à direita em desktop, e em baixo na versão mobile).
Como passar para HTTPS – blog WordPress com DigitalOcean (e ServerPilot)https://brunobrito.pt/wp-content/uploads/2016/06/como-criar-certificado-ssl.png620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/06/como-criar-certificado-ssl.png
Se procuras instalar um certificado SSL (ou Secure Sockets Layer) no teu blog WordPress alojado no DigitalOcean, este tutorial é para ti.
Os certificados SSL têm sido alvo de bastante conversa ultimamente; para além de conferirem credibilidade a um site (especialmente se se tratar de uma loja online ou de uma webapp), apresentando o habitual cadeado ao lado da barra de endereços do browser, é também (desde 2014) um sinal de ranking para o Google – o que significa que para além da segurança acrescida, até por motivos de SEO é boa ideia adquirir um.
Os obstáculos para um certificado SSL
Até há bem pouco tempo, existiam no entanto dois problemas:
adquirir um certificado SSL custava dinheiro;
a sua instalação era um processo relativamente complexo.
Resta-nos a 2ª questão – o processo de instalação. Existem inúmeros guias pela web fora, como este, que são interessantes se quisermos entender melhor os passos necessários para a emissão de um certificado.
Não é um processo muito complicado para quem tem alguma confiança na linha de comando, mas como temos de repetir este processo de 3 em 3 meses para renovar o certificado, o melhor será mesmo recorrer a um script – felizmente, também já alguém tratou disso.
NOTA: outras versões do Ubuntu poderão funcionar, mas estas são aquelas que testei. O autor do script também já referiu que pode não ser compatível com o Ubuntu 16.04.
Para este guia, adquiri um domínio barato para testes (testesdobrito.xyz), que servirá como exemplo daqui em diante.
Vamos começar!
#1: Acesso via SSH
O primeiro passo será aceder à máquina do DigitalOcean via SSH. Como estou num Mac, gosto de utilizar o iTerm, que é grátis. Em Windows, o Powershell não é mau mas prefiro o Git Bash, simplesmente por ter uma shell que me é mais familiar.
Seja em que programa for, deverás aceder à máquina digitando ssh [email protected] trocando os “x” pelo IP da tua máquina DigitalOcean. De seguida, deves inserir a password da conta root, que deverás ter recebido por e-mail quando criaste o droplet no DigitalOcean.
Agora que o login está efectuado, estás ligado remotamente e tudo o que fizeres será nesse computador.
#2: Instalação do script
De seguida vamos descarregar o script que referi em cima e torná-lo executável. O mesmo deve ficar instalado na pasta /usr/local/bin.
Para tal, estes são os comandos a inserir:
cd /usr/local/bin para navegar até essa directoria;
wget https://raw.githubusercontent.com/lesaff/serverpilot-letsencrypt/master/sple.sh para descarregar o ficheiro do script directamente do Github;
sudo chmod +x /usr/local/bin/sple.sh para o tornar executável.
#3: Emissão do Certificado Let’s Encrypt
Chegou a altura em que devemos arrancar o script para instalar o certificado Let’s Encrypt no nosso blog. Para tal, basta escrever sudo sple.sh, confirmar que o queremos instalar (digitando Y) e inserir o nome da app do nosso blog, que deverá ser o mesmo do ServerPilot.
Por fim, inserimos o(s) domínio(s) respectivo(s). Para concluir o processo, após um par de minutos terás de inserir o teu e-mail e concordar com a licença.
Passados alguns segundos, deverás ler a seguinte mensagem de sucesso:
Your Let's Encrypt SSL certificate has been installed. Please update your .htaccess to force HTTPS on your app
Cheers!
Está feito! Vamos só então forçar o HTTPS, conforme sugerido, porque neste momento estás a apresentar ambas as versões do site.
#4: Forçar o HTTPS (redireccionar de HTTP para HTTPS)
Agora que tens uma versão HTTPS do site, deverás forçar o redireccionamento, para que quem não digite https:// seja automaticamente transportado para a versão segura.
Para tal, deverás ir à raíz da tua aplicação WordPress (que será em /srv/users/serverpilot/apps/xxx/public, trocando o xxx pelo nome da tua app) e criar (ou modificar) um ficheiro intitulado .htaccess (atenção ao .) – podes realizar este passo através de um programa de FTP como o Filezilla ou através do terminal, como preferires.
Nesse ficheiro, deves colocar o seguinte pedaço de código logo no início:
E pronto! Agora, se digitares http://oteusite.com deverás ser automaticamente levado para https://oteusite.com.
Está feito! Em princípio deverá ficar tudo OK. Se não for o caso, sugiro que comeces por instalar o pluginSSL Insecure Content, porque ainda podem existir alguns redireccionamentos em falta.
Se tiveres uma CDN como a Amazon Cloudfront, é possível que tenhas de realizar mais algum trabalho de investigação – este blog, por exemplo, utiliza CloudFront e ainda não consegui que funcionasse a 100% com HTTPS.
Conclusão
Como vês, criar um certificado HTTPS para um blog WordPress não tem que ser dispendioso ou complicado – e graças a este script, não terás que repetir estes passos de 3 em 3 meses!
Os Primeiros Passos para Aprenderes a Programarhttps://brunobrito.pt/wp-content/uploads/2016/03/aprender-programar-primeiros-passos.jpeg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/03/aprender-programar-primeiros-passos.jpeg
Nos últimos tempos, várias pessoas me têm perguntado como podem aprender a programar (para a Web). Este artigo serve como um pequeno guia de iniciação, onde partilho um pouco da minha experiência e algumas soluções que te podem ajudar a manteres-te motivado quando sentires o nível de dificuldade a subir.
Antes de avançar, é importante referir que estou longe de ser um “super programador”. Se acompanhas este blog, saberás certamente que o meu background é essencialmente de Marketing Digital; no entanto, há já alguns anos que tenho vindo a dedicar cada vez mais horas por dia a esta temática, trabalhando actualmente no ramo enquanto Web Developer.
Já foi há algum tempo, mas ainda me lembro perfeitamente como aprender a programar pode ser uma experiência frustrante. O período de constante inovação tecnológica que vivemos pode-nos levar a pensar que qualquer um pode lançar uma rede social depois de um mini-curso no YouTube de um par de horas, mas infelizmente não é bem assim.
Se não desanimares a meio da viagem, verás que programar tem tanto de frustrante como de gratificante. Aprender a programar é uma óptima ideia, mesmo que não queiras seguir carreira no ramo.
O truque é manteres-te focado no teu objectivo e não dispersar- para que queres aprender a ler e escrever código?
O dilema das linguagens
Depois de meteres na tua cabeça que queres aprender a programar, terás logo um desafio interessante pela frente: escolher uma linguagem (ou várias).
HTML, CSS, JavaScript, PHP, Ruby, Python… por onde começo?
Qualquer programador te dirá maravilhas da sua linguagem preferida, utilizando termos que não conheces e que raramente respondem à pergunta para a qual tu queres realmente ter a resposta: para o que eu quero, qual é a ideal para mim?
Aqui, vou assumir que queres programar para a Web. Criar sites, webapps e eventualmente, aplicações mobile.
Para facilitar, separei também as minhas dicas por níveis, que vão de um novato absoluto até a alguém que já passou por alguns tutoriais e está pronto a entrar no mundo das webapps!
Nível #1: Começa por HTML e CSS
O HTML é o elemento responsável pelo conteúdo de cada página. É ele que diz ao browser que isto é um título, aquilo é um parágrafo, aquela palavra está a negrito e que ali fica uma imagem.
Sem saberes HTML não conseguirás produzir uma página Web, portanto eu diria que é essencial começar por aqui. Mas não te dediques só ao HTML – abraça de imediato o CSS, também.
O CSS é responsável pelo layout da página. Sem este elemento, não saberás como colocar aquele título a laranja ou adicionar aquela margem à imagem.
O CSS é, também, o elemento responsável por tornar um site responsive, graças às media queries, que são essencialmente regras de apresentação que se adaptam face à resolução do dispositivo do utilizador.
Apesar destas 2 linguagens serem absolutamente indispensáveis no mundo web, ainda assim não é por esse motivo que recomendo que comeces por aqui.
A verdade é que são as linguagens mais visuais que vais encontrar. Se procuras mudar a cor de um parágrafo e reparas que ainda está tudo na mesma, facilmente percebes a cada refresh do browser o que aconteceu. Com JavaScript, Ruby ou qualquer outra linguagem, entender o que está (ou não) a funcionar correctamente dará muito mais trabalho.
Este é “o” manual – sempre que precisares de conhecer mais a fundo algum elemento HTML ou algum selector CSS, este é o site a visitar.
O Mozilla Developer Network surge nos primeiros lugares sempre que pesquisas por qualquer palavra-chave relacionada com HTML ou CSS, mas é geralmente ultrapassado pelo W3Schools, que considero bastante inferior.
O Bootstrap é a framework mais popular de HTML/CSS/JavaScript e é a base de milhões de sites que andam por aí.
A ideia é descomplicar a introdução de componentes que quase qualquer site utiliza, como grelhas, botões ou até sliders. O Bootstrap já traz de origem esses componentes e muitos outros.
A adopção desta framework é tal, que consultar a documentação do Bootstrap é absolutamente essencial – e quando começares a entender como a podes utilizar, desenvolverás sites com muito maior facilidade.
Provavelmente o site mais popular de tutoriais de programação. O Codecademy é gratuito e tem bons tutoriais de iniciação a HTML e CSS, bem como alguns projectos que podes tentar fazer depois de concluíres os cursos.
Menos amigável ao início, mas definitivamente mais completo que o Codecademy, o freeCodeCamp ambiciona transformar pessoas em programadores em pouco tempo, com dezenas de horas de tutoriais gratuitos sobre os principais tópicos.
Aqui podes dedicar muitas horas a aprender HTML, CSS e até fazer um site responsive com a ajuda do Bootstrap.
Se queres saber como se faz “aquele botão” ou “aquela animação”, vais gostar deste site. O CodePen tem sempre as últimas tendências de web design, sendo diariamente alimentado pela sua comunidade, que lá partilha as suas últimas criações em código.
Não só podes alterar o código e ver em tempo real o que acontece, como é um site que podes usar para portefólio dos teus próprios trabalhos.
De início, não vejo qualquer razão para pagares para aprenderes HTML e CSS, porque qualquer um dos sites que mencionei acima te podem dar uma grande ajuda.
Ainda assim, se estiveres disposto a pagar 25 dólares por mês, a Treehouse é, na minha opinião, a melhor escola online que existe. Lá poderás encontrar imensos cursos de HTML e CSS, com vídeos e exercícios a acompanhar.
A Treehouse já foi mencionada neste blog mais que uma vez (aqui e aqui) e será um ponto de paragem praticamente obrigatório quando estiveres mais confiante nas tuas capacidades.
Nível #2: Aprende as bases de Ruby
Esta é a parte mais polémica do artigo, porque outras pessoas te aconselhariam a aprender JavaScript (e algumas das suas variantes mais atraentes, como jQuery, Angular ou React) ou PHP (o coração do WordPress, que representa 25% de toda a Internet).
Ainda assim, o meu conselho vai para Ruby. A razão? Simples.
Ao início, vais aprender o que é uma variável, o que é um if statement e o que é um método. E, por muito bom que o tutorial seja, o mais provável é que precises de algum tempo até que consigas encaixar verdadeiramente o que significa cada um destes termos.
Outro “pequeno” problema desta fase é que retirarás pouca gratificação destes primeiros tutoriais, por te ensinarem a fazer coisas que raramente te impressionarão ou por não compreenderes a utilidade para a construção de uma webapp, por exemplo. Este é um nível crítico, onde a taxa de desistência é bem superior ao nível anterior.
Tudo isto já será frustrante q.b., mas ao menos terás uma linguagem muito agradável de se ler para começar. Não vais ter de estar preocupado em fechar parêntesis a torto e a direito, como acontece por exemplo com JavaScript e, a esta altura do campeonato, é pouco relevante estares a aprender a linguagem #1 do Github ou não.
Praticamente tudo o que aprenderes em Ruby vais poder reutilizar mais tarde, noutra linguagem. Muda a sintaxe e pouco mais.
Em suma, não tornes a tua aprendizagem mais “dolorosa” sem qualquer necessidade!
Esta é uma linguagem que o mundo das start-ups adora, portanto encontrarás sempre muita informação online. Para Ruby, podes começar por estes sites:
O curso gratuito de Ruby do Codecademy é muito completo. Aqui poderás descobrir o que são iteradores, hashes ou lambdas. Este é um excelente ponto de partida para o universo Ruby.
Este pequeno curso é feito pela CodeSchool, um grande concorrente da Treehouse.
A CodeSchool também é paga, mas neste curso podes ter um cheirinho de Ruby e da qualidade dos cursos deste site, que tem muitos outros tutoriais de Ruby.
Este pequeno livro (que podes ler na íntegra no site gratuitamente) foi-me recomendado como leitura de preparação para o bootcamp da Creators School e é um excelente manual para aprender as bases da programação, utilizando a linguagem Ruby sempre como exemplo.
Este é um recurso similar ao anterior – se não estiveres a gostar do livro do Chris Pine, podes dar uma chance a este.
Nível #3: Explora uma framework com o conceito de MVC, como Ruby on Rails
O conceito de MVC (Model, View, Controller) é importantíssimo para a criação de webapps modernas e se seguiste o meu conselho e optaste por Ruby no nível #2, então o passo seguinte mais lógico será mergulhares no mundo de Ruby on Rails. Aqui terás, finalmente, também contacto com bases de dados.
Rails começou por ser desenvolvido para servir o project managerBasecamp, mas acabou por se tornar um projecto open-source que serviu/serve de coração a algumas das marcas digitais mais populares da actualidade, como o Airbnb, Hulu e Github.
Neste nível já conseguirás criar projectos de alguma complexidade, onde poderás colocar os teus conhecimentos de HTML, CSS e Ruby em prática. Poderás começar por criar blogs e task managers e gradualmente evoluir para ideias mais ambiciosas. Mais à frente, poderás pensar em desenvolver algumas competências no mundo da JavaScript, que será um óptimo complemento.
As convenções do universo Rails tornam tudo mais simples, mas ainda assim prepara-te para perder muitas horas a ler mensagens de erros e a tentar perceber porque é que algo não está a funcionar – mas isso faz parte de ser programador, como refiro aqui!
Este tutorial, criado por Michael Hartl, é um ponto de paragem obrigatório para a comunidade de Ruby on Rails.
Ao longo deste extenso tutorial criarás uma aplicação similar ao Twitter e pelo caminho serás apresentado ao conceito de MVC, utilizarás o Cloud9 como ambiente de desenvolvimento e o famoso Git para controlo de versões do teu código.
Este é um tutorial longo e relativamente complexo, mas é sem dúvida uma excelente introdução ao que Ruby on Rails permite.
RailsCasts é um projecto de Ryan Bates que consiste em screencasts sobre tudo o que está relacionado com o universo Rails – desde gems (que são “plugins”) à utilização de frameworks como Angular ou Ember, encontrarás um pouco de tudo neste site.
Apesar do site estar parado desde 2013, este continua a ser um site de referência para a comunidade Rails, pela qualidade dos screencasts: sucintos, mas ao mesmo tempo ricos em informação.
Conclusão
Como vês, programar pode ser intimidante, mas não tens que ter medo de experimentar. Começa por molhar os pés com HTML e CSS e vai subindo gradualmente a dificuldade (e o teu envolvimento) com o tema.
No que toca a aprender a programar, a web está cheia de sites de qualidade e certamente encontrarás uma resposta para praticamente qualquer problema que tenhas.
Nunca te esqueças de procurar sempre uma aplicação prática para o que estás a aprender – faz uma app dedicada a outro tema que gostes, ou um site relacionado com um hobby teu. Tenta tornar a aprendizagem o mais divertida possível.
E, acima de tudo, não desanimes se as coisas demorarem a entrar. É perfeitamente normal e faz parte da viagem. Força!
Já conheces o Franz?https://brunobrito.pt/wp-content/uploads/2016/03/conheces-franz.png620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/03/conheces-franz.png
Se, como eu, passas o dia a saltar de janela em janela entre o Facebook Messenger, o Slack, o Skype, o Hangouts e o WhatsApp, vais gostar de saber que existe uma aplicação que te permite controlar todos esses serviços de messaging num só local – diz olá ao Franz!
Esta app é uma invenção de Stefan Malzner, um programador austríaco, que quis resolver um grande problema actual: a fragmentação das ferramentas que utilizamos para comunicar.
No dia-a-dia, é normal que utilizes várias ferramentas para comunicar com os teus amigos e colegas de trabalho; uns preferem ficar pelo Facebook, outros são fiéis ao Skype e, se estiverem longe do computador, provavelmente serão mais rápidos a responder-te pelo WhatsApp, certo?
Este problema não é só meu e teu, e é precisamente por isso que o Franz se revelou um enorme sucesso – tendo adquirido, em menos de 1 mês, mais de 10 mil utilizadores activos diários.
O Franz ainda tem pouco tempo de vida, pelo que à data de publicação deste artigo ainda só está disponível para Mac – ainda assim, a versão beta para Windows já vem a caminho e uma versão Linux também está nos planos (atualização: já estão disponíveis).
Ao contrário de outras apps agregadoras do passado, como o Adium ou o Trillian, que adaptavam os serviços ao seu próprio interface, o Franz limita-se a exibir as versões web de cada messenger numa tab – é tal como se usasses esse serviço no teu browser – o que significa que, sempre que surgir uma nova funcionalidade, o Franz já a suportará.
No fundo, é como ter um conjunto de tabs abertas no teu browser, mas gastando menos recursos do CPU e com direito a alguns extras, como a possibilidade de adicionar várias contas do mesmo serviço – podes ter 5 contas do Facebook Messenger abertas ao mesmo tempo, se por algum motivo tal fizer sentido!
Esta é uma daquelas apps que me converteu assim que a instalei no meu Mac. E tu, vais dar uma hipótese?
Como alojar um site estático na Amazon S3https://brunobrito.pt/wp-content/uploads/2016/02/como-alojar-site-estatico-amazon-s3.png620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/02/como-alojar-site-estatico-amazon-s3.png
Esta semana desenvolvi um pequeno site estático (baseado apenas em HTML/CSS/Javascript) e, na altura de o publicar, optei por alojá-lo no popular Amazon Simple Storage Service (S3).
As razões para tal são simples: neste serviço da Amazon, só pagas o que efectivamente gastas, a nível de tráfego – e o valor por GB transferido? $0.03!
Mesmo com outros serviços de alojamento competitivos, dificilmente encontrarás melhor negócio do que este, especialmente se se tratar de um site estático leve, como era o caso.
Para além disso, se fores novo a utilizar os Amazon Web Services, ainda poderás desfrutar de um plano gratuito durante 12 meses, que te permitirá ficar a conhecer as poderosas ferramentas disponíveis.
Mas se chegaste até aqui, provavelmente já sabes que este é o serviço certo para ti – falta só saber como o configurar, certo?
Vamos a isto!
NOTA: Os primeiros passos já foram referidos noutro tutorial, que se encontra neste link. Ainda assim, vou-te poupar um clique e descrevê-los novamente aqui.
Passo #1: Criar um bucket com o nome do domínio que pretendes
Depois de fazeres o registo/login na AWS, é tempo de escolher o serviço S3, que encontrarás em Storage & Content Delivery.
Uma vez dentro do S3, deverás criar um bucket, que é no fundo a “pasta” onde colocarás todos os ficheiros do teu site.
Este é um ecrã importantíssimo, por um simples motivo: o nome do bucket deve ser igual ao domínio que pretendes utilizar. Portanto se queres que o teu site seja www.omeusite.pt, o teu bucket deve-se chamar www.omeusite.pt.
Relativamente à região, se o teu site é essencialmente para Portugal, deverás escolher Irlanda ou Frankfurt, para que a proximidade (e consequentemente a velocidade de acesso) seja maior.
Alterando depois examplebucket para o nome do teu próprio bucket (o tal www.omeusite.pt, seguindo o exemplo de cima).
Em Static Website Hosting, deves clicar em Enable website hosting e definir como index document o habitual index.html.
Agora, se clicares no link que está em Endpoint (que deverá ser algo como www.omeusite.pt.s3-website-eu-west–1.amazonaws.com) verás que o teu site já está live!
O tutorial poderia terminar aqui, mas vamos associar o nosso domínio a este alojamento.
Passo #3: Associar um domínio à Amazon S3
Os próximos passos terão em conta o serviço Cloudflare, um serviço fantástico e na sua grande maioria gratuito que, na minha opinião, todos os sites deveriam considerar.
Entre muitas outras coisas, como velocidade ou segurança, o Cloudflare permite-te configurar todos os domínios num só local – tornando-se muito mais prático na altura de migrações do que teres de aceder a cada domain registrar para alterar os nameservers do teu site.
Assim sendo, o primeiro passo depois do registo/login será ir a Add Site. Aqui, deves inserir o teu domínio, como omeusite.pt.
O Cloudflare fará o seu trabalho e depois de terminar o scan, indicará novos nameservers para colocares no teu domínio. Aqui, deves ir ao site da empresa onde adquiriste o domínio e alterar os nameservers para aqueles indicados pelo Cloudflare.
Deverão ser algo deste género (atenção ao “.” no final):
matt.ns.cloudflare.com.
lola.ns.cloudflare.com.
NOTA: se tiveres adquirido um domínio .PT e o mesmo estiver no estado TECH-PRO, em vez de ACTIVE, não conseguirás utilizar o Cloudflare de imediato. Primeiro, terás que o associar a outro alojamento, para que o estado altere para ACTIVE, e só aí poderás colocar os nameservers do Cloudflare.
É possível que esta alteração leve algum tempo até ficar finalizada – podes ir confirmando no teu terminal, se escreveres whois omeusite.pt e procurando por Nameserver Information.
Agora que já tens o domínio associado ao Cloudflare, falta a outra parte da equação: ligar o Cloudflare ao Amazon S3.
No painel de controlo do Cloudflare, deverás ir a DNS e criar um CNAME onde o Name deverá ser www e o Domain Name o tal endereço que viste anteriormente do teu site, similar a www.omeusite.pt.s3-website-eu-west–1.amazonaws.com.
Agora sim, quem aceder a www.omeusite.pt conseguirá ver o site como o concebeste – mas ainda há um problema; quem escrever http://omeusite.pt (sem www) terá uma mensagem de erro e não conseguirá visualizar o teu site!
Para resolver este problema, falta um passo adicional – criar uma regra para que haja um redirect para o endereço com www.
No Cloudflare vai até Page Rules e na caixa Add new rule faz o seguinte:
No URL Pattern, insere o URL como http://omeusite.pt/* (não te esqueças do “*”, que adicionará o redireccionamento automático para todas as outras páginas do site);
Activa o Forwarding, passando-o para On;
Em Forwarding, escreve http://www.omeusite.pt;
No Forwarding Type, opta pelo Permanent – 301.
E agora sim, está feito! Quem disse que alojar um site tem que ser dispendioso?
Como as Marcas devem usar as Hashtagshttps://brunobrito.pt/wp-content/uploads/2016/01/marcas-usar-hashtags.jpeg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/01/marcas-usar-hashtags.jpeg
Hashtags. Enquanto profissionais de marketing, convém entendermos como funcionam; há já alguns anos que estão na moda, mas infelizmente ainda muitas pessoas (e marcas) não sabem para que servem ou como as utilizar devidamente.
Vemos palavras escritas #assim um pouco por todo o lado – nas lojas, na televisão ou nas nossas redes sociais preferidas – mas com que objectivo?
Apesar da sua popularidade, o seu uso é raramente feito com um bom raciocínio estratégico (e boa execução), traduzindo-se apenas em “ruído publicitário” e acabando por ser, assim, inconsequente.
Vamos então perceber o que são as hashtagse, quando estivermos todos na mesma página, entender quando (e como) as devemos utilizar. Se não, corres o risco de acabar como estes 2 senhores:
Como surgiram as Hashtags
As Hashtags foram sugeridas por um utilizador no Twitter, em 2007. O crédito é atribuido a Chris Messina, que promoveu a sua utilização neste tweet:
how do you feel about using # (pound) for groups. As in #barcamp [msg]?
A proposta era simples: sempre que quiséssemos enviar um comentário sobre determinado tópico, utilizaríamos a hashtag respectiva, para que rapidamente se entendesse o contexto em que esse tweet se inseria.
Era, no fundo, colocar uma etiqueta no nosso comentário – daí o tag, no nome.
Mas mais importante do que colocar etiquetas, com esta lição de história podemos tirar uma conclusão fundamental: a hashtag foi feita para as comunidades, para que qualquer um possa contribuir com a sua opinião para um tópico.
Esta ideia é importantíssima, como veremos ao longo deste artigo.
Plataformas onde podemos encontrar Hashtags
O sucesso das Hashtags no Twitter obrigou as restantes redes sociais a implementar a mesma funcionalidade: Facebook, Instagram, Google+ ou Pinterest, por exemplo.
Com esta funcionalidade presente, podemos clicar em qualquer hashtag e visualizar rapidamente tudo o que se está a publicar sobre esse tema – ideal para recolher várias opiniões sobre um tópico, por exemplo, ou conhecer mais pessoas que partilham os mesmos interesses que nós.
As hashtags não são populares em todas as plataformas, mas a opção está lá – não querendo com isso dizer que as devemos utilizar em todo o lado. Eu diria mesmo que sem ser no Twitter e no Instagram, mais vale estar quieto.
E não é só nas redes sociais que podemos encontrar o mítico #. A popularidade das hashtags é tal, que agora poderás encontrá-las em outdoors, numa televisão enquanto acompanhas o teu programa de televisão preferido ou até nas escadas rolantes dos centros comerciais da tua zona.
As marcas utilizam de forma recorrente as hashtags no seu Call-to-Action, como que a dizer: vem à tua rede social preferida e diz o que achas de nós, utilizando a respectiva hashtag.
Mas será que é esta a abordagem certa?
Como se diz tanta vez no marketing… “depende.”
Vamos então conhecer situações onde o uso das hashtags é recomendado e principais cuidados a ter.
Cenários em que deves utilizar hashtags
Uma hashtag pode ser vantajosa para a tua marca em alguns contextos. Quando bem utilizada, em qualquer um destes cenários é praticamente garantido que a tua marca sairá beneficiada.
Estas dicas são viradas sobretudo para o Twitter (onde a adopção é maior) e, em alguns casos, para o Instagram.
#1: Incentivar a comunidade a falar de um tópico
Se queres convidar a tua comunidade a discutir um tema, podes e deves promover a Hashtag oficial para tal.
Exemplo disso são acontecimentos de grande impacto, como o Campeonato do Mundo de Futebol, os Óscares, o Superbowl ou o teu programa semanal de TV preferido.
Ir ao Twitter falar sobre o programa que estamos a ver é um dos principais usos da plataforma – as próprias estações televisivas já promovem experiências second screen e a própra plataforma já está a testar formas de melhorar a aplicação para este propósito.
Uma Hashtag como a desta imagem, exibida depois durante todo o programa, não deixa qualquer dúvida sobre qual a hashtag que devemos acompanhar e utilizar.
Mas não tens que ter um enorme orçamento ou um evento gigante para recorrer a esta prática.
Também podes promover pequenas conversas sobre a indústria onde operas, como faz por exemplo a Buffer, que semanalmente promove temas de discussão entre profissionais de Marketing Digital utilizando a hashtag#bufferchat.
Participar neste tipo de conversas é uma boa forma de networking e de ganhar credibilidade na área em que desenvolvemos actividade.
#2: Aproveitar o contexto para roubar um pouco da atenção
Esta é uma prática apenas utilizada por marcas que dominam verdadeiramente o Social Media, porque exige um constante controlo do que se está a passar no mundo e uma rápida capacidade de resposta, enquanto o tema é relevante.
Aqui, a ideia passa por tentarmos apoderarmo-nos de um tema que não é nosso mas que está “quente”, e lembrar o mundo que também existimos.
Um comentário divertido ou inteligente pode ser partilhado por várias pessoas, aumentando a notoriedade da marca e melhorando a atitude relativamente à mesma. Esta prática é frequente no Twitter por parte das marcas mais atentas.
Exemplo disso foi a Oreo, a Dunkin’ Donuts e a Lego, quando toda a gente falava do vestido…
Esta é uma acção mais passiva, mas também deve ser feita. Se sabes que existe uma forte correlação entre os teus clientes e os de outra marca, podes seguir o que é dito nessa Hashtag para melhor compreender os teus fãs.
Por exemplo, se pertences a uma startup que está na mesma indústria que outras empresas mais estabelecidas, podes aproveitar as hashtags que estas promovem para entender que necessidades dos clientes ainda não estão resolvidas – ou quais as principais frustrações.
Uma marca de tecnologia também pode acompanhar uma hashtag de um evento como a CES para recolher rapidamente as primeiras impressões dos consumidores sobre produtos que lá tenham sido apresentados.
Noutras situações, podes ainda aproveitar para sondar clientes actuais, promovendo um fórum de Perguntas e Respostas sobre como utilizam o teu produto e identificando as principais dificuldades.
#4: Reforçar a assinatura da marca
Se a maioria dos teus clientes tem uma atitude francamente positiva relativamente à tua marca, podes sugerir que usem a mesma hashtag que a assinatura da marca.
Como essa prática tem uma vertente mais comercial do que propriamente de discussão, certifica-te primeiro que tal é pertinente. Nem sempre faz sentido escrever algo que termine com #justdoit, certo?
#5: Agrupar participações para passatempos
Esta é uma prática recorrente no Instagram. Se queres dar a conhecer um passatempo, certifica-te que nas regras de participação indicas uma hashtag que os utilizadores devem utilizar para participarem.
Assim, estás a garantir que os seguidores de cada participante também verão a hashtag, o que se traduzirá em maior awareness da acção.
Principais cuidados a ter com hashtags
Agora que já conheces as principais situações em que hashtags fazem sentido, falta mencionar alguns cuidados a ter para que a execução esteja à altura da estratégia.
Sempre que estiveres a preparar uma publicação, não te esqueças de ter em conta estas dicas.
Sendo uma plataforma com o conhecido limite de 140 caracteres, o uso de mais hashtags limitaria em demasia o comentário que o utilizador poderia acrescentar;
Cada hashtag funciona como um call-to-action; se o teu tweet for um mar de hashtags, a pessoa dificilmente saberá como proceder, da mesma forma que não saberá em que botão clicar, num site, se lhe apresentares demasiadas opções.
No Instagram, por outro lado, já é tolerado (e até recomendado) o uso de múltiplas hashtags (dezenas). É a melhor forma de garantir que a tua foto é encontrada e ganha likes– e ninguém encara isso como spam.
Nas restantes redes, não existe um consenso quanto à etiquette, porque o uso não é intensivo. Mas posso-te garantir 2 coisas:
Quando crias uma hashtag, certifica-te que vai chegar ao target certo.
Aqui, novamente dependerá da rede: no Instagram, provavelmente fará sentido utilizares uma hashtag como #beach ou #movies se queres ver a tua publicação associada a essas palavras. Como podes utilizar tantas, não faz mal seres mais vago.
Já no Twitter, convém seres realmente específico na tua comunicação – se não o fizeres, mesmo que a tua comunidade interaja contigo e a utilize, a tua mensagem corre o risco de cair num oceano de tweets em que não terá qualquer buzz.
Ao mesmo tempo, as pessoas acompanham muito mais hashtags específicas do que generalistas, por saberem que estas estão tão cheias de ruído.
Se estás a falar do NOS Alive, por exemplo, não usarias #music, #nos, #alive ou #festivaldeverao, mas sim #nosalive – é específica o suficiente e as pessoas que veriam tweets com essa hashtag não teriam dúvidas sobre o que se refere.
Eis um exemplo daquilo que não se deve fazer – #receitas, a sério?
#3: Hashtags promovidas offline que não têm qualquer seguimento online
A grande finalidade de uma hashtag, como vimos, é de colocar as pessoas a falar – promovendo, assim, a nossa marca/evento sem esforço adicional da nossa parte.
Assim sendo, para que serve encontrar uma hashtag como esta no meio de um supermercado? Pego no telemóvel e querem que faça o quê?
#4: Utilizar caracteres inválidos
Sabias que podes utilizar hashtags com emojis? É verdade, tal é possível. Já o hífen não é tolerado, portanto esquece o #fim-de-semana ou o #bem-vindo, tal como caracteres especiais como “%” ou “$”.
Certifica-te que as plataformas que pretendes utilizar suportam a tua hashtag antes de começar a produzir materiais de divulgação – podes apanhar surpresas muito desagradáveis mais tarde, se vires que ninguém consegue utilizar a hashtag que criaste.
E não te esqueças: ninguém é dono de uma hashtag
Mesmo que sejas o primeiro a publicar um conteúdo com uma nova hashtag, não terás qualquer tipo de privilégio face aos restantes membros da plataforma – não poderás moderar debates ou eliminar comentários off-topic e críticas negativas.
É impossível prever como as pessoas vão reagir à nossa hashtag: podem seguir o solicitado ou optar por reclamar, denegrir a tua marca ou falar de outra coisa qualquer de forma totalmente impertinente.
Poderás até ser vítima de hijacking de outra marca que se queira aproveitar da tua atenção, seguindo a técnica que viste mais acima.
Neste ambiente, vale tudo e se correr mal não há muito que possas fazer.
A McDonald’s, por exemplo, uma vez promoveu a #McDStories para convidar os utilizadores a contar algumas histórias divertidas sobre Happy Meals.
A acção não correu bem: a hashtag rapidamente passou para bashtag, com os utilizadores a partilharem histórias de terror sobre a cadeia de restaurantes.
A McDonald’s tinha promovido esta hashtag intensivamente mas optou por cancelar toda a comunicação 2 horas depois – o problema é que tal não impediu que as pessoas continuassem a utilizar esta hashtag, continuando a manter a marca relevante no mundo online até hoje, pelos piores motivos.
Este é só um exemplo:
One time I walked into McDonalds and I could smell Type 2 diabetes floating in the air and I threw up.
#McDStories
Deves também ter em conta a cultura web – se a tua marca se chama TBT ou YOLO, não tens qualquer tipo de direito especial para utilizar #TBT ou #YOLO… e considerando a popularidade dessas hashtags, boa sorte se quiseres utilizá-las nas tuas próprias comunicações!
Conclusão
Como vês, as hashtags têm muito que se lhe diga – não servem para uma marca ser cool ou moderna, mas sim para convidar as pessoas a falar sobre um tópico que a marca promove.
Há muita coisa que foge ao nosso controlo, mas quando bem utilizadas, são sem dúvida uma mais-valia para as marcas que querem ser levadas a sério no mundo digital – certifica-te que segues estes conselhos à risca e que utilizas as plataformas certas para tal.
4 Apps Indispensáveis para Mac – Moom, Trickster, ClipMenu e DaisyDiskhttps://brunobrito.pt/wp-content/uploads/2016/01/4-apps-indispensaveis-mac.jpeg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/01/4-apps-indispensaveis-mac.jpeg
Esta semana decidi criar algo diferente e gravar alguns vídeos, em formato screencast, para apresentar algumas das minhas aplicações favoritas para OSX.
Utilizo estas apps no meu dia-a-dia e sinto que contribuem imenso para a minha produtividade (em particular as 3 primeiras).
Todas devem ser consideradas por qualquer utilizador que tenha um Mac. Estás pronto para as conhecer?
O Trickster dá-te acesso rápido a todos os ficheiros que editaste recentemente.
Quando acabas de criar/alterar um documento, é frequente precisares de o aceder de novo para o anexar a um e-mail, fazer upload para a web ou abrir noutro programa, certo?
Com o Trickster, essa tarefa passa a ser bem mais fácil. E permite-te ainda filtrar por tipo de ficheiro (imagens, vídeos, músicas…) , o que é óptimo!
O ClipMenu é um Clipboard Manager. Sempre que fazes copy a algo, fica guardado na memória do clipboard do sistema operativo.
Se recorres muito a copy/pastes durante o dia, certamente gostarias de aceder a uma lista de tudo o que já fizeste copy, para poder recuperar textos antigos, certo?
Bom, com o ClipMenu vais poder aceder ao histórico de tudo aquilo que fizeste copy, podendo recuperar rapidamente qualquer item. Ideal para programadores e bloggers!
Se estás frequentemente a ficar sem espaço em disco, dá uma olhadela no DaisyDisk – esta aplicação analisa o teu disco em poucos segundos e rapidamente te mostra quais os ficheiros que estão a ocupar mais espaço no teu computador, para decidires se os deves apagar ou transferir para um disco externo.
Espero que tenhas gostado dos vídeos e destas sugestões! Tentarei fazer mais screencasts quando relevante, para complementar os artigos.
Adeus, Rato: Torna-te um Perito em Atalhos de Tecladohttps://brunobrito.pt/wp-content/uploads/2016/01/perito-atalhos-de-teclado.jpeg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2016/01/perito-atalhos-de-teclado.jpeg
Como me posso tornar mais produtivo com um computador?
Quando me lançam esta questão, a minha resposta passa sempre por 2 pontos:
dominar os principais atalhos de teclado das aplicações que utilizamos diariamente.
Faltava-me escrever sobre este último. Este tema não é o mais sexy, mas a verdade é que o considero um dos aspectos mais importantes da produtividade.
Todos nós devíamos dominar, no mínimo, os atalhos “universais” (que conhecerás mais à frente), mas há uma razão muito importante para não subestimares o poder deste assunto.
Pensa no seguinte: o que é mais rápido? Escrever CMD ou CTRL + C ou ir ao menu e clicar em Edit->Copy?
Sabes a resposta, certo?
Procurar a instrução certa no menu exige maior concentração e precisão do que premir 2 teclas ao mesmo tempo. Por outras palavras, largar o teclado para ir ao rato vai-nos interromper a cadeia do pensamento, tirando-nos tempo e capacidade de foco. Por esse motivo, faz todo o sentido depender do rato o menos possível.
Utilizar atalhos de teclado é frequentemente associado a “peritos”, mas não tem que o ser: com estas dicas, espero desmistificar um pouco este tópico e dar algumas dicas para começares a beneficiar da enorme poupança de tempo e concentração que proporcionam.
Antes de começarmos, quero dar-te 3 conselhos imprescindíveis para pôres em prática o que vem a seguir; vamos a eles!
#1: Resiste à tentação de usar o rato
Como vimos na introdução, o grande objectivo de aprender a utilizar os atalhos do teclado é o do aumento da produtividade.
Naturalmente, não terás grandes ganhos se não saíres da zona de conforto e continuares a usar o rato. Ao início, é normal que não te seja natural utilizar o teclado para tudo, mas tenta lembrar-te do atalho que procuras antes de passar de imediato a mão para o rato.
A grande excepção vai para a Web, onde é realmente mais prático utilizar o rato para navegar de link para link. Ainda assim, é possível utilizarmos apenas o teclado para este efeito, seja através dos atalhos convencionais seja recorrendo a extensões, como por exemplo o Vimum, para Chrome.
#2: Recorre a “auxiliares de memória” quando necessário
De início, vai ser complicado memorizar muitos atalhos, especialmente se envolverem mais do que 2 teclas ao mesmo tempo.
Aqui, é boa ideia usar uma cábula. Deixar os atalhos espalhados pela secretária é uma boa forma de te lembrares da combinação na hora H.
Podes recorrer a simples notas “post-it” ou, no caso de quereres dominar aplicações mais complexas como o Ableton Live ou o Adobe Premiere, podes ir mais longe e comprar autocolantes para as teclas!
#3: Vai com calma: tenta aprender, no máximo, 5 atalhos novos por semana
Poderá ser tentador apontar 20 atalhos para aprender, mas o mais provável será ficares frustrado ao fim de algum tempo por nenhum deles ainda estar interiorizado.
Alguns atalhos terás que repetir muitas dezenas de vezes até que fiquem assimilados, pelo que convém começar com poucos e, aproveitando a Lei de Pareto, por aqueles que vais usar com maior frequência.
O que nos traz para o ponto seguinte…
Começa por aprender os atalhos “universais”
Se este assunto te intimida, vais gostar de saber que a maior parte dos atalhos é comum entre as aplicações, o que significa que trabalhar no Word para Windows não vai ser assim tão diferente de trabalhar no Pages para Mac.
Isto são excelentes notícias: só vais ter de decorar uma vez os atalhos para os comandos mais frequentes (como “Gravar”, “Abrir”, “Copiar” ou “Colar”), pois todas as aplicações partilham esses mesmos atalhos.
Vamos então começar por dominar os atalhos que usarás com maior frequência; sugiro que comeces por aprender estes 10 (em Windows utiliza a tecla CTRL em vez de CMD):
NOTA: Esta lista assume que tens o sistema operativo e software em Inglês.
CMD + N – Criar Novo CMD + O – Abrir CMD + S – Guardar CMD + P – Imprimir CMD + A – Seleccionar tudo CMD + X – Cortar CMD + C – Copiar CMD + V – Colar CMD + Z – Desfazer (Undo) CMD + Y – Refazer (Redo)
Chamo especial atenção ao CMD + S – é “o” atalho, aquele que deves utilizar obsessivamente.
Depois destes, fará sentido passares para os atalhos do teu sistema operativo preferido – aqui, é normal que encontres diferenças (por exemplo, o comando para fechar uma aplicação em Windows, ALT + F4, é drasticamente diferente de CMD + Q usado em OSX) mas como são comandos recorrentes, vale a pena aprender pelo menos estes:
Em Windows: ALT + F – Ir para “Ficheiro” ALT + F4 – Fechar Aplicação ALT + TAB – Mudar de Aplicação
Em OSX (Mac): CMD + Q – Fechar Aplicação CMD + H – Esconder Aplicação CMD + , – Definições da Aplicação CMD + TAB – Mudar de Aplicação
Descobre os atalhos para os comandos que mais usas em cada aplicação
Agora que já conheces os atalhos fundamentais, é tempo de olhares para as tuas aplicações preferidas.
Uma aplicação complexa, como o Adobe Photoshop ou o SublimeText, pode ter dezenas de atalhos pré-configurados – mas provavelmente há acções que realizas muito mais que outras.
Assim sendo, começa por memorizar os comandos mais frequentes: se reparares, nos menus tens sempre o atalho associado ao lado do comando onde clicas, pelo que seguindo as dicas mencionadas acima, podes apontar 5 atalhos dessa app e não utilizar o rato para realizar essas acções.
Em OSX, podes ainda instalar a appCheatSheet, que é grátis e te dá todos os atalhos disponíveis para a app em que te encontras.
As webapps mais populares, como o Gmail, Facebook ou Twitter, também têm os seus próprios atalhos. Podes geralmente aceder à lista dos mesmos carregando em ?.
A título de exemplo, aqui ficam os atalhos disponíveis para o Facebook:
Muitas outras webapps usam teclas de atalho similares, especialmente o J, o K, o ? e o /.
O nível seguinte
Quando já estiveres mais confortável em utilizar o teclado para comandar o software, podes ainda começar a pensar em criar os teus próprios atalhos.
Algumas aplicações, como o popular leitor de multimédia VLC, permitem-te definir os atalhos para cada acção.
Mais à frente, podes aindar criar macros para tarefas repetitivas, que são executadas através de um simples atalho de teclado. A grande vantagem aqui é que podes gravar qualquer conjunto de acções e depois executá-las com um conjunto de teclas.
No exemplo da imagem abaixo, criei um atalho para lançar os 3 browsers ao mesmo tempo.
Conclusão
Como vês, recorrer mais ao teclado e menos ao rato não tem que ser doloroso – com prática, vais depender cada vez menos deste último, terminando as tarefas em menor tempo e, especialmente, com menores quebras de concentração pelo caminho.
A sério, dá uma hipótese; deixa o rato para a Web e para jogar, e torna-te um mestre em atalhos de teclado – vais ver que vai valer a pena!
3 Aplicações Essenciais para Programadoreshttps://brunobrito.pt/wp-content/uploads/2015/09/3-apps-essenciais-programadores.png620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2015/09/3-apps-essenciais-programadores.png
Neste artigo pretendo apresentar-te 3 aplicações que em muito te podem ajudar no processo de Web Development.
Como foi referido aqui, uma boa parte do tempo do programador é passado a ler documentação e a aprender. Muitas horas se passam também na linha de comando, ou seja, no terminal.
Estas 3 aplicações vão exactamente ao encontro dessas tarefas e são, para mim, essenciais. Vamos conhecê-las!
#1: Dash
Quando tens uma questão, seja de HTML, CSS ou até de um editor de texto como o SublimeText, o que fazes?
Mas se estiveres interessado numa app que te oferece todas essas documentações num só local (e com acesso offline), talvez a melhor solução seja instalares o Dash.
O Dash é pago (19.99€) mas podes utilizá-lo sem restrições de forma gratuita. O único senão é que terás de aguardar alguns segundos antes de aceder à documentação pela primeira vez, sempre que abrires o programa.
Com esta aplicação terás acesso offline a todas as principais APIs, como iOS, Android, Bootstrap, Gulp, Grunt, HTML, CSS, WordPress, AngularJS, etc, e até programas como o SublimeText.
Para tal, basta seleccionares as que pretendes descarregar e rapidamente a app fará o download de tudo o que precisa. Sempre que abrires o programa e estiveres ligado à Web, ele também verificará se há actualizações para descarregar.
Também podes integrar o Dash com programas como o Alfred, Quicksilver ou com o teu editor de texto (seja ele o Sublime, o Vim ou o Atom), para abrires o Dash automaticamente sempre que tiveres uma questão (no Sublime o atalho é CTRL+H).
Entre outras funcionalidades, como o Dark Mode e a possibilidade de inserirmos os nossos próprios apontamentos ao lado da documentação em questão, é importante referir que também podemos gravar os nossos próprios snippets de código para utilizar mais tarde.
Mas, no que toca a snippets, prefiro recorrer à próxima aplicação…
À semelhança do Dash, o Quiver é uma aplicação paga (9.99€) mas que podemos utilizar na totalidade a custo zero, ficando apenas com um aviso no rodapé.
A grande razão para utilizarmos este bloco de notas em vez de algo como o Evernote é porque nos permite misturar pedaços de código, texto normal/imagens, Markdown e LaTeX com enorme facilidade.
Se acompanhas este blog, já deverás saber que adoro escrever em Markdown e esta é a única aplicação que conheço que me permite alternar, no mesmo documento, entre Markdown e código com syntax highlighting – sim, o Quiver suporta mais de 100 linguagens!
Esta é, para mim, a principal funcionalidade do programa, mas existem outras dignas de menção: como o programa grava as notas no formato JSON, podemos facilmente exportá-las em HTML ou PDF; podemos também fazer sync com aplicações como o Dropbox ou Google Drive e podemos adicionar etiquetas (ou tags) para acedermos facilmente às notas que pretendemos.
#3: iTerm (com Oh My Zsh)
O Terminal que vem de origem com o OSX não é mau, mas o iTerm dá-te acesso a muitas outras funcionalidades interessantes, como:
split panes;
pesquisa no terminal;
suporte para notificações com o Growl;
autocomplete com as principais sugestões.
Terás ainda maior rendimento no terminal se mudares de shell.
O OSX de origem traz a shell Bash, mas a Z shell (zsh) traz algumas melhorias, em especial no que toca a completar automaticamente os caminhos das pastas/ficheiros, que será certamente a alteração que apreciarás de imediato.
Esta shell pode ainda ficar mais artilhada se instalares o Oh My Zsh, que te permitirá adicionar plugins (por exemplo para Git ou Ruby) e temas.
Este é o meu iTerm, com o tema Solarized e integração com o Git graças ao Oh My Zsh.
E ainda…
Apesar destas apps não serem exclusivas para programadores, não te esqueças que podes utilizar…
7 Razões para Aprender a Programarhttps://brunobrito.pt/wp-content/uploads/2015/09/7-beneficios-aprender-programar.jpg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2015/09/7-beneficios-aprender-programar.jpg
Nota que o que vou indicar neste artigo não obriga, de todo, a que dês uma volta de 180º à tua carreira ou que comeces subitamente a programar todos os dias; são simplesmente benefícios que irás certamente retirar desta prática (independentemente do teu nível de experiência) que poderás aplicar em muitas outras profissões ou desafios na vida.
Apesar de só andar a programar entre 8 a 10 horas por dia de há 3 meses para cá, a verdade é que há já alguns anos que me interesso pelo tema e muitas das suas vantagens começaram a manifestar-se de imediato.
Podes começar por aprender a programar em vários sites desta lista (como o Treehouse) ou seguindo tutoriais como os do Codecademy. Poderás explorar uma linguagem como Ruby ou JavaScript, ou optar por algo mais visual como HTML e CSS – todas apresentam os seus desafios.
Faças o que fizeres, estou certo que aprenderás algo pelo caminho que te tornará melhor naquilo que já fazes: e, só por isso, já acho que vale a pena!
Este vídeo, com várias caras conhecidas, mostra porque é que deves considerar aprender a programar. A minha lista também toca em alguns destes pontos. Vamos então a isto!
#1: Aumenta a tua produtividade
Os programadores são famosos por serem tremendamente eficientes à frente de um computador e não gostarem de trabalho repetitivo – na verdade, uma das principais filosofias é a de procurar ser o mais “DRY” possível (Don’t Repeat Yourself).
Para aumentares a tua produtividade não tens de escrever programas muito complexos. Ao dominares um editor de texto como o SublimeText (podes descobrir como o “artilhar” aqui) e a linha de comandos, poderás automatizar várias tarefas do teu dia-a-dia ou, no mínimo, realizá-las muito mais depressa.
Uma dica rápida: com o SublimeText, podes seleccionar uma palavra inteira com o atalho ⌘ + D (CTRL + D em Windows) e seleccionar essa mesma palavra noutros locais do documento ao repetires esse comando. Depois, podes alterar todas as tuas selecções em simultâneo, poupando-te o habitual Find & Replace.
#2: Ensina-te a desconstruir problemas
Na vida, é normal encontrarmos por vezes problemas tão avassaladores que nem sabemos propriamente por onde começar para os resolver.
Essa pode ser uma sensação muito desconfortável mas, como vimos no artigo anterior, é algo que o programador experiencia várias vezes por semana.
Como é que a aprendeu a aceitar? Desconstruindo problemas.
Neste mundo, divide and conquer é chave. Dividimos uma tarefa em pequenas mini-tarefas, avançando para a próxima apenas quando uma está dada como terminada.
Tudo passa por mini-projectos que, quando combinados, criam o projecto final.
Quando estamos a programar uma loja online, por exemplo, não escrevemos tudo ao mesmo tempo. Começamos por criar uma lista de produtos, depois o botão de adicionar ao carrinho e mais tarde o botão de remover do carrinho, testando sempre tudo devidamente após cada um destes processos.
Uma metodologia: Se um artigo de 2000 palavras te intimida, podes desconstruir o projecto em vários pontos: a introdução, o desenvolvimento, a conclusão, o título, as imagens, a edição final e a promoção do artigo, por exemplo.
#3: Torna-te mais metódico e preciso
Um dos maiores desafios da programação é o de dar nomes às coisas: por mais ridículo que pareça, é incrivelmente complicado encontrar um nome absolutamente exacto (ao mesmo tempo que sucinto) para descrever o que estamos a criar.
Quando não conseguimos que esse nome seja explícito o suficiente, comentamos o nosso código (para que nós ou outros colegas entendam o que aquelas linhas fazem, um dia mais tarde) ou vamos mais longe e criamos alguma documentação sobre o tópico (como é habitual nos populares ficheiros Readme).
Aqui, é absolutamente crucial tentar manter a coerência em tudo o que fazemos e, seguindo o príncipio já referido do DRY (Don’t Repeat Yourself), procurar criar código modular, ou seja, que nos permita copiá-lo para vários locais do nosso projecto sem perder as suas características.
Um conselho: com estas dicas, podes ser um profissional mais organizado (documentando tudo o que fazes), tanto para facilitar a colaboração com outros colegas como para tu próprio saberes o que estavas a fazer quando voltares a olhar para o teu trabalho 6 meses mais tarde.
#4: “Obriga-te” a aceitar a mudança
Numa indústria que todas as semanas introduz novas boas práticas, frameworks e linguagens, é impossível ficar na zona de conforto (a não ser, claro, que queiramos ficar sem trabalho).
Este *sentimento de instabilidade/ruptura* faz todo o sentido num ambiente onde todo o código que é escrito é temporário, seja porque será mais tarde re-escrito, seja porque passado 1 ano alguma funcionalidade nos obrigará a alterá-lo.
Na programação, o refactoring é constante – o código está constantemente a ser editado para ser mais eficiente e legível para toda a equipa. Essa constante “revisita” pode parecer frustrante aos olhos de um outsider, mas é um processo normal neste mundo.
Uma certeza: se encararmos a inevitável mudança com bons olhos, em vez de algo doloroso e frustrante, teremos melhores chances de evoluir e aprender novas formas de fazer as coisas.
O criador do Facebook, Mark Zuckerberg, disse uma vez uma frase que demonstra este ponto na perfeição:
Move fast and break things. Unless you are breaking stuff, you are not moving fast enough.
#5: “Obriga-te” a aprender depressa
Pela razão referida anteriormente, é inevitável aprendermos (com rapidez) novas práticas, novos atalhos no teclado, novas aplicações e novas linguagens.
Se gostas de aprender algo novo todos os dias, esta será, muito provavelmente, a indústria certa para ti. Mas se a ideia de ler blogs e fóruns de discussão todos os dias e investir em tecnologias que passado 6 meses ficarão obsoletas te assusta, talvez esta não seja vida para ti.
Os programadores são geralmente curiosos e gostam de experimentar novas tecnologias, mesmo que mais tarde acabem por as descartar.
Um modo de vida: procura ser curioso em tudo o que fazes – nunca é tempo perdido, mesmo que acabes por entender que algo não trará valor para ti.
O que importa aqui é a viagem – se estiveres sempre disposto a aprender mais sobre qualquer tópico, ficarás com uma grande capacidade de adaptação para qualquer situação em que te encontres.
#6: Desenvolve o espírito de comunidade
Os programadores podem ter fama de seres egocêntricos, mas na minha experiência são dos que mais contribuem para as comunidades em que se integram – seja respondendo a perguntas de novatos, seja criando tutoriais ou dedicando tempo a projectos open-source.
Muitos programadores têm blogs com a simples intenção de partilhar o que aprenderam pelo caminho e é frequente a promoção de seminários e meetups para discutir boas práticas e formas de fazer as coisas. E muitos a custo zero.
Uma sugestão: procura ser mais activo junto à tua comunidade. De que formas podes contribuir para que a indústria em que estás envolvido possa ser melhor?
Há muitas coisas que podes fazer: podes apresentar algo que dominas a outras pessoas ou promover uma meetup para juntares pessoas que partilham um interesse similar.
#7: É criativo!
Como compôr música ou escrever um livro, programar é algo extremamente criativo, em que começamos com um ficheiro em branco e podemos terminar com um videojogo, um website ou uma app para o telemóvel dias mais tarde.
É uma forma de te expressares; Drew Houston, CEO da Dropbox até vai mais longe:
Coding is the closest thing we have to a superpower.
Todos os dias podes encontrar sites, jogos e aplicações que elevam a fasquia do que é possível com um editor de texto. E com a informação e a tecnologia cada vez mais acessível, porque não aprender a desenvolver este lado da nossa criatividade?
Um desafio: cria uma página pessoal tua ou começa com algo mais simples, como um projecto no CodePen, inspeccionando o código de algo que gostes e tentando fazer semelhante.
Se tens um blog, pensa em algo muito simples que queiras alterar: uma cor da letra, por exemplo – este artigo poderá ser um bom ponto de partida!
Conclusão
Há muitos benefícios que podes retirar da programação, mesmo se a encarares como um pequeno hobby. Aprenderás a olhar para a mudança de outra forma, serás mais produtivo à frente de um computador e até, mais social.
Tudo pode começar com uma simples aprendizagem de HTML e CSS. Pelo meio, estarás a expressar-te criativamente!
Se programas, quais são, para ti, as maiores vantagens?
7 Realidades do dia-a-dia de um Programadorhttps://brunobrito.pt/wp-content/uploads/2015/09/7-realidades-programador.jpg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2015/09/7-realidades-programador.jpg
Na semana passada escrevi sobre alguns mitos de programação – um conjunto de ideias pré-concebidas que eu não duvidava que fossem verdade, até perceber (após algum tempo a programar) que estavam completamente erradas!
Hoje, como prometido, falo um pouco da realidade enquanto programador – aquilo que define o dia-a-dia de alguém que está todo o dia com o editor de texto aberto e com o terminal sempre activo.
Naturalmente, não pretendo que este artigo seja pretensioso – não sou um programador veterano, longe disso! – pelo que me vou cingir à minha (curta) experiência neste meio, que se resume a um período de quase 3 meses em que programar foi parte de mais de 10 horas de cada dia.
Contas feitas, ainda estamos a falar de algumas horas, portanto vamos então ver o que acontece realmente quando se passa o dia a programar.
#1: Encontrar erros é (demasiado) normal…
Mesmo quando ainda estamos a começar e os nossos ficheiros têm 5 ou 10 linhas de código, é incrível o número de erros que podemos encontrar.
Ao início, encaramos tudo isto com estranheza e, possivelmente, com sentimento de fracasso. Rapidamente voltamos para o editor de texto (sem sequer ler a mensagem de erro), reparamos que algo estava em falta, corrigimos, gravamos e tentamos de novo, apenas para encontrar novamente uma mensagem de falhanço.
O que aí ainda não nos apercebemos é que…
… os erros são nossos amigos!
Os erros vão ser nossos companheiros toda a carreira – podemos, com a prática, cometer menos erros (esquecermo-nos menos vezes daquela vírgula ou do nome correcto da variável, por exemplo), mas novos erros surgirão à medida que as nossa ambição e as nossas capacidades aumentam.
O que vai mudar com a prática é a forma como encaramos estas mensagens de (suposto) fracasso.
As mensagens de erro, seja no browser ou no terminal, apontam-nos para a direcção certa; vamos começar cada vez mais a ler sobre elas e a querer entendê-las, não só para as evitar como para passar para o problema seguinte – que pode ser, em muitas ocorrências, um novo erro encontrado que precisa de ser corrigido.
E o que faz qualquer programador que encontra uma mensagem de erro nova? Começa por fazer aquilo que todos nós fazemos, dezenas de vezes por dia: vai ao Google.
O que me leva para o ponto seguinte…
#2: Googling
Quando referi no artigo anterior que era importante um bom Google-fu, era precisamente por motivos como este: uma boa parte do nosso tempo é passado no Google.
Aqui, vais pesquisar com frequência por:
mensagens de erro;
comandos que não te recordas, para qualquer linguagem;
formas de resolver determinados problemas, como expressões regulares.
Na esmagadora maioria das vezes o Google fará o seu trabalho e serás direccionado para um fórum com a resposta à tua pergunta (muito provavelmente o Stack Overflow) ou um tutorial que contém a resposta que procuravas.
Se não obtiveste resposta, o mais provável é que tenhas de pesquisar de outra forma ou colocar uma questão num fórum – acredita, por mais específico que o teu problema pareça ser, o mais provável é que alguém já tenha passado pelo mesmo!
#3: A temível sensação de ficar stuck
Abres um ficheiro, começas a escrever e a coisa até está a ir bem: escreveste várias linhas de código, pelo caminho nem encontraste muitos erros e está tudo a correr de feição. Continuas a escrever mais um pouco até que, finalmente, lá volta aquele sentimento outra vez: ficaste stuck, ou preso.
Os minutos passam, convertem-se em horas e ainda não conseguiste avançar. Lês e relês o teu código e não entendes o que falta: o servidor está a correr, os ficheiros estão gravados e não há erros de sintaxe. Mas o tempo passa e continuas aqui preso.
Este é um sentimento terrível (na minha experiência pior que qualquer bloqueio criativo) mas com que os programadores têm de aprender a lidar numa base diária.
Estes são alguns dos pensamentos que passarão por ti, provavelmente várias vezes numa só manhã:
Mas porque é que não consigo fazer isto? Não faço a mínima ideia por onde começar… Este problema é simples, porque é que não está a funcionar? Acho que se ficar mais 3 horas a olhar para isto, nada de novo acontecerá. No que eu me fui meter…
Sim, sentes tudo isto e não é agradável. Mas acabas por aceitar essa sensação e, com persistência, lá acabarás por ultrapassar o obstáculo, aprendendo algo pelo caminho. E aí continuarás a tua missão até que a situação regresse, de preferência só depois do almoço.
Aqui, a chave, é realmente ser teimoso e não desistir: pesquisar mais um pouco, ler o nosso código mais uma vez, pedir ajuda a um colega ou passar para outra tarefa para “limpar a vista”.
#4: Brinca com a nossa auto-estima
Programação é surpreendentemente severa para a nossa auto-estima – todos os dias vemos sites incríveis, aplicações fantásticas e pode ser um pouco desesperante pensarmos quando é que seremos capazes de fazer algo similar.
Se juntarmos a isso o ponto anterior, em que tanta vez pensamos que estamos presos simplesmente por sermos burros, percebemos que os nossos dias são compostos por viagens emocionais algo atribuladas.
E aqui ainda falta referir a mítica síndrome do impostor. Aquela sensação constante em que sentimos que o nosso trabalho até agora foi uma fraude, os nossos programas funcionam por pura sorte e que não somos assim tão competentes. E não ajuda quando resolvemos um problema sem verdadeiramente entender como o conseguimos solucionar.
Esta é uma sensação complicada de gerir e, pessoalmente, não acredito que ficará mais fácil com maior experiência.
Porquê? Por causa do ponto seguinte.
#5: Não sabemos o que não sabemos… e quando se abre uma janela surge um mundo novo que desconhecemos
Quando começas a pensar em Web Development, pensas talvez em HTML, CSS e JavaScript. Mais tarde, perceberás que há sites em PHP ou Ruby. Pelo caminho ouves nomes como jQuery, Bootstrap ou AngularJS e conheces serviços como a Amazon Web Services ou o Github. E ainda falta saberes para que serve o Gulp, o Grunt, SASS ou PostCSS.
Quando algo não está a funcionar e encontramos a solução, é frequente surgir um novo mundo que era por nós desconhecido até à data. E é aqui que ficamos a conhecer alguma destas tecnologias que referi em cima (ou outras muito mais específicas).
Como podemos sossegar a nossa síndrome do impostor se sempre que ganhamos novas competências, percebemos que existe toda uma nova tecnologia altamente complexa que desconhecíamos e que nos dará tanto trabalho a conhecer?
Já diz o ditado:
Ignorance is bliss (a ignorância é uma benção)
Todas as semanas vais conhecer novas técnicas de fazer o teu trabalho – e por cada sensação que terás de ter feito um upgrade às tuas qualificações, soma 5 sensações de “wow, há mesmo muito que desconheço”.
E se por acaso algum dia vieres a achar que tens a situação totalmente controlada, o ponto seguinte servirá para te relembrar que tal nunca acontecerá.
#6: Está SEMPRE em constante mudança
Por norma, este é o melhor raciocínio que podes ter:
A única certeza, é a certeza da mudança.
Esta frase foi algo que ouvi inúmeras vezes na Creators School) e que mostra o quão efémero é este mundo.
Tecnologias revolucionárias estão sempre a surgir, algumas carregadas de hype que te farão querer saber mais e, por vezes, farão com que alteres a tua forma de trabalhar. As boas práticas estão sempre a mudar e o que hoje é recomendado pode ser, em 3 meses, desaconselhado.
Em suma, esta é uma carreira em que sairás frequentemente da tua zona de conforto e onde terás de estar receptivo a mudanças constantes. Este é um excelente artigo sobre o tema.
#7: Ler, ler, ler…
Sem surpresa, o dia-a-dia de um programador é passado não só a escrever, mas também a ler: tal como um escritor.
Um programador passa o dia a ler código (seja o dele próprio seja o de outros), a ver as novidades do Hacker News, a procurar respostas no Stack Overflow, a seguir tutoriais sobre uma tecnologia que lhe interessa e a consultar a documentação de determinada linguagem de programação.
Até é de admirar que, no meio de tanta leitura, sobre tempo para escrever. Mas a verdade é que se não dedicarmos uma boa quantidade de tempo do nosso dia a ler, dificilmente conseguiremos adquirir novas competências ou sair do problema em que estamos presos há 2 horas!
Conclusão
Na minha experiência, é assim que se passam as horas de um programador. Muito tempo a resolver problemas e a consultar documentação, com algumas viagens emocionais pelo meio, numa indústria que é mais ágil do que provavelmente qualquer outra.
E tu, concordas? Tens algo a acrescentar? Manifesta-te nos comentários!
7 Ideias sobre Programação que afinal eram Bugshttps://brunobrito.pt/wp-content/uploads/2015/09/7-mitos-programacao.jpg620350Bruno BritoBruno Britohttps://brunobrito.pt/wp-content/uploads/2015/09/7-mitos-programacao.jpg
Há 2 meses atrás, fiz as malas e fui para o Porto para 8 semanas de programação intensiva. Há já uns anos que estava interessado em passar pela experiência de um coding bootcamp e assim que tomei conhecimento de uma iniciativa desse género em Portugal, não pensei 2 vezes.
Num curso tão imersivo, foi francamente difícil subir até à superfície e reflectir sobre o que estava a acontecer. Agora que a poeira já assentou e estou de regresso a Lisboa, parece que já consigo colocar em palavras o que aconteceu, abrindo este novo espaço no blog dedicado à partilha de experiências no mundo da programação.
Aprender a programar está na moda e há várias razões para tal: vivemos num universo cada vez mais tecnológico, dependemos cada vez mais de apps e existe uma crescente procura de mão-de-obra neste sector. Ver jovens de 25 anos a arrecadar milhões com as suas start-ups também talvez ajude.
Para alguém que tem um background de Marketing Digital, o mundo da Programação faz todo o sentido, apesar de ser, na verdade, muito distinto. E apesar de já há vários anos andar a explorar este tópico, seja através de cursos online como os da Treehouse ou tutoriais da Codecademy, nada se compara a chegar a uma sala todos os dias e, das 9h30 às 18h30, interpretar e escrever código.
Muito se pode dizer sobre os últimos 2 meses – houve muitas sensações, lições e ideias – mas vou seguir um dos grandes ensinamentos que este novo mundo me trouxe: partir uma questão em pontos mais pequenos, começando por falar sobre… mitos.
Mitos
Por mais que achasse que tinha uma ideia aproximada do que era um programador, a verdade é que vi algumas das minhas verdades indiscutíveis abaladas.
As minhas ideias pré-concebidas não eram baseadas naquele “amigo meio-estranho que é programador” ou fruto do visionamento de dezenas de filmes em que o rapaz do teclado é a pessoa mais inteligente da sala ou o único capaz de ampliar imagens escrevendo complexos comandos no terminal (se gostas deste último, vais adorar este site) – era simplesmente o que julgava ser verdade até ter passado algumas semanas a programar.
#1: Só existe uma solução para cada problema
Esta ideia talvez tenha surgido pela habitual associação da matemática à programação. Se quando resolvemos uma equação, só há um resultado correcto, o mesmo se aplica à programação, certo?
Bom… não necessariamente. Há muitas formas de chegar a um resultado e não existe “A” resposta certa para uma situação.
O que há é uma série de raciocínios que, quando traduzidos para código, poderão responder de forma satisfatória ao desafio original – e como cada pessoa tem um raciocínio diferente, a forma de solucionar o problema variará de pessoa para pessoa.
Isto significa que se procuravas algo que fosse uma ciência exacta (como eu pensava que isto seria), o mais provável será que a programação te desiluda.
Para mim esta conclusão foi surpreendente mas, ao mesmo tempo, vista com muitos bons olhos.
#2: Não é preciso falar com ninguém
Se existe um estereotipo para um programador, essa imagem raramente é positiva. Normalmente, pensa-se numa pessoa que é socialmente inadaptada porque passou demasiado tempo na sua cave a olhar para linhas de código e se esqueceu de como se fala com uma pessoa.
Apesar de achar que tal era exagerado, acreditava, isso sim, que para fazer um bom trabalho não precisaria de falar com ninguém – bastava estar no editor de texto até ao fim do dia e depois fazer push (ou upload do trabalho realizado).
A verdade é que tal não poderia estar mais longe da verdade. Nos últimos 2 meses interagi com dezenas de pessoas que programam e vi como é importante comunicar.
Programar não é apenas escrever linhas de código de forma convulsa – é muito mais filosófico do que parece. Como vimos no 1º ponto, a forma como se resolve um problema é subjectiva, pelo que uma discussão saudável com um colega pode ser benéfica e fazer-nos chegar a uma solução mais eficaz para o que procuramos.
Programar a pares é, na verdade, algo que muitas empresas adoptam e realmente produtivo – estima-se que a produtividade em pair programming é de 3 ou 4 vezes superior a um programador a solo!
Se pensavas, como eu, que uma empresa de programação era um conjunto de pessoas num cubículo com os olhos vermelhos de tanto olhar para um ecrã, vais apanhar uma grande surpresa – serão provavelmente aqueles que estão na copa ou nos sofás a pensar como vão resolver o próximo desafio.
#3: Os programadores sabem tudo de cor
Se é verdade que com a prática alguns comandos ficarão familiares, a realidade é que a documentação será absolutamente fundamental a todas as alturas – isso e um bom Google-fu, claro está.
Com várias soluções possíveis e com tantos comandos disponíveis, é irrealista pensar que o programador terá sempre a solução na ponta dos seus dedos. Ele tem, isso sim, a capacidade de saber o que procurar e como o incorporar no seu projecto, sendo frequente para tal uma passagem pelos fóruns para entender qual a melhor abordagem para o seu caso em particular.
#4: Basta colocar os phones, uma lata de Monster e programamos 12 horas seguidas a teclar sem parar
Nah, isso é praticamente impossível, pelo menos ao início. Vais sentir o teu cérebro a derreter com a quantidade de problemas que não sabes a resposta e vais ter de aprender a reduzir grandes problemas em pequenas tarefas, como falarei num artigo posterior.
Portanto, a não ser que sejas um hero programmer, não conseguirás fazer muito barulho no teu (novo) teclado mecânico, até porque tens de equacionar as pausas para reflectir sobre as melhores soluções e os momentos de desespero que terás quando ficares preso no teu raciocínio.
#5: No fim, tudo vai ficar perfeito
Esta custou-me um pouco engolir, mas de facto nenhum projecto ficará perfeito… porque programar é também um jogo de compromissos; consideramos as várias tecnologias disponíveis e optamos por aquelas que melhor se adaptam à situação.
É bom que procures a perfeição e que sejas exigente contigo próprio, claro, mas mentaliza-te que haverá sempre algum código que poderia ser reduzido/re-escrito, alguma resolução de monitor em que o teu site não fica como esperavas e alguma situação em que a tua app não funciona conforme esperado.
O melhor será aceitar essa inevitabilidade e fazer o possível por minimizar essas ocorrências. Terás sempre de pegar em questões como performance, usabilidade e design e colocá-las na balança… e dificilmente poderás (ou saberás como) maximizá-las.
#6: O programador é arrogante e guarda tudo para ele próprio
Apesar de me sentir cada vez mais confortável a programar, a verdade é que os primeiros tempos são de grande frustração e onde nada é fácil – vamos ter de sobreviver um período em que tudo é muito estranho até que as coisas começam a fazer algum sentido.
Com essa curva de aprendizagem, poderíamos assumir que programadores mais avançados fossem inacessíveis ou, no mínimo, difíceis de lidar. No entanto, não foi isso que testemunhei, seja online ou offline.
A comunidade de development é excelente – existe imensa informação sobre qualquer tópico e não somos alienados se perguntarmos algo totalmente óbvio ou básico, o que considero crítico para não desanimar iniciados.
E fico com a clara sensação que ninguém guarda a informação para si próprio – depois de uma grande descoberta, o mais provável será um programador escrever sobre isso no seu blog pessoal, colocar o código no GitHub ou no CodePen ou ajudar futuros utilizadores postando respostas no Stack Overflow.
O mesmo se sucede de modo offline, com as diversas meetups e conferências promovidas em todas as cidades, com o intuito de juntar programadores.
Posto isto, parece-me ser evidente a vontade em ajudar o próximo, até porque todos já estiveram uma vez bloqueados.
#7: Erros no código? Isso é de programador inferior
Independentemente do teu grau de experiência, vais sempre encontrar erros – seja porque falta uma vírgula, porque te enganaste no nome de uma variável ou porque te esqueceste de gravar um ficheiro. Acontece a todos e não é por seres veterano que vais deixar de os encontrar.
O que vai mudar é a tua relação para com eles. Os erros não são mensagem de fracasso – são indicações para saberes o que deves alterar para que o teu programa funcione.
Se calhar é por isso que em Silicon Valley os fracassos são celebrados, não?
Se ao início encontrava um erro e rapidamente voltava para o editor de texto para procurar a origem do problema, agora prefiro levar o meu tempo a ler e interpretar as mensagens de erro, para que a resolução seja bem mais fácil.
Uma boa parte de programar é saber olhar para os erros e resolvê-los. Essa é uma das grandes lições no mundo REAL da programação… mas sobre isso, falarei em detalhe no próximo artigo desta série!
Conclusão
Como seria de esperar, depois de programar em regime full-time durante 2 meses, existe uma considerável diferença entre o que imaginava e a realidade.
Neste período, aprendi que programar não é algo sobre-humano, que os programadores são pessoas acessíveis e preocupadas em ajudar e que resolver problemas é algo muito mais subjectivo do que esperava.