Me he encontrado con una situación un poco rara. Lo cierto, es que he perdido 2 puntos de reputación por cada pregunta o respuesta eliminada (no estoy seguro de que sea por respuesta, creo más que sea por cada pregunta eliminada).
Lo cierto es que pierdo 2 puntos cuando ocurre un evento, tal y co...
First of all I must thank for the help given in the previous post:
Class showing a format similar to var_dump RC5 Version
I have it deployed in a early versio v1.0.4: https://github.com/arcanisgk/BOH-Basic-Output-Handler
As they should imagine; Thanks to your help, the main code has had serious c...
La reputación que se gana con una pregunta o la respuesta a una pregunta se pierde cuando se elimina, sí.
Cuando elimine una pregunta, también recuperará la reputación que perdió con el voto negativo, pero no de inmediato, sino que la obtendrá cuando se active la siguiente recalculo.
Estos recálc...
en algunas líneas estará, en otras no. Eso sí. Pero lo que yo digo es que basta con que esté en una sola para imprimir "Contacto borrado" y solo si no está en ninguna se imprima "Contacto no encontrado"
de hecho lo que digo yo en mi comentario es exactamente lo mismo que implementas tú en tu respuesta :-)
Mi interpretación es que en el fichero quiere dejar todas las líneas que estaban en el original y que no contengan al contacto. Y que el mensaje final, en el fondo, diga si se modificó o no el archivo.
Al menos esta es la interpretación que tiene sentido para mi. A base de responder preguntas me he ido acostumbrando a leer no lo que piden, sino lo que quieren pedir. Eso me ahorra responderles a lo que piden para que después me digan "pero esto no hace lo que quería" :-)
Ahora estoy trabajando en una aplicación que corren en Wemos (un MCU). Necesito reducir el uso de memoria dinámica; me quedan como 12KB para operar y estoy repasando todas las operaciones con strings (concatenaciones y formateos especificamente) ¿Alguna idea para usar bytearray en lugar de strings?
@abulafia E/S basicamente. El servicio Web tiene que procesar headers recibidos, enviados, más respuestas de largo variable. En el peor de los casos, tendría que mandar unas 1.500 mediciones (timestamp+entero) de una sola vez. Ahora genero el JSON a mano, escribiendo cada medición por separado.
Sí, mas o menos... "Hola" es unicode, en efecto, pero b"Hola" es simplemente una cadena de bytes
que en ese caso contiene bytes interpretables como ascii
pero realmente podrían contener cualquier otro valor binario
por ejemplo b"\xff"
Puedes reducir consumo de memoria si evitas concatenaciones de cadenas dentro de los bucles, usando en su lugar listas de cadenas a las que vas añadiendo elementos, para al final del bucle hacer un "".join(lista)
no sé si Micropython optimza el operador += en cadenas. Sé que CPython sí lo hace en ciertas circunstancias para extender una cadena sin crear otra nueva intermedia
@RevolucionforMonica Esto estaría mal: ` {'q0.Results.0.Name': 'L'Atelier des Subtils Eau d'Océan - Eau de toilette'}` ya que debes escapar las comillas simples: \'
O en todo caso debes escribirlo entre comillas dobles: ` {'q0.Results.0.Name': "L'Atelier des Subtils Eau d'Océan - Eau de toilette"}`
@PabloLozano si te conectas en algún momento y me lees, tengo un comportamiento extraño con una llamada a un método de una Clase en Typescript. No estoy seguro del porqué se comporta así, pero me parece que es un tema de bindig.
@PabloLozano, resuelto, era lo que me temía, sólo que no estoy seguro del porqué del comportamiento. Si no consigo una explicación en alguna parte, te preguntaré a ver si sabes darme una explicación. Aunque pienso que sé cuál podría ser el problema. Gracias igualmente
Me pidieron algo bien simple en un banco: construir una interfaz para que Visual Basic pudiera scrapear una pantalla 3270 a fin de tomar datos de un sistema y llevarlo a otro como un Dataset de VB. IBM tenía una API para acceder al terminal 3270, fácil de usar y conocida.
Ningún problema ahi. El asunto era ¿Cómo genero un Dataset VB desde C? Empece mirando la documentación de Microsoft. Algunas explicaciones estaban en VB, otras en formato C y era como el juego del comprahuevos. Ninguna te contaba toda la película y mirando las partes de que disponia, no veía como diablos la iba integrar.
Comenzaron a pasar los días y yo pegado sin poder avanzar, viendo que no iba a poder cumplir el requisito. En la hora undécima encontre un post perdido en la Web que mostraba como se hacía. Me salve por un pelo.
El problema de fondo con Microsoft es que tiene APIs para todos, pero ninguna dura. No terminas de aprender una, cuando sacan la otra y dejan obsoleta a la primera. Y como tienen productos para todo, intentan relacionarlo todo con todo para dejarte atrapado en su ecosistema
La cantidad de cosas que necesitas saber y consultar para hacer lo más simple es impresionante.
En Linux es diferente. Cada producto es de origen distinto. Cada cosa es de menor tamaño, menos compleja y con API genéricas y mejor definidas. Puedes trabajar con mySQL, por ejemplo, sin necesidad de saber sobre Active Directory.
Por eso los usuarios tienen preferencia con linux.
Dejando los temas economicos a un lado.
Y que me dices de Android. Tienen APIS para todo. Pero cada nueva versión deja obsoleta la anterior.
Estoy leyendo los terminos de serviceos de Microsoft. Pero pregunto esto: ¿Como tratan a los empreados y que hay que evitar hacer para evitar problemas legales?.
Esta bien. Python me esta interesando mas que antes: Tiene un modulo no estandar que me permite crear aplicaciones reales. De python a C, ya sea para Windows o Linux.
Otra historia. Era administrador Internet en una empresa con ~27 redes locales repartidas en 4 paises. Cada red con su propio servidor de correo Exchange. Salio una nueva versión con una funcionalidad que necesitabamos. En Linux simplemente migras el correo, con Microsoft ... no, no.
El nuevo servidor Exchange requeria Active Directory y nosotros todavía estabamos en NT. Bueno, será cosa de configurar una red con Active Directory y el nuevo servidor. No, tampoco. Para que funcionara, habia que migrar todo a Active Directory ... las 27 redes. Obviamente, también se requería hardware nuevo, capacitación nueva, todo para migrar el correo. Típico de Microsoft: todo bien amarrado.
Esa fue la época de Balmer. Microsoft, por decisión empresarial y no técnica, no seguía ningún estándar. Todo era código cerrado y protocolos propietarios. Como dices, Moe, infernal. Intentaban imponer con prácticas monopolísticas su propio navegador web, y su implementación no seguía estándares, pero siendo el navegador mayoritario los diseñadores de frontend tenían que ser compatibles con él
Igual con su servidor Internet; no es un producto separado que puedas instalar en cualquier maquina (como Apache). Cada versión está amarrado a una versión de Windows específica. ¿Quieres la nueva versión del servidor? Tienes que comprar la nueva versión del S.O.
Ahora son más abiertos y más apegados a los estándares, pero naturalmente porque eso les conviene. En el cloud casi todo son sistemas linux y ahora que MS está potenciando todo lo cloud tiene que trabajar más codo con codo con los desarradores opensource.. Aún así, aunque lo hagan solo "porque les conviene", la nueva situación es mucho mejor para todo el mundo
MS siempre buscó el "vendor-locking" por la vía de la no compatibilidad y la no estandarización
Google, aunque más apegado a los estándares y al open source, es también un infierno de inestabilidad. Sus productos pueden desaparecer de la noche a la mañana, así como sus APIs o condiciones cambiar totalmente
Linux es diferente. No interfiere para nada con mi trabajo. No me genera alertas, popups ni mensajes estúpidos. No me pregunta a cada paso si estoy seguro de hacer esto o aquello.
En Linux sólo hay una versión de cada cosa (planillas, procesadores de palabra, software en general). En Windows nunca tienes claro cual de las 7 versiones del producto es la que necesitas comprar.
SI si he tenido problema con eso. Para el peor error de descargar Eclipse tuve que hacerlo dos veces y gastar casi 200mg de los cuales no les saque provecho.
@DanielBriceño Linux es uno sólo. Lo que ves son "distribuciones", distintas maneras de empacar programas y aplicaciones. Antes usaba Ubuntu, pero lo abandone porque no me gusto la interfaz gráfica. Ahora estoy con Linux Mint Mate en el PC. En los laptop viejos uso Linux Mint Xcfe, que es más liviano.
@DanielBriceño No se. Android no lo entiendo. Mi celular tiene más memoria y CPU que un PC de 5 años atrás, pero sólo puedo crear programas "de a pedacitos".
@DanielBriceño En esencia, se trata de tener un cable por el que circula o no circula corriente. Imagina una bombilla que cuando está encendida significa 1 y cuando está apagada significa 0. Y un interruptor que tú puedes manipular para encenderla o apagarla
Eso no tiene nada qué ver con corriente alterna. La bombilla puede funcionar con una batería y corriente continua
el giro que de pronto lo cambia todo es que el interruptor, en vez de activarlo con el dedo, lo activas a su vez con otro cable que puede llevar o no corriente
al final los cables llevan corriente (o no) que manipulan a interruptores que hacen que otros cables lleven corriente (o no)
esos "interruptores digitales" son los transistores
y generalmente hay una fuente de "impulsos" (un cable que alternativamente lleva corriente y no la lleva) que pone en marcha todo. Ese cable es la señal de reloj
y el generador que activa y desactiva ese cable, es un reloj de cuarzo
@abulafia @CandidMoe Me imagino una computadora que trabaje a la velocidad de la luz. O una computadora que en vez de almacenar corriente almacene Luz.