Instalando o composer no Elementary OS

Instalar o composer é muito mais fácil do que eu imaginava (Sim! Eu pensava realmente que era complexo).

Raios duplos! Quem é esse tal de composer?

Esse cara (composer) é um gerenciador de dependências. Com ele é possível escolher qual a versão de uma determinada biblioteca que você queira utilizar em seus projetos PHP.  Ele não somente instala, como também organiza.

Esse artigo tem o objetivo de explicar como instalar esse poderoso gerenciador em seu Linux. Vai por mim, vale muito a pena.

Instação

1: Primeiro é necessário realizar a instalação do PHP, siga esse artigo.
2: Com o PHP instalado realize a instalação do curl e do git. É pelos repositórios do Git que o composer baixa as dependências:

sudo apt-get install curl git

3: Utilize o curl que acabamos de instalar para realizar o download do composer e instalar com o PHP:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

4: digite no terminal o comando: composer
O resultado deve ser algo desse tipo:

 ______
  / ____/___ ____ ___ ____ ____ ________ _____
  / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
  / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
  \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
  /_/
  Composer version ....

Finalizando

Pronto! Agora esta instalado. No próximo passo, vamos estar realizando a instalação de alguns projetos via composer para praticar.

Você que é developer PHP e ainda não utiliza composer, não fique parado muito tempo queridão! Levanta e anda.

Qualquer dúvida, comenta ai 😉

Remover o index.php do CodeIgniter

Atualmente estou utilizando esse maravilhoso framework: CodeIgniter. Agora vou dar uma dica muito importante para remover na url o index.php padrão que ele utiliza.

1: Habilite a reescrita no apache2 com o seguinte comando no terminal:

sudo a2enmod rewrite

2: Edite o arquivo:

 sudo gedit /etc/apache2/apache2.conf

Na tag, altere o AllowOverride None para AllowOverride All

3: Restarte o apache:

sudo service apache2 restart

4: O próximo passo agora é ir no arquivo application/config/config.php do Codeigniter e alterar a seguinte configuração:
$config[‘index_page’] = ‘index.php’;
para
$config[‘index_page’] = ”;

5: Crie um arquivo .htaccess na raiz do projeto (onde contem o diretório system e application) com o seguinte conteúdo:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|public|images|robots\.txt|css)
RewriteRule ^(.*)$ index.php/$1 [L]

Pronto! Só isso!

Qualquer dúvida, comenta ai 😉

Instalando o PHP 7 com Apache 2.4 e MySql no Elementary OS

Esse artigo tem o objetivo de explicar como configurar o PHP 7 + Apache 2.4 e o MySQL no ElementaryOS ou qualquer outra distribuição baseada no Ubuntu.

Antes de tudo:

apt-get update

Vamos instalar o editor gedit:

sudo apt-get install gedit

MySQL:
1: Vamos iniciar a instalação do MySQL

apt-get install mysql-server

2: Digite a sua senha (por favor, digite uma senha realmente). E depois confirme.
3: Vamos conectar e ver se esta tudo ok. No terminal informe o comando abaixo no terminal:

mysql -u root -p

Informe sua senha na próxima linha.

Se não apresentar erro, vamos exibir todas os bancos de dados com o seguinte comando:

show databases;

mysql> show databases;
 +--------------------+
 | Database |
 +--------------------+
 | information_schema |
 | mysql |
 | performance_schema |
 | sys |
 +--------------------+
 4 rows in set (0,02 sec)

4: Vamos criar um banco de teste:

create database teste;

O resultado deve ser algo parecido com: Query OK, 1 row affected (0,00 sec)

5: Para selecionar o banco criado, utilize:

use teste;

O resultado deve ser algo parecido com: Database changed

6: Criando uma tabela:

create table dados(nome varchar(70), descricao varchar(50));

O resultado deve ser algo parecido com: Query OK, 0 rows affected (0,61 sec)

7: Inserindo dados:

insert into dados(nome, descricao) values ("Leonardo", "MySQL");

O Resultado deve ser algo parecido com: Query OK, 1 row affected (0,09 sec)

8: Listando os dados:

select * from dados;
 +----------+-----------+
 | nome | descricao |
 +----------+-----------+
 | Leonardo | MySQL |
 +----------+-----------+
 1 row in set (0,00 sec)

obs: para sair digite: exit;

Instalando o apache:

1: Vamos precisar rodar esse comando para permitir adicionar o repostório do apache2:

sudo apt install software-properties-common gdebi -y

2: Depois, atualize:

sudo apt-get update

3: Adicione o repositório do apache2:

sudo add-apt-repository -y ppa:ondrej/apache2 && sudo apt-get update

4: Instalando o apache2:

sudo apt-get install apache2

5: Abra o navegador e digit: localhost
O resultado deve ser a pagina do Apache.

apachehome

Apache2

PHP 7

1: Adicionando o repositório do PHP 7:

sudo add-apt-repository -y ppa:ondrej/php && sudo apt-get update

2: Instalando o PHP e alguns dos seus complementos:

sudo apt-get install libapache2-mod-php7.0 php7.0-mysql php7.0-curl php7.0-json php-memcached php7.0-dev php7.0-mcrypt

3: Redirecionar o apache para outra pasta, editando o arquivo 000-default.conf que esta dentro do /etc/apache2/sites-available:

sudo gedit /etc/apache2/sites-available/000-default.conf

Troque o: DocumentRoot /var/www/html para o diretório do que contem seus projetos. No meu caso é ficou assim DocumentRoot /home/eek/www
Edite o apache2.conf:

sudo gedit /etc/apache2/apache2.conf

Troque o: <Directory /var/www/> para <Directory /home/eek/www/>

Reinicie o apache:

sudo /etc/init.d/apache2 restart

E teste novamente!

Se apresentou algum problema, comente aqui! 😉

Firebird 2.5

firefird_2_5Para todos aqueles que esperavam sair o a versão final do excelente gerenciador de banco de dados Firebird, em sua nova versão 2.5 já podem comemorar! Finalmente a criança nasceu!
Ainda não baixou o seu?! Esta esperando o que rapá!
 
Grande abraço!

Firebird Embedded

firefird_2_5Esses dias precisei mudar um sistema de um cliente que usa Firebird Super Server para embarcado (embedded).
A principio achei que daria muito trabalho, mas quando iniciei a pesquisa descobri que não seria bicho de 7 cabeças!Essa versão do Firebird foi feita para rodar sem necessitar instalar nada na maquina. Ela lembra um pouco a funcionalidade do SQLite de funcionar!
Excelente para mandar com aplicativos de demonstração, roda de pendriver, disquete (ainda existe?) e onde mais você quiser! Funciona maravilhosamente para um cliente, não deixando nada a desejar!
E o melhor de tudo, sua instalação e configuração é muito simples!

Para testar em minha maquina, parei todos os serviços que estavam rodando do firebird, fui até o site da ibPhoenix selecionei a versão V2.1.
Fui direcionado para essa parte:
firebird_1
Vamos supor que sua aplicação esteja no seguinte diretorio: C:\MEU_SISTEMA e que seu banco esteja em C:\MEU_SISTEMA\MEUBANCO.FDB
Extraia os arquivos do zipados do Firebird embedded e você deve ficar com a seguinte estrutura, tirando o seu banco e executável da aplicação:
firebird_2
Vamos começar a fazer a configuração.
Abra o arquivo firebird.conf e localize a seguinte palavra: #RootDirectory e altere para o diretorio onde se encontra sua aplicação (com esses arquivos que você extraiu do firebird é claro!). Não se esqueça de retirar o # para descomentar.
No nosso exemplo ficou como RootDirectory = C:\MEU_SISTEMA
Até ai tudo tranquilo, né?!
Agora vamos configurar nossa conexão.
No meu caso que utilizei o Delphi 7 para criar esse programa, tive que mudar algumas coisas, então vamos aos detalhes: nas versões server do firebird, sempre usei o fbclient.dllpara conexão. Na versão embedded tenho que utilizar o fbembed.dll. Mas caso queira renomear para fbclient.dll fique a vontade! Eu preferi deixar do jeito que esta.
Outro detalhe muito importante, é que na string de conexão, comigo só funcionou colocando o caminho do banco, sem LOCALHOST ou porta:C:\MEU_SISTEMA\MEUBANCO.FDB
Feito isso, deixei usuario/senha padrão mesmo (SYSDBA/masterkey) e tentei conectar!
O primeiro erro que tive, foi que “CHARACTER SET WIN1252 is not definid”. Fiz varias pesquisas mas não consegui achar nada para solucionar, então a unica solução que encontrei foi definir o CHARSET = NONE.
Desta forma a aplicação executou! Agora estou procurando uma forma de utilizar o Charset WIN1252. Assim que conseguir posto aqui!Minha ideia com esse artigo é tirar a impressão de que rodar o firebird embarcado é complicado, que nada! Deu pra ver com é tranquilo né! 😉
Agora você ja pode criar sua aplicação e rodar direto do pendriver, montar agenda, etc!Grande abraço e Muito Obrigado!

Ser líder sem deixar de ser gente

Venho a algum tempo procurando aprimorar em relação a liderança.
Como as coisas estão mudando cada vez mais rápidas, em nosso dia-a-dia quem é que não se depara com diversas escolhas que devem ser tomadas, com a responsabilidade de decidir representando outras pessoas?! Se você passa por isso, parabéns! Você é um líder!
O grande líder, tem a facilidade de envolver as pessoas. Suas atitudes devem visar primeiramente o seu grupo, e na maioria das vezes se colocar em segundo lugar.
Jamais deverá assumir uma postura de dono da verdade, ao contrário, deve manter um constante espírito de busca e aprendizado. Um bom líder é aquele que esta sempre buscando aprender, seja lá onde for, ou com quem for.
Esse tipo de comportamento incentiva o seu grupo a querer buscar cada vez mais melhorias. Pois o exemplo (modelo) não parte do grupo para o líder, mas sim do líder para o grupo.
Um bom exemplo seria uma empresa, onde os funcionários passam a ser o reflexo das pessoas que estão a cima. Por isso o bom exemplo deve começar do cima (líder).
Quando o líder compartilha com o seu grupo o seu desejo (seja ele para a empresa, família, sociedade), é que da inicio a força propulsora que ira projetar todo os envolvidos para a concretização desse ideal.

Por isso é tão importante estar sempre  se perguntando: – O que eu quero para mim e para as pessoas? Quando não se sabe responder essa pergunta, o seu grupo começa a se perder, vivendo por viver, trabalhando por trabalhar. E acompanhado desse “estado”, começa a surgir criticas sobre a liderança e desmotivação. Fatores cruciais para atrapalhar o seu grupo.
Renovação

Um grande líder necessita estar buscando aprimorarseus conhecimentos. Ele não deve virar um escravo e esquecer todo o restante. Mas necessita ter a vontade e saber como buscar informações quando precisar.Descobrir novas formas, entender novos meios, se reciclar!

Estar sempre atendo a formação de um sucessor, pois a sua evolução depende desse fator.

Nesse ponto a humildade vai destacar o grande líder, pois ele não se enquadra nos moldes de “ser isolado” ou “inalcansável”, e revela cada vez mais um ladoamigo e companheiro.

Alegria no seu dia

Já notaram que em lugares onde as pessoas são alegres, as coisas fluem melhor?!
Isso acontece porque a alegria é o estado natural do ser humano, e por isso, ele só consegue trabalhar realmente bem quando encontra essa alegria.
E onde fica o líder nesse caso? Simples! Ele precisa ser o fiscal da alegria. Estar sempre procurando promover a felicidade para o seu grupo.
Não é questão de interesse, dar algo em troca esperando um retorno (eu te ajudo se me ajudar), porque isso é comum de se encontrar. O grande líder deve ser diferente, deve ser um condutor de felicidade, realmente se importar com as pessoas. Dessa forma, sua sinceridade tocará a fundo o coração do seu grupo, resultado em grande satisfação e empenho dos liderados.
Como a felicidade é contagiante, os liderados conseguiram passar a diante. Se for na empresa por exemplo, os funcionários quando estão felizes, conseguem transmitir esse estado até mesmo aoatender o telefone de um cliente nervoso. As visitas, o contato se tornam mais simples, pois foge do padrão, do excesso de formalidade, do manual de conduta, e passa a ser utilizado um tratamento mais pessoal e humano.

Isso é se importar realmente com o seu cliente, desejar a satisfação de forma pura e sincera.
Como incentivar o meu grupo?

As pessoas necessitam de reconhecimento e aceitação.
Reconhecimento ao meu ver é a junção de varias coisas, passando desde a parte financeira até chegar ao estado de ter o seu trabalho, empenho e esforço valorizado.
Eu sempre parti do princípio de não trabalhar visando dinheiro, pois acredito que não é o principal. Só que é necessário entender que precisa existir o bom senso. O líder necessita estar atento a isso, para poder estar sempre respondendo a altura do seu grupo.
Ele deve sempre estar parabenizando o bom cumprimento dos objetivos, para demonstrar que esta ciente do empenho das pessoas. Só ficar na condição de “Eu sei, mas não vou falar” ou “Eu estou vendo mas não preciso dizer” gera uma distância muito grande entre os liderados para o líder, gerando forte ingratidãoe sensação de descaso.
Procure fazer o melhor para o seu grupo. Se for no trabalho, transforme esse grupo em família, assumindo um comportamento bem mais caloroso e humano.

Comece Já!

Não deixe para amanhã! Inicie hoje sua mudança!
Abandone a teoria, arregace suas mangas e coloque em prática sua vontades!

 
Grande abraço e muito obrigado!
Esse artigo foi baseado no estudo que ando fazendo da palestra do Rev. Watanabe, na Revista Izunome.

“Aquele que consegue encontrar uma solução harmônica
para qualquer problema é amado e respeitado por todos”
Meishu Sama

Qualidade com o seu produto

Uma das maiores dificuldades que as empresas enfrentam é em relação a qualidade de seu produto. Seria algo impossível de se alcançar?
Eu acredito que para se ter um produto com qualidade é necessário revolucionar a forma de sua criação.
Ter um produto com qualidade não quer dizer que ele seja perfeito, mas sim que ele passou (e passa) por diversos processos que visam a perfeição!
Quando estudei Gestão de qualidade de software, me apresentaram uma lista que me fez refletir sobre a questão de qualidade:
“Cerca de 40 a 50% dos programas postos em uso contêm faltas não triviais (BOEHM; BRASIL, 2001). Note que produtos de software com defeitos podem provocar danos materiais, monetários, ambientais e risco de vida. Observe alguns exemplos (PFLEEGER, 2004; PRESSMAN, 2006) a seguir:

  • Em 1962, o foguete espacial mariner, por omissão de um hífen, fez com que, na época, US$ 18,5 milhões fossem para o espaço!
  • Equipamento de Radioterapia Therac-25.  Entre 1985 e 1987 houve acidentes com mortes por overdoses de radiação por problemas no software devido à falta de documentação e de testes de integração.
  • Projeto     Ariane V da Agência Espacial Européia, durou 10 anos e custou US$ 8 bilhões. Foguete e carga de US$ 500 milhões. No vôo inaugural, em 1996, se autodestruiu. Estava se quebrando, pois perdeu o controle pela reinicialização simultânea dos computadores principal e de back-up.
  • Nave Mars Climate Orbiter da NASA foi perdida no espaço por erro na conversão entre unidades inglesas e métricas. Prejuízo: US$ 125 milhões.”predio

Então fica fácil entender que a falta de qualidade gera um grande prejuízo para quem cria e quem usa o produto. Levando muitas empresas a ficarem conhecidas por apresentar um péssimo trabalho. O mercado hoje esta repleto de empresas que levam muito a sério essa questão de satisfação do cliente, investindo em qualidade de seu software.
As empresas que não conseguem ter essa visão, acabam produzindo projetos que se tornam cada vez mais difíceis de controlar, manter e evoluir. Criando uma bola de neve que cresce com muita facilidade e velocidade, extrapolando todos os prazos e orçamento previstos para o trabalho.
Com isso, a empresa começa a ter que investir em mais pessoas, mas o que se faz é remediar o problema! Pois continua a entregar o produto de forma que o cliente não precisa ou não espera. Resultado: Mais retrabalho! E mais uma vez o nome da empresa é lançado no pódio dos atrasados e sem competência!
É necessário que se entenda que Qualidade não é luxo, ou apenas um diferencial nesse mercado competitivo e inovador. Ela é um pré-requisito para projetar o seu produto e garantir a sobrevivência de sua empresa.

Você e seu produto
Procure adicionar em suas atividades o habito de documentar o máximo possível suas rotinas. Desta forma fica mais fácil para realizar manutenção. Dispensando várias horas de análise para entender o que “aquilo” faz, para depois realizar as mudanças.
Outro fator muito importante é investir em adoção de boas práticas. Fazendo com que todos consigam seguir um padrão (dizer a mesma língua). Desta forma fica mais uniforme os métodos utilizados para se trabalhar ou solucionar os problemas do dia a dia.
Não tenha medo de refazer seus trabalhos visando evolução. Saia da ilusão de que você vai conseguir prever o que o seu cliente necessita daqui a 10 anos. Procure satisfazer a necessidade atual, mas nunca esquecendo de apresentar novas soluções.
A paritr de agora estarei criando alguns artigos visando compartilhar o meu estudo sobre qualidade de software.  Mostrando algumas dicas e opiniões.
Muito obrigado e ate a próxima!

Parábola da Vaquinha

Um Mestre da sabedoria passeava por uma floresta com seu fiel discípulo quando avistou ao longe um sítio de aparência pobre e resolveu fazer uma breve visita…

Durante o percurso ele falou ao aprendiz sobre a importância das visitas e as oportunidades de aprendizado que temos, também com as pessoas que mal conhecemos.

Chegando as sítio constatou a pobreza do lugar, sem calçamento, casa de madeira, os moradores, um casal e três filhos, vestidos com roupas rasgadas e sujas… então se aproximou do senhor aparentemente o pai daquela família e perguntou:

– Neste lugar não há sinais de pontos de comercio e de trabalho; como o senhor e a sua família sobrevivem aqui?

E o senhor calmamente respondeu:

– Meu amigo, nós temos uma vaquinha que nos dá vários litros de leite todos os dias. Uma parte desse produto nós vendemos ou trocamos na cidade vizinha por outros gêneros de alimentos e a outra parte nós produzimos queijo, coalhada, etc…; para o nosso consumo e assim vamos sobrevivendo.

O sábio agradeceu a informação, contemplou o lugar por uns momentos, depois se despediu e foi embora.

No meio do caminho, voltou ao seu fiel discípulo e ordenou:
– Aprendiz, pegue a vaquinha, leve-a ao precipício ali na frente e empurre-a, jogue-a lá em baixo.

O jovem arregalou os olhos espantado e questionou o mestre sobre o fato da vaquinha ser o único meio de sobrevivência daquela família, mas, como percebeu o silencio absoluto do seu mestre, foi cumprir a ordem.

Assim empurrou a vaquinha morro abaixo e a viu morrer. Aquela cena ficou marcada na memória daquele jovem durante alguns anos e um belo dia ele resolveu largar tudo o que havia aprendido e voltar naquele mesmo lugar e contar tudo aquela família, pedir perdão e ajudá-los.

Assim fez, e quando se aproximava do local avistou um sítio muito bonito, com arvores floridas, todo murado, com carro na garagem e algumas crianças brincando no jardim.

Ficou triste e desesperado imaginando que aquela humilde família tivera que vender o sítio para sobreviver, “apertou” o passo e chegando lá, logo foi recebido por um caseiro muito simpático e perguntou sobre a família que ali morava há uns quatro anos e o caseiro respondeu:

– Continuam morando aqui.

Espantado ele entrou correndo na casa; e viu que era mesmo a família que visitara antes com o mestre.

Elogiou o local e perguntou ao senhor (o dono da vaquinha):
– Como o senhor melhorou este sítio e está muito bem de vida???

E o senhor entusiasmado, respondeu:
– Nós tínhamos uma vaquinha que caiu no precipício e morreu, daí em diante tivemos que fazer outras coisas e desenvolver habilidades que nem sabíamos que tínhamos, assim alcançamos o sucesso que seus olhos vislumbram agora…

Reflexão: Já é hora de achar essa “vaquinha” que tanto nos apega e empurra-la! Só ficamos expostos ao sucesso quando saímos de nossa zona de conforto!

 
Muito Obrigado!

lazCompromisso – Nova versão

É com grande prazer e satisfação que lanço a nova versão do lazCompromisso!
Agora implementei um gerenciador de tarefas, para ajudar a executar determinadas tarefas marcada para os horários que sempre esqueço esquecemos!
Aguarde que em breve vem mais, pois vou adicionar no lazCompromisso uma agenda telefônica (afinal eu nunca lembro).

 

 

lazCompromisso1

 

Fiquem a vontade para sugerir!
Grande abraço!

Download: lazCompromisso