ValueError: --enable-jpeg requested but jpeg not found, aborting.


Erro apresentado na instalação do mitmproxy sobre um ambiente virtual Python, rodando Linux Kali em um Chromebook Samsung Exynos 5 Dual Core. Ao executar o comando pip install mitmproxy é apresentado o seguinte erro:


Especificamente, o erro ocorre na execução do arquivo setup.py da library Pillow.

Para resolvê-lo, execute sudo apt-get install libjpeg-dev. Isso irá instalar a dependência necessária. O interessante disso é que na primeira vez que instalei o mitmproxy nenhum erro foi observado e tudo ocorreu perfeitamente, porém na segunda em diante o mesmo erro persistiu.

Se você já havia iniciado a instalação do mitmproxy é interessante, mas não necessário, efetuar a reinstalação, então desinstale com pip uninstall mitmproxy e depois reinstale com pip install mitmproxy.

Fonte


Chromebook: Como instalar Kali (-t core)




Para prosseguir é necessário habilitar o Modo de Desenvolvedor, como descrito em Chromebook: Modo de Desenvolvedor. Se isso não for feito, é impossível acessar o chronos shell via crosh, passo fundamental para instalar a distro Kali.

Crouton


Crouton é um conjunto de scripts que ajudam a instalar novas distros/chroots para Chromium OS. Para conhecer mais, leia em https://github.com/dnschneid/crouton.

Baixe o crouton para sua máquina: https://goo.gl/fd3zc.

Kali


Abra o crosh shell (Ctrl + Alt + T), digite shell e pressione Enter.
Todo o processo deve levar cerca de 7 minutos. Basta digitar o seguinte comando:



Após a instalação, digite sudo enter-chroot e pronto, você estará utilizando o shell prompt do Kali Linux.

Para sair digite exit.

Fonte


Chromium OS Universal Chroot Environment [https://github.com/dnschneid/crouton]

Chromebook: Modo de Desenvolvedor


Em um Chromebook, o Modo de Desenvolvedor permite que você interaja com um shell de comandos (como root se quiser), ou mesmo instale outros sistemas operacionais. Quando ativado, alguns recursos de segurança são desativados como a inicialização verificada (verified boot).

Habilitando


Todo o processo começa pressionando as teclas ESC + Atualizar + Power, elas irão iniciar uma série de passos para entrar no Modo de Desenvolvedor, os quais serão demonstrados nas telas "fotográficas" abaixo.
Tela 1 - Pressione Ctrl + D
Tela 2 - Pressione Enter
Tela 3 - Pressione Ctrl + D

Tela 4 - Transição para o modo de desenvolvedor
Tela 5 - Preparando o sistema
Tela 6 - Configuração do sistema
Pronto. Agora você está em modo de desenvolvedor.

Desabilitando


Para desabilitar o modo de desenvolvedor basta reiniciar o sistema. Ele apresentará as seguintes telas:
Tela 1 - Pressione Space
Tela 2 - Pressione Enter
Tela 3 - Apenas uma confirmação
Basta aguardar, o sistema vai efetuar o reboot e você apenas precisará configurá-lo novamente.

Fonte


Samsumg ARM Chromebook [https://www.chromium.org/chromium-os/developer-information-for-chrome-os-devices/samsung-arm-chromebook]

Markdown: Linguagem e Software



Em projetos criados com GitHub, um popular sistema de controle de versão on-line, muitas vezes usei um arquivo chamado README.md que contém o readme para o projeto. Esses arquivos podem ser comparados com revisões históricas em texto legível (enquanto que um formato binário não pode ser facilmente comparado). A extensão .md era uma incógnita para mim que estava acostumado com XMLs e TXTs, foi assim que conheci Markdown.

Markdown


A definição para Markdown se dá em dois ambitos: como linguagem e como software. Ambos foram desenvolvidos por John Gruber, com importantes créditos para Aaron Swartz. Sua filosofia baseia-se na facilidade de leitura e escrita, pois isso é viável, valorizando a legibilidade acima de tudo. Markdown é destinada a uma finalidade: um formato de escrita para web, mas sem substituir HTML, pois apenas abrange um pequeno subconjunto de tags.

A linguagem


A linguagem Markdown é de marcação leve e permite que as pessoas escrevam em um formato de texto simples. A idéia principal é que seres humanos possam ler sem perceber as marcações no meio do texto e facilmente converter isso para HTML. Uma das extensões de arquivo para linguagem Markdown é a .md, mas também é reconhecida a extensão .markdown. Um arquivo Markdown deve ser publicado como está, como texto simples.

A sintaxe recebeu influências de vários filtros de texto para HTML, como Setext, atx, Textile, reStructuredText, Grutatext e EtText, porém a maior inspiração para a sintaxe de Markdown é o formato de texto para e-mail. Markdown é composta inteiramente por caracteres de pontuação que definem como formatar o texto sem perceber que foi formatado. Abaixo pode-se conferir alguns exemplos:


Cabeçalhos
Título h1    # Título h1
=======
Título h2    ## Título h2
-----------


Ênfase
*itálico*   **negrito**
_itálico_   __negrito__


Link em linha
Um [exemplo](http://url.com/ "Título")


Listas
* Primeiro item
* Segundo item
* Terceiro item
ou
+ Primeiro item
+ Segundo item
+ Terceiro item

O software


John Gruber criou um programa Perl para converter do formato de texto simples para HTML. O programa, chamado "Markdown", exige Perl 5.6.0 ou posterior e também o módulo Digest::MD5. Markdown está disponível no site Daring Fireball e possui uma versão online chamado de Digus [http://daringfireball.net/projects/markdown/dingus].

Fonte



Dev In PF: Gramática, Vocabulário e Pragmática


No dia 06 de abril de 2013 ocorreu o 1º encontro do Dev In PF. Pessoas da área de desenvolvimento de software da cidade de Passo Fundo agora contam com esse grupo que vem com a intenção de proporcionar eventos relacionados a área, fortalecer os laços de amizades e parcerias e estimular o conhecimento. Ver esse grupo nascendo e crescendo é algo espetacular para Passo Fundo e eu estive no 1º encontro apresentando um material "light" sobre boas práticas.



A experiência adquirida no mini-curso da SenaInfo me possibilitou apresentar com calma e confiança. Essa foi a segunda apresentação para um público da área que eu atuo. O público ajudou bastante, pois haviam pessoas que já trabalham na área, o que facilitou a apresentação de boas práticas de programação. Mas de novo esse assunto Vinícius? Novamente eu volto a apresentar boas práticas de programação, pois acredito ser um assunto fundamental e eternamente presente na vida de um profissional do desenvolvimento de software.

Nessa apresentação minimizei a teoria e apliquei mais exemplos, pois isso possibilita prender a atenção do público ao mesmo tempo que facilita o entendimento da mensagem final da apresentação: boas práticas não são uma tarefa de desenvolvimento, mas uma cultura, uma atitude profissional.



Acredito ter acertado no título, no assunto e no público. Dev In PF já possuía outras boas apresentações como TDD, HTML5 e Linguagens e seus ecossistemas, sendo que boas práticas são atitudes empregadas em todas as práticas e linguagens. A apresentação pode ser conferida logo abaixo.