« first day (1819 days earlier)      last day (1273 days later) » 

12:14 AM
@mikkylekyle buenas.. pasa algo?
 
12:42 AM
Buenas..
 
 
4 hours later…
4:26 AM
Egun on
 
4:49 AM
Bon dia
Guten morgen
Buenos dias
Creo que nunca me acostumbraré a que sean casi las 7 de la mañana y siga el cielo oscuro.
 
5:51 AM
A las güenas :-)
 
@MauricioContreras ¿ A que hora debería de salir el Sol, según tú ?
¿ Tendrá que descansar, el pobre ?
Que bastante curra durante todo el día
Ventanas abiertas, aire encendido, lata-cenicero recogida, abrigo fuera, comida en la nevera, zapatos fuera ... ¡ Ritual completado !
Ya podemos currar :-)
 
Buenos dias
 
@Trauma casi 40 años viviendo en un país tropical, me acostumbré a que el sol saliera entre las 5:45 y las 6:15, según la época del año. Y por supuesto, la puesta de sol siempre entre las 18:30 y las 19:00, también según la época del año.
 
Pues vaya aburrimiento, siempre igual :-)
Mola mas que vaya cambiando
 
6:06 AM
eh wenas amigos
 
Por eso, cuando alguien aquí en España me dice: sobre las 7 de la tarde me chocan las neuronas, porque de donde yo vengo las 19 ya es concocida como noche.
 
jejeje
Aquí según la época del año ... es poco mas de mediodía
Como ya habrás observado, supongo
 
@MauricioContreras lo de tener la misma hora que Europa central no está mu bien, la verda'
 
Aún flipo que algunas noches del verano aún se vea el sol pasadas las 21:30.
 
Eso debería ser ilegal.
Ojala vivir en Noruega para tener menos horas de luz
 
6:09 AM
@Aritzbn pues me acostumbraría aún menos.
 
@MauricioContreras :( con lo bien que se está a oscuras
 
@Aritzbn claro, preguntadle a los más de 20 millones de venezolanos que ae quedan a oscuras casi todas las noches por los cortes eléctricos. XD
 
@MauricioContreras Bueno, que enciendan velas, no sé xD
que pocos recursos...
 
6:46 AM
@Aritzbn No sabes lo que dices
Yo he trabajado de noche y es horrible no ver el sol
 
@Trauma Tengo 15 minutos libres para procrastinar. ¿Puedes hacer un print(repr(la_cadena_esa_rara)) y decirme qué sale? Querría ver si soy capaz a discriminar qué codificación está usando, a la vista de los bytes
 
@abulafia Ahora mismo no :-(
 
Bueno, pues nada. Cuando se pueda
 
Me han pasado un archivo de configuración incorrecto y no llega a ese punto
 
procrastinaré en otra cosa :-)
 
6:48 AM
pero si vi una cosa ayer O_o
aws_data["data"] = "mierda_de_data";
aws_data["service"] = "mierda_de_service";
y, sin embargo, a python le sigue llegando la misma cadena rara
ergo hay otro cacho de código por algun lado que está metiendo la pata
 
Ya te digo que esa cadena ha sufrido algún tipo de recodificación. Lo mismo está comprimida con gzip, si no se identifica dentro el texto "mierda_de_data"
 
ejem ... perdón por los textos usados ... a ciertas horas ya ...
es lo que tengo previsto averiguar hoy
 
no sé si protobuffers también comprime o "desfigura" los bytes de alguna forma
 
estoy preparando el VSCode para poder saltar y depurar C++ y python
protobuf codifica
 
igual le hace algun xor con ff o vete a saber. Websockets hace cosas de esas
 
6:51 AM
a ver si me pasan un config decente y sigo probando
es muy mucho raro esto
@abulafia Gracias por la ayuda :-)
 
De nada, gracias por el hueso para roer :-)
 
jejeje
la gente normal no disfruta rompiéndose la cabeza, que lo sepas :-)
 
A ver, yo no disfruto rompiéndomela tampoco. Solo disfruto cuando encuentro la solución. Pero por otro lado no puedo evitarlo, no soporto los misterios inexplicados
 
jejeje
ya somos 2
:-D
sigo teniendo pendiente lo de las librerias que no cargan
 
ya no me acuerdo de esa
ah, si
 
6:54 AM
una que tengo pendiente para mi :-)
esa
encontré un articulo sobre el soname y su influencia en la búsqueda de librerías
pero estaba con prisas buscando otra cosa ... y se me pasó el ponerlo en marcadores
y ahora ya no lo encuentro :-(
 
Buff... el gran problema de la sobreabundancia de información
 
es que ni recuerdo que era exactamente lo que estaba buscando cuando di con el
ya sabes, las joias prisas
 
Como yo digo, el cerebro nunca olvida, pero pierde los punteros
3
 
¡ HAHAHAHA !
Muy buena esa :-)
Estrellita al canto
Este proyecto es que esta hecho mu raro
C++ y python se entrelazan de forma muy estrecha
pero un grupo desarrolla C++ y otro python
cada uno por su lado
y un cambio en un punto y coma en C++
y te vuelves loco a ver de quien es la culpa, si de C++ o de python
y el de python ... tengo entendido que es rarito
vamos, que no depura ni mira ni nada. Dice que la culpa no es suya, y ahora tenemos nosotros que demostrar que SI lo es
 
Me da rabia no tener ni idea de pybind. Igual si supiera algo ya habríamos solucionado el misterio. Tampoco puedo ponerme a hacer pruebas aqui porque no tengo ni compilador de C++ (y tengo ya muy oxidado ese lenguaje, sobre todo lo de la STL)
 
7:08 AM
Na, no te calientes. No te lo vas a creer, pero me pagan y todo por hacer estas cosas :-)
Y digo como tú, me encanta llegar a la solución
lo que no me gusta es el proceso de llegar hasta allí xD
 
@Trauma yo si
XD
 
jejeje
otro rarito ... al final semos mayoría y todo :-)
 
A ver, la gente normal no está en este canal para empezar
7
 
Ah, cierto. Muy bien visto
 
@abulafia Te doy hasta estrellita a ese comentario XD
 
7:11 AM
@Pikoh Que sean 2
 
@Trauma Estoy leyendo esto stackoverflow.com/questions/42521830/… ¿Se parece en algo a lo que estáis haciendo? ¿También embebeis un intérprete Python en el ejecutable que sale del C++?
Porque en esa respuesta se ve que el puente C++ -> python no tiene misterio. Los datos le llegan a python como dios manda y no como cadenas de bytes raros. La via opuesta (Python->C++), como por ejemplo el valor retornado, tiene más miga porque en la parte C++ hay que castearla al tipo correcto
 
Pues no lo se. Apenas he podido mirar esa parte del código
No se exactamente como enlaza la clase C++ con el objeto python
 
Bueno, te dejo trabajar y voy a ponerme yo también a lo mio. Más tarde hablamos si eso
 
es buen momento para verlo :-)
Ok
Espero sorprenderte con la solución :-D
 
7:19 AM
Pregunta, estoy intentando hacer un reproductor simple en HTML5, como puedo pasar el source de las etiquetas <audio> <source src="blah"> a un array? o.o
me está costando encontrar en la internete
Y todavía no ando muy fino en js
casi todo lo que encuentro es jquery
 
Pues si lo hace así: awscon = pybind11::module::import("aws_grid_connector").attr("AWSConnector")();
 
@Aritzbn quieres coger la lista de src de todos los sources de la pagina y meterlos en un array ?
 
@lois6b sí, creo, quiero coger todos los source y meterlos en un array para implementer un botón de palante y patra'
        <audio id="player">
            <source src="res/audio/AC-DC.mp3" type="audio/mpeg" />
            <source src="res/audio/Aretha.mp3" type="audio/mpeg" />
            <source src="res/audio/Bob Marley.mp3" type="audio/mpeg" />
            <source src="res/audio/Red Hot Chili Peppers.mp3" type="audio/mpeg" />


            El navegador NO soporta el audio
        </audio>
            <button id="pPrevios" onclick="nextTrack()"><img src="res/images/left.jpg"></button>
            <button id="pSkip" onclick="nextTrack()"><img src="res/images/right.jpg"></button>
por ahora con que vaya palante me vale xd
 
var array = []

document.querySelectorAll("#player source").forEach(source=> array.push(source.src))
 
anda, eso se puede hacer o:
como en css
 
7:24 AM
yes
 
vale vale
 
Anda, lo que acabo de ver:
tasks_list = []
i=0;
for str_task in list_str_tasks:
un ; en el código python
 
1
Q: ¿Cómo puedo anular los estilos predefinidos de @angular/material?

MANZARBEITIAEstaba siguiendo un tutorial en el cual se ejecutaba el siguiente comando: ng add @angular/material ? Choose a prebuilt theme name, or "custom" for a custom theme: Indigo/Pink [ Preview: https://material.angular.io?theme=indigo-pink ] ? Set up global Angular Material typography styles? Ye...

 
alguno sabe como puedo aumentar el tamaño que acepta SQL Server? Tengo un limite por defecto de 2100 y no recuerdo donde se cambiaba
 
@lois6b :( me dice que es NaN
Y cuando miro a ver si tiene valor me dice undefined xd
 
7:34 AM
@Aritzbn wtf hahah no uso nada de numeros asi que es algo que tú has añadido
 
<script lang="JavaScript">
var playlist = document.querySelectorAll("#player source").forEach(source => array.push(source.src));
var currentTrack = 0;
console.log("Playlist:\n" + playlist + "\nCurrentTrack:" + currentTrack);

function nextTrack() {
currentTrack++;
player.pause();
player.src = playlist[currentTrack];
player.load();
player.play();
console.log("Playlist:\n" + playlist + "\nCurrentTrack:" + currentTrack);

};
</script>
En el player.src me da error porque playlist no existe
¿No se supone que tengo que darle un índice?
 
no se asigna asi
 
¿Como es?
 
crea un array , luego ejecutaas el query selector all y luego asignas playlist al array
 
Ah
 
7:36 AM
forEach devuelve undefined, señor @Aritzbn
 
ah coño vale
creo que ya lo pillo
 
var playlist = [];
document.querySelectorAll("#player source").forEach(source=> playlist.push(source.src));
var currentTrack = 0;
console.log("Playlist:\n" + playlist + "\nCurrentTrack:" + currentTrack);

function nextTrack() {
currentTrack++;
player.pause();
player.src = playlist[currentTrack];
player.load();
player.play();
console.log("Playlist:\n" + playlist + "\nCurrentTrack:" + currentTrack);

};
 
const playlist = [...document.querySelectorAll("#player source")].map(source => source.src);
 
Vale
 
y tienes el playlist
 
7:39 AM
ahora entiendo
 
y además sirve de ejemplo de uso de map, que hace un par de días @NicolasOñate preguntaba por eso
 
@PabloLozano +1
 
@Aritzbn por si no queda claro: document.querySelectorAll devuelve una NodeList, no un array. Como NodeList no tiene Map, lo transformo a un array con [... arrayLike] y así puedo usar map
 
@Trauma Si, es un separador de comandos en la misma línea. En python es legal poner por ejemplo a=1;b=2;c=3, aunque no se ve mucho
 
@PabloLozano qué es map?
 
7:42 AM
@abulafia Ah, no lo sabía. ¿ En python2 ?
 
Quiero decir, ¿Por qué usar map y no el push?
 
@Aritzbn deja vù...
 
@Aritzbn mapea . dice: lo que antes era un Nodo, ahora se sustituye por el valor src de ese nodo
 
@Trauma Sí, también. Tiene eso desde sus inicios
 
Fíjate. Todos los días se aprende algo :-)
 
7:43 AM
un ; al final de la línea no es problema, sólo separa de un comando vacio
 
@Aritzbn son dos maneras de hacerlo. la de @PabloLozano es más chula por el map y el rest operator y solo requiere una linea
 
yesterday, by Nicolas Oñate
funciona, tengo que empezar a comprender el uso de map
 
vale, perfecto. De todas formas, voy a editar los CMakeLists para que chequeen la sintaxis de python en los archivos .py
Solo porsiaca
 
[1,2,3].map(numero => numero * 2)
(3) [2, 4, 6]
este mapeo es: lo que antes era numero se sustituye por numero * 2
 
En cuanto termine de hacer esto vengo a preguntaros cosas pa que veais lo tonto que soy
xD
 
7:45 AM
@Trauma Estás autorizado a hacer cambios salvajes en el formato del código para que se vea más bonito y sea PEP8 compliant ?
 
que tengo 5 minutos
 
Porque en ese caso te recomiendo la herramienta Black
 
@Aritzbn no saber algo no es mas que ignorancia. no estupidez
 
En principio, si. No hay problema con eso
 
Estoy teniendo un problema que me está dando esta excepcion La solicitud de entrada tiene demasiados parámetros. El servidor admite un máximo de 2100 parámetros. Reduzca el número de parámetros y envíe la consulta de nuevo.
 
7:46 AM
Luego la miro, gracias por el tip :-)
 
@lois6b pues lo ignorante que soy xD
 
Tampoco quiero meterle mucha morralla al docker
otia ... que ataque de hambre me acaba de dar ...
 
La cosa es que es una imagen transformada a bytes y no se si lo estoy haciendo bien
 
voy a hacerme un cafelito de los mios
 
@Aritzbn Lo bueno de ser ignorante es que tiene solución, ser estúpido no tanto :D
 
7:47 AM
Black puede reformatear código python2, pero el propio black está escrito con python3. Igual es un chocho tratar de ejecutarlo en tu entorno
 
@Trauma #MeToo
 
@PabloLozano gracias por los ánimos xD
 
¡¡ Está lloviendo !!
Ya tocaba este año
 
A ver, que esto me interesa, entonces map es para... ¿Qué? xD
 
@Aritzbn mapear
 
7:51 AM
Que diferencia tiene con el push?
 
@Aritzbn en mi ejemplo el forEach recorre cada Nodo y mete en un array el valor del src
 
lo primero, push es como/similar a append?
para node lists?
 
en el ejemplo de @PabloLozano convierte la lista de Nodos en un array y reemplaza cada nodo por su valor de src
 
@Aritzbn map reemplaza a un bucle en el que iteres por los elementos de una lista, apliques una función (siempre la misma) a cada elemento, recojas los resultados, y los vayas metiendo en otra lista
 
que diferencia hay entre un array y una nodelist?
una nodelist sería como una colección de python? o más como un json?
 
7:54 AM
NodeList es una colección de nodos del DOM
es algo propio del API de DOM (lo que se usa para tratar el HTML
 
El resultado de qyerrySelectorAll sería todo el elemento y el de map sería el valor en crudo del atributo específico?
 
eso es
querySelectorAll devuelve una lista de Nodos. con map decimos "para cada nodo, quédate con su atributo src"
 
@Aritzbn Según yo lo veo creo que una nodelist más bien sería una clase específica en python, con ciertos métodos y atributos para obtener su longitud, poder iterar por ellos, etc. Si hubiera una cosa así en python no encajaría bien con el patrón iterador. No podrías iterar sobre ellas en un for porque tienen su propia API para iterar
 
Más o menos lo que te retornan los métodos de las librerías python que trabajan con XML (como lxml), aunque éstas sí implementan además los métodos especiales de python para que sean iterables de forma "normal"
 
7:57 AM
lo primero, esto sería correcto? document.querySelectorAll("img src").forEach(img=> array.push(img.src));
 
@Aritzbn no
hahah
 
ah no
 
creo que te sobra src en el selector
 
en la funcion lambda estás llamando al nodo src, y luego le llamas img
 
7:58 AM
bueno, el forEach tiene un fallo
 
Qué
así? como lo he editado?
 
si
pero... qué elemento html es un src?
 
document.querySelectorAll("img").forEach(img=> array.push(img.src));
 
el selector no devuelve nada no ?
 
Yo que sé, estoy imaginando que quiero conseguir todos los src de un <img>
 
7:59 AM
@lois6b Devuelve un iterable, sobre el que luego aplicas el .forEach
 
pues selecciona los img
 
un img sólo tiene un src
 
ailjfsalkfjas también puede tener alt
 
@abulafia decia el selector img src que no coincide coon nada
 
@lois6b Ah, eso si
 
7:59 AM
o.o
Voy a trastear
 
A ver, no nos liemos, tienes document.querySelector que selecciona UN elemento del documento, el primero que encuentre
y tienes document.querySelectorAll que selecciona TODOS los elementos que coincidan con el filtro que le hayas pasado
 
vale
A eso siempre le tengo que pasar un string que coincida con lo que quiero no? Que se hace como en CSS, verdad?
 
@Aritzbn si
 
... ummmmmm ...
Al Git se le está yendo la pinza
me han desaparecido archivos
y no me dice nada
 
@Trauma qué zorro el Git que te pierde archivos y hace mutis
 
8:04 AM
Pues si ...
curioso
O yo tengo visiones o algo
 
Vale
 
había 5 archivos .py
ahora solo hay 1
y Git no me dice nada
 
Habrás hecho un checkout?
 
por ejemplo document.querySelectorAll("#divImagenes img").foreach(img => array.push(img.src));
 
O será que los que faltan no estaban bajo control de versiones?
 
8:05 AM
eso estaría bien? para obtener todos los sources de las imagenes dentro de un div
 
o algo del .gitignore?
 
voy a ver el log
 
@Aritzbn si. te mete en un array los src de cada imagen dentro del div con id "divImagenes"
 
Vale, creo que ya entiendo entonces
 
pero el foreach está mal escrito
 
8:06 AM
¿ como puedo ver los cambios de un commit específico ?
 
forEach()
 
ah, ya xd
pero está bien
Y si quisiera hacer eso mismo con map?
 
playlist = [...document.querySelectorAll("#divImagenes img")].map(img => img.src)
 
@Trauma git show <hash>
 
porque los 3 puntos?
 
8:08 AM
@abulafia Ok. Estoy haciendo diff COMMIT1 COMMIT2
 
@Aritzbn para convertir el resultado del query selector all , que es una colleccion de nodos, a un array
porque el NodeList no tiene .map()
 
Esto es borrar un archivo, ¿ cierto ?
--- a/MtoApi/MtoApi/InOutManager.py
+++ /dev/null
 
@lois6b me vuela la cabeza
xD
 
@lois6b Ya te dije antes que no es un iterable. Es una clase con sus propios métodos y para iterar por él debes usar su API. Por lo mismo tampoco tiene un .forEach
 
@abulafia Sí tiene un forEach y sí es iterable
en JS
 
8:11 AM
@abulafia si tiene forEach
@abulafia y se lo decias a Aritz haha
 
Ah, perdón entonces por liar
@Trauma Sí
 
ahhh ... pero me parece que es que no he mergeado con la master, carajo
copie esos archivos a la master, porque tenían que estar ahí
me cambié a la mia
joer, no se para que quiero la neurona
 
@PabloLozano como me jode tener que ponerme a otra cosa cuando tengo esto a medias :( luego sigo.
 
@Trauma Me recuerdas a los programadores novatos, sin fiarte de la API
 
Algo que me molesta mucho de asistir a clase es que cada hora tienes que cambiar de chip, estás haciendo javascript, tan feliz, aprendiendo, y de repente tienes que dejarlo a medias para ponerte a ver como instalar un dns
 
8:14 AM
@PabloLozano No me fio de nada
por supuesto, de mí mismo, lo que menos :-)
 
Yo lo tengo de firma en mi bio:
> Para cualquier lenguaje, la probabilidad de que un programador culpe a una función del API estándar de un error es inversamente proporcional a su experiencia.
 
Es muy mucho posible
 
o sensatez... hahah
 
A nivel usuario es el "yo no toqué nada"
 
Pero si en local me funcionaba
 
8:16 AM
ayer con las puñeteras prisas
que se me va
Pues va a ser que no, no estan en master tampoco. ¿ Sera posible que me los dejé sin añadir ?
O eso, o el Git miente :-)
Si es que no puede ser. Mi horario es hasta las 17:00
a partir de ahí, ya no me hago responsable de lo que pueda pasar
 
Me pregunto qué tipo de dato numérico usarán en Venezuela para manejar las cifras en la moneda local. XD
 
2
Q: ¿Cómo puedo anular los estilos predefinidos de @angular/material?

MANZARBEITIAEstaba siguiendo un tutorial en el cual se ejecutaba el siguiente comando: ng add @angular/material ? Choose a prebuilt theme name, or "custom" for a custom theme: Indigo/Pink [ Preview: https://material.angular.io?theme=indigo-pink ] ? Set up global Angular Material typography styles? Ye...

 
@MauricioContreras Decimal
 
Ahora si, voy a por el cafetito
 
@abulafia puede ser, imagina totalizar los montos allí reflejados. Unas 100 mil solicitudes semanales de cada tipo de trámite.
 
8:22 AM
Pero qué sentido puede tener mantener céntimos en la moneda si está tan devaluada?
 
@abulafia muy devaluada. Entre Chávez y Maduro le quitaron 8 ceros a la moneda. Imagina ponerle 8 ceros más a esas cifras, sería la devaluación real hecha en socialismo.
@abulafia y por falta de 1 céntimo te hechan el trámite para atrás.
 
kafkiano
 
8:40 AM
@MANZARBEITIA Me temo que la respuesta es compleja: no hay comando para quitar angular/material. Tendrás que editar a mano angular.json en la raíz de tu proyecto y cambiar los estilos predefinidos
pero como no he trabajado con material no tengo ejemplos a la vista para ayudarte... pero puedes añadir el fichero a la pregunta
Por cierto, a mi me cuesta mucho escuchar música mientras trabajo porque me distrae, pero descubrí por el canal de Jaime altozano el género Lo-Fi y resulta ideal para eso
Por si a alguien le interesa
 
para mi el LoFi todavía es "demasiado interesante" (me capta la atención demasiado y me distrae). Necesito algo más abstracto y atonal, casi casi un ruido de fondo.
He descubierto que soy más productivo cuando tengo esa "musica" sonando, porque sin ella tengo en mi cabeza procesos en background que interrumpen al proceso en primer plano todo el rato, con chorradillas. De alguna manera con la música esos procesos en background se quedan entretenidos y no me molestan más
pero si la música es demasiado "interesante", entonces el proceso en primer plano se pone a escucharla también y es peor el remedio que la enfermedad :-)
 
@abulafia Eso me pasaba, pero para mi esta playlist ya está por debajo del límite de "interesante"
 
a mi normalmente me basta con ponerme los cascos, sin musica
pero a veces me pongo musica "normal" (jebi) y tampoco me distrae
 
8:58 AM
Yo tiro de un buen playlist de Prodigy y acumulo suficiente energía para resolver problemas. XD
Hablando de resolver, hace poco cambié el teclado del móvil a idioma Catalán y escribo aún peor que en castellano. Mis dedos torpes, vestigio del Neanderthal tecnológico que soy.
 
Yo pongo el hilo musical del edificio :-)
Es una playlist de spotify
 
@Trauma no conozco ese grupo. XD
 
@MauricioContreras Pues lo ponen todos los días ;-p
 
A mi me mola el ambient de Brian Eno, para esto de concentrarse. "Music for airports" es un clásico
 
9:15 AM
Chicos, alguno recomienda alguna plataforma/web para hacer cursos? Me han hablado bien de O'Reilly, Platzer y algunos cursos en concreto de Udemy
 
9:30 AM
Hay alguna manera de recoger un elemento que se encuentra en una ruta? JQuery/Javascript
Pues yo me paso el dia escuchando musica, me concentra mas
Eso si, la musica que escucho creo que os asustaria bastante
 
@NicolasOñate ejemplo de elemento en ruta, por favor.
 
No puede ser que sea el unico con este problema... Tengo una ruta donde guardo imagenes, esas imagenes las guarda el usuario, asi que no se como se llamaran, quiero recuperar esos nombres
@MauricioContreras /content/img/imgUsuario/NombreQueQuiero.Extension
 
@NicolasOñate acaso no persistes los nombres originales y sus rutas en una BD?
 
@MauricioContreras no :(
y no puedo hacerlo
por eso se me complica todo
Asi que lo tengo que encontrar en javascript para poder mostrarsela
y en internete solo encuentro cosas al reves, que tienen el nombre pero no la ruta
 
9:48 AM
Joer, hoy cumpliría 112 años Escobar, el de Zipi y Zape
 
0
Q: Encontrar nombres archivos en ruta

Nicolas OñateDispongo de una carpeta contenedora de archivos, esos archivos los irá subiendo un usuario. La ruta es conocida, pero el nombre y extensión de ese fichero no. Estoy intentando encontrar un método para realizarlo, pero o me encuentro con soluciones que incluyen el nombre del archivo o buscan la ru...

Si aún tienes alguna duda dimelo y lo edito
 
@NicolasOñate desde el lado cliente es imposible. Sólo desde el lado servidor podrías implementar algo.
 
@MauricioContreras Por que?
Bueno escribelo en respuesta, me creo un metodo que llame al server
 
Porque desde el lado cliente nunca tendrás acceso a la estructura del sistema de archivos del servidor. En todo caso, si el servidor lo permite, podrías listar los archivos de una carpeta del mismo
El famoso indexof que muestran los navegadores cuando el servidor les permite listar el contenido de la carpeta.
 

« first day (1819 days earlier)      last day (1273 days later) »