<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss version="2.0"><channel><title>Bruno Sanson</title><link>http://brunosanson.blogspot.com/</link><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/brunosanson" /><description>desenvolvimento de software, internet e tecnologia.</description><language>en</language><managingEditor>noreply@blogger.com (Bruno Sanson)</managingEditor><lastBuildDate>Tue, 20 Dec 2011 19:34:20 PST</lastBuildDate><generator>Blogger</generator><atom:id xmlns:atom="http://www.w3.org/2005/Atom">tag:blogger.com,1999:blog-8472543898882723476</atom:id><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">32</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/brunosanson" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="brunosanson" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Exemplo de Padrão de Projeto Factory em Delphi</title><link>http://brunosanson.blogspot.com/2011/09/exemplo-de-padrao-de-projeto-factory-em.html</link><category>Design Patterns</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Mon, 05 Sep 2011 18:07:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-8422370009377094072</guid><description>O exemplo será apresentado através de uma necessidade, retornar o nome de uma pessoa que pode ser (Cliente, Agência ou Vendedor).&lt;br /&gt;
&lt;br /&gt;
Minha definição de Factory nesse exemplo seria passar a responsabilidade da criação do objeto TPessoa para outro objeto.&lt;br /&gt;
&lt;br /&gt;
Essa unit é responsável pela classe base &lt;b&gt;TPessoa&lt;/b&gt; na qual possui um método &lt;b&gt;Nome&lt;/b&gt; no qual será implementado em outro momento.&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit Pessoa;

interface

type
  TPessoa = class
    function Nome: string; virtual; abstract;
  end;

implementation

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit PessoaCliente é responsável pela classe &lt;b&gt;TPessoaCliente&lt;/b&gt; que herda da classe base  TPessoa na qual implementará o método &lt;b&gt;Nome&lt;/b&gt;, observe que ele irá mostrar o nome da classe e o nome da pessoa para facilitar o desenvolvimento.&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit PessoaCliente;

interface

uses
  Pessoa;

type
  TPessoaCliente = class(TPessoa)
    function Nome: string; override;
  end;

implementation

function TPessoaCliente.Nome: string;
begin
  Result := ClassName + ': Microsoft';
end;

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit PessoaVendedor é semelhante a da classe TPessoaCliente&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit PessoaVendedor;

interface

uses
  Pessoa;

type
  TPessoaVendedor = class(TPessoa)
  public
    function Nome: string; override;
  end;

implementation

function TPessoaVendedor.Nome: string;
begin
  Result := ClassName + ': Bruno';
end;

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit PessoaFactory é responsável por criar e devolver a instanciar do objeto de acordo com o parâmetro informado &lt;b&gt;TTipoPessoa&lt;/b&gt;.&lt;br /&gt;
Observe que o retorno é do tipo base &lt;b&gt;TPessoa&lt;/b&gt;, facilitando a ampliação para outras classes como, por exemplo, TUsuario.&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit PessoaFactory;

interface

uses
  Classes,
  Pessoa;

type
  TTipoPessoa = (tpCliente, tpAgencia, tpVendedor);

  // Simple Factory: Retorna apenas a instancia, diferente do Abstract que pode retornar vários métodos
  TPessoaFactory = class
  public
    function CriarPessoa(const ATipoPessoa: TTipoPessoa): TPessoa;
  end;

implementation

uses
  PessoaCliente,
  PessoaAgencia,
  PessoaVendedor;

function TPessoaFactory.CriarPessoa(const ATipoPessoa: TTipoPessoa): TPessoa;
begin
  Result := nil;
  case ATipoPessoa of
    tpCliente:
      Result := TPessoaCliente.Create;
    tpAgencia:
      Result := TPessoaAgencia.Create;
    tpVendedor:
      Result := TPessoaVendedor.Create;
  end;
end;

end.
&lt;/pre&gt;&lt;br /&gt;
A unit Principal só tem conhecimento da unit PessoaFactory, que cria e chama o método &lt;b&gt;nome&lt;/b&gt; de acordo com o parâmetro informado.&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;procedure TFormPrincipal.ButtonListarPessoasClick(Sender: TObject);
var
  Pessoa: TPessoaFactory;
begin
  Pessoa := TPessoaFactory.Create;
  try
    Memo.Lines.Add(Pessoa.CriarPessoa(tpCliente).Nome);
    Memo.Lines.Add(Pessoa.CriarPessoa(tpAgencia).Nome);
    Memo.Lines.Add(Pessoa.CriarPessoa(tpVendedor).Nome);
  finally
    Pessoa.Free;
  end;
end;
&lt;/pre&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-i9sVzb9Ipzw/TmVyCl-deqI/AAAAAAAAsVE/qlVoLhCzM_8/s1600/Factory.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="223" width="400" src="http://3.bp.blogspot.com/-i9sVzb9Ipzw/TmVyCl-deqI/AAAAAAAAsVE/qlVoLhCzM_8/s400/Factory.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Mais detalhes no repositório https://bitbucket.org/brunosanson/design-patterns-em-delphi/&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-8422370009377094072?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2011-09-05T22:10:55.371-03:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-i9sVzb9Ipzw/TmVyCl-deqI/AAAAAAAAsVE/qlVoLhCzM_8/s72-c/Factory.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Exemplo de Padrão de Projeto Decorator em Delphi</title><link>http://brunosanson.blogspot.com/2011/08/exemplo-de-padrao-de-projeto-decorator.html</link><category>Design Patterns</category><category>Interface</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Mon, 29 Aug 2011 16:09:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-2363568808917712032</guid><description>&lt;div&gt;O exemplo será apresentado através de uma necessidade, adicionar acessórios (Bluetooth, 3G, WiFi) na montagem de celular, calculando o valor final do produto.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Minha definição de Decorator nesse exemplo seria adicionar os acessórios dinamicamente no objeto Celular.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;Essa unit é responsável pela classe celular e subclasses para obter diferentes decorações:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit CelularDecorator;

interface

type
&amp;nbsp; ICelular = interface
&amp;nbsp; &amp;nbsp; function Valor: Currency;
&amp;nbsp; end;

&amp;nbsp; TCelular = class(TInterfacedObject, ICelular)
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; virtual; abstract;
&amp;nbsp; end;

&amp;nbsp; TCelularDecorator = class(TCelular)
&amp;nbsp; private
&amp;nbsp; &amp;nbsp; FCelular: ICelular;
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; override;
&amp;nbsp; &amp;nbsp; constructor Create(ACelular: ICelular);
&amp;nbsp; end;

&amp;nbsp; TTelefonia = class(TCelular)
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; override;
&amp;nbsp; end;

&amp;nbsp; TBluetooth = class(TCelularDecorator)
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; override;
&amp;nbsp; end;

&amp;nbsp; T3G = class(TCelularDecorator)
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; override;
&amp;nbsp; end;

&amp;nbsp; TWiFi = class(TCelularDecorator)
&amp;nbsp; public
&amp;nbsp; &amp;nbsp; function Valor: Currency; override;
&amp;nbsp; end;

implementation

constructor TCelularDecorator.Create(ACelular: ICelular);
begin
&amp;nbsp; FCelular := ACelular;
end;

function TCelularDecorator.Valor: Currency;
begin
&amp;nbsp; Result := inherited Valor;
end;

function TBluetooth.Valor: Currency;
begin
&amp;nbsp; Result := FCelular.Valor + 10.00;
end;

function T3G.Valor: Currency;
begin
&amp;nbsp; Result := FCelular.Valor + 15.15;
end;

function TWiFi.Valor: Currency;
begin
&amp;nbsp; Result := FCelular.Valor + 20.20;
end;

function TTelefonia.Valor: Currency;
begin
&amp;nbsp; Result := 100;
end;

end.
&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;Esse método instância a classe TCelular e suas subclasse que adiciona os acessórios:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;procedure TFormPrincipal.ButtonCalcularValorCelularClick(Sender: TObject);
var
  Celular: ICelular;
begin
  Celular := TTelefonia.Create;
  Memo.Lines.Add('Valor original do celular: R$ ' + FormatCurr('###,##0.00', Celular.Valor));

  Celular := TBluetooth.Create(Celular);
  Memo.Lines.Add(' + Bluetooth: R$ ' + FormatCurr('###,##0.00', Celular.Valor));

  Celular := T3G.Create(Celular);
  Memo.Lines.Add(' + 3G: R$ ' + FormatCurr('###,##0.00', Celular.Valor));

  Celular := TWiFi.Create(Celular);
  Memo.Lines.Add(' + WiFi: R$ ' + FormatCurr('###,##0.00', Celular.Valor));
end;
&lt;/pre&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Mais detalhes no repositório https://bitbucket.org/brunosanson/design-patterns-em-delphi/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-2363568808917712032?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2011-08-30T00:38:12.292-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Exemplo de Padrão de Projeto Strategy em Delphi</title><link>http://brunosanson.blogspot.com/2011/08/exemplo-de-padrao-de-projeto-strategy.html</link><category>Design Patterns</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Tue, 16 Aug 2011 18:03:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-1483165302229816704</guid><description>O exemplo será apresentado através de uma necessidade, exportar uma lista de áudio para diferentes player (iTunes, Winamp, Windows Media Player) com seus respectivos formatos (xml, csv, txt).&lt;br /&gt;
&lt;br /&gt;
Minha definição de Strategy nesse exemplo seria um conjunto de algorítimos independentes e encapsulado de acordo com o player / formato sendo consumido por um módulo comum de exportação.&lt;br /&gt;
&lt;br /&gt;
Essa unit é responsável pela organização da exportação:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit Exportacao;

interface

uses
  Classes,
  SysUtils;

type
  EExportcaoErro = class(Exception);

  TExportacao = class
  private
    FPlaylist: TStrings;
  public
    function GetPlayer: string; virtual; abstract;
    procedure Exportar; virtual; abstract;
    property Playlist: TStrings read FPlaylist write FPlaylist;
  end;

const
  PlayerNaoIntegrado = 'Não há integração com o player %s';

implementation

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit é responsável pela exportação para o iTunes:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit ExportacaoItunes;

interface

uses
  Exportacao;

type
 TiTunes = class(TExportacao)
 private
   function ExportarXML: Boolean;
  public
    function GetPlayer: string; override;
    procedure Exportar; override;
 end;

implementation

procedure TiTunes.Exportar;
begin
  ExportarXML;
end;

function TiTunes.ExportarXML: Boolean;
begin
  // Exportar o conteúdo do Playlist no formamto XML conforme espeficicações do iTunes;
  raise EExportcaoErro.Create(PlayerNaoIntegrado);
end;

function TiTunes.GetPlayer: string;
begin
  Result := 'iTunes';
end;

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit é responsável pela exportação para o Windows Media Player:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit ExportacaoWinamp;

interface

uses
  Classes,
  Exportacao;

type
  TWinamp = class(TExportacao)
  private
    procedure ExportarM3U;
  public
    function GetPlayer: string; override;
    procedure Exportar; override;
  end;

implementation

procedure TWinamp.Exportar;
begin
  ExportarM3U;
end;

procedure TWinamp.ExportarM3U;
begin
  // Exportar o conteúdo do Playlist no formamto M3U conforme espeficicações do Winamp;
  raise EExportcaoErro.Create(PlayerNaoIntegrado);
end;

function TWinamp.GetPlayer: string;
begin
  Result := 'Winamp';
end;

end.
&lt;/pre&gt;&lt;br /&gt;
Essa unit é responsável pelo exportação:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class="delphi" name="code"&gt;unit Principal;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, 
  Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Exportacao;

type
  TFormExportacao = class(TForm)
    ButtonExportar: TButton;
    RadioGroupPlayer: TRadioGroup;
    MemoPlaylis: TMemo;
    procedure ButtonExportarClick(Sender: TObject);
  private
    procedure Exportar;
  end;

var
  FormExportacao: TFormExportacao;

implementation

uses
  ExportacaoWindowsMidiaPlayer,
  ExportacaoItunes,
  ExportacaoWinamp;

{$R *.dfm}

procedure TFormExportacao.ButtonExportarClick(Sender: TObject);
begin
  Exportar;
end;

procedure TFormExportacao.Exportar;
var
  Exportacao: TExportacao;
begin
  Exportacao := nil;
  try
    case RadioGroupPlayer.ItemIndex of
      0: Exportacao := TiTunes.Create;
      1: Exportacao := TWinamp.Create;
      2: Exportacao := TWindowsMidiaPlayer.Create;
      else
        ShowMessage('Não foi possível realizar a exportação');
    end;
    Exportacao.Playlist := MemoPlaylis.Lines;
    try
      Exportacao.Exportar;
      ShowMessage('Exportação realizada com sucesso no ' + Exportacao.GetPlayer);
    except
      on E: EExportcaoErro do
        ShowMessage(Format(E.Message, [Exportacao.GetPlayer]));
    end;
  finally
    Exportacao.Free;
  end;
end;

end.
&lt;/pre&gt;&lt;br /&gt;
Mais detalhes no repositório https://bitbucket.org/brunosanson/design-patterns-em-delphi/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-1483165302229816704?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2011-08-30T00:40:47.531-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Google e 30 anos do PacMan</title><link>http://brunosanson.blogspot.com/2010/05/google-e-30-anos-do-pacman.html</link><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 21 May 2010 08:17:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-792208632852614222</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_bnNd1yN8GPY/S_ajkwLqSrI/AAAAAAAAWsY/v3X34kUPO-Q/s1600/google-pacman.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_bnNd1yN8GPY/S_ajkwLqSrI/AAAAAAAAWsY/v3X34kUPO-Q/s320/google-pacman.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Google comemora os 30 anos do PacMan em grande estilo, ela criou na sua página principal a possibilidade de jogar, inclusive com outro amigo, basta clicar no botão Insert Coin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-792208632852614222?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2010-05-21T12:17:37.600-03:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_bnNd1yN8GPY/S_ajkwLqSrI/AAAAAAAAWsY/v3X34kUPO-Q/s72-c/google-pacman.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Community Launch - Campinas</title><link>http://brunosanson.blogspot.com/2010/03/community-launch-campinas.html</link><category>Evento</category><category>Visual Studio</category><category>SQL Server</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Sun, 21 Mar 2010 14:30:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-3054952395136100553</guid><description>Neste último sábado, participei &lt;i&gt;Community Launch&lt;/i&gt; em Campinas, evento realizado pela Microsoft cujo objetivo é apresentar as novidades das ferramentas e divulgar a &lt;a href="http://www.talentosmicrosoft.com.br/"&gt;copa de talentos&lt;/a&gt;. Este evento foi realizado em várias cidades do Brasil e o conteúdo foi separado em Infra e Desenvolvimento.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Eu participei das palestras de &lt;i&gt;SQL Server 2008 R2&lt;/i&gt; e &lt;i&gt;Visual Studio 2010&lt;/i&gt;, abaixo segue um resumo do que foi visto:&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;SQL Server 2008 R2:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Integration Server&lt;/i&gt;: Melhorias na questão de importação de dados, com suporte a FTP, Oracle e Office, informando o status de importação e feedback;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Analysis Services&lt;/i&gt;: Análise de performance com &lt;i&gt;data mining&lt;/i&gt; nativo, permitindo identificar por exemplo, qual produto é mais comprado por cliente em determinada época de ano;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Reporting Server&lt;/i&gt;: Ferramenta de relatório integrada com &lt;i&gt;Visual Studio&lt;/i&gt; e &lt;i&gt;Share Point&lt;/i&gt; com ótimos gráficos, inclusive com integração a mapas, como do &lt;a href="http://www.google.com/analytics/"&gt;Google Analytics&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Pervasive Insight&lt;/i&gt;: Integração com Office, permitindo que uma planilha realize consultas do banco, reduzindo trabalho do programador e ampliando o poder para o usuário final, aumentando a eficiência da equipe de TI;&lt;/li&gt;&lt;li&gt;Suporte a 256 Core e processamento paralelo para até 100TB, só que para isso é necessário adquirir hardware específico: HP, Dell e Bull;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Transparent Data Encrypt&lt;/i&gt;: Evita que o backup possa ser restaurado em qualquer servidor sem permissão, utiliza uma espécie de assinatura digital;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Data Compression&lt;/i&gt;: Permite salvar os dados compactados, apesar de parecer mais lento, os engenheiros da Microsoft disseram que o gargalo é a leitura e gravação dos dados, portanto, é mais rápido ler ou gravar a informação compactada e descompactar em memória do que ler ou gravar sem compactação;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Resource Governor&lt;/i&gt;: Permite determinar o recurso de hardware por usuário. Ex: Usuário "star (estagiário)" terá 2% de CPU e 5% de memória, já o "Diretor" terá 50% de CPU e 50% de memória.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Policy-Based Manager&lt;/i&gt;: Permite criar regras no banco para evitar que usuário saia criando procedures ou triggers;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Integração com .Net&lt;/i&gt;: Permite utilizar funcionalidades desenvolvidas em C# junto com o banco de dados;&lt;/li&gt;&lt;li&gt;&lt;i&gt;FileStream Data Type&lt;/i&gt;: Uma opção para salvar foto ou vídeo no banco de dados, porém ao invés de salvar diretamente no banco (db.mdf), será salvo em uma pasta no HD, só que o gerenciamento será feito pelo &lt;i&gt;SQL Server&lt;/i&gt;, no caso de um backup, todo conteúdo será embutido para ser restaurado posteriomente;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Full Text Search&lt;/i&gt;: Suporte a Português PT-BR;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Intellisense:&lt;/i&gt; Adicionado;&lt;/li&gt;&lt;li&gt;&lt;i&gt;SQL Express&lt;/i&gt;: Limitação até 4GB para o banco de dados, 1 processador e 1 GB de memória.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Visual de Studio 2010&lt;/b&gt;:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Threads Sincronizadas;&lt;/li&gt;&lt;li&gt;Plugins: Permite referenciar plugings através de assembly local (nossos) ou externo (terceiros);&lt;/li&gt;&lt;li&gt;IDE: Leitura de arquivo dump, informando a seqüência dos métodos (call stack) e característica de variáveis e objetos no momento da excetion.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-3054952395136100553?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2010-03-22T14:27:46.550-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Jingle para Nerd (versão Guitar Hero)</title><link>http://brunosanson.blogspot.com/2009/06/jingle-para-nerd-versao-guitar-hero.html</link><category>Cultura Inútil</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Sun, 21 Jun 2009 15:20:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-1666311528474921834</guid><description>&lt;div&gt;Neste domingo, estava vendo tv quando vi a banda &lt;a href="http://charges.uol.com.br/seminovos_blog.php"&gt;Seminovos&lt;/a&gt;, eles estavam tocando "&lt;a href="http://charges.uol.com.br/musica.php?id=35"&gt;Escolha já seu Nerd&lt;/a&gt;", a música é quase um jingle pra quem é da área!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre; font-family:Arial;font-size:10px;"&gt;&lt;object width="445" height="364"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hW_qioPqdew&amp;amp;hl=pt-br&amp;amp;fs=1&amp;amp;border=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/hW_qioPqdew&amp;amp;hl=pt-br&amp;amp;fs=1&amp;amp;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="445" height="364"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-1666311528474921834?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2009-06-21T19:36:48.478-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Técnico de Informática - Impressora</title><link>http://brunosanson.blogspot.com/2009/01/tcnico-de-informtica-impressora.html</link><category>Cultura Inútil</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Thu, 22 Jan 2009 05:50:00 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-822608253023037335</guid><description>Gato fazendo um simples review da Impressora.&lt;br /&gt;&lt;object height="364" width="445"&gt;&lt;param name="movie" value="http://www.youtube.com/v/wztDKtfzZP0&amp;amp;hl=pt-br&amp;amp;fs=1&amp;amp;border=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/wztDKtfzZP0&amp;amp;hl=pt-br&amp;amp;fs=1&amp;amp;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="364" width="445"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-822608253023037335?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2009-01-22T13:38:06.302-02:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Firefox 3 - Download Day 2008</title><link>http://brunosanson.blogspot.com/2008/06/firefox-3-download-day-2008.html</link><category>Firefox</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Tue, 17 Jun 2008 17:58:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-3150802852301369834</guid><description>Acabei de contribuir com o Download Day e espero que o Firefox 3 estabeleça o recorde conforme esperado.&lt;br /&gt;&lt;br /&gt;Número de Download:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Brasil: &lt;span style="font-weight: bold;"&gt;103.591&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Total: &lt;span style="font-weight: bold;"&gt;2.503.317&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Quem quiser acompanhar os números, clique &lt;a href="http://www.spreadfirefox.com/pt-BR/worldrecord/"&gt;aqui&lt;/a&gt; e informe os dados através do comentário.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-3150802852301369834?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-06-17T22:48:48.822-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Windows DreamScene</title><link>http://brunosanson.blogspot.com/2008/06/windows-dreamscene.html</link><category>Windows Vista</category><category>DreamScene</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Mon, 16 Jun 2008 16:50:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-7992103668042596768</guid><description>O &lt;span style="font-style: italic;"&gt;Windows DreamScene &lt;/span&gt;é um recurso que está disponível para usuários do Windows Vista  versão Ultimate! Através dele, é possível rodar em loop vídeos em alta definição no plano de fundo do seu desktop.&lt;br /&gt;&lt;br /&gt;Para aplicar o &lt;span style="font-style: italic;"&gt;Windows DreamScene:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Painel de Controle &gt;  Aparência e Personalização &gt; Personalização &gt; Plano de fundo da área de trabalho;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Selecione o vídeo em conteúdo do Windows DreamScene;&lt;/li&gt;&lt;/ul&gt;Só que nem tudo são "1111101000 maravilhas", quando liguei meu notebook no monitor do escritório (1280 x 1024), o Windows DreamScene parou de funcionar e mostrou a seguinte mensagem:&lt;br /&gt;&lt;blockquote&gt;Não é possível executar o Windows DreamScene com a configuração atual de sua área de trabalho,  porque o tamanho total da área de trabalho excede o tamanho máximo da textura do adaptador de vídeo principal.&lt;br /&gt;&lt;/blockquote&gt;Por outro lado, em casa funciona muito bem na minha TV (1680 x 1050), vai saber.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-7992103668042596768?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-06-17T21:57:32.986-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Não basta apenas desenvolver software, tem que participar!</title><link>http://brunosanson.blogspot.com/2008/05/no-basta-apenas-desenvolver-software.html</link><category>Consultoria</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Sat, 24 May 2008 03:44:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-1681416929572397203</guid><description>Acompanho a mais de 8 meses o &lt;a href="http://aisapereira.blogspot.com/"&gt;blog&lt;/a&gt; da &lt;a href="http://www.aisa.com.br/"&gt;Aísa Pereira&lt;/a&gt;, consultora em &lt;span style="font-weight: bold;"&gt;Engenharia de Venda de Software&lt;/span&gt;, onde seu propósito é fazer com que as empresas brasileiras vendam cada vez  mais!&lt;br /&gt;Baseado nisso, fiz um trocadilho com o título deste post com a frase dita aos pais de primeira viagem: "&lt;span style="font-style: italic;"&gt;Não basta ser pai, tem que participar&lt;/span&gt;", portanto, não basta apenas desenvolver soluções, tem que participar... Veja alguns conselhos para os vendedores de software:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Lembrar de falar português e não PT-Br,  quanto mais claro e objetivo for a apresentação do produto/serviços, maiores serão as chances de concretizar o negócio;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Ter em mente que a função principal não é apenas vender e sim fazer com que o cliente ganhe mais dinheiro, melhorando sua competitividade no mercado através da solução apresentada;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Encarar que antes os vendedores de software eram tradicionais (não técnicos) e hoje eles são técnicos com perfil de vendedores;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Mostrar para o cliente o quando é fundamental um software para seu crescimento e sucesso sem maiores problemas no futuro;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Ser educador e apresentador de tecnologia para o mercado, pois não adianta o programador derreter seus neurônios em funções recursivas para achar soluções ótimas se não tiver clientes usando e pagando por isso e desta forma, não há empresa que sobreviva.&lt;/li&gt;&lt;/ul&gt;Aísa é autora do livro &lt;span style="font-style: italic;"&gt;Vendendo Software&lt;/span&gt;, Boas vendas!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-1681416929572397203?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-31T01:49:46.357-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>O retorno do "PapoTech"</title><link>http://brunosanson.blogspot.com/2008/05/o-retorno-do-papotech.html</link><category>Podcast</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Sat, 24 May 2008 01:08:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-4559565119045406050</guid><description>Para quem ainda não conhece, o &lt;a href="http://www.papotech.com.br/"&gt;PapoTech&lt;/a&gt; é um podcast sobre tecnologia realizado por dois amigos adoradores de tecnologia (Vinicius Lobo e João Roberto Gandara).&lt;br /&gt;Em cada episódio, você ficar sabendo sobre as principais novidades tecnológicas, lançamentos, boatos e alguns "causo do PapoTech" (histórias muito engraçadas que eles vêem na semana).&lt;br /&gt;No episódio de retorno, Vinicius e João justificaram o motivo da pausa ou férias do PapoTech, além disso, continuam com o bom humor de sempre e agora de cara nova (substituiriam as vinhetas de abertura e encerramento).&lt;br /&gt;&lt;br /&gt;Mais detalhe sobre o podcast, &lt;a href="http://www.papotech.com.br/blog/?page_id=160"&gt;clique aqui&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-4559565119045406050?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-24T07:20:16.247-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>5º FDD (Firebird Developers Day)</title><link>http://brunosanson.blogspot.com/2008/05/5-fdd-firebird-developers-day.html</link><category>Firebird</category><category>Evento</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Mon, 05 May 2008 17:43:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-6506960305065106550</guid><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.firebirddevelopersday.com.br"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/SCX2bjv9FEI/AAAAAAAAAHY/OeFU2-QlugM/s320/fdd5_banner.gif" alt="" id="BLOGGER_PHOTO_ID_5198832298182382658" border="0" /&gt;&lt;/a&gt;O &lt;span style="font-weight: bold;"&gt;Firebird Developers Day&lt;/span&gt; é o maior evento sobre o banco de dados Firebird do mundo e conta com diversas palestras nacionais e internacionais.&lt;br /&gt;Nesta edição, o chefe de desenvolvimento do Firebird estará presente falando sobre as novidades ainda para esse ano e sobre as futuras versões.&lt;br /&gt;&lt;br /&gt;Data: &lt;span style="font-weight: bold;"&gt;19 de julho de 2008.&lt;br /&gt;&lt;/span&gt;Local: &lt;span style="font-weight: bold;"&gt;UNIMEP&lt;/span&gt;, em &lt;span style="font-weight: bold;"&gt;Piracicaba-SP&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-6506960305065106550?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:53.088-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_bnNd1yN8GPY/SCX2bjv9FEI/AAAAAAAAAHY/OeFU2-QlugM/s72-c/fdd5_banner.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Firebird 2.04</title><link>http://brunosanson.blogspot.com/2008/05/firebird-204.html</link><category>Firebird</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Mon, 05 May 2008 17:14:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-1581520360941753055</guid><description>Pessoal do desenvolvimento do Firebird não pára mesmo!&lt;br /&gt;Após lançamento da versão final do Firebird 2.1, eles continuam trabalhando na correção de bugs da versão anterior (2.0.3).&lt;br /&gt;&lt;br /&gt;Veja mais detalhes e download &lt;a href="http://www.firebirdsql.org/index.php?op=files&amp;amp;id=engine_204"&gt;aqui&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-1581520360941753055?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-05T21:43:14.419-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>NABShow - HyperCharge Mobile Charger</title><link>http://brunosanson.blogspot.com/2008/05/nabshow-hypercharge-mobile-charger.html</link><category>NABShow</category><category>Carregador</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 02 May 2008 13:07:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-7386850060617551758</guid><description>&lt;div style="margin: 0px auto 10px; text-align: center;"&gt;&lt;div style="text-align: left;"&gt;Algo que me chamou a atenção foi a dimensão do centro de convenções de Las Vegas, e a todo canto era possível recarregar celulares a U$ 5,00 durante 15 minutos, pago através de cartão de crédito utilizando esse equipamento abaixo:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_bnNd1yN8GPY/SBt0hO7-iaI/AAAAAAAAAHM/_DOr1DhYVTA/s1600-h/IMG_0045.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_" alt="" src="http://4.bp.blogspot.com/_bnNd1yN8GPY/SBt0hO7-iaI/AAAAAAAAAHM/_DOr1DhYVTA/s320/IMG_0045.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;Suporte a várias marcas e modelos:&lt;br /&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Nokia;&lt;/li&gt;&lt;li&gt;Motorola;&lt;/li&gt;&lt;li&gt;Sony-Ericsson;&lt;/li&gt;&lt;li&gt;Samsung;&lt;/li&gt;&lt;li&gt;Siemens;&lt;/li&gt;&lt;li&gt;LG;&lt;/li&gt;&lt;li&gt;Kyocera;&lt;/li&gt;&lt;li&gt;Blackbarry;&lt;/li&gt;&lt;li&gt;PalmTreo;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: left;"&gt; Ficou faltando o iPhone, não?&lt;br /&gt;Será que ele é tão perfeito assim como dizer por ai que nem precisa de recarga ou ele faz download de carga de bateria de algum provedor "apple store"? kakaka&lt;br /&gt;PS: Aos MacXiitas, isso é só uma piada, ok? :)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-7386850060617551758?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:53.186-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_bnNd1yN8GPY/SBt0hO7-iaI/AAAAAAAAAHM/_DOr1DhYVTA/s72-c/IMG_0045.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>NABShow 2008 - GPS Delphi</title><link>http://brunosanson.blogspot.com/2008/05/nabshow-2008-gps-delphi.html</link><category>NABShow</category><category>GPS</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 02 May 2008 11:28:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-2672768044433678143</guid><description>No stand da Harris, havia um GPS da Delphi turbinado!&lt;br /&gt;No ângulo de visão do motorista pode observar a navegação do GPS e os demais podem ver outro conteúdo, veja que interessante:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-2a62bddb56273427" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;
&lt;param name="bgcolor" value="#FFFFFF"&gt;
&lt;param name="allowfullscreen" value="true"&gt;
&lt;param name="flashvars" value="flvurl=http://v7.nonxt3.googlevideo.com/videoplayback?id%3D2a62bddb56273427%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330849903%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D4B168358D4C0FDBCD38582872E63FA96C0D2CDB2.46CF85712B334FB1D59DE47F416F7166AD82731A%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D2a62bddb56273427%26offsetms%3D5000%26itag%3Dw160%26sigh%3Du-5uQtRptyWHnzGry8AnKUPjBIw&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;
&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"
width="320" height="266" bgcolor="#FFFFFF"
flashvars="flvurl=http://v7.nonxt3.googlevideo.com/videoplayback?id%3D2a62bddb56273427%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330849903%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D4B168358D4C0FDBCD38582872E63FA96C0D2CDB2.46CF85712B334FB1D59DE47F416F7166AD82731A%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D2a62bddb56273427%26offsetms%3D5000%26itag%3Dw160%26sigh%3Du-5uQtRptyWHnzGry8AnKUPjBIw&amp;autoplay=0&amp;ps=blogger"
allowFullScreen="true" /&gt;&lt;/object&gt;
&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-2672768044433678143?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><enclosure url="http://www.blogger.com/video-play.mp4?contentId=2a62bddb56273427&amp;type=video%2Fmp4" length="0" type="video/mp4" /><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-04T02:36:41.875-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>NABShow 2008 - TV's QFHD (Quad Full HD)</title><link>http://brunosanson.blogspot.com/2008/05/nabshow-2008-tvs-qfhd-quad-full-hd.html</link><category>NABShow</category><category>TV</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 02 May 2008 11:11:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-6577908371397311015</guid><description>Quem passou pelo stand da Sony na NABShow teve ter visto uma TV Quad Full HD, com resolução de &lt;span style="font-weight: bold;"&gt;3840 x 2160&lt;/span&gt;, ou seja, 4 vezes uma TV Full HD ou 8 vezes uma TV normal.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_bnNd1yN8GPY/SBtdB-7-iZI/AAAAAAAAAHE/sd3AmoYV--g/s1600-h/qfhdsony.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/SBtdB-7-iZI/AAAAAAAAAHE/sd3AmoYV--g/s320/qfhdsony.jpg" alt="" id="BLOGGER_PHOTO_ID_5195848883757812114" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;O mais incrível que não tinha preço, será que essa TV também será &lt;span style="font-style: italic;"&gt;Quad R$? :)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-6577908371397311015?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:53.320-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_bnNd1yN8GPY/SBtdB-7-iZI/AAAAAAAAAHE/sd3AmoYV--g/s72-c/qfhdsony.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>NABShow 2008 - Las Vegas</title><link>http://brunosanson.blogspot.com/2008/05/nabshow-2008-las-vegas.html</link><category>NABShow</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 02 May 2008 10:00:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-7364060318659034411</guid><description>&lt;p class="MsoNormal"&gt;Mês passado tive a oportunidade de sair do país e conhecer Las Vegas onde participei da NABShow que é a principal conferência de mídia digital.&lt;br /&gt;&lt;br /&gt;Visitei vários stand: Adobe, Google, Microsoft, Canon, JVC, Panasonic, Sony entre outros... Havia um espaço dedicado aos empresários brasileiros demonstrar produtos &lt;i&gt;"made in Brazil"&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;O Ministro das Comunicações, Hélio Costa estava presente juntamente com vários &lt;i&gt;braços esquerdos e direitos&lt;/i&gt; discutindo problemas e soluções sobre a nossa TV e Rádio Digital.&lt;/p&gt;&lt;br /&gt;Publicarei outros post referente a NABShow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-7364060318659034411?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-04T02:30:43.352-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Firebird - Recursos mais desejados</title><link>http://brunosanson.blogspot.com/2008/04/firebird-recursos-mais-desejados.html</link><category>Firebird</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 25 Apr 2008 23:49:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-6152803752031068478</guid><description>O Carlos H. Cantu está realizando uma pesquisa para identificar os recursos mais desejados (importantes / urgentes) pela comunidade brasileira e conseqüentemente dar um feedback para o pessoal de desenvolvimento implementar nas próximas versões.&lt;br /&gt;&lt;br /&gt;Então você que utiliza Firebird, vote &lt;a href="http://infopoll.net/live/surveys/s32120.htm"&gt;aqui&lt;/a&gt;, são 8 questões para avaliar!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-6152803752031068478?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-05-02T15:10:47.727-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Registro COM.BR para pessoas fisicas</title><link>http://brunosanson.blogspot.com/2008/04/registro-combr-para-pessoas-fisicas.html</link><category>domínio</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 25 Apr 2008 23:28:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-8430892386301243779</guid><description>No dia 16 de abril recebi um comunicado do &lt;a href="http://www.registro.br/"&gt;Registro.Br&lt;/a&gt; informando que a partir do dia 01/05/2008, as pessoas físicas também poderão registras domínios &lt;span style="font-style: italic; font-weight: bold;"&gt;com.br&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sendo assim, qualquer individuo portador de um CPF poderá registrar um domínio &lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;com.br&lt;/span&gt;&lt;/span&gt; , vale lembrar, que as regras para pessoas jurídicas serão aplicadas também para pessoas físicas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-8430892386301243779?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2010-03-22T14:31:24.933-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Pesquisa no DUG-Br (Delphi Users Group - Brasil)</title><link>http://brunosanson.blogspot.com/2008/04/pesquisa-no-dug-br-delphi-users-group.html</link><category>DUG</category><category>Evento</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Tue, 01 Apr 2008 19:52:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-5786816689677963533</guid><description>O &lt;a href="http://www.dugbr.com.br/"&gt;DUG-Br&lt;/a&gt; (Grupo de usuários Delphi) está realizando uma &lt;a href="http://www.dugbr.com.br/pesquisa_evento.html"&gt;pesquisa&lt;/a&gt; com objetivo de melhorar a qualidade do próximo evento, logo a colaboração de todos é muito importante!&lt;br /&gt;&lt;br /&gt;A pesquisa é rápida, são 6 itens distribuídos em: região, preferência entre palestras e mini-curso, cidade para realização do encontro além dos temas relacionados como: Banco de Dados, Relatórios e outros.&lt;br /&gt;&lt;br /&gt;Importante que todos participem dessa pesquisa e futuramente dos eventos para troca de conhecimentos e no fim, tomar cerveja &lt;span style="font-weight: bold; font-style: italic;"&gt;"ou não&lt;/span&gt;" :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-5786816689677963533?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-04-02T00:19:07.384-03:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Erro após atualização "February 2008 Help Update"</title><link>http://brunosanson.blogspot.com/2008/03/erro-aps-atualizao-february-2008-help.html</link><category>Delphi2007</category><category>Update</category><category>Help</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Wed, 19 Mar 2008 18:57:00 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-7578493684174138784</guid><description>No dia que resolvi atualizar o help do meu Delphi 2007, por forças maiores, ou melhor, por falta dela, meu notebook desligou e a atualização ficou meio &lt;span style="font-style: italic;"&gt;Frankenstein&lt;/span&gt; :)&lt;br /&gt;Quando pressionava F1, apresentava a seguinte mensagem:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_bnNd1yN8GPY/R-HF9VIa22I/AAAAAAAAAFU/ZMFxe70Sb8M/s1600-h/Ap%C3%B3s+instala%C3%A7%C3%A3o+do+novo+update+de+help+do+Delphi+2007.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/R-HF9VIa22I/AAAAAAAAAFU/ZMFxe70Sb8M/s320/Ap%C3%B3s+instala%C3%A7%C3%A3o+do+novo+update+de+help+do+Delphi+2007.jpg" alt="" id="BLOGGER_PHOTO_ID_5179638703887932258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Comentei o problema com o &lt;a href="http://yacoding.blogspot.com/"&gt;Fábio Gomes&lt;/a&gt;, e a sugestão foi a reinstalação, porém, quando tentei rodar o "Check for Updates" que acompanha o Delphi, a atualização não constava mais na lista, então tive que executar a atualização na mão!&lt;br /&gt;&lt;br /&gt;Primeiramente excluí todos os arquivos &lt;span style="font-weight: bold;"&gt;*.zip&lt;/span&gt; da pasta &lt;span style="font-weight: bold;"&gt;c:\Users\Sanson\Documents\Rad_Studio_Help_Downloads &lt;/span&gt;e em seguida executei o arquivo &lt;span style="font-weight: bold;"&gt;Feb08 Help.exe&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Depois de vários minutos de download e instalação, meu help voltou ao normal!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-7578493684174138784?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:53.493-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_bnNd1yN8GPY/R-HF9VIa22I/AAAAAAAAAFU/ZMFxe70Sb8M/s72-c/Ap%C3%B3s+instala%C3%A7%C3%A3o+do+novo+update+de+help+do+Delphi+2007.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Delphi + GExpert: Open File (Ctrl+F12)</title><link>http://brunosanson.blogspot.com/2008/02/delphi-gexpert-open-file-ctrlf12.html</link><category>Delphi</category><category>GExperts</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Wed, 13 Feb 2008 16:21:00 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-9014927113232389167</guid><description>Em determinadas empresas de desenvolvimento de software onde não há um padrão para nomenclatura de &lt;span style="font-style: italic;"&gt;units &lt;/span&gt;e cada programador segue o que acha melhor, você pode encontrar algo do tipo para um simples cadastro de cliente: uCliente, Cliente, uCadCli, CadCli, uCliCad, CliCad, uClienteCad ClienteCad, uCadCliente ou CadCliente.&lt;br /&gt;&lt;br /&gt;Quando surge a necessidade de abri esse cadastro de cliente através do &lt;span style="font-weight: bold;"&gt;View Unit&lt;/span&gt; do Delphi (&lt;span style="font-weight: bold;"&gt;Ctrl+F12&lt;/span&gt;) a dificuldade é enorme, já que a pesquisa não é inteligente.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dGKUf0m3I/AAAAAAAAAEc/cS4I5nEkXAU/s1600-h/Delphi+-+Unit+View.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dGKUf0m3I/AAAAAAAAAEc/cS4I5nEkXAU/s200/Delphi+-+Unit+View.jpg" alt="" id="BLOGGER_PHOTO_ID_5167676240545749874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Uma sugestão para minimizar essa dificuldade é utilizar o &lt;span style="font-weight: bold;"&gt;Open File&lt;/span&gt; do &lt;a href="http://www.gexperts.org/"&gt;&lt;span style="font-weight: bold;"&gt;GExert&lt;/span&gt;&lt;/a&gt; que é mais rápido, oferece pesquisa inteligente, caminho do arquivo além de outros recursos.&lt;br /&gt;Para substituir o &lt;span style="font-weight: bold;"&gt;View Unit&lt;/span&gt; pelo &lt;span style="font-weight: bold;"&gt;Open File&lt;/span&gt;, basta clicar no menu GExpert na IDE e em seguida em &lt;span style="font-style: italic; font-weight: bold;"&gt;Configuration&lt;/span&gt;...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dLDUf0m4I/AAAAAAAAAEk/Y0EdJsVXEH8/s1600-h/GExpert-1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dLDUf0m4I/AAAAAAAAAEk/Y0EdJsVXEH8/s320/GExpert-1.jpg" alt="" id="BLOGGER_PHOTO_ID_5167681617844804482" border="0" /&gt;&lt;/a&gt;Marcar a opção &lt;span style="font-weight: bold;"&gt;Open File&lt;/span&gt;, definir a tecla de atalho pressionando &lt;span style="font-weight: bold;"&gt;Ctrl + F12&lt;/span&gt; e em seguida clicar no botão &lt;span style="font-weight: bold;"&gt;Configure&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dL9Uf0m5I/AAAAAAAAAEs/tHGDki-XI6Q/s1600-h/GExpert-2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dL9Uf0m5I/AAAAAAAAAEs/tHGDki-XI6Q/s320/GExpert-2.jpg" alt="" id="BLOGGER_PHOTO_ID_5167682614277217170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Na tela de configuração, clique na aba &lt;span style="font-weight: bold;"&gt;Settigns &lt;/span&gt;e marque as opções:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;View Units - Delphi Units;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;View Forms -Delphi Forms;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Open Projet - Delphi Project;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Para usar o &lt;span style="font-weight: bold;"&gt;Open File&lt;/span&gt; do &lt;span style="font-weight: bold;"&gt;GExpert&lt;/span&gt;, abra um projeto e pressione &lt;span style="font-weight: bold;"&gt;Ctrl+F12&lt;/span&gt;, compare a diferença!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_bnNd1yN8GPY/R7dNREf0m6I/AAAAAAAAAE0/BCaeQUUpY-Q/s1600-h/GExpert+-+Unit+View.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_bnNd1yN8GPY/R7dNREf0m6I/AAAAAAAAAE0/BCaeQUUpY-Q/s320/GExpert+-+Unit+View.jpg" alt="" id="BLOGGER_PHOTO_ID_5167684053091261346" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-9014927113232389167?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:53.943-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_bnNd1yN8GPY/R7dGKUf0m3I/AAAAAAAAAEc/cS4I5nEkXAU/s72-c/Delphi+-+Unit+View.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>GPS Quatro Rodas - Experiência de Uso.</title><link>http://brunosanson.blogspot.com/2008/02/gps-quatro-rodas-experincia-de-uso.html</link><category>GPS</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 08 Feb 2008 21:11:00 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-3740636935049151017</guid><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.navegadorguiaquatrorodas.com.br/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_bnNd1yN8GPY/R7OIO0f0m2I/AAAAAAAAAEU/qRJbQuXbl4o/s200/gps.jpg" alt="" id="BLOGGER_PHOTO_ID_5166622985715751778" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Na semana passada, usei um GPS na cidade de São Paulo, fiquei impressionado como poder desse &lt;a href="http://www.navegadorguiaquatrorodas.com.br/"&gt;equipamento&lt;/a&gt;, a interface é muito intuitiva, em menos de 5 minutos já sabia usar grande parte dos seus recursos.&lt;br /&gt;&lt;br /&gt;Fiquei surpreso com os seguintes detalhes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Visualização da rota em 3D aliado ao comando de voz passa uma boa segurança, porém é necessário um pequeno treino no ouvido:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;   - “Vire a esquerda 500 metros!”;&lt;br /&gt;- ”Vire a esquerda 200 metros!”;&lt;br /&gt;- “Vire a esquerda!”.&lt;br /&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;Recalculo de uma nova rota é automático e muito, em menos de 10 segundos você tem todos os detalhes na tela atualizados;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Modo noturno reduz o brilho da tela, é um ótimo recurso até por questão de segurança no transito e também não chamar a atenção dos bandidos.&lt;/li&gt;&lt;/ul&gt;Portanto, é uma ótima ferramenta de trabalho para quem vive de cidade em cidade, parando a cada 5 minutos pra olhar o mapa impresso no Google :)&lt;br /&gt;&lt;br /&gt;Atualização: O Carlos Cantu postou em &lt;a href="http://blog.firebase.com.br/"&gt;seu blog&lt;/a&gt; alguns assuntos interessantes para quem precisa comprar um GPS, &lt;a href="http://blog.firebase.com.br/?p=193"&gt;acompanhe aqui&lt;/a&gt;!&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-3740636935049151017?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-12-08T21:14:54.249-02:00</atom:updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_bnNd1yN8GPY/R7OIO0f0m2I/AAAAAAAAAEU/qRJbQuXbl4o/s72-c/gps.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Pesquisa CodeGear Delphi 2008</title><link>http://brunosanson.blogspot.com/2008/02/pesquisa-codegear-delphi-2008.html</link><category>Delphi</category><category>CodeGear</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 08 Feb 2008 20:38:00 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-6013622683376709749</guid><description>Essa semana o &lt;a href="http://www.ericksasse.com.br/pesquisa-delphi-2008/"&gt;Erick Sasse&lt;/a&gt; postou em seu blog uma &lt;a href="http://video.codegear.com/survey/2008DelphiSurvey_Portuguese.html"&gt;pesquisa&lt;/a&gt; na qual a CodeGear está realizando com objetivo de direcionar recursos para o futuro de seus produtos.&lt;br /&gt;&lt;br /&gt;Algumas das questões foram comparativos entre:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Aplicação de .Net ou Win32;&lt;/li&gt;&lt;li&gt;Edição do Delphi;&lt;/li&gt;&lt;li&gt;Versão de Sistema Operacional;&lt;/li&gt;&lt;li&gt;.Net ou Win32;&lt;/li&gt;&lt;li&gt;Etc...&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Distribuídas nas seguintes categorias:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Geral;&lt;/li&gt;&lt;li&gt;Plataformas;&lt;/li&gt;&lt;li&gt;Recursos;&lt;/li&gt;&lt;li&gt;Tipos de Desenvolvimento;&lt;/li&gt;&lt;li&gt;Banco de Dados;&lt;/li&gt;&lt;li&gt;Ambiente de Desenvolvimento;&lt;/li&gt;&lt;li&gt;Documentação;&lt;/li&gt;&lt;li&gt;Empresa;&lt;/li&gt;&lt;li&gt;Etc...&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Vale a pena investir um tempo nisso pra que utiliza Delphi como ferramenta de trabalho ou diversão :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-6013622683376709749?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-02-09T02:56:54.689-02:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>CodeGear fornecerá 1 milhão de licenças para a Russia</title><link>http://brunosanson.blogspot.com/2008/02/codegear-fornecer-1-milho-de-licenas.html</link><category>CodeGear</category><author>noreply@blogger.com (Bruno Sanson)</author><pubDate>Fri, 01 Feb 2008 14:47:00 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8472543898882723476.post-8274443767116665923</guid><description>O governo russo está investindo forte na área da computação, &lt;a href="http://www.infoworld.com/article/08/02/01/codegear-russia_1.html"&gt;adquiriu 1 milhão de licenças em produtos CodeGear&lt;/a&gt; (Delphi, C++Builder), isso é muito bom para a comunidade Delphi.&lt;br /&gt;&lt;br /&gt;Bem que o governo brasileiro poderia entrar nessa de educação e incentivo ao invés de ficar torrando nosso dinheiro com gastos de cartão de corporativo, como nossa &lt;a href="http://g1.globo.com/Noticias/Politica/0,,MUL277814-5601,00.html"&gt;ex-ministra Matilde Ribeiro&lt;/a&gt; juntamente com outros corruPTos que se enquadra nesse perfil. Vamos lá Brasil!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8472543898882723476-8274443767116665923?l=brunosanson.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><atom:updated xmlns:atom="http://www.w3.org/2005/Atom">2008-02-01T21:09:27.127-02:00</atom:updated><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>

