Açúcar União’s New Logo

Few things are more romantic, and perhaps pointless, than lamenting the loss of a good visual identity. Ultimately, however, brands are part of our culture, and it hurts to see greatness go.

The latest episode: Açúcar União.

I will refrain from detailing what makes the new logo so much worse than the one from 1975. Same for the packaging. Instead, see the before and after, and draw your own conclusions.

1975 Logo

logomarca-unic3a3o-quadrada-atual1

2015 Logo

11083615_10152965083548598_8285588040956797730_n

1975 Packaging

financiamento-0142
2015 Packaging

Refinado_1kg

WordPress and CodeClimate: 1 second thought experiment

After spending the last year-and-a-half working on a new Rails product, and recently succumbing to Code Climate, I took a small WordPress project. Don’t get me wrong: I love WordPress.

But one has to wonder what score this file would get on Code Climate.

Text for Felipe Fernandes’ solo exhibition

If you’re in Rio from March 12 to April 30, be sure to go see Felipe’s paintings at MUV Gallery in Ipanema.

Here’s what I wrote about it (in Portuguese):

Em uma talentosa geração de novos pintores, Felipe Fernandes há alguns anos vem recebendo atenção particular e crescente de seus pares e de quem gosta de arte.

Artistas, como as demais pessoas, se definem tanto pelo que fazem quanto pelas coisas que não fazem. Antes de descrever o que de melhor ele faz, eu gostaria de apontar algumas das estratégias atuais que Felipe tem evitado.

A primeira é a dos temas escandalosos ou facilmente polêmicos: vísceras, tabus sexuais, bombardeios no Oriente Médio, animais copulando na rua ou ataques aos costumes.

A segunda é a da pintura em grandes dimensões, muitas vezes feita com o intuito de ocupar espaços expositivos maiores. Frequentemente, pinta-se grande, porém dividindo o trabalho em pedaços menores para facilitar o transporte e a entrada na casa dos compradores – com o ônus de que a pintura perde toda a coesão ao ser azulejada.

A terceira é a ambição literária. Não vamos encontrar frases com sacadas linguísticas nas telas ou nos títulos das suas pinturas.

A quarta é a ambição científica. Felipe não encara seu trabalho de pintor como “pesquisa”, e nem lança mão de outros procedimentos que, mais do que fertilizar a arte com os métodos da ciência, acabam deixando claro como nós artistas somos ingênuos quanto ao que constitui ciência.

A quinta é o uso da fita crepe na pintura. A fita crepe, usada para delimitar as áreas a ser pintadas, está para a pintura assim como os preservativos estão para o sexo — anulam o perigo, atenuam o prazer, e, salvo acidentes, esterilizam o ato.

É claro que cada uma dessas estratégias tem praticantes extraordinários. Hoje, no entanto, todas elas dão sinais menos ou mais claros de exaustão.

Quando Felipe definiu o nome desta exposição, “Primário”, ele explicou que escolheu a palavra para se referir aos princípios, às coisas primitivas, primevas da pintura. É aí que estão a força e afirmação de seu trabalho.

A pintura de Felipe Fernandes é feita categoricamente com o pincel. Não vou me deter neste fato, a não ser para lembrar que as duas mais famosas pintoras do Brasil negam o pincel – uma parcialmente e outra integralmente.

A pintura de Felipe é uma pintura das cores, mais ainda agora que ele amplia sua palheta com marrons, pretos, brancos e passagens mais saturadas.

A pintura de Felipe passa a ser também, nas obras desta exposição, uma pintura de contrastes e gradações entre fosco e brilhante, tinta carregada e velaturas muito diluídas, densidade de ataques e silêncios.

Até as formas reconhecíveis são primais: folhas, dentes, flores, olhos, vasos, xícaras, mãos.

Sem forçar a barra, Felipe não nega ao espectador a chance de acompanhar, pelos pentimenti (os traços cobertos pelas sucessivas mudanças de ideia na pintura, que podem deixar relevo), o caminho de seu raciocínio e sensibilidade.

O resultado são pinturas intrigantes à primeira vista ou após muito tempo, quando vistas de longe ou de muito perto. Isto é raro.

Ruby Method Autoload

Continuing to study Rails’ source, I quickly had to take a look at the Rack gem, which wraps HTTP requests and responses. It’s far smaller than Rails.

The first thing that caught my attention was the way it loads the modules.

autoload :Builder, "rack/builder"

Autoload is Ruby’s way to lazy load modules. It only loads the above module when Builder is called in the code. This page breaks it down in more detail.

Felipe Fernandes

On Thursday, March 12, Felipe Fernandes opens his new exhibition, which I curated (or co-curated, Felipe also played a big part).
If you’re in Rio between the 12th and April 30, make sure to go. It will be great.

FELIPE_MUV_mid

React.js and software workarounds

The amount of conceptual compromises React.js either addresses or introduces is very high. That, however, is typical, especially in a browser environment.

This introductory talk explains the basic design decisions that led to React.js.

Although the video is a bit old, it’s also surprising to hear, at the very end of the video, that the presenter has no idea whether React will be used for Facebook mobile on browsers. Reminds us of Microsoft.

Ruby on Rails: Array method From

Looking at RoR 5.0 beta’s source code, here’s a very simple method that has been around for a while and does what the framework is so great at: humanizing the programming interface.

/activesupport/lib/active_support/core_ext/array/access.rb@from

 # Returns the tail of the array from +position+.
 #
 # %w( a b c d ).from(0) # => ["a", "b", "c", "d"]
 # %w( a b c d ).from(2) # => ["c", "d"]
 # %w( a b c d ).from(10) # => []
 # %w().from(0) # => []
 # %w( a b c d ).from(-2) # => ["c", "d"]
 # %w( a b c ).from(-10) # => []
 def from(position)
   self[position, length] || []
 end

It’s an array method, so it will use the dot-chained array as self as is the case in Ruby.

It uses the already pretty convenient array[new_start, new_end] notation to chop off the beginning of the array.

If you are working on an array that has, say, 5 elements, but passed it a position value of 8, the above operation will mercifully not throw an exception – rather, it will just return nil.

In those cases the || [] ensures the method will still return an array type, in this case an empty one, which is a sweet spot between making sense and being convenient.