Mostrando las entradas con la etiqueta ES. Mostrar todas las entradas
Mostrando las entradas con la etiqueta ES. Mostrar todas las entradas

martes, 24 de diciembre de 2019

ASP.NET MVC - Mis librerías Javascript favoritas

Cuando necesito iniciar un proyecto desde cero, hay ciertas librerías que incluyo casi por default en el mismo ya que me proporcionan funcionalidad que considero básica.

A continuación te presento la lista de librerías que con toda seguridad verías en mis proyectos, al menos en los que involucren ASP.NET MVC:
  • jQuery y bootstrap: ¿hay algo que explicar? =)
  • bootbox: cuadros de diálogo, alerta, prompt, input, etc. Al igual que con otras librerías, es necesario poner atención a las versiones, por ejemplo, cuando instalé el Nuget package "bootbox" tenía instalado el Bootstrap4 y sucedió que los cuadros de diálogo de bootbox aparecían con el título deforme. Revisé un poco la documentación y me dí cuenta de que estaba usando un bootbox que requería la versión 3 de bootstrap. Fue necesario buscar un paquete de bootbox diferente: Bootbox.JS
  • toastr: notificaciones "non blocking", mensajes que desaparecen solos.
  • bootstrap-select: dropdown list estilizadas, con opciones adicionales como checkboxes y búsqueda entre los elementos disponibles.
    • requiere jQuery, bootstrap, popper.js
  • jquery-editable-select: dropdown lists estilizadas con opciones adicionales pero menor funcionalidad que el anterior.
  • jquery.datatables: para la creación y estilizado de tablas de datos con funcionalidades como exportado a excel, pdf, búsqueda entre los elementos de la tabla, ordenamiento, paginación
    • datatables.bootstrap: para estilizar los datatables con bootstrap
    • datatables.buttons: extensión para datatables, que añade la capacidad de añadir botones de excel, pdf, etc.
      • jszip: necesario para las opciones de exportado a excel
      • datatables/buttons.html5: necesario para uso de los botones en HTML5 (existe otra librería para botones Flash para el caso de navegadores viejos)
    • NOTA: si es necesario utilizar más de un plugin/componente de jQuery datatables, tienen una página de descarga donde puedes indicar qué necesitas y te genera opciones consolidadas para obtenerlo de un CDN, un paquete para descargar, NPM, Yarn o Bower.
  • js.cookie: manejo de cookies (sin dolores de cabeza).

¿Cómo las añado al proyecto?


En el caso de ASP.NET, Algunas de ellas tienen su correspondiente paquete Nuget, tales como:
  • jQuery
  • Bootstrap: normalmente instala también jQuery y popper.js
  • Bootbox
  • Toastr
  • jQuery.DataTables: incluye por default varios archivos como datatables.bootstrap.js y datatables.buttons y buttons.html5, pero no incluye jsZip.
  • jsZip
¿En qué orden las añado? en el mismo orden que se encuentra la lista anterior dado que algunas de ellas tienen dependencia con otras, por ejemplo, Bootbox requiere bootstrap y jQuery mientras que Bootstrap necesita jQuery.

Para proyectos de Angular y similares, las añado manualmente o configuro el bundle si la plataforma lo permite.


Bundling en ASP.NET MVC 5

Por lo general, el proyecto tengo los siguientes bundles:
  • ScriptBundle:
    • jquery: aquí se encuentra solo el jQuery
    • jQueryVal: añadido por ASP.NET
    • modernizr: añadido por ASP.NET
    • bootstrap: contiene todos los archivos de Javascript que son default o casi default en todas las páginas de la aplicación, incluso algunos que no sean necesarios en todas las páginas pero que no sean demasiado grandes. Por ejemplo: bootstrap.js, respond.js, bootbox.js, toastr.js, bootstrap-select.js, jquery.datatables.min.js, datatables.bootstrap.js, datatables.buttons.min.js, js.cookie.js y algún script propio de mi aplicación.
    • datatables_excel_export: dado que no todas las pantallas exportan datos excel, aquí agrupo dos archivos, jsZip.js y buttons.html5.js.
  • StyleBundle:
    • css: aquí añado todos los css necesarios por los componentes de la lista anterior, y claro, los míos propios: bootstrap.css, bootstrap-select.css, toastr.css, jquery.datatables.css, etc, etc.

Para Finalizar

Lo más importante para mí acerca de este post es que me digas ¿Cuáles utilizas tu, porqué y para qué?

Saludos!

lunes, 6 de agosto de 2018

Aprender C#, Java ó C++

Recientemente me volvieron a realizar la clásica pregunta de aquellos que quieren aprender a programar: ¿Qué lenguaje debo aprender?

  

Mi respuesta

Voy a dar una respuesta breve y después comentaré las razones de ello y las circunstancias en que doy esa respuesta: aprende C#

Como ya te podrás imaginar, no hay una sola respuesta para ello ya que intervienen muchísimos factores, tales como: si es por hobby o porque te quieres dedicar a ello profesionalmente, si quieres programar sistemas empresariales o videojuegos, aplicaciones de escritorio, aplicaciones web o aplicaciones móviles y un largo etcétera.

Conocer un lenguaje te facilita aprender otro.


Para aquellos que recién comienzan a programar puede parecer que aprender un lenguaje de programación es complicado y que es mejor aprender "el bueno" desde el principio, sin embargo, los que ya somos veteranos en esto podemos decir que lo de menos es aprender la sintaxis lenguaje nuevo.

Actualmente resulta incluso más sencillo que hace unos años puesto que ahora contamos con autocompletado de código, reportes detallados de errores de compilación, un montón de tutoriales en Youtube, portales como StackOverflow y redes sociales donde podemos poner una pregunta y aclarar nuestras dudas.

Hace tiempo, para una conferencia que impartí en la Universidad Autónoma de Nayarit (en 2008 o algo así, ya ha llovido bastante desde entonces) creé el gráfico que ves a la izquierda de este párrafo, supongo que debería actualizarlo y ampliarlo. Lo que trato de expresar con él, es que los lenguajes de programación están muy interconectados, si conoces uno de los "grandes" o "clásicos" entonces ya conoces algo, o mucho, de los que derivaron de él.

Por ejemplo:

  • si conoces C entonces ya conoces algo de C++ y por ello algo de Java y C#.
  • Visual Basic 6 (ahora obsoleto) nos llevó a Visual Basic.NET
  • Pascal te facilita Delphi y sus derivados como Kilyx y Delphi.NET

¿En qué se parecen C++, C# y Java?


Dicen que "para muestra basta un botón", veamos la instrucción "for" en cada uno de los tres lenguajes.

C#
Java

C++



El ciclo "for" se declara de la misma manera en los tres lenguajes. Es cierto que para imprimir algo en la consola C# utiliza "Console.Writeline", Java utiliza "System.out.println" mientras que C++ "cout", si utilizaran exactamente las mismas instrucciones serían exactamente el mismo lenguaje, sin embargo esas similitudes en la sintaxis se repiten con las instrucciones "if", "switch" y en parte, en la declaración de funciones así que aunque tengan sus diferencias, por lo menos sus similitudes te permitirán aprender el segundo lenguaje en menor tiempo que lo que te tomó el primero.

¿En qué se diferencian C++, C# y Java?


Al igual que sucede con todos los lenguajes que comparten una parte de su sintaxis, la primera diferencia que tienen es la otra parte de la sintaxis.

Por ejemplo, el operador para las expresiones Lambda (no es importante que aprendas este concepto en este momento, el ejemplo es solo ilustrativo), en C# se escribe "=>" mientras que en Java es "->", como concepto son lo mismo y de hecho ambos representan una flecha, pero se escriben diferente. Esto es porque surgieron en diferente tiempo en cada lenguaje o simplemente porque dada la filosofía con la que está diseñado el lenguaje hacía más sentido ponerlas de diferente manera.

En C++ el uso de expresiones lambda es posible desde la versión 11, que surgió como estándar en 2011 (ref 1, ref 2). Mientras que en C# están disponibles por lo menos desde C# 3 el cual estuvo disponible en 2007.

Otra diferencia muy importante es: las librerías, funciones o módulos que componen el framework del lenguaje en cuestión. Cada lenguaje va a implementar sus librerías en diferentes clases o jerarquías de objetos aunque al final puedan servir para lo mismo, como el caso de los Buffered Streams en Java y los Stream Readers en C#.

Entonces, ¿porqué C#?


Básicamente me parece que en este momento y para un principiante C# es la mejor opción debido a la flexibilidad que da el poder "moverse" a otros lenguajes. Es cierto que casi casi da lo mismo aprender primero C++ o C# o Java y ya desde ese punto de vista no conviene quebrarse la cabeza.

Supongamos que quieres crear aplicaciones más "cercanas" al procesador, entonces recomendaría C++, pero la verdad es que no me veo programando aplicaciones empresariales (páginas web, reportería o aplicaciones de escritorio) en C++, eso resulta más sencillo en C# ó Java. De igual forma, si solo vas a programar aplicaciones para Android entonces probablemente lo mejor sería aprender Java (y aún eso tiene sus condicionantes), o si serán videojuegos de gama alta, por ejemplo con el motor Unreal Engine o diseñando tus herramientas desde cero, entonces ve agarrando un libro de C++. En cambio te interesan videojuegos multiplataforma (que puedan correr en Android, iPhone, Windows, XBox) lo más lógico sería C#.

Dicho todo lo anterior, hay que recalcar que en esto de la programación una herramienta no es mágica, no sirve para todo, cada una tiene su ámbito, pero creo que actualmente C# te permitiría "moverte" más fácilmente a C++ y Java en caso de ser necesario y además el uso que le han dado herramientas como Unity para creación de videojuegos ó Xamarin para aplicaciones móviles le dan una mayor versatilidad.

¿Y que hay de Visual Basic .NET?, si ya conoces VB.NET entonces te puede resultar muy sencillo moverte a C# debido a que los objetos del framework se encuentran en las mismas clases y librerías, la diferencia es la sintaxis propia del lenguaje pero aún así, conociendo VB.NET diría que conoces por lo menos 50% de la programación con C# (no del lenguaje C# sino de los elementos que intervienen en un programa) y te podría suceder como a mí que realicé "el salto" de VB.NET a C# en una semana, pero claro, ya conocía C++ aunque lo tenía algo oxidado.

¿Eres nuevo, te interesa programar y no sabes por donde empezar?, aprender C#

¿Estás de acuerdo conmigo?, bien, me gustaría conocer tu experiencia, déjame un comentario.

¿Estás en desacuerdo?, excelente, cuéntame tu punto de vista.

Saludos!

sábado, 12 de septiembre de 2015

Cómo proteger la privacidad en Firefox

4 Pasos para proteger privacidad
Por lo general no nos damos cuenta del rastro de información que vamos dejando cuando navegamos, o de la cantidad de datos que recibimos y que no solicitamos.

Por ejemplo, todos esos banners y anuncios que aparecen en los sitios web no solo juegan con nuestra privacidad si no también consumen ancho de banda cuando se están descargando hacia nuestro navegador. Igual sucede con las cookies de empresas rastreadoras o de publicidad, debido a ello, al bloquear rastreadores y publicidad estamos también optimizando un poco el ancho de banda. De hecho en algún lugar en la página de UBlock Origin leí que en algunos casos el uso del ancho de banda se reduce en 16%.

¿Cómo Proteger la privacidad en Firefox?

Para proteger la privacidad en Firefox tenemos 2 rutas de acción: la primera sería utilizar las configuraciones propias de firefox y la segunda consiste en utilizar algunos plugins que nos ayuden con esta tarea.

Paso 1. Configuraciones de Firefox


  • General:
  • Siempre revisar si Firefox es tu navegador predeterminado
  • Al iniciar FireFox: Mostrar una Página Vacía
  • Página de Inicio: puede quedarse como lo tengas configurado pero recomiendo utilizar https://duckduckgo.com/
  • Buscar: Buscador Predeterminado: DuckDuckGo
  • Privacidad
    • Indicar a los sitios web que no quiero ser rastreado
    • Historial: Usar configuraciones personalizadas
    • NO recordar el historial de búsquedar y formularios
    • Aceptar cookies de terceros: Nunca
  • Seguridad-Contraseñas: NO recordar contraseñas de los sitios


Plugins para Firefox

Ghostery plugin
Paso 2. Ghostery: Este plugin sirve para bloquear las cookies y rastreadores que comúnmente existen en las páginas. De esta manera reforzaremos nuestra seguridad al no quedar a merced de las páginas rastreadoras de actividad o de marketing optimizando de paso (un poco) el uso de nuestro ancho de banda.

UBlock Plugin
Paso 3. UBlock Origin: Este plugin sirve específicamente para bloquear anuncios (ads) en las páginas web. Existe bastante debate acerca de cuál es mejor (AdBlock Plus vs UBlock Origin) sin embargo parece ser que son bastante cercanos en precisión sin embargo recientemente AdBlock Plus comenzó a recibir "retribución" por parte de algunas empresas para permitir que cierta publicidad "no intrusiva" sí sea mostrada (ver noticias), por lo cual he cambiado a UBlock Origin.

HTTPS Everywhere plugin
Paso 4. HTTPS Everywhere: Recientemente comencé a utilizar este plugin, sirve para que en caso de que la página web y las webs de las que extrae datos tenga una versión HTTPS (HTTP Secure, es decir, cuya comunicación viaja encriptada), se utilice esa versión en lugar del http.

Extra

Puede ser algo engorroso al principio pero si de verdad te preocupa tu privacidad, te recomendaría utilizar el buscador DuckDuckGo ya que éste buscador no muestra publicidad y lo más importante: no guardar el historial de las búsquedas que hemos realizado. Tal vez no se pueda reemplazar completamente al buscador de Google pero por lo menos tenemos opciones a utilizar según lo necesitemos.

En el siguiente video te guío por estos 4 pasos:



Saludos!

martes, 8 de septiembre de 2015

Optimizar Windows 10

Un problema bastante común es que conforme pasa el tiempo el rendimiento de nuestro sistema operativo windows va decayendo (windows 10, 7 ,8).

Aquí voy a explicar brevemente los pasos a seguir para recuperar velocidad de ejecución.

El sistema operativo se ve afectado por varios factores:

sábado, 15 de agosto de 2015

Proteger Privacidad y deshabilitar actualizaciones automáticas en Windows 10

Por fin llegó Windows 10 y con él un aluvión de críticas acerca de la privacidad y otras tantas acerca del hecho de que ahora las actualizaciones del sistema (Windows Update) no se pueden posponer indefinidamente. Es decir, el sistema las instala sí o sí.

Acerca del tema de la Privacidad debo mencionar que Windows 10 no es el primero en realizar captura excesiva de nuestros datos, y si no me creen basta con dar un vistazo al Android y a muchos de sus programas que necesitan muchísimos permisos para poder ejecutar cualquier programa sencillo. Tal parece que Microsoft se está sumando (tarde) al negocio del cual Google está sacando mayor provecho: la captura de nuestra información.

miércoles, 25 de junio de 2014

No se muestra intellisense en Visual Studio

Hace poco me ocurrió que al estar programando en ASP.NET con VB, el intellisense no se mostraba al escribir el "." para intentar acceder a la lista de propiedades/métodos del objeto e incluso las etiquetas en el archivo aspx daban un mensaje de error:

"Element 'Panel' is not a known element. This can occur if there is a compilation error in the Web Site, or the web.config file is missing."

viernes, 20 de junio de 2014

Eliminar Omiga Plus

Recientemente me sucedió que mi computadora se vió afectada por el malware "omiga plus". Los síntomas eran:

  • La página de inicio, nueva pestaña y el home page de los navegadores fueron cambiados para que se mostrara la web de búsqueda de Omiga Plus.
  • Se añadió un buscador a la lista de buscadores de Chrome y Firefox de forma que el buscador por default fuera Omiga Plus.
  • Al cambiar manualmente las opciones de inicio, nueva pestaña y home page, la configuración de Omiga se reestablecía "mágicamente" al reiniciar la computadora.

Sucede que el susodicho "Omiga Plus" es un malware de tipo browser hijacker, y realmente me resulta molesto tener esa clase de bichos en la computadora, algunos simplemente secuestran el navegador (de ahí su nombre) y redirigen las búsquedas a una página específica, pero solo ellos saben que otra información podrían estar capturando.

Eliminar este tipo de programas puede ser una tarea sencilla o resultar en toda una odisea. Los hay de todo tipo y hasta el momento este ha sido el más complicado que me he encontrado. Intenté de varias maneras pero al menos a mi no me funcionaron:

  • Avast!: lo tengo instalado como antivirus y ni pestañeó, no lo detectó.
  • Spybot: lo instalé y ejecuté pero no funcionó, no eliminó a omiga plus.
  • Eliminé manualmente un archivo sospechoso así como un archivo que se ejecutaba al iniciar el sistema. Reconfiguré las opciones de inicio, nueva pestaña y home page pero estas volvían a cambiarse al reiniciar la computadora.
SOLUCION
  • Adwcleaner: finalmente, una de las tantas páginas que estuve visitando (malwaretips.com) indicaba que era posible eliminarlo con herramientas antimalware y recomendaban adwcleaner. Lo bajé de esta dirección (adwcleaner malware removal tool) y funcionó a la perfección.


Luego de haber eliminado el malware, reestablecí manualmente las configuraciones de inicio, nueva pestaña, plugins activos y buscadores predeterminados de mis navegadores (Firefox, Internet Explorer y Chrome), reinicié la computadora y el problema ya no volvió a presentarse.

Espero que esta información te sea de utilidad.

domingo, 8 de junio de 2014

MySQL - Authentication with old password no longer supported, use 4.1 style password

Estaba retomando un desarrollo web para un cliente y al intentar probar el sitio web en vivo en internet... ¡pum!, que me salta un error al momento de intentar la conexión a la base de datos: "Authentication with old password no longer supported, use 4.1 style passwords".

 SET PASSWORD FOR 'username'@'%' = password( 'mynewpassword' )

Estuve realizando algunos intentos de cambiar el password pero obtenía otros errores:

Access denied for user 'username'@'localhost' to database 'mysql' 
Access denied for user 'username'@'%' to database 'mysql' 

Finalmente, revisando las páginas páginas oficiales de MySQL (ver aquí). Me encontré con la solución y resultó que solamente tenía que poner el nombre del usuario sin las comillas:

 SET PASSWORD FOR username = password( 'mynewpassword' )

En resumen: al parecer hubo un cambio en la manera de establecer la encriptación de los passwords entre las versiones viejas de MySQL y la versíon 5.1. Ahí fue cuando sospeché que mi proveedor de web hosting estaba utilizando una versión "viejita" de MySQL. Por si acaso, les pica la curiosidad y quieren conocer la versión de su servidor de MySQL, es posible obtener ese dato ejecutando el siguiente query:

SHOW VARIABLES LIKE "%version%";


Saludos!

domingo, 1 de junio de 2014

Levantar una Excepción en MySql / Raise (Signal) MySql Exception

Es  muy cierto que en el front-end podemos realizar muchísimas de las validaciones necesarias a los datos. Sin embargo, en ocasiones resulta más conveniente realizarlo en el lado del servidor, no solo porque nos ayuda a cuidar la integridad de la base de datos, sino porque un cambio en un procedimiento almacenado, trigger, etc. no implica recompilar y redistribuir el ejecutable de la aplicación.

Resulta entonces que en ocasiones necesitamos lanzar una excepción desde un procedimiento almacenado como manera de avisar al front-end de que el proceso no pudo ser ejecutado correctamente. ¿Cómo hacerlo en MySql?. La instrucción básica es muy sencilla:

SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Mensaje de Error';

En el siguiente video podemos ver un ejemplo sencillo:



Esto funciona a partir de la versión 5.5 de MySql. Básicamente se asigna un código de error ('45000' en este caso) y un mensaje como texto de la excepción. Existen códigos de error predefinidos por MySql (ver la lista) aunque, dado que la excepción ó signal que queremos levantar es propia de nuestra aplicación/base de datos, es preferible utilizar un código que no exista en esa lista.

Si quisiéramos ser mucho más específicos en la información que queremos enviar como parte de la excepción, podemos establecer otros valores.

Mi primera consulta acerca de este tema me llevó a un tema en StackOverFlow y de allí busqué un poco más con un par de saltos en la web.

Saludos!

viernes, 29 de noviembre de 2013

Cursor en MySQL

Hace raaaato que no escribía nada aquí y no porque no necesita guardar apuntes, o compartir puntos de vista, sino porque no me daba el tiempo. Incluso un post sencillo como este se lleva 30 minutos en crear y revisar. Y a veces, cuando el tiempo apremia y ya encontraste la solución no quieres "perder" 30 minutos dejándote una nota.

Pero, dado que ya van varias veces que tengo que investigar esto, creo que es mejor dejarle una nota a mi "yo futuro" quien seguramente olvidará algún que otro detalle, para que pueda consultarlo aquí directamente. Espero que le sea de utilidad a alguien además de mi.

La plantilla básica:



Un ejemplo:




Estos dos links son de bastante ayuda:
http://rpbouman.blogspot.mx/2005/10/nesting-mysql-cursor-loops.html
http://www.mysqltutorial.org/mysql-cursor/


Saludos!

jueves, 26 de julio de 2012

VB.NET obtener directorio del ejecutable

Este post sera corto =)

A veces resulta que necesitamos saber el directorio desde el cual esta ejecutando nuestro programa, para ello tenemos varias opciones que aunque tienen sus diferencias son mas o menos equivalentes:

  • Application.ExecutablePath
  • Environment.CurrentDirectory
  • System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly.Location()))
  • AppDomain.CurrentDomain.BaseDirectory

!Saludos!

martes, 24 de julio de 2012

Desarrollos con poca inversión con .NET

Si bien podría parecer que programar con .NET es costoso la verdad es que esto no es así. Aunque Visual Studio es una plataforma de pago, no es necesario comprar las versiones Professional de .NET ni invertir en costosos servidores web o de bases de datos porque hace tiempo que Microsoft puso a nuestra disposición esas herramientas de manera gratuita en versiones "Express".

Lo anterior es algo que me llama mucho la atención y que creo que genera bastante bastantes oportunidades para los emprendedores, no solo para aprender sino para comenzar a formar su propio negocio.

Obviamente las versiones Professional y Ultimate tendrán sus ventajas y herramientas que facilitan aún más la labor del desarrollador, sobre todo cuando se trata de equipos de trabajo pero las versiones Express también funcionan bastante bien.

Bueno, sin más preámbulo aquí te comento las opciones (para .NET) que ayudarán a desarrollar software sin gastar un solo centavo.

domingo, 29 de mayo de 2011

SqlDeveloper Timezone region not found

El error "ORA-01882: timezone region not found" es uno que ya me había ocurrido en el Sql Developer con anterioridad al ejecutar consultas a través de db links. En algunos foros mencionan que este es un error que ocurre al consultar un servidor Oracle 10g desde un cliente 9i, aunque actualmente tengo cliente 10g hacia un servidor 10g también y el error me sigue apareciendo lo cual me estaba impidiendo conectarme al servidor.

Me da la impresión que sucede al utilizar software que utilice el JDK ya que con aplicaciones en .NET no me ha sucedido.


El mensaje de error es el que aparece en la imagen anterior y su solución es bastante sencilla. Basta con buscar el archivo sqldeveloper.conf y añadir la siguiente línea al mismo:

AddVMOption -Duser.timezone="-8:00"

Mediante esa línea se le indica al Sql Developer que establezca la zona horaria del usuario a -8:00, ese número debería ser sustituido por tu zona horaria. Con eso ya queda solucionado el problema al intentar conectarse y probablemente también el que ocurría al momento de realizar consultas a través de Db Links.

Si el error te está ocurriendo al realizar una consulta y no precisamente al conectarse, puedes utilizar el siguiente query para cambiar el valor de la zona horaria durante la sesion:

alter session set time_zone = '-8:00'

Eso es todo por este post, espero que les sea de ayuda.

jueves, 26 de mayo de 2011

Preparando el entorno con Firebird

Hace unos días quise obtener lo necesario para programar hacia una base de datos Firebird y lo que me encontré fue un "masacote" de archivos debido a los links rotos del sitios, así que aquí pongo los links en orden, ojalá les sirva a ustedes también la lista para no tener que andar buscándolos en los repositorios del SourceForge:

3) archivos para la opción Embedded (opcional): acá puedes ver los archivos que se necesitan para crear un proyecto con Firebird Embebido.
4) Consola de control: Entre varias que evalué hace un tiempo, buscando que me permitieran manejar la base de datos y que fueran Open Source la que me pareció más adecuada fue Flamerobin.

Con lo anterior ya instalado tenemos el entorno listo, bueno deberías tener también instalado el VB.NET para poder programar, pero en cuanto a los componentes y librerías que hay que bajar, ya con eso estamos listos.

Para finalizar pongo un ejemplo de cómo crear la Conexión a Firebird utilizando el objeto FbConnectionStringBuilder:

 Dim Cnt As New FbConnection("")
 Dim csb As New FbConnectionStringBuilder

 csb.UserID = "SYSDBA"

 csb.Password = "masterkey"
 csb.Database = DbName
 csb.ServerType = FbServerType.Default

 Cnt.ConnectionString = csb.ToString


¡Hasta la próxima!

jueves, 30 de septiembre de 2010

Libros Técnicos

En esta entrada voy a colocar los títulos de los libros técnicos que voy revisando asi mismo colocaré un comentario breve acerca del tipo de contenido y nivel requerido por el mismo. Espero que esto les sirva de guía para conocer si un libro es recomendable para un principiante o alguien que ya conoce algo del tema.


2013
  • Industrial Internet (Jon Bruner)
  • Big Data Now: Current Perspectives from O'Reilly Radar (O'Reilly Radar Team)

2010
  • TI para Pequeñas Empresas Para Dummies: Un libro con material introductorio, contiene buena información para un usuario nuevo que tiene una pequeña empresa y desea dar un vistazo (muy rápido) a diversos temas de informática.
  • Total Training CSS And XHTML For Web Development:  éste es un videotutorial que revisé recientemente (julio/2011), el contenido es bueno, de narración clara (en inglés) y de nivel muy básico, recomendado solamente para aquellas personas que quieren entrar por primera vez a los temas del desarrollo web. No habla de programación sino de escribir HTML + CSS básico.

viernes, 8 de enero de 2010

CLP - Los primer Hola Mundo

En este post vamos a aprender cómo crear nuestros primer "Hola Mundo". Y hablo en plural ya que lo haremos en dos tipos diferentes de proyectos: Aplicación de Consola y Aplicación Windows Forms.

Existen varios tipos de proyectos en VB.NET (y en Visual Studio .NET en general). Sin embargo para los propósitos de nuestro, para aprender a programar practicaremos con los dos antes mencionados.




El propósito era que conocieras cómo crear una Console Application (aplicación de consola) básica así como una de Windows Forms ya que en los ejemplos posteriores las estaremos utilizando.

Ya casi llegamos a la parte donde comienza lo bueno =) En nuestras siguientes lecciones aprenderemos como declarar variables que son los lugares en la memoria de la computadora donde podemos almacenar datos y posteriormente operar con ellos tomando decisiones de acuerdo sus valores y ejecutando ciclos de repetición.

No duden en dejar sus comentarios acerca de cualquier duda o sugerencia que tengan respecto al curso. ¡Seguimos en contacto!.

domingo, 3 de enero de 2010

CLP - Instalar VB.NET 2008 Express

A partir de este post a las entradas del curso las llamaré "CLP" (Curso de Lógica de Programación), seguido del nombre del tema.

Pues bien, el primer paso, sería lógicamente, instalar las herramientas con las que vamos a trabajar. Para ello he preparado un video en Youtube acerca del proceso de instalación que es bastante simple. El video muestra desde donde bajar el entorno de programación hasta la primera ejecución del mismo y contiene algunos comentarios acerca de las opciones al momento de bajarlo/instalarlo. Puedes obtener el instalador en la siguiente dirección del sitio de Microsoft.



Espero que el video les haya servido de ayuda de forma que si anteriormente no habían instalado este tipo de herramientas les vayan perdiendo el miedo y conozcan el proceso en general. Espero colocar pronto la primera lección de programación que tentativamente tratará sobre la creación de nuestro primer "Hola Mundo" y de los tipos de datos (variables) de que disponemos.

A lo largo de este curso tendremos "Lecturas Complementarias". Estas son lecturas que te recomiendo realizar y que en ocasiones no van directamente ligadas al curso pero que te servirán para incrementar tus conocimientos y la solidez de los mismos. La primera lectura complementaria es la siguiente: La importancia de la lógica de programación.

Contenido del Curso de Programación

A continuación aparecen a manera de referencia, la lista de lecciones que comprenden el curso básico de programación. Iré añadiendo puntos a la lista conforme los vaya teniendo preparados.

1. Introducción
2. Instalación de VS.NET 2008 Express
3. Los primer "Hola Mundo"


Lecturas Complementarias.
i. La importancia de la lógica de programación.


.

sábado, 2 de enero de 2010

Curso de Lógica de Programación

Introducción.

¡Hola a todos!. Debido a algunas peticiones que he recibido y mi interés de probar mis métodos de enseñanza con más personas que mi círculo de amistades inmediato he decidido crear una serie de tutoriales que te llevarán de un completo y total "Noob" (no dicho de forma despectiva sino en el sentido literal de "Novato") a ser un "Pro".

El lenguaje de programación a utilizar es Visual Basic .NET, en su versión Express y algunas otras herramientas que considero útiles y que en su momento te indicaré de donde puedes obtenerlas. ¿A qué obedece la elección del lenguaje?. La respuesta es sencilla, a lo largo de este curso vamos a desarrollar la lógica, tu lógica necesaria para programar así que no conviene pelearnos al mismo tiempo con la lógica y los detalles del lenguaje de programación. Visual Basic .NET es sencillo y la vez muy poderoso.

Respecto a la manera de tratarte será informal, de "tu", de compañero a compañero. En los links del blog próximamente encontrarás uno relacionado a este curso en el que podrás ver listados los temas en el orden lógico (lección 1, lección 2, etc) y no en orden cronológico.

Para cada tema a tratar en el curso tendremos muchos ejemplos desde sencillos hasta complicados, espero que todos ellos te resulten muy interesantes como el de sumar números de mil dígitos o el de “comprimir” una fecha-hora a un formato más pequeño basado en letras y números.

Trabajaremos, si me lo permites, en desarrollar tu lógica de programación de forma que puedas resolver problemas complejos de una forma óptima para la situación. Pues bien, basta de introducción. En el siguiente post encontrarás una especie de índice de las lecciones que iré completando según las vaya creando y posteriormente tendrás un video tutorial acerca de cómo instalar la primera herramienta que vamos a requerir.

No dudes en dejar tus comentarios no importa si el artículo ya es "viejo" que de cualquier forma puedes tener la seguridad de que lo voy a leer y trataré de contestarte oportunamente.

jueves, 29 de octubre de 2009

Windows 7 Network Driver for Vmware 6.5

El día de hoy instalé Windows 7 en una máquina virtual con Vmware 6.5, el problema fue que no reconocía el driver de la tarjeta de red de la máquina virtual. Sin embargo existe solución en caso de que el Vmware no tenga los drivers y esta es indicarle al Vmware que utilice cierto driver específico, para ello hay que ir al archivo .vmx de la máquina virtual (hay que apagar la virtual primero), abrirlo con el block de notas y añadir la siguiente línea:

ethernet0.virtualDev = "e1000"

Con ello reconocerá la tarjeta como 'Intel(R) PRO/1000 MT Network Connection' y ¡listo! ya podemos tener la red dentro de la vm.

Como comentario debo decir que la virtual ejecuta bastante bien, y eso que solamente le permití que tomara 512 MB de RAM. Tiene buena pinta el Windows 7, por lo menos es más ligero que sus predecesores. Seguiré probándolo.

(Update 23/Nov./2009) Es posible instalar Windows 7 indicando Windows Vista como sistema operativo base en VmWare, de esa manera no será necesario especificar drivers de red ni mover configuraciones manualmente.