Wednesday, September 3, 2008

Don't cry you nerdy baby!

About my post about Chrome's license, don't cry! this is anything but new! that license applies to most Google applications, such as Gmail, GDocs and so on... so they've already done stuff to you and you liked it!

Chrome crappy license terms

Well, I'm almost forced to blog about this, it has been hitting hard every major geek source of news and every geek distribution list I know, Chrome's license agreement is pure crap, bullshit, crappy bullshit, that is.
 11. Content license from you

    11.1 You retain copyright and any other rights you already hold in Content which you submit, post or display on or through, the Services. By submitting, posting or displaying the content you give Google a perpetual, irrevocable, worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute any Content which you submit, post or display on or through, the Services. This license is for the sole purpose of enabling Google to display, distribute and promote the Services and may be revoked for certain Services as defined in the Additional Terms of those Services.

    11.2 You agree that this license includes a right for Google to make such Content available to other companies, organizations or individuals with whom Google has relationships for the provision of syndicated services, and to use such Content in connection with the provision of those services.

    11.3 You understand that Google, in performing the required technical steps to provide the Services to our users, may (a) transmit or distribute your Content over various public networks and in various media; and (b) make such changes to your Content as are necessary to conform and adapt that Content to the technical requirements of connecting networks, devices, services or media. You agree that this license shall permit Google to take these actions.

    11.4 You confirm and warrant to Google that you have all the rights, power and authority necessary to grant the above license.


Another important thing to take into account is that, at least for me, Chrome - in its current shape doesn't mean anything, it is yet another browser in the sky so I don't give much about it; MAYBE in the future I'll have to eat my own words but, and this is the reason why I didn't write about this earlier, I don't see a need for Chrome right now.
The discussion on the license terms, if it's fair or not to ask for what they ask, can go on forever but it is certainly not illegal (some claim that it is).

Farewell EcmaScript 4, Adobe are you in deep pain?

According to this email from Brendan Eich the discussions on EcmaScript 4 are over, finalized, ended, dead, buried - you get the picture. Everyone will have to move on and continue to work on EcmaScript 3.1.

For those of you who haven't been following this soap opera here's a quick review: version 4 of the standard was mainly backed by Adobe who wanted to have a proper standard behind its product ActionScript, remember that the language is the main workhorse behind Flash, Flex and threrefore a wealth of derived products. 

But who cares about standards anyway? mostly everyone. Picture a world where TCP is not backed by RFC 793 and to browse the web you don't use HTTP but a protocol developed by, say, AT&T that might be open, well documented and whatever else, but there will never be an official consensus about its use. 

You might say, well there is no standard behind MS Word .doc file format for instance and you would be right, but here we are talking about mindblowingly massive stuff, and that's what Adobe was aiming for, remember the latest addition to the family, AIR that takes ActionScript programming out of the browser cage and into the world of desktop programming.

So now Adobe ended up with a language that's a bit compliant with EcmaScript 3, with some extensions - so it _does no comply_ - after all the effort...

Aaaaanyway, this was supposed to be merely an informative post, much more info about the background of the issue can be found in this blog.


Cuadradito, puntito, rayita, cuadradito, cuadradito

Están apareciendo en Buenos Aires carteles en blanco y negro con esta forma:



Pero se "olvidaron" de enseñarle a la gente cómo se usa. Claro, me van a decir que seguramente es una estrategia de marketing ya que apuntan a un mercado que conoce lo último en tecnología, etc, bla, bla. Para mi la pifiaron, es algo que _puede llegar_ a ser muy útil o puede denigrarse tanto como "mandá un sms al 666 con la palabra PONERLA y te mandamos una lista de chicas en tu zona después de responder una trivia de 223 preguntas".

Acá pueden ver un video promocional de ScanLife que más o menos te da una idea de qué se trata:



Para los más geekitos acá les va una implementación en J2ME http://sebastien-arbogast.com/2008/07/06/mobimap-10-rc2/

Tuesday, September 2, 2008

Cómo está tu mente?

La mia quemada, agotada, entrevistar me cansa más de lo normal y esto es un triatlón. Casualmente me crucé con un post que había leido hace mucho escrito por el director de la escuela de Kung Fu a la que solía ir. No es algo brillante ni extraordinario, pero que conviene tener en cuenta.

Me pasa mucho que después de algunas semanas de laburo muy intenso pierdo el scope de un montón de cosas y eso sólo se recupera con meditación. También pasa que tenés que tomar decisiones difíciles o resolver problemas complejos, pero antes uno no se plantea en qué estado tiene la cabeza, sería como correr una maratón de 42 km sin entrenar o estando exhausto.

Hay que evitar los "cierres mentales", hay que aprender a conocerse lo suficiente como para detectarlos y tomar acciones correctivas. Meditar no es fácil, de hecho es en general difícil, pero la meditación explícita no es la única forma de cuidar nuestra mente; muchos practican deportes, van a la iglesia, miran una peli, etc. Lo bueno es ser consciente de estas situaciones, de uno mismo y de los elementos que nos mueven.

Certified Blablabla

Como sabrán (o no) estoy corriendo el 42K de entrevistas en Córdoba y me encontré con algo curioso, hay mucha gente certificada. Todos los candidatos menos uno rindieron al menos una de las certificaciones que ofrece SUN para tecnologías relacionadas con Java(tm). Uno diría "qué bueno, grosos los cordobeses", uno me dijo que era porque tienen un centro de certificación acá, pero en BA también hay y relativamente muy pocos van. Otra cosa que uno podría inferir como causa es la competencia por conseguir trabajo, siendo que hay poca oferta, aunque dudo que ese sea el caso, hay tres empresas que podrían considerarse importantes: Motorola, EDS, Intel y en mucho menor medida Gameloft (ahora sumemos Globant). La oferta laborar el buena en general y las empresas compiten bastante por la gente. En fin, todavía no llegué a ninguna conclusión que me termine de cerrar, voy a seguir investigando las raíces de este certification madness.

Hack me babe! I implement Hackeable

Recién tuve que escupir un mail tratando de convencer a alguien de que _no use_ EJB, acá va:

Hi guys,

I'd like to take the conversation one step further and give you my opinion on "why I think we should go REST". Exchanging information online among apps is all about exchanging bits over a socket. The ways I've done this before are EJB, some sort of RPC implementation (i.e. spring rpc), WebServices (Axis) and simple custom HTTP calls. With the advent of "Web 2.0" completely different websites (apps) need to communicate with each other, besides screen scraping (for non-cooperative external apps), simple HTTP calls are great. Why should I have to implement a whole set of things just to get simple info from another app? As happens with EJB and WebServices (to a lesser extent), and that what happens with *ClientName* apps most of the time. Also, as we are using Javascript and JSON extensively we can leverage that knowledge to use JSON as a transport and not XML, which is waaaay better for these matters.

For the particular case Sofía mentions, a couple of cooperative servlets in each app would do for now. In the big picture, IHMO we should think in terms of exporting all the functionalities in, say *AppA*, as simple REST services that any other app can use with simple HTTP calls. We've already done this in a way with *AppB*, you can go an talk JSON to it through the Jabsorb bridge.

Well, this is a long email, we can discuss the topic further over the phone if you want.

Cheers,
Juan 


La idea que quiero transmitir en realidad, más allá de si se implementa REST, RPC o whatever, es la de hacer una aplicación hackeable o hacker friendly. Cuando estás codeando esa fina capa de aplicación/servicios está bueno pensar en cómo vas a proveer esos servicios a todo el resto del mundo, que nadie piense siquiera en hacerte screen scraping, un buen ejemplo son los WebServices de Amazon. La sigo en otro post porque ahí viene el próximo entrevistado.