Google App Engine

Uma otima pedida do Google. Retirar das pequenas empresas a preocupacao de:

  1. desenvolver (local de desenvolvimento, banco de dados, etc)
  2. procurar um local para fazer deploy do webapp
  3. demanda de banda, acessos, etc...

Por enquanto o engine apenas suporta Phyton (acredito que ate o lancamento - 28-29 de maio - deve ter mais linguagens suportadas). O mais interessante disso tudo eh a questao de poder usar a estrutura do Google para o seu aplicativo web e a principio, a custo zero!

O desenvolvedor ganha acesso a:

  • gFS (google file system),
  • Google API (google accounts)
  • google Persistent (base de dados BigTable e GFS com consultas, ordenacao e transacoes)
  • Escalabilidade e balanciamento de carga automatico no servidor
  • Local de desenvolvimento completo em maquina local

Uma questao que nao ficou muito clara eh a suposta seguranca do seu codigo fonte dentro dos servidores. Quem tem acesso aos seus codigos fonte?

A lista de 10,000 pessoas que poderiam ter acesso a plataforma ja esta fechada, mas voce ainda pode baixar o SDK no site.

Para mais informacao e ate uns videos de como desenvolver: clique aqui!
Blog do pessoal de desenvolvimento falando das novidades: clique aqui!

Postado em s 8/4/2008 17:36:27 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Dicas | Geral

Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Consultas SQL com Lambda (e nao Linq)

As expressoes Lambda ja existem desde o .NET 3.0 e foram, por assim dizer, aprimoradas com o .NET 3.5 usando o Linq.

Vamos a parte pratica da coisa, como diferenciar uma da outra com um simples Select.

Linq:

var C = from o in db.Orders where o.OrderID == 1 select new { o.OrderID };

Lambda:

var C = db.Orders.Where(o => o.OrderID == 1).Select(o => new { o.OrderID });

 

Como da pra notar a diferenca nao eh TAO grande para uma consulta simples. A desgraca comeca quando voce precisa fazer uma consulta um pouco mais elaborada:

Linq:

var orderDetails = from o in db.Orders
        where o.OrderID == orderID
        join s in db.Shippers on o.ShipVia equals s.ShipperID
        join od in db.OrderDetails on o.OrderID equals od.OrderID
        join p in db.Products on od.ProductID equals p.ProductID
        join supplier in db.Suppliers on p.SupplierID equals supplier.SupplierID
        let total = od.Quantity * od.UnitPrice
        select new OrderDescription {Product = p.ProductName, Quantity = od.Quantity, 
                     ShipperName = s.CompanyName, Total = total, UnitPrice=od.UnitPrice,
                     SupplierName = supplier.CompanyName};

Lambda:

var orderDetails = db.Orders.Where(order => order.OrderID == orderID).
        Join(db.Shippers, o => o.ShipVia, s => s.ShipperID, 
          (o, s) => new { o.OrderID, ShipCompanyName = s.CompanyName }).
        Join(db.OrderDetails, o => o.OrderID, od => od.OrderID, 
          (o, od) => new {o.ShipCompanyName, od.ProductID, od.Quantity, od.UnitPrice }).
        Join(db.Products, od => od.ProductID, p => p.ProductID, 
          (OrderDetails, p) => new { OrderDetails, p.ProductName, p.SupplierID }).
        Join(db.Suppliers, p => p.SupplierID, s => s.SupplierID, 
          (OrderData, s) => new { OrderData, SupplierName = s.CompanyName}).
        Select(o => new OrderDescription
        {
            Product = o.OrderData.ProductName,
            Quantity = o.OrderData.OrderDetails.Quantity,
            ShipperName = o.OrderData.OrderDetails.ShipCompanyName,
            Total = o.OrderData.OrderDetails.Quantity * o.OrderData.OrderDetails.UnitPrice,
            UnitPrice = o.OrderData.OrderDetails.UnitPrice,
            SupplierName = o.SupplierName
        });

 

Vale a pena usar o Lambda em questoes simples como uma verificacao de inclusao:

var C = db.Orders.Single(o => o.OrderID == 1);

Ou de uma alteracao:

Orders Alt = db.Orders.Single(o => o.OrderID == 1);

Alt.campo = novovalor;

 

Entao, o que voce prefere? Open-mouthed

Postado em s 3/4/2008 21:46:12 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: ASP.NET | C# | Dicas | SQL

Tags: , , , ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Google - 1 de abril

Hoje como sempre o Google preparou uma das suas pegadinhas: O Gmail Custom Time, sou obrigado a concordar que a ideia eh boa. Na hora voce ate acredita na coisa mas quando voce comeca a ler os depoimentos dos "beta users" voce comeca a ver que nao passa de um trote! :D

 

Gmail Custom Time

 

Para ver mais clique aqui!!

Postado em s 1/4/2008 11:08:26 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Geral

Tags: , ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Caracteres de Escape no C#

Quais sao os caracteres de escape (character escape sequences) no C#?

C# define os seguintes como sequencias de caracteres de escape:

  • \' - single quote, needed for character literals
  • \" - double quote, needed for string literals
  • \\ - backslash
  • \0 - Unicode character 0
  • \a - Alert (character 7)
  • \b - Backspace (character 8)
  • \f - Form feed (character 12)
  • \n - New line (character 10)
  • \r - Carriage return (character 13)
  • \t - Horizontal tab (character 9)
  • \v - Vertical quote (character 11)
  • \uxxxx - Unicode escape sequence for character with hex value xxxx
  • \xn[n][n][n] - Unicode escape sequence for character with hex value nnnn (variable length version of \uxxxx)
  • \Uxxxxxxxx - Unicode escape sequence for character with hex value xxxxxxxx (for generating surrogates)

 

Open-mouthed

Postado em s 15/3/2008 15:49:04 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: C# | Dicas

Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Ciclos na vida...

Acredito que tudo na vida tem um motivo para ser e acontecer... Momentos sao tudo... Uma decisao errada e toda um seguencia de fatos bons ou ruins podem acontecer.

Na minha vida vivo pensando nesses momentos, se fiz certo, como poderia ter feito diferente e como poderia ser diferente. Sao horas pensando sobre isso... E praticamente sobre varias decisoes que tomei durante os meus 24 anos de vida. Vale realmente ficar perdendo tempo pensando nisso? A realidade nao esta boa o suficiente? Sou eu que estou insatisfeito ou sao as coisas que poderiam ser melhores?

Tento nao tomar decisoes que demorem mais de um mes para acontecer, sou mais espontaneo, pois acredito que desta maneira se alguma coisa der errado eu nao poderia ter feito muito diferente do que fiz. Faz eu ficar menos tempo martelando essas coisas na minha cabeca.

Muita coisa esta acontecendo... Muitas decisoes deverao ser tomadas em 2008... Vamos ver em quantas delas eu acerto!!!

Postado em s 9/3/2008 23:32:55 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Geral

Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Aproveitando

Sabe quando voce sabe o que quer, esta trabalhando para ter, mas sempre parece longe de mais? Pois entao... Essa eh a minha vida Tongue out

Esses ultimos dois finais de semana me mostraram o "porque" de eu me esforcar tanto. Primeiro fui na casa de um conhecido sabado passado, lah pude vislumbrar coisas que gostaria de ter na minha propria casa. Um local aconchegante e com tudo de tecnologia de ponta.

Pra me deixar com mais animo, ontem chegando na casa de outro conhecido que sabe q sou chegado no Mercedes SLK 230 Kompressor dele me oferece para dirigir o carro. O teto ja estava recolhido e dali pra frente foi soh alegria ao apertar o acelerador de um carro conversivel (meu mais declarado sonho).

Cheguei em casa com um animo 2x revigorado. Espero um dia ter condicoes de ter tudo que eu sonho pra poder fazer valer o meu trabalho.

Postado em s 3/3/2008 9:23:06 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Geral

Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Bom profissional

Ja fazem mais 10 anos que eu mexo com programacao, comecei com um HTML basico, fui para um JavaScript, brinkei com CSS e XML, subi para o ASP e quando finalmente veio do .NET FrameWork 1.0 beta 1 (se nao me engano em meados de 2001) eu comecei a trabalhar com C#. No comeco foi mais uma "migracao" do ASP convencional em VB para o ASP.NET em C#, fui pegando gosto e parti para as aplicacoes Windows (98/Me/XP/Vista) e com mais tempo para o Windows Mobile (5/6). Ja me aventurei no mar do Windows Service e dos Web Services... E mesmo com toda essa experiencia ainda vejo todo dia alguma coisa para me superar e aprender...

Tendo dito isso me vem a questao: O que faz de voce um bom profissional?

  1. O que voce sabe?
  2. Sua vontade de sempre querer ser melhor?
  3. Sua capacidade de desenvolver o que o cliente pede (por mais absurda que possa parecer)?
  4. Ou o nome com que voce se apresenta?

Por que estou filosofando sobre isso? Por que hoje uma colega da minha namorada entrou em contato comigo com algumas questoes basicas. No final da conversa ela acabou me dizendo que nao era ela que tinha duvidas e sim um cliente dela. Sem problemas passei o meu celular e pedi que ela fala-se com o cliente para que o mesmo entre em contato comigo. Axei que estavamos combinados entao: ela iria falar com o cliente e o mesmo iria entrar em contato comigo para tentar sanar as duvidas dele da melhor forma possivel.

Ela me pergunta o meu nome, dizendo que o cliente poderia precisar dele para poder falar comigo e eu digo que pode me ligar e pedir pelo Ghost. Isso criou uma estranheza tal que aparentemente o cliente nem entrou em contato comigo, eu que resolvi ligar para ele.
Fui instruido a lhe passar um email, o que fiz rapidamente. Ate agora nenhuma resposta.... Vou esperar ate amanha...

Sou um otimo profissional, tenho certeza disso, nunca axei que um detalhe como um apelido fosse fazer tanta diferenca...Eye-rolling

Postado em s 20/2/2008 23:29:22 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Geral

Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Voce sabe a diferenca entre hd's SATA I e SATA II ?

Eu tenho aqui em casa um servidor da IBM xSeries 206 e despois que descobri que havia diferenca entre os tipos de hd SATA que poderiam ser instalados nunca me meti a comprar um, pois o que vem de fabrica eh um SCSI.

Hoje gracas a um colega que me passou uns links eu sei a diferenca.

por chicoperez do forum do Baboo

"qual a diferença entre HD sata 1 e HD sata 2 ?"

Teoricamente o SATA I oferece uma banda de 1,5Gbps (150MB/s), enquanto o SATA II oferece uma banda de 3Gbps (300MB/s)

 

"O HD Sata 1 também pode trabalhar a 3 GB/S ?"

Não.

 

"Para usar sata 2 precisamos comprar uma placa que suporte o sata2 ?"

Necessariamente não, é só colocar um JUMPER que limite ele em 1,5Gbps.

 

"O Adaptador dos dois são diferentes?"

Não.

 

"Eu posso comprar um HD sata2 e usar como sata1 para já ficar preparado para um futuro upgrade?"

Sim, é só usar o JUMPER limitando, como falei acima.

 

entenda mais aqui: http://www.babooforum.com.br/idealbb/view.asp?topicID=393385

Postado em s 28/1/2008 21:24:13 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Dicas | Geral

Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

BitTorrent Suckz !!!

Sabe aquela coisa que voce sempre ouve falar mas nunca teve paciencia/tempo pra pesquisar mais? Pois entao, isso aconteceu comigo refente a essa tecnologia de transferencia de arquivos pira... digo... ponto-a-ponto.

Finalmente andei dando uma pesquisada nos "players" do mercado e acabei escolhendo o uTorrent por nao precisar ser instalado para funcionar (sou meio contra instalar as coisas), voce apenas baixa um executavel e pronto, voce agora faz parte do mundo Torrent que todos falam. Claro que uma ou duas configuracoes devem ser feitas para deixar o processo mais confiavel e rapido. Exatamente aquilo que eu nunca tinha parado para estudar.

Entao finalmente funcionou !!! Downloads a incriveis 300kbps (a se o meu eMule fizesse isso) !!! Praticamente um DVD por dia ate que.... Toca o telefone... A NET Virtua me ligando pra dizer que eu havia estourado a cota de 40gb de download mensal e por este motivo eu tinha duas opcoes a seguir:

  1. Pagar R$39,90 para ter cota ilimitada ate o final de Janeiro;
  2. Aceitar de bom coracao um "corte" na minha velocidade ate o final do mes. De 4mb para 200k.

Como sou pobre fiquei com a opcao mais barata e disse: "Pode limitar entao..."

A se eu tivesse pensado um poko... To aqui amargando praticamente 20kbps de download.... Nao da pra ouvir radio pela internet e navegar ao mesmo tempo...Sad

COMO QUE EU VIVIA COM A INTERNET DISCADA?

A VIDA EXISTIA ANTES DA BANDA LARGA?

Postado em s 23/1/2008 20:46:45 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Geral

Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Hitman - Assassino 47

Vow ser bem honesto: nunca joguei o jogo, sempre quis, mas nunca joguei.

Conheco de ler materias, fotos e videos e sempre me interessou. Quando fiquei sabendo que estava em producao o filme baseado no jogo fiquei atento para a data de lancamento. Quase baxei pra ver em casa mas queria ver os detalhes e nao um screener mal feito, decidido entao, fui ao cinema hoje (tecnicamente ontem pois ja passou da meia-noite) pra conferir essa producao.

Devido a falta de publicidade e apenas uma secao disponivel o cinema estava relativamente vazio o que ajudou a apreciacao do momento. Muito bem feito e com piadas bem sakadas o filme merece um 9,0 e claro uma continuacao digna. O ator Timothy Olyphant eh realmente muito parecido com o Agente 47 o que ajuda os que ja estao familiarizados com o jogo.

Ta ae a dica de um filme que nao parece, mas eh muito bom !!!

Postado em s 9/1/2008 1:08:44 by Gh0stman

Permalink | Comments (0) | Post RSSRSS comment feed |

Categorias: Filmes

Tags:

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5