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

2009-05-12

Primera reunion de ALT.NET Argentina

Tratando de mantener la vida del blog y siguiendo lo comentado en la lista de mails ALT.NET Argentina, vamos a hablar un poco de lo que fue la primera reunión del grupo

(para quien no sepa de que trata esto, puede darse una vuelta por: http://altdotnet.org/ y/o http://altnet-argentina.pbworks.com/ )

Pese a la no-tan-feliz combinación de día/horario para el inicio de esta reunión (sábado a las 9 de la mañana!) el ambiente era muy bueno: muchas caras conocidas - bastante mas dormidas que de costumbre - y muchas ganas por empezar las sesiones pensadas para el día.

A eso de las 10.00, nos fuimos presentando en ronda (no pude evitar tirar un chiste) y pasamos a contar que temas habían propuestos para las sesiones del día y arreglar entre todos los horarios y las salas de cada uno.

Independientemente del tema a tratar en cada una, se utilizó la modalidad de "open space", donde cada uno es libre de opinar y plantear su punto de vista cuando le parezca - siempre y cuando se haga de forma ordenada - y no las clásicas charlas con un orador y muchos escuchas.

Durante el día hubieron 4 franjas donde se llevaron a cabo sesiones simultáneas. En particular, voy a hacer una pequeña reseña sobre las cuatro donde yo participé:

(no recuerdo los nombres concretos, pero con el título de fantasía que puse se entiende)


1. SOA: ¿Vivo o muerto? ¿Cáncer o salvación?

En esta charla hubieron 4 a 6 sillas adelante, dándole al usuario de las mismas el derecho a hablar, siguiendo estas reglas:

- Siempre debe haber una silla vacía

- Si alguien quiere hablar, debe sentarse en una de esas sillas

- Si quedan todas las sillas ocupadas, deberá retirarse quien esté hace mas tiempo (o quien considere que ya no está aportando a la conversación, pero esto queda a criterio de cada uno)

La misma empezó comentando la experiencia de distintas personas que llevaron (o intentaron llevar a cabo) proyectos con arquitecturas que implementaban el patrón SOA y a raíz de esto, muchos - me incluyo - comentamos donde nos parecía que estaban las falencias usuales en este tipo de emprendimientos, cuales eran los beneficios, que costos se pagaban por intentar hacer SOA "porque es la palabra de moda" y cuando valía la pena realmente tener componentes de un proyecto que siguieran este patrón.


2. Microsoft... ¿Está innovando?

Este es un tema que propuso Miguel Angel Saez y, pese a que no mucha gente se prendió, me pareció un tópico sumamente interesante para tratar.

Acá charlamos sobre las alternativas a distintos problemas, viendo la forma - o formas - en que lo encaran Microsoft, otras empresas como Sun, Oracle, Amazon, Google, etc. y por último "la comunidad open source".

Para cada uno hablamos sobre cuanto de "inspiración" y cuanto de creatividad hubo en su creación y hacia donde veíamos el rumbo de evolución de cada una de estas tecnologías o productos.


Hacia el final de la sesión estuvimos hablando sobre Windows 7, su comparación con OS X (o inspiración en...) y cual grande - o pequeño - era el salto desde Windows Vista.


-- Pizza Break --

El almuerzo fue una gran sesión en si misma: todos hablando con todos sobre lo discutido en las sesiones anteriores, tratando de ver que nos perdimos y contando - mordisco de muzzarella de por medio - lo que aprendimos de los demás en las charlas que estuvimos.


Y sigue la tarde con...

3. YARF: Yet-Another-Rodo-Framework, o ¿Cuándo debo meter qué cosa?

Esta vez, pese a ser unos cuantos usamos la vieja y querida ronda para hablarnos entre todos y no tuvimos ningún problema.

Acá se charlo sobre para que tipos de desarrollo pensábamos que era mejor utilizar tal o cual framework o tecnología, o si - como algunos preferimos - hacernos el nuestro propio framework a media.

Hablamos de ventajas y desventajas de pensar necesidades a futuro, cuándo conviene reutilizar y cuándo conviene tirar lo que tenía y volver a pensar desde cero una mejor solución. Tocamos temas como la sobreingeniería de las soluciones planteadas, problemas con la división en capas (ya sea por defecto o por exceso) y varias cosas mas.


4. .NET hace monerías

La idea de esta charla fue hablar sobre las experiencias que hayamos tenido utilizando Mono (implementación Open Source de .NET) en distintas plataformas y poder contarles a los que nunca habían escuchado de este proyecto, o no lo habían probado, cual era el estado del mismo y que se podía o no hacer en comparación a .NET.

Durante la charla se mostró un poco de Mono en acción desde una maquina con Linux y mi Mac. Mostramos el REPL de csharp que viene incluido con Mono, explotando el hecho de que el compilador es provisto como "una librería mas". También vimos el plugin de Moonlight - implementación de Mono de Silverlight - corriendo dentro de Firefox en Linux y un pequeño vistazo a la IDE multiplataforma Monodevelop.


Bueno, con esto cierro el post de hoy. Si alguien quiere, pregunte sobre algún tema mas en particular de las sesiones y, de acordarme, con gusto responderé.

Saludos y hasta la próxima (donde pienso que subiré la primer versión beta del MTGDeck)!

Z

2008-02-07

Un pequeño paso para el hombre, un gran salto para el desarrollo .NET en OS X: La nueva version de Mono incluye el MonoDevelop para Mac!

Gente, desde hace unos dias, el paquete de instalación de Mono para OS X incluye una pequeña sorpresa: MonoDevelop!

Finalmente los usuarios de OS X tenemos un entorno de desarrollo decente, con completado de codigo y toda la bola para .NET!

Screenshot:
MonoDevelop en OS X

Hasta la próxima!
Z

PD: pese a que ya no va a ser necesario, voy a ver si le programo una interfaz en GTK# o similar al ZSense para poder correrlo en OS X sin depender de Windows.Forms

2008-01-20

Intellisense de bolsillo (y multiplataforma): ZSense!

Dado que la gran mayoría de mis amigos están disfrutando de sus vacaciones, ya sea en la costa, el sur o en el exterior, este fin de semana fue bastante aburrido: me quedé en casa practicamente sin hacer nada. Todo parecía seguir asi hasta que me vino una idea a la cabeza...

Desde que instalé OS X en la laptop estoy queriendo desarrollar aplicaciones .NET usando el port de Mono que hay para OS X. El gran problema que tengo es que al no haber port de MonoDevelop (o al menos, no hay sin tener que recompilar medio universo y bajar nosecuantas librerías extra...) termino levantando una VM con Windows XP y el Visual Studio. No pido tener un IDE que se integre con el debugger ni mucho menos, sino que pido algun editor que tenga IntelliSense para no tener que estar programando con la ayuda abierta constantemente.

Aqui es donde aparece la idea que me vino el día de hoy: lo que hay que hacer es tener el IntelliSense dentro de una aplicacion hecha en .Net, asi, cuando quiera desarrollar, la puedo usar como referencia.

Sin mas presentación, les entrego a... ZSense!

Este es un proyectito bastante chico que hice hoy (pero planeo seguir mejorando con el tiempo) que recibe una linea de código con tipos de .Net y va mostrando en una lista las opciones disponibles para seguir escribiendo la linea.

Esta primera versión tiene algunos detalles ásperos: el tipo inicial debe estar escrito entre comillas dobles. Por ej, una linea válida sería: "System.Int32".GetHashCode().CompareTo(System.Int32)
Como pueden ver, la manera de indicar que sobrecarga de un método se quiere usar es escribiendo el tipo de dato de cada parámetro, separados por comas.

Si se quieren usar mas assemblies aparte de las predeterminadas, se pueden cargar en la lista de la izquierda.

Para mas detalle, vean el código! (si, ya se... hay unas cuantas cosas que podrían estar mejor - como el parsing - pero lo quería sacar andando rápido. Ya tendré tiempo para mejorarlo).

Les dejo aca la versión inicial. En un rato lo subo a Codeplex asi voy dejando ahi las últimas actualizaciones.



ZSenseMultiPlatform
Screenshot, corriendo el mismo ejecutable en OS X con Mono (todavía hay algunos problemas, pero anda...) y en Windows con VMWare Fusion


Un saludo!

Z

2008-01-11

Como reconocer a un buen programador?

Dejo aca el link a un post que apareció en Slashdot sobre como reconocer a un buen programador. Muy interesante...

http://www.inter-sections.net/2007/11/13/how-to-recognise-a-good-programmer/

Si el sitio no responde intentenlo mas tarde, ya que fue recientemente slashdotted (sitio caido debido a haber aparecido en slashdot)

Z

2007-12-28

Nombres de versiones

Éste es un mal que afecta a, por lo menos, el 97% de los desarrolladores: siempre que pensamos que una versión "supuestamente" cerrada es la final, aparece una nueva corrección que contradice la suposición anterior. De esto se desprende la siguiente nomenclatura para los entregables:

Producto_1.0.zip
Producto_1.0.Final.zip
Producto_1.0.FinalArreglado.zip
Producto_1.0.FinalFinal.zip
Producto_1.0.FinalUsarEste.zip
Producto_1.0.LOS.ANTERIORES.NO.SIRVEN.zip
Producto_1.0.LOS.ANTERIORES.NO.SIRVEN.FIXED.zip

Y la lista continua...

2006-10-16

La dura realidad

Para arrancar el blog, posteo una situación que a muchos desarrolladores les sonará familiar...


Top 10 replies by developers when their code blows:

10. 'That's weird...'
09. 'It's never done that before.'
08. 'It worked yesterday.'
07. 'You must have the wrong version.'
06. 'It works, but it hasn't been tested.'
05. 'Somebody must have changed my code.'
04. 'Did you check for a virus?'
03. 'Where were you when the program blew up?'
02. 'Why do you want to do it that way?'

and...

01. 'I thought I fixed that.'

Zaiden