Dicas

Faça você mesmo e mostre na Eventials

Já viu por aí a sigla DIY? Vem do inglês Do It Yourself e significa “Faça você mesmo”. O conceito é bastante claro: em vez de comprar ou contratar alguém para fazer algo que você quer, faça você mesmo.

Esse movimento surgiu no fim dos anos 70 como um contraponto à economia consumista e a ideia de que algumas coisas só podem ser feitas por especialistas. E a internet foi um prato cheio para os adeptos do DIY já que, com simples recursos (sites grátis, blogs, etc), as pessoas comuns puderam começar a compartilhar abertamente seu conhecimento e suas experiências.

E essas experiências são dos mais diversos assuntos: artesanato, mobiliário, gastronomia, eletrônica… Imagine que tudo que você usa e consome pode ser feito por você e não comprado de alguma insdústria. (Ok, nem tudo, nós esperamos sinceramente que você não tente fabricar seus próprios remédios.)

E agora imagine o mais importante: o que é que você sabe fazer que pode ser compartilhado com as outras pessoas? Uma receita especial que todos pedem pra você mandar por e-mail? Aquela dica para arrumar alguma coisa que todo mundo reclama que sai caro consertar? Aquelas reciclagens e ideias simples do seu dia a dia podem ser úteis pra muita gente! Pense um pouco e faça uma lista.

E como nós dissemos antes, com simples recursos você pode compartilhá-las com outras pessoas. E um desses simples recursos é a Eventials! Com a gente você pode gravar e transmitir vídeos com seus ensinamentos usando apenas uma webcam. E, com o recurso de exibição de slides, mostrar  qualquer coisa passo a passo. E, imagine só: se suas aulas repercutirem bem, você pode evoluir para a criação de cursos online e ganhar algum dinheiro na internet.

Quer ver exemplos de coisas que você poderia ensinar? Veja esses tutoriais legais que encontramos:

• Como fazer uma geladeira retrô (esse é demais!)
• Decore a porta da geladeira com ímas de escala pantone
• E se você não quiser usar a geladeira pra guardar bolinhos, faça uma árvore de muffins

Gostou? Comece agora o seu canal de “Faça você mesmo”, crie sua palestra na Eventials.

Melhorando a experiência e page load de suas aplicações WEB com PJAX

Nos dias de hoje, contamos com uma imensa variedade de frameworks que tem como objetivo tornar as aplicações WEB mais responsivas, rápidas, entregando a melhor experiência possível aos seus usuários.

Recentemente, frameworks com este objetivo que tem ganho maior destaque são aqueles focados em client-side, tais como: Backbone.js, Knockout.js e Ember.js. Estes, focados amplamente em client-side, consomem do backend (server-side) somente dados estruturados (JSON), o que demanda um design específico para a aplicação, comumente (ou pelo menos deveria ser) baseado em REST. Porém, as vezes essa abordagem pode ser considerada um tanto overkill ou até mesmo inviável para uma aplicação já existente com uma arquiteutura mais tradicional, onde as páginas são construídas no server-side, utilizando excelentes processadores de templates que já são conhecidos por você. Se este for o seu caso, você pode atacar as melhorias de performance e experiência fazendo uso do PJAX (pushState + AJAX).

A idéia por trás do PJAX é permitir carregar partes específicas de uma página, sem precisar fazer o reload completo ao navegar pela aplicação. Ok, mas aí você deve estar se pergutando: “Qual a diferença do PJAX para um request AJAX comum que faço lá com o jQuery?” Bom, o PJAX usa AJAX é claro, mas usa também o history.pushState. Fazendo uso destes recursos, ao realizar uma requisição PJAX (clicando em um link da sua página) o PJAX carrega o conteúdo (trecho de HTML renderizado no server-side) para dentro de um container que você específica (um DIV por exemplo) e atualiza a URL atual do navegador, sem fazer reload da página (dark magic? não é!). A vantagem disso é que, apesar de estar carregando HTML via ajax, você continua alterando o permalink da página, deixando o usuário utilizar normalmente bookmarks e os botões de voltar/avançar do navegador. Outra coisa que você pode estar se perguntando agora é: “Ok, e se o usuário acessar direto a URL que foi requisitada via PJAX, vai exibir somente o trecho de HTML e quebrar a minha aplicação?”. A resposta é: não vai, explicarei isso mais adiante.

Como pode ser visto na imagem abaixo, essa técnica reduz consideravelmente o número de requests que são feitos ao servidor, principalmente em busca de conteúdo estático (JS, CSS, imagens, etc). No primeiro request (área circulada com cor laranjada), além da página HTML são carregados também os scripts JS. No segundo request (área circulada com cor azul), é carregado apenas o trecho de HTML que alterou e uma imagem que é utilizada neste mesmo HTML. Não houve a necessidade de carregar novamente o conteúdo estático do primeiro request, eles já estão lá!

Agora que você já sabe quais problemas o PJAX resolve, vamos ver como utilizá-lo em sua aplicação. Começando pelo client-side, nós da Eventials utilizamos a lib jQuery-pjax. Com ela, abstraímos toda a complexidade por trás do que foi apresentado nos parágrafos anteriores e habilitar o PJAX com apenas algumas linhas de código.

A primeira coisa que precisamos fazer é marcar quais links da página devem ser requisições PJAX. No exemplo abaixo, na tag anchor adicionamos o atributo ‘data-pjax’ para ‘true’. Isso é necessário para posteriormente selecionarmos estes links e setá-los como PJAX requests.

<a href='/dashboard/attending' data-pjax='true'>Participando</a>

Para fecharmos a implementação no client-side, é necessário adicionar o seguinte código JS:

// setup pjax request.<br />
$(document).pjax("a[data-pjax]", '#main', {type: 'GET', timeout: 10000});

O código de exemplo acima diz ao jQuery-pjax que os links marcados com o atributo data-pjax serão requisições PJAX e irão carregar a resposta destas (trechos de HTML) dentro do div com id #main. Dizemos ainda ao jQuery-pjax que as requisições serão do tipo GET e que terão um timeout de 10 segundos. Estas opções são opcionais, porém aconselho a mantê-las e ainda ajustar os valores para o seu caso. O timeout, neste caso, indica à lib quanto tempo ela deve aguardar pela requisição PJAX antes de fazer um reload completo da página indicada pelo link (no caso do exemplo acima era /dashboard/attending). Este é um recurso interessante, pois a requisição AJAX pode falhar, por qualquer razão que seja, e um reload completo recuperar e mostrar o resultado correto ao usuário.

Como a requisição é feita de forma assíncrona, você pode querer mostrar ainda um indicador de carregamento, para isso, basta adicionar os listeners como no exemplo abaixo:

// setup pjax events.
$(document).on("pjax:beforeSend", function() {
// show a loading animation somewhere.
});
$(document).on("pjax:complete", function() {
// hide loading animation.
});

É isso para o client-side; agora vamos para o backend. O truque desta lib que usamos no client-side é que, quando uma requisição é feita via PJAX, um header chamado X-PJAX é adicionado à requisição. Com isso, nosso backend é capaz de saber se precisa retornar toda a página requisitada (com menus, barras, demais arquivos estáticos, etc), ou apenas o trecho de HTML específico dela.

Aqui na Eventials nós utilizamos Python e Django, portanto fazemos uso da lib django-pjax que nos poupa o trabalho de ler o header X-PJAX em cada requisição HTTP e nos dá formas mais elegantes de lidar com PJAX – usando decorators. No exemplo abaixo, é desmonstrado o uso do django-pjax em uma view da aplicação:

from djpjax import pjax

@pjax("pjax.html")
def my_view(request):
return TemplateResponse(request, "template.html", {'my': 'context'})

Neste caso, se a requisição vier por PJAX o template que será usado para renderizar a resposta será o pjax.html, caso contrário será o template.html. É importante notar que, se você utilizar o decorator @pjax na sua view, ela necessariamente deve retornar um objeto da classe TemplateResponse, esta é uma restrição do próprio django-pjax.

Se o seu backend é escrito em outra linguagem, como PHP, Ruby ou outro, o tratamento de qual HTML será renderizado pode ser um pouco mais manual, mas totalmente possível. Você pode inclusive escrever a sua própria lib que abstraia este trabalho manual, tal como o django-pjax faz. Se fizer isto, contribua com a comunidade 😉

Conclusão

A grande vantagem desta abordagem na minha visão é a facilidade de poder otimizar o carregamento de suas páginas e ainda entregar uma experiência mais fluente de navegação para o seu usuário. Tudo isso, com apenas algumas modificações, sem ter que mudar toda a arquiteutura da sua aplicação. Nós da Eventials esperamos que este artigo possa lhe ajudar a otimizar seu site/aplicação. Muito obrigado!

Germano Fronza
Backend Developer.

Como realizar uma palestra on-line, ao vivo e de alto impacto?

Para quem está acostumado com a dinâmica de palestras  físicas e está iniciando, ou pretende ingressar no universo de palestras on-line e ao vivo, preparamos alguns pontos para serem trabalhados durante a preparação de sua transmissão e assim, melhorar o resultado de sua experiência e trabalho.

Escolha da plataforma (sistema)

Como em todos os mercados, há inúmeras  plataformas para transmissão via internet,  que se propõe atender sua necessidade. Para lhe ajudar a escolher a melhor opção, segue alguns pontos que devem ser analisados:

  • Fluência  do publico alvo: Teste as plataformas como sendo um usuário participante e escolha a  oferece uma experiência compatível com a fluência do seu publico alvo.
  • Custo: Considere o fator “flexibilidade” ao definir uma plataforma pelo preço a ser pago. Lembre-se que a participação do público é sazonal e, hoje você pode ter 500 participantes, já na próxima pode ter 50.
  • Recursos: Defina a dinâmica de sua palestra e teste o comportamento de cada recurso que a plataforma oferece. Você irá ter slides? Irá compartilhar tela? Pretende utilizar vídeos? Precisa de relatórios dos participantes? Sua palestra deve ficar gravada? Entenda suas necessidades e as considere ao tomar a decisão.


Divulgação e venda


Assim como nos eventos físicos, é necessário iniciar a divulgação e prospeção de participantes com certa antecedência e este tempo está relacionado a dois principais fatores:

  • Visibilidade de sua marca ou nome: Se sua marca possui um grande número de seguidores engajados é provável que você conseguirá atrair participantes com rapidez e com isso, pode lançar a divulgação com menos antecedência ou com mais antecedência caso não tenha tantos seguidores assim;
  • Tamanho de mercado: Se seu mercado é grande e está em alta é provável que a demanda por treinamentos e capacitação também estejam. Com isso, o eco-sistema está a seu favor e voce precisará de menos esforço para atrair participantes.

Infra-estrutura

Mesmo que a plataforma escolhida exija o mínimo de requisitos necessários para realizar a transmissão, é importante testar os equipamentos e ambiente para que a experiência proposta a sua audiência seja satisfatória. Para que sua palestra seja bem sucedida, considere validar os itens a seguir:
  • Imagem: Apesar de não ser o principal foco, pois o audio e a apresentação são de maior importância, uma boa captação de imagem estimula a permanência dos participantes e cria engajamento. Com isso, teste a qualidade de sua câmera, teste a iluminação de sua sala, o fundo e utilize a estrutura que lhe deixar satisfeito como usuário;
  • Audio: Fator IMPRESCINDÍVEL. Utilize microfone externo e o posicione próximo de sua boca. Ajuste o volume de captação e procure manter o mais alto possível, entretanto,  certifique-se de que não está “estourando” para os participantes.

Mais dicas sobre os requisitos mínimos de infra-estrutura você encontra em nossa FAQ.

Organização e dinâmica

Agora que você já definiu a plataforma, possui audiência e está com a infra homologada, é essencial usar a criatividade para engajar os participantes e causar impacto positivo. Alguns pontos para você considerar são:
  • Introdução: Chegado a hora de iniciar a transmissão, converse por alguns minutos com os participantes, peça para testarem o audio, video e estabilidade de conexão. Utilize estes minutos para permitir que os participantes ainda ausente possam acessar e consumir o conteúdo integral. Tome cuidado para não levar muito tempo nesta etapa para atrasar o menor tempo possível.
  • Sumário: Monte um sumário e apresente aos participantes após a introdução. Defina como será a dinâmica de perguntas, respostas e combine com os participantes.
  • Moderação: Para que você não precise focar nas interações que acontecem no chat, e assim, poder focar em fornecer conteúdo, conte com um moderador que poderá auxiliar os participantes com dúvidas pontuais ou problemas técnicos.
Não esqueça que ao realizar uma palestra ou transmissão on-line você irá impactar participantes de diversas regiões, e com os mais variados perfis. Com isso, a participação efetiva do participante irá estar suscetível a infra-estrutura do mesmo, como internet, hardware e software. Para ter maior segurança, veicule em sua comunicação os requisitos mínimos e estabeleça uma política clara de reembolso ou estorno da compra.
Tomando estes cuidados, certamente você terá uma experiência satisfatória e poderá aproveitar o que há de melhor em realizar palestras ou cursos on-line, que é a margem de lucro elevada =)
O time da Eventials está a disposição para lhe ajudar e sempre em busca de oferecer a melhor experiência possível através de nossa plataforma.

Saiba o que você precisa para aproveitar ao máximo palestras, cursos ou eventos on-line.

Com freqüência recebemos contatos dos participantes de palestras, cursos ou eventos transmitidos ao vivo pela Eventials apresentando problemas em acessar ao conteúdo transmitido como video.

Conforme recebermos estes contatos, nossa equipe técnica analisa cada caso e identifica possibilidade de melhoria na plataforma, entretanto, boa parte dos problemas apresentados estão relacionados a infra estrutura utilizada pelo participante.

Tendo estes dados em mãos preparamos algumas dicas, que se seguidas, podem lhes proporcionar uma experiência muito satisfatória durante a participação de uma transmissão ao vivo.

Navegadores e Versões

Usuários frequente de internet normalmente possuem navegadores atualizados com a mais recente versão, entretanto, é comum o uso de navegadores desatualizados por usuários menos frequentes.

Para usufruir de todos os recursos oferecidos pela Eventials, sugerimos o uso de navegadores atualizados.
Para atualizar seu navegador clique aqui.

Conexão com a Internet

A tecnologia utilizada pela Eventials tende a priorizar a entrega do audio, slides ou transmissão da tela, reduzindo a qualidade do video conforme a conexão do participante. Consideramos a conexão mínima ideal para assistir as transmissões 1 Mbps.
Clique aqui para saber como testar sua conexão.

Redes protegidas

Muitas palestras acontecem durante o horário de expediente. Com isso é frequente o acesso as transmissões a partir de redes protegidas com proxy ou firewall.

Procuramos trabalhar todos os componentes da Eventials através do protocolo HTTP na porta 80, porém, para streaming nem sempre é possível.

Caso você esteja tentando assistir uma transmissão a partir de uma rede protegida e o video não esteja carregando, solicite ao administrador da rede a liberação do protocolo RTMP / HSL para uma das portas: 80, 443, 1935.
Para mais dicas sobre como participar ou transmitir a partir de redes protegidas clique aqui.

Scripts e Plugins

É necessário estar habilitado em seu navegador o plugin JavaScript, Cookies e Adobe Flash Player.

Estes são alguns itens que podem lhe ajudar  a garantir uma participação satisfatória nas transmissões em que irá participar. Contamos também com uma area de ajuda no formato FAQ para esclarecer dúvidas gerais.

Caso seu problema persista mesmo seguindo todas as recomendações, entre em contato com a Eventials que nosso time esta a disposição para lhe atender.

Aproveite para conferir as palestras que irão acontecer esta semana ou assista a um conteúdo já gravado.

Uma ótima semana a todos.

Separamos o melhor conteúdo para você e seu final de semana.

Semana chegando ao fim e, para quem quer aproveitar o final de semana para consumir conteúdo, preparamos algumas dicas de palestras que aconteceram nos últimos dias.

Palestra com Conrado Adolpho  Falando sobre Marketing Digital e exemplificando o que tem dado certo nos EUA em comparação com o mercado no Brasil;

Palestra com AkitaOnRails Relacionando o ciclo de vida no desenvolvimento de software com a vida e resultados de startups e novas empresas;

Palestra com Tyto Neves  Dando dicas e explanando caminhos para quem atua como fotógrafo amador ou profissional;

Palestra com Diego Eis Compartilhando sua experiência sobre criação e produção de frameworks tendo como referencia a criação do Loca Style;

Palestra com Bruno Domingues da Intel Explanando a evolução e caminhos a serem seguidos no desenvolvimento e testes de aplicações em nuvem.

Para quem gosta de literatura e quer participar de uma transmissão Ao Vivo, assistam neste sábado ao “Encontros e Ideias com Mona Dorf” entrevistando João Anzanello Carrascoza.

Outras palestras com variados temas e abordagens você encontra na Eventials.com

Aproveitem o conteúdo e tenham todos um ótimo final de semana.

Sebrae Startup Day – Transmissão on-line

Foi realizado ontem, aqui em Blumenau, o Sebrae Startup Day, um evento super bacana de apoio ao empreendedorismo e que abordou, basicamente, as melhores práticas para criar uma startup. Tivemos o privilégio de apoiar, em parceria com Sebrae/SC, viabilizando a realização do evento on-line para o público que não pôde estar presente.

O Sebrae Startup Day aconteceu dentro da Feira do Empreendedor e contou com palestras de Yuri Gitahy, fundador da Aceleradora, Vinicius Roveda, fundador da startup catarinense Conta Azul, Cassio Spina da Anjos do Brasil e Maurílio Alberone do StartupBase. Após as palestras, aconteceu o Desafio das Startups, competição em que novos empreendedores puderam apresentar suas idéias para uma banca composta por  investidores, aceleradoras e incubadoras.

Para nós é sempre motivador apoiar esse tipo de iniciativa, principalmente por conta da confiança que o Sebrae-SC depositou e também pelas mais de 200 pessoas de todo o Brasil que puderam acompanhar, ao-vivo, o evento on-line. Somente neste ano,  apoiamos diversos eventos do setor, entre eles o Idéias na Laje com Bob Wollheim, o Epicentro e a 8ª Semana deEmpreendedorismo da FGV (esses dois últimos estão com as palestras em edição para liberação posterior).

Se você não conseguiu participar ao-vivo não se preocupe, nós gravamos e todo o conteúdo já está disponível na Eventials. Para assistir basta acessar a página do Sebrae Startup Day na Eventials.

Valeu Alexandre Souza e Sebrae/SC pela força.

 — Thiago Lima