Servidor PHP com Winginx

Sempre usei o EasyPHP como meu servidor de PHP, mas como precisei de mais, achei e analisei o Winginx, que é um complexo servidor web local no Windows para desenvolver em PHP e Node.js usando bancos de dados MySQL, MongoDB, Redis, memcached.
Um excelente substituto que cobre a atual necessidade da minha aplicação que é o Node, MongoDB e memcached, além de outros serviços. Substituindo com maestria o EasyPHP .

Com isso, possivelmente passarei a usar a Digital Ocean para as cloud applications.

Então fica a dica 😉

JSBIN (JavaScript online)

JS Bin é uma ferramenta para a experimentação de linguagens web. Em HTML particular, CSS e JavaScript, mas JS Bin também suporta outras linguagens como Markdown, Jade e Sass.

é possível compartilhar código. Junto com o código, a saída completa também é compartilhada com outros desenvolvedores, colegas e / ou alunos. Conforme você digita em um dos painéis, você e qualquer um vendo o seu bin vai ver a saída a ser gerado em tempo real no painel de saída.

É possível adicionar uma extensão do JS Bin no Firefox: https://addons.mozilla.org/pt-BR/firefox/addon/easy-jsbin/

Instalar o Sonar e Maven Local

sonarqube

Sonar Qube é uma ferramenta que permite analisar métricas no código fonte de um projeto e gerar relatórios a partir dela, como a própria descrição diz “é um lugar para gerenciar a qualidade do código”.

Usando o Maven 2 integrado com o Sonar Qube para executar a análise do código fonte quando for necessário.

Bastas realizar o donwload do Sonar Qube, última versão. Para instalar o Sonar, descompacte o arquivo sonar-x.x.zip.

Você pode manter a configuração básica padrão da instalação que usa o banco de dados H2. Mas sempre utilizo a configuração usando o MySQL.

Podemos configurar um schema de banco de dados específico para o Sonar Qube no MySQL, ou utilizar um existente. Então, conecte no MySQL como root e execute os comandos a seguir.

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER ‘sonar’ IDENTIFIED BY ‘sonar’;
GRANT ALL ON sonar.* TO ‘sonar’@’%’ IDENTIFIED BY ‘sonar’;
GRANT ALL ON sonar.* TO ‘sonar’@’localhost’ IDENTIFIED BY ‘sonar’;
FLUSH PRIVILEGES;

após a criação do banco de dados e usuário Sonar Qube com sucesso, vamos para o próximo passo.

Configura nas variáveis de ambiente(windows) as variáveis abaixo:

Nome: SONAR_RUNNER_HOME
Valor: C:sonarqube-x.x.xbin
e
Nome: Path
Valor: C:sonarqube-x.x.xbin

Edite o arquivo de configuração $SONA_HOME/conf/sonar.properties comente as linhas do H2 database(já vem comentada).

#sonar.jdbc.url=jdbc:h2:tcp://localhost:9092/sonar
#sonar.jdbc.driverClassName=org.h2.Driver

Agora, adicione a configuração do MySQL.

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true

Eu não uso e não aconselho a utilização das duas linhas abaixo. Elas impactam em erro na subida do Sonar Qube.

sonar.jdbc.driverClassName=com.mysql.jdbc.Driver
sonar.jdbc.validationQuery=select 1

Ok. Salve o arquivo de configuração.
Agora inicie o Sonar Qube.

$ /usr/local/sonar-3.2/bin//sonar.sh start
$ Starting sonar…
$ Started sonar.

No diretório bin/ você deve selecionar o seu sistema operacional.

Acesse http://localhost:9000 e veja a interface gráfica dele, sem projetos, ainda.

O último é configurar o Maven, você NÃO precisa modificar o arquivo POM.xml do seu projeto, para adicionar plugins basta editar o arquivo settings.xml e acrescentar uma profile do Sonar Qube, conforme a seguir.

$ sudo vim ~/.m2/settings.xml
<settings>
<profiles>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.host.url>http://localhost:9000</sonar.host.url&gt;
</properties>
</profile>
</profiles>
</settings>

Agora o Sonar Qube está configurado e integrado ao Maven. A partir do seu projeto você poderá criar um projeto no Sonar Qube e realizar a análise do código fonte apenas com uma linha de comando.

$ mvn sonar:sonar

E fim 😉

Alternativas ao PowerPoint para criação de apresentações

haikudeck

Quando você pensa em slides e apresentações, certo que na sua mente em primeiro lugar vem o Microsoft PowerPoint. Mas existem outras boas alternativas, eu diria que alternativas evoluidas desta precursora ferramenta.

Testei 3 das que mais considero, sendo o Prezi já um antigo conhecido por mim até agora.

Haiku Deck (iPad)

O Haiku Deck foi projetado para transformar idéias em belas apresentações no tempo que você leva para ir de ônibus ao trabalho. O segredo? Acesso a um rico acervo integrado de imagens e ilustrações gratuitas.

Pixxa Perspective (iPad)

Uma apresentação nada mais é do que uma história audiovisual. Esta é a idéia do Perspective, uma poderosa ferramenta para o iPad que exige um certo aprendizado, e tem um preço alto.

Prezi (Web, Windows, Mac, iOS)

um dos precursores nesta mudança brusca nas apresentações pessoais e chatas é o Prezi. Capas de criar atraentes animações customizadas que deixam as apresentações comuns comendo poeira.

Bom, ficam mais opções.

Como criar um time vencedor de sustentação de TI

Venho refletindo quais vantagens tem a criação de um time de sustentação separado de equipes de desenvolvimento, pesquisei e não encontrei nenhum motivo plausível para criar uma equipe de sustentação, nenhum post falando sobre como montar uma equipe multidisciplinar. Mas descobri formas motivadoras, e formas de fazer isso da forma correta, pois acredite ou não, montar uma equipe satisfeita é a chave do sucesso.

Passo 1 – Abra a informação de que talvez a empresa precise montar uma equipe separada e multidisciplinar; Informar previamente identifica perfis e desejos;
Passo 2 – Converse com os perfis identificados sobre os motivos, desejos e porque você o indicaria. Veja bem, indicaria e não já indicou;
Passo 3 – Monte um planejamento mínimo mesmo que essa atitude tenha ocorrido de um dia para o outro e enquadre os perfis que possui;
Passo 4 – Realize as operações necessárias para que a troca seja confortável para seus colaboradores e se possível, que sabemos que é, promova alguns ou simplesmente de uma compensação financeira.

É simples, é fácil e é possível.

Mais Um Ano, Mais Novidades

Como todos sabem, devemos sempre inovar, estar em constantes mudanças, evolutivas de preferência e se você acompanha esse blog a algum tempo deve ter notado que isso é fato.

Então mantendo esse padrão e melhor ainda, padronizando estas mudanças, resolvi ajustar meu plano pessoal e profissional, que de forma alguma representa empresas ou marcas que eu represente. trata-se de um ajuste pessoal.

Neste alinhamento profissional aos meus 33 anos de idade, resolvi evoluir e me dedicar a nichos específicos, mantendo a sabedoria abrangente dos melhores profissionais do Mundo.

Minha dedicação será focada como organização, metodologias e a ciência dos dados com bigdata e nosql e mobile. Como organizador tenho em criação um blog específico, que também terá outras informações e que a tempos queria muito escrever, onde adiciono claro, muito de metodologias como 5s, GTD, …

Peço desculpas a todos os demais meios que vinham recebendo minhas contribuições e que já foram comunicados, e lamentaram muito a perda, mas chega uma hora que temos que focar na vida e pensar na aposentadoria, rsrsrsrs.

Acesse o nosso conteúdo pelo kindle

Hoje teste e aprovei o plugin de envio de post para o Kindle. Você como um profissional em blogs deve lembrar que a melhor posição para disponibilizar esta fantástica opção, deve ser no topo do seu conteúdo.

Você verá no topo dos posts o ícone:

Send to Kindle

 

A vantagem não explorada por muitos blogs hoje, é de ver um post ou matéria que pode interessar e enviara para leitura posterior no seu Kindle.
Simples, gratuito e de infinitas possibilidades : D

Mentalidade Mobile First

A ideia defendida por Luke Wroblewski é simples: desenhar sua solução primeiro para mobile, depois para web. Esse exercício forçará o seu poder de síntese ao máximo e, ao transportar para a versão web, você já terá limado o excesso de conteúdo.

Segundo Luke, o excesso de informação em grande parte dos sites se dá porque é relativamente fácil adicionar conteúdo web.

“O mobile não deixa espaço para nenhum conteúdo de relevância duvidosa. Você precisa saber o que realmente importa. Para fazer isso você precisa conhecer bem os seus usuários e o seu mercado.”, afirma Luke.

wpid-wp-1411570591317.jpeg

Um dispositivo mobile é por muitas vezes o primeiro dispositivo conectado que um bebê ou uma criança pequena interage e se familiariza. Se hoje eu der o kindle para meu bebê com 10 meses, ele tenta arrastar a tela como se fosse meu Smartphone.

“… Esta mentalidade mobile-first molda como eles interagem com o mundo e criam expectativas para tudo a sua volta. Incluindo dispositivos non-touch ou objetos inanimados, touch-friendly e sempre conectados. Estas mentes mobile-first são livres dos modelos mentais do passado da computação, e como resultado certamente moldarão o que esperamos mais a frente do nosso “mundo conectado.”

A definição mobile-first de Luke consiste em três principais componentes:

1. O crescimento do mobile é, mais do que nunca, uma grande oportunidade de atingir as pessoas;

2. As restrições do meio mobile nos força a focar no que realmente importa;

3. E as capacidades do mobile criam oportunidades inovadoras.

Então? Será que mobile-first seria a arquitetura a se pensar? Ou estamos apenas em mais um modismo?