a

anpep

Usuario (Estados Unidos)

Primer post: 16 abr 2014Último post: 13 sept 2014
14
Posts
5102
Puntos totales
250
Comentarios
Por qué usar un framework para PHP
Por qué usar un framework para PHP
InfoporAnónimo5/14/2014

Para mi un framework representa una base, tanto de funcionalidades como de ideas y esquemas de trabajo, pero para definiciones ya está wikipedia, tampoco quisiera hablar o recomendarles uno en particular, pero por si les interesa en PHP Frameworks encontrán bastantes. En lugar de eso me gustaría decirles por qué es importante para mí hablar de esto. La razón es ganar tiempo. Y, ¿cómo logramos ganar tiempo usando un framework? Bueno creo que hay varias ventajas de usar un framework que nos ayudarán a ganar tiempo, estas son las que por experiencia propia considero importantes aunque seguro no serán las únicas Set de funcionalidades básicasBueno a quien no le gustaría contar con un sistema de autenticación, o uno de autorización, o empezar a desarrollar su aplicación contando ya con todo el código de acceso a DB a su disposición y con un funcionamiento ya probado, genial no creen. La idea de esto es que te enfoques en resolver los problemas propios de tu aplicación y no aquellos triviales y comunes a la mayoría de las aplicaciones, además en lo que respecta a la actualización de estas funcionalidades también obtienes ventaja ya que en muchos casos va por cuenta de los creadores del framework que de forma continua están actualizando y mejorando las cosas . Ideología y esquema de trabajoTodos entendemos las cosas de diferentes maneras, y a veces esto nos trae algunas dificultades, dado que cada quien programará a su manera, haciendo que la aplicación se vuelva más compleja de entender, no importando el número de desarrolladores que en ella participen. Lo que un framework nos ofrece es una forma de hacer las cosas, permitiéndonos seguir un camino estándar para programar nuestra aplicación. Esto se hace comúnmente mediante el uso un Patrón de Diseño, lo que nos permite saber donde está cada cosa, por lo que es mucho más fácil identificar donde se encuentran los errores cuando estos se presentan y dependiendo del patrón de diseño que se maneje, usualmente MVC, también nos permite dividir los problemas en problemas más chicos, manejables e independientes uno del otro permitiendo a más desarrolladores participar simultáneamente en la resolución de un problema. ComunidadEs importante que cuando te enfrentas a un problema puedas consultar alguna fuente o alguien sepa algo que te pueda ayudar a resolverlo, y es precisamente eso lo que consigues cuando un montón de gente se ha enfrentado a situaciones similares a la tuya. Es genial que puedas consultar exactamente la solución de tu problema porque a alguien ya le sucedió o al menos obtengas buenas pistas que te ayuden a resolver tu problema más rápidamente. Además si usas un framework popular con una comunidad grande es mucho más fácil encontrar gente que sepa desarrollar de la misma forma que tú, así que si necesitas ayuda o quieres aumentar tu equipo de trabajo seguro encontrarás a alguien más rápidamente y logrará integrarse de mejor manera y menos tiempo al desarrollo de tu aplicación. Y aunque no todo son ventajas, pues para usar un framework irónicamente se requiere tiempo de aprendizaje, en algunos casos cuesta capacitarse y también esta el hecho de que ninguno es perfecto o cuenta ya con todas las herramientas necesarias yo recomiendo ampliamente su uso, especialmente cuando programas en equipo. Se que hay personas a favor y otras en contra de usar frameworks, yo en lo personal estoy completamente a favor, pero quisiera recomendarles dos cosas, la primera, sigan leyendo, es importante conocer más acerca del tema, y la segunda y más importante, dense la oportunidad experimentar con un framework, porque la única forma de saber si usar un framework es bueno o malo, es usándolo.

0
23
bol – Hice un juego raro y te lo muestro
1·346
109
V
vul – ¡A esconder el porno!
InfoporAnónimo8/4/2014

Sin descripción

273
20
P
pi – Sube decenas de imágenes a la vez
Hazlo Tu MismoporAnónimo5/29/2014

__________Aún hay gente que opina que, con todas las facilidades que se dan para subir imágenes __________y los miles de hosts que hay, es difícil subir una imagen a Internet. __________Bueno, pues ya no hay excusa. Con esta trepidante app tope-de-tocha vas a poder __________subir muchísimas imágenes a la vez en tan sólo instantes con un simple movimiento de __________ratón __________Es muy fácil usarlo, simplemente abres la carpeta donde tienes todas tus imágenes __________y arrastras las que quieres subir a la ventana de la aplicación. Nota para los "linces" denunciadores de "maquinolas" Esta aplicación no puede robar tu cuenta ni tampoco es un virus, como prueba de ello, puedes ver el código fuente de la aplicación (más abajo está el link). Tampoco estoy infringiendo derechos de autor porque la aplicación la hice yo __________¿Que te arrepientes? No pasa nada: haz doble click sobre la imagen para eliminarla __________de la lista, entonces no se subirá. __________Ahora sólo hace falta hacer click en el botón Subir (como para no verlo ) __________iyatá! En unos segundos se subirán todas las imágenes a Imgur y se mostrará __________el BBCode en esta ventana, para que lo puedas usar en posts, temas, o para __________bardear en los comentarios ¿Cómo lo descargo? __________Por una buena razón, los hermanos Botbol asesinaron a las descargas con el __________nuevo protocolín. Pero no te preocupes, si lo quieres descargar, entra en: https://anpep.ga/pi __________Ahí podrás encontrar cómo descargar la aplicación. __________Ademas, no necesita instalación, la descargas, la ejecutas y, ¡hala, a subir __________imágenes! __________Lamentablemente el app sólo está disponible para Windows, pero seguro __________que con el tiempo la haga para Linux también __________Por cierto, necesitarás .NET Framework 2.0 para que puedas hacer __________funcionar la aplicación, pero se supone que viene preinstalado junto con XP El conocimiento es libre. __________Como me caen bien los Linuxeros y no tengo nada que ocultar, la aplicación es de código __________abierto, para que puedan ver cómo funciona el app. Lo único que no se incluye en el código __________es la clave del API de Imgur, que se supone que debería ser "secreta", pero aún así la __________pueden sacar fácilmente (el que entienda lo entenderá ) __________En fin, el código fuente (escrito en C#) lo puedes encontrar en la misma página, justo __________debajo del enlace para el ejecutable. __________Y eso ha sido todo Si necesitas ayuda, tienes alguna duda o idea __________mándame un MP o un e-mail a me (arroba) anpep (punto) ga

130
12
C
cup — Graba tu escritorio en un GIF
Hazlo Tu MismoporAnónimo6/16/2014

________¡Hola! ________No estoy seguro de si alguien ha tenido alguna vez el mismo problema, pero personalmente ________yo siempre he necesitado una aplicación capaz de grabar el escritorio en un GIF y que ________éste se suba a Internet de forma automática, con sólo pulsar un par de teclas. ________Bueno, pues como tenía la agenda algo apretada y de repente surgió un poco de tiempo libre. ________decidí hacerlo por mí mismo aprovechando que sé algo de C# ________Básicamente la aplicación pone un icono (bastante lindo, para mi gusto) que tiene varia ________funciones: Boton izquierdo o combinación de teclas.Te pide que selecciones un área de la pantalla y empieza a grabar directamente. Boton derecho.Muestra un menú contextual con diferentes opciones de la aplicación. ________Una de las ventajas que tiene cup es que es bastante personalizable. Mediante la ventana ________de Preferencias es posible cambiar algunas de las opciones disponibles para grabar. Empezar/terminar de grabarSirve para establecer la combinación de teclas que se podrá usar para comenzar una grabación o, si ya se está grabando, dejar de grabar y guardar el GIF. La combinación de teclas funciona desde cualquier sitio, y basta con pulsar Ctrl junto a la tecla que le asignes (desde F1 hasta F12) para activarla. Por defecto es Ctrl+F12 Repetir animación: Esto permite determinar las veces que se repetirá el GIF una vez que éste termine de reproducirse. Se puede repetir desde una hasta 100 veces. Repetir para siempre Cuando se activa esta opción, se ignora el valor del campo anterior (Repetir animación) y el GIF se repetirá de forma indefinida. Guardar en: ¡Magia negra! Puedes cambiar esto para que el GIF se suba a Internet o se guarde en una carpeta en tu equipo. Por defecto se guarda en una carpeta. Si no es posible subir el GIF a Internet, se guarda en la carpeta especificada. Seleccionar carpeta En caso de que en el campo anterior (Guardar en) hayas seleccionado la opción Carpeta, te permite cambiar la carpeta en la que se guarda la grabación. La ubicación por defecto es la carpeta de Imágenes Texto Este campo es increíblemente mágico. Añade a la grabación el texto especificado (con un máximo de 16 caracteres) en la esquina inferior derecha con la fuente que tu elijas. ¡Genial! Fuente En caso de que el valor del campo anterior (Texto) no esté en blanco, te permite cambiar la fuente del texto cuando éste se añada al GIF. La fuente por defecto es Arial Y creo que no hay mucho más que explicar Obviamente, si tienes alguna duda, la puedes consultar por MP. Por otro lado, por si aún no ha quedado claro, yo he sido el que ha hecho la aplicación, y por tanto subirlo a Internet no viola los derechos de nadie (ni tampoco los izquierdos ), así que espero que no me vengan a borrar el post. Sobre la licencia, bueno, no dice nada en la propia aplicación, pero ya te digo yo que está licenciada bajo la WTFPL, que se resume en: haz lo que quieras, y ya está Para obtener la aplicación, ve a: anpep.ga/cup Una vez allí, encontrarás (¡oh dios!) miles de enlaces. Si tienes Windows de 32 bits o no sabes qué quiere decir "32 bits", haz click en el primero. Si tienes Windows de 64 bits, haz click en el segundo. Si tienes Windows 8 (sólo Windows 8, o Windows 8.1), selecciona el tercero o cuarto dependiendo de si es de 32 o 64 bits. Por último, puedes obtener el código fuente de la aplicación Otra cosita de la que me percaté cuando descargué uno de los archivos para probar es que Google Chrome te dice que puede ser peligroso. No te preocupes, no es peligroso, simplemente como casi nadie lo ha guardado, Google no sabe si el archivo es malicioso o es normal. De todas formas, si eres un paranoico, puedes analizarlo con cualquier antivirus si quieres, no es peligroso. ¿Y ahora cómo lo instalo? Bueno, puedes abrir el archivo directamente y abrir entonces el programa, entonces se mostrará el icono en la barra de tareas, pero cada vez que inicies sesión en Windows tendrías que estar abriendo el programa No obstante, hay una forma de que cup se inicie con el sistema Es muy sencillo, simplemente extrae el archivo al escritorio, y abre la carpeta "Inicio" (o Startup) del menú de Inicio (Todos los programas). Entonces arrastras cup.exe a dicha carpeta. Entonces, en la carpeta que acaba de abrirse, arrastra la apliación y (si no lo has abierto antes), haz doble click sobre ésta. Esto hará que se inicie siempre que inicies sesión. Y bueno, creo que esto ha sido todo. Si tienes alguna duda, encuentras algún bug o tienes alguna idea, mándame un MP (yo sí los leo, no tengo rango Desarrollador ). Ah, y no olvides darle al botón de Recomendar, no seas malagradecido

438
0
shrr - Codifica texto a imagen y viceversa
shrr - Codifica texto a imagen y viceversa
Hazlo Tu MismoporAnónimo4/16/2014

Hola. Antes de nada, me presentaré ante todos aquellos que no me conozcan. Soy @anpep na persona n̶o̶r̶m̶a̶l que tiene como hobbie escribir una cosa rara que los nerds llamamos código. Hoy en día, gran parte de la tecnología que conocemos y usamos diariamente en nuestra vida cotidiana funciona gracias al código, es la base de la tecnología moderna: celulares, PlayStation, televisores, cadenas de música, ordenadores, páginas web e incluso microondas. En este post, voy a mostrar una especie de algoritmo hecho con código (que en este caso, sirve para páginas web y recibe el nombre de PHP) que tiene como utilidad codificar texto en una imagen, y tras hacerlo ser capaz de decodificar esta imagen y obtener de vuelta el texto. Lo primero es lo primero: tengo que buscar una forma de lograr lo que quiero. Los colores de los ordenadores van representados por un número. Este número tiene dentro tres valores que son combinados para formar un color: rojo, verde y azul, así que lo primero que pensé fue en convertir cada letra o número a un número que represente un color determinado y luego éste se decodifique a la letra partiendo de ese número, pero me di cuenta de que en algúna parte del proceso, el color varía (aunque varíe en uno o dos números por abajo). Esa falta de precisión es la que me hizo pensar un poco "más allá" y me llevó a tener otra idea, que fue definitiva. Al igual que los colores, los ordenadores representan las letras con un número. Estos números que utilizan el orden decimal (base 10), pueden ser convertidos a un número de base 2, conocido como binario. La notación binaria consta de una serie de dígitos consecutivos en los que sólo se distinguen dos valores posibles: el 0 y el 1, al igual que en la notación decimal se distinguen 10 (del 0 al 9). Un número en un ordenador puede tener distintos tamaños. Los tres valores de un color son números enteros sin signo (es decir, que no pueden ser menores que cero) de 8 bits. Es decir, que si los codificamos a binario, obtendríamos exactamente 8 dígitos consecutivos. Pondré un breve ejemplo: 41 (base 10) = 0 0 1 0 1 0 0 1 (base 2) Como dije antes, la primera idea no pudo ser posible debido a que la profundidad del color variaba cuando se codificaba/decodificaba la imagen, entonces el color era distinto y su correspondiente decodificación no era correcta. Pero si comparas el blanco con el negro, nunca vas a obtener un resultado incorrecto. Sabiendo que las letras, al igual que los colores, también son representadas por un número, se me ocurrió utilizar su valor binario como manera de codificar el texto. Pondré otro breve ejemplo. 'A' (letra mayúscula) = 65 (base 10, número que identifica la letra) = 1000001 (base 2/binario) 'B' (letra mayúscula) = 66 (base 10, número que identifica la letra) = 1000010 (base 2/binario) Entonces, una cadena de texto compuesta de estas dos letras: 'AB' = {65, 66} = 10000011000010 Ese es el valor binario del texto "AB". Como dije antes, si comparamos el blanco y el negro no vamos a obtener un valor incorrecto, así que decidí asignar el color blanco al número 1 y el negro al número 0. De esta forma, la cadena anterior se convertiría en algo como... Imagina que los cuadrados azules son 0 y los rojos 1. Esto es lo que yo voy a hacer, pero con el blanco y el negro en una cuadrícula. Para ello, el número de cuadraditos que va a tener la imagen. Sabiendo que cada letra está representada por un número, y que este número tiene 8 dígitos en binario, puedo hallar el número de puntitos con esta sencilla operación: Donde x es el número de letras del texto que se va a codificar. Una vez hallado el numero de bits (es decir, el número de cuadraditos), vamos a ver cuál es el ancho y alto ideal para la imagen. Eso es, nada más ni nada menos que lo siguiente en PHP: ceil(sqrt(8 * strlen($datos))); Una vez hallado el ancho y alto ideal, vamos pasando de bit en bit y lo vamos añadiendo a la imagen. Aquí se presenta un nuevo problema: tenemos que convertir una coordenada monodimensional a una coordenada bidimensional teniendo anchura y altura s y sabiendo que la coordenada de una dimensión es i: Entonces, basándonos en estos puntos, vamos añadiendo los pixels a la imagen. En el caso de shrr, también detecto si el texto es muy largo. En ese caso, lo comprimo con ZLIB para reducir su tamaño y, como consiguiente, el tamaño de la imagen final. Por motivos que explicaré ahora después en el proceso de decodificación, voy a añadir 4 bytes (que yo llamo "footer" al contenido (tras ser comprimido, en caso de ser necesario, lo que hará que estos últimos 4 ytes no se compriman y puedan ser legibles "a primera vista": SHR{¿está comprimido?} El último byte, que de hecho será el último byte de los datos, me permite saber durante el proceso de decodificación si el contenido fue comprimido o no, para saber si tengo que descomprimir los datos antes de devolverlos al cliente. Si los datos se comprimieron, el footer será: "SHR1", de lo contrario será "SHR0". Ahora que el algoritmo para codificar ya está listo, vamos ahora con el algoritmo para decodificar. Esto fue para mí lo más engorroso, ahora diré por qué. Lo primero que haré es obtener el tamaño de la imagen, y una vez obtenido, multiplico el ancho por el alto (que equivale a hallar el cuadrado de cualquiera de los dos, pues la imagen es cuadrada y el ancho es igual que el alto). Una vez que sé cuántos píxeles tienen la imagen (mostrado en la operación de arriba), voy obteniendo todos los píxeles y determino si son negros o no. Si el pixel es negro, añado '0' a una cadena, de lo contrario añado '1'. Ahora, separo esta cadena en bloques de 8 caracteres (ya que cada número binario tiene 8 dígitos). Una vez tengo todos los bloques de 8 caracteres, voy pasando por cada uno de ellos y los convierto a decimal (base 10). Acto seguido convierto ese número decimal a una letra y la añado a una cadena. ¡Genial! Ahora tengo los datos de la imagen. Ahora se presenta un nuevo problema (vaya...): la imagen es un cuadrado, y es posible que sobren algunos huecos. El proceso de decodificación trata estos huecos como datos también, así que me salen cosas raras como "ÿÿÿÿÿÿ" (0xFFFFFFFFFFFF) al final del contenido. Esto me provocó un gran dolor de cabeza, hasta que me acordé de que al final de los datos se encontraba el footer, que era como "SHR{un número}", así que inicio un bucle que vaya leyendo el último caracter de los datos y lo elimina mientras éste no sea un número. Cuando llega al número (0 o 1, dependiendo de si fue comprimido cuando lo codificamos) se detiene. Ahora obtiene los datos quitándoles los últimos cuatro bytes (el footer), y obtiene también los últimos 4 bytes. Primero, comprueba que los primeros 3 bytes del footer sean "SHR". Si lo son, mira el último byte y si éste es '1', descomprime el contenido. ¡Y eso es todo! Algo que al principio parecía tan complicado resulta ser lo suficiente sencillo como para que yo lo entienda Aquí dejo algunos ejemplos de imágenes con sus respectivos textos: Hola, no esoy comprimida. Hey, mírame! ¡Yo sí que estoy comprimida, utilizando GZ! Eso hace que el tamaño final de la imagen sea diminuto, y por consiguiente, pese menos. 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Aquí dejo el sitio final que utiliza AJAX para codificar/decodificar los datos descargando la imagen desde la URL especificada o subiéndola a imgur: shrr.ml * Y, cómo no, aquí dejo el código fuente para los scripts de codificación (encode.php) y decodificación (decode.php): encode.php decode.php Saludos, y espero que hayan aprendido algo útil en este post Cualquier duda consultar en los comentarios o directamente, mándame un MP * Este sitio es sólo para mostrar el funcionamiento de la codificación/decodificación de datos, con fines educativos. De ninguna manera me hago cargo del contenido codificado en este sitio ni de cómo la gente lo usa para fines que no tengan que ver con educación.

162
2
C
cup 2 | Graba tu escritorio en un GIF.
Hazlo Tu MismoporAnónimo6/22/2014

Sin descripción

470
37
K
kon – Convierte imágenes con un simple click.
Hazlo Tu MismoporAnónimo8/6/2014

Sin descripción

206
26
C
cup 3 | Graba GIF y captura tu pantalla.
Hazlo Tu MismoporAnónimo7/4/2014

Sin descripción

383
41
R
roar – Sorteos automáticos en Taringa!
Hazlo Tu MismoporAnónimo8/26/2014

Sin descripción

675
74
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.