quinta-feira, 19 de outubro de 2017

Ubuntu - Não me arrependo

A três anos atrás fiz uma troca de Sistema Operacional, o Windows pelo o Ubuntu (por favor, Linux é apenas o Kernel), tive que realizar muitas adaptações nesse tempo. Porém, olhando para trás paro e penso que só tenho um arrependimento não ter feito isso mais cedo. Nessa postagem quero explicar os motivos, não se preocupe pois não pretendo convertê-lo nem dizer que a Microsoft é a vilã na face da terra, aprendi que liberdade é exatamente respeitar as escolhas.



80% do que faço com meus computadores (tenho 3 deles) é desenvolvimento de sistemas, o resto dos 20% é uma distração como assistir filmes ou jogar alguns games (no estilo RPG ou tiro no estilo Doom). No primeiro quisito terei que explicar que como desenvolvedor preciso testar muitos softwares principalmente versões betas de aplicativos e que muitas vezes conseguem danificar o Sistema Operacional, o que mais fazia com o Windows era usar o comando "format c:" (estava tão acostumado que trimestralmente fazia isso).

O Windows foi criado para usuários comuns que compram aplicativos em lojas e essas são versões sólidas e estáveis. Não estou denegrindo o sistema, mas nenhum "usuário avançado" usa ele, é só você assistir a vídeos no YouTube dessas pessoas e reparar que normalmente ou estão usando o MacOS ou alguma distribuição Linux. Pelo simples motivo que citei anteriormente, é muito chato ter que ficar formatando constantemente o sistema.

Optei pelo Ubuntu pois foi a distribuição (ou distro como todo mundo chama) que mais fácil me adaptei (já tinha tentado a Red Hat, a Fedora e o Debian). Não quero dizer que é a melhor, apenas foi a que me adaptei e penso que as pessoas deveriam parar com isso de ficar rotulando se essa é boa ou ruim.

Se tive problemas? sim vários, porém consegui resolver todos eles. Já tive placas de vídeo que não funcionava, vídeo que não tocava, som que não saia, certa vez depois de uma palestra minha resolução de vídeo não retornava e fique um bom tempo em 800x600, entre outras coisas que me aconteceram. E é por essas e outras que penso: "nesse quisito o Windows é bem mais tranquilo, principalmente para um usuário iniciante".





Como disse estou com o Ubuntu a 3 anos, comecei com a versão 14.04 e exatamente hoje mudei o sistema para a versão 17.10. E disse que só me arrependo por não ter trocado mais cedo de sistema foi que, mesmo com todos os problemas que passei, nesse tempo não tive mais que formatar meus computadores uma única vez. Só para que você entenda, até o processo de troca de versão no Sistema Operacional no Ubuntu é feita da seguinte forma: o Sistema me avisa que tem uma nova versão disponível e me pergunta se quero atualizar, digo que sim e pronto começa todo o processo de troca (enquanto ele ocorre continuo trabalhando normalmente).

Toda vez que instalo um aplicativo no sistema por mais beta que seja ele não consegue danificar o sistema, por quê não? Simples, porque ele não tem acesso a isso. Não é que as distros do Linux sejam a prova de vírus, é apenas que o vírus não pode chegar no Kernel do Sistema. No Windows seu usuário é Deus e ali é seu Paraíso, nas distros seu usuário é seu usuário e Deus é o "sudo", ou seja, apenas o "sudo" é que tem permissão de machucar o sistema. E você só usa ele em caso de necessidade.

No Windows você tem duas pastas importantes: "Program Files" e "Windows", a primeira é onde estão os programas instalados e a segunda aonde está o Sistema Operacional em si. Nas distros, existem várias pastas importantes, mas você tem beeeeeemmmm delimitado onde é sua casa, e tudo o que instala com seu usuário está limitado a ela. Ou seja, como corromper um sistema que para ser corrompido tenho que querer isso?

Dois programas que são quase nativos do Ubuntu e que agradam a maioria dos desenvolvedores (não que eles não possam ser instalados em outras distros), o Git e o Docker. O primeiro para publicar seus códigos na Internet e o segundo para a criação de contâineres. Resultado, quero testar um banco novo, como o  RethinkDB (um NoSQL), em pouquíssimos passos tenho um contâiner criado com ele e numa área totalmente delimitada, sendo impossível que faça algo no meu sistema que não permita (não me agradou? Mato o contâiner e pronto). Meus códigos? Boa parte está no Git assim não tenho como perdê-los. Outro aplicativo que o Ubuntu interage muito bem é com o Dropbox. E isso porque não estou tratando que linguagens como Python, Perl, Java e Assembly já fazem parte do pacote básico do sistema e que o npm é possível instalar com uma única linha de comando.

Então pergunto, o que mais posso querer como desenvolvedor?

Obrigado e até a próxima
Fernando Anselmo

Deseja saber mais sobre o sistema? Então baixe aqui meu livro gratuitamente "Instalei o Ubuntu e agora?" e talvez você veja que a mudança pode ser algo muito proveitoso.

quinta-feira, 12 de outubro de 2017

Aprendizado - Sabe programar em BASIC?

Neste "Dia das Crianças" queria lembrar um pouco minha infância, me tornei programador por paixão, na verdade foi depois de ter visto no cinema ao filme "Tron" (1982). Meu primeiro computador veio apenas alguns anos depois através de um TK-83C que era um clone do ZX81, resultado a primeira linguagem que aprendi foi Basic (como muita gente da minha geração).

Meu desejo de consumo sempre foi o de comprar um ZX Spectrum oficial, mas as finanças não me permitiram tal luxo. O tempo passou, as máquinas evoluiram, tive vários computadores e o desejo ficou guardado na gaveta.

Em 2014 comecei a usar o Ubuntu e através dele descobri várias coisas que podia fazer, entre elas retornar a meu antigo desejo. Então neste artigo você descobrirá como ter um ZX Spectrum (muita coisa que fizer aqui poderá ser adaptada para outros Sistemas Operacionais) que a partir de agora vou abreviar para ZX.

Instalação do Emulador

O ponto mais importante é o Emulador que é um programa que traduz as instruções para o sistema operacional, escolhi o FUSE por ser gratuito e bem compatível com o ZX. No Ubuntu existem os pacotes oficiais através dos seguintes comandos:
$ sudo apt install fuse-emulator-common
$ sudo apt install libspectrum
O primeiro comando instala o FUSE propriamente dito e o segundo a biblioteca necessária para executar o ZX.

+3 BASIC

Próximo passo é achar o programa para excutar a linguagem BASIC (Beginners All-Purpose Symbolic Instruction Code), escolhi o compilador +3 BASIC.

Para isso baixe o disco aqui e com o FUSE instalado basta clicar neste para que o +3 Basic seja executado e carregado. Na primeira vez pode apresentar um erro, não se preocupe basta esperar um pouco e quando aparecer a mensagem do Loader: "To cancel - press BREAK twice" pressione a Barra de Espaços duas vezes para entrar no menu.


Agora basta selecionar a opção +3 BASIC para entrar no editor. No menu principal do FUSE selecione "Machine | Reset" (ou pressione F5) e devemos voltar para o mesmo Menu. Saia e entre novamente do FUSE e verá que este programa será carregado por padrão.

Passos Iniciais


Primeiro detalhe que devemos conhecer é que o teclado possui algumas teclas completamente diferente do teclado tradicional do PC (principalmente os brasileiros), então veja a seguinte imagem:


Observe que a aspas duplas (") se encontra em cima da letra P, ou os dois pontos (:) na letra Z, para conseguí-los use a combinação Ctrl+P ou Ctrl+Z.

Segundo detalhe é como criar, salvar e ler um programa?

Precisamos criar um drive de disco, no menu superior do FUSE acesse "Media |  Disk | +3 | Drive A: | Insert New...", agora precisamos formatá-lo, para fazer isso no editor digite o seguinte comando:
format "a:" 
Se tudo ocorrer bem receberá a mensagem "No data, 0:1" (aperte barra de espaço para retornar ao editor), digite o comando "cat" para ver os arquivos existentes no disco. Agora vamos proceder um pequeno teste digite a seguinte codificação:
10 LET a = 10
20 PRINT a
Para executar digite o comando "run", se tudo der certo verá o valor 10 na tela e a mensagem "0 OK, 20:1". Conseguiu perceber o que o programa faz? A linha 10 cria uma variável a com o valor 10 e a segundo mostra o valor dessa variável.

Pronto agora que temos nosso programa devemos salvá-lo, para isso digite o comando:
save "prog01.bas"
E após receber a mensagem de OK digite novamente o comando "cat" para verificar que está tudo OK.


Agora pressione F5 para "resetar" o editor. Entre novamente no editor e digite o comando:
load "prog01.bas" e o programa salvo retornará ao editor.

Indo mais além

Em 1985 surgiu uma das melhores revistas de informática para minha geração, na verdade eram livrinhos, chamada Micro Aventura.


Para minha tristeza só durou 10 edições. Cada edição além da história trazia vários programas a serem executados e ao final a explicação de cada um. E foi assim que me aperfeiçoei com o BASIC e realmente comecei a me tornar um programador. É possível baixar os livros neste site (ou comprá-los no Mercado Livre como Edição de Colecionador) e aproveitar tudo o que essa linguagem tem para oferecer.

Quer explorar mais? Então veja esses dois livros:

Understanding Mathematics and Logic Using BASIC Computer Game
Basic Computer Games - Microcomputer Edition

Obrigado e até a próxima
Fernando Anselmo

Dica, quer mais programas para esse emulador? Então não deixe de visitar esse site.


segunda-feira, 2 de outubro de 2017

Divertimento - Brincando com Papel

Uma das artes que mais adoro é chamada de Papercraft (acredito que a palavra japonesa para isso seja Pepakura), e realizar objetos nessa técnica envolve os seguintes passos: Criar (ou localizar) um modelo em 3 dimensões, imprimir, recortar e montar. Ou seja, não é preciso de nenhum material ou habilidade especial apenas tesoura, cola e um bom nível de paciência.

Assim como o Origami (que é a arte dobradura em papel) essa arte teve sua origem no Japão (ou China - existe uma boa discussão sobre isso) e foi popularizada após a II Grande Guerra trazida para os EUA. É diferente no que se refere ao uso de tesoura ou cola. Mas ambos surgiram como um passatempo que virou arte na mão de modelistas profissionais.

Para introduzí-lo nessa arte escolhi um modelo que me apaixonei a primeira vista, assistindo a um documentário sobre o Festival das Lanternas de Peixes Dourados de Yanai.


Fiquei louco com esse peixe e corri atrás até conseguir o modelo em PaperCraft para montá-lo. Até que finalmente encontrei.


Recomendo-lhe apenas 2 coisas, primeiro imprima em uma boa impressora colorida e segundo não use uma folha A4 comum e sim um papel de gramatura maior (mais grosso, preferencialmente entre 120 a 200 grs - O papel normal tem 75) que pode ser encontrado em qualquer boa papelaria.

Aqui está o modelo para impressão: Baixe aqui o PDF

Bom Relaxamento e até a próxima
Fernando Anselmo

PS. Já falei sobre Papercraft nesse blog em um outro artigo.