Errores de redondeo durante la transición

Una nota media general de \(2{,}33\) certifica la idoneidad para la escuela secundaria en Baviera, \(2{,}34\) ya no certifica la idoneidad para la escuela secundaria. Con este límite definido, el orden de dos rondas puede decidir de qué lado cae un niño. Las posibles consecuencias de este efecto de redondeo se analizan en una entrada del blog de Günther Felbinger . Solo por interés, yo mismo calculé los efectos en todas las combinaciones de grados permitidas en el modelo.

.­.­.

Restablecer la autenticación de dos factores de Facebook

Debido a un percance, todos los códigos exportados se borraron durante el proceso de exportación en Google Authenticator ; había guardado los códigos de recuperación para todas las entradas, excepto el de Facebook . No tenía ninguna necesidad ni urgencia, ya que no había usado la red social durante años, pero quería ver si podía recuperar el acceso de alguna manera. El comienzo de una odisea.

.­.­.

¿Quién conoce algo así?

A veces, una sola pregunta en el programa de la tarde (en este caso del estimado presentador Kai Pflaume) basta para convertir la final de un concurso aparentemente inofensivo en un pequeño problema de optimización. Eso es precisamente lo que ocurre en "¿Quién sabe qué?". Pregunta maestra: Se conoce la categoría, aún no la respuesta, pero lo que está en juego ya determina qué resultados siguen siendo buenos.

.­.­.

Acortar correcta o incorrectamente

Conocimientos básicos sobre fracciones: Se permite simplificar fracciones con factores semejantes. No se permite simplificar fracciones con dígitos semejantes. Sin embargo, existen fracciones en las que esta simplificación prohibida parece funcionar. Vale la pena examinar con más detalle una familia de fracciones particularmente sencilla: aquellas en las que el mismo dígito aparece al final del numerador y al principio del denominador.

.­.­.

Tren silencioso

Las entretenidas tareas de ajedrez endulzan la vida. La tarea de hoy: jugada de las blancas, mate en dos. La posición proviene de Erich Brunner en 1926 y es interesante precisamente porque no parece en absoluto una posición típica de dos movimientos. Pruebas apuestas directas de ajedrez, compruebas los movimientos de la torre, buscas movimientos de la reina y después de unos minutos te das cuenta: no son ideas obvias.

.­.­.

Let's Encrypt DomainFactory

Algunos paquetes de hosting compartido con cPanel no ofrecen AutoSSL o sólo los ofrecen a tarifas más altas. El resultado: no se puede emitir un certificado Let's Encrypt gratuito a través de la interfaz de cPanel y todos los dominios quedan atrapados en un certificado autofirmado. El navegador muestra la página como "no segura". La salida: obtenga el certificado usted mismo con acme.sh e instálelo a través de cPanel UAPI, renovándose automáticamente, sin AutoSSL.

.­.­.

Divisibilidad

Hace poco en Quién quiere ser millonario surgió una simpática pregunta en la que Günther Jauch claramente tuvo que pensar: “¿Un número siempre es divisible por \(4\) sin resto si el número está formado por sus dos últimas cifras...?” – y aquí es exactamente donde hay que pensar matemáticamente por un momento en lugar de dejarse llevar por lindas distracciones. Porque si bien respuestas como “es par”, “contiene un \(0\) ” o “la suma cruzada es igual a \(4\) ” suenan plausibles a primera vista, la respuesta correcta se basa en una propiedad simple de nuestro sistema decimal.

.­.­.

IA contra Erdős

Algunos problemas matemáticos están formulados de forma tan sencilla que se pueden explicar a un niño, pero son tan difíciles que ocupan a generaciones de matemáticos. Un ejemplo es el problema de la distancia unitaria: si colocamos \(n\) puntos en el plano, ¿cuántos pares de puntos pueden tener una distancia de exactamente \(1\) ? Este problema se remonta a Paul Erdős y se ha estudiado desde 1946. OpenAI ha publicado que un modelo interno ha refutado una antigua conjetura sobre este problema.

.­.­.

Código en números primos

En octubre de 1999, un grupo liderado por el entonces joven noruego Jon Lech Johansen, de 16 años, lanzó el programa DeCSS para eludir la protección de reproducción de DVD del Sistema de Criptografía de Contenido (CSS). CSS utilizaba cifrado de 40 bits, cuyas claves se distribuían a los fabricantes autorizados, para restringir la reproducción de DVD. Dado que la distribución del código estaba sujeta a la DMCA estadounidense y estaba legalmente prohibida, los activistas buscaron maneras de disfrazar el código como una entidad matemática.

.­.­.

ℚ no está completo

A primera vista, los números racionales \(\mathbb{Q}\) parecen un continuo sin espacios: entre cada dos fracciones siempre hay otra. Pero esta impresión es engañosa: hay conjuntos de números racionales que están acotados, pero cuyo supremo o mínimo simplemente no existe en \(\mathbb{Q}\) . La razón radica en la existencia de números irracionales como \(\sqrt{2}\) , que, por así decirlo, abren agujeros invisibles en la recta numérica racional.

.­.­.

Barras de jefe de Minecraft

PaperMC proporciona una base sencilla para extender el servidor de Minecraft con pequeños complementos, sin que los clientes tengan que instalar nada. Al desarrollar complementos, surge la pregunta de cómo mostrar información dinámica al jugador. La respuesta reside en una característica del juego base que a menudo se pasa por alto: la barra de jefe . Originalmente pensada para los jefes finales, la barra de jefe se puede reutilizar como una interfaz minimalista.

.­.­.

IPv6

El Protocolo de Internet (IP) es la base de todas las aplicaciones de internet. Otros protocolos, como TCP y UDP, se basan en él y, a su vez, permiten servicios como HTTP(S), correo electrónico, telefonía y DNS. IPv6 está reemplazando al antiguo protocolo IPv4 porque su espacio de direcciones, relativamente pequeño (alrededor de 4 mil millones de direcciones), se ha agotado hace tiempo. IPv6 es ahora prácticamente omnipresente y más útil de lo que muchos creen.

.­.­.

Git sin SSH

¿Quién no ha experimentado esto: necesitas descargar rápidamente algo en un paquete de alojamiento compartido barato (por ejemplo, de IONOS)? git pull Quizás quieras ejecutar un programa o usar una base de datos, pero tu proveedor de alojamiento no te da acceso SSH, o solo lo ofrece en planes más caros. A menudo, la única opción es el tedioso proceso de subir archivos manualmente por FTP, lo que complica innecesariamente las implementaciones y las hace propensas a errores.

.­.­.

Amazon y el impuesto sobre las ventas

Amazon es el canal de compras perfecto para freelancers: rápido, económico y todo en un solo lugar. Amazon ahora ofrece facturas descargables, siempre puntuales y disponibles (incluso para compras en Marketplace). Ya sea una laptop nueva, una silla de oficina o un pedido rápido de papel para impresora, puedes pedir los productos con solo unos clics, generalmente a través de la cuenta personal que ya tienes desde hace años.

.­.­.

Estado de Git 2.0

Quien sea el primero en llegar por la mañana git status escribir y luego tomar café le encantará a este pequeño ayudante. Especialmente cuando se desarrollan muchos proyectos web en paralelo, uno vale la pena. descripción general compacta: ¿Dónde está limpio el árbol de trabajo, dónde están colgados los cambios no fusionados y dónde está esperando un pull/push? Una pequeña herramienta de shell funcionará, siempre y cuando maneje de manera robusta espacios/Unicode en las rutas y no se ahogue con los controles remotos colgantes.

.­.­.

Lenguaje y lógica

Hay una hermosa canción de Cali Rose titulada "It Is What It Is and It Ain't What Is Ain't ". Se puede simplificar a "Es lo que es y no es lo que no es". Con tan solo unas pocas palabras, se pueden explorar mundos enteros de verdad. Al variar y combinar las dos partes, surge un pequeño campo de juego para la lógica. Ahora puedes tomar esta frase y encontrar otros ejemplos interesantes.

.­.­.

Automatización de Thunderbird

Thunderbird ha experimentado un notable resurgimiento desde 2022. Tras años de estancamiento, la Fundación Mozilla vuelve a invertir activamente en su desarrollo. La iniciativa Supernova (Thunderbird 115+) introdujo modernizaciones fundamentales, como la integración de Rust para componentes críticos para el rendimiento, una interfaz de usuario modernizada basada en Web Components y compatibilidad nativa con Exchange mediante la API EWS/Microsoft Graph.

.­.­.

Operador Walrus en PHP

En octubre de 2019, Python 3.8 introdujo el operador Walrus (:=) a través de PEP 572 – y con ello desencadenó una de las mayores controversias en la historia del lenguaje de programación. El debate fue tan agrio que el inventor de Python... Guido van Rossum En julio de 2018, incluso antes de su liberación, su puesto como BDFL (Dictador benevolente vitalicio). Desde principios de 2019, Python ha sido gobernado por un Consejo Directivo elegido.

.­.­.

De Celsius y Fahrenheit

Estás hablando por teléfono con un amigo en EE. UU. en un gélido día de invierno. "¡Hace menos \(40\) grados aquí!", exclaman ambos a la vez. Normalmente, se trataría de aclarar quién se refiere a Celsius y quién a Fahrenheit, pero no a esta temperatura en particular. ¿Por qué? ¡Esta es la única temperatura en la que las escalas Celsius y Fahrenheit coinciden!

.­.­.

Confusión en el orden de clasificación natural

La mayoría de los administradores de archivos gráficos no ordenan estrictamente lexicográficamente, sino que utilizan una “clasificación natural”. Los bloques de números en el nombre se interpretan como números: el bloque de números más grande gana, incluso si en términos puramente alfabéticos saliera lo contrario. La idea detrás de la clasificación natural: lo que la gente quiere principalmente es "9 antes del 10", "Capítulo 2 antes del Capítulo 10", sin tener que agregar ceros a la izquierda.

.­.­.

Prioridad en el Programador de tareas de Windows

Cualquiera que ejecute trabajos en el programador de tareas de Windows tarde o temprano tropezará con diferencias inexplicables en el tiempo de ejecución. Un script PHP que se ejecuta en 5 minutos en la línea de comandos de repente tarda 20 minutos cuando se ejecuta a través del Programador de tareas de Windows. Mismo usuario, mismos derechos, mismo código: cuatro veces el tiempo de ejecución. ¿Qué estaba pasando allí?

.­.­.

El punto de referencia ARC-AGI

La continua disminución del precio de la potencia computacional (dos órdenes de magnitud por década) ha impulsado enormemente los modelos de aprendizaje profundo desde 2010. Redes más grandes, junto con un mayor número de datos, aparentemente fiables, arrojaron puntuaciones cada vez más altas en los indicadores comunes, y alimentaron la esperanza de que el escalamiento por sí solo conduciría inevitablemente a la IA general. Ya en 2019, François Chollet introdujo el indicador ARC-AGI . para medir la inteligencia.

.­.­.

Mostrar la dirección de correo electrónico del remitente en Outlook

La dirección de correo electrónico del remitente sigue siendo un buen indicador para saber si un correo es spam o no. Por defecto, en Microsoft Outlook Desktop no es intuitivo añadir una columna que muestre la dirección de correo electrónico en lugar del nombre. Microsoft aún no ha implementado esta función como una opción sencilla; sin embargo, se puede añadir a la versión clásica de Outlook para Windows mediante herramientas integradas.

.­.­.

SSL en el entorno de desarrollo local

En tiempos de navegadores que solo utilizan HTTPS, cookies SameSite y condiciones de desarrollo realistas, es importante trabajar localmente con certificados SSL reales. Let's Encrypt ha realizado un trabajo pionero en este ámbito: con la ayuda de certbot y Cloudflare , crear y renovar certificados comodín es rápido y sencillo. Esto le permite acceder a sus proyectos web cifrados en cualquier dispositivo (teléfono inteligente, VM, ...) en la red local o mediante VPN.

.­.­.

Construya su propio modelo de lenguaje grande

"Una máquina puede tener una gran memoria, pero no puede pensar, a menos que le enseñemos". – Alan Turing. Los modelos de IA modernos como GPT-4 o Llama se basan en enormes conjuntos de datos y estructuras matemáticas complejas. ¿Pero qué hay realmente detrás de esto? En este artículo, analizamos los componentes clave necesarios para construir un modelo de lenguaje desde cero.

.­.­.

Aloje usted mismo OpenStreetMap

OpenStreetMap (OSM) es un mapa mundial gratuito creado en colaboración por personas de todo el mundo: gratuito, abierto e independiente. Si bien Google Maps, como líder del mercado, suele ser la primera opción para mapas digitales, OSM se basa en un principio completamente diferente: una comunidad colaborativa que recopila, mejora y pone a disposición datos geográficos de forma gratuita.

.­.­.

Acceso con PHP a Exchange/Office 365

Anunciado durante mucho tiempo , ahora realidad : Microsoft ha desactivado la autenticación por contraseña para ciertos protocolos en Exchange Online desde septiembre de 2022 a favor de oAuth2. Los problemas de GitHub de muchas bibliotecas y scripts de respaldo dejan en claro que el cambio tomó por sorpresa a muchos administradores. A continuación, mostramos una forma de cómo puede continuar accediendo al contenido de su buzón de Exchange con la ayuda de oAuth2 a través de PHP a través de IMAP.

.­.­.

Enviar correos electrónicos retrasados

¿No es el momento adecuado? ¿Se envió el correo electrónico demasiado pronto? Retrasar los correos electrónicos puede resultar útil en muchas situaciones: ya sea para darse tiempo de revisión o para gestionar eficazmente su propia carga de trabajo, el tiempo puede ser crucial. Aquí hay tres formas en que puede retrasar el envío de correos electrónicos y optimizar sus propias comunicaciones.

.­.­.

Controla los navegadores con IA

La automatización del navegador juega un papel importante en áreas como el web scraping, las pruebas automatizadas y la interacción de aplicaciones web. Hasta ahora se ha utilizado, por ejemplo, Puppeteer para este fin. Con la llegada de la IA, se están abriendo nuevas oportunidades para hacer que la automatización del navegador sea más intuitiva y requiera menos mantenimiento: despeje el escenario para Stagehand .

.­.­.

Depurando PHP con Xdebug

Xdebug es una potente herramienta de depuración y análisis de rendimiento para PHP que nos ayuda a analizar y optimizar aplicaciones PHP. Ofrece funciones como depuración paso a paso, medición del rendimiento y seguimiento de pila, lo que simplifica enormemente la resolución de problemas y proporciona una mejor comprensión del código. A continuación, se presenta una breve guía de configuración para su uso en VS Code.

.­.­.

Acerca de los líquidos

Imagina dos tazas idénticas, una llena de café y otra de leche, ambas al mismo nivel. Vierte una cucharadita de café de la taza de café a la taza de leche y remuévelas. Vierte de nuevo una cucharadita de la mezcla de la taza de leche a la taza de café. ¿Qué taza contiene más líquido extraño?

.­.­.

Mensajes de confirmación Git con ChatGPT

Los mensajes de confirmación en Git suelen pasarse por alto. Muchos los consideran simplemente un mal necesario para guardar los cambios. Sin embargo, los mensajes de confirmación significativos son cruciales para el éxito de un proyecto: garantizan una buena trazabilidad de los cambios, una colaboración eficiente en equipo y una corrección de errores más rápida. Razón suficiente para que los mensajes de confirmación se generen automáticamente mediante IA.

.­.­.

El febrero rectangular

Febrero a veces adquiere una forma inusualmente atractiva en el calendario. Por ejemplo, en febrero de 2021, se pudo experimentar un "febrero perfectamente rectangular". Este raro fenómeno ocurre cuando febrero tiene exactamente \(28\) días y el 1 de febrero cae en lunes. Pero, ¿con qué frecuencia sucede esto y cuánto tendremos que esperar para que vuelva a ocurrir?

.­.­.

Centrado vertical en CSS

CSS sigue siendo confuso para la mayoría de nosotros: tiene cientos de propiedades mal llamadas, cada una de las cuales puede afectar al resultado de formas poco intuitivas. El posicionamiento vertical de los elementos en el desarrollo web es complicado y ha sido a menudo un quebradero de cabeza en el pasado, pero esos días, afortunadamente, ya han pasado.

.­.­.

animar altura: 0 a altura: auto con CSS

Las transiciones CSS son una buena forma de crear interactividad., transition al estado inicial de un elemento, y el navegador anima la transición entre los dos estados. Las transiciones para variables intrínsecas del elemento como auto han sido un problema para los desarrolladores web durante décadas, y la única opción era calcular la altura dinámicamente mediante JavaScript.

.­.­.

No hay ningún número entero entre 0 y 1

No hay \ (n \en \mathbb{Z}^+\), de modo que \ (0 < n < 1\).

.­.­.

Paradoja del ascensor

En 1950, los físicos George Gamow y Marvin Stern observaron un fenómeno interesante: Gamow, que tenía una oficina en el primer piso de un edificio de seis plantas, se dio cuenta de que cinco de cada seis veces, el siguiente ascensor que llegaba viajaba hacia abajo aunque fuera hacia arriba. Stern, que trabajaba en el quinto piso, observó lo contrario.

.­.­.

Quine

Un programa quine, o quine, es un programa que imprime su propio código fuente cuando se ejecuta. Un quine no debe "salirse de sí mismo", por ejemplo imprimiendo el contenido del fichero en el que se encuentra o utilizando capacidades introspectivas para imprimir su propia representación, sino que debe calcular su propio código fuente.

.­.­.

Rotación de archivos con script bash

Herramientas potentes como logrotate facilitan mucho el trabajo de rotar archivos de registro o de copia de seguridad. Esto rotará los archivos después de un cierto período de tiempo o cuando alcancen un tamaño determinado. Si no tiene esta herramienta disponible en un servidor remoto y solo puede ejecutar comandos SSH remotos, puede usar un pequeño script bash que elimina archivos antiguos y solo realiza una solicitud.

.­.­.

Ley de Benford

En el mundo de los números, a menudo nos encontramos con patrones sorprendentes que pueden resultar intrigantes e instructivos. Una de estas curiosidades es la ley de Benford, también conocida como la ley del primer dígito. Este fenómeno matemático describe la distribución de frecuencias de los primeros dígitos en muchos conjuntos de datos del mundo real y ofrece interesantes perspectivas sobre la naturaleza de los números tal y como se presentan en nuestro entorno.

.­.­.

Cálculo paradójico de probabilidades

Tengo dos hijos, un hijo que nació un jueves. ¿Cuál es la probabilidad de que tenga una hija? Denotemos los días de la semana con los números \(1, 2, … , 7\) donde \(1\ =\) lunes, \(2 =\) martes, y así sucesivamente. Ahora podemos definir el evento "El día \(n\) nació un niño" como \(B_n\) y de forma análoga para \(G_n\) .

.­.­.

El argumento del Juicio Final

Suponiendo que el número \ (Y\) de todas las personas que han nacido alguna vez y que nacerán en algún momento es limitado, sea \ (x\) su posición absoluta desde el principio de la lista. Entonces \ (0 < \frac{x}{Y} \leq 1\). Ahora podemos decir con una probabilidad \ (95\%\) que usted está entre los últimos \ (95\%\) de todas las personas que han nacido alguna vez, es decir \ (0,05 < \frac{x}{Y} \leq 1\) y por lo tanto \ (Y < \frac{x}{0,05} = \frac{100 \cdot x}{5} = 20 \cdot x\).

.­.­.

Paradoja del bebedor

La siguiente frase se conoce como la "paradoja del bebedor": "Hay alguien en el bar, por lo que si él o ella bebe, todos en el bar beben". No importa si esa persona anima a otras a beber o si existe otra puerta trasera, como veremos en un momento. Es un buen ejemplo de la lógica matemática de predicados.

.­.­.

Adivinanzas

Un niño piensa en un número que es \(1\) , \(2\) o \(3\) y luego a la niña se le permite hacer solo una pregunta sobre ese número. El niño sólo puede responder " sí ", " no " o " no sé". Al hacer la pregunta inteligentemente, la niña logra nombrar el número correcto en el que estaba pensando el niño después de que éste le responde. ¿Cuál es tu pregunta?

.­.­.

Objeto sin origen

Imagina que un día recibes un paquete misterioso sin remitente. Intrigado, lo abres y encuentras un anillo, que le das a tu hija. Décadas después, ella es quien puede enviar objetos al pasado mediante un agujero de gusano. Lo hace con el anillo que una vez recibió de ti, dentro de un paquete dirigido a ti. La pregunta es: ¿De dónde salió el anillo?

.­.­.

CI con acciones de GitHub

Como alternativa al muy valorado Travis CI, GitHub Actions ya está disponible desde hace algún tiempo. Como herramienta de integración continua, está muy bien integrada en la plataforma de código GitHub y ahora se ejecuta de manera muy estable. GitHub Actions se basa en archivos de configuración YAML que se colocan en el repositorio donde se ejecutará el flujo de trabajo.

.­.­.

La paradoja de stein

En 1961, James y Stein publicaron el artículo Estimación con pérdida cuadrática . Tome datos distribuidos normalmente con una media desconocida \(\mu\) y varianza \(1\) . Si ahora elige un valor aleatorio \(x\) de estos datos y tiene que estimar la media \(\mu\) sobre la base de esto, intuitivamente \(x\) es una estimación razonable para \(\mu\) (Dado que está presente una distribución normal, el \(x\) elegido al azar probablemente esté cerca de \(\mu\) ).

.­.­.

UUID en bases de datos

UUID (Entificadores de ID únicos universales) son valores de 128 bits que se utilizan en bases de datos, entre otras cosas, para identificar de forma única las entradas de la tabla. Se representan como una cadena hexadecimal dividida en cinco grupos separados por guiones (ejemplo: 09fe49b3-4d2b-471c-ac04-36c9e706b85f). Hay numeroso Discusiones sobre las ventajas y desventajas de los UUID en las bases de datos: son indispensables en los sistemas distribuidos.

.­.­.

Limpiar el historial de Git parte 2

Datos confidenciales o consumo excesivo de espacio de almacenamiento: hay buenas razones para querer cambiar el historial de Git. En esta publicación de blog, expliqué cómo eliminar archivos del historial de Git usando BFG . Un punto débil de BFG es la falta de soporte para rutas directas , por lo que no puedes eliminar específicamente archivos o carpetas en subcarpetas del historial. Dicho esto, es hora de buscar soluciones alternativas.

.­.­.

Límite de memoria en WordPress

tl;dr: Establecer manualmente los valores o los valores predeterminados de WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT no tiene efecto si WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT menor o igual al límite de memoria de PHP (en adelante, denominado límite de memoria de PHP). memory_limit llamado) es. Se utilizan para establecer valores demasiado bajos de memory_limit dinámicamente a un mínimo recomendado.

.­.­.

Sugerencia rápida: modificar iframe

Si incrusta un iframe de terceros (como un widget), no puede acceder a su contenido ni con CSS ni con JavaScript (debido a la llamada política del mismo origen ). Sin embargo, existe un procedimiento muy sencillo para modificar cualquier código (también en otros archivos que se recargan dentro del iframe). Para hacer esto, enruta la URL a través de su propio proxy PHP y modifica el contenido como desee.

.­.­.

Monedas en la aplicación ANTON

ANTON es una de las aplicaciones de aprendizaje más populares para estudiantes en los grados 1-10. Clase. A primera vista, el aspecto de gamificación de adquirir monedas ("monedas") puede parecer extraño para los adultos, pero multiplica notablemente la motivación, no solo de mis hijos. Incluso guarda un pequeño "cojín" de monedas que no se tocan.

.­.­.

Sobre la robustez del IBAN

El IBAN alemán consta del código de país (DE), un dígito de control de dos dígitos (según ISO 7064 ), el código bancario (8 dígitos) y el número de cuenta (incluido el número de subcuenta, 10 dígitos, los dígitos faltantes se rellenan con ceros iniciales), lo que da una longitud de 22 caracteres. Para calcular el dígito de control, primero se forma una secuencia a partir del llamado BBAN (código bancario y número de cuenta), el código numérico de país \(1314\) para Alemania y el dígito de control \(00\) .

.­.­.

Matemáticas en el juego Dobble

En nuestra última noche de juegos en familia, los niños sacaron con entusiasmo el juego Dobble (la edición de Harry Potter). Tras perder cinco rondas (sin que mi carta coincidiera visiblemente con la otra), me sorprendió descubrir que todos los jugadores pueden encontrar una pareja en cada ronda. Sin embargo, mi incredulidad solo se tradujo en más rondas perdidas: los niños simplemente eran más rápidos.

.­.­.

Tiempo de bloqueo de Bitcoin

Ya sabes: el tiempo esperado entre dos bloques de Bitcoin es en promedio \(10\) minutos. Ahora está haciendo una transacción importante de Bitcoin y esperando ansiosamente ver si aparece en el siguiente bloque y cuándo.:

e50bfacc95975a4e7545d83d8954645f

.­.­.

Corona matemática

En el informe semanal de RKI del 11.11.2021 se indica en la página 22 que \(36\%\) los pacientes con corona \(36\%\) más de 60 años en la unidad de cuidados intensivos ya estaban completamente vacunados. En este grupo de edad, \(87\%\) completamente vacunados en este momento (ver p. 18).

.­.­.

Fracciones decimales

Los números decimales finitos se llaman fracciones decimales, porque son una representación diferente para fracciones con potencias de diez en el denominador. Asi es:

$$\frac{z}{n} = \frac{q_1}{1} + \frac{q_2}{10} + \dots + \frac{q_k}{10^k}$$

con \(k \in \mathbb{N}\) y \(q_k\) el \(k-1\) -ésimo lugar a la derecha después de la coma.

.­.­.

Consejo rápido: cambie automáticamente la versión del nodo

Se recomienda el uso de nvm para una instalación rápida y el cambio de versiones de nodos. Si desea especificar explícitamente la versión de nodo requerida en un proyecto, coloque un archivo llamado .nvmrc con el número de versión exacto (por ejemplo, "12.10.0") en la misma carpeta en la que se encuentra el package.json . Si ahora cambia a la carpeta, la siguiente extensión del archivo ~ / .bash_profile para bash ejecuta el comando nvm use , que establece automáticamente esta versión:

fe497e1c7f9f1547263eb3bffe15f9f6

.­.­.

Utilice las consultas de contenedores hoy

Desde la llegada del diseño web responsivo, los desarrolladores han estado solicitando la capacidad de aplicar estilos a los elementos DOM en función de su tamaño real en lugar del tamaño de la ventana gráfica del navegador (mediante consultas de medios ). De hecho, las consultas de contenedores (originalmente consultas de elementos) son probablemente la característica CSS más solicitada que los navegadores aún no ofrecen .

.­.­.

Limpiar el historial de Git

Los datos confidenciales, como las contraseñas, deben almacenarse en archivos .env y, de ser posible, no en repositorios Git. Sin embargo, probablemente a todos nos haya ocurrido alguna vez por error: publicar rápidamente un script de la API de Google Maps JS en GitHub Gists (como "público") y, sin darnos cuenta, olvidar nuestra clave privada de la API de Maps.

.­.­.

Recorta archivos SVG de imágenes con clip-path

Si desea recortar una imagen mediante un archivo SVG, se recomienda utilizar la propiedad CSS `clip-path` . El siguiente script elimina varios obstáculos: los archivos SVG se pueden guardar con Illustrator, se puede especificar la URL (relativa o absoluta) de un archivo SVG (actualmente, Chrome solo admite SVG en línea de forma nativa) y el recorte es totalmente adaptable.

.­.­.

Consejo rápido: WP_Query y campos multilínea

Utilizando el atributo `meta_query` de la potente clase `WP_Query` de WordPress, puedes filtrar las entradas que tengan valores específicos en sus campos meta. Si has creado un campo meta de varias líneas (por ejemplo, con Advanced Custom Fields ) y solo quieres encontrar entradas que contengan un valor específico en este campo separado por líneas, te recomendamos usar las expresiones regulares (REGEX) de MySQL.

.­.­.

Integre animaciones de Adobe Animate de forma nativa

En un artículo anterior describí cómo puedes integrar fácilmente animaciones de Adobe Animate en un sitio web mediante una exportación APNG. También existe la forma nativa a través de HTML5 Canvas Export , pero cualquiera que haya trabajado con él se dará cuenta de que hay problemas en todo momento (soporte de respuesta insuficiente, integración complicada en sitios web existentes, no hay diferentes velocidades de fotogramas por animación, etc.). La biblioteca adobe-animate-embed puede ayudar aquí.

.­.­.

Google Maps sin clave API

Normalmente, al integrar Google Maps, se trabaja con la API de JavaScript de Maps , que requiere una clave de API y puede generar costos que no deben subestimarse con números de acceso más altos. Existen grandes alternativas como mapbox u OpenStreetMap , pero aún no alcanzan la variedad de funcionalidades que ofrece Google. El propio Google también ofrece una forma sin una clave API a través de la función de compartir, que podemos usar para nuestros propósitos.

.­.­.

Exportación de Adobe Animate APNG

La compatibilidad de los navegadores con archivos PNG animados es ahora tan avanzada que las animaciones creadas con Animate CC se pueden exportar fácilmente como APNG e insertar en una página web mediante una simple etiqueta `<img>`. Esto ofrece una alternativa sencilla y de alta calidad al método de publicación de Animate CC, que genera código JavaScript. Los pasos necesarios se describen a continuación.

.­.­.

Expandir la búsqueda de WordPress

Si desea ampliar la búsqueda nativa de WordPress para incluir campos meta, por ejemplo, es recomendable consultar los filtros activados. Para garantizar que la paginación siga funcionando y que las futuras mejoras de búsqueda no se vean comprometidas, se recomienda el hook `posts_search` . El siguiente código, utilizando las funciones REGEXP y ExtractValue , amplía esta búsqueda para incluir publicaciones que contengan uno de los términos de búsqueda introducidos en todos los campos meta.

.­.­.

Cálculo del índice de visibilidad SISTRIX

Junto con Xovi, la herramienta SISTRIX es el programa de análisis más utilizado en Alemania en el área de SEO. El índice de visibilidad se ha establecido como un cuasi estándar para la visibilidad de una página en la búsqueda de Google. Los parámetros que se incluyen en su cálculo se explican, por ejemplo , aquí y aquí y aquí y aquí y aquí , pero no se publica oficialmente una fórmula de cálculo exacta. Los siguientes son los resultados de mi investigación personal de seis meses, que no pretenden ser completos ni correctos.

.­.­.

Obra maestra de Godel

Cuando Kurt Gödel publicó sus famosos Teoremas de incompletitud en 1931, sacudió los fundamentos de la lógica matemática: refutó que todos los axiomas que pueden establecerse como una base posible son inevitablemente incompletos para probar todos los enunciados sobre números, y destruyó eso. El sueño de Hilbert de demostrar la coherencia de la teoría matemática.

.­.­.

Usa WhatsApp a través de API

A pesar de todas las preocupaciones sobre la protección de datos, WhatsApp sigue siendo la aplicación de mensajería favorita de los alemanes. Además de la aplicación especial WhatsApp Business, Facebook también ha creado una interfaz oficial, la API de WhatsApp Business, para hacerla más interesante para las empresas. Si desea enviar mensajes de WhatsApp mediante programación desde su aplicación web, también existen otras opciones.

.­.­.

Desenfoca la página detrás de la superposición usando CSS

Si utiliza elementos como superposiciones (que es la regla en tiempos de acción de GDPR) y desea suavizar el área detrás de la superposición, por ejemplo, a menudo se encuentra con el problema del contexto de apilamiento . Por ejemplo, si tiene elementos colocados de forma absoluta o en una posición fija, de repente se muestran de forma diferente que sin un filtro aplicado. Pero hay un remedio.

.­.­.

Consejo rápido: prueba dividida con Apache

Para realizar pruebas A/B de URL sencillas, no necesitas una herramienta potente como Google Optimize ; también puedes implementarlas con Apache usando .htaccess. El siguiente fragmento de código distribuye equitativamente a los visitantes de las dos páginas, https://vielhuber.de/test1.php (Variante 1) y https://vielhuber.de/test2.php (Variante 2), entre ambas versiones. La aleatorización se basa en la hora actual del servidor.

.­.­.

Acerca de la notación de funciones ramificadas

Los corchetes se utilizan en la notación de definiciones de funciones con distinción de mayúsculas y minúsculas. Seguimos la simple cuestión de si esta representación también puede eliminarse y la función puede reducirse a una notación que pueda prescindir de ella. Por ejemplo, la función

$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$

¿Representarlo en un término de una línea usando las cuatro operaciones aritméticas básicas?

.­.­.

Serie de fechas en Hojas de cálculo de Google

Al visualizar datos en Google Sheets, uno se encuentra con el problema de que el eje \(x\) no puede llenar automáticamente los espacios que faltan en los valores de texto (como en las semanas del calendario). Para resolver el problema, se genera una serie continua de fechas, se cuentan las celdas que ocurren y luego se visualizan las sumas acumuladas.

.­.­.

Consejo rápido: PHP clearstatcache

Encuentra el error:

72aaa2dbd201d49fc2ee429ebf68f15b

.­.­.

Hackeo de API de traducción de Google

Como parte de su Google Cloud, Google ofrece la API de traducción de Google con una estructura de costos basada en el uso. También hay una API no documentada que se puede usar sin una clave , pero que se niega a funcionar después de unas pocas solicitudes. Cuando se utiliza la función de traducción de sitios web de Google Chrome, se nota que las páginas se pueden traducir con muy buena calidad sin limitaciones apreciables.

.­.­.

Consejo rápido: etiquetado automático de Git

Al vincular GitHub con Composer , es obligatorio asignar un número de versión mediante `git tag` . El siguiente comando determina la etiqueta actual y la incrementa (según SemVer ) en un número de versión. Por ejemplo, la versión 1.1.0 sigue a la 1.0.9. Si no se asigna ninguna etiqueta, la versión se etiqueta automáticamente con 1.0.0. Herramientas como flimsy o ` git hooks` simplifican este proceso de etiquetado.

8cd852c96ec1e60e8a5ac1f3614b2397

.­.­.

Editar el disparador de MySQL

Lamentablemente, MySQL no ofrece la función ALTER TRIGGER. Para editar un trigger existente, primero debe eliminarlo y luego regenerarlo. La instrucción CREATE TRIGGER se puede acceder indirectamente a través de information_schema . Esto permite modificar los triggers de forma indirecta. Para ello, realice los cambios en el resultado del siguiente comando SELECT (tras modificar los nombres de la base de datos y del trigger) y ejecute la consulta.

.­.­.

Desencadenar eventos de cambio en VanillaJS

VanillaJS ha estado a la par con el veterano jQuery en casi todas las áreas desde ES6 y ahora es muy superior. Por lo tanto, vale la pena migrar gradualmente el código heredado de jQuery. Sin embargo, debe tener cuidado al activar eventos de cambio manual. Por ejemplo, document.addEventListener no se activa en jQuery.change () . La siguiente descripción general resume las características especiales.

.­.­.

Controle las cookies con PHP y JS

La configuración de cookies mediante scripts propios o de terceros se puede controlar con precisión mediante PHP y JavaScript. Aunque esta no es una solución suficiente para implementar soluciones de cookies después del fallo judicial contra Planet49 (aquí es crucial que las herramientas de seguimiento como Google Analytics no realicen un seguimiento en primer lugar y, por lo tanto, no establezcan cookies), puede tener sentido incluir en la lista blanca o negra las cookies en general.

.­.­.

Desactivar dispositivos a través de un script en Windows

Para ahorrar electricidad o reducir su propia paranoia de monitoreo, es recomendable desconectar completamente los dispositivos no utilizados en su propia computadora de la electricidad. Dispositivos como cajas de sonido o cámaras web se pueden desactivar / activar de la forma clásica a través del administrador de dispositivos. Todo también funciona a través de un script. La forma estándar de hacer esto solía ser devcon . Windows 10 ahora ofrece una forma más conveniente de hacer esto a través de PowerShell .

.­.­.

Desenfoque de fondo de Skype

Skype tiene una función agradable, algo oculta: durante las transmisiones de vídeo, puedes desenfocar fácilmente el fondo automáticamente haciendo clic en el botón de vídeo y usando la función " Desenfocar mi fondo ". Con la ayuda de inteligencia artificial, esto funciona con cualquier cámara, incluso sin información de profundidad. Entonces todo parece más profesional y oculta cosas privadas en segundo plano o cosas que no son importantes para la conversación.

.­.­.

Optimización de arranque de PHP OPcache

Para sitios web basados ​​en WordPress , Joomla o Laravel , por ejemplo, y que no tienen contenido específico del usuario, se recomienda mantener todas las páginas en un caché HTML estático y solo regenerar el caché manualmente (o automáticamente) si hay cambios en el backend. Sin embargo, si la página contiene contenido dinámico que depende de las sesiones y las cookies o del idioma y la ubicación, el uso de OPcache es adecuado.

.­.­.

Exportación SVG desde Illustrator

Los SVG juegan un papel central en la web actual. No solo han reemplazado las fuentes de iconos, sino que también ofrecen la posibilidad de manipulación mediante CSS o JavaScript. Si desea guardar un gráfico vectorial para la web desde Adobe Illustrator como SVG, debe realizar algunos ajustes para evitar errores y reducir los tiempos de carga, que presentaré en el siguiente artículo.

.­.­.

Proyecto Euler: caminos de celosía

Project Euler es una serie de apasionantes problemas de programación, a menudo con una base matemática. Estos problemas suelen estar diseñados para requerir el desarrollo de algoritmos sofisticados que permitan alcanzar el objetivo en un plazo razonable. Hoy resolveremos el Problema 15: Caminos reticulares , que puede resolverse mediante métodos combinatorios sencillos.

.­.­.

Actualizaciones automáticas de WordPress

Desde la versión 3.7, WordPress implementa de forma nativa las actualizaciones en segundo plano y las habilita automáticamente para las actualizaciones menores. Los filtros permiten controlar con mayor precisión qué se actualiza automáticamente. No se admite la instalación permanente y totalmente automatizada de todas las actualizaciones menores, mayores, de plugins, temas y traducciones, pero se puede lograr fácilmente por otros medios.

.­.­.

Hojas de cálculo de Google: fórmulas desplegables

Para extender fórmulas a columnas enteras dentro de Google Sheets, recomendamos utilizar la útil función ARRAYFORMULA . Desafortunadamente, esto no funciona en combinación con otras funciones importantes como QUERY o INDIRECT , por lo que debes personalizar completamente la lógica usando Google Apps Script o, alternativamente, copiar manualmente la fórmula hasta la última línea.

.­.­.

La paradoja de Simpson

La paradoja de Simpson es uno de los fenómenos estadísticos fácilmente comprensibles y al mismo tiempo asombrosos. Ocurre siempre que grupos de datos muestran una tendencia particular, pero esa tendencia se invierte cuando se combinan los grupos. Con la ayuda de un ejemplo simple, la paradoja se puede entender de inmediato.

.­.­.

Consejo rápido: Google Tag Manager

Google Tag Manager se ha establecido como el estándar de facto para la integración de scripts de seguimiento. De esta manera, por un lado, las responsabilidades (marketing online vs. programación) están claramente separadas y, por otro lado, puede configurar y modificar rápidamente el seguimiento a través de un canal de implementación adicional. Aquí hay dos pequeños consejos para configurar disparadores.

.­.­.

Consejo rápido: punto de acceso WLAN de FRITZ! Box

A partir de FRITZ! OS 07.10, si falla la conexión a Internet, FRITZ! Box puede utilizar temporalmente el punto de acceso inalámbrico de un teléfono móvil como alternativa. La función está oculta en Internet> Datos de acceso> Proveedor de Internet> Acceso existente a través de WLAN . El FRITZ! Box funciona entonces como un enrutador y proporciona una red con su propio rango de direcciones. Cuando Internet vuelva a estar disponible, simplemente restablezca la configuración. También tuve que marcar las opciones WLAN> Red de radio> Banda de frecuencia de 2,4 GHz activa e Internet> Datos de acceso > IPv6> Soporte de IPv6 activo .

.­.­.

La flor de la vida

La Flor de la Vida es un conocido patrón geométrico con forma de flor que ha aparecido en templos, manuscritos y, más recientemente, en la cultura popular durante miles de años. Este patrón también tiene relevancia en el esoterismo. Dejaremos de lado todo eso aquí y nos centraremos en la sencilla construcción de la forma geométrica, que consiste en varios círculos superpuestos y espaciados uniformemente.

.­.­.

Retraso de correo electrónico en Outlook

El correo electrónico, medio de comunicación asincrónico, es, a pesar de todas las profecías fatales que rodean a Slack y Discord , el medio de comunicación dominante en los negocios en todo el mundo. Además de Inbox Zero de Merlin Mann, existen muchas otras estrategias para hacer frente a la avalancha diaria de correos electrónicos, incluido el llamado Email Delaying, es decir, el retraso en la entrega de correos electrónicos.

.­.­.

Una espiral de números

Durante los últimos días, he estado investigando la siguiente pregunta en StackExchange sobre una espiral de números enteros. Estamos buscando una fórmula cerrada para las coordenadas del \(n\) -ésimo elemento en la siguiente espiral entera, que se expande desde el origen hacia afuera y más y más hasta el infinito.:

..  9 10 11 12
23  8  1  2 13
22  7  0  3 14
21  6  5  4 15
20 19 18 17 16
.­.­.

Leer derechos en Hojas de cálculo de Google

Al trabajar con Google Sheets, puedes definir reglas detalladas y personalizadas para editar hojas de cálculo, columnas y filas. Sin embargo, no existe una forma de restringir el acceso de lectura. Esto sería muy útil en muchos casos, por ejemplo, para mostrar a tus clientes solo los tickets que les interesan o a tus empleados solo los proyectos en los que están trabajando.

.­.­.

Plug'n'play de hilo

npm es el administrador de paquetes predeterminado para Node.js. Facebook lleva mucho tiempo desarrollando una solución alternativa de gestión de paquetes llamada Yarn . Yarn parece estar desapareciendo lentamente de los archivos Léame de GitHub como solución predeterminada y las estadísticas en el sitio oficial muestran que solo una fracción de las instalaciones de paquetes se realizan con Yarn. Sin embargo, vale la pena mirar fuera de lo común.

.­.­.

Convertir PDF a LaTeX


El sistema de composición \(\TeX\) fue desarrollado en 1977 por el legendario Donald E. Knuth . El paquete de software \(\LaTeX\) sigue siendo parte del repertorio estándar al crear artículos científicos. Con las siguientes dos herramientas, los PDF ya generados y las notas escritas a mano se pueden convertir de forma totalmente automática a TeX. Los resultados son muy prometedores.

.­.­.

El argumento de la simulación

El argumento de la simulación de Nick Bostrom es impresionantemente simple y claro. No intenta probar que vivimos en una simulación, sino que formula elegantemente tres posibilidades, una de las cuales debe ser cierta. Elon Musk también defiende una tesis similar, que dio a conocer la idea a un público amplio. El documento oficial tiene más de 14 años y la misma cantidad de páginas son cortas. La declaración central es fácil de entender y compacta.

.­.­.

Error crítico al usar WPML + ACF

Los potentes complementos de WPML para multilingüismo y los campos personalizados avanzados para sus propios campos son equipos estándar en muchas instalaciones. Es molesto cuando se combinan mal funcionamiento y pérdida de datos. Los informes de errores sobre el tema tienen algunos años y no tienen respuesta ( aquí y aquí y aquí y aquí y aquí ). Acabo de echar un vistazo más de cerca al problema.

.­.­.

Carga de archivos en el navegador de aplicaciones de Facebook

En algunos teléfonos Android, los navegadores integrados de Facebook e Instagram (a partir de hoy) se comportan incorrectamente cuando se especifica el atributo de aceptación para un campo de carga dentro de una página de destino promocionada o vinculada. Por tanto, el botón no tenía ninguna función. Si abres la página en un navegador externo normal fuera de la aplicación de Facebook, todo está bien. Esto es molesto (especialmente porque se viene informando desde hace mucho tiempo), pero se puede solucionar con una solución alternativa.

.­.­.

Herramientas de desarrollo de Chrome: mover elementos DOM

Las herramientas para desarrolladores de Google Chrome se encuentran entre las más potentes del mercado de navegadores. Cada mes se añaden nuevas funciones, que Google presenta de forma resumida en YouTube . Pero a menudo son las pequeñas cosas las que nos alegran la vida. Si quieres eliminar elementos del DOM en Google Chrome, puedes hacerlo con la tecla Supr. Pero hoy me di cuenta de que también puedes mover elementos del DOM simplemente arrastrándolos y soltándolos.:

.­.­.

Consejo rápido: estado de git --r

Una regla de oro en el universo de git es: "Comprométete temprano y con frecuencia". Si la noche fue un poco más larga o si solo desea una descripción general de la situación actual en su propia computadora, el comando lo lleva

d8a38f92d0baa14f9d4568826c13ad46

un "estado de git" para todos los repositorios que están en la carpeta actual o en cualquier subcarpeta y agrega los valores en una descripción general agradable:

.­.­.

Pila LAMP en el subsistema de Windows para Linux

Al buscar el entorno de desarrollo óptimo, Windows 10 ofrece diversas opciones, además de soluciones completas como XAMPP , WAMP y MAMP , instalaciones nativas manuales y soluciones de virtualización como Vagrant ( ScotchBox ) y Docker ( DevilBox , Laradock ). Sin embargo, ninguna de las soluciones cumplió con mis requisitos, como la configuración libre, certificados SSL comodín reales, acceso desde todos los dispositivos de la red local y alta estabilidad y rendimiento, excepto una.

.­.­.

Trucos para las relaciones elocuentes de Laravel

Uno de los puntos fuertes de Laravel es su elegante sintaxis. Si tiene muchos modelos y relaciones en Laravel (debido a la gran cantidad de tablas en la base de datos), el recorrido a menudo puede terminar en un código menos elegante. Con el tiempo, tres pequeñas extensiones me han resultado exitosas y me gustaría presentarles brevemente a continuación. Para hacer esto simplemente usamos algo de herencia, métodos mágicos y colecciones personalizadas.

.­.­.

Impedir el acceso público a .git

El control de versiones Git es ahora una práctica estándar en casi todos los proyectos y entornos web (incluida la producción). Git siempre crea un subdirectorio llamado `.git` , y si este se encuentra al mismo nivel que el directorio público del sitio web, se puede acceder públicamente a archivos confidenciales (por ejemplo, al acceder a `/.git/logs /HEAD` se muestran las últimas confirmaciones). Esta guía explica en detalle cómo clonar otro repositorio Git incluso sin listar el directorio.

.­.­.

Node.js / npm / Composer sin root

En una publicación de blog anterior, describí cómo alojar Node.js de forma gratuita con Heroku . Ahora le mostraré una forma de instalar Node.js , npm y Composer en cualquier otro host compartido sin derechos de root con unas pocas líneas de código. Con él puede instalar paquetes, implementar aplicaciones Vue.js o simplemente iniciar un servidor Express.js. Siempre trabajamos en el directorio de usuarios y usamos nvm - el Node Package Manager.

.­.­.

Error en matrices asociativas en PHP <7.2

En PHP <7.2 puede crear matrices a las que ya no se puede acceder correctamente:

91367d1c4636fd753b381406024e303c

Puedes hacer algunas cosas con él.

.­.­.

Ejecute comandos directamente después de la conexión SSH

El siguiente comando establece una conexión SSH con un servidor, ejecuta varios comandos (por ejemplo, cambia a un subdirectorio y ejecuta `git status` ) y deja la shell abierta. Esto carga el archivo `.bashrc`, que habilita subshells con colores. El truco consiste en guardar un archivo temporal `/tmp/initfile` que contenga los comandos deseados e iniciar una subshell (en nuestro caso, `bash`) con el comando `--init-file`. Dentro de este `initfile`, el mismo archivo se elimina inmediatamente para no dejar rastro.

.­.­.

Unidad de red como administrador

Cuando asignas una unidad de red en el Explorador de Windows, esto no se aplica a todo el sistema, sino solo a la cuenta de usuario actual. Esto significa que una aplicación con privilegios de administrador no puede acceder a esta unidad de red. Puedes cambiar esto fácilmente: crea un nuevo valor DWORD (32 bits) llamado EnableLinkedConnections con el valor 1 en el registro, en HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System , y reinicia el equipo. De esta forma, las unidades de red asignadas serán visibles en todas partes.

.­.­.

Consejo rápido: incluya la carpeta como unidad

Si desea acceder rápidamente a una carpeta local en Windows que usa una y otra vez, simplemente puede asignarle su propia letra de unidad. Solo hay un desvío a través de "Conectar unidad de red" porque no puede especificar la ruta C: \ Usuarios \ David \ Descargas, por ejemplo. Como solución, ingrese el llamado recurso compartido administrativo de la unidad, que existe de manera predeterminada para cada carpeta: en el ejemplo anterior, esto sería \\ localhost \ c $ \ Users \ David \ Downloads .

.­.­.

Atrapa ranas

Una rana salta en una recta numérica y el objetivo es atraparla. Saltar y atrapar se alternan. La rana comienza en la posición \(s \in \mathbb{Z}\) y con cada movimiento salta una distancia de \(z \in \mathbb{Z}\) (si \(z>0\) , salta a la derecha; de lo contrario, a la izquierda). \(z\) es la misma para cada salto. Atrapar a la rana implica especificar una posición entera. Ni \(z\) ni \(s\) se conocen. Demostraremos que existe un procedimiento que siempre nos permite atrapar a la rana.

.­.­.

Nombres de archivo largos en Windows 10

No sólo cuando se utiliza npm en Windows se encuentra con un límite que tiene casi 30 años y limita las rutas a carpetas y archivos a un máximo de 255 caracteres. No es NTFS el culpable aquí, es LFN . Esto provoca molestos errores e incompatibilidad entre sistemas operativos. Esta es una situación desafortunada en tiempos de WSL , pero afortunadamente ya has podido solucionarla tú mismo en el registro desde hace algún tiempo.

.­.­.

Colas de Laravel en localhost

En el framework PHP Laravel, en entornos de producción, procesos como el supervisor se encargan de ejecutar las tareas almacenadas en Redis , por ejemplo. Si se desea una gestión totalmente independiente de este proceso en localhost, se puede usar el controlador síncrono para ejecutar las tareas inmediatamente. Sin embargo, esto tiene la desventaja de que el proceso PHP actual se bloquea y la solicitud queda pendiente hasta que finaliza la tarea.

.­.­.

Consejo rápido: agrupe los objetivos en Google Analytics

Mediante la biblioteca JavaScript analytics.js de Google Analytics, se puede realizar un seguimiento de cualquier evento en los sitios web. Estos eventos incluyen, por ejemplo, la medición precisa del tiempo de permanencia, la profundidad máxima de desplazamiento de los visitantes u otras acciones individuales como el envío de formularios. Si posteriormente se desea evaluar campañas publicitarias o realizar pruebas A/B, se crean los llamados objetivos.

.­.­.

Invalidación pragmática de caché

El renderizado del lado del servidor es ahora una práctica estándar para sitios web y aplicaciones. Los navegadores como Google Chrome también tienden a almacenar en caché la mayor cantidad de datos posible para minimizar los tiempos de carga en las solicitudes posteriores. La invalidación de la caché de archivos CSS, JS e imágenes se puede lograr mediante `mod_pagespeed` , el encabezado de control `Expires` / `Cache` , un manifiesto de caché o, de forma más práctica y directa, agregando parámetros personalizados al nombre del archivo.

.­.­.

Bitbucket y claves SSH

El proveedor Bitbucket no ofrece (ni siquiera en las tarifas Standard y Premium de pago) la posibilidad de almacenar claves SSH con derechos de escritura a nivel de repositorio. Almacenar su clave SSH personal en el servidor de producción no es una opción; de lo contrario, puede acceder a todos los demás proyectos en los que está trabajando actualmente desde allí. Existen las llamadas claves de acceso , pero estas solo permiten derechos de lectura.

.­.­.

Windows Sysinternals a través de una unidad de red

Las herramientas Sysinternals de Mark Russinovich son esenciales para cualquier ordenador con Windows. Para tener siempre disponible la última versión, asigne una unidad de red. Simplemente ejecute el comando `net use s: \\live.sysinternals.com\DavWWWRoot` en la línea de comandos (como usuario normal). Esto le proporcionará acceso portátil a herramientas útiles como PsList, PsKill y Process Explorer en la unidad S.

.­.­.

Consejo rápido: Google Sheets y Calendar Weeks

Al generar semanas de calendario en una fecha específica, debe tener cuidado en Google Sheets (al igual que en Microsoft Excel). La función = SEMANA CALENDARIO (HOY ()) calcula utilizando el estándar americano, para el cual el primer día del año siempre se asigna a la semana 1 del calendario. En Alemania, esto se define de manera diferente: aquí, la primera semana del calendario es la semana a partir de la cual al menos 4 días caen en el nuevo año. En Google Sheets puedes resolver el problema (junto con otras alternativas interesantes como = ACORTAR ((HOY () - FECHA (AÑO (HOY () - DESCANSAR (HOY () - 2; 7) +3); 1; DESCANSAR (HOY ( ) -2; 7) -9)) / 7) y el = CALENDAR WEEK modificado (TODAY (); 21) ) fácilmente con la función especialmente diseñada = ISOWEEKNUM (TODAY ()) .

.­.­.

Certificados SSL autofirmados en Chrome 58

Desde Let's Encrypt , los sitios web cifrados se han convertido en práctica habitual. Los certificados SSL también son prácticamente indispensables en el desarrollo local (por ejemplo, navigator.geolocation requiere cifrado SSL localmente). Desde la versión 58 de Chrome, se ha eliminado la compatibilidad con CN (Nombre Común) y ahora es obligatorio SAN (Nombre Alternativo del Sujeto). Como resultado, Chrome ya no acepta ningún certificado SSL creado mediante métodos tradicionales .

.­.­.

Dos veces la edad de dos personas

Considere dos personas \(A\) y \(B\) que no tienen el mismo cumpleaños, donde \(A\) es menor que \(B\) . Mostrar: Hay exactamente dos constelaciones de edades \(a,b \in \mathbb{N}\) para las cuales se aplica lo siguiente: \(2\cdot a = b\) . Primero establecemos \(d \in \mathbb{R}^+\) como la diferencia de edad entre \(A\) y \(B\) en el nacimiento de \(A\) con \( d = d_0 + d_1 \) , \( d_0 \in \mathbb{N}_0, d_1 \in \mathbb{R}, d_1 \in [0;1[\) . Ahora consideramos un tiempo arbitrario \(x \in \mathbb{R}^+\) después del nacimiento de \(A\) con \(x = x_0 + x_1\) , \(x_0 \in \mathbb{N}_0, x_1 \in \mathbb{R}, x_1 \in [0;1[\) .

.­.­.

Git y carpetas vacías

Dado que Git no conoce carpetas, sólo archivos, las estructuras de carpetas vacías no terminan en el repositorio. Dado que muchos marcos y proyectos los necesitan absolutamente, deberían terminar ahí. Una práctica común es crear los llamados archivos de marcador de posición (a menudo llamados .gitkeep), que especifican implícitamente la estructura de carpetas. Puede crear fácilmente estos archivos y, si lo desea, asegurarse de que se ignoren otros archivos en las carpetas.

.­.­.

Alojamiento gratuito de Node.js con Heroku

El alojamiento para Node.js todavía no está muy extendido, especialmente en los países de habla alemana. La empresa estadounidense de nube Heroku ofrece una solución aquí, e incluso de forma gratuita . Siempre notas el paradigma "Construye aplicaciones ... no infraestructura" y todavía tienes pocas restricciones. Como ejemplo, estamos implementando un pequeño trabajo cron basado en PhantomJS , que borra un sitio web todos los días y envía el título de la página por correo electrónico.

.­.­.

Función de emparejamiento de Cantor

Además de los argumentos diagonales , Georg Cantor también desarrolló la función de emparejamiento de Cantor \(\mathbb{N}^2 \to \mathbb{W}, \quad c(x,y) = \binom{x+y+1}{2}+x = z\) , que codifica dos números cualesquiera \(x,y \in \mathbb{N}\) en un nuevo número \(z \in \mathbb{N}\) . Por ejemplo, \(c(3,4)=\binom{3+4+1}{2}+3 = \binom{8}{2}+3=\frac{8!}{6!\cdot 2!} +3 = 31 = z\) una codificación única de los números \(3\) y \(4\) en el número \(31\) . Mostrar: El conjunto de valores \(\mathbb{W} = \mathbb{N}\) , es decir, \(z\) asume todos los números naturales.

.­.­.

La tierra y el guisante

Considere la Tierra (como una esfera con \(r_1 = 6370km\) ) y un guisante (como una esfera con \(r_2 = 2mm\) ) y estire una cuerda a través del ecuador de modo que quede firme sobre la superficie. Ahora extienda ambas cuerdas un metro cada una. Ahora ambos cables deberían estar completamente extendidos sobre el ecuador, pero ya no están completamente en la superficie, sino que flotan sobre el ecuador. ¿A qué altura sobre la superficie flota la cuerda sobre la tierra, a qué altura sobre el guisante?

.­.­.

Probabilidades en el reloj analógico

¿En qué porcentaje del tiempo del día están las tres manecillas de un reloj analógico en la mitad derecha de la esfera? Primero, considere la manecilla de las horas, que está en el lado derecho cada 12 de las 24 horas (50%). A partir de este momento, el minutero estará a la derecha en 6 de 12 horas (25%). De estas 6 horas, el segundero pasa 3 horas en el lado derecho (12,5%).

.­.­.

Laravel: Trabajar con relaciones elocuentes

Laravel facilita mucho la comunicación con la base de datos con Eloquent. Cuando trabaje con Eloquent Relationships, al llamar a variables dinámicas (usando los métodos mágicos de PHP), debe tener en cuenta que las instancias de los modelos no reflejan nuevos cambios, sino que los almacenan en caché de forma permanente la primera vez que se llaman.

.­.­.

Bitbucket: eliminar carpeta del historial de Git

Al alojar Git en Bitbucket , hay un límite estricto de 2 GB; si se excede, solo tendrá acceso de solo lectura al repositorio. Para evitar esto, puede, por ejemplo, eliminar retroactivamente carpetas o archivos grandes de sus confirmaciones. Pero también en otros casos (si los datos de acceso han llegado al historial o node_modules ha vuelto a ser maestro) tienes que manipular retroactivamente el historial de Git, contrariamente a su naturaleza.

.­.­.

Integre el certificado SSL de DomainFactory en IIS

En la era de Let's Encrypt, los sitios web cifrados son ahora la norma. Sin embargo, también se requieren con frecuencia certificados comodín o extendidos con una validación de propietario especialmente fiable. DomainFactory ofrece certificados SSL económicos que también se pueden usar externamente. La configuración en un servidor IIS actual es posible sin una CSR mediante OpenSSL . A continuación, describiré brevemente los pasos necesarios.

.­.­.

Estrategia ganadora paradójica al adivinar números

Thomas M. Cover hizo la siguiente pregunta asombrosa en 1987 en "Problemas abiertos en comunicación y computación": El jugador \(X\) escribe dos números naturales \(A\) y \(B\) diferentes y elegidos al azar en dos números diferentes Trozo de papel y ponerlo boca abajo sobre una mesa. El jugador \(Y\) ahora selecciona al azar uno de estos trozos de papel, ve el número y ahora tiene que decidir si este número es menor o mayor que el otro número que todavía está en la mesa.

.­.­.

Fútbol y álgebra lineal

Cuando comienza un partido de fútbol, ​​la pelota descansa en el centro del campo y luego se mueve alrededor del campo durante 45 minutos moviéndose y girando. Al comienzo del segundo tiempo, el balón vuelve a estar en el centro del campo. Demostramos con medios simples de álgebra lineal que o un número infinito de puntos en la superficie están siempre exactamente en la misma posición que en el estado original o exactamente 2.

.­.­.

Laravel: depuración de plantillas Blade

Al depurar plantillas blade en Laravel 5.*, a menudo recibe mensajes de error sin sentido que apuntan a vistas almacenadas en caché. Antes todo era mejor: la vista de depuración en la versión 4 contenía funciones más útiles y también era visualmente más atractiva. Con unas pocas líneas de código, puedes recuperar esta funcionalidad con la ayuda de gritos (“Errores de PHP para niños geniales”).

.­.­.

Visualización armoniosa de logotipos con JavaScript

Ya sean referencias, socios o clientes, hay muchos casos en los que desea mostrar varios logotipos uno al lado del otro de manera armoniosa. Las proporciones de los logotipos son en su mayoría inconsistentes. A menudo, sigue su instinto para la representación del tamaño en el diseño, pero también existe un método de cálculo exacto para una representación visualmente atractiva equiparando las áreas de los logotipos. En el siguiente ejemplo, puede hacer esto con solo unas pocas líneas de JavaScript.

.­.­.

Verifique las variables en PHP / JS para la existencia

Cuando se trabaja con variables en PHP y JavaScript, a menudo uno se encuentra con la consulta de si una variable está vacía. Vale la pena conocer las funciones nativas y sus diferencias para fines de verificación. Es molesto que no haya una manera fácil de comprobar intuitivamente si una variable está presente o no. La siguiente matriz ilustra lo que se quiere decir con esto. Sin embargo, lo que desee se puede adaptar mediante pequeñas funciones auxiliares.

.­.­.

Llamadas telefónicas masivas con sipgate.io

Sipgate ha creado una emocionante API en la nube con sipgate.io , con la que se tiene una multitud de posibilidades en torno a la telefonía por Internet. Una cuenta es gratuita y también existe la opción de configurar cualquier número de remitente gratuito en la Tienda de funciones de forma gratuita. La documentación de sipgate.io aún se puede expandir, pero con un poco de lectura en la API oficial de Sipgate , puede darse cuenta rápidamente de cosas interesantes.

.­.­.

Recursión en SQL

Los sistemas de gestión de bases de datos relacionales basados en SQL solo son parcialmente adecuados para consultas jerárquicas o recursivas. Otros sistemas, como ArangoDB, son más apropiados para esto (hubo una excelente charla al respecto en GOTO 2016 ). Sin embargo, también es posible crear consultas recursivas en SQL utilizando expresiones de tabla comunes , lo que permite, por ejemplo, consultar tablas clásicas padre/hijo para obtener todos los ancestros y descendientes.

.­.­.

WordPress: desactivar páginas de archivo

Según w3techs.com , alrededor del 27,4% de todos los sitios web en todo el mundo se operan actualmente con la ayuda de WordPress. En muchos casos, estos no son blogs. WordPress genera automáticamente numerosas URL, a menudo no utilizadas, y produce tantos enlaces indexados por Google que el operador del sitio web ni siquiera tenía en la pantalla. Todo esto se puede desactivar con un simple comando.

.­.­.

Cambiar el nombre de los campos de formulario PDF de forma masiva

Si, como yo, se mete en el problema de cambiar el nombre de miles de nombres de campos de formulario, la consola JavaScript incluida en Acrobat es ideal. En esto, no solo puede ejecutar cualquier código JavaScript, sino también acceder a todo el contenido dentro del PDF (incluidos los campos de formulario). Dado que no hay una función nativa para cambiar el nombre en la API de JS, los campos del formulario con todas sus propiedades se copian y se les da un nuevo nombre.

.­.­.

Shopware: reparación de cambios de variante

En Shopware 5, todavía no se ha resuelto un problema conocido: si crea un artículo con variantes mutuamente dependientes con opciones de configuración mutuamente excluyentes, puede suceder que algunas combinaciones no se puedan seleccionar en la interfaz y, por lo tanto, no se puedan pedir. Con la ayuda de un complemento, el problema se puede solucionar fácilmente en este momento.

.­.­.

Una línea para el infinito de números primos

Existen numerosas pruebas de la infinidad de números primos: el conocido teorema de Euclides del Libro de los Elementos no falta en ningún curso básico de teoría de números. En el American Mathematical Monthly (número 122) de 2015, Sam Northshield publicó una prueba de contradicción no menos elegante en forma de una línea, que no quiero ocultarles (con breves comentarios).

.­.­.

Ilumina la línea de comandos de Windows

El aburrido símbolo del sistema de Windows se puede actualizar visualmente en unos simples pasos. Por lo tanto, no solo puede ajustar el color y el tamaño de la línea de comando, sino también expandirla funcionalmente (aumentando el búfer, instalando un gran conjunto de herramientas UNIX). El símbolo del sistema no se acerca a PowerShell 6.0 o al nuevo Windows 10 Bash Shell , pero no es necesario que se oculte para las tareas diarias.

.­.­.

URL dinámicas en Joomla

En los sistemas de gestión de contenido, las URL a menudo no están predeterminadas y, por lo tanto, no se crean de forma estática (como entradas o elementos de menú) con antelación, sino que acceden a objetos de la base de datos. De forma similar a WordPress ( como se describe aquí ), también es posible crear estructuras de URL dinámicas en Joomla (independientemente del sistema de alias interno). Esto se puede lograr con JRouter o con una sola línea de código en el archivo .htaccess.

.­.­.

JavaScript PasteJacking

Los navegadores modernos pueden usar JavaScript para acceder al portapapeles del usuario y manipularlo, tanto para leer como para escribir. La tecnología subyacente no es nueva, pero solo recientemente han surgido cada vez más ataques (conocidos como "pastejacking") que explotan esta capacidad en perjuicio de usuarios desprevenidos. Implementar esto en JavaScript es bastante sencillo.

.­.­.

Intercambiar columnas en PostgreSQL

El intercambio de columnas de la tabla SQL es parte del repertorio estándar con MySQL; esto (todavía) no es compatible con PostgreSQL. Aunque la wiki oficial dedica su propio artículo al problema, no muestra ninguna solución práctica que también admita vistas, índices y disparadores. La siguiente clase hace este trabajo (tanto para MySQL como para PostgreSQL) ya sea en la línea de comando, o alternativamente directamente en Laravel 5.

.­.­.

Sugerencia rápida para el Explorador de Windows

Si desea abrir rápidamente el símbolo del sistema en una carpeta en el Explorador de Windows, haga clic (un nivel más alto) con el botón derecho del mouse y mantenga presionada la tecla Mayús en la carpeta y luego seleccione "Abrir símbolo del sistema aquí" en el menú contextual. Acabo de descubrir otro método más rápido cuando estás dentro de la carpeta: aquí haces clic en la ruta de la carpeta actual, escribes "cmd" y confirmas con Enter.

.­.­.

Categorías de WordPress: Vista de árbol / Herencia

Al trabajar con categorías jerárquicas (taxonomías) en WordPress, notará que la visualización de las categorías seleccionadas en el panel de administración puede resultar confusa, y que las entradas no se guardan automáticamente en su categoría principal al moverlas a una subcategoría. Ambos problemas se pueden solucionar fácilmente con tan solo unas líneas de código mediante el potente sistema de hooks (en forma de acción y filtro).

.­.­.

PHP 7 y el operador de nave espacial

Además de las nuevas funciones, como la sugerencia de tipo para tipos de datos escalares o el rendimiento optimizado , PHP 7 también trae muchas extensiones de lenguaje nuevas y útiles. El "Spaceship Operator" finalmente ha entrado en el mundo de PHP (los programadores de Ruby y Perl lo conocen desde hace mucho tiempo). \($a <=> $b\) devuelve \(0\) si y solo si ambos operandos son iguales, \(1\) si el de la izquierda es mayor y \(-1\) caso contrario.

.­.­.

IIS 7.5 PHP FastCGI tiempo de espera

Si integra PHP a través de FastCGI en IIS 7.5, cada script se cancela de forma predeterminada después de 600 segundos (es decir, 10 minutos). Cambiar la conocida variable "max_execution_time" en php.ini no influye en esto; debe (también) ajustar la configuración de FastCGI. Para ello, IIS ofrece una cómoda interfaz para gestionar las variables relevantes.

.­.­.

Paradoja de la estocástica

La teoría de la probabilidad condicional implica tareas hermosas con soluciones contradictorias. Además del conocido problema de los hermanos , ahora me ocuparé brevemente de otro ejemplo: "Ahora tengo dos hijos. Uno de ellos es un niño y nació un jueves. ¿Cuál es la probabilidad de que el otro niño también sea un niño?"

.­.­.

Git, Shopware y carpetas vacías

El sistema de control de versiones de archivos Git es sencillo, rápido y portátil. Git siempre maneja objetos, es decir, archivos. Las carpetas solo se crean si hay archivos en ellas, de lo contrario, Git ni siquiera las grabará. Esto tiene efectos secundarios desagradables en algunos proyectos. Por ejemplo, el sistema de la tienda Shopware se basa en un estricto cumplimiento de la estructura de carpetas para funcionar.

.­.­.

Shopware: Gastos de envío individuales

Shopware tiene un poderoso módulo de costos de envío en el que puede intervenir específicamente en el cálculo. En nuestro caso, queremos implementar el siguiente escenario: Los gastos de envío por artículo se determinan inicialmente en función del peso del artículo (se especifican los límites de peso). Solo para excepciones especiales debería ser posible establecer costos de envío fijos para cada artículo.

.­.­.

Enlaces permanentes dinámicos en WordPress

El sistema de enlaces permanentes de WordPress se puede adaptar muy bien a sus propias necesidades con la ayuda de etiquetas de estructura . La configuración% postname% es probablemente la solución más común y práctica. Sin embargo, si desea implementar enlaces dinámicos reales, primero debe expandir el sistema con su propio código.

.­.­.

Hipervínculos corruptos en Word y Excel

Cabría esperar que al abrir hipervínculos desde un documento de Word o Excel se iniciara el navegador predeterminado con la URL deseada. Curiosamente, esto no sucede, lo que provoca efectos secundarios indeseables e imposibilita el acceso a páginas protegidas mediante inicio de sesión o cookies en estos programas de Office.

.­.­.

Una paradoja para el día del padre

Para el Día del Padre de hoy, una hija le está regalando a su padre un cuadro que ella misma pintó y que su padre había anhelado. La hija dice: "Te daré la foto que has deseado y mi regalo será una sorpresa". El padre hace una pausa y reflexiona sobre la verdad de esta declaración.

.­.­.

Integre scripts dinámicos con y sin HTTPS

Si incluye scripts no cifrados en el área <head> y abre una página con un certificado SSL existente cifrado, estos scripts se bloquean y, por lo tanto, no se ejecutan. Si simplemente omite el protocolo, todos los scripts se invocan automáticamente en forma encriptada si se accede al sitio web a través de https: //; de lo contrario, no se encripta.

.­.­.

Usabilidad en menús desplegables

Al trabajar con menús desplegables multidimensionales, es frecuente encontrarse con el problema de abrir accidentalmente el submenú incorrecto o cerrar accidentalmente el submenú deseado. Esto ocurre cuando el cursor del ratón abandona el menú principal mientras se navega hacia un submenú ya expandido.

.­.­.

Shopware: Desactivar variantes automáticamente

En Shopware , todo el artículo se desactiva en el caso de un pedido real si todas las variantes tienen un nivel de stock menor o igual a 0. Para implementar esto de manera variada, programé un pequeño complemento, cuyo Bootstrap.php proporciono a continuación.

.­.­.

Consulta de doble contraseña con SSL

El siguiente escenario siempre genera un efecto secundario indeseado: si protege su sitio con htaccess/htpasswd y, al mismo tiempo, fuerza una conexión SSL, siempre tendrá que introducir la misma contraseña dos veces (una para http y otra para https tras un acceso correcto). Este problema se puede solucionar fácilmente utilizando las secciones de configuración introducidas en Apache 2.4.

.­.­.

Cadenas de varias líneas en JavaScript

Al programar con JavaScript, a menudo uno se tropieza con la incapacidad de implementar cadenas de varias líneas al ingresarlas en varias líneas en el código. Si bien la tarea en otros lenguajes como PHP o Ruby no es un problema, con JavaScript inicialmente solo puede solucionarse con soluciones, cuyo uso lo decide el gusto personal o el soporte del navegador.

.­.­.

mail () en PHP con UTF-8 y diéresis

El envío de correos electrónicos con PHP se implementa mejor con clases poderosas como PHPMailer . Las prácticas funciones de envoltura hacen posible utilizar contenido UTF-8, incrustar imágenes y enviar archivos adjuntos cifrados con solo unas pocas líneas de código. Si desea ahorrarse la sobrecarga y, contrariamente a la recomendación, usa la función PHP mail () , tendrá problemas al usar diéresis y UTF-8 a más tardar.

.­.­.

Google PageSpeed ​​Insights vs. Google analitico

Las herramientas de validación como el Servicio de Validación de Marcado del W3C o Google PageSpeed Insights son útiles para evaluar objetivamente el código y el rendimiento de un sitio web. Google, en particular, influye en toda una industria con conceptos como "por encima del pliegue" y también establece directrices estrictas pero útiles sobre la compresión y el almacenamiento en caché de imágenes. Sin embargo, al hacerlo, Google a veces comete errores.

.­.­.

Bienvenido JavaScript 2.0

JavaScript domina la web, y ECMAScript, el núcleo del lenguaje, está madurando. La nueva especificación (ES6 o JS2), prevista para mediados de año, trae consigo numerosas innovaciones que ya se pueden probar. Firefox ofrece actualmente la mejor compatibilidad , pero también es posible usar polyfills mediante transpiladores como Google Traceur . A continuación, se presenta un breve resumen de las nuevas características de ES6.

.­.­.

0,99999... = 1?

Ya sea en la escuela o en la universidad: una pregunta interesante que \( 0,99999... = 1 \) cuando incluye la pregunta de si la siguiente ecuación es cierta: \( 0,99999... = 1 \) . Aunque el infinito \(0,99999... = A\) en la parte izquierda de la ecuación, le damos un nombre: \(0,99999... = A\) . Después de la multiplicación por el factor \(10\) y las transformaciones algebraicas simples, obtenemos una primera idea asombrosa.

.­.­.

SQL: bajo rendimiento a pesar del índice

Acabo de enfrentarme al siguiente problema de rendimiento de una base de datos SQL: En una tabla SQL llamada "usuarios" con ~ 1,000,000 de entradas, tomó 28 segundos inaceptables para determinar el número de registros hoy. Los tiempos de los registros se guardaron en el formato “Ymd H: i: s” en la columna “creado”.

.­.­.

Pequeño problema de ajedrez

Además del conocido problema del caballo y el problema de la reina, hay muchas otras preguntas interesantes en el mundo del ajedrez. Toqué dos pequeñas curiosidades en una entrada de blog anterior. Si se ocupa matemáticamente de problemas de ajedrez, descubrirá rápidamente que las matemáticas dan respuestas muy sencillas y esclarecedoras para muchas preguntas.

.­.­.

Archivos disponibles en línea con OneDrive

Si OneDrive, Dropbox, Google Drive, OwnCloud, Box.net: Independientemente de la caja en la que guarde sus archivos, los servicios son casi los mismos. Los clientes disponibles para todos los sistemas de escritorio y móviles, los archivos no cifrados estándar y las opciones para compartir difieren solo marginalmente. Pero OneDrive, que se ha integrado permanentemente en el sistema desde Windows 8.1, tiene una característica especial: solo archivos disponibles en línea.

.­.­.

PHP: acceso a archivos con diéresis en Windows

Los archivos en los servidores web siempre deben almacenarse sin espacios (no "esta es una imagen.jpg"), sin diéresis ni caracteres especiales (no "fútbol.jpg"), sin barras invertidas (no "trabajo\coche.jpg") y en minúsculas (no "prueba.JPG"). Sin embargo, recientemente, para un proyecto de un cliente, tuve que acceder y procesar una gran cantidad de archivos predefinidos con nombres arbitrarios.

.­.­.

Consulta SQL para determinar una lista de clasificación

Hoy me encontré con la siguiente tarea mientras trabajaba en el proyecto de un cliente: tomar una tabla SQL "usuario" con las columnas "id" y "puntuación" y determinar una lista de clasificación de todos los usuarios, ordenados según la "puntuación", en la que los usuarios con la misma puntuación obtienen la misma clasificación. Al utilizar variables definidas por el usuario, esta tarea se puede resolver de forma intuitiva y sencilla.

.­.­.

SDK de Facebook: verifique los tokens en el lado del servidor

Cuando se trabaja con el SDK de Facebook (más precisamente cuando se implementa una función de inicio de sesión de Facebook dentro de una interfaz REST), el token transmitido, que el cliente recibió de Facebook, debe ser verificado primero por el servidor para verificar su validez antes de que se lleven a cabo más operaciones. .

.­.­.

Chrome DevTools: abordar elementos DOM

Ya sea Chrome, Firefox, Opera, Safari o incluso Internet Explorer: si bien las herramientas de desarrollo bien diseñadas fueron un punto de venta único de Firefox y el popular complemento de Firebug hasta hace unos años, las potentes herramientas de desarrollo ahora forman parte del alcance estándar de todos los navegadores en los que hay mucho por descubrir. da.

.­.­.

Acceso al sistema de archivos mediante SQL

Recientemente descubrí una ingeniosa manera de acceder al sistema de archivos y obtener información valiosa, como la existencia de archivos y carpetas o su contenido. Esto puede ser muy útil como alternativa a la función ` file_exists` de PHP, ya que la información sobre la existencia de los archivos se puede usar en la consulta para funciones de ordenación y agregación.

.­.­.

Fondos animados con lienzo

Los fondos vectoriales animados pueden agregar variedad a un paisaje web caracterizado por fotos y videos en pantalla completa. Sería bueno si esto fuera de la mano de tiempos de carga y un amplio soporte de hardware y software. Una solución es: lienzo. El elemento HTML controlado por JavaScript es compatible con todos los navegadores actuales y se reproduce con alto rendimiento en dispositivos móviles.

.­.­.

Relación de aspecto fija para elementos HTML

Como desarrollador web, a menudo te encuentras con el dilema de trabajar con elementos HTML que, a diferencia del elemento img, por ejemplo, no tienen ni un tamaño fijo ni una relación de aspecto fija. A menudo desea asegurarse de que estos objetos se comporten de manera receptiva, pero manteniendo la proporción entre ancho y alto. De forma predeterminada, CSS no ofrece una solución intuitiva aquí. Pero con la ayuda de la propiedad de relleno vertical puedes lograr tu objetivo.

.­.­.

Fallo judicial sobre el uso de fotografías de archivo

Después de que el Tribunal Regional de Colonia rectificara la semana pasada en el escándalo de RedTube y nunca debiera haber autorizado la divulgación de las controvertidas direcciones IP, ahora ha emitido otra sentencia sumamente polémica y cuestionable con la decisión 14 O 427/13: El autor de las fotos de archivo de una agencia de imágenes específica también debe ser nombrado cuando se accede a sus imágenes directamente a través de su URL.

.­.­.

Adiós Block & Inline - Bienvenido HTML5

Las innovaciones de la especificación HTML5 son numerosas y muchas de ellas ya son compatibles con la mayoría del panorama de navegadores; a continuación me gustaría destacar un cambio interesante en las reglas para anidar elementos. HTML siempre ha distinguido entre elementos en bloque y en línea. Por ejemplo, la Definición de tipo de documento de HTML4 enumera h1, p y div como elementos de bloque y a, span e img como elementos en línea.

.­.­.

Registro HTTP en IIS y Apache

Tanto Apache en Unix como IIS en sistemas Windows registran las solicitudes HTTP listas para usar en forma de archivo. Para protegerse contra ataques de piratería, las consultas a su propio sitio web deben evaluarse y analizarse periódicamente de forma manual y automática (por ejemplo, utilizando analizadores de archivos de registro como AWStats ). Por ejemplo, en configuraciones ampliamente utilizadas, las rutas de los archivos de registro relevantes son las siguientes:

  • /var/log/apache2/access.log (Ejemplo: Ubuntu 12.04, Apache 2.2)
  • C:\inetpub\logs\LogFiles\W3SVC1\u_ex<YYMMDD>.log (Ejemplo: Windows Server 2012 R2, IIS 8.5)
.­.­.

Joomla, IIS y los derechos de directorio

Cuando se integra Joomla 3.2 en un Windows Server 2008 R2 con IIS 7.5, a menudo surgen problemas con los derechos de directorio, que a menudo se resuelven de manera inadecuada con configuraciones que se eligen con demasiada generosidad. La siguiente solución es segura y completamente funcional:

  • El grupo IIS_IUSRS necesita los derechos para C: \ inetpub \ wwwroot \: leer y ejecutar, mostrar el contenido de la carpeta, leer, escribir
  • El grupo IIS_IUSRS necesita los derechos para C: \ Windows \ Temp \: Leer y ejecutar, Mostrar el contenido de la carpeta, Leer, Escribir
  • El usuario IUSR debe estar en el grupo IIS_IUSRS (Administración de equipos> Usuarios y grupos locales> Grupos)

Si necesita derechos de directorio especiales adicionales (por ejemplo, para SSH o FTP) para todos los archivos cargados a través de PHP, también debe configurarlos para la carpeta C:\Windows\Temp\. Si carga un archivo a través de PHP, PHP primero copia este archivo en la ruta temporal y luego en la ruta final. Si el archivo terminó en el directorio temporal, hereda sus derechos y los retiene después de ser movido al directorio final.

.­.­.

Anónimo en línea: ¿Imposible?

En tiempos del escándalo de la NSA, no son solo los usuarios expertos en redes los que se preguntan si se puede navegar por Internet de forma anónima y cómo se puede escapar del frenesí de recopilación de datos de las autoridades y los servicios secretos. Sin embargo, esto a menudo conduce a errores y suposiciones incorrectas. Un error fundamental es la reducción del anonimato a la ofuscación de la dirección IP.

.­.­.

McFIT - nuevo logo, nueva imagen

La cadena de descuento de fitness McFIT se renueva. Mientras que antes una mascota de color amarillo brillante con forma de plátano adornaba las letras azules, ahora un lazo amarillo sobre un fondo de color antracita se envuelve hábilmente formando una estructura abstracta. Los colores FDP azul y amarillo no sólo aparecen en el logotipo, sino también en todos los demás artículos impresos de la marca McFIT.

.­.­.

Photoshop: viaje en el tiempo

Cuando los hermanos Thomas y John Knoll empezaron a desarrollar Adobe Photoshop en 1987, yo aún no había nacido. Hoy, en 2013, el software es uno de los programas más populares en general y está considerado el líder indiscutible en el sector de la edición de imágenes. Gracias a Adobe y al Museo de Historia de la Computación, el software ahora se conservará para la posteridad en una forma muy especial.

.­.­.

Curiosidades en el juego de reyes

El ajedrez ha fascinado a la gente durante siglos: sus reglas son fáciles de aprender y su increíble profundidad solo es accesible para jugadores experimentados (desafortunadamente ninguno de ellos). A continuación, abordaré dos breves preguntas: ¿Es posible, mediante una secuencia correcta de movimientos, llegar a una posición en la que el rey negro sea atacado por dos reinas blancas al mismo tiempo? ¿Es esto también posible con dos torres blancas?

.­.­.

Docu-soap en lugar de blockbuster: 48 fps

Las películas normalmente se graban y reproducen a 24 fotogramas completos por segundo, pero el formato estándar "24p", de casi 100 años de antigüedad, parece tambalearse. Para evitar los desagradables efectos secundarios de la proyección a 24 fps (p. ej., fuertes sacudidas durante el movimiento de la cámara a velocidad media), se viene trabajando desde hace tiempo para duplicar la velocidad de fotogramas a 48 fotogramas por segundo y más.

.­.­.

Revisar la ortografía en sitios web

La revisión automática de ortografía y gramática es ahora un equipo estándar en los programas de procesamiento de texto, pero revisar la ortografía de un sitio web de forma automática ha sido relativamente engorroso hasta ahora. Google Chrome está dando un primer paso en esta dirección con una verificación integrada en los campos de entrada de varias líneas (área de texto). Ahora hay un servicio que lo hace posible para sitios web completos.

.­.­.

Números de teléfono en los enlaces: ¿un riesgo para la seguridad?

Hace unas semanas informé sobre cómo puede permitir que sus visitantes abran la aplicación de teléfono en dispositivos móviles tocando un número de teléfono. Ahora ha surgido la posibilidad de bloquear irrevocablemente la tarjeta SIM o restablecer el dispositivo a la configuración de fábrica sin ninguna acción por parte del usuario.

.­.­.

Curiosidades interesantes por correo electrónico

¿Los nombres de dominio y las direcciones de correo electrónico deben estar siempre en minúsculas para asegurarse de llegar a donde desea ir? ¿O es esto completamente irrelevante? Los servidores de correo de Google, por ejemplo, tienen configuraciones extrañas con efectos interesantes, que presentaré brevemente a continuación.

.­.­.

Diseño de los precios bursátiles en los temas diarios.

Sigo de cerca el diseño de varios programas de la televisión alemana. Casi ningún programa conserva su diseño corporativo de forma permanente. El ritual vespertino del encuentro frente a la pantalla del televisor a las 22.15 horas sobre los temas de la jornada me ha estado provocando dolor de estómago últimamente: desde hace algunos meses se ha optado por un esquema de color completamente confuso para la presentación de los precios bursátiles actuales.

.­.­.

Vincular números de teléfono correctamente

Si optimiza su propio sitio web para dispositivos móviles, no sólo debe prestar atención a los diferentes tamaños de pantalla, tiempos de carga optimizados y funciones especiales en funcionamiento (como efectos de desplazamiento), sino también tener en cuenta las capacidades especiales de los dispositivos. Esto también incluye (algunas personas pueden haberlo olvidado) hacer llamadas telefónicas.

.­.­.

Contenido duplicado en blogs

Google suele penalizar el contenido idéntico en varios sitios web; sin embargo, su algoritmo es inteligente y reconoce si los elementos del encabezado y el pie de página son consistentes o si se puede acceder a pasajes de texto completos dos veces bajo diferentes URL. Resulta particularmente interesante cómo Google gestiona las páginas de resumen de artículos de blog.

.­.­.

Aumente la seguridad de WordPress

La seguridad de WordPress, actualmente el sistema de gestión de contenido más popular, puede mejorarse significativamente modificando dos sencillas configuraciones. Esto solo requiere 5 minutos y dos líneas de código. Si bien el problema también puede solucionarse con diversos plugins, aquí me limitaré deliberadamente a soluciones sin plugins.

.­.­.