Programadores. El hilo de los hinformáticos profesionales como PABLOPL.

En este hilo nunca me entero de una mierda pero lo tengo en la memoria con cariño por si un día me da por empezar a probar lo de picar código.
 
He estado curioseando días atrás como esta el mundillo, y acabo de ver 2 cositas interesantes.

1-Parece ser que a los que están pagando más (lo que he leído) son los que están programando en PERl.

2-El lenguaje Ruby ha decaído bastante, esto me extraña, porque algunos foreros no hace mucho tiempo decían que estaba muy bien y que en UK estaban muy valorizados los que lo usaban, no sé si es cuestión de modas o que el mercado está tirando por otros caminos.
 
Ruby lleva un tiempo de capa caída, cierto y eso que es un lenguaje con una curva de aprendizaje no muy dura, pero creo que el que aprende de cero se va a Python.

Se sigue diciendo que los lenguajes realmente antiguos de programación top down se están pagando bien por la falta de programadores.
 
En este hilo nunca me entero de una mierda pero lo tengo en la memoria con cariño por si un día me da por empezar a probar lo de picar código.
Me parece, amigo, que poco código picarás en el sitio donde estés.
 
He estado curioseando días atrás como esta el mundillo, y acabo de ver 2 cositas interesantes.

1-Parece ser que a los que están pagando más (lo que he leído) son los que están programando en PERl.

2-El lenguaje Ruby ha decaído bastante, esto me extraña, porque algunos foreros no hace mucho tiempo decían que estaba muy bien y que en UK estaban muy valorizados los que lo usaban, no sé si es cuestión de modas o que el mercado está tirando por otros caminos.

Olvídate de modas. Java / C# y a tomar por culo, que de eso siempre hay demanda.
 
La imprevisibilidad del mercado me causa asombro y desasosiego, "la comunidad" decide cambiar de herramientas y framework, y a tomar por culo, a cambiar y vender/aprender otra cosa.
Son peores los programadores que los políticos.
 
Que tal amiguets. Voy a exponeros un temilla bastante simple pero que me da reparo tocar por eso de que para el código soy un puto matado.

Contexto (no es vital leerlo):

Tienda Prestashop con muchos productos desactivados, invisibles para los usuarios, pero que Google Search Console detecta como un montón de errores 404, y eso repercute negativamente en el SEO. Me propuse arreglarlo.

No es posible gastar dinero en solucionarlo, por ejemplo comprando algún módulo que resuelve estas cosas, ni una actualización a la versión 1.7 que por defecto ya da opciones para evitar lo que explico a continuación.

Prestashop 1.6 tiene en la configuración de cada producto un botoncito para desactivarlo, en caso de que no quieras que se vea en la tienda con un cartelito que ponga "sin stock", o algo parecido. El problema es que este botoncito lo que hace es quitar el producto de la vista de los clientes, pero los roboces de Google opinan que eso es un 404, lo cual en su opinión es malo.

Al desactivar el producto se muestra una nueva elección; elegir entre un 404, un 301 (redirección permanente) o un 302 (redirección temporal), y bajo estas dos últimas una casilla para que elijas un producto al que redireccionar en caso de que el producto sea desactivado en algún momento. Es decir, Presta 1.6 permite evitar un 404 con un 301/302 que redirige a los robots a un producto activado (o a un cliente que por alguna razón conserve la URL de ese producto que ya no esta disponible), pero no a un menú o categoría, que parece lo más lógico.

producto_relacionado.JPG


Entonces busqué una solución y la encontré en el siguiente link:


Que a su vez dirige a otro link en el que un usuario se queja de este problema y otro le explica claramente como solucionarlo modificando un archivo.


Así que yo voy y sigo los pasos del segundo link. Sustituyo un código por otro, y de esta forma al seleccionar una redirección 301/302 en TODOS los productos de la tienda, incluidos los futuros, evito que los clientes vean los productos desactivados y también que los roboces de Google vean errores 404.

DevotedSeriousButterfly-size_restricted.gif


[fin del contexto]

Lo que pasa ahora es que todos los productos presentes y futuros tienen por defecto la redirección 404, que según el código facilitado en el link sigue dando su resultado original (404=mal para el SEO). Cambiar manualmente cada producto a la redirección 301/302 ofrece un resultado satisfactorio, pero habría que cambiarlo manualmente en todos los productos, lo cual es disparatado porque son cientos.

Además puede haber problemas que me vienen a la mente como, por ejemplo, que cinco productos desactivados estén redireccionados a un sexto producto activo, y este se desactive en el futuro. Si este producto sigue teniendo una dirección 404 los roboces detectaran error 404 no en una URL, sino en seis.

Dado que otras personas gestionan los productos de esta tienda y paso de andar explicándoles como hacer las cosas, lo ideal sería que el 404 (que es la opción por defecto en todo el stock y por supuesto en los productos que se creen en el futuro) también redireccionase a la categoría madre.

Por lo tanto:

Código:
switch ($this->product->redirect_type)
                    {
                        case '301':
                            header('HTTP/1.1 301 Moved Permanently');
                            header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default));
                            exit;
                        break;
                        case '302':
                            header('HTTP/1.1 302 Moved Temporarily');
                            header('Cache-Control: no-cache');
                            header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default));
                            exit;
                        break;
                        case '404':
                        default:
                            header('HTTP/1.1 404 Not Found');
                            header('Status: 404 Not Found');
                            $this->errors[] = Tools::displayError('This product is no longer available.');
                        break;
                    }

Como este código solo se aplica a productos desactivados e invisibles para cualquier humano, y no a otras páginas que pudieran arrojar un 404 visible, supongo que no voy a causar ningún problema si sustituyo el código del case '404' por el código del case '301' o case '302', de forma que las tres redirecciones den el mismo resultado de mandar a los roboces de Google a las categorías que los alojan.

El caso es que sé leer el código pero no me atrevo a modificarlo sin la opinión de alguien que controle un poco.
 
Última edición:
Que tal amiguets. Voy a exponeros un temilla bastante simple pero que me da reparo tocar por eso de que para el código soy un puto matado.

Contexto (no es vital leerlo):

Tienda Prestashop con muchos productos desactivados, invisibles para los usuarios, pero que Google Search Console detecta como un montón de errores 404, y eso repercute negativamente en el SEO. Me propuse arreglarlo.

No es posible gastar dinero en solucionarlo, por ejemplo comprando algún módulo que resuelve estas cosas, ni una actualización a la versión 1.7 que por defecto ya da opciones para evitar lo que explico a continuación.

Prestashop 1.6 tiene en la configuración de cada producto un botoncito para desactivarlo, en caso de que no quieras que se vea en la tienda con un cartelito que ponga "sin stock", o algo parecido. El problema es que este botoncito lo que hace es quitar el producto de la vista de los clientes, pero los roboces de Google opinan que eso es un 404, lo cual en su opinión es malo.

Al desactivar el producto se muestra una nueva elección; elegir entre un 404, un 301 (redirección permanente) o un 302 (redirección temporal), y bajo estas dos últimas una casilla para que elijas un producto al que redireccionar en caso de que el producto sea desactivado en algún momento. Es decir, Presta 1.6 permite evitar un 404 con un 301/302 que redirige a los robots a un producto activado (o a un cliente que por alguna razón conserve la URL de ese producto que ya no esta disponible), pero no a un menú o categoría, que parece lo más lógico.

Ver el archivos adjunto 63957

Entonces busqué una solución y la encontré en el siguiente link:


Que a su vez dirige a otro link en el que un usuario se queja de este problema y otro le explica claramente como solucionarlo modificando un archivo.


Así que yo voy y sigo los pasos del segundo link. Sustituyo un código por otro, y de esta forma al seleccionar una redirección 301/302 en TODOS los productos de la tienda, incluidos los futuros, evito que los clientes vean los productos desactivados y también que los roboces de Google vean errores 404.

DevotedSeriousButterfly-size_restricted.gif


[fin del contexto]

Lo que pasa ahora es que todos los productos presentes y futuros tienen por defecto la redirección 404, que según el código facilitado en el link sigue dando su resultado original (404=mal para el SEO). Cambiar manualmente cada producto a la redirección 301/302 ofrece un resultado satisfactorio, pero habría que cambiarlo manualmente en todos los productos, lo cual es disparatado porque son cientos.

Además puede haber problemas que me vienen a la mente como, por ejemplo, que cinco productos desactivados estén redireccionados a un sexto producto activo, y este se desactive en el futuro. Si este producto sigue teniendo una dirección 404 los roboces detectaran error 404 no en una URL, sino en seis.

Dado que otras personas gestionan los productos de esta tienda y paso de andar explicándoles como hacer las cosas, lo ideal sería que el 404 (que es la opción por defecto en todo el stock y por supuesto en los productos que se creen en el futuro) también redireccionase a la categoría madre.

Por lo tanto:

Código:
switch ($this->product->redirect_type)
                    {
                        case '301':
                            header('HTTP/1.1 301 Moved Permanently');
                            header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default));
                            exit;
                        break;
                        case '302':
                            header('HTTP/1.1 302 Moved Temporarily');
                            header('Cache-Control: no-cache');
                            header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default));
                            exit;
                        break;
                        case '404':
                        default:
                            header('HTTP/1.1 404 Not Found');
                            header('Status: 404 Not Found');
                            $this->errors[] = Tools::displayError('This product is no longer available.');
                        break;
                    }

Como este código solo se aplica a productos desactivados e invisibles para cualquier humano, y no a otras páginas que pudieran arrojar un 404 visible, supongo que no voy a causar ningún problema si sustituyo el código del case '404' por el código del case '301' o case '302', de forma que las tres redirecciones den el mismo resultado de mandar a los roboces de Google a las categorías que los alojan.

El caso es que sé leer el código pero no me atrevo a modificarlo sin la opinión de alguien que controle un poco.

¿No te vale esto?


Así por defecto ya te haría el 301.
 
Rhodium, amante, ese link es el primero que yo he puesto. Eso ya lo he hecho. Después de hacerlo es cuando surge el problema en el que me hallo.

Pero has puesto un trozo de código, me refiero a esto de más arriba que tendrías que cambiarlo también:

Código:
/************************************
        Cuando desactivamos un producto, en lugar de un 404 hacemos un 301              
        **************************************/
        //$this->product->redirect_type = '404';
        $this->product->redirect_type = '301';
                    }

Así por defecto ya no haría un 404 al desactivar cualquier producto.
 
Pero has puesto un trozo de código, me refiero a esto de más arriba que tendrías que cambiarlo también:

Código:
/************************************
        Cuando desactivamos un producto, en lugar de un 404 hacemos un 301             
        **************************************/
        //$this->product->redirect_type = '404';
        $this->product->redirect_type = '301';
                    }

Así por defecto ya no haría un 404 al desactivar cualquier producto.

Hostia puta :121: tienes razón. Me había empeñado en centrarme en el código del otro link y se me ha pasado por alto completamente esa linea.

Muchas gracias Rhodi. Si no me lo dices ahí me quedo con toda mi cara de bobo. Lo he probado antes de venir a responderte y funciona. Asunto resuelto.

Gracias!

edit: joder, es que soy así para todo. La de veces que mi jefe me ha dicho que revise bien los documentos que le tengo que mandar y se me pasan por delante de los ojos cagadas monumentales sin que me entere. Menos mal que soy competente para otras cosas.
 
Yo me he comprado el starter newbie Pack de arduino uno R3.
Soy hacker.


Alguien me recomienda alguna guía guapa?
 
¿Como estos? Bueno, más bien estos tienen pinta de estafadores:
6494.webp


Screenshot_20200705-082738_1.webp


¿Sabes si es relativamente fácil (para el que sepa) hacer esas cosas, como trincar el Wasap, caralibro, IG, etc? Un conocido informático me dejó caer que sí, pero fue hace muchos años. ¿ @Rhodium ? @miliu?

Pensé abrir hilo sobre esto pero imagino que no se podrá hablar de estas cosas con detalle en foros públicos.
 
¿Como estos? Bueno, más bien estos tienen pinta de estafadores:
Ver el archivos adjunto 63978

Ver el archivos adjunto 63977

¿Sabes si es relativamente fácil (para el que sepa) hacer esas cosas, como trincar el Wasap, caralibro, IG, etc? Un conocido informático me dejó caer que sí, pero fue hace muchos años. ¿ @Rhodium ? @miliu?

Pensé abrir hilo sobre esto pero imagino que no se podrá hablar de estas cosas con detalle en foros públicos.

Creo que los voy a contratar para que me quiten el mal de ojo, me den una mano de pintura al pasillo y de paso que me pirateen el WhatsApp del vecino para ver las fotos guarras de su mujer.

En otro orden de cosas, piratear lo que tu dices, poder se podrá hacer, pero no será ni fácil, ni rápido ni mucho menos al alcance de cualquiera. Amén de que es delito y te pueden meter el Linux por el orto.

Yo que tu llevaría cuidado con los posts que escribes.
 
Yo de programar ni idea, solo tuve una asignatura de informática en la carrera y fue en primero. Con Visual Basic.
Me hubiese gustado alguna asignatura a mayores en algún curso posterior.

Me da la sensación, hablando desde la ignorancia, que para ser un buen programador tienes que tener una mente creativa. Los bucles, el lenguaje , etc lo aprendes , pero el tener una mente capaz de resolver problemas combinando las herramientas que existen ya debe ser otro cantar.
Tener la idea de: "Buah, y haciendo esto pero cambiando aquello, puede que sirva para que me resuelva este problema".
 
Yo de programar ni idea, solo tuve una asignatura de informática en la carrera y fue en primero. Con Visual Basic.
Me hubiese gustado alguna asignatura a mayores en algún curso posterior.

Me da la sensación, hablando desde la ignorancia, que para ser un buen programador tienes que tener una mente creativa. Los bucles, el lenguaje , etc lo aprendes , pero el tener una mente capaz de resolver problemas combinando las herramientas que existen ya debe ser otro cantar.
Tener la idea de: "Buah, y haciendo esto pero cambiando aquello, puede que sirva para que me resuelva este problema".

A mi que me enseñaron C sobre todo en FP y algo de Ensamblador que aprendí después. En FP me comentaron lo siguiente : Lo ideal es tener una mente estructurada matemáticamente , quicir no significa saber derivadas, integrales...., pero si saber como plantear un problema y los pasos para resolverlo, luego es traducir ese planteamiento de tu cabeza al lenguaje de programación en si.

Por supuesto que se es creativo escribiendo código, para empezar siemprwehay mas de una forma de resolución, ya cada uno puede adornarlo más o ser más práctico.

Y esto te lo dice uno que lleva 8 años sin escribir una linea de código :lol:
 
Última edición:
A mi que me enseñaron C sobre todo en FP y algo de Ensamblador que aprendí después. En FP me comentaron lo siguiente : Lo ideal es tener una mente estructurada matemáticamente , quicir no significa saber derivadas, integrales...., pero si saber como plantear un problema y los pasos para resolverlo, luego es traducir ese planteamiento de tu cabeza al lenguaje de programación en si.
No, si también me dijeron eso.
Que hay que tener todo ordenadito, que después te salta error y te cuesta más encontrarlo que el culo de tu novia en una orgía.
 
Hostia puta :121: tienes razón. Me había empeñado en centrarme en el código del otro link y se me ha pasado por alto completamente esa linea.

Muchas gracias Rhodi. Si no me lo dices ahí me quedo con toda mi cara de bobo. Lo he probado antes de venir a responderte y funciona. Asunto resuelto.

Gracias!

edit: joder, es que soy así para todo. La de veces que mi jefe me ha dicho que revise bien los documentos que le tengo que mandar y se me pasan por delante de los ojos cagadas monumentales sin que me entere. Menos mal que soy competente para otras cosas.

Las redirecciones 404 y 30x deberías usarlas única y exclusivamente cuando A) quieras dar de baja un producto definitivamente en tu web o B) tengas enlaces externos apuntando a una URL tuya con mucho tráfico y necesites renombrar esa URL.

Haciendo y deshaciendo redirecciones continuamente vas a tener las SERPs por los suelos porque los robocs de Google van a fundirse todo tu crawl budget tratando de indexar tu estructura de URLs.

Lo recomendable es que si un producto está sin stock temporalmente siga conservando su URL y sus enlaces desde otras partes del sitio web. Para no marear al usuario, haz que los productos sin stock aparezcan al final de las páginas de categoría. Fíjate en el ejemplo de pccomponentes, que tiene mucho producto sin stock, pero que no tiran una URL ni borran un enlace jamás.


Yo de programar ni idea, solo tuve una asignatura de informática en la carrera y fue en primero. Con Visual Basic.
Me hubiese gustado alguna asignatura a mayores en algún curso posterior.

Me da la sensación, hablando desde la ignorancia, que para ser un buen programador tienes que tener una mente creativa. Los bucles, el lenguaje , etc lo aprendes , pero el tener una mente capaz de resolver problemas combinando las herramientas que existen ya debe ser otro cantar.
Tener la idea de: "Buah, y haciendo esto pero cambiando aquello, puede que sirva para que me resuelva este problema".

Después de programar holamundos en las escuelas te suelen enseñar estructuras de datos y algoritmos, y más adelante patrones de desarrollo de software. Más que ser creativo es haber empollado y saber cuándo aplicar un patrón u otro. Está todo resuelto en stackoverflow. Vivimos en la sexta iteración de Matrix.
 
A mi que me enseñaron C sobre todo en FP y algo de Ensamblador que aprendí después. En FP me comentaron lo siguiente : Lo ideal es tener una mente estructurada matemáticamente , quicir no significa saber derivadas, integrales...., pero si saber como plantear un problema y los pasos para resolverlo, luego es traducir ese planteamiento de tu cabeza al lenguaje de programación en si.

Por supuesto que se es creativo escribiendo código, para empezar siemprwehay mas de una forma de resolución, ya cada uno puede adornarlo más o ser más práctico.

Y esto te lo dice uno que lleva 8 años sin escribir una linea de código :lol:

Por eso en la carrera tiene importancia el tema de la lógica matemática, no sólo porque no hay otra manera de manejarte con unos y ceros que las álgebras de boole, si no porque realmente es la manera de estructurar el pensamiento y de discernir si empiezas desde planteamientos válidos para llegar a soluciones válidas o no, como hacen nuestros políticos que parten de premisas falsas para construir un discurso lógico pero falso, y que es algo que @ilovegintonic ha comentado también alguna vez, que no sé si en sus estudios ha tocado las matemáticas, pero parece intuir al menos de manera correcta cómo funciona toda la lógica matemática y que en la vida debería aplicarse a menudo.

Un lenguaje natural o informático esta basado en una serie de estructuras y lógicas matemáticas, hay lenguajes como el alemán mucho más estructurados que otros, pero todos obedecen a un ordenamiento matemático. En un juicio una abogada pasándose de lista me dijo aquello de que si no le entendía lo que me preguntaba que lo dijese y yo le contesté que aparte de que lo que me decía era de un cretinismo antológico, no sólo entendía lo que me decía, si no que que probablemente era el único de la sala que entendía las estructuras sobre las que se basaban sus argumentos falsos, las estructuras matemáticas sobre las que se basaba el lenguaje en el que me estaba formulando la pregunta y no sólo eso, sino que se lo podía explicar mediante grafos matemáticos. No me ayudó en nada la chulería, pero visto el nivelazo intelectual del gineceo allí formado por fiscal(a), jueza, abogadas y procuradoras pues al menos les dije en la cara lo analfabetas funcionales que podían llegar a ser.

Las matemáticas son la base de todo nuestro pensamiento, es en lo que se basa TODO en nuestro universo y la única manera de poder explicárnoslo es mediante ellas. Por eso son tan importantes en informática, porque además estás tratando con máquinas tontas pero muy listas, con una capacidad de cálculo brutal en operaciones muy sencillas, que no dejan de ser la adición, sustracción y otra serie de operaciones lógicas (XOR, etc) A partir de esas pocas operaciones puedes montar un universo entero.
 
¿Como estos? Bueno, más bien estos tienen pinta de estafadores:
Ver el archivos adjunto 63978

Ver el archivos adjunto 63977

¿Sabes si es relativamente fácil (para el que sepa) hacer esas cosas, como trincar el Wasap, caralibro, IG, etc? Un conocido informático me dejó caer que sí, pero fue hace muchos años. ¿ @Rhodium ? @miliu?

Pensé abrir hilo sobre esto pero imagino que no se podrá hablar de estas cosas con detalle en foros públicos.
@Kramer, todos los sistemas operativos tienen puertas traseras y bugs que encontrar y explotar, pero realmente no estoy nada puesto en esos temas, supongo que como todo se podrá buscar vulnerabilidades, pero dudo que sea fácil y lo haga cualquiera, debes de tener buenos conocimientos de cómo funciona la herramienta de turno.
 
Gracias por las respuestas, era simple curiosidad. Fácil ya daba por hecho que no debe ser, me refería para el que sepa. Teniendo acceso al ordenador o teléfono ya vi que no es complicado meter un programa espía para ver absolutamente todo :shock:

El conocido que me lo refirió sé que estaba en Teléfono cobrando sueldazo, manco de la informática no debe ser, a ver si doy con él y le pregunto que me cuente mejor.

Vi varias noticias que hablan de pasada sobre el tema, parece que se hace mucho de forma aleatoria para pedir 200$ aprox. por recuperar la cuenta, y mucha gente los paga.


Corto el rollo.
Salud.
 
Última edición:
Si tienes acceso al terminal evidentemente es mucho más fácil, pensaba que hablabas de explotar vulnerabilidades o tratar de romper una cuenta, ahí está más complicado.
 
Por eso en la carrera tiene importancia el tema de la lógica matemática, no sólo porque no hay otra manera de manejarte con unos y ceros que las álgebras de boole, si no porque realmente es la manera de estructurar el pensamiento y de discernir si empiezas desde planteamientos válidos para llegar a soluciones válidas o no, como hacen nuestros políticos que parten de premisas falsas para construir un discurso lógico pero falso, y que es algo que @ilovegintonic ha comentado también alguna vez, que no sé si en sus estudios ha tocado las matemáticas, pero parece intuir al menos de manera correcta cómo funciona toda la lógica matemática y que en la vida debería aplicarse a menudo.
En la puta vida he estudiado matemáticas, Hulio. Mi último contacto con ellas fue en COU, y llevaban atragantándoseme desde séptimo de EGB. Al igual que la física o la química, la mierda de profesores que tuve en el colegio y en el instituto enseñándome matemáticas me hicieron huir de ellas como de la peste.

Otra cosa es que sepa identificar sofismas y a sofistas de mierda como stavroguin11, pero eso se debe a la lucidez que me hace ver las trampas y la mentira donde otros, más ciegos, ven lógica y la confunden con verdad, o ven coherencia interna y la confunden con verdad. Que un discurso tenga coherencia no implica que sea cierto. La guerra de las galaxias tiene lógica interna, coherencia interna, y no por ello son hechos ciertos. Y ver esto, querido amigo, es independiente de los estudios: anda que no habrá matemáticos que se coman con patatas discursos coherentes internamente pero falsos de pe a pa.
 
Arriba Pie