Supongo que habrá dos tipos de personas leyendo este post (¡y que conste que el comentario no tiene que ver con el chiste!). Los que habrán pillado al vuelo de que irá y los que habrán pensado: ¿Qué se les habrá ocurrido ahora a esta gente de Iniqua.com?.
Para ser franco es una frikada. Sí, lo sé. Este post va de cómo con un solo IDE podemos programas con esos lenguajes de programación (de ahí lo de 1<->N
) que tal vez nunca nos hubiéramos imaginado que se pudiera. Vamos, lo que hace Eclipse o Netbeans pero con Visual Studio, que parece que es muy estricto y poco versátil.
No sé si a vosotros os pasa, pero cuando se llevan varios lenguajes en rueda es muy molesto tener que estar cambiando de uno a otro constantemente. Que si para mis scripts uso Python o Perl. Para web uso .Net, Java o php. O para entorno de escritorio uso .Net o Java. Es muy molesto tener que tener un editor para cada cosa. ¡Y no vale que me digáis que use Vim o Emacs!, que para cosas relativamente pequeñas está bien, pero para algo de más envergadura no es viable.
Si os gusta Visual Studio y estáis acostumbrados a él, ¿porqué no integrarlo todo?. Aquí os presentamos una serie de plugins con los que poder tener un todo en uno:
Un poco de teoría sobre búsquedas en BBDD.
Hoy os queremos contar algo que probablemente os deje a muchos con la sensación de que os estamos mintiendo. Puede que el título del post sea algo populista, pero realmente es cierto, así que: ¿Por qué no ponerle un nombre llamativo? J.
Antes de continuar, decir que para que le saquéis más jugo al post deberíais de saber SQL, aunque sea de forma muy básica. Los ejemplos mostrados y todo lo aquí expuesto está hecho con MySQL, pero estar característica no exclusiva de SGBD. Otros gestores (MS SQL Server) también disponen de ella. Para hacer nuestra base de datos de ejemplo y lanzar las consultas hemos usado, por comodidad, MySQL Workbench 5.2 OSS.
Cuando acabéis de leer el post conseguiréis que una búsqueda que antes tardaba en ejecutarse 12 segundos, se ejecute en 0.047 segundos!!!. Como dirían en la teletienda: increíble, pero cierto. Y para muestra un botón:
Conseguirás pasar de esto:

A esto:

El que más o el que menos ha hecho alguna vez (o al menos lo a usado) un típico buscador en una página web. Cuando escribes lo que quieres buscar, internamente se suele transformar en un consulta más o menos como sigue:
SELECT campo1,campo2,…,campoN FROM Tabla1, Tabla2…, TablaN WHERE Campo1 LIKE 'VALOR DE ENTRADA';
Este es el ejemplo más sencillo de consulta que podemos encontrar, y menos eficiente, porque si escribes dos palabras irían dentro del mismo "LIKE". Por eso lo que se hace es separar cada valor de lo que escribamos y construir sentencias con múltiples condiciones:
SELECT campo1,campo2,…,campoN FROM Tabla1, Tabla2…, TablaN WHERE Campo1 LIKE 'ENTRADA1' AND Campo1 LIKE 'ENTRADA2' … ;
Hace unos días realizando una busqueda por la red, utilizando Google claro. Nos encontramos con unos resultados que me animaron a escribir un poco sobre como recorrer y analizar la información que Google nos puede llegar a mostrar.
Bajo estas mismas premisas desarrollamos las primeras versiones de plecost. Ahora veremos lo sencillo que es realizar este tratamiento ayudados de algunas librerias.
La búsqueda
Lo primero es realizar la búsqueda, algunos de los operadores de Google más interesantes son los siguientes:
allintext:, allintitle:, allinurl:, cache:, define:, filetype:, id:, info:, intext:, intitle:, inurl:, related:, site:
En este caso utilizaremos filetype, inurl y intext para localizar los ficheros phpinfo() que son nuestros objetivos. En la siguiente captura vemos la salida del buscador:

Si conocéis a alguien que tenga un MAC, o si vosotros mismos lo tenéis, posiblemente una de la frases que oigáis con mayor frecuencia sea relacionada con el tema del rendimiento: y realmente es cierto.
Seguramente no seréis el primero, ni el último, que se enganche al “fruto del árbol prohibido”. No solamente por su impecable diseño, sino por su OS X y su sorprendente rendimiento. ¿Que me diríais si os dijera que podríais conseguir (o al menos aproximarlo bastante) ese rendimiento que os ofrece la compañía de la manzana en vuestro GNU/Linux?. Pues sí, es posible. Veamos cómo: