<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Matheus Barem on Medium]]></title>
        <description><![CDATA[Stories by Matheus Barem on Medium]]></description>
        <link>https://medium.com/@matheusbdelima?source=rss-77ab999bca30------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/2*Os-mes4tDz9Pb7TO5iT2AQ.jpeg</url>
            <title>Stories by Matheus Barem on Medium</title>
            <link>https://medium.com/@matheusbdelima?source=rss-77ab999bca30------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 18:46:52 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@matheusbdelima/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Javascript descomplicado — Introdução]]></title>
            <link>https://medium.com/@matheusbdelima/javascript-descomplicado-introdu%C3%A7%C3%A3o-4f897099ee3c?source=rss-77ab999bca30------2</link>
            <guid isPermaLink="false">https://medium.com/p/4f897099ee3c</guid>
            <category><![CDATA[programador]]></category>
            <category><![CDATA[programação]]></category>
            <category><![CDATA[js]]></category>
            <category><![CDATA[javascript]]></category>
            <dc:creator><![CDATA[Matheus Barem]]></dc:creator>
            <pubDate>Sun, 10 May 2020 03:53:00 GMT</pubDate>
            <atom:updated>2020-05-10T04:33:35.985Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Y4JoeVaMSka_Saym" /><figcaption>Photo by <a href="https://unsplash.com/@markusspiske?utm_source=medium&amp;utm_medium=referral">Markus Spiske</a> on <a href="https://unsplash.com/?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure><h3>Javascript descomplicado — Introdução</h3><p>Olá pessoal, tudo bem?</p><p>Depois de muito tempo longe do Medium, resolvi voltar a publicar por aqui, pretendo iniciar uma série para ensinar a galera que quer aprender Javascript mas já teve contato com programação. Vou ensinar o “<em>basicão</em>” mesmo e tentar fazer com que os artigos sejam leves e rápidos pra não desanimar ok? Bom, chega de balela e vamos começar a conhecer essa belezinha que tem uma comunidade gigante e projetos incríveis que impactam a vida de todo o mundo, Bora!</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fgiphy.com%2Fembed%2F12haGO61oFZ28w%2Ftwitter%2Fiframe&amp;display_name=Giphy&amp;url=https%3A%2F%2Fgiphy.com%2Fgifs%2F12haGO61oFZ28w&amp;image=https%3A%2F%2Fmedia2.giphy.com%2Fmedia%2F12haGO61oFZ28w%2Fgiphy.gif&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=giphy" width="435" height="235" frameborder="0" scrolling="no"><a href="https://medium.com/media/c836c26a9656aad44c4ec5aee8846d87/href">https://medium.com/media/c836c26a9656aad44c4ec5aee8846d87/href</a></iframe><h3>O que é o Javascript?</h3><p>O javascript é uma linguagem que permite a gente executar scripts interpretados a partir do cliente da nossa aplicação (que seria o nosso navegador). Quando estamos com o navegador aberto, o javascript consegue interagir com nosso browser sem que ele precise criar uma requisição no nosso servidor, para devolver uma respostas e ai sim tratar isso em tela.</p><p>Vou dar um exemplo simples para que você entenda melhor, imagine que você está em uma página, e clica em algum botão, ou link, e a página não recarrega, mas, algo diferente acontece na tela como aparecer um pop-up, janela ou algum símbolo se altera, Isso seria a execução no cliente (browser) sem que seja necessário ir até o servidor buscar uma resposta para fazer a mesma ação. Além disso com o javascript conseguimos alterar coisas na tela baseadas nas ações do nosso usuário, conseguimos monitorar quando ele passa o mouse em cima de alguma coisa, quando ele clica em algo, definir intervalos e por ai vai (se quiser ver todos os tipos de eventos que o javascript pode acompanhar pode ver <a href="https://developer.mozilla.org/pt-BR/docs/Web/Events"><strong>aqui</strong></a>).</p><p>Reforçando, todas essas ações no lado do nosso cliente (browser) pois as nossas requisições não precisam chegar no lado do servidor para completar uma ação como alguma outra linguagem, como <em>PHP</em>, <em>Phyton ou Ruby</em>, que precisa receber essa ação no servidor e ela precisa responder pra assim alterar e executar a ação na tela. O javascript vai nos permitir fazer alterações na árvore de elemento em tela que chamamos de <strong>DOM </strong>(Document Object Model, você pode aprender mais sobre o que é o DOM <a href="https://developer.mozilla.org/pt-BR/docs/DOM/Referencia_do_DOM/Introdu%C3%A7%C3%A3o"><strong>aqui também</strong></a>).</p><h3>Onde o Javascript é aplicado?</h3><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fgiphy.com%2Fembed%2FTPl5N4Ci49ZQY%2Ftwitter%2Fiframe&amp;display_name=Giphy&amp;url=https%3A%2F%2Fgiphy.com%2Fgifs%2Fspongebob-squarepants-patrick-TPl5N4Ci49ZQY&amp;image=https%3A%2F%2Fmedia4.giphy.com%2Fmedia%2FTPl5N4Ci49ZQY%2Fgiphy.gif&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=giphy" width="435" height="326" frameborder="0" scrolling="no"><a href="https://medium.com/media/b83a0825d2eaaddf6208a2bb3772ab76/href">https://medium.com/media/b83a0825d2eaaddf6208a2bb3772ab76/href</a></iframe><p>O Javascript é aplicado hoje em dia em todos os sites que você conhece como Youtube, Twitch, Facebook pois o javascript se tornou basicamente uma linguagem obrigatória para quem quer trabalhar com <a href="https://www.alura.com.br/artigos/o-que-e-front-end-e-back-end"><strong>front-end</strong></a><strong>. </strong>Hoje em dia criar uma aplicação front-end sem javascript é praticamente impossível.</p><p>A linguagem conseguiu evoluir muito, e hoje em dia consegue atuar também no <strong>back-end</strong> utilizando o <a href="https://nodejs.org/pt-br/"><strong>Nodejs</strong></a>, não vou falar muito desse cara nesta série mas me deixa nos comentários se você quer aprender sobre ele também. Além de atuar no fron-end e no back-end, o Javascript ao lado da sua comunidade conseguiu evoluir junto ao Facebook e criar o <strong>React Native</strong> e com ele podemos criar <strong>aplicativos nativos</strong> para android e para iOS também, doido né?</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fgiphy.com%2Fembed%2FoYtVHSxngR3lC%2Ftwitter%2Fiframe&amp;display_name=Giphy&amp;url=https%3A%2F%2Fgiphy.com%2Fgifs%2Fmfw-everything-reddit-oYtVHSxngR3lC&amp;image=https%3A%2F%2Fmedia3.giphy.com%2Fmedia%2FoYtVHSxngR3lC%2Fgiphy.gif&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=giphy" width="435" height="314" frameborder="0" scrolling="no"><a href="https://medium.com/media/a5465e67f1c63ccebe7305a4027a6743/href">https://medium.com/media/a5465e67f1c63ccebe7305a4027a6743/href</a></iframe><p>Mas chega de “bla bla bla”, vamos pra mão da massa e vamos ver o Javascript em ação no próximo artigo ;)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4f897099ee3c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[5 RubyGems para agilizar o desenvolvimento com Ruby on Rails.]]></title>
            <link>https://medium.com/@matheusbdelima/5-rubygems-para-agilizar-o-desenvolvimento-com-ruby-on-rails-17ca76f184c6?source=rss-77ab999bca30------2</link>
            <guid isPermaLink="false">https://medium.com/p/17ca76f184c6</guid>
            <category><![CDATA[design]]></category>
            <category><![CDATA[ruby-on-rails]]></category>
            <dc:creator><![CDATA[Matheus Barem]]></dc:creator>
            <pubDate>Sun, 27 Sep 2015 04:58:00 GMT</pubDate>
            <atom:updated>2015-09-27T04:58:00.854Z</atom:updated>
            <content:encoded><![CDATA[<p>E ai galera, tudo bem? hoje vou listar algumas RubyGems que eu utilizo sempre que preciso de algo rápido para funcionalidades básicas pra construir um sistema (se você não tem ideia de o que é/são Rubygems e como elas funcionam, leia <a href="http://www.akitaonrails.com/2009/02/02/entendendo-rubygems#.VgdoFt9zikA"><strong>esse post</strong></a><strong> </strong>do mestre Akita antes de tudo).</p><h3><a href="https://github.com/plataformatec/devise">1- Devise (Login)</a></h3><p>Devise é uma solução flexível para autenticação para Rails, fácil pra caramba para instalar, Possibilidade de usar com múltiplos Models (para “users”, “admins” e mais o que você quiser), e totalmente Modular. Da uma olhada no repositório com toda documentação <a href="https://github.com/plataformatec/devise"><strong>aqui</strong></a>.</p><h3><a href="https://github.com/thoughtbot/paperclip"><strong>2- Paperclip (Upload de arquivos)</strong></a></h3><p>Com o Paperclip você pode facilmente manipular arquivos (fotos, PDF e etcs). Para processar as imagens ele utiliza o <a href="http://www.imagemagick.org/script/index.php"><strong>ImageMagick</strong></a><strong> </strong>assim você pode brincar a vontade com elas do jeito que bem entender. Da uma olhada no repositório<strong> </strong><a href="https://github.com/thoughtbot/paperclip"><strong>aqui</strong></a><strong>.</strong></p><h3><a href="https://github.com/sferik/rails_admin">3- Rails Admin (Painel Administrativo)</a></h3><p>Seu chefe/cliente precisa de um painel administrativo pra ontem? da uma olhada nessa Gem. Você consegue gerar em 15 minutos(ou menos) uma área administrativa para seu Webapp com CRUDS prontos para cada Model, busca(com filtros), Exportação de dados (CSV/JSON/XML) e mais uma pancada de coisas interessantes. <a href="https://www.youtube.com/watch?v=agzm_O-pZFE"><strong>Esse vídeo aqui</strong></a> (em inglês) mostra a instalação com login dessa Gem. Ah! o repositório<strong> </strong><a href="https://github.com/sferik/rails_admin"><strong>aqui</strong></a><strong>.</strong></p><h3><a href="https://github.com/rails-api/rails-api">4-Rails-api (API)</a></h3><p>Desenvolvida apenas para criação de API’s a Gem Rails-api é mais leve e não tem todas funcionalidades do Rails porque ela dá total atenção apenas no desenvolvimento da sua API. Da uma “fuçada” no repositório <a href="https://github.com/rails-api/rails-api"><strong>aqui</strong></a><strong> </strong>e seja feliz. <strong>;)</strong></p><h3>5- Will_paginate (Paginação)</h3><p>Paginação fácil de utilizar e personalizar. Quer ver como é simples? um vídeo de 7 minutos pra você aprender a usar <a href="https://www.youtube.com/watch?v=yEgizVae8x4"><strong>aqui</strong></a><strong>.</strong> E depois corre para o repositório <a href="https://github.com/mislav/will_paginate"><strong>aqui</strong></a>.</p><p>Obs: Utilizar as Gems agiliza muito seu trabalho e elas realmente são fantásticas, mas você deve ter noção de como tudo funciona e saber como criar cada uma dessas funcionalidades na raça (não vá virar um programador “pipoqueiro” hein HAHA!). Até o próximo post <strong>:)</strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=17ca76f184c6" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Instalando ambiente de desenvolvimento Ruby on Rails no Ubuntu 14.10]]></title>
            <link>https://medium.com/@matheusbdelima/instalando-ambiente-de-desenvolvimento-ruby-on-rails-no-ubuntu-14-10-3ed9585708c8?source=rss-77ab999bca30------2</link>
            <guid isPermaLink="false">https://medium.com/p/3ed9585708c8</guid>
            <category><![CDATA[ruby-on-rails]]></category>
            <category><![CDATA[ubuntu]]></category>
            <category><![CDATA[ruby]]></category>
            <dc:creator><![CDATA[Matheus Barem]]></dc:creator>
            <pubDate>Mon, 21 Sep 2015 04:24:58 GMT</pubDate>
            <atom:updated>2015-09-21T04:38:28.113Z</atom:updated>
            <content:encoded><![CDATA[<p>E ai tudo bem? Desde que comecei a desenvolver para Ruby notei uma grande carência de material em português, então decidi achar um tempo livre e escrever sobre Ruby, Rails e tudo o que vier na cabeça ajudando os jovens padawans em desenvolvimento.</p><p>Estou levando em consideração que você já perdeu o medo da “telinha preta cheia de letras” (console) do Linux e tem uma fluência miníma nele. Mas se você não tem esse conhecimento da “Força” ainda esse <a href="http://promo.visie.com.br/curso-terminal?p=suissa">Curso GRATUITO vai te ajudar</a> (Vale a pena).</p><p>Agora chega de papo e mãos a obra!</p><h3><strong>Instalando Ruby</strong></h3><p>Pra começar abra seu querido console e vamos instalar as dependências para o Ruby (versão recomendada 2.2.3) com os comandos:</p><pre>sudo apt-get update</pre><p>Depois:</p><pre>sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev</pre><p><em>Obs: Não vou entrar em detalhes em quais dependências estão sendo instaladas para não alongar o post, mas você que está fazendo isso pela primeira vez deveria pesquisar o que significam todos essas dependências</em></p><p>Vamos continuar a instalar Ruby com Rbenv ( resumindo ele é um gerenciador de versões Ruby) então manda ver nos comandos</p><pre>cd<br>git clone git://github.com/sstephenson/rbenv.git .rbenv</pre><pre>echo &#39;export PATH=&quot;$HOME/.rbenv/bin:$PATH&quot;&#39; &gt;&gt; ~/.bashrc</pre><pre>echo &#39;eval &quot;$(rbenv init -)&quot;&#39; &gt;&gt; ~/.bashrc</pre><pre>exec $SHELL<br><br>git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build</pre><pre>echo &#39;export PATH=&quot;$HOME/.rbenv/plugins/ruby-build/bin:$PATH&quot;&#39; &gt;&gt; ~/.bashrc</pre><pre>exec $SHELL<br><br>git clone https://github.com/sstephenson/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash<br><br>rbenv install 2.2.3</pre><pre>rbenv global 2.2.3</pre><pre>ruby -v</pre><p>Agora nós dizemos as Rubygems (não sabe o que é? <a href="http://www.akitaonrails.com/2009/2/2/entendendo-rubygems#.Vf97_d9zikA"><strong>clica aqui</strong></a><strong> </strong>e não tenha preguiça de ler :p) não instalar a documentação de cada pacote localmente e, em seguida, instalar o Bundler (O papel dele é gerenciar as dependências das Gems).</p><pre>echo &quot;gem: --no-ri --no-rdoc&quot; &gt; ~/.gemrc<br>gem install bundler</pre><p>Pronto! nem doeu né?</p><h3>Instalando Rails</h3><p>Desde que o Rails começou a enviar várias dependências, nós vamos precisar instalar o NodeJS ❤</p><p>Para instalar o NodeJS</p><pre>sudo add-apt-repository ppa:chris-lea/node.js<br>sudo apt-get update<br>sudo apt-get install nodejs</pre><p>Agora o nosso querido Rails</p><pre>gem install rails -v 4.2.4</pre><p>E para deixar o Rails executável (já que usamos o rbenv)</p><pre>rbenv rehash</pre><p>Para testar e ver se sua instalação foi feita com sucesso rode o comando</p><pre>rails -v<br># Rails 4.2.4</pre><p><em>Obs: se você teve o resultado “# Rails 4.2.4” tudo deu certo :)</em></p><h3>Banco de dados com Rails</h3><p>O Rails por padrão utiliza como banco de dados Sqlite3 mas vamos usar algo mais robusto como o MySQL <strong>ou</strong> PostgreSQL (não precisa instalar os dois, a não ser que você queira testar os dois, meu conselho é começar pelo MySQL se você ta começando e depois ir para o PostgreSQL).</p><p><em>Obs: No final do artigo vou ensinar a usar o MySQL ou PostgreSQL na hora de gerar a estrutura da sua aplicação Rails. Quando você criar sua primeira aplicação Rails, você deve modificar o arquivo “database.yml” com as informações de conexão com seu banco de dados que já deve estar criado.</em></p><h3>Instalando MySQL</h3><p>Rode o comando:</p><pre>sudo apt-get install mysql-server mysql-client libmysqlclient-dev</pre><h3>Instalando PostgreSQL</h3><p>Rode os comandos:</p><pre>sudo sh -c &quot;echo &#39;deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main&#39; &gt; /etc/apt/sources.list.d/pgdg.list&quot;<br>wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -<br>sudo apt-get update<br>sudo apt-get install postgresql-common<br>sudo apt-get install postgresql-9.3 libpq-dev</pre><p>E para criar um usuário pra você já que ainda não fizemos isso:</p><pre>sudo -u postgres createuser <strong>meuusuario </strong>-s<br><br># If you would like to set a password for the user, you can do the following<br>sudo -u postgres psql<br>postgres=# \password <strong>minhasenha</strong></pre><h3>Últimos passos</h3><p>Agora que tudo ta bonito rodando, vamos pra hora da verdade e criar sua primeira aplicação Rails:</p><pre>#### <strong>Se quiser utilizar o SQLite (não é recomendado)</strong><br>rails new myapp<br><br>#### <strong>Se você quiser utilizar o MySQL</strong><br>rails new myapp -d mysql<br><br>#### <strong>Se você quiser utilizar o PostgreSQL (ele vai pedir seu login do PostgreSQL)</strong><br>rails new myapp -d postgresql<br><br># <strong>Entrando no diretório da sua aplicação</strong><br>cd myapp<br><br># <strong>Se você escolheu utilizar o MySQL ou PostgreSQL vá até o arquivo config/database.yml e insira seu username/password específico</strong><br><br># <strong>Criar seu bando de dados</strong><br>rake db:create</pre><pre># <strong>Iniciar seu servidor Rails</strong><br>rails server</pre><p>Agora no seu navegador depois de iniciar o servidor Rails insira para <a href="http://localhost:3000/">http://localhost:3000</a> para ver o Rails rodando.</p><p>Pronto!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3ed9585708c8" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>