25 de maio de 2016

Transformada Rapida de Fourier
FFT

Usando a biblioteca org.apache.commons.math3.transform.FastFourierTransformer vou mostrar aqui o uso e interpretação básica do FFT.

FastFourierTransformer fft = new FastFourierTransformer(DftNormalization.STANDARD);
int tamVet = 1024; //2^n

Complex[] dominioTempo = new Complex[tamVet];

dominioFrequencias = fft.transform(dominioTempo,
TransformType.FORWARD);

abaixo em verde temos as funcoes cosseno base que são geradas usando o vetor transformado usando a seguinte equacao:

for (int l = 0; l < limite; l++) {

double amplitude = Math.sqrt(dominioFrequencias[l].getReal() * dominioFrequencias[l].getReal()
+ dominioFrequencias[l].getImaginary() * dominioFrequencias[l].getImaginary());

double phase = (Math.atan2(dominioFrequencias[l].getImaginary(), dominioFrequencias[l].getReal()));

// gera seno
double[] seno = new double[tamVet];
for (int i = 0; i < dominioTempo.length; i++) {
seno[i] = ((1.0 * amplitude / tamVet) * Math.cos(l * (1.0 * i / tamVet) * 2.0 * Math.PI + phase));
senoAcumulado[i] = senoAcumulado[i] + seno[i];
}
}

o resumo do codigo acima é:
seno[i] = ((1.0 * amplitude / tamVet) * Math.cos(l * (1.0 * i / tamVet) * 2.0 * Math.PI + phase));

1 de outubro de 2014

Dynamic Web on Java

Olá, hoje vou escrever o básico de uma configuração simples para se criar uma "página" usando Java.
Estou em um Ubuntu 14.04, com java 7 e eclipse Luna. Conto com maven e o objetivo secundário desse post é ser simples e direto.

Existem MUITAS maneiras de se criar uma página dinâmica usando Java, e para cada uma dessas maneiras existem várias formas de ser configuradas. a seguir aprento uma simples e direta.




  1. Abra o Eclipse e crie um novo Dynamic web project.

  2. Clique com botão direito vá no menú configurações e converter para MAVEN.
  3. altere o conteúdo do arquivo pom.xml para ficar assim: <properties> <spring .version="">4.0.7.RELEASE</spring> <jdk .version="">1.7</jdk> </properties> <dependencies> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-core</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-web</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-webmvc</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <sourcedirectory>src</sourcedirectory> <plugins> <plugin> <artifactid>maven-compiler-plugin</artifactid> <version>3.1</version> <configuration> <source></source>1.7 <target>1.7</target> </configuration> </plugin> <plugin> <artifactid>maven-war-plugin</artifactid> <version>2.4</version> <configuration> <warsourcedirectory>WebContent</warsourcedirectory> <failonmissingwebxml>false</failonmissingwebxml> </configuration> </plugin> <plugin> <groupid>org.apache.tomcat.maven</groupid> <artifactid>tomcat7-maven-plugin</artifactid> <version>2.1</version> <configuration> <url>http://localhost:8080/manager/text</url> <server>my-tomcat</server> <path>/SampleSpringMaven</path> </configuration> </plugin> <plugin> <groupid>org.apache.maven.plugins</groupid> <artifactid>maven-compiler-plugin</artifactid> <version>3.0</version> <configuration> <source></source>${jdk.version} <target>${jdk.version}</target> </configuration> </plugin> </plugins> </build>
  4. Edite o arquivo WebContent/WEB-INF/web.xml <span quot="" xx-small=""><span eeeeee="" quot=""><web-app http:="" id="&quot;WebApp_ID&quot;" java.sun.com="" javaee="" ns="" quot="" version="&quot;3.0&quot;" web-app_3_0.xsd="" xml="" xmlns:xsi="&quot;http://www.w3.org/2001/XMLSchema-instance&quot;" xmlns="&quot;http://java.sun.com/xml/ns/javaee&quot;" xsi:schemalocation="&quot;http://java.sun.com/xml/ns/javaee"> <display-name>Transparência Brasil</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.htm</url-pattern> </servlet-mapping> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> </web-app> </span></span>
  5. Adicione o arquivo: /WebContent/WEB-INF/mvc-dispatcher-servlet.xml: <beans beans="" context="" http:="" quot="" schema="" spring-beans-3.0.xsd="" spring-context-3.0.xsd="" www.springframework.org="" xmlns:context="&quot;http://www.springframework.org/schema/context&quot;" xmlns:xsi="&quot;http://www.w3.org/2001/XMLSchema-instance&quot;" xmlns="&quot;http://www.springframework.org/schema/beans&quot;" xsi:schemalocation="&quot;"> <context:component-scan base-package="&quot;controller&quot;"> <bean class="&quot;org.springframework.web.servlet.view.InternalResourceViewResolver&quot;"> <property name="&quot;prefix&quot;"> <value>/WEB-INF/pages/</value> </property> <!-- <property name="suffix"> --> <!-- <value>.jsp</value> --> <!-- </property> --> </bean> </context:component-scan></beans>
  6. Crie um pacote chamado controller e dentro dele crie uma classe chamado CtrlHello.java. seu conteúdo é: <span style="font-size: xx-small;"><span style="background-color: #eeeeee;">package controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class CtrlHello { @RequestMapping("/hello.htm") public String testeServlet(){ System.out.println("CtrlHello"); return "hello"; } }</span></span>
  7. Crie o arquivo hello.jsp no caminho: /ServerOne/WebContent/WEB-INF/pages/hello.jsp <span style="font-size: xx-small;"><span style="background-color: #eeeeee;"><html> <head> <script src="jquery-1.2.6.min.js" type="text/javascript"></script> <title>Being Java Guys | Hello World</title> </head> <body> <center> <h2> Being Java Guys | Hello World</h2> <h4> ${message}</h4> </center> </body> </html> </span></span>
Ok, admito ficou muito dificil de ser lido mas como esse blog deixou de ser de um grupo para se tornar o repositorio das coisas que preciso então acho que esta ótimo.
Tenho certeza, que de quebra, alguem será ajudado por esse post.

21 de setembro de 2014

Adições a todo bom desktop Ubuntu.

Existem duas adições que sempre faço no Ubuntu: Guake-terminalindicator-multiload.

O Guake permite acesso rápido a um terminal com uma tecla de atalho (por padrão F12) e o indicator-multiload exibe informações básicas sobre seu computador como uso da cpu e quantidade de RAM disponível.


Se voce tem memória RAM sobrando e quer deixar tudo mais rapido, então instale o preload. Preload monitora e armazena o historico da ulitização do seu sistema operacional, assim ele tenta prever o carregamento de informação para memória RAM.

11 de setembro de 2014

Gravando area de trabalho no Ubuntu


Bom, já faz muito tempo que não posto aqui. e é hora de voltar.
Como sempre quero dizer que não me preocupo em errar na gramática.


Bom depois de testar várias alternativas, no meu caso o melhor software para gravar o desktop no ubuntu é o RecordMyDesktop.

 entretanto se tentar gravar com ele vai perceber que ele não capturará audio para isso você precisará de um outro software o Pulse Audio Volume Control


Com este software você será capaz de redirecionar os inputs e outputs corretos para a gravação.

15 de julho de 2012

Apache no Fedora (Forbidden 404)

Estou escrevendo esse post no Fedora 17 (Beefy Miracle), onde finalmente encontrei a solução. Mas com certeza funcioná para qualquer versão (Lovelock, Verne e a futura Spherical Cow). Eu diria que foi uma ótima experiência "caçar a solução" uma vez que aprendi mais sobre permissões para linux, oportunidade que não foi criada na época que eu usava Ubuntu. Vale lembrar que minha versão do apache é 2.2.22.

As soluções apresentadas aqui possuem como alvo o ambiente de desenvolvimento, mais precisamente a sua máquina de desenvolvimento. Não use as informações apresentadas aqui em um ambiente de desenvolvimento sem pensar bastante sobre o que está fazendo, pois eu não resolvi questões de segurança para você. Embora saltar para as soluções logo a frente pode ser eficaz, eu recomendo ler calmamente todas as explicações e instruções dadas aqui.

Vamos ao problema!
Supondo-se que ao terminar a configuração do seu virtual host, você se depara com a mensagem:

Forbidden

You don't have permission to access / on this server.

Isso significa que a DocumentRoot do seu vhost não pode ser acessada (embora esteja correta), por falta de permissões (óbvio).
O que eu tive que descobrir, é que o Fedora (versões 15, 16 e 17) cria a sua home, por exemplo /home/user, com permissão 700. Isso quer dizer que o owner (do exemplo: user) terá permissão de read, access e write, mas o grupo "user" e os "other" não terão direito algum. Toda a árvore de diretório dentro de /home/user estará inalcansável por outros usuários (mesmo que o usuário esteja no grupo "user"). Lembrando que as permissões possíveis são read/write/execute, mas para folders, execute significa "acessar".

Você pode verificar isso da seguinte forma:
$ cd /home
$ ls -l
drwx------. 45 user user  4096 Jul 23 16:47 user

$ stat -c '%A %a %n' ~
drwx------ 700 /home/user

Já no Ubuntu é diferente. A versão Ubuntu 11.10 (e provavelmente Ubuntu 12.04 também) criam a sua home com permissão 755, permitindo leitura/acesso para todos usuários. Você pode ler mais sobre permissões aqui.

Para as soluções abaixos supõe-se que seu umask estará intacto, ou seja, novos arquivos e pastas serão criados com permissão 775. Em caso de dúvida, faça a verificação abaixo:

$ umask -S
u=rwx,g=rwx,o=rx



Solução 1:Abrindo sua home para todos usuários.

Basta mudar a permissão da sua home para 755.
$ sudo chmod 755 ~
Garanta que todos os diretórios desde sua home até a DocumentRoot possuem permissão de acesso para "other".

Solução 2: Abrindo sua home para o seu grupo.

Mude a permissão da sua home para 750.
$ sudo chmod 750 ~
Adicione o usuário apache ao seu grupo principal.
(Supondo que seu grupo tem o mesmo nome que seu usuário)
$ sudo gpasswd -a apache $(whoami)














25 de julho de 2010

Aprenda a programar em 10 anos

"Entre em qualquer livraria, você vai ver Aprenda Java em 7 dias assim como diversas variações oferecendo lições de Visual Basic, Windows, Internet e por ai vai, em dias ou horas. A conclusão é que ou as pessoas estão com muita pressa de aprender sobre computadores, ou computadores são extremamente mais fáceis de aprender do que qualquer outra coisa. Não há livros de como aprender Beethoven, ou Física Quântica ou até adestramento de cães em alguns dias. Pesquisadores têm demonstrado que leva em torno de dez anos para desenvolver perícia em qualquer de uma variedade de áreas, incluindo jogar xadrez, compor músicas, pintar, tocar piano, nadar, jogar tênis e pesquisar neuropsicologia ou topologia."

Leia o texto completo em: http://pihisall.wordpress.com

4 de julho de 2010

[LINUX] Volume do eeePC 1008HA no Ubuntu 10.04

A instalação do Ubuntu 10.04 no meu eeePC deixou um pouco a desejar. Alguns recursos vieram desabilitados, e precisaram de uma série de configurações para funcionarem satisfatoriamente.

O caso mais feio foram as teclas de atalho. A instalação padrão habilitou apenas alguns dos botões, sendo que alguns como o controle de volume não funcionavam.

Para resolver o problema, primeiramente procurei nos repositórios. A solução aparentemente estava lá: o pacote eee-acpi-scripts.

"Aparentemente", pois ao tentar instalá-lo, uma surpresa: uma das dependências, o pacote acpi-support-base simplesmente não existia no repositório.

Procurei pela internet por um tempo considerável. Entrei em alguns blogs de usuários eeePC, em fóruns do Ubuntu... em nenhum lugar encontrava uma solução. O bug inclusive já foi informado aos desenvolvedores, como pode ser visto nesse link, mas até agora não houve solução.

Para resolver esse problema, naveguei até a página de downloads do Debian, e baixei o pacote
acpi-support-base (o Debian foi a distro Linux na qual o Ubuntu foi baseado, logo, penso, os pacotes são compatíveis). Instalando o pacote manualmente, foi só instalar o pacote eee-acpi-scripts do repositório do Ubuntu.

Problema resolvido.

12 de junho de 2010

[WINDOWS] Acessando aplicações Linux remotamente

Nos últimos acontecimentos universitários precisei acessar remotamente uma máquina Linux da universidade para testar alguns trabalhos em uma placa CUDA, que eu infelizmente não possuo. =(

Minha primeira tentativa foi o PuTTY. Funcionou, consegui acessar a máquina e editar arquivos com programas como o vim e o nano. Porém, o vim (e muito menos o nano) não é lá um dos melhores editores de texto para se programar...

Um xiita adorador de pinguins me mostrou como acessar pelo Linux e abrir os arquivos com o gedit, via ssh:
> ssh -X
[[endereço]]
Melhorou um pouco. Agora poderia acessar os arquivos com um programa gráfico, fora da tela preta do terminal. Porém, precisava de uma máquina Linux, do qual fujo desde que entrei na universidade (e fugirei o quanto conseguir).

Tentei diversas soluções sem sucesso: instalar uma versão do gedit para Windows, instalar o gnome no Cygwin (dica de saúde: NUNCA tentem fazer isso...), tentar algum apelo místico... Fail.

Até que vi a luz. Entre coro de anjos e sons de trombetas encontrei essa página explicando como instalar o X-server no Windows, pelo Cygwin. O resultado foi excelente. Com ele, consigo acessar qualquer programa da máquina remota, claro desde que tenha permissão de acesso a ela.

Clique para ampliar

Agora posso escolher se programo com o gedit ou com o kate.

Como instalar:
O Cygwin X Server é necessário, claro, ter o Cygwin instalado. Caso não possua, veja esse post. Para instalar, execute o programa de instalação do Cygwin (setup.exe) e escolha os pacotes openssh (na guia net) e xterm (na guia X11). Vá tomar um cafezinho enquanto a instalação é feita. Depois, é só acessar pelo menu:
Um terminal será aberto, e então você poderá acessar a máquina remota via ssh, da mesma forma que é feito no Linux (não esqueça o parâmetro -X, para aplicativos gráficos):

Agora inicie seu programa de preferência e bom trabalho.

30 de maio de 2010

Instalando CUDA no Windows

CUDA é a API da nVIDIA de processamento paralelo em placas GPU. Nesse post, estarei explicando como efetuar a instalação no Windows.

Passo 1: Verifique se seu computador pode rodar CUDA.

A tecnologia CUDA está disponível para placas
nVIDIA a partir da série 8. Verifique nesse link se sua placa de vídeo é compatível.
Caso sua placa não tenha suporte, você pode testar seu código em modo de emulação, claro, com perda de desempenho. Nesse caso, pule para o Passo 3.

Passo 2: Instale os drivers.

Os drivers corretos e atualizados garantem o acesso total aos recursos de sua placa GPU evitam problemas de execução. Eles podem ser baixados nesse link.

Passo 3: Instale o compilador.

O Visual C++ é uma das melhores IDEs de desenvolvimento em C++ para Windows. Você precisará dele para compilar e testar seus programas. A versão free pode ser baixada nesse link. Esse é o passo mais lento, a instalação demora severos minutos.

Importante: Instale a versão 2008. Algumas pessoas tiveram problemas de compatibilidade com a versão 2010.

Passo 4: Instale as ferramentas CUDA.

O CUDA Toolkit permite que você compile programas CUDA. O CUDA SDK contém projetos de exemplo que você pode usar quando iniciar o seu próprio. Download nesse link.

Passo 5: Compilando e testando exemplos.

Abra a pasta de instalação do CUDA SDK e escolha qualquer um dos exemplos. Abra usando o Visual C++. Compile selecionando Build> Rebuild Solution. Se o exemplo compilar e executar corretamente, sucesso.

Importante:
Se você não possui uma placa com suporte a CUDA e vai executar em modo de emulação, marque a opção EmuBuild ou EmuRelease na barra de ferramentas.

Passo 6: Configure o editor do Visual C++.

Por padrão, o editor do Visual C++ não reconhece a extensão .cu do CUDA, exibindo o texto sem destaque nas palavras-chave.

Para resolver isso, vá em Tools->Options->Text Editor->File Extensions e adicione o palavrão a extensão à lista.

Passo 7: Mãos à obra.

Respire fundo, reze/ore/medite/faça seu ritual, beba uma cerveja/cachacinha/café/coca-cola. Isso não ajuda em nada a programar, mas pode aliviar alguma tensão que venha a surgir. Boa sorte Bom trabalho.






Plagiado inescrupulosamente de: julianapena.com

29 de maio de 2010

[LINUX] Coisinhas do Ubuntu 10.04

Acabo de instalar o Ubuntu 10.04 no meu Eee-pc 1008HA. Até o momento, funcionando bem. Ao contrário da versão 9.10, que não reconhecia a placa wireless nem a troco de pancada (eu tentei), a instalação se fez sem grandes surpresas.

Algumas coisas do novo Ubuntu me aborreceram. Minha primeira reação (de usuário Windows) ao ver o Ubuntu funcionando foi: "C******, cadê a pasta Home, Lixeira e etc... do desktop?". A segunda reação foi: "Quem foi o infeliz que colocou os botões da janela na esquerda???" Juro que se tivesse uma terceira reação dessas, teria ganho mais uma partição para meu Windows...

Na Universidade, aprendemos que usar metáforas e padrões nos softwares é importante, algo sobre respeito ao usuário e outras coisas que não me lembro... Enfim, o sistema ao menos permite que seja configurado da forma antiga:

1. Aperte Alt+F2, e digite gconf-editor;
2. Vá em apps->nautilus->desktop;
3. Marque as opções computer_icon_visible, home_icon_visible e trash_icon_visible. Se preferir, marque também network_icon_visible e desmarque volumes_visible;
4. Vá em apps->metacity->general;
5. No campo button_layout, altere para :minimize,maximize,close

Pronto. Ao clicar nas opções, as mudanças são aplicadas instantaneamente. Bom recurso, só não deveria estar tão escondido, afinal o Ubuntu: Linux for Human Beings se propõe a ser usável pelo usuário comum. Ou não.

24 de outubro de 2009

[WINDOWS] (Re)Ativando o Windows XP

Dica um pouco atrasada, mas como o blog está parado, aí vai.

Já aconteceu comigo: Sem nenhum motivo aparente, meu Windows XP foi identificado como cópia ilegal (Eu tenho o original. É sério.). Aparentemente, algum problema com a atualização, ou um incrível azar de algum crack ter gerado justamente a minha chave.
Procurei diversos meios de "contornar" esse problema, mas todos os tutoriais envolviam rotinas complexas ou instalação de softwares não confiáveis.
No último dia para a reativação do Windows, descobri por acaso uma solução.

Importante:
1. É necessário conexão com a internet ;
2. O computador não pode ser reiniciado durante o processo;
3. Esse procedimento foi realizado na versão Home do Windows XP. Não garanto que o processo funcione em outras versões.

1. Entre no Editor de Registro (em iniciar->executar, digite regedit);
2. Procure a chave OOBETimer (caminho: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents);
3. Dê um duplo clique na chave e apague seu conteúdo (o conteúdo, e não a chave);
4. Execute o Programa de Ativação do Windows (Entre no prompt do DOS e digite: %systemroot%\system32\oobe\msoobe.exe /a);
5. Na janela que aparecer, mande ativar pela internet.

Pronto. Seu Windows XP será ativado. Se você voltar à chave OOBETimer, verá que a Microsoft preencheu o valor para você. =)

Aparentemente, trata-se de outro bug, desta vez na ativação (olho por olho, bug por bug).

Teoria: A chave OOBETimer está relacionada com o número serial do Windows. Para a ativação pela internet, é checado se essa chave condiz com um número serial válido. Parece que não foi previsto que a chave poderia estar nula durante a ativação pela internet (com a chave nula, o Windows não inicializa. Por isso é importante que a máquina não seja desligada ou reinicializada nesse processo). Agora, por que é preenchido com uma chave válida, só tio Bill pra esclarecer. Ou não.

Lembrem-se: Pirataria é crime. Não roube navios.

5 de agosto de 2009

[LINUX] Melhorando o desempenho do Ubuntu 9.04

Eu havia percebido que algo estava estranho no meu computador. O uso da memória não parecia muito eficiente mas achei que fossem os 256 MB de ram que queimaram recentemente. Estava enganado. Navegando pela web ví essa ótima dica postada por Rodrigo Mendes Pasini no site Viva o Linux.

O resumo é: Algum desenvolvedor estranhamente configurou o uso de memória para usar muito swap, aparentemente quando restam 60% de memória ele começa a usar a swap. Entretanto este é um valor MUITO alto. Então fazendo algumas modificações é possível melhorar o desempenho do Ubuntu. então lá vai:

sysctl (configure kernel parameters at runtime)
sudo sysctl -w vm.swappiness=10

Abra o arquivo /etc/sysctl.conf
sudo gedit /etc/sysctl.conf

adicione a linha:
vm.swappiness=10

Pronto, agora o Ubuntu 9.04 passa a usar menos swap, fazendo com que o sistema tenha algum acréscimo de velocidade e diminuindo o desgaste do HD.

Espero que gostem da dica.

21 de junho de 2009

[LINUX] Habilitar o Xadrez do Ubuntu em modo 3D

A opção 3D do glchess (Xadrez que vem no Ubuntu) não vem previamente selecionada. Ao selecionar, muitos usuários se deparam com erros relativos ao opengl com python. Esse erro está sendo discutido aqui, porém, enquanto escrevo esse tutorial ainda não foi lançada uma atualização que cuidasse do problema de forma automática.

Muitos usuários do Ubuntu estão passando por esse problema (antes do Hardy Heron e Intrepid Ibex), que persiste no Ubuntu 9.04 (Jaunty Jackalope). Como não achei nenhum tutorial que resolvesse o problema, aí vai a minha solução:

OBS: Você PRECISA ter seu driver da placa de vídeo aceleradora previamente instalado.

Abrindo o glchess:

No menu: (em pt-br)
  • Aplicativos > Jogos > Xadrez
Ou no terminal:
  • $ glchess

Ative a visão 3D: (em pt-br)
  • Ver > Visão 3D do Xadrez

Porém, o jogo exibe esta warnings (ou error):
Sem suporte a OpenGL sob Python
Sem suporte a GTKGLExt sob Python

Para instalar os suportes requeridos digite no terminal:
  • $ sudo apt-get install python-opengl python-gtkglext1

WARNING! O erro deveria ter sido consertado nesse ponto. Seu Xadrez abrirá e você terá um crash sem mensagem de erro na tela. Abrindo o glchess pelo terminal, será possível ver alguns erros, relativos ao python-opengl.

SOLUÇÃO: Ainda falta um pacote que deveria ter sido pedido ou pelo glchess, ou pela instalação de opengl e gtkglex para Python. Então vamos instalá-lo:
  • $ sudo apt-get install mgltools-opengltk

Parabéns, você já pode jogar seu glchess em 3D repetindo os passos: (em pt-br)
  • Ver > Visão 3D do Xadrez

Instalar o mgltools-opengltk é o truque mágico que estava faltando nos tutoriais que consultei. Espero ter ajudado a todos.

Agora seu glchess se parece assim:

Não é possível girar o tabuleiro, nem mexer no agulo, nem sei o que tem de 3D. Mas é muito mais bonito que antes, logo..

...Mission Accomplished.

20 de junho de 2009

[WINDOWS] Usando comando ls no prompt de comando do Windows

Todo usuário que alterna entre Windows-Linux no dia a dia acaba inconscientemente fazendo algo assim:


A seguir são apresentadas algumas formas de se contornar esse lapso.



Solução 1 (totalmente Windows): .bat chamando dir

1 - Abra o notepad e digite:

::Desliga a saída padrão do prompt
@ECHO OFF
::Forma parecida com o ls
::/B - listagem simplificada
::/O - listagem em ordem alfabética
DIR /B /O
::Liga novamente a saída padrão
@ECHO ON

2 - Salve com nome ls.bat ou ls.cmd e mova-o para uma pasta apontada pela variável de ambiente path, como por exemplo a pasta C:\WINDOWS (veja a dica no final da postagem).

O resultado final é esse:



Solução 2 - Programa de terceiros

1- Baixe o programa nesse link.

2- Extraia o arquivo numa pasta apontada pela variável de ambiente path, como por exemplo a pasta C:\WINDOWS (veja a dica no final da postagem).

Assim o ls funcionará da forma mais básica, sem por exemplo o parâmetro --color. Para setar esses parâmetros automaticamente, siga os passos abaixo:

1- Vá em Painel de Controle->Sistema->Avançado->Variáveis de ambiente;

2- Em Variáveis do Usuário, crie uma nova variável chamada LS_OPTIONS, e com os parâmetros default que deseja. (o site da UTools, desenvolvedora do msls - ls for Windows sugere -bhAC --more --color=auto --recent --streams).

Resultado:
Esse é uma recompilação da ferramenta Linux para Windows. Além do ls, você ganha de brinde o comando grep. =)



Solução 3 - Usuários do Cygwin

O Cygwin não é um emulador de Linux, pode-se dizer que é um "pacotão" com todas as ferramentas tipicamente Linux recompiladas para Windows. Dessa forma, quem o instalou conforme o belo post do Marcos, tem uma solução sem precisar baixar mais nada:

1 - Vá em Painel de Controle->Sistema->Avançado->Variáveis de ambiente;

2- Na variável path, clique em editar e adicione o caminho C:\cygwin\bin\ (ou outro diretório, caso tenha alterado o destino na instalação).

3- Reinicie o Windows.

Resultado:

A grande vantagem desse terceiro método é ter acesso a todos os comandos do Cygwin, incluindo por exemplo o gcc, caso o tenha instalado.

E chega de quebrar a cara com comandos errados.

Dica: Ao invés de mover e/ou criar arquivos na pasta C:\WINDOWS, crie uma pasta (por exemplo, C:\DOS) e mova seus arquivos para lá. Depois, adicione o caminho na variável de ambiente path. Com isso, você mantém seus aplicativos organizados em uma pasta, e será fácil localizá-los caso queira removê-los.

15 de junho de 2009

[WINDOWS] Cygwin: Utilizando Linux no Windows

Sem querer entrar em opiniões pessoais sobre sistemas operacionais ou aquelas discussões "Linux versus Windows: Qual é o melhor?", mas sim entrando no mérito de facilitar a vida daqueles que já utilizam o sistema de janelas (desde que o Brasil era tri no futebol) e se deparam com a necessidade de se transferir para o pinguim e, por qualquer que seja o motivo, não se adaptam. Depois de algumas tentativas frustadas ou não, chegamos a uma possível alternativa boa e viável:

Cygwin.


O que é?

O Cygwin é uma ferramenta desenvolvida pela Cygnus Solutions, que oferece a oportunidade de se utilizar comandos Linux em uma janela de ambiente Windows. Por este motivo, alternar a utilização do Windows para Linux requer um simples "Alt+tab". Com ele, não há mais aquela velha necessidade de se instalar uma distribuição completa Linux e preocupações com particionamento de HD, ou de se resolver com as peculiaridades do poderoso VMWare, ou até de se aventurar no instalador Ubuntu Wubi apresentado em posts anteriores pelo Isaac Pereira.

Como funciona?

O Cygwin basicamente se esconde atrás de uma DLL, agindo como uma camada de emulação de uma API Linux, fornecendo suas funcionalidades. Atualmente suporta as x86 versões do Windows (32 e 64bits), com exceção do Windows CE.

Vantagens
  • Instalação Prática e Estável;
  • Instalação somente dos pacotes que serão utilizados;
  • Ocupa normalmente pouco espaço(dependendo, é claro, dos pacotes instalados);
  • Pode ser fechado ou minimizado a qualquer momento, facilitando o retorno às atividades no Windows;
  • Pode ser desinstalado como qualquer aplicativo do Windows.
  • Pode ser instalado e utilizado diretamente de um pendrive. (http://mdicas.blogspot.com/2008/06/cygwin-no-pendrive.html)

Desvantagens
  • A instalação de pacotes é manual e depende de um conhecimento prévio;
  • Como a instalação geralmente é feita diretamente da internet, essa parte pode ser lenta.

Como instalar?

Primeiramente, fazer o download do setup do programa em: www.cygwin.com/setup.exe
Depois, terá de escolher como será feita a instalação. Recomenda-se instalar direto da internet( os arquivos serão armazenados e poderão ser re-utilizados futuramente em uma nova instalação).


Em seguida, escolher a instalação para todos os usuários (All Users), padrão Unix/binary para tipos de arquivo texto e na próxima página o local de armazenamento dos pacotes que serão baixados.



O próximo passo é selecionar o modo de conexão a internet, que provavelmente será conexão direta (direct connection). Agora, escolha um dos sites disponíveis. Após o download dos primeiros arquivos, a próxima página mostrará os possíveis pacotes a serem baixados/instalados.

Esse passo é pessoal, então divirta-se.

Um exemplo, foi a escolha do pacote do gcc, o "famoso compilador unix".


Por fim, depois das devidas escolhas de pacotes, eles serão automaticamente baixados e já instalados.

Se tudo correr bem, ele estará rodando mais ou menos assim..


Não gostou? Abra e não digite: rm -rf *

Brincadeiras à parte, Valeu Brasil e até a próxima.


Referências:

http://www.cygwin.com/
http://pt.wikipedia.org/wiki/Cygwin
http://aurelio.net/cygwin/
http://mdicas.blogspot.com

7 de junho de 2009

[WINDOWS] Legenda para Media Player 9

Até hoje não abri mão do Media Player 9 por diversos fatores, como o fato de ser mais leve que as versões mais novas (PC velhinho, tenho que maneirar...). O único problema que encontrei é ele não reconhecer automaticamente legendas com extensão SRT, por exemplo. Os passos abaixo resolvem esse problema:

1. Baixe a dll desse link.
2. Copie a dll para a pasta C:\windows\system32
3. Abra o prompt e registre a dll com o comando:
> regsvr32 vsfilter.dll

Embora eu só tenha testado no Media Player 9, é muito provável que o mesmo procedimento funcione em outras versões que tenham o mesmo problema (como a versão 10).

Agora é só ter o arquivo do vídeo e da legenda com o mesmo nome na mesma pasta. E se divertir.

3 de junho de 2009

SSH sem senha

Se você, assim como eu, precisa abrir MUITAS conexões diariamente para rodas aplicativos em várias máquinas ai vai uma dica: otimize o processo evitando ter que colocar a senha numerosas vezes, siga o tutorial abaixo.

devo lembrar antes de continuar que existem outros métodos para fazer esta tarefa, entretanto esta que descrevo abaixo tem um nivel aceitavel de segurança uma vez que é preciso que um ser humano digite pelomenos uma vez por sessão.

1º) coloque o ssh-agent para rodar:
$ ssh-agent

2º) adicione sua chave privada ao ssh-agent com o seguinte comando:
$ ssh-add
neste aqui vc deve colocar sua senha, esta será a ÚNICA vez que ela será necessária.

3º) adicione sua chave pública no arquivo "~/.ssh/authorized_keys" do computador que vc deja se conectar
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

Pronto, durante esta sessão não é mais preciso colocar senhas para usar o ssh.

caso reinicie a sessão somente os passos 1 e 2 são necessários.

29 de maio de 2009

Cara moderna para o Windows - Postagem Final

Veja rápido a imagem abaixo e diga que SO é esse:



Seria o Vista? O Seven? Não, somente o "vovô" XP.

Para quem enjoou da cara do XP e quer mudar o visual como acima, segue um grupo de programas que fazem coisas bem legais:

ViStart:
Esse aplicativo altera o menu iniciar padrão do Windows XP para um similar ao menu do Vista/Seven, inclusive com ferramenta de busca de aplicativos e modo de exibição em árvore.


Visual ToolTip:
Esse aplicativo cria miniaturas da janela, que podem ser vistas colocando o cursor do mouse sobre o botão na barra de tarefas, semelhante ao que o Vista faz.


ViGlance:
Esse faz com que a barra de tarefas se torne semelhante à barra do Windows Seven (botões pequenos). Infelizmente não é compatível com o Visual ToolTip citado acima:


Tema do Vista/Seven:
Esse pacote muda a skin do Windows, inclusive as janelas das pastas, para imitarem o visual do Vista. Requer algumas configurações feitas na própria janela do Windows (botão direito na barra de menus).


É bom lembrar que essas ferramentas são programas de terceiros, que não fazem parte do SO. Logo, estarão consumindo processamento e memória, além de poderem causar algum travamento no Windows quando usadas em conjunto.

Existem programas que alteram os ícones do XP para o padrão Vista/Seven, como esse tema publicado anteriormente. Contudo, esses programas substituem dll's e executáveis do SO, o que pode causar algum problema com atualizações como o Service Pack 3.

Com esses aplicativos, dá pra brincar bastante.

9 de maio de 2009

Detalhes que me prendem no linux-Ubuntu


Bom, no meu dia-a-dia uso Linux-Ubuntu como sistema operacional.
Vários motivos me levam a fazer isto. alguns são detalhes que so se percebe depois de algum tempo usando. veja alguns:

  • Várias "áreas de trabalho"
    As vezes é muito bom separar os aplicativos isto ajuda demais, no canto inferior direito aparece o aplicativo que faz isto. na imagem abaixo vc pode ver que o navegador esta na área(1), o editor de imagens na área(2) e ainda, tenho o movie player na área(3), ainda me restam duas áreas de trabalho.
    Uma das vantagens de se fazer isto é ter uma barra inferior limpa, o que me deixa mais concentrado no trabalho que estou fazendo no momento.



  • A pesquisa de arquivos no visualizador de arquivos o Nautilus.
    Quando se está numa pasta qualquer cheia de arquivos, basta começar a digitar o nome do arquivo para que ele seja selecionado usando um "auto-completar".
    No exemplo abaixo o arquivo procurado foi selecionado e está destacado.


  • Driver's
    Bom, este é um ponto que gera bastante polêmica. Vou simplificar!
    Apesar de todo Hardware hardware atual ser suportado pelo linux, existem alguns casos onde isto isto não ocorre, muitas vezes porque o hardware é velho ou porque o padrao do hardware é confuzo e não vale a pena implementar um hardware.
    De qualquer forma para o usuário padrão que soh usa hardaware POP o linux SEMPRE reconhecerá o dispositivo e o fará funcionar de forma transparente e em casos raros onde eh preciso baixar o Driver os repositodos garantem que isto será feito de forma impecavel.
    Exemplo: recentemente adquiri um modem3G e fiz a instação em dois SO's (Windows e Linux-Ubuntu), a instação no linux foi seguida de inumeras telas de instalação e alguns "avançar,...,avançar, concluir" o processo total deve ter demorado cerca de 15 minutos. No linux o processo foi quase instantaneo soh tive que escolher minha operadora e dar um nome para a conexão.

  • Instalar aplicativos
    O Synaptic resolve todos meus problemas de forma elegante e simples.
    Basta pesquisar os aplicativos, marcar para instação e instalar (simplicidade TOTAL).
    Caso o aplicativo procurado não esteja nos repositórios padrão, basta adicionar o repositório auxilia Ou baixar o arquivo no formato [.deb] e clicar duas vezes.


  • UpDate e UpGrade
    é muito bom poder atualizar todos os seus softwares de forma simplificade e unificada e o Linux-Ubuntu me oferece isto. melhor ainda é poder evoluir para uma nova versão em poucos e simples cliques.

  • esqueça o modelo: "Aprender, Dormir, Fazer"
    Tudo bem que já não é tão assim hoje em dia, entretanto ainda, no windows, temos que reiniciar o sistema apos fazer alguma instação.
    Isto no linux é algo muito raro somente em casos extremos é necessário a reinicialização dos sistema.

  • Instale e terá TUDO pronto.
    Após instalar o linux vc já tem um sistema completo para fazer quase tudo, editor de texto, planilha, apresentações, Programa desenho no estilo PhotoShop, Players de audio e vído configurados, cliente de torrent, gerenciador de fotos e inumeros outros aplicativos e mini-aplicativos.

  • Ambiente 3D
    SIM, no linux-Ubuntu todo ambiente é 3D (é possivel tirar este recurso).
    Usando o Desktop 3D, aparecem inúmeras funcionalidades como por exemplo o ZOOM que permite manipular apresentações de forma muito elegante.
    Os efeitos de transição de janelas são de fundamental importancia porque exibe o que está de fato acontecendo, alem de ser muito bonito.


  • Ops, quase esqueci de dizer: É DE GRAÇA $$$
    ninguem precisa crackear nada, caso não tenha dinheiro para pagar (meu caso), embora eu nunca tenha usado um software malicioso para tornar free um software pago.

Estes são alguns dos pontos que me prendem ao linux-Ubuntu.

29 de abril de 2009

Gengibre



Uma boa idéia.

Imagine um twitter por voz, é o que faz o gengibre.com.br

este site oferece um mini podcast de no máx 6 minutos. e no meu ponto de vista tem tudo pra dár MUITO certo.


a idéia do site é genial!!!
mesmo que vc não seja adepto de redes sociais, não ha como não deixar de notar o ALTO portencial comercial!!!

perceba que a claro patrocina o site.

este tipo de idéia é que preciso pra ficar RICO (muah ruah ruah ruah...)

entre e faça um teste, você vai gostar