3 semanas en silencio
Apr 7th, 2006 by zapcome
3 semanas sin escribir. Han sido 3 semanas muy interesantes a mi punto de vista. Han pasado muchas cosas: Todas las competencias de los Commonwealth Games, el gran premio de Australia - en donde Montoya al parecer confirmo que aquí en Australia tiene una maldicion - y antes de la carrera el cierre de los commonwealth games - que dicho sea de paso, fue una ceremonia muy bonita, pero como se imaginaran tampoco fui por que las entradas estaban también muy caras. Ta mare… ya me canse de que en esta ciudad haya tanto evento y yo me quede sentado como un $%&@\! viendo las cosas por television. Creo que eso tiene que cambiar este año… y para empezar les dire que Pearl Jam viene en Diciembre y dara 2 conciertos en esta ciudad. Tengo que estar ahi así tenga que trepar por fuera el Rod Laver Arena. Esta totalmente descartado el no ir a ese concierto. Bueno, pero para eso aun faltan unos cuantos meses, y las entradas aun no están a la venta. Sera mi venganza por no haber ido al concierto de Dream Theater en Santiago (aunque yo creo que no tiene punto de comparacion la musica de Pearl Jam con la de DT).
No se si a uds - gente que lee y escribe blogs - les pase, pero luego de estar posteando seguido durante un par de meses, y parar de escribir por un tiempo… luego, el volver a escribir, cuesta. Pero luego de terminado el post uno se siente mejor. Es como una catarsis tecnologica… algo así.
Describir la situacion en la que me encuentro en estos ultimos días es algo dificil : Es una mescolanza entre eficiencia de algoritmos y preocupacion electoral :S … En estas ultimas 3 semanas en la universidad han empezado a soltarnos los trabajos de ciclo - o assignments - y ando bastante corto de tiempo.
Para empezar tengo un trabajillo bastante interesante en el que tengo que crear un software que lea información acerca de tickets de loteria que han sido vendidos y luego compare con los numeros ganadores y que diga cuanta gente gano cierta cantidad de dinero y en que localidades, estadisticas sobre que localidad vendio mas tickets ganadores, cuanto dinero se repartio, etc… Claro esta, esto se puede hacer de una manera bastante simple, haciendo comparaciones o teniendo la información en una base de datos, que se yo… cuanta gente agarraria su Visual Basíc y podria hacer esto de n maneras, pero el truquito - o mejor dicho la manera correcta - es hacer un algoritmo limpio y eficiente, acortando el tiempo de respuesta. La prueba final se dara con un archivo de texto con 10 millones de tickets (unos 460 megas de texto)? Es todo un reto. Se ha estimado que solo los alumnos que tengan un tiempo promedio menor a 2 minutos podran ganar puntos en la parte de eficiencia en este trabajo. Volviendo a las especificaciones del trabajo, se tiene que hacer con el codigo en Java (o en C++) mas eficiente posible usando estructuras de datos y luego sustentarlo mediante un reporte. Bastante interesante el trabajillo ya que le estoy sacando el jugo al compilador con el Profiler del Netbeans 5.0 viendo cuanto tiempo gasta cada instruccion… y tratando de mejorar el tiempo cada vez. Ademas hay un trabajo en el que tengo que crear una base de datos para una aplicacion web que me esta sacando canas verdes…
En mis ratos libres solia - hasta la semana pasada - pegarme a la computadora (como siempre no?) pero ahora para jugar Need For peed : Most Wanted. Que juego para adictivo… muy buen juego… si disfrutaron del NFS 2 Underground, ahora amaran este juego. Lo unico malo es que no tiene tanto nivel de personalizacion para los carros como el underground. Ahora lo que hago en mis ratos libres es seguir pensando en como resolver el problema de la base de datos o como le puedo restar un par de segundos a la ejecucion del software de la loteria… eso es en escencia ser geek ![]()
Lo otro que anda en mi cabeza estos días es las elecciones en Peru. Hace algún tiempo cuando puse el post sobre el correo que recibi diciendo por que no votar por Humala alguien puso un comentario diciendome “No cagues tu blog hablando de politica…” y ahora me pregunto… ?se puede cagar un blog hablando de politica??… pues creo que si. Cada día leo tanta porqueria en los periodicos sobre las campa?as politicas que realmente da verguenza. Y no solo eso, si no que también la basura politiquera ha llegado a los blogs : Ahora el spam en los comentarios contiene contenido politico!!… es el colmo. Lamentablemente como dije hace algún tiempo en el post Votando a Larga Distancia no votare desde aquí por que no hize el tramite de cambio domiciliario, al menos podre decir que no participe en la pachotada que todos los peruanos estamos a punto de hacer. Hace poco lei en un diario por internet una entrevista a Martha Hildebrandt en donde ella decia que los peruanos nos merecemos todo esto que nos esta pasando, y creo que tiene toda la razon. Nadie mas que nosotros mismo somos los due?os de nuestro futuro : En lo personal, laboral, politico, etc, etc… si nosotros votamos por un candidato que no vale la pena, entonces ese candidato tendra un gobierno que no valdra la pena recordar… no voy a decir nombres, pero uds saquen sus conclusiones. Espero que este fin de semana todos los peruanos hagamos un voto a conciencia y - aunque suene gracioso - piensen en lo que van a hacer antes de meter el dedo (a la tinta :D).
Hola Zapcome.
Ya se te extra?aba tus comentarios. Que interesante trabajo el que te han dado. Para nosotros los desarrolladores, es todo un reto que puede muy bien reemplazar a cualquier aficion la optimizaci?n de codigos.
A prop?sito. En que ciclo vas?. Alli dura la carrera 5 años igual que aquí?.
Cual crees que es la mejor epoca de llegar y conseguir trabajo?.
Muchas gracias por tus respuestas.
Te leo a diario, claro, cuando tienes posts :D.
Saludos
Jeny
Siempre es bueno - te sube la moral y la autoestima
- que haya gente que te lee a diario.
Este es mi segundo ciclo en la carrera, pero estoy llevando cursos de 2 y 3er año, se supone que tengo que terminar dentro de un año. La carrera dura 3. El titulo que te dan es Bachellor of Computer Sciences. Pero tiene de requisito matematicas avanzadas - esas que lleve en la universidad en la que estaba en Peru durante 3 o 4 ciclos - así que espero terminar lo antes posible!
Saludos!!!!!!!
olas!!bueno yo recien me integro xq recien entro a la pagina,y desde ahora voy a entrar todos los días,bye!!!!
Hola, me encanta tu blog! me gustaria preguntarte algunas cosas sobre australia, quisiera ir por alla.
adios!
Ruth
Si tienes alguna pregunta en particular… solo dejame un comentario en el blog… y yo te respondo.
Hola Zapcome, también leo tu blog, y la verdad que ya mucho tiempo estabas offline, ya me preocupabas jeje. Cuentame un poco mas de tu universidad, dime que cursos te ense?an en la rama de Sciences Computer (cursos de carrera, nada de Mate 3, Mate 4) son trancas trancas? plajeas? jajaja (un pregunta indiscreta sorry ). Bueno espero tus respuestas
Hola, estoy dando un curso de .NET y el problema de la loter?a tiene muy buena pinta, adem?s de que parece divertido…
?Te importar?a explicar mas en profundidad cu?l es la funci?n que se trata de resolver y para la cu?l hace falta un algoritmo?
PD: ?ya tienes el MCSD?
Bueno, la funcion que se necesita implementar es algo un poco mas grande que una sola funcion. Como dije anteriormente, se tiene que leer información acerca de la venta de tickets de loteria. Para esto, nosotros hemos recibido unos cuantos files con esta información con un formato
[numerodeticket] [numeros escogidos] [ubicacion de la tienda en donde se compro el ticket]
Claro esta, sin los corchetes… algo así
100000000000034534 6 13 27 45 46 49 MALVERN VIC 3144
Entonces… de estos, hay millones de tickets en el mismo archivo, uno por linea. Hay que leer los tickets, y comparar el numero de aciertos con los numeros ganadores los que son ingresados como argumentos del ejecutable en la linea de comandos. Otra información que se recibe por linea de comandos es el precio del ticket, la ubicacion del archivo de los tickets y el nombre del archivo del reporte.
osea mas o menos yo hago algo así para ejecutar mi programa
java LotteryReport 100000000Ticketsfile output.txt $10 6 13 27 45 46 49
Luego, hay que botar un reporte diciendo cuantos ganadores hay con 6, 5, 4 y 3 aciertos - ordenados por ubicacion y luego por numero de ticket, de menor a mayor-, cuanto dinero recibe cada uno de ellos, y cuanto dinero se reparte entre todos los ganadores de la division (division = la gente que tiene el mismo numero de aciertos). El ganador con 6 aciertos recibe 15% del total recaudado, el resto de divisiones, recibe el 10% cada una… si en alguna division no hay ganadores, o si después de haber repartido igualmente el dinero sobra algo… ese dinero sera a?adido a la division siguiente (a la division con menos aciertos)
Por ultimo se tiene que mostrar en el reporte a las 5 ubicaciones que vendieron mas tickets, y las 5 ubicaciones en donde se gano mas dinero. Esta lista tiene que estar ordenada por cantidad de dinero ganado y luego por suburbio.
Como te daras cuenta, para realizar esto uno tiene que tener en mente algoritmos de ordenamiento y estructuras de datos para el almacenamiento, como arboles o un hashtable… a mi me parecio muy bueno el ejercicio… yo ya termine el codigo y bota el reporte de 10 millones de tickets - el archivo mas grande que se nos dio - en aproximadamente (siempre varia) 48 segundos.
Creo que vas a tener un buen ejemplo de como usar los hashtables y los algoritmos de sorting que tienen las colecciones en .net… ademas de - claro esta - como leer y escribir archivos.
Por cierto… nunca pude sacar mi MCSD… me faltan 2 examenes!… y aquí son mas caros de lo que uno penso.
Yo creo que los tengo que sacar si o si… y para eso tendre que desempolvar mis cosas de COM+ … y el otro examen que me queda es el de analyzing requirements… aunque me dijeron que mas parecia un examen de ingles… aunque para eso - creo yo - yo ya estoy mas que preparado! 
Saludos
muchas gracias…