nunojob:~ dscape/08$ echo The Black Sheep

Posts tagged ‘Twitter’

dreamhost insanity day

The deal was – well – insanely good.

Unlimited storage and traffic, 1 domain name (plus all the extras) for two years. If you inserted 202 as promo code you would get a final price of 11USD.

I was lucky enough to get an update from Pedro while dreamhost was working and got a great deal. Even got a new domain name I was looking for: dscape.org! Yay! I had to use Google Checkout to buy as the website was not very stable and I didn’t want to risk it with a credit card transfer.

As one would expect *not* dreamhost.com was down for most of the day after the news started spreading on twitter. Dreamhost guys called that sluggish!? A hosting company website down by self DoS attack? As Alanis Morrissette would say “isn’t that ironic?”

The only thing visible thing that dreamhost did to change this was change the price to 22USD. Whoever decided that is clearly not the brightest crayon in the box. A hosting company is about having a stable service. You never charge different prices for the same service in the same day. If you want to do an insane promo, be prepared. Is it that hard to come up with a way to get the same (or more) customers without having your website on his knees and old customers leaving your service??

Final Considerations: How many cancelled their subscriptions paying 10USD a month for this deal? How much of a money loss will that represent for dreamhost? Is this a clear sign of a urgent need for income? Is it just insanity? How much money did Google made on this (1USD per transfer)? How many new domains were registered today?

RSA Encrypt & Decrypt in ruby

Well I finished the encrypt with RSA on ruby some hours ago and felt like sharing :)

Case you feel like doing something back for me just download the latest release of my beta twitter client and send me some comments to my email. It’s pretty hard to test something when my environment is completely contaminated !

require 'openssl'
require 'Base64'

class Rudolph
  class Crypt
    def initialize data_path
      @data_path = data_path
      @private   = get_key 'id_rsa'
      @public    = get_key 'id_rsa.pub'
    end

    def encrypt_string message
      Base64::encode64(@public.public_encrypt(message)).rstrip
    end

    def decrypt_string message
      @private.private_decrypt Base64::decode64(message)
    end

    def self.generate_keys data_path
      rsa_path = File.join(data_path, 'rsa')
      privkey  = File.join(rsa_path, 'id_rsa')
      pubkey   = File.join(rsa_path, 'id_rsa.pub')
      unless File.exists?(privkey) || File.exists?(pubkey)
        keypair  = OpenSSL::PKey::RSA.generate(1024)
        Dir.mkdir(rsa_path) unless File.exist?(rsa_path)
        File.open(privkey, 'w') { |f| f.write keypair.to_pem } unless File.exists? privkey
        File.open(pubkey, 'w') { |f| f.write keypair.public_key.to_pem } unless File.exists? pubkey
      end
    end

    private
    def get_key filename
      OpenSSL::PKey::RSA.new File.read(File.join(@data_path, 'rsa', filename))
    end
  end
end

Rudolph – Yet another Twitter client

I felt like trying the Shoes framework. Here are the results so far. When I get some free time I’ll try to post some guidelines to do something like this.

Webpage: http://the-shoebox.org/apps/105

Github: http://github.com/dscape/rudolph

NYU visit to hawthorn

I had to pleasure to be one of the hosts for NYU group visit in Hawthorn. The students were very lucky and got to see really good talks. Robert Morris presented explained why services are so important for IBM and how research applies to business. It was really an excellent spontaneous talk and it was to bad he didn’t stick around so I could talk to him about it. Then they got to see talk on Stream Processing and how to manage real time processing and analysis for quantities of data that are possible considered impossible to handle by most common people. I also managed to see Grady Booch for the first time, in second life. He also gave an great talk about the beauty of software (www.booch.com/architecture/blog/artifacts/Turing%20Lecture.ppt) and showed the potential of second life for this kind of event. By then both Robert and Grady had my curiosity set on the future in what concerns intellectual property but I guess that’s not a good subject for showing IBM to graduate students :) eheh. It finished in beauty  with Laxmi talking about the famous Genographic Project (https://www3.nationalgeographic.com/genographic). For those who still don’t know the genographic project is a joint venture between IBM and National Geographic where they try to find out more about the history of migrations using DNA. Cool!! The social aspect was also really important and I think students were happy with the feedback we gave them about IBM. By the way the lack of blog posts is mostly because Twitter is taking over all my blog post that can fit in under one hundred and something chars.

Se eu ainda usasse o twitter

estaria a dizer:

  • O ubuntu eee é muito bom. Finalmente um sistema operativo diferente. Boa aposta! Mas há espaço a melhorar
  • Nunca mais faço o raio do post sobre instalar  linux numa usb particionada. Esta usb é a melhor amiga dos vossos dados do vosso PC Windows cheio de vírus que já nem arranca. E o truque é só instalar o grub na própria pen. Algo evidente mas que pode passar ao lado a um distraído qualquer (tipo eu)
  • O tempo em New York é fixe mas há coisas que não esperava. Por exemplo: Existem muitas culturas por aqui, africanos, asiáticos, hispânicos, americanos, suecos, brasileiros, o que quiserem. Só há uma coisa que não existe: Portugueses. Talvez por isso me olhem como uma aberração da natureza, algo não catalogado.. E ainda nem sabem a história pela metade. eheh
  • Já imaginaram ir a um supermercado com dois andares onde não há cebolas, carne, frescos, fiambre, queijo, fruta, alface ? Bem-vindos a América dizem eles.. :( Então deixem-me comer pah! Não quero refeições congeladas a saber a mel nem coisas diet que estão dentro de frascos ou pacotes. Em dois dias já percebo porque é que os americanos são, na sua maioria, balofos.
  • Os preços são, de facto, mais baratos aqui.
  • Há aqui lojas porreiras que não temos por Portugal: Barnes & Noble, Starbucks, Sears, Target por exemplo.
  • A comida é, como seria de esperar, horrível. Afinal que se pode esperar de pessoas que não comem alface, fruta, cebola, tomates, cenouras, whatever? Nem batatas têm. Só pre-fritas e congeladas. Porque descascar batatas custa. Suponho eu.

De volta aos carris

Estou a ler o livro Ruby in a nutshell do Yukihiro que é um dos dois únicos livros que a biblioteca da minha universidade tem sobre Ruby mas, infelizmente, não se apropria a um iniciante como eu. Então andava a aprender pelo help. Não acredito nessa do estuda rails e aprende assim Ruby.

A linguagem primeiro, a framework depois.

Só que existe um pequeno problema. Na biblioteca da Universidade do Minho existem tantos livros sobre Ajax como livros sobre Rails. ZERO!

Por sorte andava por entre o Twitter e o greader quando encontrei um livro para iniciantes em rails de graça! Nos próximos 58 dias quem quiser o livro Build Your Own Ruby on Rails Web Applications pode sacar-lo AQUI. Claro que a oferta apenas vale alguma coisa se o livro tivesse qualidade mas, ao que parece, tem. Pelo menos a ver pelas reviews que andei a ler.

OFF-TOPIC: Quem achar giro programar direct3D em .NET pode ler uma iniciação neste artigo.

UPDATE: Já estou a ler o livro e aviso desde já que a parte que ensina Ruby e OOP está medíocre. Leiam algo sobre Ruby antes de lerem este livro!