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.


Dummy SMTP: JavaMail API + DevNullSMTP

O que quero mostrar é uma forma de testar o envio de e-mails em ambiente de desenvolvimento simulando um falso servidor SMTP com o framework DevNull SMTP. Pretendo mostrar duas formas de fazer isso: uma utiliza JndiHelper (para usuário de WebLogic Server) e outra utiliza Session (classe integrante da API JavaMail).

Com JndiHelper


1. Crie uma pasta no sistema (exemplo: \devNullSMTP)

2. Baixar o jar do framework DevNull SMTP e coloque nessa pasta.
Link: http://www.aboutmyip.com/AboutMyXApp/DevNullSmtp.jar

3. No console do WebLogin Server vá em Mail Session e crie um novo com os seguintes atributos:

Name: SMTPMailSession
JNDI Name: SMTPMailSession
JavaMail Properties:
mail.debug=True
mail.smtp.port=25
mail.transport.protocol=smtp
mail.smtp.host=127.0.0.1

4. Crie dentro da pasta \devNullSMTP a pasta para receber os emails (exemplo: \emails)

5. Executar em linha de comando o seguinte:

java -jar DevNullSmtp.jar -s emails

Para mais comandos ver http://www.aboutmyip.com/AboutMyXApp/DevNullSmtpUsage.jsp

6. No console que irá abrir, clique em Start Server.

7. Pronto. Observações: Todo e-mail enviado vai para pasta \emails com a terminação EML e pode ser visualizada no Notepad++. O console do DevNull SMTP loga todo o processo em 4 abas disponíveis, incluindo o próprio EML. O console do Eclipse efetua logs também, mas nada além do console do DevNull SMTP.

Com Session


O mesmo processo para usuário de JndiHelper com excessão do passo 3, pois as propriedades são setadas em código da seguinte maneira:

Properties props = new Properties();
props.put("mail.debug", "true");
props.put("mail.smtp.port", "25");
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.host", "127.0.0.1");
Session session = Session.getInstance(props, null);

O restante do processo segue da mesma forma.

Conclusão


Esse conhecimento permitiu a independência de desenvolvimento de funcionalidades que utilizam envio de e-mail. Tive muitos problemas no passado com funcionalidades desse tipo e sempre dependia de ambiente configurado para os testes, quando encontrava um erro não era apenas uma correção, mas também tinha que esperar por um deploy em ambiente de homologação. Espero que isso também seja útil para você.

Fonte