Alcides Fonseca

40.197958, -8.408312

Coimbra breathes geekness #3

Geek Stuff

  • Aug 21 – GDG gather hour II @ Fangas – Meet&drinks by the google developer group. Meet Carlos and guys and talk about android and other google tech.
  • Oct 1 – The Product Garage Party @ TBD – I wasn’t given permission to share what the event was about, but I’ll spoil you that it’s the kind of party early Steve Jobs would attend.

Training

  • Nov 5-6 – Inteligent Design @ EDIT Lisboa – Aritificial Intelligence and the Internet of Things in Product Design, presented by yours truly. Details soon to come.

Elsewhere

Despite all these events, there are two national events that are shadowing the community activity in Coimbra:

  • Oct 6-8 PixelsCamp @ LXFactory, Lisboa – Codebits is back under the Sonae brand. Same people, same spirit.
  • Nov 7-10 WebSummit @ Lisboa – I haven’t decided if I should go or not (I already got a ticket) because I don’t know if it is going to be 100% commercial, or if some people who actually work are also going to be there. We’ll see.
Ads:

Suicide Squad

TLDR; Yet another Marvel fanboy bashing Suicide Squad.

Spoiler free

Suicide Squad is a lightweight super-hero movie with an ensemble cast. I’ve enjoyed but it’s far from a good movie. The plot is very straightforward, you can predict everything until the end, and there is almost no character development. Character-wise, the movie is focused on Will Smith’s character (probably who got paid the most). The adaptations from the comics were pretty much okay, except for…

... the Joker. I really hated this guy. Ben Affleck was a just-OK batman, but it did not suck as much as the J. First, they should be around the same age, with maybe Joker being a bit older. But this Joker looks like he is 30 at most, and Mr. Wayne is in his early 40s. This difference makes no sense to me. Secondly, his face tattoos and metallic teeth make him look like a rapper who sang with slipknot than a fearsome crime lord/vilain. He doesn’t strike me as a insane master mind. Just some rich kid who did too many drugs and with enough money to hire thugs to do the work for him. Hamil’s the animated series Joker is the best for me.

With light spoilers

The movie is filled with unnecessary characters (Boomerang and Katana, for starters) and the plot was made for the action scenes without any justification: 1. The witch could just have overpowered everyone in a matter of seconds anytime. 2. The USA could have nuked the place, instead of required a small explosive. 3. Deadshot could have destroyed both smartphones in a glimpse.

The amount of jokes is okay, but it is nothing like Deadpool or the first Avengers. I understand DC is supposed to be darker, but this movie is clearly made to be funny by design.

Coimbra breathes geekness #2

Geek Stuff

  • Feb 19-21 – Shift Appens @ Pavilhão de Portugal – Hacklathon!
  • Mar 4 – Coimbra Codes #3 @ Nest – Monthly informal meeting where the Coimbra entrepreneur community meets.

Geek Culture

Coimbra breathes geekness #1

Geek Stuff

October 30 – Coimbra Scene Meetup @ Nest – Monthly informal meeting where the Coimbra entrepreneur community meets. No talks!

October 31 – Robotics Introduction @ Casa das Artes – The wonderful Artica will given an introduction to Robotics using their own robots. (45 euros)

November 6 – UnixDEI @ DEI – A Saturday of talks for the unix geeks all around.

November 21-22 – Portuguese Hacklabs Meeting @ Casa das Artes – The Audiência Zero gathers all their Coimbra, Lisbon and Porto labs in an open weekend to present projects, share knowledge and develop new ideias.

December 4 – Coimbra Java User Group Meeting @ DEI – Introduction to Maven (by Sérgio Ferreira). It’s a must for those of you who want high paying corporate jobs.

December 4 – Coimbra Codes #2 @ IPN – Three 20min talks: Graph Databases (by my former student Pedro Paredes), Ansible and AWS deploys (by Vasco Pinho) and Property-Based Testing in Scala (by my former advisor Paulo Marques). I am also an advocate for property-based testing, although I believe Haskell works bests for this purpose.

December 11-13 – Ludum Dare @ Casa das Artes – 72h gamedev marathon competition.

December 12 – Portugal Google Developer Groups Summit @ DEI – Developers of Google-based services from Portugal, and maybe some from Spain will meet in Coimbra, with some Google developers coming as guests.

December 16 – Android Talks #2 @ Nest – Three 20 minute talks (I see a pattern here) about Android Development. If you are an hardcore developer, you’ll feel at home. If you are starting, you will get the idea anyway.

January 29-30 – Global Game Jam @ Casa das Artes – Another 72h gamedev marathon competition.

In the last month or so, we’ve had: Coimbra Codes #1, Android Talks #1, Portugal Virtual Reality Meetup and others…

You may have noticed that we are going to have two gamedev marathons very close, which may mean that we will not have our local version dubbed The Game of Games with local prizes.

Fun Stuff

Every Thursday – Boardgames @ Casa das Artes – Carcassone, Catan, Ticket to Ride are only the first games that will get you into economy, bluffing, pushing your luck and global world domination.

November 1 (First Sunday of each month) – RPG meeting @ Casa das Artes – Let’s play short RPG adventures on a rainy Sunday afternoon

October 31 to November 29 – Ano Zero – A whole lot of art expositions and performances.

December 4-6 – Comic-Con @ Porto – Not in Coimbra, but big and close enough to be mentioned here.

December 17 – StarWars Episode XII – The Force Awakens

I intend to make this a periodic thing. If something is missing, please let me know.

Sobre a Avaliação da FCT

Foram revelados os resultados da primeira avaliação da FCT por um painel externo desde 2005.

De realçar que o líder do painel foi membro do conselho directivo da ESF até 2013. ESF essa a quem a FCT encomendou o corte de 50% na avaliação das instituições de investigação portuguesas, e que esconderam esse facto do público. E quando dizem que esse mesmo elemento alega que “A decisão de contratar a ESF foi muito boa”, não há senão um elemento de ridículo.

Relativamente aos resultados, defendem que a FCT deve gradualmente extinguir as bolsas individuais a favor dos programas doutorais patrocinados, e bolsas previstas nos orçamentos dos projectos de investigação. Em relação à primeira solução, acontece que várias áreas ficam sem financiamento, porque não são vectores estratégicos nacionais, independentemente do aluno até ser o melhor da área e ter um projecto que faça todo o sentido. Vamos ter uma levada enorme de biocientistas quando outras áreas ficam para trás.

Em relação às bolsas pagas por projectos de investigação, há o entrave de que o projecto de investigação pode não estar totalmente sobreposto com o período em que o aluno está a fazer o doutoramento ou pode ter uma curta duração. Poderia ao menos existir a possibilidade do doutoramento continuar a ser pago, mesmo depois da data de final de projecto? É que este modelo já existia anteriormente, e optava-se principalmente por bolsas individuais. Até porque essas pagavam as propinas de cerca de 3000€ anos, e as de projecto não.

Mas o motivo para quererem acabar com as bolsas individuais é porque a FCT não tem recursos para processar tantos pedidos de bolsas individuais. Quando há anos que os bolseiros se queixam destes atrasos, é ridículo que a FCT precise de uma comissão externa para lhes dizer isto. Foi mau (péssimo, aliás) planeamento por parte da FCT. E considerando que há apenas uma chamada ao longo do ano, concentra os esforços que deveriam ser melhor distribuídos, numa altura em que durante semanas, a FCT não atende o telefone (eu tentei, acreditem!). E quem saía prejudicado eram os alunos que muitas vezes tinham de esperar até 9 meses após a conclusão do mestrado até poder ter bolsa de doutoramento.

Outro dos pontos que defendem é que “as bolsas de pós-doutoramento não devem exceder 3/4 anos”. Na minha opinião as bolsas de pós-doutoramento nem deviam existir. Os projectos e instituições deviam ter orçamento para contratar investigadores. Com um daqueles papeis que estabelecem uma relação de natureza jurídico-laboral, do tipo que a FCT tem medo e luta para que as bolsas nunca o tenham. De forma a que possam pagar impostos como as outras pessoas, e ter todos os benefícios correspondentes. E já que nem consideram os doutorados trabalhadores (apesar do painel avaliador o fazer, ao dizer “... os salários de doutorados…”, quando eles recebem bolsas e não salários), muito menos consideram os alunos de doutoramento, que trabalham a full-time após o primeiro ano, mas mais uma vez não têm emprego. Andam até aos 35 anos com bolsas, um seguro social voluntário e sem pagar impostos. É assim que tratamos a população que acabam os cursos com as melhores notas. E mesmo isso penso que está a acabar. Da realidade a que tenho acesso e que tem procura, os melhores alunos (e mais competentes) estão a sair para a indústria, deixando a Universidade com os alunos mais medianos. O que era exactamente o que precisávamos. Estatísticas dessas não vi eu no relatório.

Concluindo, a avaliação foi algo que se focou em procedimentos e não em conseguir resultados. Não se falou da ligação com a indústria, nomeadamente fomentar parcerias que financiem projectos. Não se falou na captação de talento, nem nacional nem internacional. Não se falou do estatuto do bolseiro, nem dos valores das bolsas. Apontou-se um erro que existe há mais de 10 anos na FCT, e que a Associação de Bolseiros não faz mais nada senão falar disso. E o único motivo para apoiar a correcção dessa medida é a falta de recursos humanos para fazer uma avaliação anual, de algo que nem devia ser anual.

Farewell passenger!

6 years later and two VPS later, I decided it was time to leave Phusion Passenger.

I was experience several downtimes due to database (both mariadb and mysql) crashes. It turns out the database could not recover because ruby was occupying the whole memory (512Mb on DigitalOcean). The solution was to shut down apache, then start the database, and finally start apache again. But this would only work for a couple of days.

I decided to move all my django sites to WSGI (yes, I was deploying django apps using passenger) and ported a sinatra app to django (thanks to legacy database support) just so I could get rid of ruby.

It all works well now. But in the meanwhile, I went to read Passenger’s source code and I am currently considering forking and removing everything ruby from it. Just an apache2 module that would automatically handle wsgi, avoiding 4 lines of apache config per project. It can be done, I am just not sure it is worth the time. Maybe it would help other people with plain-simple deploying on Apache/NGINX?

BQ Aquaris 4.5 and adb

If you connect a Bq Aquaris 4.5 (or any other model from bq) to your windows/mac/linux, it won’t show in adb, Android Studio or Xamarin.

The solution is to add the VendorID to a certain file. My VendorID is 0x2a47 and you can get yours from Apple Menu > About This Mac -> System Report -> Usb -> Bq Aquaris 4.5 -> VendorID.

Then append that Vendor id to the following file: ~/.android/adb_usb.ini. Restart your adb server and it should work.

sudo adb kill-server; sudo adb start-server

RAW Open Data

No final da semana passada, nós (Condominio Criativo) ajudámos a organizar o hacklathon do RAW OpenData, organizado pelo IPN para promover o uso de OpenData.

Os Datasets

Para o efeito reunimos datasets para serem trabalhados na hacklathon. Estão todos listados no CKAN do IPN sobre ImproveCoimbra e Universidade de Coimbra.

Do ImproveCoimbra (Obrigado Sérgio e Gaspar), disponibilizámos dados de rendas de coimbra, cafés com wifi disponível, e o arquivo plain-text das actas da assembleia municipal.

Da Universidade de Coimbra, através da vice-reitora Clara Almeida Sousa, disponibilizámos um excel que serve de base ao UC em Números, o arquivo fotográfico usado na candidatura à UNESCO e a API do Agenda7. Isto tudo em 1 mês de trabalho.

Os Projectos

Das menos de 20 horas disponíveis para trabalhar nos projectos (onde se encaixava uma noite que supostamente era para ser dormida), durante a latada (alunos com outras prioridades) e durante a semana (os ex-alunos estavam no emprego), saíram 3 projectos e 2 ideias para projectos.

O primeiro projecto consiste numa visualização dos alunos, docentes e pessoal não docente de cada faculdade. Feito em D3.js pelo Hugo Besteiro.

O segundo projecto é um site informativo sobre diferentes características de Coimbra que tentam promover a cidade como um bom sítio para estudar. Reúne informações de diferentes fontes, incluindo dados da universidade, rendas, cafés wifi, eventos, etc…

O terceiro projecto consiste numa aplicação mobile (mockups) e uma aplicação web (funcional) que pretendem ser a forma de aceder a um conjunto de eventos (Agenda7 para começar, mas incorporaria outras fontes) directamente no telemóvel. Permite a filtragem inteligente de eventos relevantes, e de avisos de eventos que sejam do interesse do utilizador. Um ponto fundamental da solução é que mostra os eventos de acordo com a distância geográfica, algo que não é muito utilizado hoje em dia.

O Rant

Por ajudar a organizar, entenda-se fazer o máximo num orçamento limitado. Uma das coisas em que tivemos de cortar foi nos prémios. E no entanto imagino o dinheiro que foi gasto em trazer oradores, e que os convidados gastaram às respectivas organizações para assistirem à conferência.

Eu não sou da área financeira, mas a minha proposta de orçamentos para projectos de open-data é a seguinte:

  • 10% Divulgação e Sensibilização. Eventos como estes são necessários, sobretudo para fazer divulgação de resultados passados (algo que faltou aqui). No entanto deve ser uma fatia muito reduzida.
  • 50% Abertura de Dados. Os três datasets da UC que conseguimos arranjar em 3 meses foi algo limitado e feito a custo 0. Seria interessante abrir uma quantidade maiores de dados, algo que precisaria de esforço técnico e orçamento para ser executado.
  • 40% Estimulo (leia-se prémios, sobretudo se monetários) para developers usarem os dados. E isto é o ponto chave. São as aplicações (e eventuais negócios) que saírem daqui que vão servir de cartão de visita para outras instituições abrirem os seus dados. Sensibilizar com exemplos concretos e de sucesso funciona muito melhor, do que palestras generalistas.

Swift Language

At its core, the [Swift] language is designed to eliminate bugs, but not in the academic way that, say, Haskell eliminates bugs by preventing normal people from writing code in it.

Swift Impressions

350 bolsas não são suficientes

O governo voltou atrás e vai lançar apoiar mais bolsas individuais num acréscimo de 300 a 350 bolsas..

A ABIC reclama que o número não é suficiente, e apenas os que pedirem reavaliação serão considerados.

Para mim isto não é suficiente. O problema de fundo continua por resolver.

Continua a não haver uma transparência na política científica em Portugal. Não se fazem remendos como estes. Definem-se áreas em que apostar, calendarização para calls nos diferentes tipos de apoio.

Os centros de investigação, empresas e universidades não estão a ser consultados para determinação dessa política de investimento.

Tirando os felizes 350 contemplados, o sistema científico nacional continua desnorteado e dependente sobretudo de fundos europeus e não nacionais. O que não seria um problema tão grande, se a regulamentação de bolsas e do estatuto bolseiro não fosse da responsabilidade da FCT e do Governo.

Tech Startups in 2014

Everyone and their dog in the Startup world should read this:

Waffle’s 2014

Venture Capital and their eagerness to own the next Facebook has made them blind. They are throwing away money at stupid ideas, or event at cool domains without ideas.

Please make your idea work without any funding at first. In Computer Businesses, things are cheap to make. VCs, please focus on things that have real value, and not only in the VC Round A, Series B bubble world.

Surface Blades

Three weeks before launching its new line of products, the Surface design team took a trip to Pasadena, CA, where they held a 3 day workshop with renowned design school Art Center College of Design.

The group of 11 students chosen for the workshop were the first people outside of Microsoft to see a new accessory the design team has been working on: a music attachment that clicks into a Surface and allows users to easily remix music. They asked the students: what else would you want to attach to a Surface? They code named these attachments blades.

Don't Drive and Glass

Lawmakers seek to ban google glass on the road

This is relevant and huge. While google is pushing legislation to allow for self-driven cars, lawmakers are trying to avoid google glasses on drivers. Which I guess it’s an improvement over text-and-driving, since Google Glass can filter those for you, and has a text-to-speech system, like siri or some cars.

Fix encodings in MySQL Database

Before you start: backup your database. Even if you are not experience any issue.

When migrating a redmine database between two servers, the encodings got screwed even though both databases were using UTF-8 (the lingua franca of the web that was supposed to avoid this kind of problems).

Anyway, the trick is to make sure you have every table defined as UTF-8.

The problem is that the content of the database is still fucked up. To solve this, you can use the following script that uses triple convert (latin1 -> binary -> utf8) on every column of every table in the database.

Downton Abbey, Upstairs/Downstairs and Parade's End

I usually follow American TV shows to the point that I have the dates and times of their airing on my calendar. Lately there have been some British productions that have caught my eye, and these three are all in the same period, something that might be in vogue over there.

Downton Abbey is a drama about an aristocrat family and their servants facing the new century and the new British social structure and lifestyle. Things like the automobile, the telephone, WWI and the Irish revolution are some of the events that the family has endured through the show. I usually don’t like these kind of dramas, but after one or two episodes I wanted to know more about the characters that I ended up watching the two first seasons in two days.

Upstairs Downstairs is also about the difference between aristocrats and their servants in the same period. Despite considering it a Downton copycat, being more fast-paced, I ended up enjoying the show.

Parade’s End is also set in the same period as the other two, but focus on the matrimonial (and extra-matrimonial) affairs of Mr and Mrs Tietjens (Benedict Cumberbatch and Rebecca Hall). Rebecca Hall plays a hell of a character, and was the reason I made it though the first episode. I don’t regret watching the rest of the show.

The difference between Computer Science and Computer Engineering

This is very important to coordinate systems used to map the height of the ground, because the idea of quantified ‘height’ implies that there is a level surface somewhere below us which has zero height. Even statements about relative height imply extended level surfaces. When we casually say ‘Point A is higher than point B’, what we really mean is ‘The level surface passing through point A, if extended, would pass above point B’ So to accurately quantify the height difference between A and B, we would need to know the shape of the level surface passing through point A. In fact we choose a general ‘reference level surface’ of zero height covering the whole country to which we can refer all our measured heights. This reference level surface is not flat!

A guide to coordinate systems in Great Britain

On 24 January 1918 Lenin signed a decree that moved the brand-new Soviet Union from the Julian to the Gregorian calendar. In order to bridge the 14-day gap between Julian and Gregorian, 1-13 February 1918 were omitted, so that 31 January was directly followed by 14 February.

Making

In “I scanned %g directories”, you’d expect “directories” to be in the accusative case (since it is the direct object in the sentnce) and the plural number, except where $directory_count is 1, then you’d expect the singular, of course. Just like Latin or German. But! Where $directory_count % 10 is 1 (“%” for modulo, remember), assuming $directory count is an integer, and except where $directory_count % 100 is 11, “directories” is forced to become grammatically singular, which means it gets the ending for the accusative singular.

A Localization Horror Story: It Could Happen To You

People whose names break my system are weird outliers. They should have had solid, acceptable names, like 田中太郎.

Falsehoods Programmers Believe About Names

Montain Lion

For those of you without an iPad, a recent iPhone and without iCloud, here are the useful new features of Mountain Lion:

  • Being able to use two (or more) harddrives as Time Machine.

Yep, that’s the only new interesting thing.