domingo, 28 de octubre de 2018

¿Cuáles son algunas cosas que solo alguien que ha estado programando desde hace 20 a 50 años sabría?


- El hecho de que funcione en tu máquina no significa que no haya un error.

- No confíes en el compilador. No confíes en las herramientas. No confíes en la documentación. No confíes en ti mismo.

- Vas a olvidar lo que hace tu código en unos pocos meses. Hazlo que sea ridículamente fácil de leer.

- Mantener el código es más difícil que escribirlo. Escribir mucho y mucho código nuevo puede ser una marca de pereza.

- Si sabes que realizarás una secuencia fija de pasos más de diez veces, automatícelo.

- Respaldarlo es una cosa. Restaurarlo es otro.

- A veces, todo lo que necesitas es un one-liner in sed.

- Todo en el desarrollo de software ya ha sido inventado. La gente lo sigue redescubriendo y fingiendo que lo inventaron. Independientemente de lo que creas que es genial y nuevo, se copió de Smalltalk, HAKMEM, Ivan Sutherland, Douglas Engelbart, o IBM anterior, o quizás de Bell Labs.

- Se te ha enseñado a programar como si la memoria, el tiempo del procesador y el ancho de banda de la red fueran gratuitos e infinitos. No lo es, no lo es, y no lo es.

- No necesitamos más lenguajes de computadora. Aún así, correrás enseguida e inventarás otro. Déjeme adivinar, tu asombroso nuevo lenguaje utiliza enteros IEEE-754 y enteros de precisión fija. Tu asombroso nuevo lenguaje está roto.

- Tenga cuidado con los programadores que hablan en términos absolutos, como "mi método siempre es mejor que el suyo". La programación es un arte, no una religión.


------------------------------------
Copy+paste de Quora

jueves, 2 de agosto de 2018

¿Trabajas en redes sociales?

"Cuando algo es gratis, el producto eres tú". Las redes sociales son un ejemplo de esto, porque en ellas tú no eres el cliente, sino el producto.




La versión mejorada de esta idea:

"Cada persona trabaja en promedio dos horas al día generando perfiles de datos de consumo para Mark Zuckerberg. Gratis" (Jonathan Taplin).

viernes, 27 de julio de 2018

jueves, 12 de octubre de 2017

Notas python


  • Ipython:  Command shell for interactive computing originally for python (also works for R, Julia and Haskell).
  • Project jupyter: Notebook (web browser based editor) supporting also Julia, R, Haskell and Ruby.
  • Fenics: computing platform for solving PDE. An easy (but ugly) way to install and run is docker. A nicer: via conda. Don't forget to run
    source activate fenicsproject
    before run python (or python3, ipython, ipython3...)
Historic note: Project Jupyter starts in 2014 as a spin-off project from IPython. IPython will continue to exist as a Python shell and a kernel for Jupyter, while the notebook and other language-agnostic parts of IPython will move under the Jupyter name.

Otra lista de enlaces y programas útiles.

domingo, 23 de julio de 2017

Papitas emacs


Interesting stuff coming by default
  • org-mode
  • speedbar
  • imenu (M-x f90-add-imenu-menu): añade un tab con todas las subrutinas y funciones dentro del buffer actual.
  • Wich function mode (M-x which-function-mode) Supported only in f90 mode.
  • Mark (light) the the current line: (M-x hl-line-mode)
Checking and Correcting Spelling: (see this link). In particular, flyspell-mode (see manual) and ispell


Some useful add-ons that can be installed
  • yasnippet: It allows to type an abbreviation and automatically expand it into function templates written in plain text, so they are easy to create and edit shortcuts.
  • corfu: small package, which relies on the Emacs completion facilities and concentrates on providing a polished completion UI.
  • AUCTeX: package for TeX files. In particular, allows backward/inverse search
  • Minimap: It shows a smaller "minibar", highlights the portion of the buffer that is currently visible in the main window. Particularly useful when the file is too big. You can install it from MELPA: M-x list-packages
  • Sublimity: Smooth-scrolling and minimap, like (the non-free) Sublime editor.
  • ellama:  is a tool for interacting with large language models from Emacs

 

etags is an useful tool to generate tags for Emacs. For details visit this post on this blog.

 

MELPA is a package repository that contains an enormous amount of useful Emacs packages, en particular you can install gnuplot-mode. With ALT-X install-package it is easy to install several modes, like the matlab or minimap.


 To autoload gnuplot-mode on any file with gp extension, put this in ~/.emacs file:

(setq auto-mode-alist (append '(("\\.gp$" . gnuplot-mode))
                  auto-mode-alist))


To begin using octave-mode for all .m files you visit, add the following lines to ~/.emacs file:

(setq auto-mode-alist
      (cons '("\\.m$" . octave-mode) auto-mode-alist))


More details about octave-mode in this link.



A list with links and useful software.

sábado, 20 de mayo de 2017

Los 10 mejores empleos para la epoca en la que vivimos

http://www.eldefinido.cl/actualidad/mundo/8522/Estos-son-los-10-mejores-empleos-para-la-epoca-en-la-que-vivimos/

jueves, 11 de mayo de 2017

Cualquier parecido es pura coincidencia

Para explicar el significado de la geometría pura podríamos usar la fórmula usual de exención de responsabilidades de las películas: No se pretende reflejar las características de las figuras geométricas o de las propiedades espaciales de cuerpos reales. Cualquier parecido entre los conceptos primitivos y sus connotaciones geométricas habituales es pura coincidencia.

Carl G. Hempe

martes, 9 de mayo de 2017

¿Para qué estudiamos tanta matemática?

Comenzamos a aprender de números antes de entrar al colegio, al igual que español. Y no paramos hasta que salimos de secundaria (hasta los 18 años).

¿Pero para qué vemos tanta matemática? Más de 12 años, mismo tiempo que dedicamos al estudio de castellano. Incluso son necesarias para entrar a la educación universitaria, aunque se vaya a estudiar arte o filosofía.

La razón, creo yo, es la misma que el porqué se pone tanto énfasis en castellano: toda la información que nos rodea está en lenguage (letras) y casi toda contiene números, ya sea escrita o verbal (ej: escuchar la noticias o leer un contrado).

El pago de impuestos, créditos al comprar en una multitienda, créditos para comprar una casa, contratos de arriendo, contratos de trabajo, jubilación...

Y quien no maneje con soltura los números (me refiero a aritmética básica: sumar, restar, dividir, porcentajes, razonamiento lógico) es igual al que "sabe leer" pero no entiende lo que lee: termina escuchando la opinión de los que  hablan bonito (pensando que saben de lo que hablan) y haciéndose una opinión y tomando decisiones basados en opiniones de otros.

De este modo, terminamos creyéndole al experto de la tele, o al familiar que dice saber, o al vendedor, o  quien tiene un color político le creerá al de su color político.

Y una opinión basada en opiniones de otros que sí entienden números es muy riesgosa.

Cuántas de nuestras opiniones ( se basan en lo que entendemos, y cuantas simplemente son repetición de la opinión de otros.

En resumen, estudiamos tanta matemática como castellano para que podamos entender la información que nos rodea, el mundo que nos rodea, y así poder tener opinión propia.

Lista de "Predatory Journals"

Es tan fácil hallar información mediante google, que es bueno tener presente que no todas las revistas son igualmente confiables, y por ende, no todos los papers hallados en internet son confiables. Algunas revistas han nacido con prácticas fraudulentas, seguramente para obtener beneficios económicos.

Dicho esto, es bueno tener a la mano una lista de revistas dudosas

    https://predatoryjournals.com/journals/