Archivos para junio, 2008

No cabe duda que hay muchos usuarios alrededor del mundo que descargaron Firefox 3 aunque el servidor tuvo una caída de 2 horas debido a la avalancha de descargas. Y nos tomo por sorpresa que el inicio de las descargas era a las 10 a.m. (Hora de San Francisco, EE.UU.)

Si deseas más información del record mundial de descargas

http://www.spreadfirefox.com/en-US/worldrecord/

Si quieres saber el numero actual de descargas:
http://downloadcounter.sj.mozilla.com/

Si quieres sentirte orgulloso de haber sido participe del record mundial y tener un certicado (en formato PDF) entra en:

http://www.spreadfirefox.com/en-US/worldrecord/certificate_form


Si todavia no te has descargado el Firefox 3, puedes hacerlo en:

http://mozilla.com/firefox

Un video – screencast que nos da la gente de Mozilla:

http://videos.mozilla.org/firefox3/screencast1/es.flv

Quest Error Manager es un framework que te ayuda a estandarizar el manejo de los errores y excepciones en aplicaciones ORACLE PLSQL. Escritas por el bien conocido Steven Feuersteins, básicamente son 4 tablas (q$error_context, q$error, q$error_instance, q$log) y un package (q$error_manager), te descargas el archivo qem.zip descomprimes y solo tendras que ejecutar el script: qem$install.sql que te añadirá en tu esquema las tablas y el package, luego viene una demo y ejemplos para que puedas ver su funcionamiento.

Según Steven el QEM te ayudará en 2 areas:

1.- Definición y manejo de errores

2.- Tracear tu aplicación en tiempo de ejecución.

Si luego decides quitarlo de tu esquema Steven ya te creado el script qem$uninstall.sql

No dudo que cada uno ya ha creado y tiene montado un manejo de errores y excepciones en sus aplicaciones pero no estaria mal echarle un vistazo al código que siempre se puede aprender y más de Steven Feuersteins un Gurú del PLSQL.

Info:
http://www.toadworld.com/Knowledge/DatabaseKnowledge/
StevenFeuersteinsPLSQLObsession/MyPetProjectsandContributions/
QuestErrorManagerQEM/tabid/210/Default.aspx

Descargar:
http://www.oracleplsqlprogramming.com/downloads/qem.zip

Página de Steven Feuersteins:
http://www.stevenfeuerstein.com/

Script# (Script Sharp), es un proyecto de Nikhil Kothari (creador del web development helper), básicamente es una herramienta para que los desarrolladores (.NET) que escriben código C# (C sharp) no tengan que escribir código javascript. Cabe resaltar que esta herramienta ha obtenido un premio a la excelencia en la ingenieria que otorga Microsoft.

Una imagen de como es la herramienta:

Y aqui va el tipico ejemplo “Hola Mundo”:

Si tenemos estos elementos en nuestro documento HTML:

<input type="text" id="nameTextBox" />
<input type="button" id="okButton" value="OK" />
<span id="helloLabel"></span>

Ahora escribo el script en C sharp en mi fichero HelloWorld.cs, haremos lo siguiente: en el evento onclick del boton (input type=”button”) recupero el valor de la caja de texto (nput type=”text”) y luego hare una llamada ajax y finalmente mostraré el resultado en la etiqueta (span).

using System;
using ScriptFX;
using ScriptFX.UI;

namespace HelloWorld {

    public class HelloWorldScriptlet : IScriptlet {

        private Button _okButton;
        private TextBox _nameTextBox;
        private Label _helloLabel;

        private XMLHttpRequest _request;

        public void Start() {
            _okButton = new Button(Document.GetElementById("okButton"));
            _nameTextBox = new TextBox(Document.GetElementById("nameTextBox"));
            _helloLabel = new Label(Document.GetElementById("helloLabel"));

            _okButton.Click += new EventHandler(OnOKButtonClick);
        }

        private void OnOKButtonClick(object sender, EventArgs e) {
            Callback completedCallback = new Callback(this.OnRequestComplete);

            _request = new XMLHttpRequest();
            _request.Onreadystatechange = Delegate.Unwrap(completedCallback);
            _request.Open("GET", "Hello.axd?name=" + _nameTextBox.Text, /* async */ true);
            _request.Send(null);
        }

        private void OnRequestComplete() {
            if (_request.ReadyState == 4) {
                _request.Onreadystatechange = null;

                string greeting = _request.ResponseText;
                _helloLabel.Text = greeting;
            }
        }
    }
}

Segun Nikhil aplicamos la magia del Script Sharp, con el siguiente comando:

ssc /ref:sscorlib.dll /ref:Script.ScriptFX.Core.dll /debug /out:HelloWorld.js HelloWorld.cs

y luego tenemos nuestro fichero HelloWorld.js con el siguiente código javascript:

Type.registerNamespace('HelloWorld');

////////////////////////////////////////////////////////////////////////////////
// HelloWorld.HelloWorldScriptlet

HelloWorld.HelloWorldScriptlet = function Scenarios_HelloWorldScriptlet() {
}
HelloWorld.HelloWorldScriptlet.prototype = {
    _okButton: null,
    _nameTextBox: null,
    _helloLabel: null,
    _request: null,

    start: function Scenarios_HelloWorldScriptlet$start() {
        this._okButton = new ScriptFX.UI.Button(document.getElementById('okButton'));
        this._nameTextBox = new ScriptFX.UI.TextBox(document.getElementById('nameTextBox'));
        this._helloLabel = new ScriptFX.UI.Label(document.getElementById('helloLabel'));
        this._okButton.add_click(new Delegate(this, this._onOKButtonClick));
    },

    _onOKButtonClick: function Scenarios_HelloWorldScriptlet$_onOKButtonClick(sender, e) {
        var completedCallback = new Delegate(this, this._onRequestComplete);
        this._request = new XMLHttpRequest();
        this._request.onreadystatechange = Delegate.unwrap(completedCallback);
        this._request.open('GET', 'Hello.axd?name=' + this._nameTextBox.get_text(), true);
        this._request.send(null);
    },

    _onRequestComplete: function Scenarios_HelloWorldScriptlet$_onRequestComplete() {
        if (this._request.readyState == 4) {
            this._request.onreadystatechange = null;
            var greeting = this._request.responseText;
            this._helloLabel.set_text(greeting);
        }
    }
}

HelloWorld.HelloWorldScriptlet.registerClass('HelloWorld.HelloWorldScriptlet', null, ScriptFX.IScriptlet);

Página Oficial:
http://www.nikhilk.net/ScriptSharpIntro.aspx

Video (10 minutos):
http://www.nikhilk.net/Content/Video/ScriptSharpIntro.wmv

Descargar:
http://projects.nikhilk.net/Binaries/ScriptSharp.zip

Tutorial PDF:
http://projects.nikhilk.net/Binaries/ScriptSharp.pdf

Google tiene nuevo favicon

Publicado: junio 15, 2008 en Google
Etiquetas: ,

Todos los que usamos Google nos hemos dado cuenta de que el favicon ha cambiado, la razón es porque quieren tener un favicon según sea la plataforma:

sus creativos han diseñados varios favicon:

Incluso estan recibiendo propuestas, puedes crear un favicon para google y luego enviarselo:

http://www.google.com/faviconideas/

Información Oficial:
http://googleblog.blogspot.com/2008/06/
one-fish-two-fish-red-fish-blue-fish.html

Via:
http://blogandweb.com/2008/06/09/
detras-del-nuevo-favicon-de-google/

El 27 de Mayo del 2008 Adobe hizo el lanzamiento de las betas públicas de Dreamweaver (editor de páginas web), Fireworks (editor de imagen) y Soundbooth (editor de audio) :


http://labs.adobe.com/technologies/dreamweavercs4/


http://labs.adobe.com/technologies/fireworkscs4/


http://labs.adobe.com/technologies/soundboothcs4/

Adobe labs:
http://weblogs.macromedia.com/labs/archives/2008/06/
new_dreamweaver_fireworks_and_soundbooth_betas_released_on_labs.html

Via:
http://www.hongkiat.com/blog/
adobe-releases-creative-suite-4-cs4-beta/