Instale a biblioteca pygame para Python no Linux via pip

A biblioteca pygame, é uma das várias feitas para tornar mais fácil o desenvolvimento de jogos — dos mais simples aos mais complexos — em Python, para desenvolvedores profissionais ou amadores.
O procedimento, que segue, pode ser realizado no Windows e em qualquer distro Linux, apesar do título — o fato é que só testei no Linux (Debian 9, para ser mais específico).
Devo acrescentar que os exemplos usam o Python 3 — mas é fácil adequá-los ao Python 2, se esta for a sua opção.
Há várias maneiras de instalar a biblioteca no seu sistema. Esta é uma das mais simplificadas e, por isto, vale a pena dar-lhe uma chance.
O texto pressupõe que você já tenha o pip instalado. Se não tiver, veja como fazer isso aqui (é fácil).
python pygames development logo
Não esqueça de realizar o procedimento de instalação com privilégios administrativos:


pip3 install pygame

Collecting pygame
  Downloading pygame-1.9.2-cp35-cp35m-manylinux1_x86_64.whl (9.4MB)
    100% |████████████████████████████████| 9.4MB 147kB/s 
Installing collected packages: pygame
Successfully installed pygame-1.9.2

Se tiver curiosidade, Leia mais sobre por que há mais de uma versão do Python, instalada no Linux.

Como testar se a biblioteca pygame está instalada e funcionando

Abra um editor de textos, copie e cole o seguinte código:


import pygame, sys
from pygame.locals import *

pygame.init()

DISPLAYSURF=pygame.display.set_mode((400,300))
pygame.display.set_caption("Hello World!")
while True: #principal loop
    for event in pygame.event.get():
        if event.type==QUIT:
            pygame.quit()
            sys.exit()
        pygame.display.update()

Grave-o com o nome ‘pygteste.py’ — ou qualquer outro nome que você achar melhor.
Em seguida, rode o código com o interpretador Python3:


python3 pygteste.py

Se uma janela preta, com nada dentro, aparecer, o programa funcionou bem. Parabéns!
python hello world pygame

Como instalar o Ubuntu SDK IDE, para desenvolver apps para plataformas móveis.

O pacote Ubuntu SDK IDE contém aplicativos e bibliotecas importantes para começar a desenvolver aplicativos para a plataforma Ubuntu (o que inclui o Ubuntu Touch ou Ubuntu Phone).
O pacote contém softwares que suprem a necessidade de ter dispositivos móveis compatíveis à mão.
ubuntu sdk ide phone development
O Ubuntu SDK é uma IDE (Ambiente de Desenvolvimento Integrado) voltada para escrever apps para a plataforma Ubuntu.
É baseado no QtCreator e fornece ao desenvolvedor todas as ferramentas que ele precisa para estar pronto a desenvolver novos aplicativos, com o uso de QML, HTML5 e C++, entre outras possibilidades, ainda em desenvolvimento.

Como instalar Ubuntu SDK IDE

A mais nova versão, até o momento, precisa de uma rápida configuração no sources.list, antes de poder ser instalada.
Siga estes passos:

# adicione o repositório
sudo add-apt-repository ppa:ubuntu-sdk-team/ppa


# sincronize os repositórios
sudo apt update


# atualize o sistema
sudo apt dist-upgrade


# instale o pacote de aplicativos
sudo apt install ubuntu-sdk-ide

A inclusão desta PPA é necessária para poder obter a versão mais atual do pacote ubuntu-sdk.
Contudo, há uma versão mais estável e menos atual disponível nos repositórios normais da distro.
O pacote da PPA, além de versões mais atuais do ubuntu-sdk e de algumas bibliotecas, inclui o pacote ubuntu-sdk-ide — que envolve todo o ambiente de desenvolvimento.
Dependendo da sua instalação atual, os pacotes podem vir a ocupar aproximadamente 800 MB no seu HD.
Para dar início ao aplicativo, abra o Dash e digite ‘ubuntu-sdk’.
Daqui, pra frente, é começar a estudar o ambiente, com mais profundidade. Para isto, siga os links abaixo.
screenshot ubuntu sdk ide

Referências

https://developer.ubuntu.com/en/blog/2016/09/07/releasing-410-ubuntu-sdk-ide/.
https://launchpad.net/~ubuntu-sdk-team/+archive/ubuntu/ppa.
https://developer.ubuntu.com/en/phone/platform/sdk/.
https://developer.ubuntu.com/en/phone/platform/sdk/installing-the-sdk/.
https://developer.ubuntu.com/en/phone/.

Gosta do NetBeans? Use o nightly build e ajude os desenvolvedores.

Uma das melhores formas de ajudar os programadores do seu aplicativo preferido é usar a versão em desenvolvimento e permitir o feedback automático do uso ao projeto.
Assim, à medida em que você experimenta os mais novos recursos do aplicativo, ajuda dando retorno à equipe de desenvolvimento sobre o que funciona ou não no programa; sobre o que está bom e o que ainda precisa ser melhorado, antes do lançamento.

O NetBeans é um projeto de código aberto, livre e bem sucedido.

Se você tem interesse em ajudar este (ou qualquer outro projeto) é possível fazê-lo de diversas maneiras: na documentação, na tradução (do programa e da documentação), dando sugestões de melhoria do código, criando plug ins etc.
Todas estas opções pedem algum nível de engajamento com as equipes responsáveis.
Se você apenas quer usar uma versão em desenvolvimento, contudo, não precisa sequer dar o seu nome ou criar uma conta no projeto — basta baixar e usar.

A versão em desenvolvimento convive bem com a versão estável

captura de tela netbeans 8 and nightly
Sim. Você pode ter as duas instaladas no seu computador.

A ideia é que você possa trabalhar e continuar a escrever código usado na produção na IDE estável e testar o seu trabalho, sem correr riscos desnecessários, na nightly build.

A convivência entre as duas versões é pacífica e produtiva — permitindo que os dados de usuário de uma sejam importados para a outra.

Qual a melhor versão de desenvolvimento a ser usada?

Embora seja possível espelhar na sua máquina os repositórios GIT dos desenvolvedores, o ideal, de acordo com as equipes de desenvolvimento, é baixar a nightly build oficial do site.
O que ocorre é que, ao usar a versão dos repositórios há maiores possibilidades de contaminar os relatórios com bugs inválidos, oriundos das configurações particulares do seu sistema.
São versões mais adequadas a quem é desenvolvedor do Netbeans. Então, se quiser ajudar, não faça isso.

Onde baixar o NetBeans nightly build

Na mesma página de downloads “normais”, há um link pra página de downloads das versões em desenvolvimento. Ao final deste artigo, estão disponíveis este e outros links.
site de download do netbeans nightly build
Na página de download oficial do nightly build do NetBeans, há várias distribuições do aplicativo para baixar. Escolha a sua:

  • Java SE
  • Java EE
  • C/C++
  • PHP
  • Tudo (distribuição completa)

Dê um passo a mais

Se você é um usuário avançado do NetBeans e tem fluência no inglês, pode fazer parte do NetCat.

  1. De maneira resumida, o NetCat é um programa para envolver a comunidade de usuários do NetBeans em testes da versão de desenvolvimento do aplicativo.
  2. Os participantes fornecerão feedback sobre a usabilidade do produto, sua qualidade e sua performance.
  3. Em retorno, você terá uma oportunidade de influenciar significativamente a qualidade e os rumos do desenvolvimento da IDE NetBeans.

Os participantes do programa NetCat respondem a questionários e têm suas opiniões levadas em conta nas decisões do projeto.
Entre os benefícios, os participantes com 20 ou mais pontos de atividades, recebem um certificado de reconhecimento de participação no projeto.
Adicionalmente, os 3 maiores contribuidores recebem recomendação oficial no Linkedin.com.
Você pode pontuar por revisar um tutorial, testar uma versão do NetBeans no seu sistema operacional, responder a uma pesquisa de satisfação etc.

Use o script do Luis Lobo

O desenvolvedor Luis Lobo montou um script que faz a busca e o download da última versão do nightly build.
Para usá-lo, abra o seu editor de textos preferido, copie e cole o código abaixo:

#!/bin/bash
echo "Starting compilation..."
DOWN_DIR=~/Downloads/netbeans-nightly
NETBEANS_ZIP=netbeans-nightly.zip
NETBEANS_NIGHTLY_DIR=~/netbeans

echo "Setting up directories..."
mkdir -p $DOWN_DIR
mkdir -p $NETBEANS_NIGHTLY_DIR

echo "Downloading Netbeans Nightly Build..."
cd $DOWN_DIR
lynx -dump http://bits.netbeans.org/download/trunk/nightly/latest/zip | grep http://bits.netbeans.org/download/trunk/nightly/latest/zip/netbeans | awk '{print $2}' | tail -1 | wget -i - --output-document=$DOWN_DIR/$NETBEANS_ZIP

echo "Unzipping Netbeans..."
unzip -uo $DOWN_DIR/$NETBEANS_ZIP -d $NETBEANS_NIGHTLY_DIR

echo "Building Netbeans..."
export ANT_OPTS="-Xmx256m -XX:MaxPermSize=96m"
cd $NETBEANS_NIGHTLY_DIR/nbbuild
ant | tee > build.log

ln -s ~/bin/nbdev $NETBEANS_NIGHTLY_DIR/nbbuild/netbeans/bin/netbeans

echo "All done!"
echo "Current space usage: "
du -hc -d 1 $NETBEANS_NIGHTLY_DIR

No Linux, grave o arquivo com o nome de getNetBeansNightly.sh.
Em seguida, dê ao script permissão de execução e o execute:

chmod aug+x getNetBeansNightly.sh
./getNetBeansNightly.sh

Se tudo correr bem, a IDE deve estar instalada no seu diretório home. Neste caso, pode ser executado com o seguinte comando:

~/netbeans/netbeans/bin/netbeans

A depender da sua distro Linux, pode ser necessário instalar o navegador web Lynx — ele é requerido para a execução do script.
No Debian ou no Ubuntu, você pode usar o apt, para baixar e instalar o Lynx:

sudo apt install lynx

Este script faz bem o serviço. Mas há uma versão mais atual no github do desenvolvedor.
Se quiser remover a versão de desenvolvimento, recém instalada, basta apagar o diretório em que ela se encontra:

rm -vfr ~/netbeans/

Referências

Site oficial de download do NetBeans Nightly Build: http://bits.netbeans.org/download/trunk/nightly/latest/.
Site de download do script: https://github.com/luislobo/Netbeans-Nightly-Build-Script.

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/.

Como decompor ou combinar strings no MySQL

Saiba como quebrar ou separar partes de uma cadeia de caracteres para obter uma substring ou como combinar mais de uma string para obter uma cadeia maior.
Partes deste assunto, já foram abordadas em outros artigos no site — portanto, se quiser saber um pouco mais sobre algum quesito, clique nos links correspondentes, ao longo do texto.
Outumn trees over lake and mysql logo
A solução para separar trechos de uma cadeia de caracteres é usar uma função de extração de substrings.
Para obter o efeito contrário, use a função CONCAT(). Com esta função, é possível juntar cadeias de caracteres e criar novas formatações para diversos tipos de dados.

Funções para extração de caracteres ou strings no MySQL

A versão 5.7 do MySqL tem mais de 50 funções para lidar com strings.
Ao aprender a lidar com algumas, você estará apto(a) a lidar com todas.
Nos primeiros exemplos deste post, vou mostrar o funcionamento de 3, destas funções: LEFT(), MID() e RIGHT().
Elas servem para extrair substrings de uma cadeia de caracteres da parte à esquerda, do meio e da direita, respectivamente.
Neste primeiro exemplo, vou mostrar como retirar 2 caracteres destas partes da relação de cidades, da tabela ClientesCidades.

SELECT CidadeCliente, LEFT(CidadeCliente, 2) AS "Primeira parte", MID(CidadeCliente, 3, 2) AS "Parte do meio", RIGHT(CidadeCliente, 2) AS "Última parte" FROM ClientesCidades LIMIT 5;
+---------------+----------------+---------------+---------------+
| CidadeCliente | Primeira parte | Parte do meio | Última parte  |
+---------------+----------------+---------------+---------------+
| Buti          | Bu             | ti            | ti            |
| Whitehorse    | Wh             | it            | se            |
| Bertiolo      | Be             | rt            | lo            |
| Exeter        | Ex             | et            | er            |
| Fortune       | Fo             | rt            | ne            |
+---------------+----------------+---------------+---------------+
5 rows in set (0.00 sec)

A função LEFT() retorna o número especificado e caracteres de dentro de uma string. Veja um outro exemplo:

SELECT LEFT('GNU/Linux',3);
+----------------------+
| LEFT('GNU/Linux', 3) |
+----------------------+
| GNU                  |
+----------------------+
1 row in set (0.00 sec)

Com a função RIGHT(), tudo funciona do mesmo jeito. Só que na direção inversa:

SELECT RIGHT('GNU/Linux', 5);
+-----------------------+
| RIGHT('GNU/Linux', 5) |
+-----------------------+
| Linux                 |
+-----------------------+
1 row in set (0.00 sec)

A função MID() é sinônima de SUBSTRING(). Ela pede que você informe em que posição, no meio da string, a contagem deve começar:

SELECT MID('Debian GNU/Linux', 8, 3);

A declaração pede para “retirar 3 caracteres, a partir da 8a. posição”:

+-------------------------------+
| MID('Debian GNU/Linux', 8, 3) |
+-------------------------------+
| GNU                           |
+-------------------------------+
1 row in set (0.00 sec)

Mysql string functions
Clique para ampliar.

A função SUBSTR() tem funcionamento semelhante, de acordo com a documentação do MySQL (veja link ao final do texto).
A função LEFT() pode ser usada para encontrar todos os nomes, dentro de uma tabela, que comecem com uma determinada letra do alfabeto:

SELECT LEFT(nomeCliente,6) FROM ClientesCidades WHERE LEFT(nomeCliente,1)="W";
+---------------------+
| LEFT(nomeCliente,6) |
+---------------------+
| Winter              |
| Willow              |
| Wilma               |
| Willow              |
| Willow              |
| Wyomin              |
| Willa               |
| Wynne               |
+---------------------+
8 rows in set (0.00 sec)

Veja como obter uma relação de nomes de clientes cujos nomes começam com W, X, Y ou Z (as últimas letras do alfabeto em inglês), em ordem alfabética:

SELECT nomeCliente AS "Clientes de W a Z" FROM ClientesCidades WHERE LEFT(nomeCliente,1)>="W" ORDER BY nomeCliente;
+-------------------+
| Clientes de W a Z |
+-------------------+
| Willa Kerr        |
| Willow Graham     |
| Willow Mitchell   |
| Willow Simmons    |
| Wilma Hill        |
| Winter Fischer    |
| Wynne Bauer       |
| Wyoming Graham    |
| Xantha Wise       |
| Xyla Dennis       |
| Yen Espinoza      |
| Yetta Wood        |
| Yoshi Nguyen      |
| Yvonne Wilcox     |
| Zelenia Brady     |
| Zelenia Moss      |
| Zenia Carr        |
| Zephr Webb        |
| Zia Fernandez     |
+-------------------+
19 rows in set (0.00 sec)

Você pode usar a função CONCAT(), para construir novas strings, usando os nomes dos clientes:

SELECT CONCAT("A Cliente ",nomeCliente, " mora em ",cidadeCliente) AS "Clientes de Y a Z" FROM ClientesCidades WHERE LEFT(nomeCliente,1)>="Y" ORDER BY nomeCliente;

Veja o meu resultado:

+------------------------------------------------+
| Clientes de Y a Z                              |
+------------------------------------------------+
| A Cliente Yen Espinoza mora em Pramaggiore     |
| A Cliente Yetta Wood mora em Doues             |
| A Cliente Yoshi Nguyen mora em Daiano          |
| A Cliente Yvonne Wilcox mora em Sherbrooke     |
| A Cliente Zelenia Brady mora em Modena         |
| A Cliente Zelenia Moss mora em Elx             |
| A Cliente Zenia Carr mora em Wernigerode       |
| A Cliente Zephr Webb mora em Recanati          |
| A Cliente Zia Fernandez mora em Market Drayton |
+------------------------------------------------+
9 rows in set (0.00 sec)

Como você pode ver, dá pra brincar bastante com as funções de manipulação de strings. Faça as suas experiências!
Você pode usar a função CONCAT(), para alterar os valores de uma coluna.
No exemplo, abaixo, acrescentamos a string “_abc” aos nomes dos clientes da tabela ClientesCidades:

UPDATE ClientesCidades SET NomeCliente = CONCAT(NomeCliente,"_abc");
SELECT NomeCliente FROM ClientesCidades LIMIT 5;
+---------------------+
| NomeCliente         |
+---------------------+
| Dara Chase_abc      |
| Hanae Kane_abc      |
| Jaden Moon_abc      |
| Cathleen Harvey_abc |
| Marcia Cole_abc     |
+---------------------+
5 rows in set (0.00 sec)

Para desfazer esta bagunça, você pode usar a função LENGTH() para posicionar a função LEFT() antes destes 4 caracteres e gravar o resultado:

UPDATE ClientesCidades SET NomeCliente = LEFT(NomeCliente, LENGTH(NomeCliente)-4);

E veja como tudo volta ao normal:

SELECT NomeCliente FROM ClientesCidades LIMIT 5;
+-----------------+
| NomeCliente     |
+-----------------+
| Dara Chase      |
| Hanae Kane      |
| Jaden Moon      |
| Cathleen Harvey |
| Marcia Cole     |
+-----------------+
5 rows in set (0.00 sec)

Referências: