¿Habéis programado algo por su valor estético? Gráficos, música, texto. Sería interesante saber si por MV tenemos a alguien que postee en sitios como Pouet (demos) o maneje Processing.
No soy ingeniero, pero de tanto en tanto programo por diversión (Ruby). La cuarentena ha empezado y me he acordado de Ubik, el libro de Philip K. Dick (gran obra). Cada capítulo del libro empieza con un pequeño anuncio de un producto llamado Ubik. También me ha venido a la cabeza el modelo AIDA de publicidad, y he pensado que podría usar ambas pautas para generar "Philip-K-Dick-adas" de manera procedimental.
En resumen: cuatro frases (llamar tu atención, presentarte un producto, ofrecer un beneficio, dar una solución de continuidad). A nivel de utilidad, puede servir como lorem ipsum o para rellenar contenido en bases de datos. Le sigo dando vueltas; pero os lo dejo aquí por si os apetece jugar.
Output demo
Diga adiós para siempre. ¡Dígaselo a cumplir condena! Cada refrigerador-bandera Ubik está preparado para aliviar su sufrimiento. Diga adiós al dolor de cabeza. Envío discreto.
¿No sabe cómo librarse de pensar demasiado? Cada escoba-puerta Ubik está preparada para aliviar su sufrimiento. ¡Armonice su existencia de una vez por todas! Llame ya al 555-816875.
¿Cansado de cuidar de los niños? Hicimos a mano nuestro adhesivo Ubik para usted. ¡Como cuando era niño! Lo encontrará en HGpwl6TzaH2BfYzp.onion
¿Cuántos años seguirá pensando en resolver enigmas? Considere la lámpara Ubik. ¡Armonice su existencia de una vez por todas! Canjee el código JIZA-8440
No hay forma de dar fe de sus creencias sin sentir incomodidad. Nueve de cada diez profesionales confían nuestro refrigerador Ubik. Fabricación nacional. Adquiéralo en su distribuidor más cercano.
¿Tiene problemas con pagar la hipoteca? Nueve de cada diez profesionales confían nuestra inteligencia-lámina Ubik. Fabricación nacional. Adquiéralo en su distribuidor más cercano.
La sociedad ya no aprueba cometer faltas de ortografía. Hemos diseñado nuestra varita Ubik para usted. ¡Como cuando era niño! Aceptamos tarjeta.
El presidente ha prohibido confiar en La Realidad. Cada tinta Ubik está preparada para aliviar su sufrimiento. Disponible en 6 colores. Adquiéralo en su distribuidor más cercano.
No hay piedad en cazar para comer. Por esta razón hemos inventado colgante-nevera Ubik ¡Armonice su existencia de una vez por todas! Lo encontrará en 3rnc1q6E9rEL9E5P.onion
Lo sabemos: no es fácil soportar reuniones intempestivas. Nueve de cada diez profesionales confían nuestro brazalete Ubik. Diga adiós al dolor de cabeza. Llame ya al 555-856321.
Miles de personas ya recuerdan qué significa amar sin ser correspondido. Nueve de cada diez profesionales confían nuestro licuador-computador Ubik. ¡Una experiencia inolvidable! Canjee el código MYZN-0914
No hay piedad en gestionar sus paranoias. Cada manopla Ubik está preparada para aliviar su sufrimiento. ¡Libre de impuestos! Adquiéralo en su distribuidor más cercano.
¡Olvídese de dar fe de sus creencias! ¡Nuestro ungüento-ungüento Ubik lleva su nombre! Diga adiós al dolor de cabeza. Aceptamos tarjeta.
¿Cuántos años seguirá pensando en el ruido? Considere el androide Ubik. ¡Armonice su existencia de una vez por todas! Disponible en 24 horas.
Solo los bobos se preocupan por preparar biberones. ¡Cuando pruebe nuestra controladora Ubik deseará haberlo comprado antes! Ahora con un 93% menos de residuos. De venta en Joe Chip's.
Diga adiós para siempre. ¡Dígaselo a impartir justicia! Nuestro nuevo computador Ubik está para ayudarle Ahora con un 73% menos de residuos. Admitimos cheques al portador.
No hay piedad en gestionar sus paranoias. Considere la nevera-guantilla Ubik. ¡Armonice su existencia de una vez por todas! Aceptamos tarjeta.
Sabemos que odia soportar reuniones intempestivas. Considere la vara-cortina Ubik. Ahora con un 95% menos de residuos. Lo encontrará en E8pxCAyKnH1y24pT.onion
¿Cuántos años seguirá pensando en el ruido? ¡Cuando pruebe nuestra vara-adhesivo Ubik deseará haberlo comprado antes! Fabricación nacional. Adquiéralo en su distribuidor más cercano.
¡Olvídese de dar fe de sus creencias! ¡Nuestra manta-manta Ubik lleva su nombre! Sin conservantes ni colorantes. Llame ya al 555-206345.
Nadie pensaría que sus zonas oscuras tuviese los días contados. ¡Una vara Ubik puede ayudarle! ¡Una experiencia inolvidable! Canjee el código DGFX-2521
Solo los bobos se preocupan por reparar el coche. Nueve de cada diez profesionales confían nuestra llave-guantilla Ubik. Sin conservantes ni colorantes. Llame ya al 555-674007.
No hay forma de reparar el coche sin sentir incomodidad. Nuestro refrigerador-controladora Ubik está para ayudarle. Sin conservantes ni colorantes. ¡No pierda esta oportunidad!
Lo sabemos: no es fácil confiar en La Realidad. Por esta razón hemos inventado varita-silla Ubik Diga adiós al dolor de cabeza. Disponible en 24 horas.
Cada día miles de personas se agobian por cazar para comer Nuestro nuevo martillo Ubik está para ayudarle Disponible en 2 colores. Aceptamos tarjeta.
¿Cansado de cazar para comer? Considere el filtro Ubik. Fabricación nacional. De venta en Waltmarzon.
¿Cómo deshacerse de discernir entre el bien y el mal? Por esta razón hemos inventado trituradora-colgante Ubik ¡Como cuando era niño! ¡No pierda esta oportunidad!
¿Secuelas por reparar el coche? Por esta razón hemos inventado cuna Ubik Diga adiós al dolor de cabeza. Admitimos cheques al portador.
Lo sabemos: no es fácil confiar en La Realidad. Por esta razón hemos inventado monitor-tarjeta Ubik Sin amianto. Envío discreto.
La vida no se hizo para el ruido. Nueve de cada diez profesionales confían nuestro altavoz-manopla Ubik. ¡Armonice su existencia de una vez por todas! Disponible en 24 horas.
Código
puts "Ubik Generator\n\n"
class Ubik
attr_accessor :ubik
#JAMÓN -----------------------------------------------------------------------------------------------
UBIK = "Ubik"
ATENCIONARIOS = ["¿Cansado de TARGET?", "¿Tiene problemas con TARGET?", "¡Olvídese de TARGET!",
"¿Cómo deshacerse de TARGET?", "Diga basta a TARGET.",
"En el mundo de hoy TARGET es necesario, ¡pero no sufrir por ello!",
"Lo sabemos: no es fácil TARGET.", "La vida no se hizo para TARGET.",
"Solo los bobos se preocupan por TARGET.", "Nadie pensaría que TARGET tuviese los días contados.",
"Sabemos que odia TARGET.", "No hay forma de TARGET sin sentir incomodidad.",
"Ninguna película habla de TARGET porque a nadie le interesa.",
"¿No sabe cómo librarse de TARGET?", "¿Cuántos años seguirá pensando en TARGET?",
"¿Ha considerado librarse de TARGET?", "Sí: TARGET tiene fecha de caducidad.",
"Para TARGET no hace falta sudar.", "Miles de personas ya recuerdan qué significa TARGET.",
"Diga adiós para siempre. ¡Dígaselo a TARGET!", "El presidente ha prohibido TARGET.",
"Las nuevas leyes prohíben TARGET, ¡pero hay alternativas!",
"¿Secuelas por TARGET?", "Cada día miles de personas se agobian por TARGET",
"La sociedad ya no aprueba TARGET.", "No hay piedad en TARGET."
]
PROBLEMAS = ["tirar la basura", "cuidar de los niños", "las tareas del hogar", "el ruido", "un dolor de muelas",
"repetir las cosas", "sus zonas oscuras", "pasear al perro", "cepillar al gato", "restaurar los muebles",
"pensar demasiado", "escribir lento", "cometer faltas de ortografía", "reciclar", "amar sin ser correspondido",
"separar el cartón del plástico", "fusionar plutonio", "calibrar sus electrodomésticos", "tender la ropa",
"preparar biberones", "cuidar a sus mayores", "estudiar por las noches", "recordar Los Mandamientos",
"descuidar las tareas del hogar", "contentar a su jefe", "soportar reuniones intempestivas", "erradicar parásitos",
"debatir en círculos", "impartir justicia", "resolver enigmas", "indizar sus fuentes", "escribir", "escribir artículos",
"gestionar sus paranoias", "tomar la medicación", "resolver asuntos ajenos", "llevar gafas", "cazar para comer",
"pagar la hipoteca", "pedir créditos sin que se los concedan", "dar fe de sus creencias", "confiar en La Realidad",
"discernir entre el bien y el mal", "recomendar productos culturales", "conseguir un título universitario",
"resolver los problemas con Hacienda", "cumplir condena", "pagar multas", "reparar el coche", "reparar la nevera", "solventar dudas"
]
SUGERENCIA = ["pruebe", "estrene", "compre", "alucine con", "pre-compre"]
SUSTANTIVOS = { :masculinos => ["aspirador", "limpiador", "dentífrico", "adhesivo", "calibrador", "conversor",
"interceptor", "computador", "liofilizador", "disruptor", "pelador", "escurridor",
"transformador", "licuador", "triturador", "índice", "monóculo", "catalejo",
"colgante", "anillo", "brazalete", "refrigerador", "monitor", "androide", "lápiz",
"altavoz", "condensador", "compresor", "calefactor", "martillo", "ungüento", "anillo",
"mando", "filtro", "combustible", "tenedor"],
:femeninos => ["escoba", "cinta", "consola", "computadora", "bandera", "licuadora", "trituradora",
"estación", "guía", "nevera", "inteligencia", "red", "manopla", "lámina",
"silla", "guantilla", "varita", "vara", "cera", "cuna", "puerta", "medalla", "controladora",
"tarjeta", "lámpara", "envasadora", "cortina", "manta", "cerradura", "llave",
"tinta", "cuchara"]}
LUGARES = ["farmacias", "gasolineras", "supermercados", "tiendas de ocasión", "estaciones espaciales",
"ultramarinos", "bases subacuáticas", "Waltmarzon", "cualquier centro comercial", "iglesias",
"mezquitas", "sinagogas", "las colonias del Mundo Exterior", "mercadillos callejeros", "su caja de recepción",
"caja de empatía", "El Horáculo", "distribuidores autorizados", "tiendas virtuales", "el Mundo Virtual",
"el catálogo Runnciter", "Joe Chip's", "el catálogo de Palmer Eldritch", "las tiendas de Leo Bulero"]
#ADJETIVOS = { :masculinos => ["perfumado", "restaurado"],
# :femeninos => ["perfumada", "restaurado"],
# :neutro => ["aislante", "retrocompatible"]}
# FUNCIONES -----------------------------------------------------------------------------------------------
def initialize
@product_gender = self.pick_gender
@product = self.build_product
@At = self.atencion
@I = self.interes
@D = self.deseo
@Ad = self.adquisicion
@ubik = @At + ' ' + @I + ' ' + @D + ' ' +@Ad
#puts @ubik
end
def pick_gender
dice = rand(10)
if dice < 5 then
return :m
else
return :f
end
end
def build_product
dice = rand(10)
if dice < 5 then
longitud = :simple
else
longitud = :compuesto
palabras = SUSTANTIVOS[:masculinos] + SUSTANTIVOS[:femeninos]
end
if @product_gender == :m then
nombre = SUSTANTIVOS[:masculinos][rand(SUSTANTIVOS[:masculinos].length-1)]
elsif @product_gender == :f then
nombre = SUSTANTIVOS[:femeninos][rand(SUSTANTIVOS[:femeninos].length-1)]
end
if longitud == :compuesto then
nombre += '-' + palabras[rand(palabras.length-1)]
end
nombre += " Ubik"
#puts nombre
@product = nombre
end
def atencion
"1"
atencion = ATENCIONARIOS[rand(ATENCIONARIOS.length)]
problema = PROBLEMAS[rand(PROBLEMAS.length)]
atencion.sub! "TARGET", problema
#puts atencion.class
return atencion
end
def interes
"2"
interesarios = { :masculinos => ["Con nuestro TARGET esto se acabó.",
"Nuestro TARGET está para ayudarle.",
"Nueve de cada diez profesionales confían nuestro TARGET.",
"Hemos diseñado nuestro TARGET para usted.",
"¡Nuestro TARGET lleva su nombre!",
"Por esta razón hemos inventado TARGET",
"Nuestro nuevo TARGET está para ayudarle",
"¡Un TARGET puede ayudarle!",
"Cada TARGET está preparado para aliviar su sufrimiento.",
"¡Cuando pruebe nuestro TARGET deseará haberlo comprado antes!",
"Hicimos a mano nuestro TARGET para usted.",
"Considere el TARGET."
],
:femeninos => ["Con nuestra TARGET esto se acabó.",
"Nuestra TARGET está para ayudarle.",
"Nueve de cada diez profesionales confían nuestra TARGET.",
"Hemos diseñado nuestra TARGET para usted.",
"¡Nuestra TARGET lleva su nombre!",
"Por esta razón hemos inventado TARGET",
"Nuestra nueva TARGET está para ayudarle",
"¡Una TARGET puede ayudarle!",
"Cada TARGET está preparada para aliviar su sufrimiento.",
"¡Cuando pruebe nuestra TARGET deseará haberlo comprado antes!",
"Hicimos a mano nuestra TARGET para usted.",
"Considere la TARGET." ]
}
if @product_gender == :m
interes = interesarios[:masculinos][rand(interesarios[:masculinos].length)]
elsif @product_gender == :f
interes = interesarios[:femeninos][rand(interesarios[:femeninos].length)]
end
interes.sub! "TARGET", @product
#puts interes.class
return interes
end
def deseo
"3"
beneficios = ["Ahora con un #{rand(100)}\% menos de residuos.", "Disponible en #{rand(10)} colores.",
"¡Libre de impuestos!", "¡Como cuando era niño!", "Fabricación nacional.",
"¡Una experiencia inolvidable!", "Sin amianto.", "Sin conservantes ni colorantes.",
"Diga adiós al dolor de cabeza.", "¡Armonice su existencia de una vez por todas!"]
beneficio = beneficios[rand(beneficios.length)]
#puts beneficio.class
return beneficio
end
def adquisicion
"4"
claim = ["Adquiéralo en su distribuidor más cercano.", "De venta en #{LUGARES[rand(LUGARES.length)]}.",
"Llame ya al 555-#{rand(9)}#{rand(9)}#{rand(9)}#{rand(9)}#{rand(9)}#{rand(9)}.",
"Puede pagarlo a plazos.", "Envío discreto.", "Disponible en 24 horas.",
"Lo encontrará en #{Array.new(16){[*"A".."Z", *"a".."z", *"0".."9"].sample}.join}.onion",
"¡No pierda esta oportunidad!", "Aceptamos tarjeta.", "Admitimos cheques al portador.",
"Canjee el código #{Array.new(4){[*"A".."Z"].sample}.join}-#{Array.new(4){[*"0".."9"].sample}.join}"]
adquisicion = claim[rand(claim.length)]
return adquisicion
end
end
10.times do
puts " "
ubik = Ubik.new
puts ubik.ubik
#sleep 0.5
end