Elmord's Magic Valley

Software, lingüística e rock'n'roll. Sometimes in English.

I am chaos, and I tell you that you are free

2018-12-19 00:16 -0200. Tags: random, life, mind

[…] This was on the fifth night, and when they slept that night each had a vivid dream of a splendid woman whose eyes were as soft as feather and as deep as eternity itself, and whose body was the spectacular dance of atoms and universes. Pyrotechnics of pure energy formed her flowing hair, and rainbows manifested and dissolved as she spoke in a warm and gentle voice:

I have come to tell you that you are free. Many ages ago, My consciousness left man, that he might develop himself. I return to find this development approaching completion, but hindered by fear and by misunderstanding.

You have built for yourselves psychic suits of armor, and clad in them, your vision is restricted, your movements are clumsy and painful, your skin is bruised, and your spirit is broiled in the sun.

I am chaos. I am the substance from which your artists and scientists build rhythms. I am the spirit with which your children and clowns laugh in happy anarchy. I am chaos. I am alive, and I tell you that you are free.

Principia Discordia, pages 00008-00009.

Comentários

Remember what I told you / If they hated me they will hate you

2018-10-08 21:39 -0300. Tags: music, politics, life, mind

Faz uns dias que essa música anda na minha cabeça (letra, tradução).

I'll just leave this here.

Comentários

(finish-output mestrado)

2018-01-30 22:27 -0200. Tags: life, academia, mestrado

Gandalf: "Excellent work, Frodo. You defeated Sauron and now... hm! Now everyone can have happy lives forever. Thanks to you."

Frodo: "I know. I just wish... I could forget."

The Lord Of The Rings (1944)flyingmoose.org

Leitouros e leitouras,

Pous que o infindável mestrado findou-se. Ainda falta a homologação da secretaria e da comissão da pós (e é por isso que é um finish-output e não um close), mas, tendo recebido o joinha da banca, orientadores e biblioteca, creio que só o que me resta agora é começar a rodar o garbage collector mental para desentupir o cérebro, e fazer a dança da vitória.

A monografia, para quem (insanamente) quiser ver, está aqui.

11 comentários

Resolução de ano novo

2018-01-01 22:55 -0200. Tags: life, mind, about

Eu não sou muito fã de resoluções de ano novo, por uma variedade de motivos, mas como resolução tentativa de ano novo eu escolho a seguinte:

Preocupar-se com as coisas que importam, e não se preocupar com as coisas que não importam.

Obviamente, o que importa e o que não importa é inteiramente subjetivo. Mas isso não importa.

Desejo a todos um feliz ano novo, e espero em breve voltar a escrever mais por aqui.

1 comentário

Some thoughts on Twitter and Mastodon

2017-06-25 01:32 -0300. Tags: comp, web, privacy, freedom, life, mind, in-english

Since the last post I've been using Mastodon as my primary microblogging platform for posting, but I was still regularly reading and retweeting stuff on Twitter. A while ago Twitter started reordering tweets in my timeline despite my having disabled that option, just as I said could eventually happen (except much earlier than I expected). The option is still there and is still disabled, it's just being ignored.

Twitter brought me much rejoicing during the years I used it. I follow a lot of cool people there and I've had lots of nice interactions there. I found myself asking if I should accept some abuse from Twitter to keep interacting with those people, and I've been shocked at myself for even asking myself that. I've been using Twitter less and less as of late. (I'd like to be able to say I did it out of principles, but to be completely truthful I find the non-chronological timeline utterly annoying, and that has had as much to do with my leaving as principles.)

Although I switched to Mastodon as my Twitter replacement, Mastodon is not really "another Twitter". Having 500 rather than 140 characters to write initially felt like learning to talk again. Early on when I started using Mastodon, I was going to reply to a person's toot (that's what posts are called in Mastodon) with a short, not-really-one-full-sentence line that is the norm in Twitter. I wrote it down and was like "no, this kind of grunting a half-thought is not going to cut it here". It felt like Twitter's 140 character limit not only limited the kinds of things you could say, but also imposed/favored a "140-character mindset" of not finishing lines of thought or thinking with much depth. As I went on using Mastodon, I found myself writing thoughts I wouldn't have even tried to write in Twitter.

I still open up Twitter once in a while. Today I opened the mobile version in my desktop browser and noticed that the mobile version still shows a chronological timeline, still doesn't pollute the timeline with liked-but-not-retweeted tweets, and is much faster and cleaner than the desktop version. (I still have to un-fix the navigation bar via CSS, but I already had to do that in the desktop version anyway.) It's tempting to start using Twitter again through the mobile version, while it doesn't catch up with the new "features". I know I shouldn't, though. Even if the mobile version never caught up with the misfeatures (I suppose it eventually will, probably in short time), Twitter has already shown they're willing to throw stuff down their users' throats in the name of – what? I'm not even sure. Maybe they want to make Twitter more Facebook-like to attract Facebook users, even if that means alienating the people who used Twitter exactly because it was not like Facebook?

The funny thing is Twitter could simply provide some options for users to control their experience ("(don't) show tweets liked by your followers", "(don't) show tweets you liked to your followers", "(don't) reorder tweets" (the last one is already there, it just doesn't work)). This way they could cater to whatever new audience they have in mind and keep the users who liked how Twitter used to work. They just don't care to. I'm not really sure what are the motivations and goals behind Twitter's actions. For a really long time before the last changes it had been showing the "you might like" box (even if you clicked the "show me less like this" option (the only way to dismiss it) every time) and the "you might like to follow" box (even if you dismissed that too, and even though it also showed undimissable follow suggestions on the right pane anyway). I used to open Twitter pretty much every day, so it didn't really make sense as a user retention strategy. Maybe they want to incentivize people to do specific things on Twitter, e.g., throw in more data about themselves? (Yeah, there was the "add your birthday to your profile" periodic thing too.)

Meh.

3 comentários

Essa vida mulambda

2016-09-14 23:23 -0300. Tags: about, life, mind

Pois então, galera. Faz um bocado de tempo que eu não dou as caras por estas terras de Entre-Douro-e-Minho, por uma porção de motivos.

Emprego

Eu comecei a trabalhar no final de julho, o que me deixou com menos tempo livre para dedicar às atividades blogareiras. Além disso, eu chego em casa com variáveis graus de cansaço, e conseqüentemente menos inclinado a sentar e escrever. (Ultimamente eu tenho chegado menos cansado do que inicialmente, talvez porque eu agora eu já tenha me acostumado melhor com a rotina. Mas eu ainda continuo chegando com uma certa dose de zonzeira na cabeça, o que eu desconfio que tem mais a ver com o barulho do ônibus e do ar-condicionado do serviço do que com cansaço em si, mas ainda não testei essa hipótese.)

Quanto ao trabalho, está sendo bem bacaninha. Estou trabalhando como desenvolvedor Python, que das linguagens mais mainstream acho que é a que eu mais gosto, e tenho aprendido bastante coisa sobre as tecnologias da modinha (plot twist: elas são úteis). A única coisa não muito empolgante é que estamos trabalhando sobre uma codebase herdada de uma outra empresa, e que foi desenvolvida usando técnicas de programação um tanto quanto, digamos, interessantes.

Outra coisa que eu descobri por lá é que o futuro do subjuntivo irregular ("fizer", "tiver", etc.) está mais morto do que eu pensava, mas isso é assunto para outra ocasião.

Mestrado

Outra coisa que eu tinha (e tenho) tomando meu tempo livre é o mestrado, e o tempo que não era comido pelas atividades do mestrado era comido pela preocupação de achar que devia estar fazendo as atividades do mestrado. Depois de ter tido um segfault na cabeça no fim-de-semana retrasado tentando terminar um paper para semana passada, eu decidi parar de me preocupar com o mestrado por enquanto, o que em termos de saúde mental parece ter sido uma ótima decisão. Eu pretendia falar um pouco mais sobre a situação do mestrado, mas acho que vai ficar para depois de eu o ter concluído (ou de eu ter sido chutado dele por timeout).

Mudança de workflow

Normalmente, meu workflow para escrever um post é: (1) pegar um tópico; (2) escrever sobre o tópico até exaustão (tanto do tópico quanto do autor) por qualquer quantidade de tempo entre duas e oito horas; (3) reler o post (com variáveis graus de exaustividade) para ver se ficou algum erro de digitação ou redação; (4) publicar o post (e descobrir erros depois anyway). Às vezes eu até começo em um dia e continuo em um outro, mas no geral vai tudo em uma sentada. Uma conseqüência disso é que eu já sei de antemão que escrever um post vai tomar um bocado de tempo, então eu acabo só me sentindo inclinado a escrever quando eu sei que vou ter rios de tempo livre sem interrupções. (Outra conseqüência disso são os famosos posts de 20k, tão apreciados pelos leitores.)

Agora que eu não tenho mais rios de tempo livre contíguo com tanta freqüência, esse workflow está sendo um tanto quanto sub-ótimo (vide quantidade de posts nos últimos dois meses). Estou pensando se não é o caso de eu começar a escrever posts menores e splitar tópicos em múltiplos posts, mas não sei até que ponto isso é uma boa idéia. Faz umas semanas que eu tenho pensado em escrever um post sobre alguns fatos [que eu acho] interessantes sobre os números nas línguas indo-européias, mas isso é um post que tomaria bastante tempo tanto para a escrita em si quanto para pesquisar/conferir os fatos antes de escrever. Não sei se faz sentido separar o tópico em múltiplos posts e ir postando uma série de posts pequenos, ou se é melhor escrever um post só em várias sentadas e publicar tudo de uma vez no fim do ano. Eu prefiro ler esse tipo de informação toda de uma vez, mas eu sei que pelo menos alguns dos leitores não partilham da mesma preferência. (On the other hand, eu não sei se esses mesmos leitores leriam a mesma informação espalhada em múltiplos posts. So there's that.)

Mas essa é a sua opinião, ele já tem outra opinião, ué. Qual a sua opinião?

On another note

Unrelated com qualquer coisa, por ser ano eleitoral, eu implementei a mui lendária e prometida lista de comentários recentes na sidebar do blog no domingo passado. Espero que ela traga muitas alegrias a todos. Votem em mim para déspota universal.

12 comentários

Anúncio: Estou procurando trabalho

2016-07-06 22:27 -0300. Tags: life, about

[Update (20/07/2016): Consegui um emprego. Dismiss!]

Pois então, galera. Por um momento eu achei que ia conseguir uma vaga como professor substituto no INF e todos os meus problemas financeiros estariam resolvidos (pelo menos durante o um ou dois anos de validade do concurso). Alás*, embora eu tenha conseguido um 9,8 na prova escrita do concurso, o pessoal que tinha doutorado passou na minha frente na pontuação por títulos e publicações, e eu acabei em 3º lugar. Ainda pode ser que me chamem no decorrer dos próximos dois anos, mas infelizmente eu preciso comer e pagar as contas nesse meio tempo.

Assim, estou atrás de trabalho. Isso inclui tanto empregos (como desenvolvedor, sysadmin e afins, e também como professor, instrutor, etc.) quanto serviços como free-lancer (com desenvolvimento de programas, sites, instalação e suporte de redes e servidores, e até formatando o PC e desinstalando as toolbars dos seus conhecidos).

Se você souber de alguma oportunidade, ou puder me recomendar para alguma empresa ou conhecido, ou tiver alguma dica, ou qualquer outro feedback, queira entrar em contato (ou passar meu contato, conforme aplicável). Se alguém quiser meu telefone para passar para alguém, pode me pedir por e-mail (no momento eu estou um pouco receoso de pôr meus telefones online, mas talvez eu acabe fazendo isso). Dou preferência para oportunidades na grande Porto Alegre, ou serviços que eu possa realizar remotamente, mas dependendo do emprego posso considerar me mudar.

Meanwhile, eu pretendo voltar a trabalhar em projetos pessoais, pois (1) pode ser que minhas experiências com linguagens de programação rendam alguma coisa que eu possa pôr no curriculum; (2) eu espero aprender um bocado de coisas com eles (em particular, eu tenho pensado em reviver o lows como testbed para experiências com sistemas de tipos e outras features, e para experimentar com técnicas de compilação); e (3) uma sábia esquimó uma vez disse: "Não deixe de fazer as coisas que gosta no presente pra poder fazer elas no futuro – pode ser que o futuro nunca chegue", e cada vez isso me parece mais verdade.

_____

* Turns out que alas vem do francês arcaico "a las". "Las", por sua vez, vem do latim "lassus", cansado (cf. lasso, lassidão). Visto a origem latina da palavra, eu me vejo ainda mais inclinado a incorporar "alás" à língua portuguesa.

5 comentários

Land

2016-06-11 22:50 -0300. Tags: music, life, mind

Eu ia escolher um verso para usar como título do post, mas a letra é toda épica demais pra escolher.

Týr – Land (YouTube)

Homeland we're leaving
We are retrieving
Our right to stand alone
We cannot stay here
Leave this bay
Fear not what must be
We must cross the sea

On our own
Standing alone
Always we got by on our own
Under stormy skies
Through rain, wind and raging sea
Head into the Unknown

Leave behind
Bonds that may bind
Circumstance that keep us behind
Rise to meet the day
Hold high torches passed through time
Fear not what you might find

Ver sterk mín sál á køldu náttarvakt
Har eingi altarljós til gudar brenna
Har hvør ein vón av fannkava var takt
Og hjarta ongan hita meir kann kenna
Ver stór mín sál sum rúmdar kalda tøgn
Ið eina er, tá sloknar lívsins søgn.

[Translation]
Be strong, my soul, on thy night vigil cold
Where to the gods no altar candle burns
Where every hope the snowy drifts enfold
And ne'er a trace of heat my heart discerns
Be great, my soul, as those still spaces cold
Which lone remain, when life's brief tale is told

Roads are long and oceans far and wide
Nights are cold and skies are dark and gray
Ride the autumn wind and evening tide
Time is long and land is far away

Out on the sea
Waiting for me
Storms are raging violently
Still we sail on silently
We seek to tame the torrrents and tides
Master the mights

Sail with me across the raging sea
Write your tale into eternity
Still we've sighted only sea till now
As we sail, I sometimes wonder how

* * *

Rest in the twilight
I have gained insight
Since the deeds of younger days
Now I am wiser
Raise my eyes
Gaze across the sea
And recall when we

Sailed away
Sought a new way
How I longed for far, far away
In the sunset glow
I dreamt of another land
A thousand years from that day

[from the Hávamál]
Cattle die
Kinsmen will die
I myself must die too some day
All are mortal men
But fair fame will never fade
For the man who wins it

Ver sterk mín sál á mjørkatungu ferð
Har tættar fylkjast um teg gráar gátur
Tín barnaflokkur
Úttærdur hann er
Og sárur kennist hans sólsvangi grátur
Ver stór mín sál í dagsins royndar stund
Holl veitir nátt hin dreymaleysa blund.

[Translation]
Be strong, my soul, upon thy darkling way
Where grey mysterious forms about thee run
Thine offspring, who their weariness display
In piteous weeping for the absent sun
Be great, my soul, with the day's griefs oppressed
A long night comes, to grant the dreamless rest.

Roads are long and oceans far and wide
Nights are cold and skies are dark and gray
Ride the autumn wind and evening tide
Time is long and land is far away

Out on the sea
Waiting for me
Storms are raging violently
Still we sail on silently
We seek to tame the torrents and tides
Master the mights

Sail with me across the raging sea
Write your tale into eternity
Still we've sighted only sea till now
As we sail, I sometimes wonder how far to Asgaard.

[Letra tomada deste site, com pequenas correções.]

3 comentários

Words of wisdom by Tim Pulju

2015-09-06 20:58 -0300. Tags: life, mind, random

Tim: … I'm gonna pick number 3 … also because if I just agree with everyone else and we're all correct then I attain no glory from that, but if I disagree with everyone else and I'm correct then I'll have great glory, and I think I'll put it in my gravestone, so I'm gonna say that number 1 and number 2 are correct and number 3 is false.

[…]

Trey: Now, on to Tim's great glory, did you consider the possibility of great shame?

Tim: I did, but I've lived with great shame for so much of my life that it won't be no great burden to add further shame to myself.

Language Made Difficult, Vol. XVII

(By the way, o Tim Pulju apresentou uma TED talk mui bacaninha chamada The Uncanny Science of Linguistic Reconstruction em 2011.)

1 comentário

Mail, mail, mail

2015-08-10 23:13 -0300. Tags: comp, rant, life

Como é o causo de quando em quando por aqui (e provavelmente mais quando do que se me apercebe), este post tem o objetivo único e exclusivo de reclamar da vida (com uma e outra informação útil solta, talvez, e meramente incidental). Com este anteaviso, prossigo o relato.

Até agora, o meu cliente de e-mail favorito era o Claws Mail. Agora parando para pensar, faz pelo menos uns 10 anos que eu uso o Claws Mail (quando eu comecei a usá-lo, ele ainda se chamava Sylpheed-Claws), e durante a maior parte desse tempo, eu fui um cliente satisfeito.

Eu sempre preferi manter cópia dos e-mails localmente, então eu baixava os e-mails via POP. (Além disso, no 3G era simplesmente inviável usar IMAP.) Em algum momento no ano passado, o INF resolveu defasar o POP em favor do IMAP. Durante um certo período, o POP simplesmente ficou fora do ar (desconfio que isso não tenha sido intencional). Além disso, o sistema anti-spam, que anteriormente marcava as mensagens como spam adicionando [***SPAM***] ao subject, passou a mover as mensagens para uma pasta Junk, que não vem pelo POP. Como é da natureza dos anti-spams marcar coisas como e-mails de confirmação de inscrição como spam, ficar sem ver essa pasta não era factível. Conclusão: tive que migrar para o IMAP.

Turned out, entretanto, que o suporte ao Claws a manter as pastas de IMAP sempre sincronizadas para uso offline era menos que excelente (e acho que nessa época eu ainda usava 3G), então usar o IMAP da INF diretamente não era viável. Além disso, nesse meio tempo eu comecei a ler e-mail pelo celular, e ter as contas não-sincronizadas no celular e no PC estava meio desagradável. A solução que eu encontrei então foi usar um programinha chamado OfflineIMAP, que permite manter uma mailbox local sincronizada com um servidor IMAP. Diferentemente dos fetchmails da vida, a sincronização do OfflineIMAP é bidirecional: mudanças em qualquer uma das pontas são propagadas para a outra. O problema é que o OfflineIMAP só suporta mailboxes no formato Maildir, e o Claws só suporta mailboxes no formato MH. A solução comumente adotada nessa situação é instalar um servidor IMAP local (eu usei o Dovecot), fazer o OfflineIMAP sincronizar o servidor IMAP remoto com o servidor IMAP local (ao invés de uma pasta Maildir), e apontar o cliente de e-mail para o IMAP local. Deu um trabalhinho, mas consegui.

Um inconveniente disso é que se você quiser atualizar os e-mails manualmente ao invés de esperar o próximo momento de atualização, é necessário mandar um sinal para o processo (pkill -USR1 offlineimap). Outro inconveniente é que o OfflineIMAP não consegue identificar que uma mensagem foi movida para outra pasta; na sincronização, ele deleta a mensagem original na outra ponta e faz upload da mensagem para a pasta nova. A primeira conseqüência disso é que não é possível mover coisas para a pasta Junk localmente, porque o IMAP da INF não aceita fazer uploads de mensagens novas para a pasta Junk, apenas que mensagens de outras pastas sejam movidas para ela. A outra conseqüência é que e-mails grandes movidos localmente precisam ser uploadeados novamente, o que é lento e sujeito ao famoso trancaço da INF, uma doença que afeta todos os serviços da INF (IMAP, POP, HTTP, SSH, you name it) desde absolutamente sempre, em que o servidor da INF esquece da conexão e o upload/download simplesmente trava. Baixar os e-mails por POP via 3G era algo que quase sempre exigia múltiplas tentativas (e como POP não suporta "resumar" o download de uma mensagem, os e-mails de 5MB da lista da graduação com PDFs e fotos de produtos à venda eram algo especialmente lamentável, em particular porque normalmente eu não tinha o menor interesse nos e-mails de 5MB em questão). Bons tempos. Mas o problema ainda persiste, em escala menor, com os uploads desnecessários de mensagens de 5MB do OfflineIMAP. Mas ok, no geral, tudo funciona mais ou menos bem.

O problema é que agora o Claws Mail não estava mais notificando a chegada de mensagens novas. As it happens, a idéia do Claws de o que é uma mensagem nova em uma conta IMAP depende da flag "Recent" mantida pelo servidor; essa flag diz se uma mensagem já foi de alguma forma vista por um cliente. Se uma mensagem não possui essa flag, o Claws não a considera como uma mensagem nova, mesmo que ela esteja não-lida. De certa forma faz sentido, porque se você já abriu a mailbox em um outro aparelho e viu que a mensagem estava lá (mesmo sem tê-la aberto), você já sabe que ela existe e não precisa ser notificado. O problema é que a flag Recent é de inteiro controle do servidor IMAP – ela é removida automaticamente quando uam mensagem é "vista" e um cliente IMAP simplesmente não tem como readicionar a flag –, e o OfflineIMAP, no processo de baixar as mensagens para o servidor local, "vê" a mensagem. Well, fuck.

Na verdade o problema no Claws é pior, porque o Claws não aplica filtros automaticamente a mensagens que não sejam novas. Ok, dá para fazer a filtragem diretamente no servidor, configurando os filtros pelo webmail do serviço. O problema é quando o filtro deveria mover a mensagem para fora da mailbox. Por exemplo, eu tinha uma regra que movia todas as mensagens da CONLANG Mailing List para uma mailbox local (onde eu mantenho todo o archive da lista). Além de não aplicar os filtros a mensagens vistas, o Claws também não aplica filtros a mensagens novas que não estejam na Inbox da mailbox. Isso quer dizer que se eu adiciono um filtro no webmail para mover as mensagens da CONLANG para uma pasta "Conlang", e um filtro local para mover as mensagens novas em "Conlang" para o archive local, o filtro local não funciona.

Eu fiquei convivendo com essa situação assim mesmo por um bom tempo. Há uns meses atrás, eu me irritei com o Claws e fui ver se achava um outro cliente de e-mail que me agradasse. O primeiro que eu tentei foi o Thunderbird, que na ocasião eu não gostei não lembro mais por que razões específicas. No processo de procurar um cliente de e-mail novo eu acabei lembrando do Gnus, que foi o motivo original pelo qual eu acabei começando a usar o Emacs. No fim, eu resolvi parcialmente o meu problema com o Claws comentando fora o teste que limitava os filtros apenas à Inbox, larguei de mão o Gnus, e tudo ficou bem (com o efeito colateral de que eu comecei a usar o Emacs, so: yay). It soon turned out, entretanto, que a versão do RSSyl (o plugin leitor de feeds do Claws) que veio na versão que eu recompilei do Claws estava falhando em atualizar alguns feeds (na verdade ele parecia só estar perdendo um feed específico, o Little Strange World, mas eu não sabia quantos mais ele podia estar perdendo sem eu saber), então eu acabei voltando a usar o Claws pré-compilado do Debian e convivendo com seus defeitos. Era desagradável não ter barulhinho de notificação e ter que mover as mensagens da CONLANG para o archive local manualmente (eu acabei parando de mover), mas estava dando para engolir.

A última gota foi na última sexta-feira. Eu recebi um e-mail no começo da tarde com o subject "Matricula 2015/2 - URGENTE", me informando que eu não havia feito a matrícula nesse semestre e me pedindo para "nos informar uma posição a respeito". Isso me deixou bastante alarmado; eu achei que não era necessário me reinscrever na Dissertação de Mestrado, pois no Trabalho de Graduação na INF o camarada só se inscreve no semestre inicial e não é necessário fazer nada no semestre seguinte para continuar matriculado. Respondi explicando a situação e perguntando o que deveria fazer. Algum tempo depois, responderam-me da secretaria informando que eu deveria realizar a matrícula. A essa altura, entretanto, o período de matrícula já tinha encerrado há uma semana, então não era possível fazer isso pelo Portal do Aluno. Às 17h08 mandei um e-mail perguntando como eu deveria fazer a matrícula, e fui trabalhar no bendito código da minha dissertação. Turns out que às 17h09 tinha vindo uma resposta, perguntando em que disciplinas eu gostaria de me matricular, mas eu só vi isso por volta das 17h45, pois o Claws não notificou. A secretaria fecha às 17h30, o que significa que um problema que eu poderia ter resolvido no mesmo dia só seria resolvido na segunda (at best) por conta da tosquice do meu cliente de e-mail. Just kill me.

Eu passei o resto da sexta-feira tentando resolver o problema dos e-mails novos, e foi então que eu descobri o causo da flag Recent e o fato de que, como ela é controlada pelo servidor, não tem muito o que fazer (talvez haja alguma gambiarra, mas não encontrei). Resolvi então tentar usar o Claws direto com o IMAP da INF e evitar o OfflineIMAP, já que agora eu não uso mais o 3G. O que aconteceu foi algo ainda mais bizarro: algumas mensagens estavam sendo remarcadas como novas depois de já terem sido vistas (mas não lidas). Além disso, as mensagens que estavam sendo filtradas no servidor não estavam sendo marcadas como novas (não sei se porque o Claws considerou que mensagens novas fora da Inbox não eram dignas de serem chamadas de novas, ou se porque o sistema de filtragem no servidor acaba marcando as mensagens como "vistas" como efeito colateral, ou se por algum outro motivo). A essa altura eu enchi o saco do Claws e fui catar um cliente de e-mail novo.

(No processo de tentar figure out os problemas eu descobri uma porção de coisas legais, entretanto; a principal delas é que você pode usar o comando:

openssl s_client -crlf -connect servidor:porta

como uma espécie de netcat para abrir uma conexão SSL, e dar comandos de IMAP via terminal. Por sinal, eu achei bem mais conveniente fazer isso de dentro do Shell mode do Emacs do que por um emulador de terminal. But I digress.)

Thunderbird

Eu resolvi dar uma segunda chance para o Thunderbird/Icedove. And boy is it terrible. Para começar, o Thunderbird não faz a distinção entre mensagens novas e não-lidas que o Claws (quando funciona) faz; não existe um comando para saltar para a próxima mensagem nova, apenas para a próxima não-lida, o que é um problema porque eu tenho o costume de deixar mensagens que requerem atenção futura como não-lidas e não quero desmarcá-las sem querer enquanto leio mensagens novas. By the way, o atalho para ir para a próxima não-lida (N) não funciona quando você não está com uma pasta aberta (se você está na paginazinha da conta, por exemplo).

"Ah, mas você pode marcar as mensagens como 'starred' ao invés de marcar como não-lidas", right? A diferença é que uma pasta com uma mensagem não-lida aparece em negrito e com o número de mensagens não lidas ao lado do nome, o que me chama atenção para o fato de que há alguma pendência ali. Uma pasta com mensagens starred não mostra nenhuma indicação de que contém mensagens starred; o Claws pelo menos mostra um "✓" nos ícones das pastas que contêm mensagens marcadas, o que é bem pouco perceptível no meu tema com fundo preto, mas é melhor que nada. Por falar em tema, diversos elementos da interface do Thunderbird ignoram o meu tema e mostram elementos com cores incompatíveis, seja meramente destoantes do restante, seja com o texto da cor certa e o fundo da cor errada (e.g., branco no fundo cinza). Tudo bem que o meu tema é um arquivo gtkrc hacked together de qualquer jeito cinco anos atrás que eu basicamente nunca mais mexi, mas a maioria dos programas funciona relativamente bem com ele. Anyway.

O programa simplesmente não foi pensado para ser usado com o teclado. Coisas como alternar entre headers completos e simples não possuem um atalho de teclado; para adicionar um atalho, é necessário instalar um addon (!). O atalho do "quick filter" (o equivalente do search do Claws) é Ctrl+Shift+K; no Claws, é /. Aliás, o termo de pesquisa se perde quando se troca de pasta, e não tem histórico; no Claws o termo fica até a caixa ser fechada (com Esc, por exemplo), e ↑/↓ percorrem os últimos termos usados. Navegar pela lista de mensagens com as setas automaticamente seleciona a mensagem para visualização (o que a marca como lida, obviamente); no Claws, isso é configurável. O Claws permite habilitar o comportamento que era o default em aplicativos GTK 1, em que se pode parar sobre um comando de um menu qualquer e pressionar uma tecla para associá-la como atalho para aquele comando; assim, a maioria dos keybindings pode ser facilmente customizada. Alguns elementos da interface do Claws parecem ter sido projetados especificamente para funcionar bem com isso; por exemplo, o menu "Edit > Advanced" da janela de composição de mensagens contém entradas que parecem não fazer muito sentido em um menu, como "Move to beginning of line" e "Delete a word backward", até que você se dá conta de que eles estão ali para que você possa associar as teclas de atalho de sua preferência a esses comandos. Esse é o tipo de atenção a detalhes que torna o Claws totalmente excelente. Eu na verdade fiquei meio chocado com o fato de que um programa da idade do Thunderbird tenha tantos gaps de funcionalidade/usabilidade. Talvez o usuário no público-alvo do Thunderbird tenha expectativas diferentes da interface. I don't know.

On the bright side, o Thunderbird tem um search global por todas as pastas, que o Claws não tem. Além disso, a sincronização do IMAP para uso offline funciona direito. Finalmente, o Enigmail (add-on do Thunderbird para uso de PGP) parece ser fácil de usar. Acho que isso resume o que eu tenho de bom para dizer sobre o Thunderbird.

Ah, right, o problema das notificações: por algum motivo, o Thunderbird também não está mostrando notificações quando chegam mensagens novas (o que me dá alguma esperança de que o problema seja elsewhere e eu consiga corrigi-lo e voltar a usar o Claws), mas pelo menos eu achei um addon que permite adicionar um ícone à systray com o número de mensagens não-lidas em pastas selecionadas, o que resolve parcialmente meu problema. (O Claws também tem um plugin para adicionar um ícone à systray, mas ao invés de mostrar um número ele mostra um ícone não-customizável e horrível de perceber se está indicando a presença de mensagens não-lidas ou não.) A outra "vantagem" do Thunderbird é que eu achei ele tão ruim de usar que eu provavelmente vou continuar procurando outra solução ao invés de me acomodar com os problemas como eu fiz com o Claws por um ano e tanto.

Gnus

And then there is Gnus. Como dito anteriormente, o Gnus foi o que me levou a mexer no Emacs de novo, mas eu acabei largando ele de mão, em parte porque eu achei que tinha resolvido meu problema com o Claws, em parte porque configurar o Gnus é um tanto quanto não-trivial (e aprender a usá-lo também), especialmente para mim que não tinha praticamente nenhuma experiência com o Emacs então. Agora que eu já estou há mais de dois meses usando o Emacs (estou-vos devendo um post sobre isso, por sinal) e já estou relativamente habituado à criatura, acho que está na hora de dar uma segunda chance ao Gnus.

O Gnus é bastante bizarro, na verdade. Ele faz uma porção de coisas que fazem sentido em um news-reader, mas not so much em um mail-reader. Por exemplo, por padrão ele oculta "grupos" (pastas) que não têm mensagens não-lidas, e oculta as mensagens lidas em um grupo. Eu passei o último sábado quebrando a cabeça tentando configurar o dito cujo, e turns out que o problema que eu passei mais tempo tentando resolver era um bug no Gnus (que aparentemente eu vou ter que reportar uma hora, pois não achei nenhuma menção dele na Internet). Fazer ele funcionar com duas contas de e-mail, e escolher a conta apropriada para mandar mensagens dependendo do contexto, salvar a mensagem enviada na pasta apropriada, etc., é algo que eu tenho que olhar com calma como se faz. Pelo menos o conceito do Gnus de uma mensagem vista aparentemente é independente de o que o IMAP acha que foi visto, o que já é um bom começo. Apesar de ser complicado e cheio de bizarrices, eu tenho a sensação de que o Gnus é suficientemente hackable/customizável para eu conseguir fazê-lo fazer o que eu quero (de certa forma isso é meio verdade sobre o Emacs como um todo). Se eu for bem-sucedido, provavelmente vou postar um tutorial de configuração por aqui.

EOF

Well, esse post ficou bem maior do que eu esperava. Mas agora que eu já escrevi, vou publicar e eras isso. Já que você chegou até aqui, leve umas músicas como recompensa.

3 comentários

Main menu

Posts recentes

Comentários recentes

Tags

comp (115) prog (52) life (45) unix (32) lang (29) random (28) about (24) mind (23) pldesign (21) in-english (21) mundane (21) lisp (18) web (17) ramble (15) img (13) rant (12) privacy (10) freedom (8) scheme (8) academia (7) esperanto (7) bash (7) music (7) lash (7) mestrado (6) home (6) shell (6) copyright (5) misc (5) conlang (5) book (4) worldly (4) php (4) latex (4) editor (4) etymology (4) politics (4) emacs (3) wrong (3) film (3) tour-de-scheme (3) kbd (3) c (3) security (3) android (3) network (3) poem (2) cook (2) physics (2) comic (2) llvm (2) treta (2) lows (2) audio (1) wm (1) philosophy (1) kindle (1) pointless (1) perl (1)

Elsewhere

Quod vide


Copyright © 2010-2019 Vítor De Araújo
O conteúdo deste blog, a menos que de outra forma especificado, pode ser utilizado segundo os termos da licença Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.

Powered by Blognir.