Publi

  • Trasteando con juguetes nuevos. Primeros pasos con el ESP8266

    ESP8266
    Esta pequeña placa de apenas 24x14mm contiene un microcontrolador y chip WiFi a/b/g (esas de 2.4GHz) y una memoria. Además de algunos leds, una antena y un oscilador. Cuesta muy poco dinero (apenas unos 3€ comprándolo en algunas tiendas de España y mucho menos si se compra directamente a China). Y encima consume muy poco, alrededor de 0.5W a pleno rendimiento y muchísimo menos en alguno de sus modos de sueño y bajo consumo.… Leer artículo completo

  • Cliente TCP no bloqueante en C, en el que podemos enviar y recibir en cualquier momento

    Hace tiempo veíamos un artículo de un servidor que fuera capaz de aceptar múltiples conexiones, ahora, toca le toca el turno a la implementación del cliente.

    En principio, vamos a implementar un cliente sencillo, en el que conectaremos a un servidor y nos permitirá enviar texto que escribamos por teclado. No podremos recibir nada del servidor, pero nos servirá como primera aproximación:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <netdb.h>
    #include <arpa/inet.h>
    #include <errno.h>
    #include <unistd.h>

    #define MENS_MAX_LEN 500

    void usage()
    {
      fprintf (stderr, "Wrong arguments.
    Leer artículo completo
  • Utilizar la salida de error en PHP

    Casi siempre, PHP es un lenguaje utilizado para la web y no para programas de consola o escritorio; aunque tenemos la posibilidad de utilizarlo para esos propósitos.

    Y es que si estamos familiarizados con PHP y tenemos muchas bibliotecas de clases/funciones en ese lenguaje, a menudo querremos utilizarlo para otros propósitos.

    Como sabemos, cuando queremos sacar texto por pantalla desde un programa tenemos la salida estándar y la salida de error (stdout, stderr); desde PHP podemos utilizar de forma fácil la salida estándar con las funciones habituales (echo, printf, print, print_r, etc).… Leer artículo completo

  • Control-D para terminar la entrada estándar (EOF stdin)

    A veces, con muchos comandos, por ejemplo sort, tail, cat, read, o muchos otros programas que leen datos de un fichero que luego procesan, tenemos la necesidad de utilizarlos con la entrada estándar del sistema, ya sea para hacer una prueba rápida, evitar tener que escribir un fichero o cualquier otra cosa.

    Pero podemos estar introduciendo texto para esos comandos de forma indefinida:

    $sort
    estrella
    mar
    troglodita
    alienígena
    carpa
    kiosko
    gatillo

    ¿La forma de dejar de introducir texto?… Leer artículo completo