29 agosto 2011

Java 7 Release and the JIT compiler bug

Quotation from Java Performance Tuning newsletter:

"Java 7 was released with a JIT compiler bug. This should not be an issue for the Java performance community - if you have a performance problem, you haven't been waiting for Java 7 to fix it for you, you've been busy analysing and fixing it yourself; and if you don't have any performance problems, you aren't about to upgrade your productions systems to Java 7 on the very first release!"

So true

16 agosto 2011

4MyFan: idéia excelente, de SCAM

Um amigo me passou esse site, 4MyFan, que se diz ser uma Rede Social Financeira. Isso me leva a crer duas coisas:

  •  o hype de redes sociais começou a ir longe demais
  • tem imbecil pra tudo nesse mundo


Para cada amigo que você convidar, este deve pagar US$ 10,00. Deste valor, você ganha 50%, ou US$ 5,00. A outra metade fica para o site. Sem contar que o PagSeguro ainda leva 7% do valor. Ou seja, você recebe no final das contas algo em torno de US$ 4,50.

Minha sugestão a quem quer ser ajudado por amigos: coloquem num blog o número da conta de vocês, e peçam aos seus amigos para transferirem um trocado, algo como R$ 10,00.

É ridículo dar dinheiro a um site, para que ele transfira 50% para um amigo seu, apenas para que você faça parte da "rede social financeira".

O dono da idéia não sei quem é, mas o cara que registrou o domínio é esse:

Registrado por RedeHostAcesse: www.redehost.com.br
Domain Name: 4MYFAN.COM 
Registrant:    -    Artenio Batista da Silva Junior        (info@redehost.com.br)    rua 1132, 322, qD 242 B    marista    goiania    GO,74180110    BR    Tel. +55.6232418840
Creation Date: 01-Feb-2011  Expiration Date: 01-Feb-2012

09 agosto 2011

Participações em eventos de 2011

O ano de 2011 está agitado para mim.

Já estive no JustJava, no The Developers Conference (edição São Paulo) e na próxima semana estarei presente no TDC Florianópolis. Em Setembro ainda tenho o QCon, evento do InfoQ-Caelum. E sobre o quê tenho falado? Apache Wicket.

O desenvolvimento Web em Java deixou de ser lento, e nestas minhas palestras, apresento uma proposta diferente. Programadores e Web Designers trabalhando em conjunto sem que um prejudique ao outro.

Foi-se o tempo que a separação de camadas se dava apenas na programação. Chegou a hora de separar também o trabalho do designer e o do programador. Afinal, o web designer é quem entende bem de CSS, efeitos, web fonts e UX.  No meu post "What are web frameworks missing?" detalho melhor este tema.

Mas voltando aos eventos, segue a programação para quem quiser saber mais:

The Developers Conference - edição Florianópolis
Data: 20 de Agosto de 2011 - 13:10 na trilha Java
saiba mais


QCon - São Paulo
Data: 10 de Setembro de 2011 - 18:10
saiba mais

E se quiser se aprofundar mais, confira o Curso de Apache Wicket que lancei este mês. O curso começa no dia 4 de Setembro.

Curso de Apache Wicket

Lancei ontem o Curso de Apache Wicket, para iniciantes e para aqueles que já utilizam. O curso será ministrado online através de uma ferramenta com compartilhamento de tela e chat. Serão ao todo 4 aulas com duração de 3 horas e meia.

Durante o curso, os alunos construirão uma aplicação completa, integrada ao Spring, paginação e outras funções em Ajax. Os interessados podem se inscrever pelo site www.cursodewicket.com.

Valor: R$ 389,00


4 de Setembro: 9:30 - 13:00
11 de Setembro: 9:30 - 13:00
18 de Setembro: 9:30 - 13:00
25 de Setembro: 9:30 - 13:00

08 agosto 2011

Run Activity with Intent without knowing the class

I was having a problem this evening where I had to call an activity that I didn't want to know the class name. My problem was exactly this: I have several activities, each with a String id. And in activity A I call goToScreen("b"); to load activity B.

To make this work one need to do this:

public void goToScreen(String id) {
  PackageManager pm = androidContext.getPackageManager();
  Intent intent = new Intent("com.myproject.screen."
    + id.toUpperCase());
  intent.addCategory(Intent.CATEGORY_DEFAULT);

  ResolveInfo ri = pm.resolveActivity(intent,
    PackageManager.MATCH_DEFAULT_ONLY);

  if (ri != null) {
   Intent i = new Intent();
   i.setClassName(ri.activityInfo.applicationInfo.packageName,
     ri.activityInfo.name);
   androidContext.startActivity(i);
  }
 }

This code will call an activity mapped on AndroidManifest.xml like this:

<activity android:label="@string/app_name" android:name=".AvisoActivity">
   <intent-filter>
      <action android:name="com.myproject.screen.AVISO" />
      <category android:name="android.intent.category.DEFAULT" />
   </intent-filter>
</activity>


The DEFAULT category is not optional, as one may think. If you don't put both references (Java and XML) of the category, this code won't work. I don't know if it's a bug at Android or just a non-documented feature (which is a bug to me, anyway).

Also, don't forget to call resolveActivity with MATCH_DEFAULT_ONLY.

This is all for tonight and this blog post is more like of a reminder to myself. =)

05 agosto 2011

Bug maldito

Bug maldito, bug maldito
Ajuda o sistema a travar
Nunca desiste, nunca descansa
Escondido!
Ainda vou ter que encontrar



original
Contato

Email:bruno.borges(at)gmail.com

LinkedIn: www.linkedin.com/in/brunocborges
Twitter: www.twitter.com/brunoborges
Comprei e Não Vou
Rio de Janeiro, RJ Brasil
Oracle
São Paulo, SP Brasil