Nueva pregunta

Pregunta:

Fecha: 07-12-2015 08:49:47 (En Español)

No es el lenguaje, es el programador [Aporte][Nota][Resuelta]

Hola comunidad,
En esta ocasión quisiera compartir con ustedes un rant respecto a PHP.
Como bien sabemos hace apenas unos días se liberó la versión 7 de PHP. No hubo gran alboroto ni festejos, fue algo muy discreto pero muchas organizaciones, desarrolladores y otros estuvieron al pendiente del release.
Entre muchos de los comentarios que se sucitaron hubo uno que me molestó bastante que en pocas palabras mencionaba:

"No entiendo por qué utilizar uno de los lenguajes más inseguros de la actualidad"

La respuesta de muchos fue más que obvia y es precisamente el título de este aporte:

"No es el lenguaje, es el programador"

De nueva cuenta hoy me compartieron el siguiente enlace que habla de seguridad en los lenguajes.

No sé el nivel de cada uno de los que participamos en la comunidad pero hay algo que tenemos que tener claro. Un lenguaje es tan seguro o inseguro como la gente que lo utiliza.

PHP no es inseguro, son las aplicaciones desarrolladas las inseguras.

Por qué? Bien, PHP tiene una curva de aprendizaje muy pequeña y eso a he permitido que mucha gente a la que se le presenta el lenguaje comience a arrojar código de inmediato creyendo que ya es un desarrollador. Bajan un XAMP, LAMP o WAMP y listo. Están convencidos de que ya son full stack developers y lo agregan a su currículum.

Es como aprender a andar en bicicleta y de inmediato creer que ya puedes conducir una moto.

Cuando empiezan a crear sus primeros archivos están llenos de malas prácticas, código inseguro, mala utilización de recursos, pobre o nula implementación de patrones de diseño, etc. y terminan con un producto de la misma mala calidad que quien lo desarrolló. Todo esto se suma para tener una aplicación que funciona pero que cualquier lammer con sueño de sentirse hacker puede explotar.

No generalizo pero hay muchos que aprenden 3 cosas de PHP y ya no estudian, no escuchan consejos y no se abren a aprender de los demás. Esas 3 prácticas son la clave segura de fracasar como profesional. Conforme siguen desarrollando apps siguen introduciendo errores y dándole mala fama al lenguaje.

Esa mala fama se expande y se ve reflejada en artículos y comentarios como el que les compartí. Esto impacta en empresas serias y por lo tanto en los desarrolladores del lenguaje.
Si el lenguaje está catalogado como malo, sus desarrolladores seguramente son malos y no merecen una paga tan buena como aquellos que desarrollan en Java, C, Javascript u otros.
Si las empresas grandes ven a PHP como un lenguaje inseguro no lo adoptarán, no habrá gran inversión en el mismo ni en los desarrolladores y los mismos desasrrolladores verán sus ingresos limitados porque su nivel siempre será considerado por debajo de todos los demás.

Por favor, estudien, lean, aprendan inglés, lean la documentación, aprendan de sistemas operativos, POO, patrones de diseño, arquitectura de sistemas, protocolos de comunicación web, arquitectura de base de datos, hagan buenas preguntas, antes de preguntar investiguen, etc.

De verdad que todos nos beneficiamos de que estemos al mismo nivel y repito lo que dice el título:

"No es el lenguaje, es el programador"

Saludos.
Etiquetas: Aporte - Empezar a programar - La Comunidad - Mejores Prácticas - Nota - Opinión - PHP - PHP Avanzado - PHP7 - Seguridad Votos: 13 - Respuestas: 9 - Vistas: 26 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 07-12-2015 09:07:26 No generalizo pero hay muchos que aprenden 3 cosas de PHP y ya no estudian, no escuchan consejos y no se abren a aprender de los demás. Esas 3 prácticas son la clave segura de fracasar como profesional.

    Muy cierto, concuerdo con vos. Tendre que esforzarme mas!


    Muchas gracias por tu post y por tu punto de vista de como mejorar dia a dia.

    ¡Saludos!
      Votos: 3 - Link respuesta
     
  • Fecha: 07-12-2015 10:44:49 Buen post ernesto a mi parecer tienes razon en decir que

    "No es el lenguaje, es el programador"

    Como en todo lugar va existir personas que van a realizar malas practica al momento de programar pero no siempre son todos , y no por algunas personas vamos a dañar al lenguaje de programacion que es PHP

    Desde mi punto de vista, existe alternativas para que la aplicacion q esta desarrollada en PHP contrareste los puntos criticos

    Usar framework
    Como se save maneja un entorno (MVC)

    - Zend framework
    - Laravel
    - Codeigniter

    Utilizar JSON (Intercambio de datos cliente - servidor (Consume menos recursos))

    Utilizar Prepare Statement (Evitar inyeccion SQL)

    Utilizar Ajax (Permite refrescar una parte del sistema evitando asi volver a cargar todo , se puede usar jquery,angular)

    Maquetacion con div no tablas hace que la web sea menos pesado

    Crear indexes en las tablas (Agiliza las busqueda en la bd)


    PHP es unos de los lenguajes que poco a poco a ido escalando puesto y llegar a hacer unos de los lenguaje con mas demanda (Peru) , no se si en sus paises tambien pero aqui en peru es muy demandado Y OJO NO ES PORQUE SE PAGA POCO AL DESARROLLADOR.

    Saludos
      Votos: 6 - Link respuesta
     
  • Fecha: 07-12-2015 11:17:05 Aqui te voy a contradecir Juan Quinto Maquetacion con div no tablas hace que la web sea menos pesado HTML5 tiene su semantica para la maquetación, tambien ayuda al SEO. Aqui creo que en argentina son fuerte .NET y Java(Aclaro no trabajo todavia)


    ¡Saludos!
      Votos: 3 - Link respuesta
     
  • Fecha: 07-12-2015 13:01:23 HTML5 tiene su semantica para la maquetación lo se
    header
    nav
    aside
    article
    footer,
    etc

    cuando me referi a usar div y no tablas seguramente me exprese mal yo mas me oriente a que muchos cuando maquetan form lo hacen con tablas

    expongo ejemplo login

      <form action="" method="post">
            <table>
              <caption>Formulario Login</caption>
                <tr>
                  <td>Ingrese Login : </td>
                  <td><input type="text"></td>
                </tr>
                  <tr>
                  <td>Ingrese Password : </td>
                  <td><input type="password"></td>
                </tr>
                 <tr>
                  <td colspan="2"><input type="button" value="Ingresar"></td>
                </tr>
            </table>
       </form>
    



    es muy distinto a esto expongo codigo

      <form action="" method="POST" role="form">
         <legend>Formulario Login</legend>
         <div class="form-group">
           <label for="">Ingrese Login</label>
           <input type="text" class="form-control" id="">
         </div>
          <div class="form-group">
           <label for="">Ingrese Password </label>
           <input type="text" class="form-control" id="">
         </div>
         <button type="submit" class="btn btn-primary">Ingresar</button>
       </form>
    




    maquetar con tablas es mas pesado a que hacerlo div


    aqui te voy a contradecir
    HTML5 tambien ayuda al SEO


    No tiene nada que ver semantica con el seo

    una cosa es que tu web se vea bien en todos lo navegadores eso gracias a la semantica y otro es que cumpla con las reglas 3wc (AQUI ENTRA ESO DE LA SEMANTICA NO EL SEO)


    por un lado
    tambien tiene que ver los cierres de la etiqueta

    no es igual esto

       <input type="text" class="form-control" id="">
    


    con esto

       <input type="text" class="form-control" id="" />
    


    y eso te lo dice 3wc


    El seo no tiene nada que ver con HTML5 gracias a la semantica logras que tu web se vea bien en todo los navegadores dejo link para validar

    link para testear si tu web cumpli con los requisitos

    https://validator.w3.org/


    El seo su mismo siglas lo dice search engine optimization

    para lograr al posicionamiento interviene muchas cosas
    desde la url amigables , los img con sus respectiva alt , title , title de la web(<title>texto</title>) , keyworks , description

    title , keyworks , description (Meta tags para las arañas)

    tambien intervienen los XML Sitemap , ROR Sitemap ayuda para que cuanda barra la araña de google ya no necesite ir por enlaces y indexe tus url , basta que tu pagina tenga esto XML Sitemap , ROR Sitemap la araña de google van directamente a los enlace y los indexa recuerda q a mas link que tengas te rankeas en los buscadores

    otro punto que ayuda , es evitar que tengas enlace que no lleven nada recuerda que las arañas buscan los

    <a href="javascript:void(0)" onclick="panel()">enlace</a>


    si tienes enlaces rotos , enlace que llaman a funciones javascript es recomendable que uses "rel"

     <a rel="nofollow" href="pagina.php">Enlace</a> 
    


    y muchas cosas mas

    saludos
      Votos: 9 - Link respuesta
     
  • Fecha: 08-12-2015 05:21:22 Ahora asi Juan, gracias por la data y corregirme en mi error con el tema del SEO.

    ¡Saludos!
      Votos: 2 - Link respuesta
     
  • Fecha: 08-12-2015 08:34:42 De nada gonzalo, para eso estamos. Saludos   Votos: 2 - Link respuesta
     
  • Fecha: 08-12-2015 13:22:52 Me apunto, sinceramente Yo inicie programando como pensaba que se hacía, en la universidad poco y nada me enseñaron. Ahora el cambio es duro pero a la vez gratificante para desarrollar aplicaciones con buenas prácticas y escalables.   Votos: 3 - Link respuesta
     
  • Fecha: 09-12-2015 07:06:09 Partiendo por el título (y gracias Ernesto, que "el hábito no hace al monje" y menos en programación), quiero entrar en el tema de lo dicho y escrito por Juan y Gonzalo.

    Partiendo por el uso de framework, no cabe duda que facilitan el trabajo del programador (y abaratan costos al cliente final complicando la vida a los freelance) pero en realidad ¿son más seguros o se exponen a un mayor interés por traspasar las vulnerabilidades? Me gusta estudiar sus códigos, pero lo intuitivo, lo que yo pueda crear, aun pudiendo ser menos seguro, ¿no puede ser más "fiable"? Podría poner ejemplos. Claro está que una contraseña "1234" o "abcd" no muestra ninguna intuición.

    Uso de tablas: Son más pesadas al levantar una página. CSS3 las tiene superadas suplantándolas por <div>. HTML5 las mantiene, porque, si bien sería obsoleto construir una página mediante tablas (antes del 2000 se hacían las páginas completas), siguen siendo útiles puntualmente para diversos usos. Y W3C las sigue validando.
    Les aclaro que ¡Odio las tablas!

    Del tema SEO, las etiquetas HTML5 y la validación W3C: está claro que son buenas prácticas y se ayudan. Es importante tenerlo en cuenta. De todos modos quisiera entrar en la mente de quienes crean los algorritmos de los robots de los buscadores. Si Google Chrome (se estima que representa el 90 %) utiliza miles de valores, ¿cuánto de ello representa lo expuesto?. Noticias de última hora, redes sociales, ...

    Lo dicho. El programador está (debe estar) sobre el programa, como el monje por encima del hábito que lo viste.
      Votos: 3 - Link respuesta
     
  • Fecha: 17-12-2015 16:00:09 Veo que hay muchas personas aquí que confunden el backend con el frontend, si bien ambos forman parte del proceso de desarrollo de software muchos no saben distinguirlo.   Votos: 3 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com