Publicado el 10 de Julio del 2017
1.244 visualizaciones desde el 10 de Julio del 2017
1,4 MB
38 paginas
Creado hace 10a (24/10/2013)
Hackers &
DEVELOPERS
+ C h a n g e
Año 0 - Número 12
28.10.2013
HACKER TEAM:
María José Montes Díaz
Pablo Bernardo Baragaño
Milagros Infante Montero
y colaboradores
.
.OO
.OOOO
.OOOO'
OOOO' .-~~~~-.
OOO' / (o)(o)
.OOOOOO `O .OOOOOOO. / .. |
.OOOOOOOOOOOO OOOOOOOOOO/\ \____/
.OOOOOOOOOOOOOOOOOOOOOOOO/ \\ ,\_/
.OOOOOOO%%OOOOOOOOOOOOO(#/\ /.
.OOOOOO%%%OOOOOOOOOOOOOOO\ \\ \/OO.
.OOOOO%%%%OOOOOOOOOOOOOOOOO\ \/OOOO.
OOOOO%%%%OOOOOOOOOOOOOOOOOOO\_\/\OOOOO
OOOOO%%%OOOOOOOOOOOOOOOOOOOOO\###)OOOO
OOOOOO%%OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOO%OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
`OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO'
.-~~\OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO'
/ _/ `\(#\OOOOOOOOOOOOOOOOOOOOOOOOOOOO'
/ / \ / `~~\OOOOOOOOOOOOOOOOOOOOOOOOOO'
|/' `\// \\ \OOOOOOOOOOOOOOOOOOOOOOOO'
`-.__\_,\OOOOOOOOOOOOOOOOOOOOO'
jgs `OO\#)OOOOOOOOOOOOOOOOOOO'
`OOOOOOOOO''OOOOOOOOO'
`""""""' `""""""'
Hacker
es alguien que disfruta
jugando con la inteligencia
HACKERS & DEVELOPERS MAGAZINE
MAGAZINE DIGITAL DE EDICIÓN MENSUAL SOBRE SOFTWARE LIBRE, HACKING Y PROGRAMACIÓN
P U B L I C AC I Ó N B A J O L IC E N C I A C R E AT I V E C O M M O N S AT R I B UC I Ó N N O CO M E R C I A L C O M PA RT I R IG UA L 3 . 0 U N PO RT E D
©2013 HACKERS & DEVELOPERS MAGA ZINE
Hackers & Developers Magazine
Creado por Eugenia Bahit
HACKERS & DEVELOPERS MAGAZINE “CHANGE” - AÑO 0 NÚMERO 12
FECHA DE PUBLICACIÓN: 28 DE OCTUBRE DE 2013
LICENCIA CREATIVE COMMONS ATRIBUCIÓN NO COMERCIAL COMPARTIR IGUAL 3.0 UNPORTED
CREADO CON LIBREOFFICE WRITER
CHANGE
H A C K E R S & D E V E L O P E R S M A G A Z I N E
NUESTRO COMPROMISO CON QUIENES APUESTAN AL VERDADERO CAMBIO
PA P E R S D E · M A R ÍA J O S É M O N T E S D Í A Z · M I L AG RO S I N FA N T E M O N T E RO · PA B LO B E R N A R D O · Y C O L A B O R A D O R E S
EN ESTA EDICIÓN:
Explorando lenguajes de programación con repl.it.......................................................................3
Cifrando nuestros datos en Archlinux: EncFS.................................................................................9
Constructores en Javascript.........................................................................................................16
VIM y el movimiento eficiente.....................................................................................................20
Sudoers: Cambiando de identidad............................................................................................... 24
La terminal en GNU/Linux: “Back to the future?”........................................................................27
Persona: El login libre de Mozilla................................................................................................ 32
Licencias del Software Libre y Libertades del Usuario................................................................. 36
@2012-2013 HACKERS & DEVELOPERS MAGAZINE “CHANGE” #12 - WWW.HDMAGAZINE.ORG – CREATIVE COMMONS ATRIBUCIÓN NO COMERCIAL COMPARTIR IGUAL 3.0
UNPORTED
PARA PRODUCIR 1000 KG DE PAPEL SE UTILIZAN 100.000 LITROS DE AGUA Y SE TALAN 7 ÁRBOLES DE 15 X 0,40 MTS
EN HD ASUMIMOS EL COMPROMISO DE CAMBIAR. TU TAMBIÉN PUEDES. NO IMPRIMAS ESTA PÁGINA SI NO ES ESTRICTAMENTE NECESARIO.
3
Explorando lenguajes de
programación con repl.it
Cuando estamos programando, necesitamos compilar
nuestro código y hacer las respectivas pruebas para
saber si tuvimos errores, si hay algo por refactorizar o
si lo hicimos bien. Repl.it es una herramienta en línea
que nos permitirá compilar el código de diversos
lenguajes de programación.
Escrito por: Milagros Alessandra Infante Montero (Est. Ing. Informática)
Estudiante de Ingeniería Informática. Miembro de la comunidad de software libre
Lumenhack. Miembro del equipo de traducción al español de GNOME. Apasionada por el
desarrollo de software, tecnología y gadgets. Defensora de tecnologías basadas en software libre y
de código abierto.
Webs:
Blog: www.milale.net
Redes sociales:
Twitter: @milale
epl.it1 es un entorno en línea que nos permitirá explorar los lenguajes de programación de manera
interactiva, el nombre proviene de read-eval-print loop, que es a su vez un entorno de programación. En
un REPL el usuario ingresa una o más expresiones, que son evaluadas y fnalmente se muestran los
resultados.R
El nombre viene en mención a las antiguas funciones de Lisp que implementan la funcionalidad:
•
•
•
read: función que acepta una expresión de parte del usuario.
eval: función que toma la estructura de datos interna y la evalúa.
print: función que toma el resultado dado por eval y lo imprime al usuario.
REPL facilita la programación exploratoria y la depuración; porque el bucle read-eval-print es usualmente
más rápido que el clásico ciclo editar-compilar-ejecutar-depurar.
1
http://repl.it/languages
@2012-2013 HACKERS & DEVELOPERS MAGAZINE “CHANGE” #12 - WWW.HDMAGAZINE.ORG – CREATIVE COMMONS ATRIBUCIÓN NO COMERCIAL COMPARTIR IGUAL 3.0
UNPORTED
PARA PRODUCIR 1000 KG DE PAPEL SE UTILIZAN 100.000 LITROS DE AGUA Y SE TALAN 7 ÁRBOLES DE 15 X 0,40 MTS
EN HD ASUMIMOS EL COMPROMISO DE CAMBIAR. TU TAMBIÉN PUEDES. NO IMPRIMAS ESTA PÁGINA SI NO ES ESTRICTAMENTE NECESARIO.
4
Empezando a usar repl.it
Esta herramienta repl.it es muy sencilla de usar, debemos seleccionar el lenguaje de programación en el que
estemos desarrollando, luego en la consola del lado derecho se debe escribir una expresión y fnalmente
presionar “Enter” para ver los resultados impresos en la consola de la izquierda. Incluso, repl.it interpreta y
soporta variables, estados y efectos en los diversos lenguajes que soporta.
Repl.it provee un emulador de terminal con muchas características y además un editor de código para
actualmente 17 lenguajes de programación: Qbasic (programación estructurada para principiantes), Forth
(interactivo lenguaje orientado a pila), Emoticon (programando con una dosis extra de sonrisas), Brainfuck (un
controlador de máquina de Turing puro), LOLCODE (El lenguaje básico de lolcats), Unlambda (Pureza funcional
hecha forma), Bloop (bucles delimitados), Ruby (un lenguaje dinámico y natural orientado a objetos), Python
(lenguaje dinámico que da énfasis a la legibilidad del código), Lua (lenguaje liviano de script multi-paradigma),
Scheme (Un dialecto dinámico elegante de Lisp), JavaScript (el lenguaje de facto de la web), JavaScript.next (el
JavaScript del mañana), Move (la manera fácil de programar en la web), Kafeine (JavaScript avanzado para
profesionales), CofeeScript (JavaScript no fantástico) y Roy (Lenguaje funcional pequeño que compila a
JavaScript).
Características de repl.it
Repl.it permite guardar la sesión en la que estás trabajando e incluso compartirla con otros usuarios mediante
una URL o en redes sociales. Si necesitas cerrar la sesión, al volver, puedes ejecutarla nuevamente con el enlace
creado y continuar donde te quedaste previamente.
Repl.it es open source, el código puede ser explorado e incluso puedes contribuir en varias partes a través
de los repositorios de Github https://github.com/replit2.
Esta herramienta puede ser usada en cualquier dispositivo que tenga un navegador web moderno, ya que
actualmente cuentan con soporte total para dispositivos Android™ y soporte parcial para iOS. Todo código
procesado por repl.it se ejecuta por completo en la computadora, usa intérpretes de lenguajes escritos en
JavaScript para ejecutar código y mantener el seguimiento del estado. A continuación listaré los atajos de
teclado más usados en la consola:
Enter
Shift + Enter
Tab
Shift + tab
Arriba
Abajo
Ctrl + arriba
Evalúa el comando ingresado.
Continúa a la siguiente línea.
Indentar.
Sacar indentado.
Elemento de la historia anterior.
Elemento de la historia siguiente.
Mover a la línea arriba del cursor.
2
https://github.com/replit
@2012-2013 HACKERS & DEVELOPERS MAGAZINE “CHANGE” #12 - WWW.HDMAGAZINE.ORG – CREATIVE COMMONS ATRIBUCIÓN NO COMERCIAL COMPARTIR IGUAL 3.0
UNPORTED
PARA PRODUCIR 1000 KG DE PAPEL SE UTILIZAN 100.000 LITROS DE AGUA Y SE TALAN 7 ÁRBOLES DE 15 X 0,40 MTS
EN HD ASUMIMOS EL COMPROMISO DE CAMBIAR. TU TAMBIÉN PUEDES. NO IMPRIMAS ESTA PÁGINA SI NO ES ESTRICTAMENTE NECESARIO.
5
Ctrl + abajo
Ctrl + E
Ctrl + A
Ctrl + Z
Ctrl + L
Ctrl + G
Ctrl + H
Ctrl + S
Escape
Mover a la línea debajo del cursor.
Mover al fnal de la línea actual.
Mover al principio de la línea actual.
Cancelar la terminal actual.
Abrir el selector de lenguaje.
Abrir la vista previa de ejemplos.
Abrir la página de ayuda.
Guardar la sesión (nueva revisión).
Cerrar vista actual.
Pruebas con los lenguajes de programación
Repl.it divide los lenguajes de programacion que soporta en cuatro “categorías”: Lenguajes clásicos, esotéricos,
prácticos y web. A continuación veremos unos ejemplos de cómo podemos usar repl.it al desarrollar.
• QBasic:
Un ejemplo sencillo con QBasic podría ser de la siguiente manera:
PRINT "Hola lector de H&D. Porfavor escribe tu nombre: "
INPUT NOMBRE
PRINT "Bienvenido a la edición número 12, "; NOMBRE; "!"
Y al compilarlo, obtendremos esto como resultado:
QBasic (qb.js)
Copyright (c) 2010 Steve Hanov
Hola lector de H&D. Porfavor escribe tu nombre:
Milale
Bienvenido a la edición número 12, Milale!
Aquí esta el enlace del ejemplo para que puedan jugar con el: http://repl.it/Lce
•
Emoticon:
Emoticon nos permite escribir código con una recarga de sonrisas, así:
:-O Sonrian lectores :-Q S:-P :-Q
Obteniendo como resultado:
Emoticon v1.5 (emoticoffee)
Copyright (c) 2011 Amjad
Comentarios de: hd magazine 12 201310 (0)
No hay comentarios