miércoles, 5 de abril de 2017

ZonedDateTime & OffsetDateTime

Hoy quiero compartirles algunas pruebas que realice con ZonedDateTime y OffsetDateTime.

En primer lugar podemos decir que tenemos un "Instant" que representa un instante determinado de tiempo, luego tenemos un OffsetDateTime que representa un instante de tiempo con el agregado de que este tiene un offset aplicado, luego tenemos un ZonedDateTime que es un instante de tiempo con un Offset aplicado y con reglas de TimeZone (ZoneRules) para las conversiones de horario de verano y otras particularidades de cada TimeZone.
Puede que tengan las dudas de cual debemos y cual no debemos usar ya que ambas son iguales a simple vista o parecidas pero a la realidad no lo son, por las particularidades ya mencione al principio.
Por lo general para guardar fechas en cualquier medio de almacenamiento debemos usar el OffsetDateTime ya que este no pierde información al momento de almacenarse, cosa que si pasa cuando usamos el ZonedDateTime, ya que se pierden las ZoneRules al momento de persistirse, por lo cual tenemos que tener en claro que el OffsetDateTime debemos usarlos en los modelos de persistencia y el ZonedDateTime cuando queremos realizar operaciones de complejas entre fechas ya que estas operaciones van a contemplar las reglas de cada TimeZone. Ahora si las operaciones son simples como determinar si una fecha es menor, igual o mayor podemos usar tranquilamente OffsetDateTime para este tipo de operaciones.



Resumiendo OffsetDateTime es para modelos de persistencia y ZonedDateTime para realizar operaciones con las fechas, y como ultimo comentario mencionar que podemos obtener un ZonedDateTime mediante un OffsetDateTime y viceversa.

Del paquete java.time tenemos:

Instant -> OffsetDateTime -> ZonedDateTime

Saludos a todos y Happy Haking } ;)

martes, 28 de marzo de 2017

Trabajo en equipo

Hola a todos, hace mucho que no me doy una vuelta por acá XD.

Hoy tengo ganas de escribir del trabajo en equipo, hace poco me tope con un articulo que habla de cuanto invierte Google en buscar cual es la mejor dinámica para trabajar en equipo. Y básicamente dice que los equipos trabajan mejor cuando no existe jerarquía o tiene una jerarquía plana, y esto es lo que ayuda a que ningún miembro del equipo sienta temor en contradecir una idea ya sea del líder o cualquier otro miembro del proyecto para demostrar que no es del todo correcto.
Si nos ponemos a pensar por lo general cuando queremos plantear una idea siempre tenemos el temor de contradecir a nuestros superiores o sentimos que podemos no ser valorados o aceptados en la propuesta de nuevas ideas o decir que una idea planteada no es del todo correcta.
Otra cosa que puede pasar es que a primera vista el equipo muestre que todas las ideas son bienvenidas y se arman reuniones para plantear ideas entre todos los miembros del equipo y lo que se termina haciendo es lo que un superior decide y eso a largo plazo termina perjudicando ya que se termina pensando: "Para que pensar en una alternativa si al final se hace lo que el jefe dice", esto en un contexto de un jefe que ni contempla las alternativas y solo quiere parecer un buen jefe.
Personalmente haciendo una retrospectiva de mi vida laboral, me doy cuenta que cuando mas rendí fue cuando mas cómodo estuve en cuanto a la aceptación de mis ideas (claro algunas fueron buenas, otras no tanto y otras fueron malisimas :( el proceso del aprendizaje), y en esos equipos que estuve el rol del "Líder/Jefe" siempre fue un rol de coordinador y moderador mas que un jefe, siempre fue uno mas que nosotros y nos hacia sentir que valoraba nuestras ideas a lo que atribuyo que esos lideres entendían y aplicaban la inteligencia emocional.

Para terminar, si sos líder o jefe aplica la inteligencia emocional, motiva al equipo y sobre todo, demostrá que sos uno de ellos y no solo el jefe.


Saludos y Happy Hacking } ;)

ZonedDateTime & OffsetDateTime

Hoy quiero compartirles algunas pruebas que realice con ZonedDateTime y OffsetDateTime. En primer lugar podemos decir que tenemos un ...