Novas ideias do Observable Framework
- O Observable Framework é um gerador de sites estáticos que compila uma mistura de Markdown e JavaScript em páginas interativas de carregamento rápido.
- Ele oferece um servidor com hot reloading que permite editar e salvar arquivos em tempo real e ver imediatamente as mudanças no navegador.
- Quando o trabalho é concluído, é possível convertê-lo em arquivos estáticos para implantar em um servidor ou publicar diretamente na plataforma de compartilhamento do Observable.
JavaScript dentro do Markdown
- Blocos de código dentro do Markdown marcados com a tag
js são executados como JavaScript no navegador do usuário.
- Uma variável especial chamada
now fornece a hora atual em milissegundos desde a época Unix e é atualizada continuamente.
- O Observable Framework integra Markdown e JavaScript em um único documento de texto para criar documentos interativos.
Tudo ainda é reativo
- O Observable Framework mantém a reatividade dos notebooks do Observable e se atualiza automaticamente quando outras células das quais depende mudam.
- Isso é especialmente útil ao trabalhar com entradas de formulário e permite adicionar interatividade em tempo real aos documentos com facilidade.
Inclui apenas o código usado
- O Observable Framework implementa lazy loading no modo de desenvolvimento para carregar apenas o código que está sendo usado.
- Ao compilar e implantar a aplicação, apenas o código das bibliotecas referenciadas é carregado automaticamente a partir da CDN jsdelivr.
Cache de dados no tempo de build
- O Framework gera os dados de dashboards no tempo de build por meio de um mecanismo de data loaders e os empacota como arquivos estáticos.
- Data loaders são scripts que podem ser escritos em qualquer linguagem de programação, executados no tempo de build e com sua saída salva em arquivos.
Comparação com os notebooks do Observable
- O Observable Framework reutiliza ideias e código dos notebooks do Observable, mas é composto por um único arquivo de texto e é totalmente open source.
- Ele usa JavaScript padrão e pode ser versionado no Git com um formato de arquivo mais simples.
Mudança de estratégia
- O Observable Framework representa uma mudança estratégica da empresa Observable em direção ao espaço de ferramentas para desenvolvedores.
- Junto com o respeito pela tecnologia dos notebooks do Observable, o Observable Framework resolve problemas que limitavam seu uso por causa da natureza proprietária da plataforma e das restrições das contas gratuitas.
Opinião do GN⁺
- O Observable Framework é uma nova ferramenta para visualização de dados e construção de dashboards, com potencial para oferecer melhor colaboração e eficiência aos desenvolvedores.
- A plataforma facilita a criação de documentos e dashboards interativos que apoiam a tomada de decisões orientada por dados, o que deve torná-la útil tanto para cientistas de dados quanto para desenvolvedores.
- No entanto, o sucesso do Observable Framework dependerá fortemente da adoção pela comunidade de desenvolvedores e do grau de integração com as ferramentas existentes.
- Outros projetos com funcionalidades semelhantes incluem Jupyter Notebook e R Shiny, e compará-los pode ajudar a entender melhor os pontos fortes e fracos do Observable Framework.
- Ao adotar o Observable Framework, é importante considerar fatores como compatibilidade com pipelines de dados existentes, otimização de desempenho e suporte da comunidade.
1 comentários
Comentários do Hacker News
O Observable Framework é comparado a "Vingadores: Ultimato" dentro do universo cinematográfico de Mike Bostock.
É mencionado que há um problema ao usar o Observable Framework como recurso de exemplos de d3.
É mencionado que o Observable Framework pode ser publicado facilmente em sites do GitHub.
É compartilhada a experiência de concluir o primeiro projeto usando notebooks do Observable.
É compartilhada uma experiência positiva com o Observable Framework.
É levantada a pergunta sobre a necessidade de migrar de notebooks Jupyter para Observable.
É explicado que, se houver uma dica de conteúdo
jsdentro de um bloco de código, ele será executado imediatamente no navegador do usuário.js echo.É mencionado que o Observable se integra bem com a REST API do ClickHouse, e que o exemplo de consultar o banco de dados em tempo real é interessante.
Foram configurados devcontainers do Codespace com ambientes Node e Python preparados automaticamente para que seja possível testar e mexer rapidamente no Framework no navegador.
É apresentada a opinião de que o Observable limita sua base de usuários ao oferecer suporte apenas a JavaScript.