Planeta Tilde

June 09, 2021

N.S. do Computismo

Code V2

book cover

«From the Preface: "This is a translation of an old book—indeed, in Internet time, it is a translation of an ancient text." That text is Lessig's "Code and Other Laws of Cyberspace." The second version of that book is "Code v2." The aim of Code v2 is to update the earlier work, making its argument more relevant to the current internet.»

more @ lessig.org

June 09, 2021 10:20 AM

May 31, 2021

~marado

Are Cassette tapes dead? (again)

Tired of reading people saying that one or another mature technology was dead, ten years ago I decided to act upon one of those claims (saying that cassette tapes were dead) and write a blog post, where, using the data available on Discogs, I made a graph showing the percentage of cassette releases related to all of the releases on that database.

That blog post had more success than I thought would have, with some people, once in a while, wondering how were things progressing (not only regarding the cassette tapes market on current days, but also the growth of discogs' database and its knowledge of past releases). I did update the graph a few times since the initial blog post, but today, to mark the 10th anniversary of the initial post, I decided to actually write a script that automatically generates such a graphic, and generate one of those graphs, once again.

And, guess what!, turns out cassette tapes aren't dead, or even dying.

graph showing the percentage of cassette tape releases

tags: discogs, stats, cassette, tape, compact cassette, music, data, software, music business, music market, en

comentários? tweetar  

by ~marado at May 31, 2021 10:22 PM

N.S. do Computismo

May 26, 2021

N.S. do Computismo

May 24, 2021

N.S. do Computismo

May 22, 2021

N.S. do Computismo

May 19, 2021

N.S. do Computismo

Out of Season

clear;while :;do echo $LINES $COLUMNS $(($RANDOM%$COLUMNS));sleep 0.1;done|gawk '{a[$3]=0;for(x in a) {o=a[x];a[x]=a[x]+1;printf "\033[%s;%sH ",o,x;printf "\033[%s;%sH*\033[0;0H",a[x],x;}}']]"]"}}'

May 19, 2021 10:20 AM

May 17, 2021

N.S. do Computismo

May 11, 2021

~marado

O manifesto das cebolas na era da transição digital

Ocorre-me com regularidade que eu escrevo demasidos comentários em redes sociais efémeras por natureza, ideais que rapidamente se perdem em eternos scrolls. Este é um texto que escrevi numa thread no twitter e que agora republico aqui, para mais fácil guardar para a posteridade.

Em 2012, a ANSOL - Associação Nacional para o Software Livre, lançou o seu manifesto do campo das cebolas. Aí criticava o esbanjar de dinheiros públicos na aquisição - frequentemente ilegal - de software.

A ESOP - Associação de Empresas de Software Open Source Portuguesas, fez de um desses contratos exemplo: levou a Câmara Municipal de Almada a tribunal e ganhou. Mas de que serve uma vitória, num caso, se a prática se mantém?

Em 2013, observaram um aumento de 143% no valor destes contratos ilegais. Tinha já, entretanto, entrado em funcionamento o mecanismo de pareceres prévios da AMA. Ainda assim...

Em 2017, numa investigação do Público, chega-se à conclusão que, neste aspecto, nada mudou para melhor. Diz-se, então, que esta prática "deveria merecer uma acção da Comissão Europeia." Hoje fala-se de transição digital, mas sobre isto nada foi feito.

Hoje lembrei-me disto, porque alguém reclamava deste contrato, em que o SNS gasta perto de 300 mil euro em licenças de Office 365. Dir-me-ão que o SNS, agora, não tem alternativa noutro fornecedor. Já estava previsto no manifesto da ANSOL:

"provavelmente dirão que não têm conhecimento de alternativas ou que têm conhecimento mas não têm capacidade para as implementar e gerir. Ou pior, dirão que devido às decisões que eles mesmo tomaram no passado - que os deixaram enredados num esparguete de dependências"

Mas, convém sublinhar, também diz o manifesto das cebolas, "quem paga somos nós", e há alternativa.

Estes milhões são nossos. Até quando estaremos dispostos a esbanjá-los assim?

tags: PT, ANSOL, ESOP, SNS, Microsoft, Licenças, Office-365, Office, manifesto, contratos, públicos, ilegais, contratos-públicos, contratos-ilegais, transição, digital, transição-digital

comentários? tweetar  

by ~marado at May 11, 2021 03:01 PM

Voto electrónico em Portugal - mais do que um problema técnico, um problema legal

O debate do voto electrónico tem décadas, mas, ainda que a investigação na área tenha apresentado evoluções, a discussão sobre a temática nem por isso. Pilotos atrás de pilotos, e tentativas de implementar o voto electrónico em Portugal vieram e falharam, mas pode-se sempre apontar o dedo a uma coisa: uma fraca implementação. Esse problema tem duas facetas: se, por um lado, aqueles que se opõe na generalidade ao voto electrónico têm uma forma fácil de apontar o dedo à má impementação e dizer "vêm?, não presta!", esse argumento acaba por não convencer aqueles que são a favor do voto electrónico, com o argumento de que "lá porque este foi mal feito, não quer dizer que não se possa fazer bem".

Também foi assim nas últimas Europeias, que em Portugal incluiram um piloto de voto de electrónico, que correu francamente mal - porque (adivinhe-se) tinha uma implementação má. Mas se a experiência serviu para alguma coisa, no que diz respeito à comunicação social e ao debate político, foi para por o tema outra vez na agenda política, e nunca se falou em portugal sobre o voto electrónico como hoje. Em vez que servir como prova de que o voto electrónico é uma má ideia, o exemplo serviu para aguçar apetites.

Mas, para o debate - se alguém o quiser efectivamente ter, e de forma séria - sobre a implementação de um sistema de voto electrónico em Portugal, o melhor contributo deste exemplo piloto que tivemos foi o post-mortem feito pela CNPD. O documento, que fez headlines nos jornais, e que demonstra que a implementação da solução usada era má, foi, mais uma vez, usado por vários como ponto de partida para dizer "a solução é má, mas podem haver boas." Contudo, parece-me, quem diz isso não olhou para o documento como um todo.

O parecer da CNPD é uma leitura no total interessante, mas há um segmento em particular que me parecem muito útil. Mas, para quem pensava que ia ler um artigo a falar blockchain ou de consenso bizantino... lamento. O excerto do parecer que me parece valer a pena destacar é o que demonstra que o problema do voto electrónico em Portugal é, mais do que um problema técnico, um problema legal. Não me refiro à parte que diz "qualquer solução precisa de ser legislada exaustivamente, o que não tem acontecido" (o que é verdade, mas é resolúvel apenas com a criação de mais legislação), mas sim à parte que diz:

a questão da transparência elencada no n.º 1 do artigo 5.º do RGPD tem de ser tida à luz da possibilidade de os titulares dos dados (leia-se "eleitores") poderem compreender, de forma completa (ainda que não exaustiva), como decorrem as operações de tratamento que incidem sobre os seus dados pessoais, entre as quais se encontra a votação.

É importante, porque declara que, à luz do RGPD (em vigor não só em Portugal mas nos diversos estados membros), obriga-se a que um sistema eleitoral - que por natureza lida com eleitores e seus votos - seja compreensível pela generalidade dos eleitores, coisa que não pode acontecer num sistema da complexidade exida por um sistema fiável de voto electrónico.

A CNPD aponta para o exemplo da Alemanha, em que este conflicto entre os sistemas de voto electrónico e a compreensão pelo cidadão comum do seu funcionamento foi levado ao seu Tribunal Constitucional, levando à decisão de não implementação de voto electrónico, mas não é só na Alemanha que esta questão precede o RGPD. No texto da associação D3 - Defesa dos Direitos Digitais - sobre o voto electrónico, escrito em antecipação às europeias - quando a última experiência de voto electrónico decorreu em Portugal - lê-se:

todo o cidadão deve poder compreender ele próprio o funcionamento do sistema eleitoral do país, qualquer que seja o sistema, por forma a ter suficiente confiança de que este está em conformidade com a lei. Uma solução digital será sempre uma solução demasiado complexa, mesmo para os eleitores mais esclarecidos, o que irá inevitavelmente trazer desconfiança ao processo legislativo e aos seus resultados por parte de quem tenha resultados inferiores ao que esperava.

Mas será assim? Bem, em Portugal existem vários actos eleitorais, cada um com a sua Legislação aplicável. Temos, por exemplo, na Lei Eleitoral dos Órgãos das Autarquias Locais (que rege as Autárquicas que em breve decorrerão em território nacional), o Artigo 52.º que diz:

Cabe à Comissão Nacional de Eleições promover, através de meios de comunicação social, públicos e privados, o esclarecimento objectivo dos cidadãos sobre o significado das eleições para a vida do País, sobre o processo eleitoral e sobre o processo de votação.

Terá a CNE os meios necessários para cumprir tal artigo - no que diz respeito ao esclarecimento objectivo sobre o processo eleitoral - se o processo for por via electrónica?

Em jeito de conclusão

Tem-se discutido cada vez mais sobre o voto electrónico em Portugal. Contudo, tem-se falado do tema como se ele fosse maioritariamente um desafio técnico, quando, a meu ver, os entraves são legislativos. Não estou a defender que o "direito ao esclarecimento" deve ser posto de parte, mas acredito que é aí que o debate se deve centrar. A legislação actualmente em vigor - tanto nacional como comunitária - defende esse direito ao esclarecimento, que é incompatível com um sistema de voto electrónico(1). Acredito que haja quem ache que ter voto electrónico é mais importante - mas então é esse o argumento que deve ser feito por quem assim o acha, em particular devendendo as alterações legislativas necessárias. Esse debate pode trazer algum fruto. O técnico, parece-me, está ao mesmo nível em 2021 que estava há duas décadas atrás, e assim continuará.


comentários? tweetar  

by ~marado at May 11, 2021 12:45 PM

N.S. do Computismo

May 08, 2021

N.S. do Computismo

May 06, 2021

N.S. do Computismo

April 30, 2021

N.S. do Computismo

April 26, 2021

N.S. do Computismo

April 19, 2021

N.S. do Computismo

April 15, 2021

N.S. do Computismo

April 07, 2021

N.S. do Computismo

What Have We Lost

from rc3 ccc conference

April 07, 2021 02:20 PM

March 26, 2021

N.S. do Computismo

Steve Jobs Interview 1981-02-18

An interview with Steve Jobs filmed on 2/18/1981 about the future of Apple, Computers, the Home & Personal computer markets, video games, and more.

March 26, 2021 11:20 AM

Ted Nelson struggles with uncomprehending radio interviewer, 1979

Max Allen of CBC radio asks over and over how a computer could possibly be useful for thinking and visualizing. He absolutely does not get it.

March 26, 2021 11:20 AM

March 25, 2021

N.S. do Computismo

March 23, 2021

N.S. do Computismo

March 19, 2021

N.S. do Computismo

March 17, 2021

N.S. do Computismo

March 15, 2021

N.S. do Computismo

Russia: Hidden chips 'launch spam attacks from irons'

"Cyber criminals are planting chips in electric irons and kettles to launch spam attacks, reports in Russia suggest."

disassembled iron

@bbc.com

March 15, 2021 11:20 AM

March 11, 2021

N.S. do Computismo

March 09, 2021

N.S. do Computismo

March 08, 2021

N.S. do Computismo

How to avoid talking to humans on the phone

Ordering a pizza in 1974

Ordering an haircut in 2018

March 08, 2021 12:20 PM

March 06, 2021

N.S. do Computismo

Attacks in the Wild

"We refer to these attacks as typographic attacks. We believe attacks such as those described above are far from simply an academic concern. By exploiting the model’s ability to read text robustly, we find that even photographs of hand-written text can often fool the model. Like the Adversarial Patch,22 this attack works in the wild; but unlike such attacks, it requires no more technology than pen and paper."

attacks in the wild

paper @ openai.com

March 06, 2021 10:20 AM

The Writer Automaton, Switzerland

A 240 year old doll that can write, a clockwork creation by Pierre Jaquet-Droz, a Swiss watchmaker. The doll is able to write any custom text up to 40 letters long

writer doll

@ chonday.com

March 06, 2021 10:20 AM

March 05, 2021

N.S. do Computismo

March 04, 2021

N.S. do Computismo

March 03, 2021

N.S. do Computismo

March 02, 2021

N.S. do Computismo

March 01, 2021

N.S. do Computismo

February 28, 2021

~marado

repo: using a local manifest

One of the useful and rarely mentioned configurations of repo is the use of local manifests.

See, repo is a powerful tool when you need to deal with a project that uses several git repositories at the same time, and those are controled by a manifest file. However, on your local development environment, you will often want to extend or change something on the environment described on the manifest, either by removing, adding or more often replacing one of the entries with a slightly different configuration.

You can do that by using a local manifest, that will be applied on the top of the other manifest files. The CyanogenMod project used to have a pretty nice documentation about this, but that's one of the contents that were not migrated into Lineage OS's wiki, so I decided to make this blog post, reproducing the old wiki's content.

The local manifest

Creating a local manifest allows you to customize the list of repositories used in your copy of the source code by overriding or supplementing the default manifest. In this way, you can add, remove, or replace source code in the official manifest with your own. By including repositories (which need not even reside on GitHub) in a local manifest, you can continue to synchronize with the repo sync command just as you would have previously. Only now, both the official repositories from the default manifest and the additional repositories you specify will be checked for updates.

Adding and replacing repositories

To add to the contents of the default manifest, create a folder called local_manifests under the .repo directory, then create an XML file (text file with .xml extension) inside that directory. You can call the XML file anything you like, as long as it ends in .xml. The default however is roomservice.xml. Also, you can create separate XML files for different groups of repositories. e.g. mako.xml for Google Nexus 4 related repositories and cat-eater.xml for an unofficial device on which you're working.

Let's start with an example which we can use to describe the syntax:

<?xml version="1.0" encoding="UTF-8"?>

<manifest>

<remote name="omap" fetch="git://git.omapzoom.org/" />

<remove-project name="CyanogenMod/android_hardware_ti_omap3" />

<project path="hardware/ti/omap3" name="platform/hardware/ti/omap3" remote="omap" revision="jb-dev"/>

</manifest>

The first line containing <?xml version="1.0" encoding="UTF-8"?> is a standard XML declaration, telling interpreters this is an eXtensible Markup Language file. Once this is established, the <manifest> and </manifest> tags enclose some contents which the repo command will recognize.

First, a remote for git is declared and given the name "omap". In git, a remote essentially refers to a place and method for accessing a git repository. In this case, omapzoom.org is a site that contains special up-to-date repositories for Texas Instrument's OMAP platform. This is equivalent to the following git command:

git remote add omap git://git.omapzoom.org/

The next line removes a project (specifically, cyanogenmod/android_hardware_ti_omap3) declared in the default manifest. After running repo sync, it will no longer be available in the source tree.

The next line defines a new project. In this case, it replaces the removed project android_hardware_ti_omap3 with one from Texas Instruments, using the "omap" remote that was defined above.

When adding a new project that replaces an existing project, you should always remove that project before defining the replacement. However, not every new project need replace an existing cyanogenmod project. You can simply add a new project to the source code, such as when you want to add your own app to the build.

Note that when adding new projects, there are at least three parts defined:

  • remote -- the name of the remote. this can be one that was defined in either the default manifest or local_manifest.xml.
  • name -- the name of the git project-- for github it has the format account_name/project_name.
  • path -- where the git repository should go in your local copy of the source code.
  • revision -- (optional) which branch or tag to use in the repository. If this attribute is omitted, repo sync will use the revision specified by the <default ... /> tag in the default manifest.

After creating .repo/local_manifests/your_file.xml, you should be able to repo sync and the source code will be updated accordingly.

Note: You can use local repositories in the manifest by creating a remote that points to file:///path/to/source. For example: <remote name="local-omap" fetch="file:///home/username/myomap" />

License

All textual content of the CyanogenMod Wiki was released under the Creative Commons Attribution-Share Alike 3.0 Unported license (CC-BY-SA), and so this blog post should be considered licensed under the same terms.

tags: repo, manifest, local-manifest, local_manifests, git, en

comentários? tweetar  

by ~marado at February 28, 2021 07:42 PM

February 23, 2021

N.S. do Computismo

ZZT

Epic MegaGames first comercial title (1991)

February 23, 2021 11:20 AM

February 22, 2021

N.S. do Computismo

February 19, 2021

N.S. do Computismo

February 17, 2021

N.S. do Computismo

February 16, 2021

N.S. do Computismo

February 11, 2021

N.S. do Computismo

February 10, 2021

N.S. do Computismo

Halt and Catch Fire Syllabus

Tell me one thing that will be true about computers ten years from now?

The only interface that makes computer graphics easy as Apple pie

Halt and Catch Fire syllabus

February 10, 2021 12:20 PM

Halt and Catch Fire Syllabus

Tell me one thing that will be true about computers ten years from now?

![~/fimdomeio/nossa-senhora-do-computismo/img/apple-pie-ui.jpg]

Halt and Catch Fire syllabus

February 10, 2021 11:20 AM

February 08, 2021

N.S. do Computismo

Sword of Damocles

An early Virtual Reality head mounted display

more info @ wikipedia

February 08, 2021 11:20 AM

February 05, 2021

N.S. do Computismo

February 04, 2021

N.S. do Computismo

John McCarthy

John McCarthy is best known for having coined the term "Artificial Inteligence" and having created the Lisp programming language John McCarthy playing chess

February 04, 2021 11:20 AM

February 03, 2021

N.S. do Computismo

January 29, 2021

N.S. do Computismo

January 28, 2021

N.S. do Computismo

WTF is Going on with Gamestop stock

Social engineering at its finest

HOLD HOLD HOLD

Indepth article @ vice

January 28, 2021 11:20 AM

January 27, 2021

N.S. do Computismo

January 26, 2021

N.S. do Computismo

Old Computers in Paper

papercraft

Construct the computer from your childhood or build an entire computer museum at home with these paper models @ Rocky Bergen

January 26, 2021 12:20 PM

January 22, 2021

N.S. do Computismo