Mostrando postagens com marcador JavaOne. Mostrar todas as postagens
Mostrando postagens com marcador JavaOne. Mostrar todas as postagens

08 abril 2014

JavaOne 2014 na faixa, 0800, grátis!

Existem muitas coisas interessantes sobre o JavaOne, a maior conferência de Java deste planeta. Talvez a oportunidade de ficar sabendo em primeira mão sobre grandes lançamentos, ou ouvir sobre novas formas de utilizar a tecnologia, ou ainda conversar com desenvolvedores de todo o mundo, ou melhor: conhecer pessoalmente aqueles com quem conversamos somente por redes sociais e mailing lists. E é claro, a oportunidade de conhecer San Francisco, e o Vale do Silício: os escritórios da Oracle, do Google, da Apple, ou até da Microsoft. :D



Se você nunca foi ao JavaOne, mas tem muito interesse, curiosidade, e muita disposição (são várias sessões, e muitos eventos pós-sessões como happy hours, shows musicais, hackathons, etc!), e quer uma ajudinha para ir no evento, um bom patrocínio, existem duas formas de você fazer isso. A melhor opção é participar do JavaOne 2014 IoT Developer Challenge!.

O que você precisa fazer para concorrer no IoT Developer Challenge?
Tudo o que você precisa fazer é criar um projeto, bolar um vídeo e publicar o código-fonte deste projeto utilizando a tecnologia Java Embedded da Oracle, com foco em IoT: Internet of Things, com placas de embarcados como Raspberry Pi e similares, dispositivos, sensores, etc.

Quais os prêmios?
Na categoria profissional:
3 times ganharão uma viagem para o JavaOne. Três membros de cada time vencedor ganhará a entrada para o JavaOne 2014, e mais US$ 2.000,00 para custear até 4 noites de hotel e também as passagens de avião. (outras despesas como alimentação e transporte não serão custeadas).
Na categoria estudante: 

  • 1º lugar: 3 membros do time vencedor ganharão cada, a entrada para o JavaOne e mais US$ 2.000,00 para custear passagens e (até) 4 noites em hotel.
  • 2º lugar: 3 membros do time vencedor ganharão cada, um laptop e um voucher para certificação Oracle com valor total de até US$ 1.500,00
  • 3º lugar: 3 membros do time vencedor ganharão cada, um laptop e um voucher para certificação Oracle com valor total de até US$ 1.300,00



Data Limite para Enviar
O período para enviar a sua criação termina no dia 30 de Maio de 2014.

Quer saber mais?
Se você quiser saber mais, não deixe de ler o FAQ do IoT Developer Challenge.

Precisa de ajuda?
Se precisar de uma ajudinha para criar um projeto legal, confira a página do IoT Developer Challenge. Vários webinars foram publicados. E tem até alguns exemplos de códigos!

JavaOne 2014 de graça? Com viagem e hotel pagos! :-D
Assim fica fácil ir no JavaOne e curtir toda a experiência desta grande conferência! Se você precisar de ajuda, seguem alguns videos e tutoriais para ajudar neste desafio!


Outra forma de gastar menos para ir ao JavaOne: seja um palestrante!
E se você achar que dá muito trabalho criar um projeto tão maneiro, com tecnologias tão recentes, sobre um tópico tão quente como Internet of Things, tudo bem! Outra forma de economizar, pelo menos no preço da entrada para o JavaOne 2014, é sendo um palestrante. Estes seres iguais a nós desenvolvedores, que apenas querem apresentar algo interessante e legal, e que pode ser muito útil para muitos outros desenvolvedores, ganham acesso para a conferência (passagem e hotel não incluídos).

Você tem exatamente uma semana para enviar uma palestra, pois o Call for Papers encerra no dia 15 de Abril. Bola rápido um tema bacana, e proponha sua palestra!

24 janeiro 2014

Hackathon de Java e Raspberry Pi na CPBr14


Você que é desenvolvedor Java e vai para a Campus Party na semana que vem de 27 de Janeiro a 2 de Fevereiro de 2014, não pode perder o Hackathon de Java e RaspberryPi promovido pelo SOUJava, com apoio da Oracle, trazendo kits, premiação, e mentoring! O objetivo é aprender, praticar e inovar, e todos os participantes ainda vão ganhar uma camiseta. Um dos projetos será selecionado para apresentação no palco principal!

Presença de grandes nomes da comunidade Java brasileira como:

Para maiores informações, consulte o site do SOUJava Hackathon de Java e Raspberry Pi na Campus Party.

11 novembro 2013

Reality of Open Source Users in Mobile and Cloud Era

- "I built my Android app entirely with Open Source products, both in the app, and in the backend server running on Amazon. I'm charging US$ 1,99 for it in the Google Play Store" 
- "That's wonderful! Where is the source code of your app? Have you contributed back to these Open Source products? Will you release your product as Open Source?"

In this new era of Cloud Computing and Mobile apps, there's an increasing number of for-profit products that takes advantage of Open Source products, but barely contribute anything back to them, either by buying support, or non-expensive things such as reporting bugs, fixes, or helping documentation. Developers are building SaaS applications for Salesforce.com, or Mobile apps for Android and iOS devices, and usually charge for these. Of course, they want to make money as anyone else.

Whenever I ask someone that makes money with _their_ software built on top of Open Source, if they will ever release the source code, they usually answer: "my case is different". Well, why is your case different? Why can't I buy your app from Google Play Store, and still access the code on GitHub? Or build it on my own, customize it, etc? That's the point of Open Source, right? Wrong, in their minds.

Majority of software developers actually tend to think that Open Source is free as in free beer. And that's it. No matter how hard you try to explain otherwise, the industry will almost always see Open Source software as free software. And due to the new way to sell software, I really think that Mobile apps and Cloud SaaS/PaaS offers will, sooner or later, kill good Open Source softwares, and leave this space only for conceptual and initial implementations for Open Standards and APIs, or for general use and development platforms and languages such as Java, Ruby, etc.

Perhaps you want to read Will Cloud kill Open Source? Is the Future Open Standards? Your thoughts are welcome :-)

10 setembro 2013

Java SE 7 update 40 e o Mission Control 5.2

Java SE Downloads
Chegou uma nova atualização do Java SE 7: update 40. Esta versão inclui várias novas funcionalidades como o Java Mission Control, Deployment Rule Set, suporta para o Retina display no Mac, e suporte a Hard Float ABI no Linux ARM v7. Também inclui diversas correções de bugs. Para quem desenvolve Applets e aplicações Java Web Start, este release, fica a atenção para conhecer e enteder as mudanças.

Deployment Rule Sets

Esta funcionalidade permite um administrador de desktops a controlar o nivel de compatibilidade para clientes Java assim como níveis de segurança para a empresa. Para maiores detalhes, veja a documentação do Deployment Rule Set.

Java Mission Control

O Mission Control era até então uma ferramenta disponível para clientes Oracle, e que foi lançada há muito tempo atrás junto com o JRockit (JRMC). Mas a Oracle agora disponibilizou a ferramenta junto com a JRE HotSpot 7u40. 

Esta ferramenta permite monitorar, gerenciar, introspectar, e detectar memory leaks nas suas aplicações Java, sem ter que introduzir códigos para isso, que normalmente degradam a performance da aplicação. Hoje esta ferramenta está agora disponível no download do Oracle HotSpot JDK 7u40!

Flight Recorder

Mas a principal e mais importante característica é o Flight Recorder. Este recurso funciona através da leitura de eventos produzidos pela JVM. Mesmo ativando a geração destes eventos, a sobrecarga total  para as suas aplicações ainda fica abaixo de 2%, que considerando o tipo e o valor de informação que você recebe, é quase nada. Um exemplo de evento é a chamada de um método de uma classe Java.

Com o profile de chamadas de métodos você pode descobrir onde o aplicativo está gastando a maior parte do tempo executando seu código Java. Este é, por exemplo, útil para otimizar a aplicação onde as otimizações realmente terão impacto. Isto sem precisar introspectar seu código manualmente!

Alem disso, você tem também uma visão de otimização para alocação de objetos. Você pode ver por exemplo, a alocação em tempo real de objetos na Old Gen da memória heap. diretamente no espaço de idade, além de outras abas que oferecem diversas informações importantes sobre o processamento de informações na sua aplicação Java. Leituras de arquivos I/O, Socket I/O e muito mais.

Se você precisa de mais informações sobre o Mission Control, entre na página da ferramenta em www.oracle.com/missioncontrol.

E obrigado ao Markus Eisele por ter cedido parte deste post! :-)

22 fevereiro 2013

Encontro SouJava na Oracle (JMS e Cache Distribuido)

No dia 21 de Fevereiro estreamos o novo escritório da Oracle abrindo as portas para o grupo de usuários do SouJava. Com a presença do Bruno Souza, Ricardo Ferreira, Edgar Silva, Vinicius Senger, Mauricio Leal e muitos outros, tivemos a participação ao todo de 26 pessoas.

Durante a reunião, apresentei As Novidades do JMS 2.0, parte importante do Java EE 7 e que teve votação do Public Review no dia 19/02. O SouJava votou a favor, não só pela qualidade mas também pela transparência da especificação.

A outra apresentação foi do Ricardo Ferreira, falando sobre Processamento de Dados em Memória usando Elastic Data Grid (In-Memory Computing), que demonstrou a importância do uso de cache distribuído em arquiteturas altamente escaláveis, com o Oracle Coherence.

No final, os participantes conheceram o novo escritório da Oracle e ainda foram muito bem recebidos com muita pizza. Confira as fotos do evento!

04 janeiro 2013

7 reasons you had to be at JavaOne Latin America 2012


Yesterday was 12/12/12, and everybody went crazy on Twitter with cool memes like this one. And maybe you are now wondering why I mentioned 7 (seven) on the blog title. Because I want to play numbers? Yes! Today is 7 days after JavaOne Latin America 2012 is over (... and I had to figure out an excuse for taking so long to blog about it...).
So unless you were at JavaOne Latin America this year, here are 7 things you missed:
  1. OTN Lounge mini-theatre
    There was a mini-theatre holding several lightning talks. We had people from SouJava JUG, GoJava JUG, Globalcode, and several other Java gurus and companies running demos, talks, and even more. For example, @drspockbr talked about the ScrumToys project, that demonstrates the power of JSF.


  2. Hands On Lab for JAX-RS and WebSockets
    One of the cool things to do during JavaOne is to come to these Hands On labs and really do something using new technologies with the help of experts. This one in particular, was covered by me, Arun Gupta, and Reza Rahman. The HOL had more people than laptops (and we had 48 laptops!) interested on understanding and learning about the new stuff that is coming within Java EE 7. Things like JAX-RS, Server-sent Events and WebSockets. Hey, if you want to try this HOL by yourself, it is available on Github, so go for it! If you have questions, just let me know!


  3. Java Community KeynoteThis keynote presented a lot of cool things like startups using Java in their projects, the Duke Awards, SouJava winning the JCP Outstanding Award, the Java Band, and even more! It was really a space where the Java community could present what they are doing and what they want to do. There's a lot of interest on the Adopt-a-JSR program and the Adopt-OpenJDK. There's also an Adopt-a-JavaEE-JSRprogram! Take a look if you want to participate and Make the Future Java.

    DSC_1572.JPG
  4. Java EE (JMS, JAX-RS) sessions from Reza Rahman, the HeavyMetal guy
    Reza is a well know professional and Java EE enthusiast from the communitty who just joined Oracle this year. His sessions were very well attended, perhaps because of a high interest on the new things coming to Java EE 7 like JMS 2.0 and JAX-RS 2.0. If you want to look at what he did at this JavaOne edition, read his blog post. By the way, if you like Java and heavymetal, you should follow him on Twitter as well! :-)
  5. Java EE (WebSockets, HTML5) sessions from Arun Gupta, the GlassFish guy
    If you don't know Arun Gupta, no worries. You will have time to know about him while you read his Java EE 6 Pocket Guide. Arun has been evangelizing Java EE for a long time, and is now spreading his word about the new upcoming version Java EE 7. He gave one talk about HTML5 Productivity on the Java EE 7 platform, and another one on building web apps with WebSockets. Pretty neat! Arun blogged about JavaOne Latin America as well. Read it here.
  6. Java Embedded and JavaFX
    If there are two things that are really trending in the Java World right now besides Java EE 7, certainly they are JavaFX and Java Embedded. There were 14 talks covering Java Embedded, from Java Cards to Raspberry.pi, from Java ME to Java on your TV with Ginga-J. The Internet of Things is becoming true, and Java is the only platform today that can connect it all in an standardized and concise way. JavaFX gained a lot of attention too. There were 8 sessions covering what the platform has to offer in terms of Rich User Experience. The JavaFX Scene Builder is an awesome tool to start playing designing an UI, and coding for JavaFX is like coding Swing with 8 hands, one holding your coffee cup. You can achieve a lot, with your two hands (unless, you really have 8 hands, then you can achieve 4 times more :-). If you want to read more about JavaFX, go to Stephen Chin's blog post.

    DSC_1533.JPG
  7. GlassFish and Friends Party, 1st edition at JavaOne Lating America
    This is probably the thing that I'm most proud. We brought to Brasil the tradition of holding a happy hour for all GlassFish, Java EE friends. This party started almost 7 years ago in San Francisco, and it was about time to bring it to Brazil! The party happened on Tuesday night, right after JavaOne General Keynote, at the Tribeca Pub. We had about 80 attendees and met a lot of Java EE developers there! People from JUGs, Oracle, Locaweb and Red Hat showed up too, including some execs from Oracle that didn't resist and could not miss a party like this one.

    Lots of caipirinhas, beer and food to everyone, some cool music... even The Fish walking around the party with Juggy!



    You can see more photos from the party on an album I shared with the recently created GlassFish Brasil community on Google+ here (but you may be more interested in joining the GlassFish english community). There's also more pictures that Arun took and shared on this link.
So now you may want to consider coming to Brazil next year! Java EE 7 is on its way, and Brazil is happily and patiently waiting for it, with a lot of enthusiasm.
https://blogs.oracle.com/brunoborges/entry/7_reasons_you_had_to

GlassFish and Friends Party, 1st Edition at JavaOne Brasil


Estamos muito contentes em anunciar que iremos realizar a primeira edição da tradicional  GlassFish and Friends Party neste JavaOne in Brasil.
O problema é que os ingressos já esgotaram!
Então decidimos realizar um concurso para dar mais 5 ingressos para a comunidade! Aqui estão as regras:
  1. Escreva um post no seu blog sobre o GlassFish
  2.  Poste no Twitter o título e o link do seu post com a hashtag #GlassFish para que possamos saber do seu post
  3. Os 5 melhores posts serão selecionados e anunciados aqui no dia 3 de Dezembro às 19:00 (GMT-3)
  4. Selecionaremos um post de cada autor
  5. Cada autor receberá um ingresso para a festa
Agora corre para a sua plataforma de blog e escreva sobre o GlassFish!
------------- en_US --------------- 
We are very happy to announce that we are going to host the first edition of the traditional GlassFish and Friends Party at this JavaOne in Brasil
The problem is: tickets are already SOLD OUT! 
So we decided to run a simple contest to give away 5 more tickets to the community! Here are the rules:
  1. Blog about GlassFish
  2. Tweet the title and link of your blog post with the hashtag #GlassFish so we can know about your blog post
  3. The best 5 blog posts will be selected and announced here on December 3th at 7pm (GMT-3)
  4. We will select one blog post per author
  5. Each author will get one ticket
Now run to your blog platform and write about GlassFish!

https://blogs.oracle.com/brunoborges/entry/glassfish_and_friends_party_1st

JavaOne 2012: Camel, Twitter, Coherence, Wicket and GlassFish


Before joining Oracle as Product Manager for WebLogic and GlassFish for Latin America, at the beggining of this year I proposed two talks to JavaOne USA that I had been presenting in Brazil for quite a while. One of them I presented last year at ApacheCon in Vancouver, Canada as well in JavaOne Brazil. In June I got the news that they were accepted as Alternate Sessions. Surprisingly enough, few weeks later and at the same time I joined Oracle, I received the news that they were officially accepted and put on schedule.
Tomorrow I'll be flying to San Francisco, to my first JavaOne in the United States, and I wanted to share with you what I'm going to present there.
My two sessions are these ones:
  1. Wed, 10/03, 4:30pm - CON2989 Leverage Enterprise Integration Patterns with Apache Camel and Twitter

    On this one, you will be introducted to the Apache Camel framework that I had been talking about in Brazil at conferences, before joining Oracle, and to a component I contributed to integrate with Twitter. Also, you will have a preview of a new component I've been working on to integrate Camel with theOracle Coherence distributed cache.
  2. Thu, 10/04, 3:30pm - CON3395 How Scala, Wicket, and Java EE Can Improve Web Development

    This one I've been working on for quite a while. It was based on an idea to have an architecture that could be as agile as frameworks and technologies such as Ruby on Rails, PHP or Python, for rapid web development. You will be introduced to the Apache Wicket framework, another Apache project I enjoy working with and gave lots of talks at Brazilian conferences, including JavaOne Brazil, JustJava, QCon SP, and The Developers Conference. You will also be introduced to the Scala language and how to create nice DSLs to boost productiveness. And last but not least, the Java EE 6 platform, that offers an awesome improvement from previous versions with its CDI, JPA, EJB3 and JAX-RS features for web development.
Other events I will be participating during my stay in SF:
  1. Geeks Bike Ride
  2. GlassFish Community Event
  3. GlassFish and Friends Party 

If you have any other event to suggest, please do suggest! It's my first JavaOne and I'm really looking forward to enjoying everything.
See you guys in a few days!!
https://blogs.oracle.com/brunoborges/entry/javaone_2012_camel_twitter_coherence

11 dezembro 2010

Top 10 reasons why I don't like JSF

At this JavaOne Brasil, there was a great discussion about Java Web Frameworks, with folks from Caelum, GlobalCode and Oracle. Arun Gupta, Maiko Rocha, Vinicius and Yara Senger, and many others who came to participate.

The discussion went mostly around what companies and developers should do before choosing a Web Framework. Although I was willing to move the discussion to another level (eg, poiting these 10 reasons), I decided to just take it easy. And as I stated: there's no perfect Web Framework. But there's a perfect web framework for your case.

But now I think it is the right time and place to share my thoughts. Here are my top 10 reasons (mostly non-technical) on why I don't like JSF.
  1. Extra step when defining a project's architecture
    People insist on comparing JSF with other frameworks. They should stop doing that. You can compare MyFaces to RichFaces to Tapestry to Vaadin to GWT. JSF is a specification, not a final product.

    Vendors too insist on marketing JSF as a Web Framework. But they forget to mention that you will be locked-in to their implementation because of lots and lots of non-standard components. It ain't cool.

    You spend a week comparing *one* JSF implementation with other frameworks, and if you chose JSF, you then realize you have an extra step: you have to pick a vendor, an implementation, and then goes another week of POCs, tests and evaluations. And you'll be locked. It is not easy to move from one to another. Specially when you have to use those non-standard components to turn your project on something really functional.

  2. Fragmented Community
    Now, let's say you, developer, works on a project for 6 months, on top of RichFaces. Then you move to another project built on top of MyFaces. Yes, you will have to sign in to another mailing list. To another forum. Different from other products, JSF has no centralized community. If you are working with Wicket, you go to users@wicket.apache.org. If you are working with VRaptor, you go to their Forum. If you are working with JSF, you will need to sign up for at least 3 different mailing lists, sign up for 3 forums and probably, tens of blogs.

    It is not easy to ask for help on a fragmented community. If you face a problem with RichFaces, when you were used to work with ICEFaces, you might end up asking something stupid, and probability is you will be told of a different solution to the same problem.
     
  3. Fragmented Documentation
    If community is important, imagine documentation. You must have bookmarks of all JSF implementations. If you work with GWT, you need only one. If you work with SpringMVC, just go to springframework.org. Also there's the problem of non-standard components. Let's say you are working with Seam, and you have to bind some component to some RichFaces component. Where will you find a documentation about that? There's no such thing. If you are luck, you might find some blog post on Google. Odds you won't find. You will discover by yourself after hours of debugging and tracing, and in the end, you will not blog about that too. You will just move on.

  4. Component Incompatibility
    Well, there's not much to say on this. JSF 2.0 address some issues, but not all of them. Component interoperability between different components can't be easily documented because of JSF's nature. This (documentation) also happens on some non-standard frameworks, but there are others that the core architecture helps a lot the developer to just don't care about this. Wicket is one of them. Components are grained and independent. If you want to interoperate different components, you simply share a Model or deal with events.

  5. Caveats on some scenarios because of different implementations
    This one I heard from a JSF developer. He said RichFaces fires rendering updates in a different way to MyFaces Trinidad. If the developer must be aware of that, odds are you won't find proficient JSF developers.

    I pointed about this one at the Web Frameworks discussion at JavaOne. It is not easy to find a Wicket developer, or a Vaadin developer. But when you find them, probability is they will be proficient, or at least above regular web developers.

    With JSF, which has tons and tons of job offers around the world, but lots of implementations and caveats, probability is that you will easily and quickly find a JSF developer to hire, but he or she won't be proficient. They will be regular developers. I'm not saying this is 100% true. Of course it is possible to find a proficient JSF developer. But with different implementations, it is hard to find one that knows all about of their tricks, tips, issues and secrets.

  6. Designers and developers roles mixed
    Oracle said it has set up JDeveloper or some other inside tool with JSF support to their web designers. Now, this is cool. You teach web designers to define templates, UIs, using the Java IDE. In the end you have the view done and all JEE devs need to do is to bind, code and run.

    This is one way of doing it. But usually, it is not the case. Most companies have Web Designers working on Mac, with Photoshop and Dreamweaver or some other WYSIWYG editor. They are great designers partly because of great tools.

    With JSF, designers and developers mix their work. Designers spend their time templating. Developers spend most of their time fixing broken templates after mixing them with JSF components. Now this, ain't cool at all.

  7. Does not improve usual web development process
    Like I said before, companies are still working with a development process based on: design, template, inject dynamic code, fix design issues, release.

    That's how Java Web development works. If you disagree, please comment on that. But I've been developing web applications for almost 8 years and that's how I see it.

    All frameworks that mix dynamic code on the HTML or some layer that outputs it, doesn't improve the common web development process. Which sucks, IMO. You have Web Designers to do all the prototype. Sometimes, your company pays to a Design shop to do that. And in the end, you have business developers fixing design issues because a pixel here or there is not correctly aligned with that right border.

    Now, there are some frameworks that address this issue quite well. Tapestry is one of them, if not the first. Then there's Wicket, which of course the best practice is to componentize the UI, but it is possible to work only with the prototype. With JSF, you have Facelets. It helps a lot, and I'm sure improves *a bit*. But the development process is beyond working with pure HTMLs and prototypes.

    With JSF, the developer does a lot of SOP - String Oriented Programming. If you are not working with a great JSF-supported IDE, you will end up doing a lot of copy-paste of Strings of method names, property names and bean names.

    Some may argue that Wicket replaces JSTL with Java. It is true. But consider this: if you are working with Wicket and you've already binded your UI, you don't have to look to your HTML again. With JSF, you must look at your ManagedBean and your page to make sure everything is correctly binded. On Wicket, new properties and methods can be added without modifying the UI, and still with JSF you must edit two files to do that. It is one approach, I know. But that does not changes neither improves the development process if you compare to Struts. GWT improves that, just as Wicket, IMO.
     
  8. Non-functional prototype
    Ok, not a big deal. But it sucks a lot when your web designer changes the UI and you must merge those changes. What if you had a functional prototype you can share with your Web Designer? Some frameworks do that. Tapestr and Wicket for example. The output is HTML, your are building HTML, your designer gives you HTML, so why not take advantage of that work done on a previous stage?

  9. Performance
    Just Google for benchmarks comparing JSF with any other Java Web Framework. The lifecycle is just huge.... :-(
     
  10. Web is fast, standards are slow
    Let's take JPA for example. How old is SQL? Since 1974. Hibernate was build based on something that it was already a standard. So it was JPA. It is reasonable to have a specification for that, and totally acceptable to work with. JPA developers won't have problems dealing with different implementations, at least if they do their job right. What about XML frameworks? Mid 90's. My point is. Some specifications are build based on something with limited scope, even though generic, or on something that is already a standard and well-know by the market.

    Now let's take the Web. Although HTML is a specification, and old, it definitely has an unlimited scope. And because of its nature, it is open to innovation and creativity. How to standardize that?! HTML5 is almost there, and we are still waiting for a specification that really improves the Web Development Process. Again, JSF2 is a huge step forward, but too late, and just like to what happened with EJB, people are now afraid of it because its previous version. And that's why people started to choose Rails, Python, GWT and other frameworks.

    Long learning curve. Slow improvements (thanks to JCP). Everything the Web does not need. Everything Agile methodologies are against to.
I did work with JSF before, and I love to be a Java developer. I have my work done with it, and I'm paid because of it. But I felt like being left behind while looking at friends building cool apps, quickly and with good quality, with other languages, other platforms. And if I want to deliver solutions with performance, quality AND speed to my customers, I will think twice before choosing JSF.

Sure it has scenarios or business strategies where JSF is the best option. If there wasn't, Oracle/Sun, IBM, Red Hat and others would not put money on that. For companies that want to make sure they will easily and quickly find a developer to replace another, to keep the work on a JSF project, then, it's a business decision.

Now, from a developer perspective, I prefer to do my projects with something non-standard, while the Web is not standardized, and my customers are not worried about that.

12 novembro 2010

Errar, corrigir, committar - Sobre o JavaOne Brasil

Um programador quando encontra um erro, automaticamente, como que por instinto, sente vontade de corrigí-lo e mandar para o repositório, para ter segundos após, a sensação de um trabalho bem feito. Um orgulho de sí próprio. Às vezes, queremos fazer a mesma coisa na vida real. Com os erros do dia-a-dia, com os erros que envolvem pessoas.

Aproximadamente 3 semanas atrás, me empolguei com uma mensagem da Yara Senger, e submeti para o comitê do JavaOne Brasil, 3 palestras relacionadas à Apache Software Foundation. Soube ao mesmo tempo do The Developers Conference 2010, em Florianópolis, onde meu amigo Rodrigo Cândido, participara da organização. Não hesitei e sugeri à Wdev, cuja empresa agora faço parte, que levasse ainda mais conteúdo para este grande evento. Levamos palestras interessantes. Uma sobre Desenvolvimento para iPad, do Felipe Cypriano, e outra sobre Integração Contínua, do Marcelo Behera. Além das minhas duas palestras sobre projetos Apache (Wicket e Camel); as mesmas que havia submetido para o JavaOne Brasil.


No dia 3 de Novembro, recebi um e-mail do Sharat Chander agradecendo minhas submissões, mas que infelizmente o conteúdo não foi aprovado para o JOBra. Sem razões, sem explicações. E também disse que não é comum enviarem notificações desse tipo. Geralmente o pessoal fica no vácuo.


Ao mesmo tempo, no meio de todos estes eventos, a Oracle com seu processo contra o Google, blogs começam a dizer que a Apache copiou código para dentro do projeto Harmony. Ela esclareceu, mas não encerrou o assunto. De fato, iniciou uma guerra contra a Oracle, em defesa do Software Livre.

Por fim, no dia 8 de Novembro saiu a programação do JavaOne Brasil. Anunciada pela Fabiane Nardon. E obviamente fui conferir a grade, atrás de palestras interessantes e palestrantes a serem prestigiados. Entretanto ao ler o conteúdo, me decepcionei. Por 3 fatores:

  • (tweet, tweet, tweet) Falta de conteúdo relacionado à Apache Software Foundation
  • Conteúdos repetidos (alguns assuntos, com mais de 2 palestras)
  • (tweet, tweet) Metade dos analistas de conteúdo vão palestrar
O que mais me chateou mesmo, foi o primeiro item, e em seguinda o segundo. Com assuntos sendo apresentados mais de uma vez, não seria o caso de pensar melhor na escolha das palestras, e evitar repetição, abrindo espaço para expôr outros projetos? Considerando a Apache com principal fornecedora de projetos Open Source para a plataforma Java?

Claro que fiquei chateado por não ter sido aprovado a participar do JavaOne. Mas frente ao o que está acontecendo, constatei que, não apenas minhas palestras, mas toda e qualquer outra associada à Apache que tenha sido submetida, foi rejeitada, ao que parece, propositalmente. E isso é o que me deixou realmente chateado. E por favor alguém me corrija se eu estiver errado. Seria muito bom saber os reais motivos.

Não reconhecer a Apache, e não incentivar a comunidade brasileira a participar da ASF é ir contra o Software Livre. A falta de palestrantes e palestras entusiasmados com projetos da Apache no evento, ao que parece, é reflexo dos desejos da Oracle.

Pedido de desculpas aos palestrantes
Com toda a minha chateação, e sem refletir bem a respeito, acusei amigos injustamente. É fato que metade dos analistas de conteúdo vão palestrar. Mas como muitos outros eventos, isso é normal. Eu mesmo, por causa da minha amizade com algumas pessoas, obtive espaço no TDC2010. Não bastasse uma palestra, levei duas. E ainda abri espaço para dois outros profissionais.

Acusei amigos injustamente por algo que eu mesmo havia feito alguns dias antes.

Alguns dos analistas são amigos, outros são conhecidos. E muitos outros que irão palestrar, também são meus amigos, de empresas que trabalhei anteriormente. 

Que fique claro: todos os palestrantes selecionados merecem estar lá. Tenho certeza que a escolha foi difícil, e com critérios como +assunto, +técnica, +histórico e +mérito, os melhores palestrantes foram selecionados. Jamais disse algo contrário. 

Por fim, peço desculpas ao Bruno, com quem aprendi muito. À Yara que me incentivou muito para submeter conteúdo ao JavaOne e me deu total apoio no TDC2010. Ao Vinicius (que ironicamente retweetou meu desabafo), Paulo, Guilherme, Bruno Ghisi, Fabiane e Fabio Velloso.

Vocês são excelentes palestrantes e há muito tempo contribuem com a comunidade. Com certeza, estão no evento por mérito.

Um excelente JavaOne Brasil a todos.

Um alô para o Liaw Mike e principalmente ao Michael Nascimento, que me ajudou a enxergar o bug. :-)
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