jueves, 31 de mayo de 2012

Problemas con CetesDirecto


Hoy (Mayo 31, 2012) he intentado acceder a la página de CetesDirecto, una página que debería tener alta disponibilidad, y alta seguridad, pero lo único que obtengo es:


faultCode:Client.Error.MessageSend faultString:'Send failed' faultDetail:'Channel.Ping.Failed error An exception occurred during transaction completion: ; nested exception is: 
javax.transaction.RollbackException: returning error in transaction: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update; nested exception is: oracle.oc4j.rmi.OracleRemoteException: An exception occurred during transaction completion: ; nested exception is: 
javax.transaction.RollbackException: returning error in transaction: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update url: 'https://www.cetesdirecto.com/svdAppClientWeb/graniteamf/amf''

Deberían tener su página mejor hecha o mejor resguardada.

Esa información, aunque no es mucha, da pautas para un ataque al saber qué manejador de bases de datos tiene, entre otras cosas.

jueves, 3 de mayo de 2012

Grabar la pantalla en Ubuntu - Ubuntu screen recording

He estado probando varios sistemas de captura de pantalla en Ubuntu pues lo necesito para grabar algunas clases, he estado probando por horas varios de ellos, recordMyDesktop, xvidcap, istambul, entre otros.

Por desgracia cada uno de ellos tenía algún problema, recordMyDesktop tenía una pésima calidad de imagen, generando un tutorial imposible de ver. En xvidcap es muy complicado configurar el audio, istambul ni siquiera se ejecutó, tuve que matar el proceso.

Intenté cambiar la configuración de todos ellos para solucionar cada uno de sus problemas, pero al final terminé por buscar una alternativa de mas bajo nivel. Encontré a un viejo conocido ffmpeg.

Hay un excelente blog donde explican cómo usarlo:

jueves, 26 de abril de 2012

Jugar a los soldaditos


Hoy me ha tocado viajar en autobus de Tuxtla Gutiérrez, Chiapas al D.F., y sin duda lo que mas ha llamado mi atención en el tránsito por la carretera es la cantidad de retenes por los que hemos tenido que pasar, como si fueramos unos peligrosos delincuentes.

Comenzamos con el retén de migración, subieron a ver quién tenía cara de centro o sudamericano, pero por fortuna no encontraron nadie con esas características -- a pesar de que las personas de Chiapas somos tan parecidas a las del resto de centro américa. Mientras que hacían la revisión aprovecharon a subir algunas personas que vendían jugos o tortas, así te vas surtiendo.

Pasó cuando mucho una hora y ya teníamos el próximo reten de migración con sus vendedores correspondientes, ésta vez pude comprar unas papas fritas (era lo que se ofrecía en éste retén). Hay que reconocer que al menos los retenes de migración tienen un fin práctico, surtir a los pasajeros de alimentos y "chucherías" para aguantar el viaje.

Sobre buscar inmigrantes, deberíamos ser menos hipócritas y no perseguir a otros latinoamericanos como nos siguen a nosotros en otros países. Las revisiones fueron rápidas, 5 o 10 minutos.

No esperaba lo que venía mas adelante, el primer retén militar, tardamos unos 10 minutos haciendo fila detrás de otros carros y otros 10 minutos para la revisión. No me gusta la idea de que vayan revisando tu equipaje, pero bueno, ¿qué podemos hacer?

Llevamos 3 horas de viaje, hemos pasado tres revisiones, a uno o dos kilómetros de la última revisión militar nos encontramos con un embotellamiento, inexplicable en medio de la carretera --un accidente, pensé-- el trafico era pesado, algunos conductores se quedaban dormidos, tardamos mas de una hora en llegar al motivo de tal embotellamiento: ¡Mas soldados!

Parece que a algún inteligente se le ocurrió que si haces un embotellamiento, lo que acadabas de revisar hace dos o tres kilómetros se convertirá como por arte de mágia en un producto ilegal, así que como era de esperarse nos hacen otras señales con sus lámparas, todos a la vez para que se vea como un equipo desorganizado. Bajo su falsa percepción de poder interpelan al conductor por no estacionarse exactamente como ellos querían, son hasta hostiles, pero poco se les puede decir. En ésta revisión no les basta con revisar el equipaje que está bajo el autobús, tienen que entrar al autobus y abrir los compartimientos superiores, por si ahí escondieron las toneladas de coca --como si algo cupiera en esos diminutos lugares donde no entró ni mi mochila--, y ya que estaban ahí se ponen a ver en las carpetas de algunos pasajeros, supongo que para ver si entre sus papeles llevan alguna hoja de marihuana.

Al fin pasamos la cuarta revisión y comencé a escribir éste texto y antes de escribir el primer párrafo, unos 500 metros adelante, ¡Nos encontramos a la AFI! -- Creo que no confían en el trabajo de los anteriores cuatro retenes -- la revisión de éstos señores es mas o menos rápida, hasta parecen comprender que después de mas de una hora de embotellamiento por las revisiones la gente está harta, así que sólo hacen algunas preguntas a personas dentro del autobus y nos dejan continuar. No sé qué buscan con las preguntas, ¿Esperan que algún homicida decida confesar ante la difícil pregunta "¿A dónde va?"?.

Llevamos ya unos pocos kilómetros y no se vé otro retén en el horizonte, por ahora cuatro horas de "viaje" --Una hora estacionados -- y cinco retenes. Me pregunto ¿Qué pasará en la mente de los que planean esos retenes? ¿Será que se sienten poderosos haciendo parar a miles de personas en una noche? ¿Será que disfrutan el hecho de que los mexicanos les tenemos cada día mas miedo? ¿Será que extrañan jugar a los soldaditos?

ACTUALIZACIONES:
- A las 5 horas de partir de Tuxtla Gutiérrez nos hemos encontrado con el sexto retén, han desviado a revisión a los dos autobuses que venían frente a nosotros pero no a nosotros. Nos ahorramos otros 10 minutos de revisión.
- Canté victoria demasiado pronto, a pocos metros de pasar el retén militar del que nos salvamos hay uno de migración y no tiene vendedores, ni para eso sirven. -(séptimo retén en cinco horas)
- Después me quedé dormido, no supe si pasamos mas retenes, entre despierto logré ver uno mas donde agentes de la PFP preguntaban al conductor de dónde veníamos y a dónde íbamos, pero no supe mas.

jueves, 8 de marzo de 2012

Y comienza mi relación con hacienda

Hasta hoy ha iniciado formalmente mi relación con el Servicio de Administración Tributaria (SAT), pues hoy he solicitado mi RFC. Ya había trabajado con anterioridad en Secretaría de Educación (un ente del gobierno), pero por alguna razón no me dieron de alta cuando trabajé ahí.

Ahora soy oficialmente un contribuyente, y en realidad mi ingreso ha sido mas amable de lo que imaginaba. Las personas que me han atendido han sido amables y claras.

Todo iba bien hasta hoy por la noche que intento ver cuán difícil será hacer mis declaraciones sin contratar a un contador, porque de contratarlo gran parte de lo que ganaré tendrá que irse en el salario de aquel.

Y empecé a buscar, habían millones de tipos de empleados, al buscar qué tasa debería de pagar de ISR en base a mi salario, me encontré con un archivo de 12 páginas, donde tenías que encontrarte. Si entras bajo el régimen del artículo XIII, inciso a, usa ésta tabla. Si es por la resolución 1235432.f esta otra. El inciso 3 parte VII de la ley de pagos que nadie entiende apartado 2012, ésta otra. [Obviamente exagero los nombres, pero no estoy muy lejos, son igual de incomprensibles].

Al final, no logré encontrar lo que buscaba, y bueno, si a eso le agregamos que hay "Declaraciones parciales" y "Declaraciones informativas anuales", aunque en ningún lugar se diga si tienes que hacer las dos o cuál de las dos.

Bueno, para no hacerla larga estuve navegando por muchas páginas que me decían, en una jerga imposible, que debía hacer un montón de cosas que aún no entiendo. Pero, eso sí, no hacía falta la leyenda "¿Quién dice que los impuestos son complicados y aburridos? Visita nuestro sitio y descubre una nueva forma de aprender y entender acerca de los impuestos en México"


Pensé acudir a la asesoría en línea, con el chat uno a uno. Entré a la página y me dijo que estaba saturado, que esperara. Después de 10 minutos me salió un mensaje, seguimos ocupados, ¿quieres seguir esperando?y al dar click en "Sí" me conectó automáticamente al char. Una vez ahí les dije que quería asesoría para saber qué tasa de ISR debo aplicar. Me dijeron "¿En qué tipo de régimen está?" Como si yo lo supiera, les dije que no sabía, en respuesta me dijeron "Entre a MI PORTAL usando su  CIECF, en éste apartado dé click aquí, luego aquí, luego gire el ratón dos veces y póngase de pié, le aparecerá en qué régimen está" Un segundo, ahora lo hago. No tenía ni idea de qué era la CIECF (¿A quién se le ocurren esas siglas?), pero buscando en los papeles que me dieron en la mañana descubrí que era una simple contraseña que había establecido. Porqué no preguntan, ¿tiene su contraseña? en lugar de ¿Tiene su CIECF?

Intenté entrar a Mi Portal, con la contraseña que en la mañana le había escrito en un papel a la persona que me atendió, de hecho tengo el papel en la mano, intenté con mil combinaciones en que la persona pudo leer mal mi letra, pero nada, era imposible entrar a mi portal.

No tardé tanto probando las opciones, pero en menos de dos minutos la persona del otro lado me dice "Para atender mejor a los contribuyentes tiene que dar una respuesta" y al tercer minuto sin que yo pudiera entrar a Mi portal, la otra persona se desconectó.

Ahora no estoy tan feliz con mi nueva versión como contribuyente, pero creo que me tendré que acostumbrar a esos pagos y tasas imposibles de adivinar.

Para muestra, un botón, o mejor dos. Los instructivos para Pagos provisionales mensuales y el mejor aún el de la Declaración anual con sus seis sencillos pasos.

miércoles, 10 de noviembre de 2010

¿Cómo evitar la división entre cero?

Siguiendo con Scilab me he topado con otro problema.

Quiero hacer una división elemento a elemento

A = [3;4;2;0;1;2;6;1];
b = 9;

Lo lógico es usar ./ para dividir y no usar un ciclo for, pero cuando hago la división

A./b

Obtengo un error porque uno de los elementos es un cero. ¿Cómo puedo evitarlo sin usar un for?

Por ahora la única solución que se me ha ocurrido es reemplazar los 0 por un número "muy pequeño" sé que no es la forma correcta de hacerlo, pero como en mi caso no necesito mucha precisión me viene bien. Al final lo arreglo de la siguiente forma:

A(vectorfind(A, 0, 'r')) = 1.d-10;
A./b

Eliminar una fila en una matriz de Scilab

Soy totalmente nuevo en Scilab, no llevo utilizandolo ni una semana, pero ya he necesitado hacer cosas raras con el así que ya le estoy tomando cariño. ;-)

He buscado alguna forma para eliminar una fila de una matriz en Scilab, me rompí la cabeza con un millón de formas de hacerlo, primero creí que con


A = [A(1:i-1, :); A(i+1:$, :)];

bastaba pero en algunas ocasiones me daba un error de apuntadores. Después programé una función removeRow:

function A = removeRow(A, i)
  if i == 1 then
    if size(A, 1) <= 1 then
      A = [];
    else
      A = A(2:$,:);
    end
  elseif i == size(A, 1) then
    A = A(1:$-1, :);
  else
    A = [A(1:i-1, :); A(i+1:$, :)];
  end
endfunction


Pero al final encontré que bastaba con hacer

A(i,:) = [];


Vaya forma tuve de complicarme la vida.... :-P

domingo, 7 de noviembre de 2010

El cambio de horario

En Pittsburgh hasta hoy por la madrugada se ha hecho el cambio, de horario de verano a horario de invierno, y me ha dado risa ver como las estadísticas de la batería de mi computadora hacían algo un tanto extraño.

Según las estadísticas, mi batería tomó dos caminos paralelos, uno de carga y otro de descarga ¿Universos paralelos?, jaja... Lo malo que eso de las baterías que se cargan solas duró solo una hora. :-P

Cosas del cambio de horario.