Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Serapis

#1331
Una cosas es: "emplean técnicas de Inteligencia Artificial para detectar informaciones falsas, 'bulos' ", y otra muy distinta conseguirlo.

Uno podria decir: "he visto un alien", y seguramente esa IA diría que es falso, siendo completamente cierto. La razón hay que buscarla en la programación de quién y cómo decide que algo es cierto o falso. a una cuestión como 5 + 4 = 9, es fácil responder que es falso, peor a algo como "ayer cociné arroz", ninguna IA puede decidir si es cierto o falso... cocer arroz es algo plausible y ayer es un tiempo existente para mi (vuestra) persona, luego es imposible decir si miento o no... una IA, no puede hacer sino lo que cualquiera, apostar y esperar no equivocarse.

...pero desde el momento en que se apuesta, se está jugando a los dados, ya no hay inteligencia en ello. De hecho eso es peor que cuando alguien se basa en su intuición...

Así que me temo que dicho algoritno, lo que hará será clasificar la fuente de origen y decidir que si dicha fuente ya originó 500 noticias falsas, la que ahora trata, también lo es... pero para eso no hace falta una IA, simplemente un sistema de clasificación... claro que a lo mejor es solamente eso, un algoritmo que ya existía hace 40 años que ahora lo actualizamos y el añadimos el palabro 'Made with IA" y adelante...

No entiendo por qué la gente es tan estúpida para aceptar modas sin más...
#1332
CitarCuando dices a alguien "soy catalan" te miran raro, ya para empezar. A mi me ha pasado
Esto es un clásico... tan clásico, que hace más de 30 años, cuando fuí a hacer la mili (obligatoria), allí en el centro de reclutamiento, había un grupo de catalanes, y venían a decir eso mismo... pero claro era un pensamiento interno de ellos y solo ellos, ni nadie les miraba raro, ni nadie sabía de donde C0J0N3X eran, pero si se entonaba de su boca esa manida expresión...
...parece que fraguada a fuego en la infancia de casi cada catalán... te aseguro que esa frase es la misma cantinela reptetida hasta el hartazgo en las últimas décadas, inventarse un supuesto odio inexistente.

Hasta entonces yo jamás había oído hablar del tema, ni conocía a nadie de mi tierra que hablara sobre el tema, lo más que había oído de los catalanes era lo típico de: 'son unos roñosos' (en lo que a la economía se refiere), que no es ni más ni menos que la típica coplilla, que en cada país invariablemente se acuña a los de determinada región: "los andaluces son unos vagos", "los murcianos son unos ladrones", "los pacenses son unos catetos", "los madrileños son unos chuulos", "los catalanes son unos 'peseteros'"... el resto os lo habeis inventado vosotros...

Teneis el "síndrome de Kalimero": "...nadie me quiere..." porque sois unos llorones.

El territorio nacional, ocupa toda España. Que tu vivas en un sitio u otro, incluso aunque tu vivienda o un terreno sea de tu propiedad, no confiere a nadie la propiedad del terreno en términos absolutos, tan solo en términos de 'explotación' (es tuyo lo usas), por decirlo de una manera simple.
Yo que no soy catalán, tengo tanto derecho a esa tierra, como el que tiene ancestros que en los últimos 500 años han nacido en Cataluña. Y tú que eres catalán tienes tanto derecho a cualquier parte de españa como el que haya nacido y teneido ancestros durante los últimos 500 años en sus lugar de nacimiento. ....La tierra no es de quien vive en ella, es del conjunto de todos los españoles... sino bastaría con que emigraran a Cataluña 9 millones (pongamos que) de China, y entonces en base a ello (que serían mayoría absoluta), declarar independencia de España y adscripción del territorio a China con la excusa de que el 80% de los habitantes de Cataluña, fueran chinos...

Cuanto antes lo entendais, menos sufrireis...

...aunque da igual, sois los niñatos adoctrinados por los sucesivos gobiernos de la comunidad de Cataluña.
Desde que impusieron la enseñanza obligatoria en catalán en todas las escuelas, la exigencia (expulsión enmascarada) a todos los funcionaros de tener un nivel x de catalán y cosas como libros de Geografía e Historia, manipulados, con patadas a la veracidad en su contenido, es que habeis sido adoctrinados... casi silenciosamente, por supuesto, lo querais admitir o no.

Es más en estas fechas cualquier adolescenbte y postadolescente, parece que para ser un ser inmerso en la sociedad tiene que ser una especie de gusano energúmeno que destruye lo que tiene a su alrededor cuando algo no le 'cuadra'. La sociedad se define por la convivencia pacífica entre sus ciudadanos siendo esencialmente diferentes en muchas cuestiones particulares, y no por ser un border-line (con perdoón para los que sufren ese trastorno), que es la moda en esta generación de analfabetos...
#1333
Creo que es ni más ni menos que lo que te dice Elektro, un problema de permisos, pero el fallo persiste por que no los adjudicas correctamente.

Si mueves la aplicación a una carpeta, el usuario debe tener permisos sobre dicha carpeta... y como mínimo el fichero 'manifest' debe estar presente donde se localice el ejecutable. Recuerda que al instalar podrías/podrían haberse instalado en el registro los privilegios de la aplicación, luego moverlo de carpeta, ya no coincide, no localiza tales permisos en el registro para la nueva ubicación...

Léete también otros apartados de los que se muestran en árbol a la derecha...
https://docs.microsoft.com/en-us/windows/win32/secbp/running-with-administrator-privileges
#1334
Es un paper de la ACM... de solo un puñado de páginas del año 1991 o así....

Si quieres un buen libro sobre programaciónm, lenguajes y tal... (por ejemplo) te recomiendo el de:
Robert W. Sebesta - "Concepts of Programming Languages"
Yo tengo dos versiones del mismo, la 5ª que data del 2002 y la 8ª que data del 2008, creo que la última versión es la 11ª y data del 2015-16 (hay dos editoriales publicandolos a diferente tiempo 'prentice hall' y 'Pearson education...' (Addison Wesley) ).... es decir es un libro actualizado a lo último (la 1ª edición era de 1989).

En realidad hay infinidad de libros sobre la temática... yo mismo tengo algunas decenas, ninguno es definitivo, se requieren varios para ser exhaustivos, pero (casi) cualquiera es lo suficientemente bueno como para aprender de él, lo básico y mucho más...

Ten en cuenta que este tipo de libros son genéricos, auqnue suelen adscribirse a uno, dos o tres lenguajes ( aveces incluso a más de media docena) para las explicaciones pertienentes. Pero para cuestiones espécificas de un lenguaje concreto, es preferible adquirir uno que incorpore en el título, precisamente el nombre del lenguaje.
#1335
y qué dificultad presenta el caso , como para que no puedas hacerlo ???.

Antes que programación, es un ejercicio de lógica...

¿no eres capaz de resolver la lógica subyacente indistintamente del lenguaje que se use?????.

Considera que tu texto se compone de 1 palabra seguida de ninguna una o más veces un espacio y una palabra... así queda definido:
texto = palabra [espacio palabra]*

Luego, lo primero que procede es considerar el espacio , pero 1 solo espacio, si no lo siguiente puede fallar... entonces una de dos, o tiras del funciones del lengueja o creas tu propia función. También debes decidir si importa o no la capitalización ¿A = a?...

A - Si tiras del lenguaje la función split, crea un array de un contenido, cortando precisamente por un 'substring'... el espacio, vale, pero 1 solo espacio, antes hay que asegurarse eso, que solo hay un espacio entre cada palabra.
Código (vbnet) [Seleccionar]

text2.text = String.Replace(text2.text, "  ", " ")  ' Remplazamos si hay 2 o más caracteres por solo 1.

Ahora obtener sendos arrays de palabras para el original y la seudocopia.
Código (vbnet) [Seleccionar]

dim palabras() as string = string.Split(texto2.text, " ")
dim original() as string = string.Split(text1.text, " ")


Finamente en un bucle comparar, sin hacer una búsqueda exhaustiva... simplemente se espera que cada palabra esté en su sitio, si no lo está se señala...
Código (vbnet) [Seleccionar]

for k= 0 to original.length
   if (palabras(n) <> original(k)) then
      ' Si además pretendes ver si aparece parcialmente...
       if original(k).Contains(palabras(n)) then
           msgbox "La palabra " & original(k) & " aparece incompleta: " & palabras(n)
           n = (n +1)
       else
           msgbox "Falta la palabra: " & original(k)
       end if
   else
       n = (n +1)
   end if
next


B - Si pretendes hacer tú mismo la función... básicamente puedes unificar todo en una sola funcionalidad, bastando con recorrer una sola vez el texto. y Se trata simplemente de operar con los caracteres sueltos... cuando aparezca un espacio, considera que la palabra acaba... y omites el resto de espacios hasta el siguiente carácter que no sea espacio... ahí considera que empieza otra palabra... el resto de la lógica es similar a lo de más arriba... pero como operas con caracteres, puedes o bien leer palabras enteras del original y luego buscar si la siguiente palabra en la copia es idéntica o solo parcial o es completamente distinta, o bien tratarlo carácter a carácter, si más de 1 caracter coinciden, y la palabra copia acaba podrás suponer que está incompleta, si no ausente.

Aumenta el índice de la copia, solo si coincide o coincide parcialmente, no si está ausente... pero así tampoco detecta si una palabra que aparece en copia no aparece en la original (pero este caso, no está recogido en tu exposición, igual que tampoco si coincide parcialmente pero son distintas palabras, solo la coincidencia parcial cuando es una palabra completa la parcial (esto es que le sigue un espacio o final del texto))... por ejemplo:
coincidencia parcial, pero no es una palabra completa el parcial... confort'able' versus agr'adable':
text2.text = "Mi casa es muy agradable. Mi habitacion es calida. Mi mascota duerme"
Palbara no existente, ausente en original: 'super' no aparece en la original.
text2.text = "Mi casa es muy confortable. Mi habitacion es super calida. Mi mascota duerme"
Tampoco recoge tu exposicion si contiene las palabras pero en otro orden:
text2.text = "es muy confortable Mi casa. es calida Mi habitacion . duerme Mi mascota"


Puede buscarse un enfoque más preciso, si queda claro el propósito final del asunto, si solo es escribir código por escribir, sin una especificación... queda abierto a cualquier cosa y cuando lo haga, todavía podrás inventar más 'reglas/casos' con las que fallaría el presente código... y así vas parcheando código. Procede siempre antes de escribir una sola línea de código definir una especificación completa de lo que se espera, sin supuestos cambios a posteriori al mero capricho.

...o dicho más llanamente, búscate algo más razonable que hacer como ejercicio, del que no tengas que inventarte sobre la marcha qué reglas quieres... por ejemplo toma 4 líneas de código de un lenguaje y define si al menos todas las palabras que aparecen forman parte de ese lenguaje, aunque no estén sintácticamente formadas.
Cuando te refresques del lenguaje, luego intenta definir si tal composición es o no sintácticamente correcta. Ahí las reglas están definidas, no pueden inventarse sobre la marcha, ni cambiarlas si no te gustan, etc...
#1336
Foro Libre / Re: Chips a prueba de ciberataques
17 Octubre 2019, 08:03 AM
Pufffff...

CitarImagine que (cada chip) tiene un sello y cada vez que lo estampa en una hoja de papel obtiene una impresión ligeramente diferente, como una huella digital.
Eso es lo mismo que el espionaje definitivo. Algo que tienes te vincula a tí únivocamente... luego cualquier cosa que hagas (con la excusa de siempre, "por la seguridad..."), se sabe finalmente la procedencia. Adios a los que ven porno, las webs podrían ya directamente vender los datos de cualquiera a tipos sin escrúpulos para chantajear a los usuarios...

Si esto es todo lo que s eles ocurre sobre seguridad, más vale que se vayan a dormir la siesta, a ver si cuando se levantan idean algo realmente útil pero sin penalización social.


CitarA finales de 2017 un equipo de investigadores coreanos —liderados por Kyu-Man Hwang, responsable del Centro de I+D de Semiconductores en Samsung— llevó esa tecnología un paso más allá, creando PUFs aún más resistentes. Su invento, llamado NEM-PUF, utiliza un interruptor nano-electromecánico y se crea utilizando nanocables de silicio extremadamente pequeños, que están suspendidos en un líquido entre dos compuertas que representan 1 y 0. Durante el proceso de fabricación, el líquido se evapora y el cable se adhiere aleatoriamente a una de las compuertas. Cuando se juntan muchos de estos chips en un mismo sistema, se crea un código de seguridad largo y completamente aleatorio. Y si alguien intenta acceder a los datos sin este código, se le denegará el acceso.
Bla, bla, bla, misma M135D@... Poseído el código, desaparece toda seguridad.

El caso es realmente más penoso que eso, por la imposibilidad de generar un nuevo código, lo que en la práctica supondría que si un 9UT0 hacker consigue el 'código del chip' de tu dispositivo, la única manera de restablecer la seguridad es comprar otro chip, y como me temo que no serán remplazables porque no vienenen en zócalos sino soldados en placa, la realidad aplastante es que un hackeo del que seas consciente supone tener que comprar otro dispositivo al completo. Así, incluso sería el propio fabricante un interesado más en 'hackear' tu dispositivo... Es o no una M135D@ de diseño?.

Citar
Investigadores del Instituto Paul Scherrer, en Suiza, lo están haciendo con Rayos-X. En marzo de 2017, apuntaron un haz de rayos X hacia una pieza de un procesador Intel y pudieron reconstruir la red de transistores y cableado del chip en tres dimensiones. El equipo cree que, en el futuro, esa técnica podría extenderse para crear imágenes a gran escala y de alta resolución de los interiores de los chips.

La técnica, llamada "X-ray ptychography", representa un alejamiento significativo de cómo la industria de la computación ha trabajado la ingeniería inversa hasta la fecha: generalmente, para analizar si un chip ha sido violado o si su propiedad intelectual ha sido mal utilizada, se eliminan progresivamente las capas de un procesador y se toman imágenes a través de microscopio electrónico de minúsculas partes del chip de cada vez. Pero "todo lo que se necesita son algunos años más de este tipo de investigación, y uno podrá fácilmente mirar su chip y contemplar su esquema de ensamblaje", dice Anthony Levi, catedrático de Ingeniería Electrónica en la Universidad del Sur de California. "La transparencia total en la fabricación de chips está en el horizonte. Esto va a forzar un replanteamiento de lo que es la computación", afirma. Su principal aplicación, según explica, será verificar que un chip solo tiene las características que se pretende que tenga y que los malware no han encontrado un agujero por donde atacar.
Funcionar, funcionará, pero para chips del pasado, presente y probablemente también para un futuro inmediato, pero seguramente no más allá...

Una cosa es analizar una placa, como si fuera digamos una pared (donde puedes analizar las 'minicapas' que componenn en ladrillo, el yeso, etc...), y otra muy distinta sería analizar todo el interior de una fábrica (por ejemplo), donde son capas tras capas, que no tienen por qué coincidir espacialmente en un mismo plano ni discrurrir paralelo  a él en ninguno de los 3 ejes...
La tecnología está por fabricar chips en 3D... recuerdo a Intel cacareando allá en la primera mitad de la década 2000, que tenían previsto empezar a fabricar memorias en 3D y que estaban investigando para aplicarlo a los chips... supongo que si aún no lo han completado es debido a problemas de disipación del calor... con la relativa miniaturización, la técnica posiblemente sea más factible y la de aplicación de rayos X, en cambio a mayor miniaturización menos factible,o al menos mucho más complicado y precisión exigiría...
#1337
Que la Tierra evoluciona con el tiempo, no es nada nuevo...

Ahora que alguien pretenda hacerme creer que 2.000.000.000 millones de personas cada día quemen 10 litros de combustible a lo largo de 2-4 horas, más las chorrocientas mil aviones, barcos, trenes, autobuses, etc... más los chorrocientas mil empresas y fábricas que cada día tiran cientos de toneladas de gases tóxicos al aire, etc, etc, etc, no tienen ningún efecto, es para hacerle tragar una buena parte de esos gases....... basta que se meta en una habitación cerrada con 10 personas, y ya veremos al cabo de 8 horas, (si siguen vivas), si ha subido la temperatura del ambiente, o si se mantiene tal cual. ...y solo están respirando, sentadas o dormidas.

Que 4 volcanes a plena potencia pueden poner en jaque el planeta?. Nadie lo discute, contra la fuerza de la Naturaleza no podemos hacer demasiado, ¡pero autodestruírnos por imbecilidad...! Bueno, más bien por 40.000 capullos que se quieren enriquecer a costa de lo que sea, aunque sea la extinción total del Planeta...

...yo creo que extinguiendo a esos 40.000 capullos del Planeta, el planeta estaría a salvo. Así que si me piden algún sacrificio por salvar el Planeta, ese es el único que me parece razonable y que aceptaría sin discutir.

Discutir que el calentamiento global por culpa de la industria humana no existe, es lo mismo que decir que no existe la basura por el mismo motivo... pero claro, la basura es tangible, huele, se ve... y como se ve, no cabe achacar que esa montaña de plásticos, los ha 'generado' la propia Tierra, o el mar, o... es imposible negarlo, J0D35 si se ve, una rueda de un carrito de bebé, unas revistas de una famosilla editorial, el esqueleto de una lavadora... nadie puede hacerte creer que 'la naturaleza ha generado esa basura' ... en cambio el cambio climático, siendo intangible... pués hale a chulear y porfiar...

Si ves 100 peladuras de plátano, es lógico alegar que proceden de 100 plátanos (por que los puedes contar uno a uno) y no de solo 15. Si ves todas la montañas de basura que hay en cada núcleo urbano, más lo qe se quema en las incineradoras, diremos que son 15 plátanos, o que son 100?. Eso pasa con el cambio climático...

Más que cambio habría que llamarlo intoxicación climática, precisamente por que no es natural.

p.d.: quizás la cifra sea más cerca de 400.000, una media de uno por cada población en el planeta...
#1338
...pués que haga como el agua... que descienda desde las cumbres del monte mal alto, hasta llegar al mar y fusionars en la nada paticular.

El caso de los dictadores que alegan 'descender de...', es que al final se quedan estancados en algún punto y dejan de 'descender', J0D13ND0 a diestro y siniestro, mientras viven... que sigan descendiendo, como sus 'antepasados', que se reúnan con ellos en el descenso absoluto...
#1339
Foro Libre / Re: Busco libros ayuda
17 Octubre 2019, 07:04 AM

Unos: 31 + 3 de envío (a España).
Montaje y mantenimiento de equipos:
https://www.iberlibro.com/servlet/BookDetailsPL?bi=30367406680

En este otro, se han pasado con el precio: 377 + 7 de envío (a España).
Aplicaciones ofimáticas:
https://www.iberlibro.com/servlet/BookDetailsPL?bi=19183870952
#1340
No.

Cuando buscas la presencia de un número y luego generas otro, incurres en dos fallos:
1º - Quién te dice que sea el único igual a ese?. Esto puede soslayarse, si previamente la lista está vacía, en cambio la siguiente objección es el cuello de botella.
2º - Quién te asegura que el nuevo número, no conste ya (o previamente a la posición), buscar que no se repite supone volver a buscar desde el principio, y acabas en un bucle tanto más largo cuanto más grande sea el array... no infinito, si no está mal programado.
'Tu solución' en el mejor de los casos está en un tiempo (n²/2)-1, en el peor cuasi infinito.

La solución es mucho, mucho, mucho más sencilla... además aunque no te lo parezca a diario, incluso los niños pequeños la ponen en práctica de una forma abstracta, no reparan en ello. La mayor parte de los algoritmos, no son más que llevar al terreno de la informática el quehacer diario, que nos pasa desapercibido.

Sea un array de 100 elementos... del 0 al 99...
Paso 1: Llenar el array. Meter todos los que interesan/participan en el saco.

Max = 100
bucle para i desde 0 a max -1
  tArray(i) = i
siguiente

Ya hemos hecho la mitad del trabajo... qué te parece?. Y más fácil imposible...

Paso 2: Barajarlos, para desordenarlos... Esto es, agita el saco con todas las papeletas dentro.
Se recurre a la generación de números aleatorios, pero en este caso no importa (en absoluto) que se repitan....

index = -1
bucle para i desde Max-1 hasta 1 retrocediendo
    aux = aleatorio(entre 1 'e' i)   //obtener al azar un índice entre 1 el más alto no buscado aún
    // intercambiar valores entre el que está en última posición (actualmente, es decir 'i') y el que está en el índicde obtenido al azar
    num = tArray(aux)
    tArray(aux) = tArray(i)
    tArray(i) = num
siguiente


Listo....
El primer bucle (paso 1) sería una función GenerarListaRandom(int Max) que antes de salir, invoca el paso 2
El segundo bucle (paso 2) sería una función BarajarLista // se le podría indicar cuantas veces barajar, seguidas en la misma función, basta una o dos veces...

Paso 3: Es usarlos.. cuando haga falta. Esto es, sacar una papeleta del saco (ya no se puede usar, esta fuera).
Paso 4: No quedan números por usar. Cuando se sacaron todos del saco, volver a meterlos e ir al paso 2. (dentro de la propia función).

int = funcion GetValorDeListaRandom
    // paso 4:
     si (index = (max-1))  // Max = 100 en tu ejemplo
         // index = -1  // Meterlos de nuevo en el saco. ubicar esta línea al inicio de la función barajar, así se resetea cuando se genera una nueva lista.
         llamar a BarajarLista   // ir al paso 2.     
     fin si

     index +=1
    devolver tArray(index)
fin funcion


En negrita, el prosaico texto de los pasos, como lo explicarías a un niño.

Lo mejor de todo, aparte de la  enorme simplicidad y que ya lo conocías (lo habrás usado decenas de veces en tu vida, sin darte cuenta) es que el tiempo es sólo 2n;  2*100 = 200, siempre. No hay caso peor ni mejor. En tu ejemplo era en el mejor de los casos: (n²/2)-1; 100*100/2 = 4.999

En resumen... los números se generan una sola vez al principio, y luego se usan sin repetición asegurada, hasta acabar con el último del array. Luego se vuelven a barajar y vuelta a poder usarlos sin repetir durante todo ese tiempo.

Es fácil modificar el algoritmo, para permitir que algunos se repitan x veces, cosa que en determinadas situaciones es lo adecuado. Por ejemplo en juegos el nivel de dificultad de algun evento se basa a menudo en la frecuencia con que aparecen unos respecto de otros...