O documento lista 10 maus hábitos comuns de desenvolvedores JSF. Estes incluem usar tags JSTL para esconder componentes em vez de atributos rendered, alterar estado de componentes no lado cliente, e não entender completamente o ciclo de vida do JSF. O documento fornece soluções como usar atributos rendered, alterar estado via AJAX, e estudar o ciclo de vida do JSF para desenvolver de forma mais eficiente.
MULTIFACETED ROLES OF AUTOPHAGY IN CANCER & NEURODEGENERATIVE DISORDERSPHARMA IQ EDUCATION
1. What is Autophagy
2. Overview of the mechanisms lying behind autophagy
3. Mechanism of autophagy
4. Physiological role of autophagy
5. Role of Autophagy in cancer
6. Autophagy in tumor suppression
7. Autophagy in tumor promotion
8. Role of Autophagy in neurodegenerative diseases
9. Mechanism of autophagy in neurodegenerative disorders
10. Conclusion
11. References
12. Thank You
Como Apresentar Codigo em Slides - Javou #7 - 2016Rafael Ponte
Todo programador cedo ou tarde deverá apresentar código em slides no trabalho, na faculdade ou em um evento. O problema é que apresentar código é bem diferente de escrevê-lo no seu editor preferido. Basta escolher o tamanho de fonte errada e você perde toda a atenção do seu público.
Para você não cair nessa armadilha, eu apresento 5 dicas matadoras para você apresentar código em slides de forma simples e eficiente. As dicas vão desde o tipo de fonte até tamanho e cores.
Esta palestra foi inspirada na palestra "How to present code in slides" do grande @myfear, https://twitter.com/myfear/status/727391833123336192
Perdeu a palestra? Segue resumo de cada uma das dicas: http://blog.triadworks.com.br/como-apresentar-codigo-em-slides
Lidando com o Caos: Testando Código PLSQL em um Projeto CriticoRafael Ponte
Imagine entrar em um projeto critico de uma grande empresa onde todo o desenvolvimento se baseia em integrar diversos outros sistemas mais criticos ainda? Agora, imagine que essa integração ocorrerá toda via banco de dados através de stored procedures, de código PLSQL?
São milhares de linhas de código PLSQL executando toda lógica de negócio que deve rodar com alto desempenho e, principalmente, corretude. Uma simples falha e todo um sistema de Logística pode parar! Como garantir que tudo funciona de forma correta e mais, que tenhamos ao final um código manutenível? Nessa apresentação vamos expor como nossa equipe conseguiu implementar todo esse código PLSQL com qualidade e o melhor de tudo, coberto por centenas de testes automatizados; o uso de testes foi crucial para o sucesso! Some a isso todo o desafio cultural e desconfiança do mercado em testar código PLSQL, a falta de literatura sobre o assunto e a real necessidade de automatizar ao máximo o ambiente de desenvolvimento.
Essa palestra te fará repensar sobre como você programa em PLSQL.
Palestra ministrada no evento Javou #9 da JavaCE em MAR-2017 (http://www.javace.org/javou-09-casos-de-sucesso/) por Rafael Ponte e Eduardo Menezes (edumenezes@gmail.com)
MULTIFACETED ROLES OF AUTOPHAGY IN CANCER & NEURODEGENERATIVE DISORDERSPHARMA IQ EDUCATION
1. What is Autophagy
2. Overview of the mechanisms lying behind autophagy
3. Mechanism of autophagy
4. Physiological role of autophagy
5. Role of Autophagy in cancer
6. Autophagy in tumor suppression
7. Autophagy in tumor promotion
8. Role of Autophagy in neurodegenerative diseases
9. Mechanism of autophagy in neurodegenerative disorders
10. Conclusion
11. References
12. Thank You
Como Apresentar Codigo em Slides - Javou #7 - 2016Rafael Ponte
Todo programador cedo ou tarde deverá apresentar código em slides no trabalho, na faculdade ou em um evento. O problema é que apresentar código é bem diferente de escrevê-lo no seu editor preferido. Basta escolher o tamanho de fonte errada e você perde toda a atenção do seu público.
Para você não cair nessa armadilha, eu apresento 5 dicas matadoras para você apresentar código em slides de forma simples e eficiente. As dicas vão desde o tipo de fonte até tamanho e cores.
Esta palestra foi inspirada na palestra "How to present code in slides" do grande @myfear, https://twitter.com/myfear/status/727391833123336192
Perdeu a palestra? Segue resumo de cada uma das dicas: http://blog.triadworks.com.br/como-apresentar-codigo-em-slides
Lidando com o Caos: Testando Código PLSQL em um Projeto CriticoRafael Ponte
Imagine entrar em um projeto critico de uma grande empresa onde todo o desenvolvimento se baseia em integrar diversos outros sistemas mais criticos ainda? Agora, imagine que essa integração ocorrerá toda via banco de dados através de stored procedures, de código PLSQL?
São milhares de linhas de código PLSQL executando toda lógica de negócio que deve rodar com alto desempenho e, principalmente, corretude. Uma simples falha e todo um sistema de Logística pode parar! Como garantir que tudo funciona de forma correta e mais, que tenhamos ao final um código manutenível? Nessa apresentação vamos expor como nossa equipe conseguiu implementar todo esse código PLSQL com qualidade e o melhor de tudo, coberto por centenas de testes automatizados; o uso de testes foi crucial para o sucesso! Some a isso todo o desafio cultural e desconfiança do mercado em testar código PLSQL, a falta de literatura sobre o assunto e a real necessidade de automatizar ao máximo o ambiente de desenvolvimento.
Essa palestra te fará repensar sobre como você programa em PLSQL.
Palestra ministrada no evento Javou #9 da JavaCE em MAR-2017 (http://www.javace.org/javou-09-casos-de-sucesso/) por Rafael Ponte e Eduardo Menezes (edumenezes@gmail.com)
Uma palestra para explorar o Google App Engine (GAE), uma plataforma de desenvolvimento e hospedagem de aplicações web na nuvem. Aplicativos fáceis de criar, manter e escalar.
Palestrante: Carlos Duarte do Nascimento
Matemático pelo IME/USP e Gerente de Produto no Apontador, faz "artesanato" de software há 20 anos, defendendo plataformas e conteúdo livres.
[Video: http://www.youtube.com/watch?feature=player_detailpage&v=nzo9dcCMi-4#t=1169s ] Palestra que introduz o desenvolvimento de aplicativos na plataforma do Google de forma pragmática, apresentada na 5a. edição (2012) do Campus Party (#cpbr5)
Talk que aborda alguns pontos da programação como SOLID, STUPID, clean code, object calisthenics, composer e algumas dicas pessoais.
Feita para o flisol 2017.
Programação funcional em JavaScript: como e por quê?Arthur Xavier
JavaScript é uma linguagem complexa e perigosa. A ausência de tipagem estática e duck typing, por exemplo, tornam difícil pensar de forma segura sobre as aplicações e garantir um nível mínimo de corretude e sustentabilidade. Programação funcional é um paradigma de programação que pode ser aplicado com sucesso à linguagem para minimizar estes problemas ao mesmo tempo que torna o código mais simples e aumenta o poder de abstração do desenvolvedor.
TechDay: 10 Features do Oracle que voce nao conhecia - CONNECT BY CLAUSERafael Ponte
Todo banco de dados possui features na qual desconhecemos, o que acaba nos levando a soluções mais complicadas ou menos eficientes, com o Oracle não é diferente. Por esse motivo, pretendo apresentar de forma bastante didática uma série com 10 features do Oracle 11g que eu desconhecia e que tem facilitado bastante minha vida desde meados de 2016.
Como primeira feature, apresento o CONNECT BY CLAUSE, na qual nos permite escrever consultas hierárquicas de forma simples levando todo o processamento para dentro do banco de dados. Além disso, também apresento outras maneiras de tirar proveito desta feature no dia a dia.
Apresentação de retrospectiva do ano de 2018 para exibir o que a equipe de desenvolvedores da MDIAS BRANCO obteve com seus tech-talks semanais, conhecidos como TechDays, e mostrando ranking dos profissionais que mais palestraram durante o ano.
Mais conteúdo relacionado
Semelhante a Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Uma palestra para explorar o Google App Engine (GAE), uma plataforma de desenvolvimento e hospedagem de aplicações web na nuvem. Aplicativos fáceis de criar, manter e escalar.
Palestrante: Carlos Duarte do Nascimento
Matemático pelo IME/USP e Gerente de Produto no Apontador, faz "artesanato" de software há 20 anos, defendendo plataformas e conteúdo livres.
[Video: http://www.youtube.com/watch?feature=player_detailpage&v=nzo9dcCMi-4#t=1169s ] Palestra que introduz o desenvolvimento de aplicativos na plataforma do Google de forma pragmática, apresentada na 5a. edição (2012) do Campus Party (#cpbr5)
Talk que aborda alguns pontos da programação como SOLID, STUPID, clean code, object calisthenics, composer e algumas dicas pessoais.
Feita para o flisol 2017.
Programação funcional em JavaScript: como e por quê?Arthur Xavier
JavaScript é uma linguagem complexa e perigosa. A ausência de tipagem estática e duck typing, por exemplo, tornam difícil pensar de forma segura sobre as aplicações e garantir um nível mínimo de corretude e sustentabilidade. Programação funcional é um paradigma de programação que pode ser aplicado com sucesso à linguagem para minimizar estes problemas ao mesmo tempo que torna o código mais simples e aumenta o poder de abstração do desenvolvedor.
TechDay: 10 Features do Oracle que voce nao conhecia - CONNECT BY CLAUSERafael Ponte
Todo banco de dados possui features na qual desconhecemos, o que acaba nos levando a soluções mais complicadas ou menos eficientes, com o Oracle não é diferente. Por esse motivo, pretendo apresentar de forma bastante didática uma série com 10 features do Oracle 11g que eu desconhecia e que tem facilitado bastante minha vida desde meados de 2016.
Como primeira feature, apresento o CONNECT BY CLAUSE, na qual nos permite escrever consultas hierárquicas de forma simples levando todo o processamento para dentro do banco de dados. Além disso, também apresento outras maneiras de tirar proveito desta feature no dia a dia.
Apresentação de retrospectiva do ano de 2018 para exibir o que a equipe de desenvolvedores da MDIAS BRANCO obteve com seus tech-talks semanais, conhecidos como TechDays, e mostrando ranking dos profissionais que mais palestraram durante o ano.
Arquitetura Java - Escalando além do HypeRafael Ponte
É muito comum evangelizarem que hoje em dia uma aplicação somente escala se utilizarmos micro-serviços, containers, cloud computing e muitos outras tecnologias e práticas da moda, do tal do HYPE.
Mas será mesmo? Já se perguntou como as aplicações escalavam ANTES desse hype todo? Que tipos de práticas e tecnologias eram utilizadas? Alias, será mesmo que meu sistema web precisa escalar para centenas ou milhares de usuários?
Nessa palestra (lightning talk) de 15min vamos entender como podemos escalar nosso sistema web SEM se levar pelo hype, partindo de práticas mais simples e baratas até mais as rebuscadas e com um maior investimento. Se você entende pouco ou quase nada sobre como escalar uma aplicação web, então essa palestra é para você!
É muito comum um estagiário de TI após 6 meses de experiência deixar a empresa sem qualquer domínio ou conhecimento técnico para se virar no mercado, ou pior, ele desiste da área devido as dificuldades, cobranças e principalmente frustrações. Não é à toa, a TI é uma das áreas que mais contrata estagiários e ao mesmo tempo uma das que menos investe nesses aprendizes.
A verdade, é que um estagiário deveria (e deve) ser encarado como um investimento de médio-longo prazo em vez de simples mão de obra barata. Uma empresa que investe em um estagiário tem como retorno um profissional motivado e qualificado, acima da média, que absorveu não só conhecimentos técnicos, mas também a cultura da empresa e da sua equipe.
Mas como investir em um estagiário? Como treiná-lo? Nesta palestra compartilharei como a TriadWorks tem investido em seus estagiários e assim formado profissionais competentes no mercado, além dos erros e acertos nesse processo, dessa forma, empresas terão uma boa idéia de como aplicar práticas simples e úteis para treinar e orientar seus aprendizes e, claro, seus futuros profissionais.
Migrations for Java (Javou #4 - JavaCE)Rafael Ponte
Assim como as Migrations no mundo Ruby On Rails, o mundo Java também possui alternativas para evoluir o banco de dados de uma aplicação. Aprenda como você e sua equipe podem evoluir de maneira iterativa e incremental seu banco de dados – já em produção – durante a criação da sua aplicação.
Serão apresentados os problemas e desafios mais comuns de não utilizar uma ferramenta de migrations para gerenciar a evolução do banco de dados, e os benefícios que esta ferramenta traz em ambiente de desenvolvimento e produção.
Também serão apresentados opções de migrations para Java, suas principais diferenças e a experiência do palestrante ao adotar uma dessas ferramentas em projetos com bancos de dados criados do zero, e também projetos que precisam manter o legado.
Hibernate efetivo (IA-2014 / Disturbing the Mind)Rafael Ponte
Mesmo anos após o lançamento do Hibernate ainda é fácil encontrar projetos utilizando o framework de maneira ineficiente, podendo leva-lo a problemas sérios de performance ou até inviabilizar a aplicação. O uso não efetivo do Hibernate está intimamente ligado a erros comuns e más práticas em sua utilização, que vão desde pool de conexões, select n+1, configuração de cache, batch-size até o uso indevido do cache level 1 em processamentos batch e o tratamento de LazyInitializationException.
Palestra ministrada no evento Disturbing the Mind 2014 do Instituto Atlântico (IA).
Mesmo anos após o lançamento do Hibernate ainda é fácil encontrar projetos utilizando o framework de maneira ineficiente, podendo leva-lo a problemas sérios de performance ou até inviabilizar a aplicação. O uso não efetivo do Hibernate está intimamente ligado a erros comuns e más práticas em sua utilização, que vão desde pool de conexões, select n+1, configuração de cache, batch-size até o uso indevido do cache level 1 em processamentos batch e o tratamento de LazyInitializationException.
Palestra ministrada no evento COALTI 2014 a convite do ALJUG (Grupo de usuários Java de Alagoas).
Assim como as Migrations no mundo Ruby On Rails, o mundo Java também possui alternativas para evoluir o banco de dados de uma aplicação. Aprenda como você e sua equipe podem evoluir de maneira iterativa e incremental seu banco de dados – já em produção – durante a criação da sua aplicação.
Serão apresentados os problemas e desafios mais comuns de não utilizar uma ferramenta de migrations para gerenciar a evolução do banco de dados, e os benefícios que esta ferramenta traz em ambiente de desenvolvimento e produção.
Também serão apresentados opções de migrations para Java, suas principais diferenças e a experiência do palestrante ao adotar uma dessas ferramentas em projetos com bancos de dados criados do zero, e também projetos que precisam manter o legado.
Importância dos testes automatizados no dia a diaRafael Ponte
Desenvolver software é uma luta contra complexidade. Cada linha de código que um programador escreve pode ser mais um ponto de falha no software. Para diminuir os riscos é fundamental que o programador e a equipe adotem uma cultura na escrita de testes, de preferência automatizados, para garantir que o software se comporte como esperado durante todo o ciclo de vida do desenvolvimento.
Nesta apresentação explanarei a importância dos testes automatizados de acordo com a cultura ágil, os tipos de testes que podemos escrever, os prejuízos causados pelo não uso de testes, os benefícios obtidos a médio e longo prazo, e as dificuldades ao escreve-los.
Mesmo anos após o lançamento do Hibernate ainda é fácil encontrar projetos utilizando o framework de maneira ineficiente, podendo leva-lo a problemas sérios de performance ou até inviabilizar a aplicação. O uso não efetivo do Hibernate está intimamente ligado a erros comuns e más práticas em sua utilização, que vão desde pool de conexões, select n+1, configuração de cache, batch-size até o uso indevido do cache level 1 em processamentos batch e o tratamento de LazyInitializationException.
Assim como as Migrations no mundo Ruby On Rails, o mundo Java também possui diversas alternativas para evoluir o banco de dados de uma aplicação. Aprenda como você e sua equipe podem evoluir de maneira iterativa e incremental seu banco de dados (já em produção) durante a evolução da sua aplicação.
Desenvolver software é uma luta contra complexidade. Cada linha de código que um programador escreve pode ser mais um ponto de falha no software. Para diminuir os riscos é fundamental que o programador e a equipe adotem uma cultura na escrita de testes, de preferência automatizados, para garantir que o software se comporte como esperado durante todo o ciclo de vida do desenvolvimento. Nesta apresentação explanarei a importância dos testes automatizados de acordo com a cultura ágil, os tipos de testes que podemos escrever, os benefícios obtidos a médio e longo prazo, e as dificuldades ao escreve-los. Será também apresentado algumas ferramentas úteis e relatos da minha experiência na escrita de testes no mercado de trabalho
Greenbar - Testes automatizados na sua empresaRafael Ponte
Experiência de quase 2 anos tentando inserir e manter a cultura de testes automatizados numa empresa. Desafios e as barreiras enfrentadas ao adotar a cultura de testes automatizados nesta empresa, onde acertamos e onde erramos, como a equipe (e isso inclui os gerentes) responderam a mudança e como isso impactou nos sprints e entrega de software.
Os 10 maus hábitos dos desenvolvedores JSFRafael Ponte
Toda tecnologia tende a trazer consigo um novo paradigma de como desenvolver partes específicas de software, contudo, algumas novas práticas nem sempre são entendidas, e algumas vezes antigas práticas permanecem dentro do novo paradigma tornando-se assim maus hábitos, e com JSF não seria diferente.
Aqui será apresentado 10 discussões sobre os maus hábitos mais comuns entre os desenvolvedores JSF, hábitos encontrados não somente entre iniciantes, mas também entre alguns desenvolvedores mais experientes, e por sua vez será apresentado soluções para cada um deles.
6. Quem?
“Rafael Ponte” “Tarso Bessa”
● Desenvolvedor ● Arquiteto Java
● Coordenador do ● Entusiasta Java e JSF
grupo JavaSF ● Membro do Cejug
● Entusiasta Java e JSF ● Trabalha na Dataprev
● Consultor da
TriadWorks
8. A maioria dos desenvolvedores web que já
trabalharam ou trabalham com algum
framework “action-like” acabam tendo
grandes dificuldades ao desenvolverem
com JSF.
36. public void remove(){
Integer id = new Integer(
facesContext.getExternalContext().
getRequestParametersMap().
get(“id”) );
User user = search(id);
if(user != null){
...
}
}