Robert Pineda

Yo soy un Ingeniero.

Contacto

Robert Alejandro Pineda

Soy Ingeniero de Sistemas de la universidad EAN, mis fortalezas principales son la constancia y responsabilidad para desarrollar e implementar soluciones a través de sistemas de información. Mi habilidad dentro de mi profesión es el dinamismo en la búsqueda y construcción de óptimas soluciones a un problema dado.

¿Qué es lo que haces?

Me especializo en cinco campos: Consultoría, realidad aumentada, software BPM, desarrollo y arquitectura web. Puedes ver algunos ejemplos en mí Portafolio.

¿Qué tecnologías utilizas?

Unity3D, Vuforia, .Net, C#, Visual Basic, JavaScript, BootStrap, SQLServer, Oracle.

  • Bogotá D.C, Colombia.
  • 320 4 91 38 81
  • admin@robertpineda.com
  • www.robertpineda.com
Me

Capacidades Profesioneles

Poseo habilidad en el liderazgo y gestión de proyectos de SCRUM y RUP, así como la presentación de propuestas, estimación de tiempos, todo esto argumentado en la experiencia de más de 10 años en equipos de programación en la cual mostré mi capacidad de adaptación a diferentes situaciones de trabajo, desempeñándome en varios ambientes técnicos de programación con buen dominio de C#, Visual Basic .NET, ASP.NET, ASP, PHP, XML, XAML, JavaScript, HTML5, CSS3, MVC, C++, BootStrap, manejo de todos los IDE de Visual Studio .Net, así como Unity3d RA, realizando proyectos para Windows, Windows Phone y Web, manejo de bases de datos MySql, Postgrest, SQLServer, Oracle, IBM DB2, Teradata, NoSql MongoDB, construcción de arquitecturas empresariales y de desarrollo orientada al dominio y a pruebas.

Desarrollo .Net 90%
Bases de datos 70%
Unity3d 80%
Arquitectura 70%

Seguridad Informatica,

Se asesora e implementa la seguridad de la información, estándares NTC ISO 31000, ISO 27000.

Consultoria

Se realiza estudios sobre cambios de tecnología, adquisición, adopción de estándares, implementación y modelado BPM.

Desarrollo a la medida.

Desarrollo en Visual Studio .Net su idea o necesidad.

Diseño Web.

Desarrollo de paginas web, Comerciales, Personales, Contacto.

Realidad Aumentada.

Desarrollo de campañas de realidad aumentada.

Soporte.

Soporte para temas de IT de su compañía, ya sea presencial o virtual.

12
Años de experiencia.
15
Clientes satisfechos.
3901
facebook like.
18
Proyectos exitosos.
  • Problemas al iniciar proyectos Silverlight y SketchFlow

    Problemas al iniciar proyectos Silverlight y SketchFlow

    The specified solution configuration "Debug|HPD" is invalid.

    Este error según lo que encontré en se da al compilar un proyecto silverlight y Sketchflow por primera vez.

    Un error me asusto ya que estaba realizando un ejemplo de SketchFlow.

    La solución:

    Ir al Registro regedit.exe y acceder a la dirección: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

    image

    Ahí borramos la clave Platform, se cierra el regedit y reiniciamos la maquina.

    image

    Al iniciar nuevamente el Blend 4 compilará perfectamente.

  • Implementar seguridad en Servicio Web C#

    Implementar seguridad en Servicio Web C#

    Los encabezados SOAP nos dan un método para pasar datos a un método de Web Service XML y obtener datos del mismo, siempre y cuando los datos no sean usados en la funcionalidad principal del método. En esta entrada vamos a ver como implementar una solución para brindar seguridad a nuestros Web Services realizados en la plataforma .NET.

    Para entender un poco mas a lo que llegaremos veamos que nos dice MSDN sobre SoapHeader: La comunicación con un método de servicio Web XML mediante SOAP sigue un formato estándar. Parte de este formato son los datos que se codifican en un documento XML. El documento XML consta de una etiqueta Envelope que, a su vez, consta de un elemento requerido Body y un elemento opcional Header. El elemento Body incluye los datos específicos del mensaje. El elemento opcional Header puede contener información adicional no relacionada directamente con el mensaje específico. Cada elemento secundario del elemento Header se denomina encabezado SOAP.

    Vamos a darle un poco de seguridad al método mas difundido y conocido por todos HelloWorld().

    Primero vamos a crear un proyecto de tipo web. en el vamos a crear un clase, esta va a representar los parámetros del encabezado soap, en nuestro caso el nombre de usuario y la clave. Esta clase va ha derivar de la SoapHeader perteneciente a el espacio de nombre System.Web.Services.Protocols

        /// <summary>
        /// Clase que se encarga de contener las credenciales de autenticación: Usuario y Clave
        /// </summary>
        public class Autenticacion : SoapHeader
        {
            private string sUserPass;
            private string sUserName;

            /// <summary>
            /// Lee o escribe la clave del usuario
            /// </summary>
            public string UsuarioClave
            {
                get
                {
                    return sUserPass;
                }
                set
                {
                    sUserPass = value;
                }
            }

            /// <summary>
            /// Lee o escribe el nombre del usuario
            /// </summary>
            public string UsuarioNombre
            {
                get
                {
                    return sUserName;
                }
                set
                {
                    sUserName = value;
                }
            }
        }


    Luego creamos la clase ServicioSeguro que va a contener una referencia a la clase Autenticacion en conclusión va a tener la información del usuario. Esta clase va a derivar de WebService que pertenece a el espacio de nombre System.Web.Services. De esta clase derivan todos nuestros Web Services

        /// <summary>
        /// Contiene la referencia a la clase Autenticacion
        /// </summary>
        public class ServicioSeguro : WebService
        {
            public Autenticacion CredencialAutenticacion;
        }


    Luego agregamos un Web Service llamado wsSeguridad.asmx. Como ya les había recordado los web services que hacemos heredan de WebService. Cambiamos a que derive de la clase ServicioSeguro que creamos anteriormente, no perderemos la funcionalidad ya que esta clase deriva de WebService. Recordar que SoapHeader perteneciente a el espacio de nombre System.Web.Services.Protocols

        /// <summary>
        /// Servicio de prueba
        /// </summary>
        [WebService(Namespace = "http://tempuri.org/SecureWebService/SecureWebService")]
        [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
        [System.ComponentModel.ToolboxItem(false)]
        public class wsSeguridad : ServicioSeguro
        {
            /// <summary>
            /// Metodo de prueba.
            /// </summary>
            /// <returns>"Hello World si esta autenticado y puede consumir el WS, NONOO si sus credenciales no son validas"</returns>
            [WebMethod, SoapHeader("CredencialAutenticacion")]
            public string HelloWorld()
            {
                if (VerificarPermisos(CredencialAutenticacion))
                {
                    return "Hello World";
                }
                else
                {
                    return "NONOO";
                }
            }
            public static Boolean VerificarPermisos(Autenticacion value)
            {
                if (value == null)
                {
                    return false;
                }
                else
                {
                    //Verifica los permiso Ej. Consulta a BD
                    if (value.UsuarioNombre == "user" && value.UsuarioClave == "pwd")
                    {
                        return true;
                    }
                    else
                    {
                        return false;
                    }
                }
            }
        }


    Ahora realicemos una pagina para probar la seguridad de nuestro servicio.

        public partial class pruebas : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    wsSeguridad ws = new wsSeguridad();

                    Autenticacion auten = new Autenticacion();

                    auten.UsuarioNombre = "user";
                    auten.UsuarioClave = "pwd2";

                    ws.CredencialAutenticacion = auten;

                    Response.Write(ws.HelloWorld());
                }
            }
        }

  • Problemas de conexión a Oracle con Visual Studio .Net 2010 framework 3.5

    Problemas de conexión a Oracle con Visual Studio .Net 2010 framework 3.5

    Ha tenido problema con la instalación de Oracle Client sobre el sistema operativo W7.


    Solución


    Descargue desde www.oracle.com la versión de Oracle Client “10203_vista_w2k8_x86_production_client“.
    Por defecto Oracle se instala en una carpeta en C://Oracle, cree usted la carpeta y agréguele los permisos para todos.
    Ejecute la aplicación danto clic derecho en solucionar problemas de compatibilidad
    or1
    Luego seleccione el “programa de solución de problemas”
    Le aparece unas opciones de chequeo seleccioné “El programa funcionaba en versiones anteriores de Windows pero ahora no se instala ni se ejecuta” y “El programa requiere permisos adicionales” de siguiente.
    or1
    En esta nueva pantalla selecciones Windows vista (Service pack 1).
    or1
    Dele siguiente y seleccione Iniciar Programa.
    or1
  • Presentacion

    Presentacion

    Bueno esto es como para romper el hielo, soy Robert Pineda, vivo en bogota Colombia. he inicio este blog para poder ayudar a las personas con temas que para mi son familiares.

    Nos veremos en estos dias. con mi primer post. 
  • OBTENGA UNA CITA GRATIS AHORA

    Permítame ayudarle a llevar su negocio a la nube, mostrándole como mis servicios pueden potenciar su compañía.

    Ubicación

    Bogotá D.C, Colombia.

    Correo Electronico

    admin@robertpineda.com
    robertpineda@hotmail.com

    Celular

    320 4 91 38 81