Perl, PHP e Python.

Cada qual com suas próprias vantagens e desvantagens, Perl, PHP e Python têm mais do que a letra ‘P’, no início de seus nomes, em comum.
Trata-se de 3 linguagens de programação modernas e muito populares.

Para se tornar um bom programador, dominar uma única linguagem de programação não é o suficiente.
É muito comum nos envolvermos em projetos que fazem uso de mais de uma linguagem, como meio para solucionar problemas.
Fazer a mudança de uma linguagem de programação para outra é mais fácil quando se tem intimidade com mais de uma.
O problema é que há muitas linguagens de programação no mundo.
Neste post, vou tentar mostrar porque Perl, PHP e Python merecem que você dedique parte do seu tempo para aprender, pelo menos, uma delas.
Claro que a escolha de uma linguagem, para erigir um projeto, parte de se considerar diferentes fatores — tais como

  • as funcionalidades que se deseja que as aplicações tenham,
  • que novos recursos elas devem suportar,
  • a(s) plataforma(s) de hardware/sistemas operacionais para as quais se vai desenvolver as soluções
  • performance, segurança, quantidade de código que precisará ser criado, a comunidade etc.

As linguagens dos ‘P’, são dinâmicas e poderosas, cada qual do seu jeito e têm em comum o fato de que são muito usadas para desenvolver aplicações web e scripts.
Vamos conhecer um pouco de cada uma, suas vantagens e (lógico!) desvantagens.

Perl

O Perl (nas versões 5.x e 6.x) é uma linguagem de programação dinâmica, interpretada, de propósito geral e de alto nível.
Originalmente desenvolvida por Larry Wall, em 1987, para uso no sistema operacional Unix — tinha um objetivo inicial de facilitar o processamento de relatórios de sistema.
O Perl passou por várias mudanças e revisões e tem sido reprojetada na versão 6 — a ponto de evoluir para uma nova linguagem, em relação á original.
Ambas as ramificações (Perl 5 e 6) têm desenvolvimento ativo e independente uma da outra, formando a família de linguagens Perl.
A família pega emprestado características de outras linguagens importantes, como C, shell script, AWK e sed.
Atualmente, encontra aplicação na administração de sistemas, programação de redes, aplicações financeiras, bioinformática etc.

Manipulação de cadeias de caracteres (strings) e expressões regulares são pontos fortes conhecidos do Perl.

Vantagens

  • Perl é muito boa para lidar com expressões regulares e costuma ser a primeira opção para fazer trabalho pesado nesta área.
  • Seu código é bem curto e, comumente, é possível implementar soluções com apenas uma linha de código.
  • Pode ser usada como linguagem funcional, imperativa, procedural ou orientada a objetos.
  • O CPAN do Perl provê uma grande quantidade de módulos e código testado. Boa parte é gratuita.
  • Por ser uma linguagem, já tradicional e com bastante estrada (mais de 30 anos), conta com muita documentação online e uma grande comunidade de suporte.
  • Portabilidade e disponibilidade a todas as plataformas.

Desvantagens

  • Uma vez que tem sintaxe complexa, iniciantes podem ter alguma dificuldade de entender.
    O mesmo código pode ser escrito de modos diferentes — o que é muito bom, quando se já tem um conhecimento mais avançado sobre a linguagem, mas pode ser fator de confusão para quem está aprendendo.
  • Comparado ao Python, tem documentação escassa sobre como programar orientado a objetos.
  • Pode ser lenta, em comparação com outras linguagens de script.

Popularidade

Mesmo não sendo “nova no pedaço”, seu crescimento tem sido lento, (novamente) comparado a outras linguagens.
Ainda assim, goza de grande popularidade e de uma comunidade engajada.

PHP

Também se trata de uma linguagem de propósito geral, mas é amplamente usada em websites.
Projetada por Rasmus Lerdorf, é uma linguagem de script interpretada server-side, desenvolvida com o propósito de ser usada no desenvolvimento web — sendo que, inicialmente, seu nome correspondia a Personal Home Page.
Atualmente, PHP é um acrônimo recursivo para PHP: Hypertext Preprocessor — ou “PHP: Preprocessador de Hipertexto”.
É muito usada em meio ao código HTML e está inserida em vários sistemas de gestão de conteúdo online.
O código é geralmente processado por interpretador implementado como módulo no servidor web ou como CGI (Common Gateway Interface).
O código também pode ser executado/interpretado na interface de linha de comando (CLI) e pode ser usado para implementar aplicações standalone.
Com um desenvolvimento, cujo início data de 1995, o PHP se encontra na versão 7.x, atualmente.
Ao contrário do Perl (5 e 6) e do Python (2 e 3), a comunidade do PHP caminha junto com as novas versões — de forma que a linguagem não sofreu uma bifurcação em seu desenvolvimento.
É usado no YouTube, no Facebook e em vários outros grandes projetos na Internet.

Vantagens

  • A grande maioria dos provedores de Internet oferece um ambiente pronto para você desenvolver em PHP, nas implementações mais atuais da linguagem.
  • É fácil de aprender e usar. A sintaxe é muito parecida com a da linguagem C.
  • Conta com uma enorme comunidade de suporte.
  • É estável e rápido.
  • Tem suporte a muitos bancos de dados e provê gestão nativa de sessão.

Desvantagens

  • Algumas das bibliotecas escritas em PHP usam uma abordagem procedural e podem ser de difícil compreensão para programadores com formação exclusiva em orientação a objetos.
  • Pode se tornar lenta com a escalabilidade das suas necessidades.
    Algumas organizações fazem uso de frameworks para contornar este problema, contudo.
  • Não é a opção ideal para escrever aplicações desktop.

Popularidade

É, certamente, muito popular e costuma integrar a lista top 10 de linguagens de programação — principalmente quando o assunto é desenvolvimento para a web.

Leia mais sobre o PHP.

Python

Desenvolvida no fim dos anos 80, por Guido van Rossum, Python é uma linguagem de programação elegante e fácil de aprender.
Tem se tornado especialmente popular nos últimos anos e costuma-se recomendar seu aprendizado (como primeira linguagem) a iniciantes em programação.
Tem suporte a múltiplos paradigmas — funcional, imperativa, procedural e, obviamente, orientada a objetos.
Pode ser usada para desenvolver aplicações para desktop, para dispositivos móveis, análise de dados, Web, computação nas nuvens, jogos etc.
A linguagem usa a indentação para identificar blocos de código, o que elimina a necessidade de usar pontos-e-vírgulas etc.

Vantagens

  • Muito bem documentada e você encontra muitos livros sobre a linguagem, inclusive ótimas publicações de autores nacionais. Ou seja, você não precisa comprar traduções malfeitas.
  • É usada em animação 3D e no desenvolvimento de jogos, diferente das outras linguagens de que falamos aqui.
  • Estudantes costumam aprender Python mais rápido do que C ou C++.
  • O código é mais enxuto e mais limpo e, portanto, mais fácil de entender.
  • Comparado a outras linguagens, seu código costuma ser mais curto.
  • Tem suporte a JVM, de forma que seu código pode rodar alguns objetos ou APIs Java.

Desvantagens

Por mais animado que se esteja com uma linguagem de programação, não dá para fechar os olhos para seus pontos fracos:

  • O seu código pode simplesmente não funcionar por que você esqueceu de indentar corretamente.
  • O Python força os programadores a seguir uma convenção.
  • É uma linguagem interpretada e mais lenta que C ou C++.
  • Até o momento, não é muito eficiente para rodar código voltado para múltiplos processadores e/ou núcleos.

Popularidade

Tem se tornado mais e mais popular nos últimos anos e chegou a ganhar o TIOBE Programming Language of the Year/2007. A instituição mede o crescimento e a popularidade de uma linguagem no período de um ano.
A linguagem se manteve em 2o, durante o ano de 2017.

Conclusão

Não existe resposta pronta para a pergunta “qual a melhor linguagem ….”
No caso destas 3, todas podem realizar os mesmos projetos — algumas, com mais eficiência do que as outras.
A título de sugestão, segue a minha lista:

  • PHP é a mais indicada para o desenvolvimento Web e projetos na Internet. Dos servidores gratuitos aos mais caros, quase todos oferecem suporte a PHP e a bancos de dados MySQL/MariaDB.
  • Projetos do lado do cliente, para rodar no desktop ou em dispositivos móveis, podem ser melhor servidos com Python.
  • Perl é mais vantajoso na automação de serviços, na administração de sistemas e em scripts.

Se você tem planos de iniciar um projeto na Web, vale saber que, com o PHP, vai encontrar quase tudo pronto para começar a trabalhar e ver os resultados.
Contudo, se ainda não tiver qualquer projeto em mente, minha recomendação pessoal é a favor do Python.

Referências

https://pt.wikipedia.org/wiki/Perl.

https://pt.wikipedia.org/wiki/PHP.

https://pt.wikipedia.org/wiki/Python.

Leia mais sobre Python.

https://electronicsforu.com/resources/software/a-guide-to-rogramming-in-perl-php-and-python.

Como instalar um servidor web LAMP no Debian 9

Um servidor web é um ponto de início básico para poder instalar e usar uma série de outros softwares e serviços, como galeria de fotos, blog, fórum ou apenas um simples site HTML.
O LAMP é, basicamente, um web server Linux, que inclui o Apache, um banco de dados e suporte à linguagem de programação PHP.

O assunto já rendeu várias tags LAMP e posts diversos, neste mesmo site.
No decorrer do texto, sugiro clicar nos links, sempre que tiver alguma dúvida e queira se aprofundar um pouco mais em um ponto específico.
O conceito é bastante flexível, como podemos ver a seguir

O que é um servidor web LAMP

Como conceito, o LAMP inclui estas 4 “peças”:

  • Você pode usar uma das diversas opções Linux disponíveis. Neste texto, estamos nos baseando no Debian 9 Stretch — que é uma versão LTS do sistema operacional, ou seja, vai ter suporte prolongado até 2022, após quase 2 anos de desenvolvimento — uma ótima opção, portanto, a ser usada em um servidor. A gama de sistemas operacionais, contudo, inclui o FreeBSD e até mesmo o Windows. Neste último caso, o servidor leva o nome de WIMP (Windows, IIS, MySQL e PHP) e, como você pode ver no link para o Urban Dictionary, o termo costuma ter sentido pejorativo.
    Como alternativas, já escrevi sobre como instalar o LAMP no Ubuntu e no OpenSUSE.
  • O servidor web, de que falamos aqui, é o Apache. Alternativas comuns são o Nginx e o Lighttpd.
  • O banco de dados MySQL foi a escolha perfeita deste quarteto, por muito tempo. Hoje, há um processo de migração para o MariaDB em curso — e o Debian está seguindo esta tendência.
  • Por último, temos a escolha da linguagem de programação, até onde se estende a flexibilidade do conceito.
    As escolhas mais comuns são, pela ordem, PHP, Python e Perl — que coincidentemente começam com a letra ‘P’.
    Entretanto, se quiser rodar apps web importantes, como o WordPress, e-commerce ou Piwigo, você vai precisar do PHP.
    Servidores Linux, contudo, já costumam incluir suporte ao Perl e ao Python.
    Se você tem interesse no uso de alguma destas duas opções, verifique se estão presentes no servidor com os seguintes comandos:

    
    perl --version
    
    This is perl 5, version 24, subversion 1 (v5.24.1) built for x86_64-linux-gnu-thread-multi
    (with 67 registered patches, see perl -V for more detail)
    
    Copyright 1987-2017, Larry Wall
    
    ...
    
    
    python --version
    
    Python 3.5.3
    

    Tenha em conta que o Python pode ter 2 versões independentes instaladas, em muitas distribuições GNU/Linux.

Como instalar o servidor web no Debian

O Debian tem uma ferramenta que automatiza a instalação de meta pacotes para o seu sistema.
Sugiro ler sobre o tasksel, mais tarde, para ver o que mais o utilitário pode fazer por você.
Para ter o Apache instalado e rodando, em poucos minutos, rode o seguinte comando:


sudo tasksel install web-server

debian tasksel web-server
Debian tasksel web-server install
Para verificar se o seu web server está funcionando direito, execute o seguinte:


sudo service apache2 status

[sudo] senha para justincase: 
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; 
   Active: active (running) since Sun 2017-07-16 12:26:00 -03; 15
 Main PID: 6524 (apache2)
    Tasks: 55 (limit: 4915)
   CGroup: /system.slice/apache2.service
           ├─6524 /usr/sbin/apache2 -k start
           ├─6526 /usr/sbin/apache2 -k start
           └─6527 /usr/sbin/apache2 -k start

jul 16 12:26:00 ultra-5 systemd[1]: Starting The Apache HTTP Serv
jul 16 12:26:00 ultra-5 apachectl[6513]: AH00558: apache2: Could 
jul 16 12:26:00 ultra-5 systemd[1]: Started The Apache HTTP Serve
lines 1-13/13 (END)

Procure por “active (running)“.
Debian test web-server Apache
Você também pode testar o Apache invocando o daemon diretamente (ops!), da seguinte forma:


sudo apachectl -v

Server version: Apache/2.4.25 (Debian)
Server built:   2017-06-20T19:29:11

Outro método de verificar se tudo está OK, é acessar o servidor via web: abra o endereço http://localhost em seu navegador.

Até agora, já temos o Apache rodando no sistema.
Falta o banco de dados e o PHP…

Como instalar o MariaDB no Debian

O banco de dados pode ser instalado via apt:


sudo apt install mariadb-server mariadb-client 

Ainda existe a necessidade de instalar uma pequena biblioteca para ajudar na integração entre o PHP e o banco de dados, que iremos ver no próximo tópico.
Por enquanto, faremos uma rápida checagem:


mariadb --version

mariadb  Ver 15.1 Distrib 10.1.23-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

ou pode usar o service, como fez, anteriormente, com o Apache:


sudo service mariadb status

● mariadb.service - MariaDB database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2017-07-16 15:17:52 -03; 15min ago
 Main PID: 9974 (mysqld)
   Status: "Taking your SQL requests now..."
   CGroup: /system.slice/mariadb.service
           └─9974 /usr/sbin/mysqld

jul 16 15:17:50 ultra-5 systemd[1]: Starting MariaDB database server...
jul 16 15:17:51 ultra-5 mysqld[9974]: 2017-07-16 15:17:51 139788240409152 [Note] /usr/sbin/mysqld (mysqld 10.1.23-MariaDB-9+deb9u1) starting as proces
jul 16 15:17:52 ultra-5 systemd[1]: Started MariaDB database server.

Se o serviço não estiver active, ative-o assim:


systemctl start {apache2,mariadb}

Como instalar o PHP no Debian

Alguns tutoriais recomendam a instalação do PHP primeiro. Isto pouparia o tempo de reiniciar o Apache. Fora isso, o resultado é o mesmo.
O Debian 9 já usa, não somente, o MariaDB como padrão, como o PHP 7.0 em seus repositórios.
Tradicionalmente, a instalação é feita assim:


sudo apt install php php-mysqli apache2-mod-php7.0

Instale o phpmyadmin

Por fim, o phpmyadmin cumpre duas funções neste processo, como um todo.
É raro realizar operações diretamente no banco de dados, se você pretende usar aplicativos como o WordPress — uma vez que há plugins para isso.
Mas nem todo mundo gosta de confiar tarefas de manutenção do banco de dados a ferramentas de terceiros.
Além disto, os plugins acrescentam “peso” ao seu site e o “manual das boas práticas” manda não abusar do recurso.

O phpmyadmin, permite realizar tarefas administrativas nos bancos de dados MySQL/MariaDB.
A ferramenta representa um meio-termo entre a simplicidade dos plugins e a complexidade da linha de comando (CLI).

A segunda função do aplicativo é ajudar a verificar se toda a instalação, feita até aqui, ocorreu bem.


sudo apt install phpmyadmin


Isto feito, não se esqueça de reiniciar o serviço do Apache:


sudo systemctl restart apache2

O fato é que se ficou faltando alguma coisa, nos passos anteriores, a instalação do phpmyadmin irá cuidar de garantir que todas as dependências estejam instaladas e configuradas.
phpmyadmin frontscreen
Basta abrir a página http://localhost/phpmyadmin, para ver se tudo está bem ou não.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Como criar tabelas MySQL em um script PHP

Já expliquei anteriormente, no artigo como criar tabelas no MySQL como realizar esta mesma tarefa dentro da linha de comandos do MySQL.
Neste texto, vou mostrar como obter o resultado através de um script PHP.
Abra o seu editor de textos favorito e vamos ao código:

<html>
<head>
<title>Como criar tabelas com PHP</title>
</head>
<body>
<?php
/* substitua as variáveis abaixo pelas que se adequam ao seu caso */
$dbhost = 'localhost:3036'; // endereco do servidor de banco de dados
$dbuser = 'root'; // login do banco de dados
$dbpass = 'minhasenha'; // senha
$dbname = 'nomebanco'; // nome do banco de dados a ser usado
$conecta = mysql_connect($dbhost, $dbuser, $dbpass, $dbname);
$seleciona = mysql_select_db($dbname);
$sqlcriatabela = "CREATE TABLE contatos (nome VARCHAR(50), telefone VARCHAR(25));";
$criatabela = mysql_query( $sqlcriatabela, $conecta );

// inicia a conexao ao servidor de banco de dados
if(! $conecta )
{
  die("<br />Nao foi possivel conectar: " . mysql_error());
}
echo "<br />Conexao realizada!";

// seleciona o banco de dados no qual a tabela vai ser criada
if (! $seleciona)
{
  die("<br />Nao foi possivel selecionar o banco de dados $dbname");
}
echo "<br />selecionado o banco de dados $dbname";

// finalmente, cria a tabela 
if(! $criatabela )
{
  die("<br />Nao foi possivel criar a tabela: " . mysql_error());
}
echo "<br />A tabela foi criada!";

// encerra a conexão
mysql_close($conecta);
?>
</body>
</html>

Crie uma tabela temporária no MySQL

Ao usar o parâmetro TEMPORARY, a tabela seria criada e depois eliminada, ao final da sessão, com o comando mysql_close($conecta); na linha 39. Assim, a cada vez que a página é recarregada, a tabela é recriada e removida.
Altere o código, pratique e divirta-se!

Como instalar o PHP 7.0 no Ubuntu 14.04 e no Debian 8

O PHP 7.0 é, provavelmente, a próxima grande sensação do início do ano de 2016, quando a versão final será lançada — previsto pra Março.
Os primeiros RC (Release Candidates) têm previsão de lançamento a partir de Junho de 2016.
Neste artigo, eu vou mostrar como instalar a versão beta, para você já poder testar os novos recursos da linguagem e verificar sua impressionante velocidade.

Eu sei que não estou escrevendo para crianças, mas… é sempre bom frisar que software em fase beta, não deve ser instalado em máquinas de produção — nem nos servidores, nem no seu notebook ou desktop de trabalho.

Logo unofficial PHP 7
O PHP 7.0, no momento em que estou escrevendo, conflita com o PHP 5.x — portanto, só será possível ter um dos dois instalado em seu sistema.
Eu testei a instalação, com sucesso, no Debian 8.2 “Jessie”, e Apache 2.4 — segundo desenvolvedores, há conflito com versões anteriores do Apache.
Os desenvolvedores afirmam, contudo, que o procedimento funciona para o Ubuntu 14.04 LTS.

Como configurar o sistema, baixar e instalar os pacotes do PHP 7

Nos procedimentos que seguem, vamos configurar o arquivo sources.list (não sem antes fazer um backup) para ele passar a buscar informações dos repositórios contendo os pacotes do PHP7.
Em seguida, vamos configurar a chave gpg e atualizar os repositórios.
Feito isto, o sistema já estará pronto para receber o novo PHP 7.0.
Comece com o backup:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup-2015-11-17

Acrescente as seguintes linhas ao final do arquivo /etc/apt/sources.list:

# dotdeb PHP7 repositórios
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

Vamos à configuração da chave gpg…

wget https://www.dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg

Agora, atualize os repositórios e instale o PHP 7:

sudo apt-get update
sudo aptitude install php7.0

Divirta-se!

Referências:

https://wiki.php.net/rfc/php7timeline.
https://www.dotdeb.org/instructions/.

Qual a importância da linha de comando ou console para web designers?

A linha de comando, ou console, é onde se pode fornecer uma sequência de comandos, para executar um aplicativo ou vários, realizar uma tarefa ou uma sequência de tarefas etc.
Amparados por parâmetros, opções e cláusulas os comandos, dados no console ou no terminal, têm uma enorme (quase infinita) flexibilidade.
Command line tools for web design cover picture

Administradores de sistemas, desenvolvedores, hackers, autores etc. já descobriram o “poder divinal” que um terminal oferece a quem se dispõe a aprender a dominá-lo.

Mas, enfim… qual a utilidade ou a importância desta ferramenta a um web designer?
Se por um lado, a interface gráfica tem um grande apelo visual e facilidade de uso, ela também prejudica a flexibilidade e a agilidade — nenhum designer de interface “enche a tela” de botões para realizar uma determinada tarefa de n maneiras diferentes.
Além disto, a interface gráfica é comumente lenta em computadores mais antigos — o que implica na demora para iniciar a execução de alguma atividade.
O terminal permite determinar exatamente como se deseja que uma tarefa (ou uma sequência de tarefas) seja executada e ela começa a partir do momento em que você dá Enter.

Não abro mão da flexibilidade e da agilidade que só o terminal proporciona. É uma ferramenta que eleva exponencialmente o meu nível de controle sobre o sistema.

Terminal do Linux, do Windows ou do MacOS?

Se você ainda não usa o GNU/Linux, no seu trabalho, insisto: você deveria começar a considerar seriamente esta opção profissional — que te pode possibilitar trabalhar com softwares 100% legalizados a custos muito baixos ou gratuitos.
O terminal do Windows também oferece uma razoável dose de flexibilidade. O sistema, contudo, foi desenhado para que se usassem apenas as opções da interface gráfica. O processo de “castração” do terminal DOS, começou a partir do Windows 3.0 (Maio/1990) e tem se fortalecido até os dias de hoje.
A Microsoft tem se esforçados para esconder o terminal do usuário, como se fosse um parente indesejável.
O MacOS foi construído sobre a plataforma Unix FreeBSD e tem um terminal poderoso. A cultura dos usuários, incentivados pelo departamento de marketing da Apple constitui uma forte barreira para seu uso. Mas ele está lá. 😉
Usuários do MacOS X podem usar o Homebrew para instalar as ferramentas que não são parte do pacote de aplicativos padrão.
O Linux, como estes outros sistemas operacionais, também veio do ambiente em caracteres e evoluiu para o uso predominante da interface gráfica.
O Linux, contudo, convive muito bem com o uso do terminal. Todas as grandes distribuições oferecem facilidades de acesso ao console.
Embora haja ferramentas visuais sofisticadas para instalar softwares, muitos usuários Linux se sentem muito à vontade para instalar seus aplicativos com as ferramentas de linha de comando, como o apt-get — sendo que, na maioria das vezes, lhes basta copiar e colar a instrução de um site no seu terminal, podendo fazer as mudanças que achar pertinentes, se for o caso.
Encontre mais artigos sobre o uso do apt-get, na caixa de busca deste site.

O que há na linha de comando para profissionais do web design?

Há muito que um webdesigner já faz, usando a interface gráfica, que pode ser feito na linha de comando.
Eu sou um evangelista do uso do software livre e do uso de comandos no terminal — mas eu entendo, veja bem, que você deva usar sempre o que lhe oferecer os melhores resultados.
Tudo o que este artigo pede é que você abra os olhos para o terminal do seu sistema e veja (com generosidade e sem preconceitos) se há lá alguma coisa que lhe possa ser útil. Só isso.
Veja alguns pontos que Cadmin’s blog elenca como favoráveis ao uso do terminal:

  • O uso de pacotes de softwares de terceiros se torna invisível — Webdesigners usam vários pacotes de terceiros, tais como o Bootstrap, jQuery, Normalize.css etc.
    A gestão de pacotes, contudo, é muito morosa, quando feita manualmente.
    Com o uso do terminal, é possível inserir os pacotes requeridos pelo seu projeto com alguns comandos: bower install jquery, bower update jquery
  • Para quem não sabe, o Bower é um gestor de pacotes, semelhante ao apt-get ou o PIP.

  • No terminal, compilar é muito mais rápido — HTML, CSS e JavaScript são 3 linguagens sempre presentes em projetos de design web, entre outras. As ferramentas da linha de comando tornam a produção e entrega de código mais eficiente nestas linguagens.
    Eventualmente, compilar pré-processadores, é muito mais rápido na linha de comando.
  • Ferramentas de teste de sites — Há várias ferramentas de teste da rede e da eficiência de seu website ou do provedor em que ele se encontra hospedado, que podem ser invocadas do terminal — não somente as opções de execução, mas também as informações fornecidas, são extremamente flexíveis e maleáveis.

Uma vez iniciado o uso da linha de comando, você adquire o costume e um mundo novo de possibilidades surge, ao alcance de seus dedos.

Referências

Site oficial do Bower: bower.io
How important is command line for web designers — http://auckland.fortuneinnovations.com/how-important-command-line-web-designers
Command line tools for frontend developers — http://seesparkbox.com/foundry/command_line_tools_for_frontend_developers