En este blog hablo de diversos temas de tecnología e IT, hago tutoriales, comento noticias, libros y todo lo que tenga que ver con el mundo geek

Translate

Mostrando entradas con la etiqueta open source. Mostrar todas las entradas
Mostrando entradas con la etiqueta open source. Mostrar todas las entradas

sábado, 25 de enero de 2020

Apuntes SpecialPrice Prestashop

enero 25, 2020 0



Hola estimado lector, hoy estoy aquí para dejar ciertos apuntes acerca de cómo crear un specialprice en PrestaShop, por aquí dejo los apuntes, de cómo lo he hecho, espero que os guste y que os sea de ayuda o de gran utilidad.



/**
 * @param int $id_product
 * @param int $id_product_attribute si 0 para todos los atributos
 * @param float $reduction_value ie. 0.07 significa 7% cuando porcentaje, como $reduction_type y 10.00 significa 10 cuando es "amount"
 * @param string $reduction_type puede ser 'percentage' o 'amount'
 * @param int $tax if set to 1 then price of specific price is brutto if 0 then netto
 * @param string $from_date is 'YYYY-MM-DD HH:MM:SS'
 * @param string $to_date is 'YYYY-MM-DD HH:MM:SS'
 * @param int $from_quantity desde qué cantidad
 * @param int $id_shop 0 para todos
 * @param int $id_shop_group 0 para todos
 * @param int $id_currency 0 para todos
 * @param int $id_country 0 para todos
 * @param int $id_customer 0 para todos
 * @param int $price es siempre -1
 * @param int $from_quantity por defecto es 1
 * @return int id ID del producto creado
 */



    $specificPrice = new SpecificPrice();
    $specificPrice->id_product = (int)$id_product;
    $specificPrice->id_product_attribute = (int)$id_product_attribute; // if 0 then for all attributes

    $specificPrice->reduction = $reduction_value; // 7% is 0.07
    $specificPrice->reduction_type = $reduction_type;
    $specificPrice->reduction_tax = $tax;
    $specificPrice->id_shop = $id_shop;
    $specificPrice->id_currency = $id_currency;
    $specificPrice->id_country = $id_country;
    $specificPrice->id_group = $id_shop_group;
    $specificPrice->id_customer = $id_customer;
    $specificPrice->price = $price;
    $specificPrice->from_quantity = $from_quantity;
    $specificPrice->from = $from_date;
    $specificPrice->to = $to_date;

    $specificPrice->add();
    $specificPrice->save();
    $addedPriceId = $specificPrice->id;

    return $addedPriceId;


Pues nada hasta aquí mi post de hoy, espero que os haya sido de utilidad, que hayáis aprendido algo, sin más me despido, un saludo y hasta la próxima.


FUENTE

https://www.prestashop.com/forums/topic/649790-specific-price-through-code-programatic-way/ usuario hakeryk2

miércoles, 8 de enero de 2020

¿Que es MASM32? Primer hola mundo en assembler

enero 08, 2020 0



Hola estimado lector, hoy voy a hablar de un  programa para escribir en lenguaje ensamblador, el lenguaje de programación de más bajo nivel, aquí voy a explicar hasta lo que he podido investigar. Decir que nunca he programado en ensamblador, aunque sí que he leído códigos en ensamblador, ya que he "debugeado" algún que otro código en C.

Para quiénes no lo sepan lo que hacen el compilador de C, es traducir nuestro código a Ensamblador, y es realmente curioso, pero por ejemplo Delphi traduce nuestro código delphi a C, que a su vez traduce a ensamblador.

Lo básico es lo siguiente:

.386                                    ; Le decimos a MASM32 que use Intel 80386
.model flat, stdcall         ; Esto es necesario declararlo
option casemap:none       ; ¿Son las etiquetas sensibleas a mayúsculas y minúsculas?

include     kernel32.inc      ; Esta librería es obligatoria para que funcione nuestra aplicación
includelib kernel32       ; Aquí enlazamos la librería especificada anteriormente


.Data                                   ; Aquí ponemos datos inicializados

.Data?                                 ; Aquí especificamos datos no inicializados

.Const                                  ; Aquí escribimos las contantes

.Code                                  ; Aquí escribimos nuestre código
Start:                                    ; Especifica el inicio de nuestro código

End Start                             ; Especifica fin de nuestro código


Nuestro primer hola mundo:

.386                                    ; Le decimos a MASM32 que use Intel 80386 
.model flat, stdcall         ; Esto es necesario declararlo
option casemap:none       ; ¿Son las etiquetas sensibleas a mayúsculas y minúsculas?

include    include\kernel32.inc      ; Esta librería es obligatoria para que funcione nuestra aplicación 
includelib lib\kernel32       ; Aquí enlazamos la librería especificada anteriormente
include include\windows.inc
include include\user32.inc
includelib lib\user32.lib

.Data                                   ; Aquí ponemos datos inicializados

MsgBoxText db "Hola mundo",0

MsgBoxCaption db "Primer Hola Mundo",0

.Data?                                 ; Aquí especificamos datos no inicializados
.Const                                  ; Aquí escribimos las contantes
.Code                                  ; Aquí escribimos nuestre código
Start:                                    ; Especifica el inicio de nuestro código

invoke MessageBox, NULL, Addr MsgBoxText, Addr MsgBoxCaption, MB_OK

invoke ExitProcess,0

End Start                             ; Especifica fin de nuestro código


Pues nada hasta aquí mi post de hoy, seguiré posteando según vaya investigando.


miércoles, 25 de diciembre de 2019

Problemas con IoT, juguetes y dispositivos móviles

diciembre 25, 2019 0


Hola estimado lector, hoy quería hablar sobre los peligros de muchos juguetes, especialmente, los robots o DIY, que actualmente se pueden adquirir en cualquier juguetería por menos de 100€.

Estos juguetes hay que tener cuidado ya que van por Internet, y si no tomamos las debidas precauciones, podemos ser vigilados en cualquier momento, de forma no autorizada. Estás formas de hackeo no son nada nuevo, hace mucho que se recomienda a los usuarios tapar la webcam del portátil con un trozo de papel o cinta aislante.

Los sistemas IoT tienen la característica, que pese a ser objetos que suelen pedir claves o credenciales API, estos pueden ser hackeables como cualquier medio electrónico conectado a Internet.

Como precauciones principales que debemos de tener, es tener siempre un buen antivirus instalado en nuestro equipo y móvil, no dar nuestras credenciales a nadie, e intentar apagar el juguete totalmente, cuando vayamos a dejar de usarlo.

Hasta aquí mi post de hoy, más cortito que de costumbre, espero que haya sido interesante, si es así, podéis déjamelo en los comentarios, estoy activo en mi página de Facebook y Twitter. Sin más me despido un saludo y hasta la próxima 😁😁.

JDBC con base de datos Access

diciembre 25, 2019 0



Hola estimado lector, hoy voy a hablar de una tecnología, que di hace tiempo y es acerca de el uso de bases de datos access en Java. Para quien no lo sepa desde Java podemos acceder a una BDD, de access, todo se hace mediante el API ucanaccess, que el juego de sus letras se podría traducirse como "tú puedes acceder".

Para ello primero hay que configurar la base de datos de la siguiente forma, que aparece en los siguientes pasos:


  1. Archivo->Opciones->Criterio de ordenación de una nueva base de datos->General-Heredado
  2. Herramientas de base de datos-> Compactar y reparar base de datos

Luego hay que descargar la versión .jar de nuestra API ucanaccess, y añadirlo dentro de nuestro proyecto en la carpeta .bin(si no existe crearla) y mediante NetBeans añadir las bibliotecas.

Una vez aquí, la documentación es fácil de seguir. Sí queremos hacer un select debemos escribir:

try {
            Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); /* often not required for Java 6 and later (JDBC 4.x) */

           

            Connection conn = DriverManager.getConnection("jdbc:ucanaccess://.\\Bibliooteca.accdb");
            java.sql.Statement st = conn.createStatement();

            String sql = "SELECT * FROM tabla";

            ResultSet rs = st.executeQuery(sql);
            Object[] fila = new Object[6];
            int i = 0;
            DefaultTableModel modelo = (DefaultTableModel) jTable1.getModel();
           

            while (rs.next()) {
                fila[0] = rs.getString(1);
                fila[1] = rs.getString(2);
                fila[2] = rs.getString(3);
                fila[3] = rs.getString(4);
                fila[4] = rs.getString(5);
                fila[5] = rs.getString(6);
                

                modelo.addRow(fila);

                //Sección 5
                jTable1.setModel(modelo);
                System.out.println(rs.getString(1));
//rs.getObject("ATTACH_DATA") will return an array of net.ucanaccess.complex.Attachment
            }
            
          
            /*for (ResultSet r:rs){
             System.out.println(r.getString(1));
             }*/

        } catch (Exception ex) {
            System.out.println(ex.getMessage()+"");
        }

Sí queremos hacer un insert debemos escribir:

 try {
            Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); 

            String titulo,
                    ISBN,
                    autor,
                    númerodeejemplares,
                    editorial,
                    numerodepaginas;
            titulo = jTextTitulo.getText();
            ISBN = jTextIsbn.getText();
            autor = jTextAutor.getText();
            númerodeejemplares = jTextNumDeEje.getText();
            editorial = jTextEditorial.getText();
            numerodepaginas = jTextNumDePag.getText();
        
            Connection conn = DriverManager.getConnection("jdbc:ucanaccess://.\\Bibliooteca.accdb");
            java.sql.Statement st = conn.createStatement();
            String sql = "INSERT INTO tabla VALUES ('" + titulo + "', " + ISBN + ", '" + autor + "', " + númerodeejemplares + ", '" + editorial + "', " + numerodepaginas + ")";
            st.execute(sql);
            JOptionPane.showMessageDialog(null, "Operación realizada correctamente");
            jComboBoxActIns.addItem(ISBN+"");
           
        } catch (Exception ex) {
            
            JOptionPane.showMessageDialog(null, ex.getMessage() + "", "ERROR", JOptionPane.WARNING_MESSAGE);

        }

Sí queremos hacer un update debemos escribir:

try {
            Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); /* often not required for Java 6 and later (JDBC 4.x) */

            String titulo,
                    ISBN,
                    autor,
                    númerodeejemplares,
                    editorial,
                    numerodepaginas;
            titulo = jTextTitulo.getText();
            ISBN = jTextIsbn.getText();
            autor = jTextAutor.getText();
            númerodeejemplares = jTextNumDeEje.getText();
            editorial = jTextEditorial.getText();
            numerodepaginas = jTextNumDePag.getText();

            Connection conn = DriverManager.getConnection("jdbc:ucanaccess://.\\Bibliooteca.accdb");
            java.sql.Statement st = conn.createStatement();
            String sql = "UPDATE tabla SET título = '" + titulo + "', ISBN = " + ISBN + ", autor = '" + autor + "', númerodeejemplares = " + númerodeejemplares + ", editorial = '" + editorial + "', numerodepaginas = " + numerodepaginas + " WHERE ISBN LIKE '" + ISBN + "';";
           
            st.execute(sql);
            JOptionPane.showMessageDialog(null, "Operación realizada correctamente");
            
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage() + "", "ERROR", JOptionPane.WARNING_MESSAGE);

        }

Pues hasta aquí mi tutorial de hoy, espero que os haya gustado, que hayáis aprendido algo, sin más me despido, hasta el próximo post 😁😁.

domingo, 22 de diciembre de 2019

Trabajos del Futuro; empleos en remoto

diciembre 22, 2019 0



Hola estimado lector, hoy mirando el periódico de noticias de mi localidad, 20minutos.es, había un vídeo acerca de lo que es el trabajo en remoto, que supone, y donde puedes conseguir uno(y en qué profesiones, ya que no todas se puede hacer en remoto).

Trabajo en remoto o teletrabajo, se define como trabajar desde casa, o cualquier lugar.Ahora con la era de Internet y la globalización, se está poniendo de moda, pero empleos en remotos hace tiempo que existían, un ejemplo de ello son los escritores, y alguno que otro más, pero con la era de Internet, nacen teletrabajos todos los días.

Ejemplos de teletrabajos: 


  • Programador o diseñador web
  • Diseñador gráfico
  • Editores de vídeo
  • Teleoperadores
  • Escritores de artículos
  • Teleasistencia
  • Consultoria de cualquier tipo; legal, informática, comercio, marketing, turismo, etc.

Pues estos son algunos de los ejemplos, si sabes inglés, aparte de poder dar clases particulares, también te abre cientos de puertas para el trabajo... Y también para el teletrabajo, ya que los principales websites están en inglés.

Aquí pongo algunos de los websites que puedes visitar:


  • Freelance: Aquí hay trabajos de informática, para todos los gustos, especialmente dedicado a los desarrolladores web.
  • Upwork: Es como freelance pero hay ciertos trabajos como pentesting, que solo se ofertan aquí(pidiendo por escrito que ese website es tuyo, etc,).
  • Fiveer: Aquí posteas los diferentes trabajos que quieres realizar.

En español puedes buscar en:


  • Workana: como freelance, pero orientado al público de habla hispana.
  • Milanuncios: es un rastrillo donde hay de todo, incluido ofertas de teletrabajo(solo España).

Las empresas que opten por el teletrabajo, generalmente los empleados pagan menos desplazamientos, están menos de baja, reduce los riesgos de tener accidentes laborales, también decir que este tipo de trabajo es muy difícil tener accidentes laborales fuertes. 

Cómo la otra cara de la moneda se puede también decir que existe la posibilidad de que el empresario es más propenso a cometer abusos. Un ejemplo de ello es  ya que existen muchas horas que no contabilizan, o la posibilidad de que el empleado debe de competir en precio con alguien que está en la India, esto es cuestión de posturas.


Bueno pues hasta aquí mi comentario de hoy, espero que haya alguien que me lea, si eres del 1% que ha terminado de leerme puedes escribirme un comentario abajo, sin más me despido. Un saludo y hasta la próxima 😁😁.


FUENTE

https://www.20minutos.es/videos/tecnologia/4092679-el-trabajo-en-remoto-seguira-creciendo/

sábado, 21 de diciembre de 2019

COMPOSER utilidad PHP en Linux y ahora en Windows

diciembre 21, 2019 0



Hola estimado lector, hoy quería hablar de una herramienta que nos va a facilitar el desarrollo de proyectos web. Hablo de composer, una herramienta que hasta hace poco solo funcionaba en Linux, ya está portado a Windows. Composer permite automatizar las tareas, de añadir APIS de diferentes desarrolladores a nuestro proyecto web.

Para quien no lo sepa muchas funciones de PHP o están recortadas, o bien hace falta una determinada API como guzzle (usada para los webhook). En PHP, cuando nos ponemos a trabajar en el servidor hay funciones que de un server a otro pueden cambiar, es cierto que el cambio es mínimo, que generalmente se hacen todas las aplicaciones para que sean retrocompatibles, pero esto en la práctica suele cambiar ligeramente.

Para descargar estás bibliotecas podríamos ir a GitHub, y descargar una a una los API, o usar una herramienta que descarga todas las dependencias y las enlaza en un autorun.php. Para este último caso se utiliza composer.

Para usar composer simplemente, deberemos de instalar wamp, la última versión de Visual C++, añadimos a las variables del entorno nuestro PHP.exe, y después instalamos composer, en la versión de Composer que yo instalé tenía la opción de ponerlo en las variables de entorno de forma automática, y sino lo pones de forma manual.

En el tutorial que dejo aquí en la parte de arriba dejo como instalarlo, me despido de este cortito post. Un saludo y hasta la próxima.

viernes, 20 de diciembre de 2019

Bombas Lógicas; así mantuvo un programador su trabajo

diciembre 20, 2019 0



Hola estimado lector, hoy quiero hablar acerca de un caso que he leído hace poco en Xataka, (abajo os dejaré el enlace de la noticia completa), acerca de un programador que logró hacerse imprescindible en la empresa Siemens básicamente estafando a la empresa. Y he dicho bien estafando, ya que el empleado para hacer que la empresa lo siguiera considerando alguien imprescindible, creó varias "bombas lógicas" que sólo él sabía resolver.

La automatización y el futuro ya está aquí, ya hay máquinas que pueden usar el machine learning, para juzgar casos simples, como está pasando en Letonia, ya hay asistentes que más o menos permiten que tengas una agenda llena de tareas y esta te va "guiando", correctores ortográficos y un largo etcétera.

Pues este hombre llamado Tinley, consiguió hacer que siempre fuera dispensable en la empresa, haciendo que su código de programación fallara cada cierto tiempo, y así ganar él algo, con el trabajo que él mismo generaba.

Para ello empleó lo que se llama "bomba lógica", es decir un código lleno de fallos que sólo él conocía, y que sólo él sabía reparar. Debo de decir que este tipo de fallos, se hacen con códigos que previamente han sido ofuscados, o hechos a una complejidad difícil de detectar a simple vista. Tinley hizo un software que fallara cuando pasase un tiempo o se dieran una serie de condiciones.

Las bombas lógicas son difíciles de detectar, en este caso tenían el código y aunque fuera propietario, siempre puedes considerar contratar a alguien que haga ingeniería inversa, no obstante como ya he dicho no suele ser fácil. Aquí en España una empresa hace algunos años fue condenada por usar Scripts que hicieran fallar el ordenador al cabo del tiempo.

Pues nada hasta aquí mi comentario de hoy, espero que os haya gustado, si es así, puedes seguirme en mi página de Facebook, escribirme o suscribirte a mi feedly. Un saludo y hasta la próxima.




 FUENTE
https://www.xataka.com/historia-tecnologica/caso-empleado-que-programo-fallos-periodicos-su-software-para-asi-asegurarse-tener-siempre-trabajo

lunes, 16 de diciembre de 2019

Aprende a Programar de Forma Autodidacta

diciembre 16, 2019 0



Hola estimado lector, en esta ocasión quiero comentar una noticia, que me encontré en el periódico hace algunos días, y es sobre que muchos programadores, creo recordar que alrededor del 60%, de los nuevos desarrolladores, estaban empezando a aprender a programar de forma autodidacta. Básicamente ser autodidacta consiste en descargarte un PDF, o bien a través de YouTube aprender por vídeos.

Yo aprendí a programar de una forma mixta, y es que los que habéis leído algún que otro post de los míos, yo aprendí en un instituto a distancia, es decir me daban los materiales en el instituto, un número de teléfono para llamar una vez a la semana, y me mandaban tareas online, exámenes online, y tenía obligación de participar en los foros del instituto. Al cabo de 8 meses había que presentarse a un examen presencial, en un instituto de mi comunidad autónoma.

Yo siempre digo lo mismo los estudios online NO son para todo el mundo, ya que depende de la profesión, no es lo mismo un médico que un programador), prueba de ello es que de 100 personas que se apuntan en el FP a distancia, al menos en Andalucía, (puede cambiar según FP y los módulos en cuestión que se matricule la gente), al final llegan alrededor de 10 personas, pero este no es un motivo para desmotivarse. Ser programador o desarrollador es aceptar que toda la vida vas a estar estudiando, y que nunca vas a parar de aprender.

En la programación yo recomiendo estar constantemente reciclándose, para ello, yo recomiendo plataformas de vídeos online con cursos acorde a las diferentes especialidades que existen, por ello, voy a nombrar algunos websites:


  • Udemy: Sirve para aprender prácticamente cualquier cosa en materia tecnológica, con el problema que prácticamente todos los cursos interesantes están en Inglés.
  • Platzi: Es un proyecto, de origen latino, por 250€ aprendes a programar prácticamente cualquier lenguaje de programación actual, alrededor del 70% de los alumnos tienen una mejora salarial al cabo del año.
  • Tutellus plus: Este website sirve para aprender prácticamente cualquier lenguaje o tecnología, está orientado a público tanto de España como de América-Latina.
  • YouTube: En esta aplicación popular también se emplea para aprender programación, además de cocina o montar ciertos muebles 😉.


Con este post me despido por hoy, la verdad no encuentro tiempo para dedicarle muchos post a esto, sin embargo hago lo que puedo, sin más me despido, un saludo y hasta el próximo post😁😁.


viernes, 13 de diciembre de 2019

Firefox impide que diferentes RRSS le rastreen

diciembre 13, 2019 0



Hola estimado lector, hoy me he levantado, tomado el café, y puesto a trabajar en un proyecto que me habían encomendado, cuando entro en la página de inicio de Firefox, y me aparece que a partir de ahora Facebook y demás redes sociales dejaran de seguirme ya que bloquearan los scrips de seguimiento.

Esto por un lado me parece una buena noticia, ya que es una señal que los navegadores, organizaciones, y empresas están tomándose en serio nuestra privacidad. Por otro lado pienso que esto es un "tira y afloja" entre consumidores y usuarios, ya que si Facebook o Google no nos "siguieran" dejarían de existir. ¿Porqué? Esos ingenieros que Google paga no son gratis, ni tampoco las oficinas, ni siquiera este servicio de blogger hechos en su plataforma.

Apropósito, existen cientos de extensiones de navegación que permite hacer que no te sigan, algo que es muy difícil que sea efectivo, debido a que JavaScript, presenta como principal vulnerabilidad que permite insertar fuentes de otras páginas, y esto es difícil de controlar. Es cierto que existen (o al menos imagino que no debe ser difícil implementar) cortar los .js que no sean de la misma web, pero muchos blogs tienen sus "bootstraps", y analytics en la nube(este último es la única forma de tenerlo) lo cual estás extensiones de navegación producen muchos quebraderos de cabeza.

Además de todo esto, siempre digo lo mismo, lo más vulnerable de una web reside en los JavaScript que componen la web, ya que con JavaScript es posible identificar a cualquier persona, por sistema operativo y tamaño de pantalla.

Pues nada hasta aquí mi blog de hoy, espero que os haya gustado, si es así me lo podéis dejar en los comentarios, sin más me despido, un saludo y hasta la próxima 😁😁.

miércoles, 11 de diciembre de 2019

¿Que es una licencia de software? La Licencia LGPL y GPL

diciembre 11, 2019 0



Hola estimado lector, hoy quiero hablar acerca de lo que es una licencia de software, y como a ti, cómo desarrollador , usuario, o simplemente consumidor de servicios de internet, cómo puede ser Google, Facebook o Firefox, pueden afectarte el alcance de "la licencia".

Antes de entrar hablando de los tipos de licencia, voy a definir qué es una licencia de software. Una licencia de software es un contrato entre un usuario y la empresa que te facilita el software. Este tipo de contratos se hacen para evitar litigios, y acarrear toda la responsabilidad de mal uso, al usuario que configura el software.

Los términos de todas las licencias de software aparece que el software de entrega "tal cual", y que es el usuario el que se las debe de "apañar". En las licencias no libres como la de Photoshop, Windows o Mac aparece que tampoco tienes derecho a compartirlo, ni a estudiar el código de dentro de él software. Es decir que solamente tienes derecho a usar la aplicación, y decir además que en la mayoría de las licencias de software también aparece que solo puedes usar el serial hasta 3 veces en X versión, y en únicamente tú equipo.

Conocer las licencias, es decir, leer los diferentes términos y condiciones, también te hará con el tiempo saber el porqué de ciertos escándalos, como el que comenté hace unos días de Avast. Y es que conocer los términos y condiciones nos hace libres, de saber qué quieren de nosotros, o qué usos podemos hacer de nuestra aplicación.

¿A que castigo me enfrento por vulnerar una licencia de software? Eso depende del país donde te encuentres, en España debes de pagar daños y perjuicios si has compartido el programa sin licencia (o con licencia pirata), una multa, pagar el software y... Efectivamente es un contrato, luego aquí en España el castigo suele ser de 2 años. Eso sí la empresa es lo suficientemente solvente para meterse en juicio, si es una asociación, etc. En fin me voy del tema sin querer😁😁.

Las licencias GPL es una licencia que sirve para que el usuario esté protegido, ya que la licencia permite 

  • Ejecutar la aplicación en cualquier PC sin importar el uso(puede ser personal o comercial) 
  • Leer, estudiar, modificar el programa
  • Distribuir copias de este software, Comerciar con el código
  • A diferencia de LGPL el código resultante debe de tener esta licencia.

Es interesante este tipo de licencias ya que como desarrollador nos puede facilitar la vida, debido a que crear un sistema completo es caro, y este tipo de licencias nos facilita la vida a la hora de desarrollar y monetizar cualquier proyecto.

Cabe destacar también la licencia LGPL, que permite el uso libre con restricciones a la hora de comerciar con dicho programa. Uno de los más conocidos es FFMPEG, que para que os hagáis una idea, tanto los más comerciales editores de vídeo como Pinacle o Movavi hasta el más libre Shotcut, todos comparten el mismo motor de renderizado, aparte de otros  módulos de edición de audio, etc. No incluidos evidentemente en FFMPEG.

Pues nada hasta aquí mi artículo de hoy, espero que os haya gustado, que hayan aprendido algo, sin más me despido, si tenéis algo que decirme dejármelo en los comentarios, un saludo y hasta la próxima 😁 😁.

domingo, 8 de diciembre de 2019

El Principio De Pareto En El Desarrollo Web

diciembre 08, 2019 0



Hoy quiero hablar de una de las cosas más curiosas de la vida, ya que Pareto está en gran parte de nuestra vida diaria. En este artículo hablo desde mi experiencia de 1 año y 6 meses trabajando de programador, y hablo desde mi opinión personal, que para algo es mi blog.

Lo primero que voy a definir de forma formal que es el principio de Pareto y después voy a mostrar unos cuantos de ejemplos. El principio de Pareto dice que el 20% de tus acciones, van a representar el 80% de los resultados. Por ejemplo: 

- El 20% de los reclusos, representan el 80% de todos los delitos que se comenten en un país.
- El 20% de los recursos que produce un país suele representar el 80% de los recursos.
- El 20% de los ciudadanos tiene el 80% de la riqueza de un país.

La verdad por aquí os voy a dejar un enlace en wikipedia sobre la ley 80/20, la verdad es una ley muy interesante. En cierta ocasión UTBH en una una entrevista con 7 mujeres sin piedad, hablo que alrededor del 80% de los ingresos de YouTube lo produce el 20% de canales.

En el mundo del desarrollo web se produce este fenómeno, de otra forma bastante particular, y es algo que he hablado con otros desarrolladores. Y es que en un proyecto complejo nos pasamos un 80% del tiempo leyendo código y un 20% escribiendo.

Es algo realmente curioso ya que en la mayoría de institutos, al menos los de España, se da la circunstancia que no se enseña a leer códigos de otros compañeros, así como hacer que el código se entienda entre desarrolladores.

Hace un par de semanas me encontré con un problema en PrestaShop, una aplicación web cuya documentación oficial, no incluye información de cómo hacer las cosas más complejas, y si lo quieres saber, tienes que pagar, o debes de buscarte la vida como puedas. Pues bien en una de esas leí el código PHP sin documentar de uno de los ".PHP" y logre echar a andar el proyecto.

La verdad quería comentar en este post, el principio de Pareto y como influye en la vida de los programadores. Sin más por aquí voy dejando este post, si quieres que comente alguna tecnología o algo en particular, me lo podéis dejar en los comentarios, sin más me despido, un saludo y hasta la próxima 😁😁.



lunes, 25 de noviembre de 2019

Bitcoin, Cámaras, Anonimato e Identidad

noviembre 25, 2019 0



Hola, hace poco leí en el periódico de "El País" algo que me llamó mucho la atención, y es que en Europa se pueden instalar cámaras de seguridad, pero no se puede usar software de reconocimiento facial, que que vulnera las leyes de privacidad de la UE. Ahora voy a explicar más o menos cómo funciona dicho sistema.

Antes de explicar mi opinión sobre este sistema deberemos hablar de la palabra "anónimo", ya que es una palabra bastante curiosa ya que anónimo significa "sin nombre", es decir una persona que no tiene nombre. Es curioso porque la identificación de una persona por la cara o por un hash de bitcoin, aún siendo "anónima" evidentemente no lo es, ya que sólo hay un hash de dirección de bitcoin o una persona que tengan los gestos que analiza la IA.

El sistema avanzado de inteligencia artificial, estudia los gestos, ropa, género , color del pelo, así como la altura de las diferentes personas de la calle, y estas se compara con las características de las personas que han robado, cuando la cámara ve que se repite un patrón, avisa a la policía para que pase a interrogar al sospechoso.

Con Bitcoin ocurre lo mismo, yo en la red es cierto que no doy mis datos, pero mi dirección hash está al descubierto, y puede ser perfectamente rastreable, especialmente si intento pasarlo a un Banco que está dentro del sistema monetario o a un proveedor para hacer trading de monedas.

Recordar que dentro de Bitcoin, existe una dirección pública, donde suelen estar reflejados nuestros movimientos, y una dirección privada, que sólo lo deberemos de tener nosotros.

Pues hasta aquí mi reflexión de hoy, hacía tiempo que no hacía ninguna, podéis dejarme vuestras inquietudes en los comentarios, yo los leo, aunque no siempre tengo tiempo de responder, sin más me despido, hasta la próxima chao.





lunes, 4 de noviembre de 2019

Vlog Reto Programación Las Dimensiones del Puzzle #aceptoelreto

noviembre 04, 2019 0

Como Instalar FOCA 3.4.6.1 y Extraer Metadatos

noviembre 04, 2019 0

Vlog Montando Módulo Arduino RFID RC522

noviembre 04, 2019 0

Vlog Acepto el reto! paranoico de la bolsa #aceptaelreto

noviembre 04, 2019 0

Vlog montando una placa Ali Express de 1 dolar, no funciona

noviembre 04, 2019 0

Buscar en este blog

Popular Posts

Tags

blog (408) software (267) aprender (262) apuntes sueltos (257) informatica (249) programación (238) windows (186) opinion (169) linux (168) open source (164) sistemas (153) java (87) servicios (76) YouTube (75) empresas (75) anecdotas (72) ejercicio java (57) hacking (54) arduino (48) hardware (47) seguridad (41) noticia (31) gameplay (30) gpl (30) php (30) PHP y MySQL (29) C (27) amazon (27) electronica (27) robotica (27) tecnología (25) kali linux (24) libro (23) reto (20) compras (18) javascript (18) android (17) informática (16) kindle (16) redes sociales (16) bitcoin (15) ebook (15) criptodivisas (14) adsense (13) DAM (12) curso linux (12) crackme (11) google (11) opinión (10) redes (10) documental (8) mysql (8) viajar (6) electrónica (3) noticias (3) odoo (3) videojuego (3) 20minutos.es (2) SGE (2) crm (2) idioma (2) internet (2) juguetes (2) pelicula (2) robots (2) spanish (2) sql (1)