20
Oct 12

A Vitória do Javascript

Há pouco mais de 7 anos atrás, em 2005, comecei a desempenhar funções no Instituto de Tecnologias de Informação na Justiça. Um dos problemas com que nos deparámos de imediato foi a multiplicidade de tecnologias usadas: em sistemas operativos, Windows, Linux, z/OS, AIX e outros; em bases de dados, Oracle, MySQL, MS SQL, DB2 e inclusive Lotus Notes; em termos de linguagens de programação, Cobol, .NET, PHP, Javascript. Uma das prioridades que estabelecemos então foi o tentar diminuir essa multiplicidade.

 

Os casos de sistemas operativos e de bases de dados foram mais fáceis de resolver. O escolher uma linguagem de programação unificada foi mais complicado. O processo de análise que fiz levou-me a concluir que essa linguagem de programação seria o Javascript, embora não fosse essa a escolha final para o ITIJ, por razões organizacionais.

 

Sim, também eu achava que o Javascript era uma linguagem para o frontend, que era fracota, que era lenta, que nunca iria substituir o PHP, o Python ou o Perl no backend. E, no entanto, tudo apontava para que de facto fosse a Next Big Language: a maior base instalada do mundo, desde telemóveis a milhões de websites, o maior número de programadores do mundo, com mais ou menos competência, uma linguagem com familiaridade sintática com o C, e com uma familiaridade de paradigma com as linguagens funcionais como o Lisp ou o Erlang. Note-se: o Javascript não tem rigorosamente nada a ver com Java.

 

Na altura fiz uma apresentação no âmbito do projecto Asterisco onde chegava precisamente a essa conclusão e a encontrar algo que estava esquecido: o Javascript podia ser uma linguagem de backend, substituindo o PHP/Perl/Python. No meio da década de 90 a Netscape chegou a ter uma solução dessas de seu nome Livewire. Começavam também a aparecer algumas implementações de Javascript serverside como o Helma ou o Rhino.

 

A partir dessa altura a utilização do Javascript do lado do servidor começou a aumentar de mês para mês. Em 2008, no Codebits, cheguei a lançar o desafio da criação de um framework web que utilizasse Javascript desde o nivel no sistema do servidor até ao web browser no frontend, tendo referido também a grande oportunidade de negócio que isso representava. De há um ano e meio para cá esse crescimento do Javascript foi notório, para o qual ajudou o aparecimento do Node.js e de múltiplos frameworks de desenvolvimento web.

 

Contra todos os velhos do Restelo, o Javascript transformou-se numa alternativa sólido tanto do lado do servidor como do lado do frontend, estando já a substituir o próprio Flash, quando conjugado com as tecnologias genericamente designadas como HTML5.

 

Mais recentemente tem-se observado um outro fenómeno extremamente relevante: o Javascript está a transformar-se no Assembler da Internet. Neste último ano multiplicaram-se as linguagens que, diferentes do Javascript, são no entanto compiladas para Javascript. Como exemplos refiram-se o Go, o Objective-J, o CoffeeScript, o TypeScript e até o C/C++.

 

Sete anos depois das minhas reflexões, está mais do que claro qual é a Next Big Language: foi o Javascript que ganhou essa guerra.


30
Sep 12

Reading About the Future

Following an exchange of tweets with some friends, here’s some books that will make you think about the future:

 

 

 


21
Sep 12

Artistas da Rádio, Cassete, TV e Disco

Vim aqui ao Parque das Nações e vi duas coisas, o Campus da Justiça e os escritórios da Datelka, que me fizeram lembrar uma história engraçada.

Regularmente aparecem artigos ou reportagens do tipo “julgamento tem de ser repetido porque as gravações falharam”.

Porque é que isto acontece? Porque os tribunais ainda usam as velhinhas cassetes audio. Lembram-se?

Pois bem: o Ministério da Justiça deve ser o último e único cliente desta moderna tecnologia. Para além dos problemas de aprovisionamento, ainda acaba por pagar um prémio no preço por causa da escassez do produto (o mercado é uma coisa lixada; se calhar uma idéia é o Estado  criar um Instituto para produzir cassettes audio).

Para além disso as cassettes, já de si pouco fiáveis, são reutilizadas e regravadas. Como quem fez muitas mixtapes saberá, não há cassette que aguente. Ao fim de X regravações a fita começa a deteriorar-se.

E pensais vós: “Porra, mas não era mais simples gravar digitalmente para MP3 ou coisa assim?”. Pois era. Mas não pode ser.

De acordo com os magistrados e juízes, a segurança das cassettes audio é muito maior. Podem ficar guardadas numa gavetinha ou num bolso. Essa coisa de digitalizar o audio e depois guardar em sistemas de gestão de conteudos em servidores centralizados num datacenter seguro é uma coisa do demo. Depois havia pessoas que ouviam as gravações e era uma chatice. É mais facil copiar as gravações das cassettes para CD e distribuir à malta.

A modernização tecnológica é uma maçada.


18
Sep 12

Despesas do Estado em Tempos de Crise

No Domingo passado fui fazer uma das habituais caminhadas com a Cristina. Um tipo passa os 40 e começa a ficar totalmente kitado e é preciso fazer algo para desenferrujar.

Ali perto do Marquês, e no seguimento das recentes obras e mudanças efectuadas no Marquês de Pombal, diz ela: “Não percebo que necessidade há de fazer este tipo de obras quando o País está em crise”

“Ah! eu explico!” – disse eu. E expliquei.

A maior parte das grandes obras que por aí se fazem contam com o guito vindo da União Europeia. E os tipos lá de Bruxelas não vão em cantigas: não pôem o dinheiro todo. Uma parte é a chamada comparticipação nacional e a outra parte a chamada comparticipação da UE. Por exemplo: fazer uma dessas obras custa 60 milhões de euro; a UE entra com 40 milhões e Portugal entra com 20 milhões. A UE só entra com os 40 milhões se Portugal entrar com os 20 milhões. Se Portugal pedir os 40 milhões e disser que põe os 20 milhões e depois não os puser, não só tem de devolver o dinheiro como paga multas.

Já estão a ver não é: “oh pá! temos de gastar os 20 milhões em alguma coisa, senão temos de devolver os 40 da UE e levamos com a chibatada das multas”. E depois toca de inventar coisas onde gastar 20 milhões. Às vezes que nem são estritamente necessárias para o projecto em causa. O que interessa é não perder o guito.

Normalmente no fim do ano é uma lufa lufa a esgotar as dotações (as quantias orçamentadas). Também é uma lufa lufa a esgotar as dotações do Orçamento de Estado: se se gastar menos do que o orçamentado, o orçamento para o ano a seguir não pode ser maior do que o que foi gasto. Um gestor público não tem por isso qualquer incentivo a poupar dinheiro. Mas isso é uma história que fica para outro dia.


19
May 12

The Upcoming Internet Identity Holocaust

 (NOTA: este artigo é a adaptação para inglês do que foi publicado aqui na Exame Informática, na minha coluna de opinião Franco Atirador)

I’ve had a discussion with some friends in recent times which is this: what is the reason for the rivalry between Google, Facebook and Twitter? What justifies it? The valuations of Facebook and Twitter make sense?

In fact, apparently, the three companies do not compete directly: Google is good at search,  Facebook and Twitter are horrendous; Facebook is good at group interactions, Google and Twitter are weak; Twitter is good in interactions and information in real time, Google and Facebook are weak.

Note that each of these companies know about their weaknesses. This has led to attempts to overcome them: Facebook investment in advertising (successful) and email (a failure) to compete with Google; Google created Google+ to compete with Facebook and Twitter (we’re still to see if successfully); Twitter is also trying to make money with advertising (though with poor results) and to improve interactions in groups (lists), to compete with Facebook and Google+.

But this is the real war? Is there anything else to justify it?

There is, in my opinion: it is all about the war for identities on the Internet. This could yield billions.

The problem of Internet identity is not new. It has existed since the Internet started to get popular. The question of anonymity. Its importance in shopping and transactions online. Its relevance to issues such as defamation or liability for illegal or criminal acts. Various schemes and systems were tried, always with low adoption. Solving this problem can yield billions. And it’s a game where only one wins. Whoever can get more members becomes, for all purposes, a monopoly.

Until recently, the use of multiple identities was normal. Each of us had (and still has) multiple usernames, one for each service. I always try to catch mvalente but I failed sometimes: an Italian guy got it in GMail first and I had to content myself with mfvalente. In addition to usernames we have passwords for each service (you have a different password for each service, right?). And then there is the problem of having to give usernames and passwords for some services, to allow for the interactions between them.

Some technologies were developed to solve these problems, such as OpenID and OAuth, without much adoption. Not even Microsoft, with Passport, now called Live ID, had any success.

What we have seen in the last 3 or 4 years is that more and more Internet services accept registration as a user using only the Google, Facebook or Twitter ID. Many allow you to use either of them. In my opinion this will not last long and one will get the leadership and a potential monopoly. Facebook, due to the number of current users, is who is best positioned.

Assume, for ease of explanation, that the winner is Facebook. In  3 or 4 years it has won the war and it is used in 99% of Internet services. We use it for email, to access the Flickr; to access Pinterest; to access Last.FM. To access Blogger, Spotify, Steam, Amazon. Everything.

And suddenly Facebook decides to start charging for the identification service. Cheap, one (1) euro per year. Not to users. To Internet services using your Facebook ID to identify you.

Some simple math. Facebook has 900 million users, that would make up for a 900 million euro yearly turnover. But each one of us uses more than one Internet service. Let’s say thats an average of 10 services. That would make up for 9.000 million euro turnover (excluding advertising revenue).

If Facebook decided to charge per user per month, you do the math, just multiply by 12. A monopoly of more than 90 billion euro a year would be a nice business to be in. None of the three players will want to lose this war.