elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Temas
Páginas: [1] 2 3 4 5 6
1  Sistemas Operativos / GNU/Linux / [RESUELTO] Tengo conexión a internet, pero sin embargo no aparece como cone... en: 29 Noviembre 2012, 18:32 pm
Hola, me ha sucedido algo bastante extraño, siempre que he instalado Debian, la conexión a internet se configura automaticamente y sale andando, sin embargo, el otro día instale Debian, tengo conexión a internet, pero el icono de la conexión a internet (las computadoras en la barra de herramientas) aparece como desconectado, por este motivo no puedo usar ni Pidgin ni Evolution.

Acá les muestro la info de mi conexión:

cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#allow-hotplug eth0
auto eth0
iface eth0 inet dhcp

ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:25:22:2c:ab:fd  
          inet addr:190.188.85.153  Bcast:255.255.255.255  Mask:255.255.255.0
          inet6 addr: fe80::225:22ff:fe2c:abfd/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:10389124 errors:0 dropped:0 overruns:0 frame:0
          TX packets:864607 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2844175491 (2.6 GiB)  TX bytes:81148533 (77.3 MiB)
          Interrupt:27 Base address:0xa000

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

pan0      Link encap:Ethernet  HWaddr b2:68:49:0b:f2:61  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

¿Alguno se imagina a que se podría deber esto?, yo soy de madera con el tema de redes, estuve investigando por algunos lugares, pero no pude llegar a nada.
2  Programación / Scripting / ¿Lenguaje tipo javascript + OO? en: 18 Agosto 2012, 08:04 am
Hola, estoy buscando un lenguaje para desarrollar el front-end de una aplicación web. Me gustaría usar algo liviano como javascript, pero la verdad ya estoy un poco cansado de javascript y estoy buscando algo mas "elegante". No quiero usar Flash ni Actionscript porque me parecen muy lentos y pesados.
Buscando me puse a ver Dart de Google, pero sin embargo, me parece que es un lenguaje que todavía esta muy "verde", demasiado nuevo. Me gusta la idea de javascript + OO, ¿alguno de ustedes conoce alguna alternativa viable?

Saludos y muchas gracias por detenerse a leer.
3  Programación / Scripting / [PYTHON] Invitación a los usuarios para unirse a un pequeño proyecto en: 7 Agosto 2012, 23:50 pm
Hola, estoy realizando un pequeño proyecto por cuenta propia. El mismo consiste en lo siguiente:-"Desarrollar un script en python que lea de un JSON un archivo config, el cual contiene información de configuración, para configurar automaticamente una distro de debian"

¿Por qué?
Bueno, hasta hace poco era un fanatico de las distros y la eficiencia, ya hace 3 años que soy usuario de Linux (o GNU/Linux, sinceramente no le doy importancia a la diferencia, no se ofendan por favor). Comenze con Ubuntu, pero cuando me di cuenta de que con tantas actualizaciones terminaba bajando basura y que al fin y al cabo (creo yo) es una de las distros mas "borrachas" de Linux, termine migrando a algo mas generico y mas core, Debian. He provado casi todos los entornos de escritorio y tratar de sacarle al maximo la eficiencia a Debian, sin embargo, me ha pasado mas de una vez que he dicho:-"A la $%&! Instalare todo desde cero con solo lo basico y necesario!".

Sin embargo, una cosa que me molesta, es que uno tiene que configurar varias cosas por cuenta propia cuando instala por primera vez Debian (si es que se quiere tener un sistema ordenado), packages, bajar el sudo, la filestructure de uno, los repositorios, aplicaciones, etcétera.

Por eso me decidi a hacer un script que tomara toda mi info de "customizacion" y la ejecutara. Helo aqui un ejemplo de mi archivo config:

Código
  1. #Users name (the same of the /home/<user_name> folder this must exist!)
  2. {"user_name" : "astinx",
  3.  
  4. #The file structure of your environment
  5. "filestructure" :  "dev/tools/eclipse
  6. dev/tools/smalltalk
  7. dev/tools/ada
  8. dev/tools/pl1
  9. dev/tools/blender
  10. dev/tools/php
  11. dev/tools/python
  12. dev/tools/c
  13. dev/tools/ruby
  14. dev/tools/actionscript
  15. dev/tools/js
  16.  
  17. dev/frameworks/java/grails
  18. dev/frameworks/java/play
  19. dev/frameworks/java/spring
  20. dev/frameworks/java/struct
  21. dev/frameworks/java/gwt
  22.  
  23. dev/flash/flex
  24.  
  25. dev/frameworks/python/django
  26.  
  27. dev/frameworks/php/codeigniter
  28. dev/frameworks/php/symphony
  29.  
  30. dev/frameworks/myframeworks
  31.  
  32. dev/references/hibernate
  33. dev/references/spring
  34. dev/references/blazeds
  35.  
  36. dev/workspaces/eclipseworksheet
  37. dev/workspaces/phpworksheet
  38.  
  39. dev/servers
  40.  
  41. dev/scripts/python
  42. dev/scripts/bash
  43. dev/scripts/ruby
  44.  
  45. repos/git
  46. repos/svn
  47.  
  48. books
  49.  
  50. college/mypapers
  51.  
  52. media/video
  53. media/music
  54. media/images
  55.  
  56. job",
  57. #Repositories that you wanna make a checkout
  58. "repositories_checkout" : "svn://...",
  59. #Packages that you wanna install
  60. "packages" : "geany
  61.  virtualbox-ose
  62.  pgadmin3",
  63. #External devices like ntfs partitions that you wanna have every time mounted  
  64. "external_devices" : "/dev/sda3 => externalntfs",
  65. #.deb files that you wanna install (they must be at the same level of this file and init_script.py file)
  66. "backup_debs" : "google-chrome.deb",
  67. #.tar, .giz or .zip that you wanna extract in some of the filestructure folder.
  68. #The sintax is <file_name> => <destination_folder> with <extension>
  69. "backup_files" : "eclipse_environment.zip => /dev/tools/eclipse with .zip
  70.  webdevelop.tar => /dev/tools/php with .tar",
  71.  
  72. #Anothers scripts that you wanna run when this script finishs
  73. #The sintax is <script_name> with <bash|python|anything what make it run>
  74. "anothers" : "java_install_script.sh with bash
  75.  hi.py with python"}
  76.  

PD: Perdonen mi "ingles" xD

Esos parametros que inclui en el JSON son algunos de los que pense que podrian resultar utiles, pense:-"¿Que se me hace molesto cuando recien acabo de formatear la maquina?". Hacer la filestructure, descargar los packages, modificar los init.d para que siempre me monten los dispositivos externos (tengo una particion con Windows CHAN!... para jugar videojuegos y tengo un NTFS que uso como boveda), descomprimir mis programas en los respectivos directorios, instalar los .deb, tirar algun que otro script de backup, etcétera.

Mi script de backup lo hice en Python (algunos pensaran:-"¿Por que no en Bash?", simple, ODIO Bash, programar en Bash, no es programar xD)

Helo aqui:
Código
  1. #!/usr/local/bin/python
  2. # -*- coding: utf-8 -*-
  3. #
  4. #       init_script.py
  5. #      
  6. #       Copyright 2012 astinx <astinx@astinxmachina>
  7. #      
  8. #       This program is free software; you can redistribute it and/or modify
  9. #       it under the terms of the GNU General Public License as published by
  10. #       the Free Software Foundation; either version 2 of the License, or
  11. #       (at your option) any later version.
  12. #      
  13. #       This program is distributed in the hope that it will be useful,
  14. #       but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. #       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. #       GNU General Public License for more details.
  17. #      
  18. #       You should have received a copy of the GNU General Public License
  19. #       along with this program; if not, write to the Free Software
  20. #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  21. #       MA 02110-1301, USA.
  22.  
  23. import datetime
  24. import sys
  25. import os
  26. import subprocess
  27. import json
  28. import re
  29.  
  30. # This is the only thing that you can touch of this script, the config file absolute path.
  31. config_path = "/home/astinx/dev/scripting/bash/config"
  32. comment_regex = "(\A#.*\n*)"
  33. whiteline_regex = "(\A\s*\Z)"
  34.  
  35. # First, we clean the config file, this is, erase all the comments
  36. config_file = file(config_path,"r")
  37. # A temporary file to put the parsed config file, without comments
  38. config_temp = file(config_path+"_temp","w")
  39. for line in config_file:
  40. if (not (re.match(comment_regex+"|"+whiteline_regex,line))):
  41. config_temp.write(line)
  42.  
  43. config_file.close()
  44. config_temp.close()
  45.  
  46. # Now we clean the \n like dev/asd\ndev/qwe", to  dec/asd,dev/qwe",
  47. config_json = file(config_path+"_json","w")
  48. config_temp = file(config_path+"_temp","r")
  49. for line in config_temp:
  50. # If is something like '"packages" : "geany'
  51. if (re.match(".*\n\Z",line) and (not(re.match('.*\",\n\Z',line))) and (not(re.match("({)|(.*})",line)))):
  52. line = line.replace("\n",", ")
  53. line = line.replace("\t","")
  54. config_json.write(line)
  55. else:
  56. line = line.replace("\t","")
  57. config_json.write(line)
  58. config_json.close()
  59. config_temp.close()
  60.  
  61.  
  62. # Well the config file is cleaned, now we can open it as a JSON object
  63.  
  64. config_path = "/home/astinx/dev/scripting/bash/config"
  65. config_path = config_path + "_json"
  66. jsonfile = file(config_path,"r")
  67. json_string = jsonfile.read()
  68. jsonfile.close()
  69. json_obj = json.loads(json_string)
  70. config_dictionary = dict(json_obj)
  71.  
  72. # Now we get the environment variables from the JSON
  73. user_name = config_dictionary.get("user_name")
  74. filestructure = config_dictionary.get("filestructure")
  75. repositories_checkout = config_dictionary.get("repositories_checkout")
  76. packages = config_dictionary.get("packages")
  77. external_devices = config_dictionary.get("external_devices")
  78. backup_debs = config_dictionary.get("backup_debs")
  79. backup_files = config_dictionary.get("backup_files")
  80. anothers = config_dictionary.get("anothers")
  81.  
  82. #We build the filestructure
  83.  
  84. for directory in filestructure.split(','):
  85. print "Building "+directory+" ...\n"
  86. try:
  87. os.system("mkdir -p "+directory)
  88. except OSError, e:
  89. print "No se pudo crear el directorio ["+str(e)+"]"
  90. except ValueError, e:
  91. print "Uno de los directorios ingresados es ilegible ["+str(e)+"]"
  92.  

Apenas lo único que llevo hecho es esta parte, que seria el "parser de la aplicación", es que al parecer la librería de JSON, se mama un poco si encuentra algo del estilo <clave>:<valor>, donde valor incluye saltos de linea. Por eso tuve que introducir un poco de código, para limpiar el JSON antes de traérmelo.

Me gustaría que me dieran sus opiniones acerca de que otro campo podría incluir en el JSON de config, de manera que este script de customizacion sea lo mejor posible, si quieren aportar con código también son bienvenidos,  acá les dejo el repo donde tengo colgado el código:
http://code.google.com/p/pcustom

Cualquier cosa si quieres ser miembros para comitear codigo me envian un mensaje privado.

Saludos y gracias por su tiempo, sus criticas seran bienvenidas!
4  Programación / Desarrollo Web / Expresión regular en javascript para quitar tags en: 23 Julio 2012, 03:38 am
Hola que tal, he estado investigando acerca de como podría armar una expresión regular que haga lo siguiente:

En base a un string de html tipo "asd<strong>asd</strong> <strong>asd</strong> <strong>asd</strong>asd asd<strong>asd</strong>asd"

que al utilizar esta expresión regular me quite las tags de las palabras en donde haya estilos parciales, es decir,

asd<strong>asd</strong> se vería como asdasd como vemos tenemos solo parte de la palabra en negrita, lo que quiero es hacer un replace por "" y que me quede asdasd

<strong>asd</strong> se vería como asd como vemos todo esta en negrita, no hay ninguna letra que sobresalga y no este en negrita, por ende queda tal cual esta.

<strong>asd</strong>asd se vería como asdads como vemos el ultimo asd no esta en negrita y el primero si, por ende quiero quitarle los tags y que quede como asdasd

asd<strong>asd</strong>asd se veria como asdasdasd por ende tenemos un asd que esta en negrita entremedio y dos asd a los laterales de la palabra que no están en negrita, así que quiero sacar los tags y que me quede como asdasdasd

Esa sería la lógica de mi expresión regular, he estado buscando por varios sitios, leyendo bastante, pero no encuentro la forma de machear las tags y no las palabras en los laterales. Si alguien conoce alguna expresión regular similar, que pueda servir de inspiración, bienvenido sea.

Muchas gracias por detenerse a leer, saludos.
5  Programación / Desarrollo Web / Consulta; TinyMCE parseo de HTML en: 22 Julio 2012, 02:02 am
Hola, estoy implementando un programa que del lado del cliente funciona con flex, flash y muestra textos. El problema consiste en lo siguiente: El html que puede mostrar flex en un text area es un poco raro, por ejemplo, si tengo un tag b anidado dentro de un tag span, se rompe. Por esa razón necesito parsear el html que me devuelve tinyMCE, antes de subirlo a la base de datos, en el lado del servidor, que por cierto el lado del servidor funciona con java + jsp.

Lo anterior lo solucione haciendo algunos parseos en el servlet que subia los textos a la BD, en base al html que me devolvía tinyMCE. Sin embargo ahora se me sumo otro problema, por cierto motivo, no puedo permitir palabras con estilos a medias, por ejemplo:
la palabra tinyMCE  tendría que quedar como tinyMCE

Ahora se me sumo otro parseo mas, y francamente ya no se de donde enchufarme.Opte por hookearme a tinyMCE (dado que en la configuración del tiny hay varias tags que opte por ignorar y ya cuando envio el request al servlet, estas tags me las borra) y conseguir el html del text area ante cada evento onchange, sin embargo, ¿que hago con eso?, si perfecto, conseguí el html del text area y puedo parsearlo en javascript, pero, ¿como lo parseo?, ¿existe alguna librería que corra en java o javascript que me permita moverme de manera comodo por el DOM (SIN QUE NORMALIZE AUTOMATICAMENTE EL HTML)?, ¿ustedes que metodos usarían?.

Encima a todo esto piensen que no necesariamente, al parsear los estilos parciales, tengo que tener en cuenta solo los tags <b> e <i> ya que practicamente cualquier tag cuenta con el atributo style y ahi metido puede tener style="fontWeight: bold" y eso luce como negrita, pese a que no esta dentro de un tag <b>. Por lo tanto tengo que ir iterando sobre el dom, preguntando si tiene el atributo style puesto o si es un tag de estilo (por ejemplo, strong, b, em o italic), si se da "truncar" el estilo de la palabra y a todo esto normalizarlo para que nuestro querido flex lo entienda.

PD: El normalizado de flex a toda furia, consiste en convertir básicamente , cualquier tag en un span y por ejemplo, si era un tag b, en vez de ello, que sea un span con "fontWeigth: bold".

Cualquier pizca de conocimiento que puedan aportar para darme una mano, sera bienvenida, saludos y gracias por leer.  
6  Programación / Programación C/C++ / [Consulta] Programa para parsear .csv en: 27 Junio 2012, 07:14 am
Hola, estoy haciendo un programita que parsea unos templates en base a un .csv y genera unos archivos de texto. Por ejemplo:
Si mi .csv es:
"hola#mundo#alegría"
y mi template es:
"[$1] [$2] hoy estoy lleno de [$3]"
el resultado seria:
"hola mundo hoy estoy lleno de alegría"
Mi problema es como encarar el procesamiento de los tokens. Bien yo podría encarar dos soluciones:

1) Hacerlo con un bucle while ((c=fgetc(archivo))!=EOF) y dentro preguntar si me tope con un '[', luego con un '$', luego con un numero y luego con un ']'. Esto claramente es una chanchada.

2) Otra solución seria leer el contenido del archivo de a trozos almacenandolo en un char* y luego usar alguna de las funciones de la librería string.h para encontrar mi token y reemplazarlo. Esta opción es mas prolija, pero si se diera que elegí leer de a 100 caracteres y en el 99vo carácter esta el carácter '[', y luego al principio del próximo string esta "$3] y ese día blablabla....". No me parsearia correctamente el token, ¡se lo saltearía!.

¿Se les ocurre una solución mejor?

Saludos y gracias por detenerse a leer.
7  Programación / Programación C/C++ / Alocacion dinamica de memoria; String, ¿Que estoy haciendo mal? en: 2 Junio 2012, 04:33 am
Hola, me ha ocurrido algo muy particular, miren el siguiente programita:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main(int argc, char** argv)
  6. {
  7. char * string = (char*) malloc (sizeof(char)*11);
  8. string[0]='q';
  9. string[1]='w';
  10. string[2]='e';
  11. string[3]='a';
  12. string[4]='s';
  13. string[5]='d';
  14. string[6]='z';
  15. string[7]='x';
  16. string[8]='c';
  17. string[9]='r';
  18. string[10]='f';
  19. string[11]='v';
  20. printf("%s\n",string);
  21. printf("%d\n",strlen(string));
  22. return 0;
  23. }

¿Porque imprime que la longitud del string en de 15, si aloque memoria para 11 elementos?
¿Porque imprime garbage en el ultimo carácter?

Se que se solucionaria agregando un '\0' al final, ¿pero C no lo agrega automaticamente al alocar la memoria?.

Disculpen mi ingenuidad, se que debe ser algo muy basico y gracias por detenerse a leer.
8  Programación / Desarrollo Web / Como hacer para redimensionar imagenes con javascript en: 7 Mayo 2012, 19:00 pm
Hola, estoy desarrollando una parte de una pagina web y me surgió un problema: La pagina consta de un slider donde se pueden ir visualizando imágenes, el slider es un código js de jquery. El problema que tengo es que, tengo que hacer que cuando uno redimensiona la ventana, maximisandola y en diferentes resoluciones el slider permanezca igual. Mas precisamente, imaginense que tienen un div de un acho x en pixels, este div contiene otros divs que son las imágenes que muestra el slider, yo me tengo que asegurar de que pase lo que pase, redimensione la pagina de cualquier manera, solo se vea una imagen y que no se vean las otras o se superpongan otras. El tema es que esta redimension se aplica tanto de forma horizontal como vertical, es decir, yo podría simplemente con js decirle al navegador que no permita hacer scrolling vertical, ¿pero que pasa si yo redimensiono la ventana y la imagen me queda cortada al medio y no puedo redimensionar?.
Ya se que parece que dijera esto muy al aire, pero para darse una mejor idea, imaginense que lo único que hace el código js, es que cuando le doy click a uno de los botones laterales, avanzar x cantidad de pixels.
Imaginense que tengo 4 imágenes de 1200 pixeles de ancho, estas imágenes son, divs de un ancho de 1200 pixeles uno al lado del otro y lo único que hace el código js es avanzar 1200 pixeles a la derecha o a la izquierda cada vez que le doy click a uno de los botones laterales. Puede ocurrir que yo agrande la ventana mas de la cuenta y vea los divs (con las imágenes) adyacentes, este es el problema que quiero solucionar, no quiero que esto ocurra.

¿Alguien se topo alguna vez con un problema asi?, ¿Que hizo?, ¿Se les ocurre algun metodo para solucionar este problema?

PD: No pretendo que me den una respuesta directa, simplemente una pista o una idea si se les ocurre algo, sino no se preocupen, gracias por detenerse a leer.

Saludos!.
9  Foros Generales / Dudas Generales / Consulta; Terminos informaticos de hoy en dia. en: 10 Abril 2012, 17:41 pm
Hola, hace poco consegui mi primer empleo formal como informático. Sin embargo en el grupo en el cual estoy trabajando algunos de mis compañeros ya tienen experiencia y ya han trabajado. Algunas veces usan términos como "code monkey",  "hardcodear" o "taser boolean", algunos de estos ya los conocía y otros son bastante auto-descriptivos. Sin embargo, ¿conocen alguna web que posea un buen diccionario de jerga informática, o jerga de ingeniería de software?. Me refiero a una web con términos pocos usuales, no de esas webs normales que te dicen que es prototipado. ¿O esto es algo que simplemente se va adquiriendo con experiencia?

Saludos y muchas gracias por detenerse a leer
10  Programación / Programación C/C++ / Consulta; ¿Que tipo de ejercicio les parece adecuado? en: 10 Abril 2012, 15:15 pm
Hola, estoy siendo colaborador en una cátedra de C y tenemos que prepararles un trabajo final a los alumnos, el trabajo final tiene que resumir todo lo visto en la cátedra. La cátedra hace una introducción muy básica de todo lo que es C, arreglos, punteros a funciones, alocacion dinámica de memoria, estructuras, tipos de datos, nos basamos en el libro de Kernighan y Ritchie. Entre todos los colaboradores y ayudantes tenemos que ir pensando un trabajo practico final, por ahora el único que se me ha ocurrido es un programa que comprima archivos usando un algoritmo sin perdida, como LZW. Sin embargo me gustaría hacer algo en donde pueda meter punteros a funciones, o algo un poquito mas interesante, cosa de romper el molde. ¿A ustedes se los ocurre algo?

PD: En los años pasados, el trabajo final era un trabajo de leer y escribir .bmp aplicandoles efectos como blur o desenfoque. Pero como les volaba demasiado el sombrero a los alumnos, lo quitaron.

Muchas gracias por detenerse a leer y saludos!
Páginas: [1] 2 3 4 5 6
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines