Autor: Rodrigo Portillo

  • Como Excluir Todas as Postagens do Bluesky de Uma Vez

    Como Excluir Todas as Postagens do Bluesky de Uma Vez

    Atualmente, o Bluesky não oferece uma ferramenta oficial para excluir todas as postagens de uma só vez. Por isso, se você deseja apagar todo o seu histórico de publicações, a solução é automatizar o processo. Com um simples script em JavaScript, é possível realizar essa tarefa de forma rápida e eficiente.

    Tudo o que você precisa fazer é abrir o seu perfil no Bluesky, colar o código no console do navegador e deixar o script trabalhar para você.

    Passo a Passo para Excluir Todas as Postagens do Bluesky

    1. Abra o Bluesky no Navegador
      Acesse o site oficial do Bluesky e faça login em sua conta.
    2. Vá para o Seu Perfil
      Certifique-se de estar na página do seu próprio perfil, onde todas as suas postagens aparecem.
    3. Abra o Console do Desenvolvedor
      • No navegador, pressione F12 ou Ctrl + Shift + I (Windows/Linux) ou Cmd + Option + I (Mac) para abrir as ferramentas de desenvolvedor.
      • Clique na aba Console.
    4. Cole o Código Abaixo no Console
      Copie e cole este código no console e pressione Enter:

    Para evitar travamentos faça aos poucos. Não precisa ser tudo de uma vez, caso tenhas muitas postagens.

    1. Aguarde a Execução
      O script clicará em cada postagem do perfil, abrirá o menu, selecionará a opção “Excluir postagem”, e confirmará a exclusão. Isso será feito automaticamente para todas as postagens.

    Por Que Usar Esse Método?

    Bluesky não oferece uma funcionalidade oficial para excluir múltiplas postagens ou apagar todo o histórico de uma vez. Isso pode ser frustrante para quem quer limpar seu perfil de forma prática. Com este script, você consegue realizar essa tarefa automaticamente, sem precisar excluir cada postagem manualmente.


    Dicas Importantes

    • Seja Paciente: Dependendo do número de postagens, o script pode levar algum tempo para concluir o processo.
    • Revise Antes de Começar: Depois de excluídas, as postagens não podem ser recuperadas. Certifique-se de que deseja apagar todas elas.
    • Evite Interromper o Processo: Não feche o navegador ou troque de aba enquanto o script está rodando.

    Conclusão

    Com este script, você pode apagar todas as postagens no Bluesky de forma prática e automatizada, resolvendo uma limitação atual da plataforma. Essa solução é ideal para quem quer começar do zero ou simplesmente deseja limpar o histórico de publicações.

    Se você gostou da dica, compartilhe com amigos que também usam o Bluesky! 🚀

  • Libere Espaço no iPhone: Dicas Infalíveis para Aproveitar o iCloud!

    Libere Espaço no iPhone: Dicas Infalíveis para Aproveitar o iCloud!

    Uma das principais reclamações que ouço de usuários de iPhone é que, mesmo contratando vários terabytes de iCloud, o espaço do aparelho continua insuficiente. Mas por que isso acontece e como resolver?

    A verdade é que o iCloud não funciona exatamente como um “backup mágico” que libera espaço no seu iPhone. Na realidade, ele é um serviço de sincronização em nuvem, projetado para compartilhar seus dados entre seus dispositivos e manter um backup em caso de perda ou roubo de algum deles.

    No entanto, existem maneiras de usar o iCloud da forma como muitos imaginam – para economizar espaço no iPhone. Abaixo, confira algumas dicas de como otimizar o uso e liberar armazenamento no seu aparelho.

    Dê play caso prefira assistir estas dicas no Youtube ao invés de ler:

    Dica 1 – Configuração econômica do iCloud

    Por padrão, o iPhone está configurado para fazer um backup completo do aparelho, e não apenas de arquivos e fotos. Esse backup pode ocupar quase o mesmo espaço no iCloud que você já consome no seu telefone, já que é uma imagem completa do estado atual do dispositivo. No entanto, a maioria das pessoas não precisa desse backup completo. Se você adquirir um iPhone novo porque perdeu o antigo, por exemplo, reconfigurar o aparelho do zero não é um grande inconveniente – o mais importante é não perder suas fotos e arquivos essenciais.

    Para liberar espaço no iCloud, siga os passos abaixo:

    Abra o app Ajustes, toque no seu nome no topo da tela e vá em iCloud > Backup do iPhone. Desative Fazer Backup Deste iPhone. Isso não desativará o backup das suas fotos.

    Tela de Ajustes:
- Principal
- Conta da Apple

com foco na opção iCloud
    Telas de Ajustes
 - iCloud+  > Backup do iCloud
- Backup > Fazer Backup Deste iPhone desabilitado

    Agora, volte ao menu do iCloud e toque em Fotos. Role para baixo até encontrar a opção Otimizar no iPhone e mantenha-a ativada, caso ainda não esteja. Com essa configuração, o iPhone, quando precisar de espaço, substituirá o arquivo original da foto por uma versão otimizada e mais leve, deixando o arquivo completo apenas na nuvem. Quando você quiser editar ou compartilhar a imagem, o iPhone fará o download da versão final.

    Tela Ajustes
- iCloud + > Fotos
- Fotos do iCloud > Selecionado Otimizar no iPhone

    Dica 2 – Salve as fotos que quer guardar fora da galeria em uma pasta não sincronizada

    Dentro do iPhone, há um app chamado Arquivos, que permite armazenar e acessar documentos, imagens, vídeos, PDFs, e outros formatos diretamente na nuvem ou no aparelho. Ele oferece a flexibilidade de manter esses arquivos exclusivamente na nuvem, liberando espaço no dispositivo.

    Para criar um backup em uma pasta não sincronizada, siga os passos abaixo:

    1. Abra o app Arquivos, toque nos três pontos no canto superior direito e selecione Nova Pasta. Nomeie a pasta como preferir.

    Home do iPhone - App arquivos selecionado
App Arquivos > iCloud Drive > Mais opções abertas selecionando Nova Pasta
    Tela do app Arquivos > iCloud Drive - Pasta Backup selecionada
Tela do app Fotos > botão Compartilhar selecionado e algumas fotos marcadas como seleção

    2. Vá ao app Fotos, selecione as imagens que deseja guardar e toque no botão de compartilhar. Em seguida, escolha a opção Salvar em Arquivos.

    Tela de compartilhamento > Opção Salvar em Arquivos
Tela de Compartilhamento iCloud Drive > Backup, com o texto "A Pasta Está Vazia"

    3. Volte ao app Arquivos e aguarde o upload ser concluído. Depois, pressione e segure a pasta recém-criada até que apareçam as opções e toque em Remover Download. Com isso, essas fotos ficarão salvas somente na nuvem, sem ocupar espaço no seu iPhone.

    App arquivos > Backup > Sincronizando
App arquivos > Opções de Pasta > Remover Download

    4. Por fim, retorne ao app Fotos e exclua as imagens que você acabou de fazer o backup. Elas permanecerão acessíveis pelo app Arquivos sempre que precisar.

    Dica 3 – Use a câmera de forma inteligente

    A câmera do iPhone pode ser sua aliada ou inimiga na hora de economizar espaço e dados. Muitas vezes, ao buscar a melhor qualidade possível, fazemos ajustes que acabam sendo desnecessários para nossas necessidades do dia a dia.

    Um exemplo é o sensor de 48MP do iPhone, que, por padrão, gera fotos de 12MP. Isso acontece porque o iPhone utiliza um processo de pós-produção que combina e seleciona pixels para otimizar a iluminação da imagem, resultando em uma foto mais leve de 12MP. Apesar de usar os 48MP, o sistema reduz a imagem de forma inteligente, mantendo a qualidade ideal para redes sociais.

    Por outro lado, o iPhone oferece o modo ProRAW, que gera imagens de 48MP com pouquíssimo pós-processamento, criando arquivos até 10 vezes maiores. A imagem fica mais “lavada”, ideal para quem quer editar posteriormente com maior controle das cores e detalhes.

    Quando falamos de vídeo, as opções se expandem. Embora o iPhone permita gravar em várias resoluções e fps, é bom lembrar que plataformas como Instagram e TikTok utilizam apenas 1080p, tornando desnecessário gravar em 4K – a menos que você pretenda aplicar zoom na edição.

    Há também o modo Cinema, que adiciona informações de profundidade, criando o famoso efeito de desfoque no fundo. Isso, junto com o HDR, aumenta significativamente o tamanho dos arquivos. Se o desfoque não for importante para você, evite usar esse modo.

    O modo Câmera Lenta, apesar de impressionante, consome uma quantidade enorme de memória, especialmente nos modelos iPhone 16 e 16 Pro, que têm resoluções maiores. Use com cautela, principalmente em vídeos longos.

    Por fim, o modo ProRes é voltado para profissionais de vídeo. Com uma média de 6GB por minuto, ele é extremamente pesado e gera vídeos crus, sem pós-processamento, perfeitos para edições detalhadas. No entanto, para a maioria dos usuários, o uso desse modo deve ser evitado.

    Para ajustar as configurações ideais para suas necessidades, vá até o app Ajustes, selecione Câmera e ajuste conforme suas preferências. Não se esqueça de ativar a opção Alta Eficiência em Formatos para garantir que suas fotos e vídeos sejam salvos em HEIF, um formato mais leve e compatível com sistemas e aplicativos modernos.

    Lembre-se que, a qualquer momento, você pode, diretamente na câmera, você pode fazer algum ajuste no momento de usar a câmera.

    App Ajustes > Câmera
Opções de Câmera
    App Ajustes > Camera > Opção Formatos marcado como Alta Eficiência
Destaque nas opções das fotos, no app de Camera

    Em conclusão, liberar espaço no iPhone vai muito além de apenas contratar mais armazenamento no iCloud. Compreender como o iCloud funciona como uma ferramenta de sincronização, ajustar corretamente as configurações de backup e otimizar o uso da câmera são passos essenciais para evitar a falta de espaço no dispositivo. Além disso, usar o app Arquivos para criar pastas não sincronizadas e escolher formatos mais eficientes como o HEIF garante um uso mais inteligente da memória. Seguindo essas dicas, você poderá aproveitar ao máximo o iCloud sem comprometer o desempenho ou o armazenamento do seu iPhone.

  • Vazamento de Dados

    Vazamento de Dados

    Transcrição:

    — Rápido! Está havendo um vazamento de dados! Precisamos fazer algo!
    — Como você soube desse vazamento?
    GIF de uma goteira no cabo de rede

  • Como centralizar verticalmente elementos HTML com CSS

    Como centralizar verticalmente elementos HTML com CSS

    Uma das coisas mais comuns, mas ao mesmo tempo mais chatas de se fazer no CSS é alinhar verticalmente elementos em tela. Existem várias formas de fazer isso. Neste post, vou elencar as minhas formas favoritas de fazer isso.

    Alinhamento com Flexbox

    Flex é uma propriedade incrível do CSS que permite organizar elementos. Se outrora tínhamos que fazer inúmeras gambiarras com float, o flex nos permite controlar o comportamentos dos filhos de um container. Para centralizar verticalmente um objeto, podemos usar a direção de coluna, em seu container pai.

    Alinhamento com position

    Com um pouco de matemática, conseguimos fazer um alinhamento vertical com o position absolute. Porém, é importante lembrar que o objeto será flutuante e que seu pai, necessariamente, precisa ser um position relative. O problema de usar esse tipo de alinhamento é que o conteúdo da posição precisa ser fixo. Felizmente, hoje, conseguimos fazer cálculos com variáveis de CSS, o que facilita a forma de implementarmos essa técnica. A vantagem dessa técnica é poder usar, justamente, em ambientes flutuantes que se sobreponham. Porém, caso você não precise que ele se alinhe ao pai, mas à viewport, você pode usar também o position como fixed.

    Alinhamento com Grid

    Outra forma moderna de alinhar verticalmente é através do uso de grids. A vantagem de usar grids é que o tamanho do conteúdo do elemento alinhado corresponderá ao tamanho da grid que se deseja utilizar. Ou seja, é adaptável de acordo com a viewport, e não referente ao seu conteúdo. Para isso, basta definirmos a quantidade de colunas e linhas que desejamos e estabelecemos onde o objeto alinhado vai iniciar e terminar.

    Exemplo de uso (Modal Alinhado ao Centro)

    Para mostrar como pode ser usado os alinhamentos, que tal criarmos um simples modal alinhado ao centro da tela?

    Um modal é composto por uma cortina que reveste o conteúdo original, seguido de um painel com alguma informação dentro. É convenção de que os modals carreguem essas informações no centro da tela, afim de que a informação fique direcionada e encapsulada, levando, assim, o usuário à uma atenção maior àquela informação. Ou seja, isolar e destacar. O exemplo abaixo foi feito usando a primeira estratégia de alinhamento vertical aqui apresentada, pois, desta forma, o tamanho do modal que vai ser a referência para a centralização. Alguns efeitos foram adicionados para ilustrar melhor.

  • Quais as Novidades da Próxima Atualização do Windows 10?

    Quais as Novidades da Próxima Atualização do Windows 10?

    — Precisamos urgente de novidades para a próxima atualização do Windows 10!
    — Colocar clima e anúncios na barra de tarefas!
    — Windows Hello com suporte a duas câmeras!
    — Que tal corrigir o sistema de arquivos, implementar o Fluent Design e entregar o novo File Explorer?

    Velho Bit é jogado pela janela do escritório da Microsoft

  • Entendendo Lógica de Programação

    Entendendo Lógica de Programação

    Transcrição:

    Placa: SE SEU CÃO FIZER COCÔ, COLOQUE-O NO SAQUINHO
    — cãozinho do Velho Bit faz cocô
    — Velho Bit deixa o cocô perto da placa e sai com o cãozinho dentro de uma sacola

  • Como adicionar e remover dinamicamente campos HTML em um Formulário? (Javascript puro)

    Como adicionar e remover dinamicamente campos HTML em um Formulário? (Javascript puro)

    O Javascript nos permite criar conteúdos dinâmicos e podemos usar isso para adicionar remover e adicionar elementos de acordo com as opções do usuário. Dados como informações sobre dependentes, links de mídias sociais, e-mails adicionais, etc. são curtos e não fazem sentido criarmos um formulário separado apenas para estes. Por isso, é interessante incluirmos a opção de adicionar diretamente esses campos em um subformulário dinâmico.

    Obs. Se quiser ir direto para o código final, procure o link do JsFiddle no final do post.

      
    

    HTML

    Para iniciarmos, basta criar um container no HTML onde você quer que os elementos sejam exibidos, além do botão simples de adição e um botão de captura de dados, para que, desta forma, possamos enviar o JSON resultante para o back-end.

    A organização dos containers é sempre muito importante quando trabalhamos com Javascript e nos dedicamos ao uso correto da web semântica.

    Javascript

    Como de praxe, usaremos o Javascript puro para realizar essa tarefa, dessa forma você poderá usar em qualquer lugar o que aprender aqui.

    Para poder capturar e devolver os dados, usaremos um objeto JSON, dessa forma fica fácil remontar, tanto no back-end, quando no front-end, os dados nas formatações e/ou elementos que precisamos.

    Vamos criar, como exemplo, o JSON abaixo, e vamos declará-lo em uma variável global chamada dependentes, seguindo a ideia de um cadastro de lista de dependentes, então temos:

    Agora vamos nos focar nas funções. A primeira coisa que vamos fazer é criar um método que pegue os dados do JSON e o converta para elementos HTML renderizados na tela. Dessa forma, usaremos um laço para ler o JSON e aplicamos seus dados em uma template string e o adicionamos no container específico:

    Agora vem o segredo que facilita o processo e o deixa mais organizado. Ao invés de remover e adicionar os elementos na tela, iremos nos focar em remover e adicionar do JSON e, em seguida, regenerar os elementos a partir desse objeto. Ficando, assim, com um código mais limpo. Outro motivo pelo qual usamos a regeneração dos elementos é para evitar criarmos IDs únicos temporários. Ao regenerar, podemos usar os índices do próprio array como identificador.

    Para adicionar um novo item, basta incluirmos um dado vazio no JSON, porém, seguindo nosso modelo, e mandamos gerar novamente os elementos:

    Para remover, similar a criação de um novo, vamos usar um laço, porém para adicionar o evento aos botões de excluir. Usaremos então o método splice para remover o array. Depois, obviamente, vamos regenerar os elementos a partir da função carregarDependentes():

    Uma vez que adicionamos uma nova linha em branco precisamos salvar seu preenchimento e aí iremos usar a mesma lógica de remoção, mas usaremos o splice para substituir e não para remover um dado do JSON. Porém, adicionaremos uma pequena validação para evitar entrar dados incompletos:

    Um outro método que precisamos adicionar é uma forma de bloquear para que um usuário consiga clicar em outros elementos ao redor, sem antes finalizar a edição do item. Para isso, iremos fazer um laço que adiciona uma classe de CSS, que vamos chamar de disabled, em todos os elementos, exceto o que está sendo editado. Essa classe possui um point-events: 0 e um opacity: 0.5. Para demonstrar que está desativado, você pode ainda adicionar outros efeitos, como filtros de baixo contraste ou escala de cinza.

    Agora, antes de continuarmos, vamos revisitar as funções acima para chamar, quando necessário, uma função dentro da outra (leia os comentários no código para entender), ficando assim:

    Agora, tudo o que precisamos fazer é incluir os comandos de inicialização, onde aplicamos o método de adição ao evento de clique do botão e carregamos os dados iniciais do JSON:

    Por fim, vamos criar uma função para o botão de capturar dados apenas para extrair e mostrar os dados em JSON. Você pode, eventualmente, usar esses dados e enviar via POST, por AJAX ou via campo oculto, e pegar no back-end para guardar ou processar os dados (como com um json_decoder, do PHP):

    CSS

    O único CSS que precisaremos usar é para aplicar a classe disabled. Se por acaso você está usando algum framework CSS, recomendo que você use o relativo a esta classe deste. Consulte a documentação, onde geralmente está relacionado aos helpers:

    Se você quer usar o CSS mais elaborado que usei aqui, veja abaixo o link do JsFiddle.

    Finalizando

    Criar formulários dinâmicos auxilia a usabilidade à medida que permite que o usuário adicione dados de forma mais rápida e com respostas visuais imediatas. O uso aqui do Javascript puro visa a facilidade para que você possa implementar em quaisquer projetos, incluindo os com Typescript. Trabalhe um pouco no código para adequá-lo à sua necessidade. E, como sempre, você poderá puxar o código e testar direto do JsFiddle.

    Aproveite e entre para nosso grupo de discussão no Telegram.