Como ter uma relação saudável com o seu dinheiro

Este é um post bem diferente, mas que queria compartilhar por aqui. De um ano pra cá, mudei muito como me relaciono com dinheiro e acredite, nunca é tarde! Quanto mais cedo você tomar consciência do que significa ter independência financeira, melhor para você. Se você quiser ler mais sobre isso, recomendo o conteúdo que o Leandro Ávila oferece gratuitamente no Clube dos poupadores.

A questão é que muitas das coisas que fazemos são feitas sem reflexão, apenas repetimos o que aprendemos culturalmente e dinheiro é uma questão cultural muito forte no Brasil. Um exemplo disso é que a maioria das pessoas acreditam que o dinheiro serve apenas para gastar! Pois bem, eu não sei em que mundo você vive, mas no meu mundo, dinheiro é poder e símbolo de independência financeira e se você não tiver controle nem consciência do que fazer com o seu dinheiro, as lojas irão fazer isso por você.

E acredito que você não queria depender de um governo corrupto para garantir que você terá uma aposentadoria, certo? \o/ Essa citação do Leandro Ávila é muito legal e te deixa bem pensativo:

Se existe uma coisa que devemos diminuir quando estamos falando de dinheiro, essa coisa se chama dependência. Quanto menos você depender financeiramente do Estado, instituições de previdência e até de amigos e parentes no futuro, melhor será para você. A dependência financeira nunca foi algo desejável. Busque mais liberdade. Quanto mais independência financeira, mais liberdade, mais possibilidades, menos problemas e mais tranquilidade. A independência financeira não é garantia de felicidade, mas ela ajuda nas áreas da sua vida onde o dinheiro tem utilidade.

E isso foi justamente o que me fez mudar de comportamento sobre dinheiro, principalmente quando pensei no quanto eu seria feliz se trabalhasse no que gosto e não porque tenho contas para pagar. Geralmente as pessoas entram na ‘Corrida dos Ratos’ e fazem contas sem nem perceber e aí vão gastando cada vez mais com coisas para fazê-las esquecer do trabalho! Louco, não?

A partir de agora, sempre que vou gastar com algo, faço muitas contas e decido o que é melhor, nada por impulso. Até porque geralmente o impulso de consumir vem de um problema interno relacionado à sua vida, então, muito cuidado ao consumir sem parar para pensar antes!

Então aqui vão algumas dicas para ter uma relação mais saudável com o dinheiro que passei a praticar e recomendo:

1 – Multiplique o valor daquilo que viocê quer adquirir por 2 ou 3 anos e veja o impacto na sua vida
2 – Sempre compre à vista (se você não tem o dinheiro para pagar, então não compre)
3 – Dedique um tempinho todo dia para ler sobre um investimento novo (recomendo Júlia Mendonça, Gustavo Cerbasi e Me poupe)
4 – Fale com seus amigos sobre finanças e discuta sobre isso sem vergonha ou medo

Depois que você começa a analisar essas coisas, você aprende a sair do automático e a dar mais valor às suas ações, ao seu trabalho e ao seu tempo. Maravilha, não? Tudo é questão de escolha.

Até a próxima!

Minha primeira linguagem funcional: Elixir

Elixir é uma linguagem funcional que vem ganhando bastante espaço nos últimos tempos. É bom para pensar um pouco fora da caixa, principalmente para quem está acostumado a programar usando apenas linguagens imperativas (C, Java, etc.), como euzinha aqui. Dentre os maiores paradigmas de programação, a funcional é a mais antiga!

As linguagens funcionais podem ser compreendidas como avaliações de expressões feitas pelo computador, em que uma função pode envolver outras funções (se você quiser saber mais, procure sobre Cálculo Lambda).

Fiz o curso Try Elixir, do CodeSchool (gratuito e bem rápido, corre lá!). Nessa mesma semana em que tive meu primeiro contato com Elixir, tivemos uma revisão de funções compostas na faculdade e pra mim foi bem legal ver esses conceitos matemáticos assim diretamente aplicados.

Em Matemática, por exemplo, podemos fazer várias funções dentro de funções. Considere

f(x) = sen(x);
g(x) = log(x);
h(x) = x⁴;

Podemos fazer a seguinte composição das funções acima: f(j(h(x))), ou seja,

sen(log(x⁴))

Assim, pensei em implementar essa função composta em Elixir e para fazer isso, vamos usar o pipe operator. Ele funciona assim (veja mais aqui):

O operador pipe é representado por |>, recebe o resultado de uma expressão e passa ele adiante. Vamos dar mais uma olhada no trecho de código acima reescrito com o operador pipe:

other_function() |> new_function() |> baz() |> bar() |> foo()
O pipe pega o resultado da esquerda e o passa para o lado direito.

Usamos a biblioteca :math, que é a mesma usada em Erlang, ficando assim:


defmodule CompositeFunction do
  def my_example(x) do
    result = :math.pow(x, 4)
    |> :math.log()
    |> :math.sin()
    IO.puts(result)
  end
end

Para rodar local, digite iex para entrar no compilador, depois c(“composite_function.ex”) e depois CompositeFunction.my_example(seu_argumento). E Voilà!

Rodando CompositeFunction.my_example(5) no terminal, ele retorna:
0.15395162623403327
:ok

Espero que curtam, até a próxima!

Outsourcely: promo code de 30% em todos os planos!

Sabemos que atualmente as pessoas buscam cada vez mais por propostas de emprego que lhes tragam qualidade de vida, talvez por isso o número de pessoas que trabalham remotamente tenha aumentado. Dentre os inúmeros benefícios que podemos citar com essa relação de trabalho está justamente um melhor aproveitamento do tempo, a moeda mais valiosa do mercado. Ficar preso em um escritório o dia inteiro, com horários engessados há muito tempo deixou de ser o que as pessoas procuram.

Em contrapartida, torna-se cada vez mais difícil encontrar profissionais confiáveis e qualificados, levando empresas a empenhar bastante tempo nessa jornada, não havendo garantias de que encontrem o que procuram. A Outsourcely é uma plataforma criada em 2014 que vem crescendo bastante nos últimos anos, competindo de igual para igual com outras plataformas já estabelecidas no mercado e promete resolver esse problema. Já são mais de 250.000 profissionais remotos cadastrados de 180 países e mais de 25.000 empresas cadastradas!

Os canais de atendimento também são variados e o pagamento do serviço é feito apenas entre você e o profissional, sem pagar nada para Outsourcely. Além disso, eles oferecem diferenciais que se tornam vantajosos tanto para quem busca profissionais qualificados quanto para quem oferece seus serviços: os projetos são todos avaliados previamente e o freelancer recebe 100% do pagamento (algumas pagam menos de 20%, ficando com a maioria do que você ganharia :/). Além disso, você escolhe se quer um trabalho remoto estável, de 40h por semana ou quer aumentar sua renda fazendo um trabalho remoto durantes as horas vagas (:

E o legal da Outsourcely é que lá você encontra tudo que você procura para o seu produto: Designers, Desenvolvedores, Redatores, Marketing, Contabilidade, Advogados, e muito mais! Lá você realmente vai encontrar os melhores e qualificados talentos que você precisa. Como freelancer, você criar seu perfil e se comunica diretamente com as empresas.

Por isso, se você busca uma plataforma que vá te ajudar a trabalhar remotamente, entre no Outsourcely e use o código staff30 e ganhe desconto de 30% em qualquer um dos planos (você pode testar a plataforma usando-a gratuitamente, mas o desconto é sem vencimento, olha que alegria!). Compartilhe com seus amigos também e aproveitem!

Até a próxima!

Can you get the loop? #Codewars

No final do ano passado meu namorado me mandou esse site super legal para treinar Algoritmos (sempre bom): Code Wars. Porque eu curti? É mais amigável, a comunidade é mais ativa e você cria um clã com seus amigos. Ainda que você seja iniciante, ele te sugere problemas mais difíceis para você ir treinando, além de mostrar as soluções de outros participantes para você analisar e aprender boas práticas depois de submeter sua solução. E já que falamos de clãs, quem quiser entrar no meu, aí vai o link: entre no meu clã! =D

Semestre passado, vimos algumas Estruturas de Dados e dentre elas, listas encadeadas. Daí resolvi resolver um Kata para revisar nas férias e postar aqui para discutir com vocês.

O problema

Pode ser acessado aqui e a seguir a descrição:

You are given a node that is the beginning of a linked list. This list always contains a tail and a loop.
Your objective is to determine the length of the loop.
For example in the following picture the tail’s size is 3 and the loop size is 11.

Portanto, a solução requer descobrir a posição do tail (que será o nó cujo conteúdo se repete) para retornar o tamanho do loop. O que eu fiz foi criar um dicionário e armazenar os conteúdos dos nós até encontrar um que se repete – o tail. A partir daí, rodei outro while para retornar o tamanho do loop. O código em Python pode ser visto a seguir:


def loop_size(node):
    my_dict = {} 
    p = node // node é o head que foi passado como argumento
    my_dict[node] = p //inicializando dicionário com o conteúdo de node
    
    while p.next not in my_dict: 
        p = p.next
     
    my_dict[p] = p
    tail = p // ao sair do loop eu acho o tail, pois é ele que repete
    
    t = tail
    size = 1 
    while t.next != tail: 
        t = t.next
        size +=1
        
    return size

Sei que é possível resolver esse problema sem utilizar dois whiles, mas por enquanto fica essa solução e depois eu posto novamente o código refatorado, pois ainda preciso estudar mais sobre dicionários. Curtiram? =P

“Mais rápido e melhor”: como alcançar seus objetivos

Em Mais rápido e melhor, Charles Duhigg faz um exploração inovadora da ciência da produtividade e por que, no mundo de hoje, como você pensa é muito mais importante do que o que você pensa. Com base nas últimas descobertas da neurociência, psicologia e economia comportamental Duhigg explica que as pessoas, empresas e organizações mais produtivas não apenas agem diferente, elas veem o mundo de modos profundamente diferentes. Elas sabem que produtividade tem a ver com fazer escolhas. A maneira como tomamos decisões; as grandes ambições que colocamos em primeiro lugar e as metas fáceis que ignoramos; a cultura que estabelecemos para estimular a inovação; o modo como interagimos com as informações que temos diante de nós: é isso que separa os simplesmente ocupados dos genuinamente produtivos.

Sempre achei interessante aquelas pesquisas da Psicologia e Neurociência sobre comportamento humano e acredito que esse conhecimento seja algo essencial para saber lidar com as pessoas de forma eficiente e produtiva nos dias de hoje. Você já se perguntou porque algumas conseguem alcançar seus objetivos e outras não? O que pessoas bem-sucedidas têm em comum e o que você pode aprender com elas? Eu sim e sempre quis saber mais sobre a vida delas (aka Beyoncé).

Tudo isso me fez começar a ler esse livro. Nesse post vou falar sobre alguns pontos que achei mais interessantes.

1 – Mapas mentais

Não há como negar: auto-motivação, foco e produtividade estão ligados. Para ter foco é preciso ter automotivação, para se automotivar é preciso ter controle das suas ações, para ter controle das suas ações é necessário ser produtivo. Uma forma de juntar tudo isso é praticar mapas mentais no dia a dia:

Pessoas que sabem administrar a própria atenção e que têm o hábito de construir modelos mentais robustos tendem a ganhar mais dinheiro e tirar notas melhores. Além do mais, experimentos demonstram que qualquer um pode aprender a desenvolver o costume de construir modelos mentais. Quando criamos o hábito de contar para nós mesmos histórias sobre o que acontece à nossa volta, aprendemos a aguçar a nossa atenção. Esses momentos de narração podem ser simples, como, a caminho do trabalho, tentar imaginar uma reunião iminente — fazer esforço para imaginar como ela começará, quais questões você levantará se o chefe pedir algum comentário, que objeções seus colegas talvez façam —, ou podem ser complexos, como uma enfermeira que diz a si mesma que aspecto um bebê deve ter enquanto atravessa uma UTI neonatal. Se você quer aprimorar sua sensibilidade para os detalhes no trabalho, cultive o hábito de imaginar, com o maior grau de especificidade possível, o que espera ver e fazer quando chegar à sua mesa […] Se você precisa melhorar a concentração e aprender a evitar distrações, tire um instante para imaginar, com o máximo possível de detalhes, o que está prestes a fazer. É mais fácil saber o que vem adiante quando temos um roteiro bem formulado dentro da cabeça.

Achei essa parte super interessante, pois é uma prática facilmente aplicável! Vou implementar esse ano e creio que ajudará a diminuir a ansiedade. Esse capítulo ainda fala sobre o mito de sermos multitarefas (nunca fomos xD).

2 – Metas SMART

Como ainda estamos no início do ano (embora algumas pesquisas apontem que quase 80% das pessoas já esquece das metas feitas no fim do ano a partir do dia 15 de Janeiro), você deve lembrar quais metas você prometeu a si mesma(o) que faria esse ano, certo? Acontece que, se você apenas pensou ou só colocou no papel sem detalhar as próximas ações para uma delas, sinto informar que as chances de você alcançá-las são bem mínimas e vai ficar só sendo uma promessa mesmo.

Uma meta para ser alcançada precisa ser uma meta SMART (traduzidas ficam):

Específico
Mensurável
Realista
Atingível
Cronograma

Porquê elas funcionam?

[…] o motivo é que processos de determinação de metas como a metodologia SMART obrigam as pessoas a converter aspirações vagas em planos concretos. O processo de fazer com que um objetivo seja específico e demonstrar que ele é atingível inclui compreender quais são os passos necessários — ou mudar ligeiramente a meta, se os propósitos iniciais se mostram pouco realistas. Formular um cronograma e um modo de estimar o sucesso impõe ao processo uma disciplina que nenhuma boa intenção supera. […] para que essa meta seja mais do que apenas uma aspiração, precisamos de um quadro mental disciplinado que nos mostre como transformar um propósito remoto em uma série de objetivos realistas de curto prazo.

É preciso ter cuidado para não cair na tentação de criar metas pequenas apenas para ter a sensação de estar no controle (sabe aquela sensação boa de riscar uma tarefa da agenda? é disso que to falando)! Você precisa ter ambição, mas aliada a um sistema que te faça detalhar os próximos passos nos próximos dias, na próxima semana, no próximo mês… Tudo isso faz com que suas metas sejam coerentes com seus objetivos de curto, médio e longo prazo. Isso é o que David Allen chama de Horizontes no seu método de produtividade Getting Things Done.

3 – Metodologias Ágeis

A cultura de dedicação da NUMMI simplesmente me deixou sem fôlego. A Toyota transformou uma das piores empresas de automóveis dos EUA em uma empresa bem sucedida, com seus funcionários produtivos e felizes por trabalhar lá. Como conseguiram isso? É resultado do que a cultura de dedicação consiste:

[…] esta é uma das lições mais importantes que lugares como a NUMMI e as filosofias enxutas e ágeis transmitem: os funcionários trabalham melhor e de forma mais inteligente quando acreditam que têm mais autoridade para tomar decisões e quando creem que seus colegas estão dedicados ao sucesso deles. Uma sensação de controle pode impulsionar a motivação, mas, para esse sentimento produzir ideias e inovações, as pessoas precisam saber que suas sugestões não serão ignoradas, que seus erros não serão motivo de retaliação.

Interessante, não?! Já falei um pouco sobre isso neste post aqui. Foi legal de ler sobre esse assunto num livro que não tem aparentemente nada a ver com software (:

4 – Concluindo

Esses foram só alguns casos que quis falar aqui, para deixar vocês com vontade de ler =D
Duhig fala de várias empresas e pesquisas super interessantes e no final do livro, ainda faz um ‘roteiro’ de como aplicar os conhecimentos que ele estudava no nosso dia a dia e como isso o ajudou a terminar o livro. Até a próxima!

Manual de sobrevivência 2016.2

É com muita alegria que vos falo neste post, pois minha meta desse ano em relação à faculdade era passar em todas e consegui!!

ai que alegria e sufoco!

Foi muito puxado, pensei em desistir de uma matéria, maaaaas tem que perseverar e nunca desistir! Essa foi uma lição muito importante que aprendi esse ano e que repasso a quem tiver lendo esse post =D

Bom, aí vão os links que me ajudaram para sobreviver a este semestre, separados por disciplina (olha como sou legal xD):

Algoritmos II

Pois bem, esse semestre a matéria mais legal foi a de Algoritmos, onde estudamos recursão, algoritmos de ordenação, busca binária, análise de algoritmos e algumas estruturas de dados. Links super úteis:

Algorithms, Part I

Curso gratuito online, se joga!

Sorting Algorithms

Playlist muito didática para quem curte aprender por vídeos.

Data Structures

Idem.

Visualising data structures and algorithms through animation

Esse site é muito legal e foi meu amigo Márcio quem me mandou. Bem colorido e didático.

Dica que vale passar sem sufoco: às vezes você acha que entendeu, mas é só praticando que terá certeza e verá os pontos que não compreendeu, portanto, implemente os algoritmos antes das provas!

Cálculo I

Segunda matéria mais legal!! Cálculo é muito legal e vou deixar também alguns links de vídeos e sites que me ajudaram a compreender melhor os conteúdos: limites, derivadas e introdução ao cálculo integral.

LCM Aquino

Segunda vez que esse canal me ajuda, gosto das explicações dele, pois sempre mostra as provas dos teoremas, além de muitos exemplos.

Toda a Matemática

Esse canal também é muito legal e o professor sempre posta vídeos curiosos do mundo da Matemática.

Wolfram

Site para calcular tudo que você imaginar. Tem plano com desconto para estudante, onde você tem acesso à solução e pode verificar suas respostas (:

Organização e Arquitetura de Computadores

Consegui passar de boa, então você também consegue xD Aí vão os links:

Introdução a Arquitetura de Computadores

Livro muito bom e necessário para a matéria. Tem poucos conteúdos online que explicam tão bem quanto este livro e que seguem a mesma ementa do Senac (:

Memória Principal

Vídeo que me salvou na primeira prova =D

Projeto Integrador II – Jogo educacional 2D

Graças a meu professor, pude desenvolver o mesmo jogo do meu projeto de Iniciação Científica em Python. O link tá no meu github e vocês podem conferir o meu =D
Nesse PI não posso ajudar muito aqui, a não ser incentivar a criar um jogo que você goste muito da ideia (:

Álgebra Linear

Playlist salvadora

Khan Academy

É isso, espero que isso seja útil e até mais!

Meu 2016 em livros

Olá, pessoal! Quanto tempo, né? Agora que estou oficialmente de férias, vou escrever mais por aqui para compensar a parada, pois conheci e aprendi coisas novas bem legais esse ano e queria compartilhar com vocês 😀

No início do ano, eu tinha estabelecido uma meta de ler 30 livros esse ano, porém mal sabia eu o quão corrido seria esse segundo semestre, por isso baixei a meta para 20. Resultado? Já li 20 e estou terminando mais 3, então, não foi tão longe do que pensei no início do ano.

Quero agora indicar os livros que mais gostei, claro. Esse ano decidi ler coisas mais diversificadas do que costumava ler e isso foi muito bom, pois me mostrou a importância de sair da zona de conforto. Acabei lendo mais sobre motivação, pensamento positivo e organização financeira. O restante vocês podem conferir na imagem:

Meu 2016 em livros

Os que mais gostei foram:

1 – How to Bake Pi – Eugenia Cheng

Ainda não terminei de ler, mas é muito legal! Já falei da Eugenia Cheng por aqui e comprovo que ela é realmente sensacional: Matemática é linda e infelizmente a escola nos faz odiá-la, mas compreendê-la hoje é fundamental. Cheng junta duas coisas que aparentemente não têm nada de comum: raciocínio lógico e culinária. Recomendo para quem queira dar uma segunda chance para a Matemática ou para quem curte cozinhar (:

2 – A Arte de pedir – Amanda Palmer

Esse livro foi indicação da minha querida amiga Amanda e adorei! Livro sensacional que mostra o quão frágil nossa vida é, mas o quão leve ela se torna quando temos pessoas especiais ao nosso lado, além de lutar pelo que acreditamos.

3 – Trabalhe 4h por semana – Tim Ferris

Se você não leu esse livro até agora, VÁ AGORA e me agradeça depois.

4 – Girlboss – Sophia Amoruso

Fazia tempo que queria ler e achei na promoção, então comprei. Livro muito inspirador, apenas! E nos faz refletir sobre o poder de ir em busca do que gostamos, independente do que vão pensar de nós.

5 – Adeus, aposentadoria – Gustavo Cerbasi

Na metade do ano pra cá, minha amiga Amanda (isso que é amiga, hein, aprendam!) me recomendou o canal da Nathália Arcuri, o Me poupe! um canal de informações e entretenimento financeiros. Minha vida mudou desde então e estou sempre indo atrás de aprender mais sobre investimentos, tesouro direto, metas, objetivos e por aí vai! Recomendo muito e tenho certeza de que, se colocar em prática pelo menos metade do que ela fala, seu 2017 vai ser bem melhor do que 2016! =D Ela indicou alguns livros e entre eles é o Adeus, aposentadoria, do Gustavo Cerbasi. Livro mais do que fundamental para o cenário econômico do nosso país.

A maioria desses livros estão disponíveis para baixar, por isso, não tem desculpa para não ler xD E você, o que leu de legal esse ano? É isso, espero que vocês curtam alguns e leiam os que indiquei. Com tudo que li esse ano com certeza em 2017 terá muito mais.
Até mais!

Compreendendo Recursão

Muito bem, semestre começou com tudo e estou aprendendo muita coisa nova! Uma delas que estou vendo agora é Recursão. Se você já ouvi falar de Algoritmos, provavelmente já deve ter ouvido falar de Recursão também. De acordo com o material da nossa aula

um processo recursivo é um processo que implementa uma relação de recorrência. Uma relação de recorrência é uma expressão matemática utilizada para expressar uma equação de recorrência.

Wait, what? Vamos por partes, pois esse é um conceito muito difícil de ser compreendido, mas vale a pena, prometo. O mais legal de se aprender recursão é criar algoritmos menores e mais bonitos (embora nem sempre seja o mais eficiente!). Resumindo, uma função recursiva vai chamar a si mesma e retornando os valores de cada chamada, até chegar no caso base.

Calma, não é mágica! Acredito que uma das maiores dificuldades seja compreender os passos para escrever uma função recursiva para que esta não caia num loop infinito. Por isso é preciso ter atenção às duas partes essenciais de uma chamada deste tipo e verificar com números inteiros o problema até que você entenda o que será o caso base e a chamada recursiva a partir do exemplo a seguir:

Considere um vetor de inteiros de tamanho n. Uma função recursiva que calcule o produto dos elementos estritamente positivos de um vetor de inteiros v [0..n-1].

 int produto (int v[], int n) {
     if(n == 1){
   	 return v[0];
     }
     if(v[n-1] > 0){
   	 return v[n-1] * produto(v, n-1);
    }
	return produto(v,n-1);
 }

O caso base – Essa é a parte que você sabe o resultado e deve se aproximar na próxima etapa. No exemplo abaixo, vemos que o caso base é a condição if (n == 1) return v[0];, pois quando o vetor chegar até o primeiro elemento, não há mais necessidade de se calcular o produto, certo?

A chamada recursiva – Esta deve ser quebrada em pedaços menores até atingir o caso base. No nosso exemplo, fazemos duas chamadas distintas. Caso o elemento da posição v[n-1] a ser testada seja positiva, então retornamos return v[n-1] * produto(v, n-1); , caso contrário, chamamos a função para continuar a descrescer o valor de n até atingir o valor de 1, nosso caso base.

O que a função faz é o seguinte. Vamos supor que o nosso vetor v[4] = {1, 2, 3, 4} e o tamanho do vetor seja n = 4.

produto(v, 4)

v[3] * produto(v, 3)
v[3] * v[2] * produto(v, 2)
v[3] * v[2] * v[1] * produto(v, 1)
v[3] * v[2] * v[1] * v[0]
>> 4 * 3 * 2 * 1 = 24

Esse exemplo foi retirado desse material e está disponívelneste link. Veja também outras formas de usar a recursividade para resolver o mesmo problema (:

Vá fazendo com calma cada passo para não se perder (o que é muito fácil) e compreender como o computador entende essas chamadas (vale printar todas as entradas para ver o valor de retorno a cada chamada). Dá um trabalho e sua cabeça buga por um momento (ou dias xD), mas seu código fica mais bonito e te deixa com uma sensação maravilhosa de finalmente aprender Recursão 🙂

Como aprender a programar

Olá, pessoas queridas! Este post é uma compilação que resolvi fazer com mais links  e dicas para ajudar a galera que quer aprender a programar. Vale lembrar que, assim como tudo que aprendemos na vida, não se trata de mágica, mas de um processo, então, anime-se para começar a ver as coisas de outro jeito! Abaixo algumas dicas e links para vocês 🙂

1 – Programar se aprende programando

Sei que parece loucura, mas é como aprender outa língua: você tem que praticar para aprender. Neste sentido, sinta-se feliz porque existem muitos sites legais com este propósito!! Acredito que o mais importante é não se preocupar em entender TUDO, ir com calma e paciência.

Embora sejam muitas opções de links e de cursos e parece que você saber disso tudo em 1 dia, não se desespere. Veja cada um e escolha o que melhor você sentir afinidade. Alguns sites que eu usei e recomendo são:

Code.org – um jeito divertido de aprender Algoritmos! Recomendo fortemente, pois é muito importante dominar Lógica de Programação e além disso, é uma proposta bem legal (tem até tutorial com tema de Star Wars!).

Codecademy – tutoriais com várias opções bem legais.

Code School – Gosto muito deles e as aulas são em vídeo. Alguns são pagos, mas dá para fazer uns gratuitos.

Udacity – Também possuem aulas em vídeo e acho mais dinâmico que o CodeCademy, por exemplo.

Made with Code – um projeto muito legal para atrais meninas para programar 🙂

2 – Tenha um projeto que você queira fazer

Sabe aquele app que você sempre quis fazer? Ou um sistema que vai ajudar alguém da sua família? Uma das melhores e mais eficientes formas de se aprender a programar é ter um projeto pessoal, assim você vai se sentir mais motivad@ e confiante. Nessas horas, ajuda muito também pegar um código de qualidade por aí e modificar algumas coisas.

Por que aprender a programar? Ora, tudo que gostamos é feito de código!

3 – Tenha um(a) mentor(a)

Sério, isso é MUITO importante. Já falei isso aqui várias vezes e acho que nunca é suficiente: procure alguém que já tenha experiência para ajudar com suas dúvidas (não é para ficar perguntando tudo, hein). Sabe quando você tentou e mesmo assim não entendeu, ou quer entender mais sobre algo? Não tenha medo de perguntar.

4 – Divirta-se!

Isso é o mais importante e necessário ter em mente. Com isso, sinta-se bem vind@ ao mundo mágico da Programação!

 

Você não precisa ser um gênio para cursar Exatas

Faz algum tempo que queria discutir esse assunto e recentemente me deparei com a matéria abaixo e me senti mais motivada para escrever. Durante muito tempo evitei entrar para a área de “Exatas” porque durante minha vida, encontrei pessoas extremamente arrogantes nessa área e acreditava ser um pré-requisito para entrar nesse mundo mágico de gênios. De forma alguma queria ficar no meio dessas pessoas.

Ainda bem que conheci pessoas maravilhosas que me mostraram haver uma luz no fim do túnel e hoje entendo o que acontece de fato. Não vou entrar na discussão sobre Humanas x Exatas porque não é o foco e acredito que isso não leva a lugar algum. No entanto, queria abordar mais o que significa ser cientista e como propiciar uma formação de profissionais voltada à resolução de problemas, não havendo espaço para ego nem show de talentos.

Hoje tenho vários amigos de Computação que fazem Pós-Graduação e me sinto motivada para seguir esse caminho também. No entanto, fico um pouco triste quando discutimos o lado não tão bonito dessa etapa acadêmica. A matéria da Carta Capital Precisamos falar sobre a vaidade na vida acadêmica resume bem esse problema nas universidades:

“A formação de um acadêmico passa por uma verdadeira batalha interna em que ele precisa ser um gênio. As consequências dessa postura podem ser trágicas, desdobrando-se em dois possíveis cenários igualmente predadores: a destruição do colega e a destruição de si próprio. […] Hoje, como professora, tenho preocupações mais sérias como estes alunos que acreditam que os colegas são brilhantes. Muitos deles desenvolvem depressão, acreditam em sua inferioridade, abandonam o curso e não é raro a tentativa de suicídio como resultado de um ego anulado e destruído em um ambiente de pressão, que deveria ser construtivo e não destrutivo. […] É preciso barrar imediatamente este sistema. A função da universidade não é anular egos, mas construí-los. ”

Além disso, o fato de que cada vez mais entram pessoas que já sabem programar nos cursos de Computação faz com que o nível de exigência aumente e apenas os experientes ou os gênios concluem os cursos. O problema é que quem entrou para aprender (o quê, aprender na universidade? que mundo você vive?) fica achando que não deve estar ali e bom, qual o significado mesmo de “universidade”?

Um outro problema que advém disso é a constante arrogância de quem já sabe. Seu coleguinha é gênio? Seu outr@ coleguinha sempre sabe de tudo? Toque aqui! Acontece que Exatas não é um caminho linear. Foi isso que mais adorei nessa matéria aqui Mathematicians are chronically lost and confused (and that’s how it’s supposed to be). Eles falam sobre o processo de aprender Matemática e a lindeza de ser humilde, além de ser absolutamente normal e humano não saber de tudo.

Não esqueça de nunca se desesperar xD

Esse post se trata mais de escrever sobre algo que me incomoda e de motivação para futuros cientistas. Se tem algo que aprendi nessa vida foi: não devo me comparar à ninguém. Meu caminho é único e sei das minhas qualidades e das minhas limitações. Mas, para não ficar só na discussão, aqui vai um post motivacional de pessoas fodonas da programação¹ (são essas pessoas que você deve seguir como inspiração). E lembre-se: os verdadeiros cientistas não têm muita certeza sobre muita coisa (:

¹ http://www.infoworld.com/article/3085150/application-development/dont-just-code-career-advice-from-the-programming-masters.html