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ú

Temas - Kase

#1
hola, tengo esta pregunta por que me ofrecen un trabajo como programador backend, pero yo no soy de españa y no se cuanto es este sueldo en relacion al costo de vivir en españa.
#2
Hola, estoy haciendo un motor de indexacion web    y me topo con algunas paginas  que cargan el contenido con forme el scroll del raton baja.

en cierta forma ya resolvi como leer paginas con javascript  pero   este caso particular me es complicado..   (y la indexacion es sobre paginas espesificas )  por lo que  si puedo ver que otras paginas esta pidiendo mediante javascript quizas me sea mas facil  contruir un robot que  pueda hacer ese recorrido.

alguien conoce algun plugin de firefox o chrome o algo por el estilo?
#3
ando asiendo experimientos con asterisk y elastix, por que me salieron negocios interesantes en torno a telefonia..  pero recientemente una persona me dijo que queria 4 extensiones y poder sacar llamadas y quería lo mas barato posible...

cotice,  una computadora basica con su  pci fxo  y le sume mis honorarios y no le latio..  :/  entonces se me ocurrio que podia bajar aun mas los precios  si montaba asterisk sobre un raspberry  :P  y en lugar de darle salida por fxo  darle salida por medio de un proveedor  voip


pero la verdad mi conocimiento entorno a  proveedores es nulo... alguien puede recomendarme alguno?  el interés es sacar llamadas locales, no internacionales.
#4
Hola... veran,  ofresco un software para publicar en grupos de facebook...  esta echo en python y empaquetado en un exe.. pero windows 8 y 7  lo detectan como potencialmente peligros.. e incluso windows 8 lo borra :/

no se que hacer, mi programa no tiene codigo malicioso.. de echo tengo su version open source  https://github.com/Boredsoft/Miria-facebook-publisher

y el empaquetado es este.

http://static.boredsoft.com/miria_fbbot/static/miria.zip

help! D:
#5
llevo tiempo interesando en el tema de los mmorpgs (y mas aun en los servidores)  me gustaria algun dia crear mi propio servidor (no me vale, usar alguno ya existente por que quiero hacer un par de cosas que ninguno tiene)

quiero crear el server en python, si lo se. diran que es lento.. pero quiero optimizar al maximo los algoritmos.

ahorita mi problema es; como  consigues los objetos cercanos en memoria?

definamos objeto{x,y,...} donde X y Y son cordenadas.

yo podria tener una lista de "objetos"
lista = [objeto1,objeto2,objeto3... etc]

y mediante alguna forma yo decir busca los objetos con cordenadas entre (x1, x2)  y ( y1 ,y2)

pero obviamente seria un suicidio a la ram...


asta orita solo e ideado tener "sectores"  y con esto me refiero a una lista bidimencional donde
lista[1][1] represente a un cuadrante de pixeles (x1, x2)  y ( y1 ,y2)

de tal forma que yo en lugar de pedir los objetos con coincidencia de pixeles, consiga la "cordenada" del objeto dentro de la lista bidimencional y traiga  todo el contenido  de cada nodo de la lista en un rango de -10 +10.

suena bien no?


hay que tener en cuenta  que "lista" es en si el mapa dividido en sectores y que tiene que ser global y accesible para todos los usuarios (hilos con sockets)


abria una mejor forma de optimizar la ram?  >:D >:D >:D 
#6
Desarrollo Web / facebook web app dudas de TOS
21 Agosto 2013, 03:47 AM
https://developers.facebook.com/policy/Espanol/

tengo una duda muy grande con los TOS de fb  e visto una problematica en algunos grupos de facebook. y se me ocurrio una excelente solucion   via web (no se instala nada de nada, es solo una web con autenticacion facebook y uso de los grupos de este)

y por lo que lei en los términos de servicio no hay nada que me proiba hacerla auque no comprendo bien esta norma

CitarLa función principal de tu aplicación en Facebook (tanto si cuenta con su propia página como si se incluye en la pestaña de una página) no puede ser sacar a los usuarios de Facebook y conducirlos a otro sitio web.

si, mi aplicacion es otra web, pero tiene como funcion evitar que el usuario se pierda en un mar de mensajes y encuentre lo que busca dentro del grupo en que busca. y en si la web "re-dirige" el trafico de regreso a facebook.

CitarNo deberás incluir anuncios, llevar a cabo promociones cruzadas de otras aplicaciones ni ofrecer funciones de búsqueda en internet en contenido distribuido a través de los canales sociales de Facebook.
b. Solo puedes utilizar publicidad, o productos o servicios de índole comercial similares, de las compañías que aparecen en esta lista de proveedores de publicidad en las aplicaciones de Facebook.com.

la verdad quiero poner adsense como primer instancia y no veo problema.. si nos acatamos a la norma, "toda web que use sistema de login con facebook y use adsense esta vulnerando los TOS"

pero mi aplicacion usa mas que el "login" en todo caso  cambiare adsense si un dia sale el adsense de facebook

enrrealidad  quiero hacer publicidad  en trato directo con el cliente y eso es lo que veo mas rentable y no veo como vulnera la TOS excepto por   "No deberás incluir anuncios" pero esa norma es un poco ambiguo.


que opinan? le daré para adelante a mi proyecto?
#7
necesito que esta linea se ejecute al principio

Citar$('#procesando').html('<div class="progress progress-striped active"><div class="bar" style="width:100%;">Procesando</div></div>');

para que se vea una animacion de procesando... y que al final se ejecute esta otra linea

Citar$('#procesando').html('');


pero parece que mi codigo ejecuta todo a la par... y yo necesito que ejecute primero la animacion de inicio, procese  el ajax (es mucho y puede tardar minutos) y que luego finalize la animacion

Código (javascript) [Seleccionar]
   $('#Fsend').click(function(){
        $('#procesando').html('<div class="progress progress-striped active"><div class="bar" style="width:100%;">Procesando</div></div>');
        data = new FormData();
        data.append('message',$('#message').val())
        data.append('access_token',$('#access_token').val())
        data.append('source', $('#source')[0].files[0]);
        $('.grupo').each(function(){
            var grupo = $(this);
            if (this.checked) {
                var url = '{{url}}'
                $.ajax({
                async: false,
                data: data,
                url: url,
                cache: false,
                contentType: false,
                processData: false,
                type: 'POST',
                success: function(json){
                    $(grupo).parent().parent().find('.process-ok').html(<img src="'checked-clip-art.jpg" style="heigth:20px;widht:20px;">')
                    }
                });         
            }
            });
        $('#procesando').html('');
    });
#8
digamos que tengo una tabla

Código (html4strict) [Seleccionar]
<tr class='row' id=1>
<td class='precio'> <input type=''....></td>
<td class='precio_iva'><input type=''....></td>
</tr>
<tr class='row' id=2>
<td class='precio'> <input type=''....></td>
<td class='precio_iva'><input type=''....></td>
</tr>
<tr class='row' id=3>
<td class='precio'> <input type=''....></td>
<td class='precio_iva'><input type=''....></td>
</tr>


necesito que al cambiar el dato precio se modifique su correspondiente precio_iva

tengo acceso a jquery

asi que hago un

Código (javascript) [Seleccionar]
$('.row>.precio').keyup(function({
$(this).parent().find('.precio_iva>input').val($(this).value())
}))


algo asi...
y eso me funciona, pero solo con la primer fila..  y no tengo acceso a cambiar las clases... estare asiendo algo mal? :-\



mentira, ya checando vien si funciona.. el problema es que anado nuevas filas con otro js, y esas nuevas filas no las revisa...   :S  ahora si no se que hacer.
#9
ase un rato mi tia me fastidio pidiendo que le revisara la computadora, un adware se le avia instalado y ahora veia anuncios por todos lados al navegar


asi que me puse a pensar, como se hacen estos adwares   e investigue y googlie.. y no sirvio de mucho jeje... pero se me ocurrio irme a la cosa mas simple...  las extensiones (chrome como ejemplo)

para hacer una extension debe declararse un json (bastante al estilo de una app de android xD)
Código (javascript) [Seleccionar]

"content_scripts": [
    {
      "matches": ["http://*/*", "https://*/*"],
      "css": [],
      "js": ["src/adware/script.js"]
      "run_at": "document_start" //desconozco si debe cargarse en este momento
    }
]


despues de esto,   podemos usar un poco de trabajo sucio.
esta es la lista de blocks  de adbock  https://easylist-downloads.adblockplus.org/easylist.txt

adbock es algo complejo para analizar, pero en si su algoritmo es

Citarif filtro in url{
elimina contenido
}

pero, para nuestro adware queremos

Citarif filtro in url{
elimina contenido
carga este javascript
}


que seria algo como esto:
Código (javascript) [Seleccionar]
var url = document.write(location.href);
var nuevoContenido ='';
if (test.indexOf("show_ads.js") !=-1){
    document.html(nuevoContenido);
    document.close();
}


donde nuevo contenido puede ser un javascript que cargue el nuevo ad*

Código (javascript) [Seleccionar]
document.write('<a href="addlink"><img src="link"></a>')


como siempre, mis skills en javascript me traicionan...
aria falta perfeccionar el script, pero en lo general.. creo que esta es una forma de hacer un adaware
#10
hola!  verán, cree un sitio catalogo  en base a las publicaciones de ciertos grupos abiertos usando la api de facebook...

tiene solo 1 dia.. hoy obtuve 50 likes y 100 visitas a la web (solo pasando el enlace. eso es agradable)


pero en los tos de facebook dice que no deben usarse sus datos para mostrarse públicamente en catálogos..
eso tiene solución, si yo pido a mis usuarios loguear (con facebook connect)  para ver los datos de los grupos de facebook  deja de haber incumplimiento de las normas.


mi dilema esta en que por estrategia l  no me conviene "obligar" al usuario a ingresar  asta que tras 1 semana o 2   que el sitio ya este andando al 100%


la pregunta es.. podría facebook detectar  mi osadia en 2 semanas y banear mi app y arruinar mi negocio?
#11
Scripting / ejecutar cada minuto python
4 Julio 2013, 09:45 AM
necesito ejecutar cada minuto un script/metodo  .__.

y la verdad, lo único que se me ocurre es llamar al comando sleep()

Código (python) [Seleccionar]
while True:
    check_if_time()
    sleep(60)


tengo una base de datos con comandos que se ejecutan a cierta hora del dia.  pero la configuracion de estos comandos es algo volátil,  un dia pueden estar corriendo a las 5am  y otro dia alas 7pm segun caprichos del administrador.



hay alguna forma de optimizar esto? .__.
#12
Desarrollo Web / detectar clic en adsense
26 Junio 2013, 09:36 AM
quiero detectar cuando mis usuarios hacen clic en adsense (ya se que adsense te dice cuantos clics hay, o analitics)  pero quiero destacar los post donde mas usuarios hacen clic de manera automatica.

Código (javascript) [Seleccionar]
<script type="text/javascript" src="http://static.bloqueomental.com/bloqueomental/static/jquery.js"></script>
<script>
$(document).ready(function() {

// I am a flag that will determine if the user is
// currently mousing over a Google AdSense.
var isOverGoogleAd = false;

// When a user mouses over a Google AdSense iFrame, we
// want to track that activity. This way, when the
// current window blurs, we can guesstimate as to
// whether or not the window-blur was due to the user
// clicking the Google ad.
//$( "iframe[ id *= google ]" )
$( "#myframe" )
.mouseover(
function(){
isOverGoogleAd = true;
}
)
.mouseout(
function(){
isOverGoogleAd = false;
}
)
;

// Now that we are tracking the mouse movements over
// the Google AdSense, let's track the window's blur
// event to see if we can guesstimate the AdSesnse
// usage.
$( window ).blur(
function(){
// Check to see if the user was over a Google
// AdSense ad when the window was blurred.
if (isOverGoogleAd){

// Because the user was mousing over a
// Google AdSense iFrame when the window
// was blurred, it is reasonable to
// estimate that the blurring is due to
// the user clicking one of the ads.
alert('click');
}
}
)
// Focus the window by default.
.focus()
;

});</script>


tengo este codigo que en general detecta    iframes.. el problema es que el boton de like de facebook tambien es un iframe... alguien se le ocurre una solucion? :S
#13
[youtube=640,360]http://www.youtube.com/watch?v=D9SObx-S0xg[/youtube]

ase unas noches estaba pensando en los videojuegos para navegador.. sin tener que recurrir a java o flash. (pues odio java y en linux; flash es la muerte)


asiendo esto me lleva a la curiosidad de que tan lejos se puede ir...  javascript da todo lo necesario, acceso a las teclas, modificar css  al aire  entre muchas otras cosas.

PD: no creo necesario poner la fuente del codigo, en el video se aprecia bien lo poquito que es.


#14
veran hoy entre y me tope con mi firma removida.

y un mensaje en mi bandeja por un moderador  que no citare por que un error lo comete cualquiera. espero la siguiente vez se tome la molestia de ver el código de la firma y ver que decía [img]

CitarLos colores y tonos de las imágenes de las firmas no deberán ser desagradables a la vista, ni contener imágenes repulsivas u ofensivas, y con unas dimensiones máximas de 500x300px. Tampoco podrán contener vídeos incrustados de Youtube (o cualquier plataforma similar), vídeo y/o sonido. En caso de no cumplir con estas normas se sancionará al usuario de acuerdo a la sección III.C.2.

mi firma no es un vídeo, es solo una imagen menor a 500x 300 que enlaza a un vídeo de mi propiedad (comprendo por que no incrustar vídeos.. aria innecesariamente pesada la carga de algun tema para el visitante)

pero las firmas son para atraer visitas a nuestros sitios no?  todo el mundo las usa asi.. almenos el que tiene un sitio que promocionar y mientras no incomode no hay problema.

si lo se, es ingeniso/engañante camuflajear una imagen como un vídeo, pero kien lo clikee es por que le intereso el tema no?  no veo necesario añadir una norma nueva para prohibir esta practica..

en fin.. vuelvo a colocar mi firma, y si deciden volverla a quitar espero también añadan esa nueva regla al foro.
#15
Dudas Generales / git ignorar un archivo :(
3 Junio 2013, 21:16 PM
estoy frustrado... debo admitir que llevo usando git casi 1 año y aun despues de muchos proyectos no se como hacer esto


siempre uso git en mi proyecto local,  luego  lo subo a un server donde tengo todos mis proyectos..
y luego lo clono en otro server de produccion.
ya saben, lo normal

el detalle es que en produccion necesito tener un settings diferente, y no logro   mantener los settings separados :(

necesito que en el server de produccion se ignore  el  archivo "setings" al hacer git pull origin master

ya intente ponerlo en .gitignore pero no me funciona

PD: no debo  ignorar el settings de mi   proyecto local, necesito que ese settings, se clone en el servidor-repositorio,  pero que no se clone en produccion  una vez modificado.



el proceso es:
crear git local
crear git en server-repo
push git local a server-repo
clonar server-repo a server-produccion
modificar settings en produccion

y ahora necesito que nunca se substituya el settings de produccion, auke yo modifique y haga push al settings local.
#16
veran, estoy asiendo un sistema web de noticias, y quiero implementar drag and drop  para jalar las noticias entre si y poderlas relacionar..

todo bien...

[youtube=640,360]http://www.youtube.com/watch?v=SOmGQyWgvuQ[/youtube]


exepto por un detalle, y que que cuando tengo una imagen dentro del div (con el div seteado como draggable) la imagen tiene prioridad y se jala la imagen

ya intente ponerle a la imagen draggeable=False y funciona parcialmente para jalar, pero al soltar un elemento arriva no lo detecta del modo correcto


algo asi es el codigo html que tengo

Citar{%for nota in columnas%}
{%if forloop.first%}<div class='row-fluid'>{%endif%}
<div class='span3' style='text-align:center;' >
       <a draggable="false" href='/columna/{{nota.id}}/{{nota.titulo|slugify}}'><div draggable=True ondragstart="dragIt(event);" id='c{{nota.id}}' ondrop="dropIt(event)" ondragover="event.preventDefault();">
   <img src='{{MEDIA_URL}}{{nota.columna.imagen}}' draggable=False class="img-polaroid" style='width: 80%;margin-left:9%;margin-right:10%; '>
   <h3  style='text-align: center;'>{{nota.columna.nombre}}</h3>
   <h4  style='text-align: center;'><i>{{nota.titulo}}</i></h4></div></a>
</div>
{%if forloop.last or forloop.counter|divisibleby:"4" %}</div><br>{%if not forloop.first and not forloop.last%}<div class='row-fluid'>{%endif%} {%endif%}
{%endfor%}

el como asociar va de lado del servidor, del lado del cliente solo debo poder mandar los ids de los divs correctos :3
#17
les comparto este script que realiza para sacar emails de una web usando una arañita que recorre enlaces internos...

lo comparto por si se les ocurre modificaciones poder mejorarlo

repo git > https://github.com/Boredsoft/email-spider

** acepta parametros
-url       obligatorio con formato  http://somthing.com/   (la / final es necesaria)
-max_links  maxima cantidad de links a analizar antes de cortar el programa y guardar
-max_emails  maxima cantidad de emails a obtener antes de finalizar el programa y guardar
-external    acepta links externos, pero si no se usa junto con max_links o max_emails el programa nunca se detendra :(

** si la conexion de internet se cae el programa espera 30 segundos para reanudarse
** no se traba con enlaces muertos
** uso de "sort" para revisar enlaces con mayor probabilidad de tener email despues de cierto tiempo

Citar
fix 3.0
soporte para mas sistemas operativos
mejor detección de emails mediante el regex
fix v 2.0
ahora detecta mas tipos de urls internas
ahora detecta si es windows o linux para usar el comando correcto de limpiar pantalla.


Código (python) [Seleccionar]
# -*- coding: utf-8 -*-
## by kase: kase@boredsoft.com   colaboraciones: EleKtro H@cker
import requests,re,os,time,sys
from argparse import ArgumentParser, RawTextHelpFormatter

parser = ArgumentParser(description="email spider", version="3.0", formatter_class=RawTextHelpFormatter)
## -url
parser.add_argument("-url",  dest="url", help='url a analizar en formato http://web.com/')
## -max_links links
parser.add_argument("-max_links",  dest="max_links", help='maximo de links internos a analizar')
## -max_emails emails
parser.add_argument("-max_emails",  dest="max_emails", help='maximo de emails a analizar')
## -external  default False
parser.add_argument("-external",  dest="external", help='investigar links externos [si|no]')

argumento = parser.parse_args()



url_web = argumento.url
url_web_limpio = argumento.url.replace('http://','').replace('/','').replace('www.','')
links_internos = ['/']
links_visitados = []
emails_capturados = []
mailsrch = re.compile(r"[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum|mx|com\.mx|xxx|tv|tk)\b")
#old mailsrch = re.compile(r'[\w\-][\w\-\.]+@[\w\-][\w\-\.]+[a-zA-Z]{2,6}')
urlssrch = re.compile(r'href=[\'"]?([^\'" >]+)')
contador = 0
while links_internos:
try:
## saca el ultimo link de la lista
##print links_internos
link = links_internos.pop()
## añade ese link a visitados, para no volverlo a tener en cuenta
links_visitados.append(link)
if link[0] == '/' or link == '':
r=requests.get(url_web+''+link)
else:
r=requests.get(link)
links = urlssrch.findall( r.text)
##print 'xxxxxxxxxxxxx', links
emails = mailsrch.findall(r.text)
## guarda todos los emails que se topa checando que no existan repeticiones
for email in  emails:
if email not in emails_capturados:
emails_capturados.append(email)
## guarda todos los links internos que se tope checando que no existan en la cola o en vistados
for link in links:
if not argumento.external:  ## verifica si usar enlaces externos o no
if link[0] == '/' or url_web_limpio in link:
if link not in links_internos and link not in links_visitados:
links_internos.append(link)
elif  argumento.external == 'si':
if link not in links_internos and link not in links_visitados:
links_internos.append(link)
contador +=1
## informacion en pantalla
if contador % 50 == 0:
if sys.platform.startswith('win'):
   # Windows
   os.system('cls')
elif sys.platform.startswith('linux'):
   # Linux
   os.system('clear')
elif sys.platform.startswith('cygwin'):
   # Windows (Cygwin)
   os.system('cmd /c cls')
elif sys.platform.startswith('darwin'):
   # MacOSX
   os.system('clear')
elif sys.platform.startswith('freebsd'):
   # FreeBSD
   os.system('clear')
print 'web atacada:', url_web
print 'total de emails obtenidos:', len(emails_capturados)
print 'urls recorridas: ', len(links_visitados)
print 'urls faltantes: ', len(links_internos)
print '-----  (~._.)~ '
## pequeño arreglo para tener mas chanse de optener emails en web grandes
## primero analiza los enlaces internos mas cortos  y despues de un tiempo, analiza los mas largos primero
## en paginas tipo blog, los enlaces mas largos son los de las post con comentarios donde posiblemente existan emails
if contador %10000 == 0:
if contador <= 10000:
links_internos.sort(reverse=True)
else:
links_internos.sort()
## si ahi un maximo de links internos  rompe el ciclo y termina
if argumento.max_links:
if contador >= int(argumento.max_links):
break
## si ahi un maximo de emails capturados rompe el ciclo y termina
if argumento.max_emails:
if len(emails_capturados) >= int(argumento.max_emails):
break
## si la conexion se cae duerme el proceso 20 segundos y reintenta
except:
r = os.system('ping -c 1 google.com') ## checa si hay conexion de internet
if r == 0:  #si existe conexion elimina el enlace muerto
link = links_internos.pop()
else: ##sino espera 20 segundos a que se reanude la conexion de internet
time.sleep(30)
if sys.platform.startswith('win'):
   # Windows
   os.system('cls')
elif sys.platform.startswith('linux'):
   # Linux
   os.system('clear')
elif sys.platform.startswith('cygwin'):
   # Windows (Cygwin)
   os.system('cmd /c cls')
elif sys.platform.startswith('darwin'):
   # MacOSX
   os.system('clear')
elif sys.platform.startswith('freebsd'):
   # FreeBSD
   os.system('clear')
print 'web atacada:', url_web
print 'total de emails obtenidos:', len(emails_capturados)
print 'urls recorridas: ', len(links_visitados)
print 'urls faltantes: ', len(links_internos)
print '-----  (~._.)~ CONEXION CAIDA, ESPERANDO 30 SEGUNDOS (X__X)'

f = open('%s.txt' % url_web.replace('http://','').replace('/','').replace('.','_'),'w+')
f.write("\n".join(emails_capturados))
f.close()

mejoras en las que pueden ayudarme
no soy muy bueno con expresiones regulares

estas me funcionan en el 90 de los casos, pero derrepente tienen errores (como cuando alguien usa el @ como a/o,   o no detecta urls internas si no comienzan con /)
 
mailsrch = re.compile(r'[\w\-][\w\-\.]+@[\w\-][\w\-\.]+[a-zA-Z]{1,4}')
urlssrch = re. compile(r'href=[\'"]?/([^\'" >]+)')



funciones que pienso agregar a futuro

** comandos para pausar las tarea y guardar donde se quedaron
** serializar cada cierto tiempo la tarea  para no perder el trabajo cuando se reinicie la computadora forzosamente


::)
#18
necesito analizar   el peso de varios "temas" durante un dia, pero debo hacerlo lo mas automatico posible.

estuve buscando si google trends poseeia una api, pero al parecer no la sacaron.. asi que solo estoy familiarizado con el api de twitter.

el problema es que no debo buscar los trends del dia, sino analizar el peso de ciertos temas agenos a los trends para priorisarlos.

solo se me ocurre hacer busquedas por twitter y medir el volumen y el tiempo. pero me gustaria recopilar tambien datos de busqueda y de enlaces, e incluse de feedbacks.

ideas?
#19
tengo un software que estoy viendiendo a n personas.. y a todas les actualizo el software por igual


el codigo consiste en 3 carpetas

base
periodico
templates



necesito que despues de hacer un clone al repositorio poder editar la carpeta templates  asi como el archivo  base/views-local.py


yo creia que con   añadir al  .gitignore del lado de produccion

bastaba con poner las lineas

templates
base/views-local.py


pero la realidad es que cuando ago un pull  me tira error el propio gitignore y me dice que hay lineas diferentes....


esos archivos existen en la rama "master" solo como plantillas,  debo rellenar datos de cada cliente en ellos, pero para actualizar el software debo  poder "pullear" todo lo demas :/
#20
Desarrollo Web / vps dns con godaddy?
8 Marzo 2013, 15:12 PM
hola...
acabo de contratar un vps  que no trae ni panel ni  dns... y no quiero instalar uno..


me recomendaron esta pagina para manejar el dns de manera gratuita...

https://manage.www.namecheap.com

pero la primer duda es que tipo de record type debo elegir para apuntar a mi ip
A, CNAME, URL?

y mi otra duda es que esta intefaz se me hace un poco familiar con la de goddaddy (la verdad es que hace años que no uso godaddy para gestionar mis dominios, solo los tengo comprados ahi)

que debo hacer? XD


por el momento e puesto el dominio con record type "A" apuntando a mi ip...  espero respuestas para saber si ise lo correcto
#21
necesito contratar un vps  y me late este,
http://contabo.com/?show=vps

lo necesito para montar alrrededor de 10 estaciones de radio  (icecast) con 500 radio escuchas entre los 10...


ese vps me late por su precio muy barato, y tengo amigos que lo usan y me dan muy buena referencia


pero tiene este detalle

CitarUnlimited traffic: No additional costs due to traffic (if average traffic consumption continuously exceeds 20 Mbit/s over a timespan of at least 5 days the connection is switched to 10 Mbit/s).


no creo usar mas de 300g de transferencia al mes... pero si creo que las estaciones tengan picos de 2000 usuarios entre todas (para eso necesito 100mbit/s)

asi que 10 mbits no me rinden, necesito seguros almenos 40 para que aguante los picos altos, en los picos bajos (casi todo el dia dudo que aya mas de 10 escuchas)


PD: las 10 estaciones son de clientes potenciales dispuestos a pagar alrrededor de 20 dolares al mes.. claro que podria direccionarlos con a empresas que se dedican a eso, pero quiero sacar la mayor cantidad de dinero para mi. xD


sujerencias?
#22
Desarrollo Web / hosting shoutcast
14 Diciembre 2012, 09:12 AM
hola.. necesito que me recomienden un hosintg para hacer shoutcast en formato aac a 32kb  es para un conjuto de programas de opinion.

de 50 a 200 escuchas

si an trabajado con la empresa que me recomienden mejor.


PD: no, no me conviene montarlo de manera casera, prefiero la fidelidad y mi presupuesto ronda asta 30 dolares al mes.
no es para transmitir musica, es para transmitir programas  que tambien se graban como podcast
#23
Dudas Generales / Como lanzarian un paytoclick?
5 Diciembre 2012, 19:49 PM
anoche en un momento de delirio  programe el motor de un paytoclick (en python) con sus correspondientes candados para prevenir clicks fraudulentos...

hoy prácticamente puedo terminarlo (solo hago un par de plantillas y listo)..
y en un momento de idiotes compre tambien el dominio el cual no dire para que no lo consideren spam...

La intención es lanzarlo a nivel Mexico (manejando moneda mexicana), aun que bien cualquiera que hable español puede usarlo, pagos por paypal.. etc. etc. etc.


la pregunta es.

¿que harian ustedes primero?

¿lo lanzo prácticamente sin webs y me arriesgo a que los primeros registrados no vuelvan por ver pocos links?

¿consigo webs que quieran inflar visitas rapido para que patrocinen el lanzamiento?

y si es asi ¿donde las busco?, siendo que en la mayoría de los foros apenas se habla de paytoclicks te banean:S


PD: pienso pagar en verdad...

que consejos me dan para lanzarlo...  prácticamente puedo hacerlo en las siguientes 48 horas .__.
#24
aver si pueden ayudarme, por que al poner eso en google, salen cosas de pagerank, pago por clicks, y esas pendejadas tipicas al usar adsense


estoy desarrollando un grupo de sitios web para una ong con 22 años de historia y muy buena reputacion  localmente (ciudad con medio millon de habitantes).


entonces, practicamente la web comienza con 0 visitas.. se desconoce a ciencia cierta cuantas puede lograr.. pero en un mes o dos podrian ser de 500 a 1000 por dia.

se quiere vender banners, de 400 x 250 pixeles,  que esten invariablemente durante 1 mes..

queremos saber cual es el costo por mes en el mercado. (pero con tanta basura de articulos de adsense imposible encontrar un buenarticulo)

PD: el precio contemplado en este momento es de $1000 pesos mexicanos mensuales por anuncio, aprox  $85 dolares. 
#25
Desarrollo Web / borde de un div decorado...
15 Noviembre 2012, 07:44 AM


alguien tiene idea de si es posible con html5 y css3 hacer este tipo de decorados? me refier a la ¿muesca? azul del div.  se hacerlo con imagenes, pero la verdad entre  editar una pekeña imagen y subirl al servidor y poner el link, y que luego el color no coincida  a escribir codigo css3 prefiero  escribir el codigo.. xD
#26
GNU/Linux / ubuntu server reducir consumo de ram...
8 Noviembre 2012, 12:40 PM
hola, es mi primera vez  usando una distribucion orientada a servidor... 


en concreto ubuntu server...  obiamente no tengo gestor grafico, todo lo muevo por ssh...  pero el consumo de ram esta en 300mg con solo el inicio  y quisiera bajarlo.


kase@matrix:/etc/init.d$ ls
acpid              networking                   sendsigs
apache2            network-interface            setvtrgb
apparmor           network-interface-container  single
apport             network-interface-security   skeleton
atd                nmbd                         smbd
avahi-daemon       ondemand                     ssh
bind9              passwd                       stop-bootlogd
bootlogd           plymouth                     stop-bootlogd-single
console-setup      plymouth-log                 sudo
cron               plymouth-splash              udev
cups               plymouth-stop                udev-fallback-graphics
dbus               plymouth-upstart-bridge      udev-finish
dmesg              postgresql                   udevmonitor
dns-clean          pppd-dns                     udevtrigger
friendly-recovery  procps                       ufw
grub-common        rc                           umountfs
halt               rc.local                     umountnfs.sh
hostname           rcS                          umountroot
hwclock            README                       unattended-upgrades
hwclock-save       reboot                       urandom
irqbalance         resolvconf                   whoopsie
killprocs          rsync                        winbind
module-init-tools  rsyslog
mysql              screen-cleanup


que puedo quitar de ahi?  y estoy un poco desoriendado, tengo que eliminar los enlaces? o basta con un chmod 000?

porcierto mysql y postgress y apache2 se van.. xD   estoy usando tornado + sqlite   el servidor es solo para mostrar demos antes de enviarlos a produccion.   la maquina es muy modesta.. y por eso preferiria solo tener de arranque el tornado..


el resto lo instale, por si lo ocupo algun dia
#27
Redes / dominio + no-ip
8 Noviembre 2012, 06:03 AM
necesito montar un servidor casero.. para mostrar proyectos en estado beta...  nada fuera de lo normal...

se conectarlo mediante no-ip    

y el proyecto uno quedaria en la xxx.no-ip.com:8000
proyecto dos puerto 8001
proyecto 3 puerto 8002  


pero quiero darles "nombre"  
proyecto1.midominio.com
proyecto2.midominio.com


se hacer esto.. es con un servidor dns...  el problema es que no tengo ip estatica.. y desconozco si es posible  usar no-ip  como intermedio..

PD: necesito el servidor casero.. cada proyecto consume asta 40 mg de ram...  asi que me come un servidor rentado..  para practicamente mostrarlo un par de veces al dia...

una vez entran estos proyectos a produccion, entonces ya rento servidores
#28
Hardware / impresora de tinta continua.
26 Octubre 2012, 10:27 AM
veran tengo una impresora ¿viejita? epson stylus tx130 la cual no uso por no tener tinta...  ase unos dias estaba pensando en las impresoras industriales... en mi ciudad no ahi "imprenta" que posea una, asi que puede ser un buen negocio..   pero me tardare en juntar los 10,000 dolares  que valen XD


y pense,  quizas en el medio año que me lleve, (me dedico a otras cosas)  pueda mientras hacer algo con un impresora modesta..
y llegue a  los sistemas de tinta continua.. que son cartuchos rellenables conectados a tubos de 100ml   y el litro de tinta de color ronda los 25 dolares.

en si la impresora vale alrededor de 100 dolares (ya la tengo y no la uso),  los cartuchos valen 30 dolares, y los litros de tinta (4) 80 dolares (estos no son parte de la inversion incial).

y podria hacer   tarjetas de presentacion, flyers, tripticos, invitaciones etc.. y venderlos en paquetes de 100  ("menudeo")   el problema es el tipo de papel... segun esto solo acepta normal...  y   estoy descartando el couche por su superficie..  pero quisas la cartulina sulfatada de 12 puntos (230g)  pueda funcionar..  o la opalina mate..   y  podria acudir a barnizados para darle brillo posteriormente.

como ven? que opinan?  lo han hecho? es  algo de ingreso "extra"  no es para dedicarme como negocio.. XD

y pues pregunto por dos cosas, ando justito de dinero y no quisiera invertir  si deplano no funciona...   desconozco si la cartulina la agarre bien.  y tengo que romper un poco la impresora para meter los cartuchos.. XD     

   
#29
Desarrollo Web / pagos por paypal?
29 Septiembre 2012, 08:35 AM
estoy ofreciendo una  area vip en una web...  alguien sabe como aceptar pagos por paypal y que  esta area vip se encienda sola? xD

ala ora de crear un boton, veo que puedes definir una pagina "success" y varias variables por get..

me imagino que puedo enviar a paypal el id del usuario para que despues de hacer el pago, este me retorne el mismo id, no?

pero no se ni donde, ni como buscar esto
#30
Hacking Wireless / ataque dos a una wifi?
24 Septiembre 2012, 04:58 AM
no estoy seguro si alguna vez lo vi, o fue solo imaginacion mia...

por eso pregunto, es posible hacer un ataque de denegacion de servicio a los usuarios de una red?   si no recuerdo mal, creo aver leido que era posible con el aircrack


pero en su defecto, se me ocurre un envenenamiento arp  o__o
#31
Programación General / sala de chat
16 Septiembre 2012, 08:10 AM
necesito hacer una sala de chat, y no se si decantarme por     un servidor tipo  irc, o por  un servidor web?


solo neceisto funcione basicas, canales que se auto crean.. un sistema anti-spam, y mensajes directos...

algun protocolo que me recomienden?  o en su defecto... usarian irc, o un servidor web con una api json?




lo estuve pensando, y definitivamente sql no sirve,  pero la idea de un servidor web no es tan mala,  podria  crear las salas de chat como objetos en memoria, y axceder a ellos desde memoria...

para mensajes personales, entonces ya podria usar sql
#32
me invitaron a dar unas clases de cultura empresarial..

en las que hablare de

startups, outsourcing y cloudsourcing...

y quiero añadir un tema, pero no se como se llama

por ejemplo.. yo soy un vendedor, por ebay y vendo libros.. pero yo no tengo esos libros, sino que tengo el contacto con la editoral.. entonces cada que me hacen una compra, yo se lo compro a la editorial.

de esa forma, yo no invierto en algo que no se si se vendera.


no se como se llama ese modelo de negocios.
#33
como se programa un bot que se hace pasar por un humano?

me refiero a la idea de la base de datos...  imagino que se almacenan conversaciones, y entonces se busca el mensaje en la bd para saber que responder...


pero quisiera que fuera lo mas real posible... entonces se me viene a la mente algoritmos como  redes neuronales de agrupacion.
#34
estoy ofreciendo una api en una web que tengo...

la api devuelve un json {titulo,foto,informacion}  pero se que el 95% de mis usuarios no sabra que hacer con eso.. entonces me gustaria ofrecerles codigos ya creados para que carguen la info dada por el api en sus web..

aparte de javascript se les ocurre otras formas? xD

realmente no se me ocurre ni en javascript, pero me imagino que es un arreglo que crea divs... aun asi, busco mas posibilidades..



plop.. me equivocado de subforo, mil disculpas
#35
Programación General / mmorpg servidor
22 Agosto 2012, 10:19 AM
si, imagino que es un tema trillado (repetido)  pero esta es una cuestion un poco diferente...
no podia dormir y me quede pensando, como hacer un servidor mmorpg.... que se necesita?

y mi interrogante me llevo a simplficarlo.

- debemos trasmitir los datos de los usuarios a los demas usuarios ( ._.) entonces pense en el ¿como?.. y conclui en un "objeto"  mapa que guarde las cordenadas de los usuarios y este objeto sea retrasmitido a todos los clientes.
pero esto solo tendria posiciones, entonces pense en mas objetos...

objetos "usuarios" con parametros como cordenadas x,y, vida, estado, accion_realizando y asi. de este modo el cliente solo tiene que leer los datos y desplegarlos. y luego pense en los moustros y npcs.. y dije, ok, tal vez ese mapa debe aceptar arreglos mas aya de el objeto "usuario"


pero cambiando de tema, pense en como mantener el mapa en memoria y a la vez servirlo a n usuarios sin lag... obviamente no podemos generar un mapa para cada usuario con los mismos valores siempre.. el mapa debe ser global, y sus datos deben estar en ram necesariamente. y debe  enviar informacion cada x milesimas de segundo a todos lo usuarios.. (de modo que no puede enviar uno por uno) y me cuestiono, el envio de informacion al mismo tiempo se realizaria con hilos?


luego pasando a temas de seguridad, el mapa deberia checar que cada peticion que reciba sea valida. e ignorar las que no lo son, e incluso beanear cuando las cuentas  cuando se spamea una peticion no valida. pero esto retrasaria el procesamiento del mapa.. podria entonces encenderse banderas para confiar en usuarios o para desconfiar. no?


como ven mis delirios de 3 am...  estoy mal o bien en mi teoria de un servidor mmo...

el cliente es punto y aparte. y obviamente iria con sokets, e interpretando y mostrando el mapa..




curioso.. cree un tema igual en el 2007 xD solo que esta vez tengo mas idea de como hacerlo.
pero rescatando cosas del tema anterior.

ese objeto mapa, solo deberia reenviar informacion de lo que "se a movido"
#36
alguien me recomienda algun servicio gratuito con posibilidad de upgrade  para obtener la latitud y longitud del usuario mediante javascript?

y si tienen el javascript pues mejor! jeje.. sino con el sitio es suficiente..  es que ahi bastantitos y pues no se cual elegir...

necesito optener latitud y longitud para setear un mapa
#37
disculpen es que no tengo tantas maquinas para experimentar :S  y aveces no confio en experimentar sobre un servidor ssh sobre mi misma maquina...

quiero saber si es posible ejecutar un script directamente en la conexion...

ejemplo

Citarssh  user@host:path/to/script/./script.py

gracias :3
#38
GNU/Linux / ssh-agent
15 Agosto 2012, 11:02 AM
pues nada.. el ssh-agent no me funciona

creo la clave con ssh-keygen

subo el public con

scp  user@host ic_scr.pub

entro a host
ssh user@host

copio la clave
cat is_scr.pub >> .ssh/authkeys (o algo asi)

e importo la clave

ssh-add ic_scr.pub


e inicio  el agente?

ssh-agent


pero al conectar a user@host sigue pidiendome la clave... y ne da una weba enorme por que mi clave es de 22 caracteres

estoy asiendo algo mal?

#39
tengo esta sencilla exprecion regular

Citarr'^adoptar|se_busca|perdido/(\d+)/[-_A-Za-z0-9]*/$'


necesito que funciones asi

adopar/1/gatito
se_busca/2/perrito
perdido/4/cotorro

el problema es que solo funciona la ultima... por que no estan englobadas las opciones

Citarr'^(adoptar|se_busca|perdido)/(\d+)/[-_A-Za-z0-9]*/$'

el poblema es que el metodo que recibe es un poco quisquilloso con los parametros... y si lo pongo entre parentesis se pasara como parametro, cuando no lo es.

asi que no se como engobar esas opciones.. ya probe con []  pero lo busca como caracteres..
#40
tengo este codigo jquery

Citardjango.jQuery(function($){
   $.fn.gmapAdmin = function(options){
      var defaults = {   
         'zoom':8,   
         'lat':'53.311',
         'lng':'-6.24',
         'map_elem' : '#id_map',
         'delete_elem' : '#id_delete',
      };
      
      var options = $.extend(defaults, options);
      var value = null;
      var marker = null;
      var map = null;
      var latlng = null;
      var that = this;
      
      var set_field = function(latlng){
          if(marker){
              $(that).val(latlng.lat()+","+latlng.lng());
         }
      };
      
      var get_field = function(){
          if($(that).val()){
            return $(that).val().split(",");
         }else{
            return "";
         }
      };
      
      var remove_field = function(){
          if(marker!==""){
            $(that).removeAttr("value");
         }
      };
      
      var remove_marker = function(){
          marker.setMap(null);
         marker = null;
      };
      
      var set_marker = function(latlng){
          if(!marker){
              marker = new google.maps.Marker({
               map:map,
               draggable:true,
               position: latlng,
            });
            google.maps.event.addListener(marker, 'click', function(new_location) {
                map.setZoom(13);
               map.setCenter(new_location.latLng);
            });
            google.maps.event.addListener(marker, 'dragend', function(new_location) {
               set_field(new_location.latLng);
            });
         }else{
             marker.setPosition(latlng)
         }
      };   
      
      latlng = new google.maps.LatLng(options.lat,options.lng);
       map = new google.maps.Map(document.getElementById($(options.map_elem).attr('id')),{
         zoom: options.zoom,
         center : latlng,
         mapTypeId: google.maps.MapTypeId.ROADMAP,
      });

      // If there is a value in the field, load it onto the map
      if(get_field()!==""){
         set_marker(new google.maps.LatLng(get_field()[0],get_field()[1]));
      }
      /* Listeners */
      google.maps.event.addListener(map, 'rightclick', function(new_location) {
          set_marker(new_location.latLng);
         set_field(new_location.latLng);
      });
      $(options.delete_elem).click(function(){
         if(marker!==""){
            remove_marker();
            remove_field();
         }
      });
      
   };
});


y este html y script que ejecutan el mapa
Citar
               <input type="hidden" name="geolocation" id="id_geolocation" />
               <div class="map_canvas_wrapper" style="display:inline-block;">
                  <div id="map_id_geolocation" style="width:800px;height:500px"></div>
                  <script>
                     django.jQuery(function($) {
                        $("#id_geolocation").gmapAdmin({
                              'zoom': 5,
                              'lat': '22.213709',
                              'lng': '-98.381109',
                              'map_elem': '#map_id_geolocation',
                              'delete_elem': '#map_delete_id_geolocation',
                        });
                     });
                  </script>
               </div>

lo que me gustaria hacer es añadir una funcion:


Citar<input type="text" id="address" value=""/>
<a href='javascript:search();'>buscar</a>

donde search  recargue el mapa buscando la direccion pasada...

tengo 2 problemas, el primero es que dependo forzosamente de ese jquery que puse al principio
y el segundo es que no se leerlo.. XD

creo que me quede en la v2 de google maps.. donde esta el geocoder.geocode()?  x__x  no identifico donde se esta cargando el mapa ¬¬  olvidenlo, geocoder es para otra cosa.. XD


edit:
ya encontre donde se crea el map... XD lo marke en rojo

y esta es la funcion que necesito añadir

Citargeocoder = new google.maps.Geocoder();

  function codeAddress() {
    //In this case it gets the address from an element on the page, but obviously you  could just pass it to the method instead
    var address = document.getElementById("address").value;

    geocoder.geocode( { 'address': address}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        //In this case it creates a marker, but you can get the lat and lng from the location.LatLng
        map.setCenter(results[0].geometry.location);  //con esto centro el mapa
      } else {
        alert("Geocode was not successful for the following reason: " + status);
      }
    });
  }

pero no se cual es el problema.. segun yo, map deberia ser global... :/
#41
necesito que al pulsar un link se mande a descargar un archivo tras otro  (osea una lista de archivos)
son informes de proyectos.. cada uno con una  url:  mipagina.com/descarga/proyecto/id/nombre.odt 

no quisiera mandar todo en un solo documento, auque tengo forma de hacerlo.. y tampoco quiero que el usuario tenga que cliquear un por uno (auque ya es posible).. el problema es que si quiere todos  podrian llegar a ser mas de 100 archivos.. y tirarle una instruccion  wget no es opcion.. (aunque tambien se las tiro xD)
#42
Desarrollo Web / libro de django
24 Abril 2012, 09:19 AM
hola. solo vengo a compartirles este libro que me encontre...

http://vandsproject.files.wordpress.com/2012/02/django-book.pdf

yo programo en django, y desde que lo uso estoy enamorado de el y no soporto ver otro codigo... ya tiene 1 año que aprendi y aun desconozco muchas cosas y cada vez quedo mas maravillado...  el gran pero siempre fue la documentacion. para un lenguaje no tan difundido como java es horrible..

pero me tope este libro en español


asi que se los dejo.. yo lo que antes programaba en php en 1 semana y en java en un mes, ahora lo hago en un dia con django.. vale la pena!


CitarDjango fue extraído de código de la vida real, en lugar de ser un ejercicio académico o un producto comercial, está especialmente enfocado en resolver problemas de desarrollo Web con los que los desarrolladores de Django se han encontrado -- y con los que continúan encontrándose --. Como resultado de eso, Django es activamente mejorado casi diariamente. Los desarrolladores del framework tienen un alto grado de interés en asegurarse de que Django le ahorra tiempo a los desarrolladores, produce aplicaciones que son fáciles de mantener y se desempeña bien con mucha carga.

Aunque existan otras razones, los desarrolladores están motivados por sus propios deseos egoístas de ahorrarse tiempo a ellos mismos y disfrutar de sus trabajos.
#43
necesito mantener 2 ramas de git igualitas....  pero que tengan 1 archivo diferente.. un settings.py

uno para subir a github con info por defecto.. y otro para sincronizar con mi servidor con info privada...  el problema es que no tengo la mas minima idea de como...   

por que si tengo una rama
master
hosting

y cambio a hosting y edito el settings... commit.... regreso a master  hago actualizaciones de codigo.. como hago para hacer un merge hosting-master ignorando el settings

no se por que me lo substitulle.. si no trabaje sobre ese archivo =S
#44
pues verán. hace mucho tuve una wiki y me gusto mucho el sistema de versionado y el crear links.. pero había cosas que no me gustaban  y era que se alejaba un poco del estilo blog...

en fin.. hace un mes me pidieron hacer un cms...  y apenas hace dos semanas me puse a trabajar en el....  al final no fue tan CMS (como jomla o dupral)  pero les gusto la idea..

esta es la web demo  
http://wikidemo.boredsoft.com    alternativo  http://darkkase.webfactional.com
el usuario y pass para editar  prueba:prueba

y  aqui les dejo el codigo https://github.com/Boredsoft/Boredsoft-wiki

no estoy seguro bajo que licencia ... pero siendo que llevo años usando open source me anime a compartir el codigo... (es decir, tampoco ise la gran cosa como Merengue o algo asi)

el cuerpo de la pagina acepta  directamente  html, css y javascript y jquery (no sean malvados)  es asi por conveniencia... aun que toma la idea de edición de una wiki,   no es abierta la edicion.

hay tres cosas principales.. articulos, categorias, imagenes y pueden crearse links internos como en wikipdia
[articulo:link]
[categoria:link]
[imagen:link]

si existe se coloca el enlace con el nombre correcto, si no se coloca un enlace rojo..

no manejo las cosas por "ID"  sino por un atributo unico llamado "Link"

y todo se historea.. de ese modo si se mete la pata se puede volver a un punto anterior guardado..

acepto sujerencias...  y correcciones de ortografía.. xD

PD:  aun no se me ocurre un nombre para el poyecto... sujerencias??? xD
PD:  el lenguaje es python + django  + jquerymobile

edit:  ya recorde que me falta... RSS y sitemaps! xD
#45
veran acabo de mudarme de  http://hostmonster.com a http://webfactions.com  por diversos motivos, pero principalmente por que webfactions ofrece soporte para python y django y otros motivos es que hostmonster dice espacio y transferencia "ilimitada" y ami no me gusta esa frase... por el contrario webfactions son bastante claros en lo que ofrecen.



hoy e estado mudando todo  pero me tope con algo curioso  y es que para cada pagina web (mejor dicho dominio)  se genera una instancia de apache...  lo cual es bueno, por que puedo configurarle cosas espesificas a cada uno... 

pero me lleva a la cuestion.... ¿¿¿ esto no consume mas recursos????

lo siguiente interesante que e visto es que para ejecutar python usan  mod_python  y no fastcgi   mod_python tenia entendido que causa problemas de lentitud... =S
sin embargo e visto algunos test a webfaction-django y su rendimiento es realmente bueno


lo mas molesto de webfactions es que no usa cpanel... tienen su panel propio  bastante  agradable al usuario.. pero no tan llamativo xD  (creo que acabo de sufrir un lapso de resistencia al cambio)

queria contratar un vps y dar el salto a configurar todo yo mismo...  pero los que encontre ofrecian muy pocos recursos por casi lo mismo que un shared.... =S 

cren que ise bien al  seguir en shared?