We all know that Maps is such bad implemented product by Apple (and people got fired by it). We also know siri doesn’t work as well as the package says.

But one thing that confounds me how possible is to make something as bad as this is iMessage. Beyond maps or siri, iMessage was so poorly implemented that either this was designed by a committee or the person wasn’t even a good product manager.

Why does is it so bad? So check this. In iMessage Apple decided to implement a version o SMS that was free and able to send group messages (early versions of SMS in the iPhone were able to send messages to a group of people but each reply was treated as a single message from that contact). However one of the problems that you have immediately as you have groups messages is where you can add arbitrary people is that some people may want to leave. Apple decided that iMessage should be a SMS replacement and not a IM over Phone kind of thing (like whatsapp). And here is where the problems start.

Each time you send a group message you send both the message and the group of people to everyone. Each of the participants each time they reply, they reply to everyone. As long anyone replies to a group with those people, everyone will receive both of those things. The problem is that, even if you try to delete that “chat” you are just deleting a message and a group of contacts. As soon as someone else in that group, replies to that “thread” what happens is that you get everything all over again.

The only way this makes sense is if you design iMessage as SMS+ think. The problem is that is broken! I can’t leave group messages and I have people always sending messages to old groups.

Since I can’t fix this (and yeah Gruber, sorry but this is one case, if this stuff was open, I would hack the living shit out of this to make it better), i decided to implement a kind of doomsday device.

Since Messages.app is connected to iMessage and Messages.app has support to AppleScript, you can write a AppleScript and a Python script that allows you to send messages from any python script. You can use as a iMessage API as long you have Messages.app open and connected to a iCloud account with iMessages activated.

The thing is you can send mass messages to any group of people. As it were as long you can can get the chat id you can nuke them with messages continuously leaving them with two options: endure it (which will cause them to waste huge amounts of batery) or turn off iMessage.

Maybe this can open Apple eyes.

How to use the scripts

As long you can open a terminal you should be able to use the scripts.

The first thing you need is to open Messages.app and ensure that you have a iMessage account set up.

Next you copy paste this into a file:

set c to ""
tell application "Messages"
    set c to chats
end tell
return c

and run this as follows (suposing you’ve written a file in your home directory called dumpChats):

$ osascript ~/dumpChats

this will output a list of chats that you have open in your Messages.app. What you need next is to identify the iMessage chat that you wish to hit. Now this is a hit and miss kind of thing. I think they are orded from last to first, to keep trying. An iMessage chat id should look like

iMessage;+;chat555555555555555555

After this is simple. You only need to write two files. The first is the AppleScript file:

on run argv
  set message_text to item 1 of argv
  tell application "Messages"
      send (message_text as text) to text chat id "iMessage;+;chat555555555555555555" 
  end tell
end run

This will read the first argument and send it to that iMessage chat. Write that into a file called nuke.ascript.

Next you need to interface this with python so you can use a proper programing language. This is done by the next script. Write this into nuke.py

from time import sleep
from subprocess import call
from random import randrange
for i from range(1,100):
  call(["/usr/bin/osascript", "/Users/user/nuke.ascript","NUKE!"])
  sleep(randrange(3))

The “/Users/user/nuke.ascript” should be replaced with the full path to nuke.ascript file.

And simply call python nuke.py.

Recently I’ve came across “Stephen Fry in America”, a diary of Fry’s travels through out every one of those United States with its faithful Hackney carriage. It is packed with wonderful tidbits, including a very small interview with Jonny Ive talking about the difference between US and UK and the influence of that difference on the fruition of ideas, Fry’s recurrent James Bond quotes, and Fry’s continuing reflections on life (particularly American) by his wonderful use of language. If you have the time, take a look.

I wish I could have a beer with Stephen Fry.

TextMate 2 was released today as opensource. This is what I want from a fork:

  • A programming language so I can configure the editor (E.g. V8/JavaScript, ECL/Common Lisp).
  • Buffers, (split my window into slices and put tabs in each subwindow).
  • Implement the interface in ObjC and everything else in a high level programming language.
  • A package system with a online companion site.
  • A online command line interface where I can call commands.

Essencially what I want is emacs but well done and integrated with OS X

I was reading the 37signals article on the recent bubble and I got an idea. Is it possible to deflate the bubble with enough pressure that allows it have a more sustainable growth, instead of allowing it to grow without any control?

As they point out the problem in this case has to do with supply and demand. As new and bigger valuations are made, more money enters the valley, and those investors are expecting returns for their investment. When the companies start failing because they are unable to achieve profits or facebook isn’t buying anything else, new money will be cut off. At this moment, any company that can’t make money will die out (Think twitter).

What I am proposing is having some kind of crowdsourced/automatic system to determine the social awareness of a brand/service, and can predict with some level of confidence the future for a given start up. Basically some kind of Standards & Poors for startups. As long investors did indeed trust this tool, the bubble could be maintained as long they had a risk/benefit value associated with the investment. Riskier investments should yeild greater returns.

If Google wins the Oracle Vs Google case about Copyrightable APIs, that means that you can create systems that implement iPhone APIs and sell them? That means that Android, Windows Phone 8 or (god forbid) Blackberry could theoretically run iPhone applications.

This could be the turning point for any one of those platforms.

A two page requirements report on Intigos. That’s my work ahead for the next five months.

Everyone sees Facebook as a social interaction network. However you are wrong. What Facebook is its a identity layer on top of the internet. That what gives it part of its value. If you look at their EULA you find that you can’t create fake persons. And lets face it, Facebook solved this problem incredibly well. There isn’t much people today that are connected to the internet without a Facebook account. This allows us to create other services on top of the notion that I’m not talking with ‘a’ person but with ‘this’ person.

Now, last night, while I was in bed I’ve read this post about Path:

It all started innocently enough. I was thinking of implementing a Path Mac OS X app as part of our regularly scheduled hackathon. Using the awesome mitmproxy tool which was featured on the front page of Hacker News yesterday, I started to observe the various API calls made to Path’s servers from the iPhone app. It all seemed harmless enough until I observed a POST request to https://api.path.com/3/contacts/add. Upon inspecting closer, I noticed that my entire address book (including full names, emails and phone numbers) was being sent as a plist to Path. Now I don’t remember having given permission to Path to access my address book and send its contents to its servers, so I created a completely new “Path” and repeated the experiment and I got the same result – my address book was in Path’s hands.

There are a lot of people trying to create social networks. Path is just another one. I’ve heard about Path since their latest software iteration, 2.0. I never fully understood Path or what it tries to accomplish that Facebook doesn’t do better. The only thing I liked in that app was the interface. Everything else shows a incredible lack of focus. They are trying to combine foursquare, Instagram and in some sense Facebook into an app that I can only access on my phone. This isn’t useful. I’m not 16 and I’m not on my phone all the time. Give me a web interlace for your social network, for the love of god.

Path CEO, Dave Morin, gave a statement saying they were only trying to make it easy for you to import friends. I find this behavior appalling. They are breaking my privacy, they never ask for my permission to do this and the answer given by Path isn’t good enough.

I do understand why copy my phonebook. In a world where everyone in the world has a Facebook account, how can a new start up create a copy of the social graph without users adding each friend? The thing is, they shouldn’t. Your social graph doesn’t matter. I’m not going to keep it up to date. Literally its like trying to make a job seeker application and trying to copy my professional network, but instead of using Linkedin, you are using a detective to find who did I work with. Its wrong.

Stop trying to be Facebook, seriously. They won. We have bigger problems to solve today. Currently Hollywood is getting their shit together and they will try to control the internet. Goverment is seeing that this isn’t just information and can carry the seeds of decent, so they also will try to control it. We need to crush them out of this planet. This is way more important than wasting your time in solving a problems that already are solved. If I want to learn about my friends I know where they are. They are on Facebook.

I’ve just saw this link on my timeline (Thanks Tiago). It describes accurately how crappy we are as a people.

As a country we are a very rich one. He have natural resources, good weather, good cuisine, etc. But everything that sucks in this country is caused by its inhabitants. We are a lazy people, short sighted. I seriously feel ashamed of being portuguese when I see how the rest of the population behaves.

If you disagree with me read the article and try to prove me wrong.

Iron sky is an independent movie made by two guys about space nazis from the dark side of the moon invading earth. Check the trailer, is so good.

I haven’t laugh so hard in years.