sexta-feira, 8 de julho de 2016

Happy Hour #3 - Can you RUN it

Fala galera que segue o blog...

Nesse post de Happy Hour de hoje eu vou estar falando sobre o "Can You Run it?", que é um serviço online que analisa seu computador verificando se o mesmo possui os requisitos necessários para rodar os vários jogos disponíveis no mercado.

Happy Hour #3 - Can you RUN it


Se você é um fã de jogos e usa o computador para jogar, sabe o quanto é foda chato, baixar comprar um jogo instalar, configurar e descobriu que sua máquina não possui o mínimo necessário parar rodar. Agora nas férias é hora de testar novos jogos *-*

Jovem chato: "Ahh, mas no CD fala os requisitos mínimos para o jogo rodar".

Sim, existem casos que a diferença é grande ai não adianta jovem, vai perder tempo, dinheiro no jogo. Mas temos que pensar que muitas vezes são crianças que querem instalar o jogo e não entende muito de configuração (RAM, processador, placa de vídeo....) e em outros casos sabe-se que não possui o necessário e gostaria de saber onde será necessário o upgrade na máquina para ser possível rodar o jogo.

Por isso, o serviço auxilia e muito nessa hora.
Bom, mas como realizar essa verificação?

Caso você esteja utilizando o serviço pela primeira vez será necessário instalar um client na sua máquina para que o site possa capturar as informações necessárias para a análise da sua máquina.
A forma mais simples é acessar o site, pesquise por um jogo clique em "CAN YOU RUN IT". Um pop-up será apresentado pedindo que selecione entre baixar o client mencionado ou apenas apresentar os requisitos necessários do jogo, essa opção não fará uma análise da sua máquina, apenas informara os requisitos mínimos e o recomendado.

Selecione a primeira opção, aguarde o download finalizar, execute o arquivo, aguarde enquanto o programa realiza as buscas necessárias de software e hardware da sua máquina, volte no navegador e aguarde que o navegador detecte que o client foi instalado e pronto.

Pesquise pelos jogos do seu interesse e receba um relatório detalhado se sua máquina possui o minimo necessário ou possui o recomendado.

O CYRI NÃO DEVE SER ADOTADO COMO ÚLTIM PALAVRA PARA INSTALAR OS JOGOS. É UTILIZADA PARA TER UMA NOÇÃO DOS HARDWARES/SOFTWARE NECESSÁRIOS.

É isso ai pessoal, bom jogo! 

quarta-feira, 6 de julho de 2016

Você sabe o que são Classes Wrapper?




Fala galera!

Na programação orientada a objeto, usando linguagem Java, uma classe wrapper (embrulho) é uma classe que permite realizar conversões em variáveis primitivas através de métodos, e estas variáveis podem ser usadas como objetos. Então uma classe wrapper é uma classe que encapsula, esconde ou wrap (embrulho) tipos de dados de oito tipos diferentes.

Existe uma classe wrapper para cada tipo primitivo e cada uma com seus argumentos de métodos construtores:



Ao contrário que poderíamos pensar, a classe wrapper não é a mesma coisa que tipo primitivo. Existe uma diferença, pois enquanto uma variável pode ser declarada em Java como tipo de dados double, short, int, char, etc. As oito classes wrapper primitivas criam objetos instanciados e métodos.

Bom galera, esse foi um post rápido e simples falando um pouco sobre classes wrapper. Para quem deseja obter mais informações, deixarei os links que utilizei para consulta. 


Até mais!

;)


Links:

GO GO! The Developer's Conference 2016

Fala galera que segue o blog...

Fiquei sabendo hoje de manhã que esta rolando um evento muito bacana, que é o The Developer's Conference.

GO GO! The Developer's Conference 2016

#TheDevConference conta com grandes patrocinadores como: Locaweb, Microsoft, Amazon, UOL, Intel entre muitros outros.
O evento está acontecendo em São Paulo, e pode ser acompanhado tanto presencial, na Universidade Anhembi Morumbi, das 09:00 até as 19:00 (necessário chegar antes para credenciamento, quanto online e de GRÁTIS rs.

No entanto, a versão presencial tem um custo que pode ser encontrado no site, mas, para a alegria de muitos que não podem estar lá, ou não possui a grana para participar, pode estar acompanhando a versão STADIUM online.

Mesmo a versão STADIUM possui um conteúdo muito bom, com assuntos diversos ministrados por grandes palestrantes da área de tecnologia com conteúdo diversificado.
Se você possui interesse em ter acesso ao material, basta se inscrever aqui e acompanhar tudo que está acontecendo.

É isso, o evento tem a semana pela frente ainda, vai até o dia 09/07 e vai dar pra aproveitar bastante!
Uma pena não ter tido conhecimento prévio sobre o evento para anunciar aqui e quem sabe ter ido nas palestras presencial.

Até a próxima!

segunda-feira, 4 de julho de 2016

Entenda as nossas tags!

Fala galera que acompanha o blog!

Hoje vou falar sobre as tags que utilizamos aqui no blog, que facilita encontrar posts sobre determinados assuntos e serve como forma de organização dos posts.

Entenda as nossas tags!


Normalmente na frente do título dos nossos posts são utilizados algumas tags padrão, atualmente são elas:
  • GO GO! #N;
  • FERRAMENTAS #N;
  • DEBUG #N;
  • LINKS INTERESSANTES #N;
  • HAPPY HOUR #N;
  • ENGLISH NOW #N;
  • HANGOUT #N;
  • MUCILCAST #N;
Onde #N, é um número sequência incrementado a cada novo post sobre o assunto, e , é o nome dos organizados de determinados eventos que são realizados por hangout.

Beleza! Mas o que quer dizer cada uma dessas tags?

  GO GO! = Essa tag é utilizada em posts referentes a eventos de diversas áreas, já tivemos palestras de jogos, modelagem de personagens, tutoriais diversos, como escolher sua plataforma, congresso de TI, técnicas de invasão, iniciando seu jogo do 0 e muitos outros eventos muito bacanas. Então viu essa tag se prepara que coisa boa está pra acontecer rs

  FERRAMENTAS = Utilizada quando o post é referente a algum framework, api e/ou utilitários diversos que podem ser usados para auxiliar no desenvolvimento e/ou gerenciamento de seus projetos.

  DEBUG = A tag mais utilizada aqui no nosso blog. Essa tag é utilizada para postagens onde explicamos como resolver problemas que encontrados durante o nosso dia dia, com nossos projetos ou respostas de mensagens que recebemos dos nosso seguidores.

   LINKS INTERESSANTES = Sabe quando aparece um monte de coisas legais e você não quer criar vários posts, ou posta-los separados... pois é! Essa tag representa um conjunto de links muito bacanas encontrados na internet ou um grupo de post aqui do blog mesmo. Podemos dizer que é um "resumão" do que está rolando rs

  HAPPY HOUR = Muitas vezes encontramos umas matérias que não é exatamente o foco do blog, mas que gostaríamos muito de compartilhar aqui com vocês... por isso criamos essa tag que são assuntos que não exatamente são relacionados a tecnologia, são posts diversos.

   ENGLISH NOW = Todos sabemos como é importante saber outro idioma nos dias atuais, principalmente na nossa área. Por isso resolvemos compartilhar sites, ferramentas e blogs onde é possível estudar/aprimorar o seu inglês.

MUCILACAST = Como agora temos nosso podcast, caso queira pesquisar mais sobre nossos episódios, basta digitar esta tag e todos serão apresentados a vocês.

Alguns posts não possui uma tag declarada como essas mencionadas, são posts explicando definições de algumas palavras técnicas, jogos, filmes, integrações...
É isso pessoal, espero que dessa forma facilite você encontra "as respostas" que procura de forma fácil e eficaz, até a próxima!

domingo, 3 de julho de 2016

[ALERTA] Você pode estar sendo observado!

Fala galera que acompanha o blog!

Esse post é mais um alerta sobre os cuidados com a sua máquina quando o assunto é SEGURANÇA/PRIVACIDADE.


[ALERTA] Você pode estar sendo observado!


É um assunto bastante discutido mas pouco, ou quase nada praticado.
São alguns passos simples que podem tornar a sua máquina bastante segura e sem problemas de se comprometer.
  • Quantas vezes por ano você altera a senha dos serviços (email, redes sociais...) que você utiliza?
  • Você deixa salvo o usuário e senha no browser, mesmo sendo uma máquina sua, particular?
  • Você executa o antivírus pelo menos uma vez por mês para uma análise completa da sua máquina?
  • Tem o dedinho quente e sai clicando em qualquer link que encontra pela frente?
  • Coloca a mesma senha ou senhas fracas ou senhas comuns em vários serviços que utiliza?
Praticando todos esses pontos sua máquina ainda assim pode ser um alvo de pessoas má intencionadas, imagine não executando nenhum desses passos.

O site cert.br tem uma cartilha muito bacana que aborda vários assuntos relacionados a segurança na internet.

A cartilha possui quatorze capítulos, que dividem o conteúdo em diferentes áreas relacionadas com a segurança da Internet.
De forma geral, o Capítulo 1 apresenta uma introdução sobre a importância de uso da Internet, os riscos a que os usuários estão sujeitos e os cuidados a serem tomados. Do Capítulo 2 ao 6 os riscos são apresentados de forma mais detalhada, enquanto que do Capítulo 7 ao 14 o foco principal são os cuidados a serem tomados e os mecanismos de segurança existentes.

1. Segurança na Internet: Trata dos benefícios que a Internet pode trazer na realização de atividades cotidianas e descreve, de forma geral, os riscos relacionados ao seu uso. Procura também esclarecer que a Internet não tem nada de "virtual" e que os cuidados a serem tomados ao usá-la são semelhantes aos que se deve ter no dia a dia.
2. Golpes na Internet: Apresenta os principais golpes aplicados na Internet, os riscos que estes golpes representam e os cuidados que devem ser tomados para se proteger deles.
3. Ataques na Internet: Aborda os ataques que costumam ser realizados por meio da Internet, as motivações que levam os atacantes a praticar atividades deste tipo e as técnicas que costumam ser utilizadas. Ressalta a importância de cada um fazer a sua parte para que a segurança geral da Internet possa ser melhorada.
4. Códigos maliciosos (Malware): Aborda os diferentes tipos de códigos maliciosos, as diversas formas de infecção e as principais ações danosas e atividades maliciosas por eles executadas. Apresenta também um resumo comparativo para facilitar a classificação dos diferentes tipos.
5. Spam: Discute os problemas acarretados pelo spam, principalmente aqueles que possam ter implicações de segurança, e métodos de prevenção.
6. Outros riscos: Aborda alguns dos serviços e recursos de navegação incorporados a grande maioria dos navegadores Web e leitores de e-mails, os riscos que eles podem representar e os cuidados que devem ser tomados ao utilizá-los. Trata também dos riscos apresentados e dos cuidados a serem tomados ao compartilhar recursos na Internet.
7. Mecanismos de segurança: Apresenta os principais mecanismos de segurança existentes e os cuidados que devem ser tomados ao utilizá-los. Ressalta a importância de utilização de ferramentas de segurança aliada a uma postura preventiva.
8. Contas e senhas: Aborda o principal mecanismo de autenticação usado na Internet que são as contas e as senhas. Inclui dicas de uso, elaboração, gerenciamento, alteração e recuperação, entre outras.
9. Criptografia: Apresenta alguns conceitos de criptografia, como funções de resumo, assinatura digital, certificado digital e as chaves simétricas e assimétricas. Trata também dos cuidados que devem ser tomados ao utilizá-la.
10. Uso seguro da Internet: Apresenta, de forma geral, os principais usos que são feitos da Internet e os cuidados que devem ser tomados ao utilizá-los. Aborda questões referentes a segurança nas conexões Web especialmente as envolvem o uso de certificados digitais.
11. Privacidade: Discute questões relacionadas à privacidade do usuário ao utilizar a Internet e aos cuidados que ele deve ter com seus dados pessoais. Apresenta detalhadamente dicas referentes a disponibilização de informações pessoais nas redes sociais.
12. Segurança de computadores: Apresenta os principais cuidados que devem ser tomados ao usar computadores, tanto pessoais como de terceiros. Ressalta a importância de manter os computadores atualizados e com mecanismos de proteção instalados.
13. Segurança de redes: Apresenta os riscos relacionados ao uso das principais tecnologias de acesso à Internet, como banda larga (fixa e móvel), Wi-Fi e Bluetooth.
14. Segurança em dispositivos móveis: Aborda os riscos relacionados ao uso de dispositivos móveis e procura demonstrar que eles são similares aos computadores e que, por isto, necessitam dos mesmos cuidados de segurança.
(Fonte: http://cartilha.cert.br/sobre/)
Depois de dar uma olhada nessa cartilha, ajude a divulgar!
E por último estou deixando um link aqui do site TecMundo, com uma matéria sobre segurança. Mas o mais importante são os cuidados com sua webcam, pois você pode estar sendo observado! Até o Mark Zuckenberg está se protegendo.

Durante a entrevista, Tavares comenta que existem relatos de invasões do tipo no Brasil desde 2008. Ou seja, não é coisa que acontece apenas nos EUA — muitos menos apenas nos filmes.
É isso ai pessoal, até a próxima!

terça-feira, 28 de junho de 2016

Testando conexão com a internet em app Android - Android Studio

Fala galera!

Veremos neste post uma forma simples e rápida de como testar a conexão com a internet no app Android que você está desenvolvendo. 



Talvez você esteja desenvolvendo um app que necessite de uma conexão com a internet e acredita ser legal informar ao usuário que a conexão não está habilitada, por isso seu app ficará com alguns recursos limitados até que seja resolvida essa pendência.

E isto pode ser feito de uma forma simples e com poucas linhas de código. Veja a seguir:

ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

   if(connectivityManager.getActiveNetworkInfo() != null
       && connectivityManager.getActiveNetworkInfo().isAvailable()
       && connectivityManager.getActiveNetworkInfo().isConnected()){
                usuarioConectado = true;
   }

A ConnectivityManager é responsável por responder a consultas sobre o estado de conectividade da rede, assim como notificar ao app qualquer mudança ocorrida.

Com uma instância dessa classe inicializada utilizando o método getSystemService(), que informa qual serviço do sistema será utilizado, nesse caso será o Context.CONNECTIVITY_SERVICE. Após instanciado o objeto, podemos fazer a validação necessária.

O método getActiveNetworkInfo() será utilizado para fazer a validação necessária de conexão. Neste exemplo testamos três métodos:

getActiveNetworkInfo(): retorna detalhes sobre a rede de dados padrão ativo no momento;
getActiveNetworkInfo().isAvailable(): indica se a conectividade de rede é possível;
getActiveNetworkInfo().isConnected(): indica se a conectividade de rede existe e é possível estabilizar conexões.

No meio do código inseri uma variável booleana chamada usuarioConectado, apesar de não estar devidamente declarada no código, ela poderia ser utilizada como uma flag para sinalizar se a conexão está ok ou não e assim utilizar algum recurso visual como o Toast para  dar o retorno ao usuário.

Espero que tenho gostado dessa dica e se tiverem algo para compartilhar, escreva nos comentários.

Até mais!

;)

Fonte de pesquisa: Developer Android - ConnectivityManager

segunda-feira, 6 de junho de 2016

GO GO! Congresso de TI

Pessoal, hoje é o primeiro dia do evento da 4ª Edição do Congresso de TI.
Segue abaixo a lista das transmissões de hoje:

GO GO! Congresso de TI

Todas as palestras de hoje ficarão liberadas das 07hrs da manhã até 23:59hrs - horário de Brasília.
Allan Romanato
 
André de Almeida

Carlos Ferreira

Christyano Malta

David Arty

Fillipe Cordeiro

Luis Felipe Fernandes

Marco Enes

Plínio Ventura


Palestras bastante diversificadas para todos os gostos rs
Importante que você avalie a transmissão das palestras. Dessa forma os idealizadores poderão estar sempre melhorando a qualidade do evento.

--------------------------------------------------------------------------
PS: Receba também o Link das Palestras do Congresso de TI no seu Smartphone:

1 - Instale o aplicativo TELEGRAM no seu celular caso ainda não tenha. 

2 - Após instalar, digite no seu Telegram por @congressodeti ou acesse o link: http://telegram.me/congressodeti

3 - Clique no ícone "Canal Congresso de TI" e depois em ENTRAR. Pronto, agora você já estará incluído no nosso canal do Telegram para receber todos os links de transmissões das palestras durante o evento.
--------------------------------------------------------------------------

Até a próxima!

sexta-feira, 3 de junho de 2016

GO GO! Técnicas de Invasão

Mais um evento super bacana online e totalmente grátis que você não pode perder ," Técnicas de Invasão em Cenários Reais".

O evento acontecerá dos dias 06 à 13 de Junho, e nesse treinamento você vai aprender técnicas que quebram os principais pilares de Segurança da Informação, como criminosos (crackers) comprometem Redes, Sistemas, Aplicações WEB Infraestruturas físicas.


Para se inscrever basta clicar nele link aqui, clicar no botão "Realizar inscrição", informar seu email e pronto! Você um email de confirmação e só esperar o dia do treinamento.

Bruno Fraga que é o idealizador do projeto, deixou esse vídeo com uma ferramenta muito legal pra já ter uma ideia do que o curso esta preparando.




Pessoal não perca essa oportunidades, muito se fala sobre segurança da informação, hacker e dificilmente se encontra um treinamento grátis para mostrar como as coisas funcionam.

Até a próxima!

quinta-feira, 2 de junho de 2016

Web Scraping com Jsoup

Fala galera!

Em nosso post sobre web scraping, falamos um pouco do que é e como é utilizado esta técnica muito útil. Então resolvi compartilhar com vocês um implementação simples de web scraping em java utilizando a biblioteca Jsoup.



A biblioteca Jsoup foi desenvolvida para trabalhar com HTML para realizar a extração e manipulação de dados, usando métodos do DOM, CSS e métodos jQuery. É um projeto open source e está disponível no GitHub.

Let's get started!

Antes de começar, é preciso acessar a página de download do Jsoup e baixar os jars disponíveis. Se você utiliza maven, poderá copiar a dependência e inserir em seu pom.xml:

<dependency>
  <!-- jsoup HTML parser library @ http://jsoup.org/ -->
  <groupid>org.jsoup</groupid>
  <artifactid>jsoup</artifactid>
  <version>1.9.2</version>
</dependency>

Assim que estiver tudo certo em seu projeto, criaremos uma classe de teste.
Esta classe ficará da seguinte forma:

package com.deviscoming;

import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

public class ExemploJSoup {

 public static void main(String[] args) {

  try {
   Document doc = Jsoup.connect("http://www.google.com").get();
   String titulo = doc.title();
   System.out.println("Título do site: " + titulo );
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

}

No console de sua IDE será possível visualizar a mensagem com o título do site:

Título do site: Google

Para obter toda a página Html, é preciso utilizar o método estático Jsoup.connect() e utilizar o método get(), pois, desta forma, você obterá um objeto Document. Este objeto possui um documento HTML armazenado internamente. Então para obter informações da página, basta utilizar os métodos disponíveis a partir deste objeto.

Caso queira obter elementos específicos, você pode utilizar o método select(). Ele retorna um objeto Elements, sendo este objeto um conjunto de objetos Element.

package com.deviscoming;

import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;

public class ExemploJSoup {

 public static void main(String[] args) {

  try {
   Document doc = Jsoup.connect("http://www.google.com").get();
   String titulo = doc.title();  
   //System.out.println("Título do site: " + titulo );
   
   //exibe todas as tags a existentes na página html   
   System.out.println("Links do site (tags a): " + doc.select("a"));

   //exibe o texto da tag a      
   System.out.println("href: "+doc.select("a").text());
    
   //exibe todas as tags que possuem o atributo href   
   Elements elements = doc.select("a[href]");
   for(int i = 0; i < elements.size();i++){
    System.out.println("href: "+elements.get(i).text());
   }     
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

}

Para ter mais informações sobre essa biblioteca, aconselho a acessarem o site do Jsoup, lá tem várias dicas, downloads e a documentação completa para consulta. Acessem também o site Raspando web com Jsoup, de onde foi tirado o conteúdo deste post e lá tem mais dicas e informações essenciais para o desenvolvimento do seu projeto. E também acessem o GitHub, analisem, estudem e quem sabe você não acaba se tornando parte da equipe de desenvolvimento? rsrsr

Até mais!

;) 

Você sabe o que é Web Scraping?

Web Scraping (raspagem) é uma técnica de engenharia de software muito utilizada por empresas para extrair dados/conteúdos existentes em websites. Uma forma mais simples de explicar, é um programa que faz leitura de códigos HTML (HyperText Markup Language) de páginas web e faz análises dos dados obtidos.


Você sabe o que é Web Scraping?



É uma ferramenta muito útil para repórteres, pois facilita a busca de informações pela web e facilita a análise dos dados, sendo que é possível, além de extraí-los, visualiza-los e manipulá-los em um arquivo comum, planilhas e/ou banco de dados. E a maior vantagem são para aqueles que sabem codificar.



Como tudo tem um limite, existem regras que delimitam o uso e acesso dessa técnica. É preciso estar ciente que, se você fazer o uso de scraping em sites que não permitem o mesmo, isso pode ser considerado hacking e não será legal se descobrirem. Por isso o ideal é saber se o que pretende fazer na web é permitido e legal por ambas as partes.



Bom, mas existem websites que fornecem informações ao público e que permitam o uso dessa técnica, basta saber onde e para que usar e deixar a imaginação fluir.


Até mais!

;)