Publi

  • Obtener información básica sobre procesos del sistema Linux en C y C++ (parte 3)

    procesos del sistema

    Cuando te independizas y te vas a vivir a un piso o a una casa te preguntas, ¿cómo serán mis vecinos? Por un lado tendremos al típico que deja la basura en la puerta de su casa durante todo el día y esparce olores al resto de los vecinos; o el que desea compartir la música que escucha con los demás y el que cuando entra al edificio y ve que vas a entrar va corriendo al ascensor para no esperarte… Aunque como procesos en ejecución en un entorno Linux muchas veces queremos saber cómo son nuestros vecinos y, al contrario de lo que puede parecer en una comunidad de vecinos, éstos suelen ser mucho más receptivos y dispuestos a darnos información.… Leer artículo completo

  • Cómo obtener información de configuración del sistema Linux o tu servidor en C y C++ (II. Sistema y CPU)

    Hace unos días comentábamos algunos ejemplos sobre obtención de información relativa a la memoria de nuestro sistema en C, tanto RAM, Swap, buffers, caché, como información relativa a una aplicación. También vimos cómo obtener el uptime de nuestro equipo o la carga media del sistema en 1, 5 y 15 minutos. Son cosas que podemos hacer fácilmente desde la línea de comandos y que pueden sernos muy útiles en nuestros programas.… Leer artículo completo

  • ¿Qué es un VPS y cómo crear uno en DigitalOcean? [Vídeo]


    Cuando vamos a contratar un hospedaje para nuestro servicio web o nuestro blog siempre pueden surgir algunas dudas. En este vídeo intento aclarar la diferencia entre contratar un servidor compartido y un servidor privado virtual. Aunque tenemos muchas opciones entre nosotros.

    Todo se explica de una forma muy general, intentando simplificar las cosas lo máximo posible. Y quiero aclarar que tener un hosting compartido en muchas ocasiones no es malo, al igual que no siempre un VPS es lo mejor.… Leer artículo completo

  • Cómo obtener información de salud de tu sistema Linux o tu servidor en C y C++ (I. Memoria)

    Es algo necesario para el buen funcionamiento de nuestras aplicaciones. Para añadir robustez a nuestros sistemas, haciendo que éstos se comporten de manera adecuada en situaciones imprevistas. Por ejemplo, si necesitamos crear un archivo y añadir cierta información, podemos, a priori, comprobar que el dispositivo en el que vamos a escribir tiene suficiente espacio libre, lo que nos puede ahorrar suplicios si los ficheros son demasiado grandes. También deberíamos ser capaces de comprobar que un disco de red está conectado antes de trabajar con él y, en muchos casos, anticiparnos a largas esperas y bloqueos por parte del sistema operativo.… Leer artículo completo

  • Ejemplos para utilizar la API de GoDaddy para ver y editar los dominios que tenemos contratados de forma fácil

    Godaddy
    GoDaddy, ¡tú antes molabas! Hace unos años cuando lanzaban a menudo ofertas que podías aplicar en las renovaciones. Ahora, cuando registras un dominio nuevo, puedes conseguir un buen precio, pero cuando lo renuevas al año siguiente te encuentras con una grata sorpresa: no es muy barato.
    El caso es que GoDaddy tiene sus ventajas (un nombre horrible, eso sí), lo primero es que permite transferir dominios entre usuarios de forma muy sencilla y es el preferido para la compra-venta de dominios y todo el tema de las subastas (porque también compraron Afternic, una empresa de reventa de dominios).… Leer artículo completo

  • Analiza el contenido de una web directamente desde PHP. Web scraping sencillo y mucho más

    coche

    El web scraping es una técnica basada en el análisis del contenido de una web para extraer información útil. El objetivo es que, una web, que generalmente está pensada para ser visualizada por un usuario sea descargada por un programa informático y automáticamente se reconozca la información que queremos sacar de ella. Podemos extraer el título de las páginas, párrafos de texto, contenido de tablas, elementos ocultos y mucho más.

    Es parecido a lo que hacen los motores de búsqueda cuando entran en una página y rastrean su contenido, aunque la técnica de web scraping se centra más en la detección y clasificación de las estructuras de información.… Leer artículo completo

  • Conocer el tipo MIME de un archivo gracias a GIO en lenguaje C

    3210986710_d3cbbdac55_b

    La biblioteca GIO nos proporciona una capa más sobre el manejo de archivos. Nos aíslan un poco de las llamadas al sistema operativo para hacer muchas operaciones sobre archivos facilitando el uso de la biblioteca en aplicaciones multiplataforma. Así como dándonos algunas funciones interesantes que ya vienen hechas.

    La gran ventaja de GIO frente al acceso normal a un archivo es que hace transparente al programador el acceso a sistemas de archivos compartidos (en Windows, Mac o Linux) sin tener que gastar mucho tiempo en todo eso.… Leer artículo completo

  • Cómo extraer duración, fotogramas, bitrate y fps de un vídeo para nuestros scripts

    1200px-Film_strip

    Seguramente en nuestros scripts, si tratamos con archivos de vídeo, nos interese conocer información sobre el mismo. Tal vez podamos extraer más información de un archivo de vídeo con un software especializado como VLC; pero para hacer unos cálculos rápidos o una conversión de formato nos va a venir muy bien.

    Programas como avconv o ffmpeg son capaces de extraer información básica del vídeo. Es más, programas como identify (de imagemagick) entre otros, en realidad llaman por detrás a uno de los dos primeros para realizar la identificación del archivo.… Leer artículo completo

  • Usando SQLite en nuestros programas en C/C++ (II): Nueva interfaz v2 y prepared statements

    Hace unos días empezamos a programar utilizando SQLite para gestionar nuestra información usando SQL de toda la vida.

    Bien, SQLite tiene la interfaz clásica, que vimos en el post anterior: sqlite3_open(), sqlite3_close(), sqlite3_exec()… con utilidades básicas para trabajar.

    Por un lado, podemos tener más control sobre la base de datos, por ejemplo, podemos definir cómo abirmos la base de datos, tenemos códigos de error extendidos, ventajas con respecto al tratamiento interno de la memoria y algunas cosas más.… Leer artículo completo

  • Usando SQLite en nuestros programas en C/C++ (I)


    Foto: Eirik Stavelin (Flickr CC-by)
    A menudo, nuestros programas necesitan almacenar información (temporal o no) de forma ordenada, rápida y que no nos complique la vida. Luego también necesitamos poder acceder a ella con la misma facilidad. Para eso vale SQLite. Tendremos un pequeño motor de base de datos que con sólo un par de archivos (.h y .c) más un archivo de datos lo tendremos todo listo.

    Una pequeña introducción

    SQLite nos proporciona una forma muy sencilla de introducir y eliminar información (si estamos familiarizados con el lenguaje SQL) sin las complicaciones de tener un motor de base de datos corriendo (MySQL, MariaDB, PostreSQL, MSSQL…).… Leer artículo completo