Consultar bolsa de valores por PHP

março 8, 2009 by admin · Leave a Comment
Filed under: PHP, Programação 

No exemplo desse artigo vamos usar um ativo da Petrobrás (PETR4, essa é a sigla) e para lermos o XML vamos usar simple_xml.

Então o que precisamos saber para consultar os índices de um ativo na bolsa?

  • A sigla de um ativo – PETR4

Veja abaixo um código exemplo:

<?php

            $url_base = "http://www.theoziran.org/webservice/bovespa/";

            $indice = "petr4";

            $url_xml = $url_base.$indice;

            $xml_string = file_get_contents($url_xml);

            $simple_xml = simplexml_load_string($xml_string);

            //O ativo consultado

            $simple_xml->ativo;

            //A cotação do dia

            $simple_xml->dia;

            //A cotação da semana

            $simple_xml->semana;

            //A cotação dos últimos sete dias

            $simple_xml->setedias;

            //A cotação do mês

            $simple_xml->mes;

            //A cotação dos últimos trinta dias

            $simple_xml->trintadias;

            //A cotação do ano

            $simple_xml->ano;

            //A contação dos últimos 365 dias

            $simple_xml->ano-relativo;

            //Data em que os dados foram capturados

            $simple_xml->data;

?>

Wrappers

março 8, 2009 by admin · Leave a Comment
Filed under: Java, Programação 

As classes wrappers estão correlacionadas aos tipos primitivos. Sendo assim posso converter primitivos em objetos, e vice-versa.

Funções principais:

1. encapsular tipos primitivos para que possam ser manipulados como objetos

2. fornecer métodos utilitários para tipo primitivos

Então agora é possível:

1. converter de um objeto wrapper para primitivo

2. converter de string para primitivo

3. converter de string para objeto wrapper

Quando usar?

1. Simples: quando deseja usar um “primitivo”como objeto.

2. Quando um objeto recebe um valor e você deseja manipulá-lo como primitivo

3. Para trabalhar com Conjuntos/Genéricos

Wrappers no Java 5/superior

A partir do java 5 o recurso de boxing permite converter tipos primitivos em wrappers ou de wrappers para primitivos automaticamente, ou seja, sem nenhum tipo de conversão o próprio compilador já faz isso para nós programadores.

Regra:

Para usar o == com wrappers não é como usar com os primitivos. A diferença é que valores ate 127 serão iguais, além disso não será considerado igual.

Diferenciar um Wrapper de Tipos primitivos

Bem há uma diferença até na nomeação. As classes wrappers têm o sua nomeação iniciada em MAIÚSCULO enquanto os tipos primitivos estão em minúsculo.

l Tipo primitivo: int, double, char.

l Wrapper: Integer, Double, Long.

Primitivos X Wrappers

1. int numb = 10;

2. Integer numb = new Integer(10);

Temos situações diferentes nos códigos acima:

1. uma variável do tipo primitivo com o valor 10.

2. um objeto da classe Integer, e não um tipo primitivo.

Os métodos de conversão:

Há três métodos de conversão nas classes wrappers que são: xxxValue(), parseXxx(),valueOf(). Veja na tabela abaixo a definição de cada um:

XxxValue() – objeto.tipoprimitivoValue()

  • serve para converter o valor de um objeto em um tipo primitivo.
Integer i2 = new Integer(42);
double d = i2.doubleValue(); // aqui eh a conversão do Objeto Integer para double

Obs.: então minha variável do tipo primitivo d tem o valor agora do objeto wrapper i2.

Float f2  = new Float(3.14f);
short s = f2.shortValue();//conversão do valor do objeto para tipo primitivo short.

parseXXX(), usa o argumento String.

Converte de String para Wrapper. Essa classe lança uma exceção na tentativa de converter “dois em um tipo primitivo”

Exemplo:

double d4 = Double.parseDouble(“3.14″); //converto de String para double

valueOf() – essa converte de String para Wrapper (Integer, Long etc.)

xxx.valueOf() – tipoprimitivo.valueOf(“string”);

Double d5 = double.valueOf("3.14"); //converto de String em um objeto class Wrapper

Para ficar mais claro o entendimento, desenvolvi as classes a seguir com exemplos para fixar o que já foi dito, confiram:

code 1

public class ExceWrap {
	public static void main(String[] args) {
		int z= Integer.parseInt("dois");
		System.out.println(z);
		/* codigo compila sem problemas mais uma excecao vai acontecer
		 * nao há nada de errado na sintaxe
		 * porem a jvm nao consegue converter uma string literal
		 * em um numero inteiro
		 */
	}}
Exception in thread "main" java.lang.NumberFormatException: For input string: "dois"

code 2

public class Par {
	public static void main(String[] args) {
		//String - primitivo
		double d = Double.parseDouble("10");
		System.out.println(d);
	}}

code 3

public class NoValue {

	public static void main(String[] args) {
		Long l = new Long(8);
		int lh = l.longValue();
		/* nao compila o to tentando colocar um long
		 * dentro de um int nao é valido isso
		 */
	}}

code 4

public class OfVal {

	public static void main(String[] args) {
		//String --> OBJETOS
		Float f = Float.valueOf("10");
	System.out.println(f);
	Integer i = new Integer(10);
			//Objeto --> Primitivo
		int g = i.intValue();
	}}

code 5

public class WrpObjt {

	public static void main(String[] args) {
		Integer g = new Integer (10);
		Integer h = new Integer(10);
		System.out.println(g==h);//false
		/* aqui dois objetos diferentes
		 * porem com mesmo valor
		 * == testa a referencia e nao valores dos
		 * objetos */}}

HTML 5 – Mudanças na estrutura e semântica

março 8, 2009 by admin · Leave a Comment
Filed under: Programação 

A Semântica sempre é um dos pontos mais importantes do desenvolvimento com Padrões Web. Algumas iniciativas com o Microformats vieram na tentativa de trazer mais semântica ainda para nossos códigos, com o intuito de que novas aplicações e oportunidades pudessem utilizar melhor a informação distribuída na web. Acontece que o resto do HTML não foi há bastante tempo modificado. Por exemplo, como você consegue distinguir de forma automática as informações do “header” (cabeçalho) dos sites? Não consegue. Você não consegue, por exemplo, de maneira automatizada, identificar o que é um rodapé ou a parte do layout que está exibindo um artigo.

Todos os dias sites e mais sites são publicados na internet e nenhum deles com um padrão de nomenclatura de classes e ids que possamos utilizar para extrair informação de maneira inteligente. O HTML 4.01 é a versão atual da linguagem básica da Web, e não é atualizado há alguns anos. Esses detalhes de semântica não podem ser supridos para sempre por tecnologias como o Microformats. A versão 5 do HTML tende a suprimir essas necessidades e também atualizar pontos antigos do HTML 4, por exemplo, formulários.

Como disse no começo deste artigo, a estrutura de um site não é óbvia para as máquinas. Não existe nenhum padrão de construção dos elementos para indicar o que é o cabeçalho e o que é o rodapé, por exemplo. No HTML 5, iremos utilizar um padrão de tags que nos ajudará a marcar estas estruturas. Uma estrutura conhecida é mais ou menos assim:

<body>
  <div id="header">...</div>
   <div id="menu">...</div>
   <div class="post">...</div>
   <div id="sidebar">...</div>
   <div id="rodape">...</div>
  </div>
</body>

Na estrutura acima, utilizei alguns nomes de classes e ids que costumamos utilizar no dia-a-dia. Eu mesmo não utilizo a classe POST, uso mais CONTENT ou algo parecido. A estrutura do HTML acabará com isso. A idéia é substituir esse amontoado de DIVS por elementos que se encarreguem dessas funções, um exemplo da estrutura serial:

<body>
  <header>...</header>
  <nav>...</nav>
  <article>
    <section>
      ...
    </section>
  </article>
  <aside>...</aside>
  <footer>...</footer>
</body>
  • O elemento header define o cabeçalho. Nav define o menu ou a navegação do site.
  • Article define uma parte da página que tem uma composição de formulários, textos etc. Por exemplo, pode ser um post de forum, blog, comentários etc.
  • O elemento Section define uma seção do layout em um determinado element. Ele pode conter um header e também um footer se preciso.
  • O elemento aside consiste em envolver informações que tem algo a ver com o conteúdo principal do site. Pode ser um menu lateral, um sidebar padrão com menu, banner, busca etc…
  • Footer define o rodapé do elemento ou do layout.

Entenda que, agora, qualquer elemento pode ter seu conteúdo separado por seções com o elemento section. Note também que os elementos podem ter também um header e um footer independentes do resto do layout. Como na imagem.

Uma dúvida comum entre os desenvolvedores é como fazer a estruturação e distribuição das tags de títulos (h1 até h6). Por exemplo, se eu utilizei já a tag H1 no logo do site, poderei utilizar para o título do artigo? Se repetirmos muitas vezes as mesmas tags de títulos, a importância que cada título tem sobre o outro se perderá. O Google poderá indexar de forma diferente e etc.

No HTML 5 esse problema ser resolverá, porque cada section que você inicia, você poderá começar novamente uma nova ordem de títulos. Por exemplo:

<header>
  <h1>Logo</h1>
</header>
<article>
  <section>
    <h1>Título do artigo</h1>
    <p>texto</p>
    <h2>Subtitulo</h2>
    <p>Mais texto</p>
  </section>
</article>

Dessa forma você conseguirá definir exatamente qual a importância de cada título e os leitores de tela, sistemas de busca e outras aplicações conseguirão fazer uma separação mais eficaz dos elementos textuais.

Entenda que os divs não irão deixar de existir. Você os usará em casos muito específicos, por exemplo, para fazer caixas de destaque:

 <section>
    <div class="destaque">
       <h1>Destaque 1</h1>
       <p>Texto</p>
    </div>
    <div class="destaque">
       <h1>Destaque 1</h1>
       <p>Texto</p>
    </div>
  </section>

Para saber mais sobre isso, leia: The Elements Of HTML 5.

Bancos de dados Gratuitos: Oracle x IBM x Microsoft

março 8, 2009 by admin · Leave a Comment
Filed under: Banco de Dados, Oracle, SQL Server 

As empresas estão cobiçando uma fatia desse mercado gratuito que vem crescendo constantemente para trazer novos adeptos e clientes aos seus produtos, que têm como concorrentes ótimos produtos como MySQL, Firebird e PostGree.

Um dos principais obstáculos encontrados pelas empresas, além de oferecer licenças gratuitas, é como ganhar confiança entre os desenvolvedores Open-Source e produtores independentes de software.

Olhando esse grande problema, a principal tática para conseguir trazer adeptos e futuramente novos clientes, foi utilizar recursos que suas versões pagas utilizam, de forma restrita e limitada, e ao mesmo tempo, usar o peso que o próprio nome da empresa tem no mercado, pois qual produtora de software não gostaria de oferecer seu produto utilizando um banco de dados da Microsoft, Oracle ou IBM?

A primeira empresa a apostar suas fichas foi a Microsoft, trazendo o SQL Server Express, olhando todo esse movimento de marketing em busca de novos clientes do adversário, a Oracle não ficou para trás e lançou o Oracle Express Edition para acompanhar a Microsoft.

A IBM também não queria ficar fora desse jogo, e logo colocou no mercado o IBM Express C, estreitando a fatia de banco de dados Open-Source e aumentando a competição entre as empresas, que já disputam o mercado de licenças pagas.

Com toda essa briga, nos restou saber qual devemos utilizar, já que existem muitas boas opções no mercado, e para conseguir boas soluções em projetos, uma relação dos produtos que possuem versões gratuitas e pagas será comparada a seguir:

Microsoft SQL Server Express

A Microsoft criou SQL Server Express sobre o modelo do seu principal banco de dados, o SQL Server 2005, permitindo uma facilidade de migração para sua versão paga, o SQL Server Express é uma ótima solução para desenvolvedores da plataforma Microsoft, como ASP, Visual Basic e DotNet.

Abaixo seguem alguns recursos que serão encontrados na versão gratuita:

LIMITAÇÃO

Capacidade de Armazenamento: 4GB

Processadores: 1 Processador

Memória: 1 GB

Sistema Operacional: Windows

RECURSOS SUPORTADOS

  • Stored Procedures
  • SQL Server Configuration Manager
  • Views
  • Replication *
  • Triggers
  • Advanced Query Optimizer
  • Cursors
  • SMO/RMO
  • sqlcmd and osql utilities
  • Integration with Visual Studio 2005
  • Snapshot Isolation Levels
  • Service Broker **
  • Native XML support, including XQuery and XML Schemas
  • SQL CLR
  • Transact-SQL language support
  • Multiple Active Result Sets (MARS)
  • Dedicated Administrator Connection **
  • Auto Tuning
  • Common Language Runtime and .NET Integration
  • Integration with Microsoft Baseline Security Analyzer

* Esse recurso é somente disponível aos usuários que forem assinantes da Microsoft.

** Para utilizar esses recursos há uma limitação, favor consultar a documentação do produto.

Agora, para quem já conhece os recursos do SQL Server, abaixo segue uma relação dos serviços que não são suportados pela versão gratuita:

RECURSOS NÃO SUPORTADOS

  • Database mirroring
  • SQL Mail
  • Online restore
  • Fail-over clustering
  • Database snapshot
  • Distributed partitioned views
  • Parallel index operations
  • VIA protocol support
  • Mirrored media sets
  • Log shipping
  • Partitioning
  • Parallel
  • DBCC
  • Address Windowing Extensions (AWE)
  • Parallel Create Index
  • Hot-add memory
  • Enhanced Read Ahead and Scan
  • Native http SOAP access
  • Indexed views (materialized views)
  • SQL Mail and Database Mail
  • Partitioned views
  • Online Index Operations
  • SQL Server Agent and SQL Server Agent Service

O problema que a Microsoft pode encontrar para conseguir ganhar espaço nesse mercado é a limitação do seu produto somente em seu próprio sistema operacional Windows, proporcionando custos nos projetos independentes, mas outros pontos positivos podem ser destacados, como:

  1. Documentação bem elaborada e com exemplos práticos elaborados pelo MSDN.
  2. Interface gráfica bem fácil de utilizar.
  3. Administração pelo SQL Server Management Studio Express.
  4. Integração com a maioria das linguagens de programação do mercado.

Oracle Express Edition

O gigante dos bancos de dados também caprichou na sua versão gratuita, produzindo o Oracle Express Edition (Oracle XE), uma versão que trouxe os recursos mais atualizados encontrados na versão paga do Oracle Database 10G Release 2, a Oracle se destaca por colocar em sua versão gratuita, diversas opções de administração, desempenho, backup e recover, além do Application Express (Apex) um aplicativo de administração de banco de dados desenvolvido para plataforma web, uma customização do seu produto HTMLDB que facilita o gerenciamento do banco de dados e desenvolvimento de pequenos aplicativos para usuários finais, como relatórios e formulários.

Mas, como tudo não é uma maravilha, a Oracle colocou algumas restrições de recursos e limitou seu banco de dados, deixando assim, as produtoras se adaptarem às necessidades do crescimento.

A seguir, estão as limitações e restrições dos recursos que não iremos encontrar no Oracle Express Edition:

LIMITAÇÃO

Capacidade de Armazenamento: 4GB

Processadores: 1 Processador

Memória: 1 GB

Sistema Operacional: Linux ou Windows

Observando as limitações acima, percebe-se que caso sua empresa tenha máquinas poderosas, poderá apenas utilizar os limites impostos, marcando como um ponto negativo, porém outro lado irá lhe recompensar com alguns recursos que somente as versões pagas da Oracle oferecem e outros que somente a versão 10G possui, veja abaixo:

RECURSOS SUPORTADOS

  • PL/SQL stored procedures e triggers
  • Oracle Developer Tools para Visual Studio.Net
  • PL/SQL Server pages
  • Active Directory
  • PL/SQL native compilation
  • DML Triggers
  • Drivers JDBC
  • Index-organized tables
  • Suporte .Net, OLE DB e ODBC
  • Temporary table
  • Suporte XML
  • Objects and Extensibility
  • Suporte a LOB (Large Objects)
  • Oracle Text
  • Function-based index
  • SQL Model
  • SQL Analytic functions
  • Star query transformation
  • Globalization support
  • Multiple block size support
  • Flashback Query
  • Online Backup
  • Encryption toolkit
  • Automatic Memory Management
  • External tables
  • External procedures
  • Distributed transactions

Alguns recursos mais avançados que os profissionais encontram na versão 10G do Oracle não foram disponíveis, como:

RECURSOS NÃO SUPORTADOS

  • Automatic Storage Management
  • Virtual Private Database
  • Database Resource Manager
  • Fine grained auditing
  • Flashback Transaction Query
  • Fast-Start Selectable Recovery Time
  • Block-level media recovery
  • Parallel backup and recovery
  • Point-in-time tablespace recovery
  • Trial recovery
  • Flashback Table
  • Flashback Database
  • Online schema reorganization/redefinition
  • Parallel export/import
  • Parallel statistics gathering
  • Parallel query/DML
  • Materialized View Query Rewrite
  • Summary Management
  • Bitmapped index, bitmapped join index
  • Data Compression
  • SQLJ
  • Database Web services
  • Java Server Pages
  • Java support in the database

Muitos outros pontos positivos podem ser encontrados quando uma empresa pensar em utilizar o Oracle Express Edition em seus projetos, no quais podemos citar alguns, como:

  1. Documentação On-line no site da Oracle, desde iniciante ao avançado.
  2. Integração com diversos aplicativos da Oracle para gerenciamento do banco de dados, como: Oracle Enterprise Manager, Apex, SQL Developer e HTML DB.
  3. Possibilidade de ajustar o banco de dados e sistema operacional para ganhos de desempenho.
  4. Drivers compatíveis para a grande maioria das linguagens de programação.
  5. Possibilidade de Cold e Hot backup utilizando o RMAN.

IBM DB2 Express C

A IBM desenvolveu a versão gratuita utilizando os recursos de sua versão paga o DB2 UDB Express com uma configuração de pacote menor, uma vantagem que o DB2 Express-C pode lhe oferecer é realizar a migração do seu banco de dados para qualquer outra versão sem a necessidade da paralisar o aplicativo, deixando o aplicativo 100% operante utilizando uma outra tecnologia de banco de dados.

Com o DB2 Express-C você pode encontrar estabilidade e flexibilidade nos diferentes sistemas operacionais e uma gama de aplicativos para gerenciar de modo ágil e fácil todos os banco de dados DB2.

As limitações do DB2 são diferenciadas e mais poderosas como podemos observar abaixo:

LIMITAÇÃO

Capacidade de Armazenamento: Ilimitada

Processadores: 2 Processadores

Memória: 4 GB

Sistema Operacional: Linux ou Windows

O suporte às mais variadas linguagens de programação e as poucas restrições impostas aos seus recursos tornam mais fortes o seu poder de competição no mercado e um objeto de desejo entre os desenvolvedores, abaixo podemos analisar o que o DB2 Express-C pode nos proporcionar:

RECURSOS SUPORTADOS

  • Suporte XML
  • Suporte .NET
  • C/C++
  • Java
  • PHP
  • Suporte a Unix
  • Web Services
  • ADO e ADO.NET
  • SQLJ
  • SQL Embutido
  • Gerenciamento Autônomo
  • WebSphere Studio Application Developer

Alguns profissionais DB2 gostam de dizer que o DB2 Express-C é um pequeno DB2 UDB Express, pelo motivo que quase todos os recursos são encontrados nessa versão, com exceção dos recursos abaixo:

RECURSOS NÃO SUPORTADOS

  • Warehouse Manager tools & servers
  • Extender support
  • DB2 Connect support
  • Informix Data Source Replication
  • Replication Data Capture
  • APPC
  • Netbios
  • Database Partitioning Feature
  • Connection Concentrator
  • DB2 Geodetic Extender
  • Query Patroller
  • Net Search Extender
  • pureXML
  • DB2 Web tools
  • Spatial Extender Client and Samples
  • Microsoft Cluster Server support

Outros pontos devem ressaltar quando pensarmos em utilizar o produto em seus projetos, que podem futuramente trazer beneficios ou problemas:

  1. Pouca documentação sobre o banco de dados.
  2. Integração com todos os outros aplicativos do fabricante.
  3. Possibilidade de adquirir recursos extras, conforme a necessidade do aplicativo.
  4. Estabilidade, confiabilidade e segurança aos desenvolvedores.

Suporte

Para todos os produtos citados, os fabricantes não fornecem suporte técnico, apenas Fórum em seus respectivos sites gerenciados e administrados por profissionais da empresa, exemplo é o suporte oferecido pela Oracle que pode contar com grandes administradores de banco de dados do mercado (DBA), como Thomas Kyte. A Microsoft criou Hot site com fórum de suporte e artigos técnicos no MSDN, o único que trouxe um pouco de dificuldade foi a IBM, que disponibilizou apenas um fórum técnico em seu site que é difícil ter retornos e quase nenhum artigo técnico.

Custos

Como não há necessidade de adquirir licenças para os bancos de dados, seu custo fica praticamente zero, é o caso quando se utiliza bancos de dados como MySQL, Firebird e PostGree.

Devemos sempre orientar o profissional que utilizar um Oracle, SQL Server ou DB2, que ele pode, sim, envolver custos e fornecer um crescimento ao seu aplicativo. Esses custos podem estar embutidos na compra de máquinas mais poderosas, mão-de-obra qualificada e aquisição de recursos ou serviços extras fornecidos pelo fabricante.

Portanto, antes de querer implantar algum banco de dados, veja a real necessidade do seu aplicativo e analise todas as funcionalidades que cada versão pode lhe oferecer para não ter arrependimento posteriormente. Eles realmente são capazes de trazer muitas melhorias e total estabilidade ao seu aplicativo, mas sempre com cautela.

Download

Abaixo, estão disponíveis todos os links úteis para baixar as versões desejadas.

Microsoft SQL Server Express

Oracle Express Edition

IBM DB2 Express-C

Biblioteca Técnica

Como as versões dos poderosos bancos de dados gratuitos são muito recentes, encontrar e trocar informações sobre os produtos é muito difícil, então, abaixo segue uma relação de sites e fórum que possuem dicas, artigos técnicos e troca de experiências entre os profissionais.

Microsoft SQL Server Express

Linha de Código

http://www.linhadecodigo.com.br/artigos.asp?id_ac=947&pag=1

MSDN SQL Server Express

http://www.microsoft.com/express/sql/download/

Oracle Express Edition

OTN

http://www.oracle.com/technology/products/database/xe/index.html

Oracle Express Edition Tutorial

http://st-curriculum.oracle.com/tutorial/DBXETutorial/index.htm

Máteria sobre Oracle XE em português

Revista SQL Magazine Edição 35

https://ssl.dominal.com/devmedia/loja/edicoes_anteriores3.asp

IBM DB2 Express-C

Viva o Linux

http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=4687

DB2 Universal Database

http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/welcome.htm

Sinais dos tempos da era digital

março 1, 2009 by admin · Leave a Comment
Filed under: Carreira, Dicas, Tecnologia 

Na mesma semana em que vimos a Intel, maior e mais popular fabricante de microchips, fechar a sua histórica fábrica na Califórnia depois de aproximados 50 anos de operação e levar a sua linha de produção para mercados que possuem mão de obra mais barata, também vimos a polícia da Suíça desbaratar uma quadrilha de traficantes de drogas através da ferramenta online Google Earth da onipresente e inovadora web empresa Google. Os suíços conseguiram visualizar uma plantação de maconha do tamanho de 7500 m². A droga estava plantada em meio a um milharal e estima-se que os narco-fazendeiros já haviam movimentado US$ 30 milhões em 4 anos de plantio. Google esta que, após descontinuar algumas ferramentas menos famosas alegando como motivo a crise financeira, sinaliza com 6 bilhões de dólares para levar o serviço telefônico via VOIP Skype que a cada dia que passa aumenta a dor de cabeça das tradicionais operadoras de telefonia. Uma vez que de ferramenta de comunicação doméstica transformou-se em utilitário corporativo de telecom reduzindo muitas das vezes o custo de comunicação a zero nas empresas.

A Intel diz que as mudanças transformarão suas instalações no Vale do Silício em fábrica de idéias e inovações. Inovação também é o que propõe a Amazon que paradoxalmente começou vendendo livros na web enquanto ninguém a levava a sério. Hoje é a livraria de maior sucesso na internet e agora diz que os livros de papel serão substituídos pelo Kindle; um dispositivo eletrônico do tamanho de um livro comum, porém mais fino que um maço de cigarros e possibilita que o leitor faça anotações através de um teclado em seu corpo e armazena o conteúdo equivalente a 200 livros. Está na cara que futuramente se conectará à internet e a tudo o que há por aí. Por mais que os céticos digam que os livros de papel nunca deixarão de ser impressos, é inevitável que as próximas gerações concordem em não cortar árvores, gerar calor, permitir custos com logística e frete ao invés de receberem um título literário pelo ar. Hoje já estão disponíveis mais de 200 mil obras ao alcance público.

Incrivelmente o problema de invasões às redes sem fio foi solucionado apenas pintando paredes. A empresa EMSEC (http://emsectechnologies.com/aboutus.php) desenvolveu uma tinta que após ser passada nas paredes cria uma barreira eletromagnética dentro da área pintada e bloqueia também celulares e rádios além dos sinais de redes wifi. Quando o sinal atinge as paredes pintadas com tal tinta é refletido de volta para o emissor. Fica aí a sugestão para a turma que administra os presídios nacionais.

E também fica a dica para a polícia para que passe a usar essas ferramentas visuais que mostram o mundo como os satélites os vêem para monitorar certos plantios ilícitos.

E por apenas US$ 14.900,00 você pode levar para casa uma impressora 3D. Basta imaginar uma coisa e mandar para a impressora que ela imprime um modelo real igual ao da sua idéia. Ao invés de um cartucho de tinta é inserido um rolo de uma massa plástica que é a matriz para formar a peça desenhada no computador. Seja ela um parafuso, um boneco, uma ferramenta, um carrinho ou qualquer coisa. Você pensa e Uprint.(http://www.dimensionprinting.com/3d-printers/3d-printing-uprint.aspx).

SEO Powered by Platinum SEO from Techblissonline