Sobre

William Bruno é desenvolvedor web apaixonado por boas práticas e design patterns. Iniciou com programação web em 2008 com PHP e JavaScript. Participante ativo do Fórum iMasters, escreve artigos para seu blog pessoal e alguns outros canais. Atualmente trabalha na BelezaNaWeb.com.br com NodeJS.

Suas primeiras linguagens de programação foram C e Assembly que viu no curso técnico em Eletrônica, enquanto ainda estava no Ensino Médio, onde também começou seus estudos de HTML. Anos mais tarde, após um curso de PHP no Senac, se aprofundou em tableless aprendendo CSS da forma correta.

Quando começou ainda não existia diferença entre backend e frontend, então se acostumou a programar sites e sistemas completos, desde o recorte do psd, até a modelagem do banco de dados e programação server-side da aplicação.

Sempre gostou de ensinar, por isso já respondeu milhares de tópicos no fórum imasters, escreve artigos para o seu blog (http://wbruno.com.br) e mais alguns outros canais. Já teve a oportunidade de dar aulas de FrontEnd, NodeJS e MongoDB para turmas de cursos livres, além de ter feito algumas palestras em eventos presenciais e workshops online.

Com o convite para escrever este livro viu a oportunidade perfeita para divulgar a experiência que teve ao trabalhar com NodeJS e o porquê gosta tanto da linguagem JavaScript.

27 Comments

  1. oi tudo bem. Meu nome é Felipe Pires, eu sou CEO do http://www.ymusicx.com/ .

    o ruy fortini me recomendou que entrasse em contato com voce.

    Eu estou precisando que você faça um player em HTML 5 igual ao do http://grooveshark.com/#/ pra mim.

    Gostaria de saber quanto você cobraria e em quanto tempo pode entregar ?

    obrigado

    att
    Felipe Pires
    CEO, ymusicx.com

  2. Olá Bruno Gostaria de saber se Tem como vc me dar um curso para desenvolvimento d Site tenho um projeto mas não tenho a minima noçao de que ferramenta usor..e por qual caminho seguir..

  3. Vi o projeto da Santa Efigenia, estou querendo um site igual aquilo, como podemos conversar?

  4. Olá Bruno, gostaria de comprar código do site mundodosbairros.com.br vamos negociar.

  5. Boa tarde,

    Tenho um projeto para fazer, poderia me passar algum contato via fone.

  6. Que blog top!

    Deixa eu adicionar à listinha…

  7. Você trabalha ou conhece o CodeIgniter?
    Me envia um e-mail de contato.

  8. Amigo o meu nao funfou :/, quando envio pelo submit, ele mostra “post”, dps q att pagina “refresh” mais continuo recebendo os dados..

  9. Rodrigo Souza

    junho 20, 2015 at 01:31

    Gostaria de entrar em contato. Pode me passar um e-mail?

  10. boa tarde Bruno, meu nome é Otton. Cheguei até vc pelo fórum IMaster…
    To precisando de uma página informativa (fundo de imagem fixa + texto) dizendo que o site está em manutenção. Queria saber quanto vc cobra pra fazer isso. Aguardo retorno. Obrigado

  11. rauldney neves

    novembro 7, 2015 at 22:08

    bruno preciso fazer um pesquisar sem da refresh na tela, usando JSP, poderia ajudar

  12. Boa tarde, Bruno! Estou a procura de um profissional para me dá umas aulas de desenvolvimento web. Caso haja interesses me manda Email que negociamos!

  13. Olá Willian

    Uma sugestão para você, adorei o site e estou aprendendo programação, se possível comenta o código com breves explicações sobre o que aquela determinada linha de código faz, ajuda bastante quem não entende muito.

    Obrigada.

  14. Willian,

    Não consegui adaptar sua dica para o meu código, pode me ajudar?

    Tenho 3 filtros de dados, e gostaria que ao selecionar um deles exibisse no select a opção selecionada e que os demais filtros seguintes utilizassem a base do filtro anterior.

    Ex. se eu selecionar “BA” em estado e mandar filtrar, vai exibir somente registros de “BA” até aí blz, porém preciso que esta opção permaneça selecionada para que eu selecione outro filtro utilizando o resultado do filtro “BA”.

    segue página: http://artenopolis.com/rafael/click2.php

    Segue código:

    					<?php
    						$getufs = "SELECT uf FROM ufs";
    						$getufsquery = mysql_query($getufs) or die (mysql_error());
    						While ($getufsline = mysql_fetch_array($getufsquery)) {
    							$uf = $getufsline ['uf'];
    							echo "$uf";
    						}
    					?>
    					Cidade
    					<?php
    						$getcidades = "SELECT cidade FROM cidades";
    						$getcidadesquery = mysql_query($getcidades) or die (mysql_error());
    						While ($getcidadesline = mysql_fetch_array($getcidadesquery)) {
    							$cidade = $getcidadesline ['cidade'];
    							echo "$cidade";
    						}
    					?>
    					Categoria
    					<?php
    						$getcategorias = "SELECT categoria FROM categorias";
    						$getcategoriasquery = mysql_query($getcategorias) or die (mysql_error());
    						While ($getcategoriasline = mysql_fetch_array($getcategoriasquery)) {
    							$categoria = $getcategoriasline ['categoria'];
    							echo "$categoria";
    						}
    					?>
    				
    			
    												
    				<?php
    
    					$uf=$_POST['uf'];
    					$cidade=$_POST['cidade'];
    					$categoria=$_POST['categoria'];
    
    						$getresultados = "SELECT foto, empresa, categoria, endereco, numero, bairro, cidade, uf, urlmaps, telefone_01, email, site FROM `pesquisa_guia` WHERE uf LIKE '%".$uf."%' AND cidade LIKE '%".$cidade."%' AND categoria LIKE '%".$categoria."%' ORDER BY id DESC";
    						$getresultadosquery = mysql_query($getresultados) or die (mysql_error());
    						$row = mysql_num_rows($getresultadosquery);
    						if($row == 0) {
    							echo "Nenhum resultado encontrado!";
    						}else{
    						while ($dados = mysql_fetch_array($getresultadosquery)) {
    ?>
    
    
    
      <img src="imagens/" width="120" height="100" align="center" alt="">
      
    				
                    
    				
                    
                    
    
    	
    <a href=""title="Mapa" target="_blank">Como Chegar
    <a href="tel:"title="telefone" target="_blank">Ligar
    <a href="mailto:"title="telefone" target="_blank">E-mail
    <a href="http://"title="site" target="_blank">Site
    			
    	
    	
  15. Cesar de Barros

    janeiro 21, 2016 at 11:44

    Fala William,
    Pra te pedir uns conselhos, faço como?

  16. Wiliam, tenho um código que me possibilita criar uma lista do tumblr no meu site. Não encontrei nada parecido na net pra resolver meu problema. Tenho um codigo html que precisa que o iframe não seja usado, pois ele não me permite usar uma altura pra cada post, ja que o tamanho dos mesmos variam. Teria como você me ajudar a solucionar esta questão? Entre em contato comigo para conversarmos e te passo o html.

  17. emerson pereira barreiro

    junho 18, 2016 at 04:34

    vou enviar te um email com a minha duvida! se me puderes ajudar agradecia bastante!

  18. necessito serviço para ajuste num site se possível me mande email pra explicar melhor o problema

  19. Boa tarde Bruno,

    Comprei o seu livro sobre Nodejs e estou tentando aprender um pouco, embora não tenha muito conhecimento em javascript. Naquele exercício loremipsum
    a primeira parte foi tranquila e consegui gerar o lorem.html com um parágrafo. Na sequência fiz o outro que teria que gerar o arquivo teste.txt com 10 parágrafos, mas não foi gerado. A saída que tive no Terminal:
    thom$ node loremipsum.js teste.txt 10
    USO: node loremipsum.js {nomeArquivo} {quantidadedeParagrafos}
    roberto-henriquess-macbook-2:nodejs thom$.
    E não “Arquivo teste.txt pronto!”
    Aparentemente não há erro, pois o script rodou.
    Agradeço qualquer ajuda.

    Abraço,

    Roberto T Henriques

Deixe uma resposta

Your email address will not be published.

*