Watch the bar turn green with TDD

When there are bugs, there is probably nothing more pleasing than figure out a way to:

  • Write a failing unit test that reproduces that bug.
  • Fix it and watch the bar turn green again, forever and ever 😉
La imagen tiene un atributo ALT vacío; su nombre de archivo es image-19-600x606.png

If your goal is to stay green for all of your existing tests by using the Test Driven Development (TDD) approach, you need to mentally train yourself to:

  • Think about the behavior around the next pieces of functionalities that you need in your code, then start moving towards your end goal in tiny steps and you will end up seeing tangible progress every moment.
  • Write unit test first, they shouldn’t be written as an extra chore when you finally have the code already working, this is called Test-Driven Development.

If you are designing an application to expose your data sources as REST API endpoints or as a unique GraphQL endpoint, TDD will definitely help you to design and maintain your APIs better. So if you are a principled developer who writes the tests that exercise the API first, you will discover where the APIs get complex to use before you even write the code, and you will be free to redesign much more easily than if you only add the tests afterwards.

Test the UI

Thanks goodness Create-React-App comes with Jest as its test runner and jest-dom for improved assertions. In combination with a state of the art package called the react-testing-library you will enjoy testing any React Component behavior or any Function or Hook’s inputs and outputs.

RTL Principle:

“The more your tests resemble the way your software is used, the more confidence they can give you.”

Another cool friendly kid in the hood is:

First thing you need to ask is: why we would want to mock fetch requests?

Because you use fetch to allow your App to interact with the rest of world, using:

  • Client-side JavaScript to trigger a network request to some local or remote backend API.
  • Server-side JavaScript talks to other local or remote servers.

Because you want to make sure your code doesn’t depends of flaky externalities, you want to ensure to produce the exact same output given the same inputs.

Setup your test environment

Initial configuration:

  "jest": {
    "collectCoverageFrom": [
    "coverageThreshold": {
      "global": {
        "branches": 90,
        "functions": 90,
        "lines": 90,
        "statements": 90
    "coverageReporters": [
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "test-changed": "npm test --watchAll=false",
    "test-coverage-text": "npm test -- --coverage --coverageReporters=\"text\" --watchAll",
    "test-coverage-text-summary": "npm test -- --coverage --coverageReporters=\"text-summary\" --watchAll",
    "eject": "react-scripts eject"
  "devDependencies": {
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": "^9.3.2",
    "@testing-library/user-event": "^7.1.2",
    "@testing-library/react-hooks": "^3.4.1",
    "jest-fetch-mock": "^3.0.3",
    "react-test-renderer": "^16.13.1"

If your app uses a browser API that you need to mock in your tests or if you need a global setup before running your tests, add a src/setupTests.js to your project. It will be automatically executed before running your tests.

import "@testing-library/jest-dom/extend-expect";

import fetchMock from "jest-fetch-mock";

Code Sample

git clone
How I like to Write Integration Tests in React - YouTube



You should test components’ behavior only.





Custom Hooks (renderHook())

You should test functions’ inputs and outputs only.

SearchValue Dispatch Hook

SearchValue State Hook

Context Reducer Function

Service Function

Util Function

Happy hacking!!!

Tip: If you are a great team player and the project is going through a long maintenance process, you should probably start writing tests for untested code, just seeing the Coverage Report as a G.A.M.E.

Use SWR with React Suspense

This article will explore how you should use the awesome useSWR hook for remote data fetching.

Why the SWR hooks for remote data fetching?

Because SWR (stale-while-revalidate) is a fully dedicated React Hooks library for remote data fetching. So basically, this is what SWR does:

  • First returns the data from cache (stale)
  • Then sends the fetch request (revalidate).
  • Finally comes with the up-to-date data again.

Why Suspense?

Because Suspense will definitely help you to maintain a consistent UI in the face of asynchronous dependencies. Something I prefer to call on-demand loaded React components.

All you need is to:

  • Set the suspense: true as one of the useSWR hook options.
  • Wrap your on demand route component inside of its own suspense component.
import React, { Suspense } from "react";
import ReactDOM from "react-dom";
import useSWR from "swr";

const App = () => {
  return (
    <Suspense fallback={<FallbackProgress />}>
      <Page />

const FallbackProgress = () => <div>Loading...</div>;

const Page = () => {
  const { data } = useSWR(
    (req) => fetch(req).then((res) => res.json()),
    { suspense: true }

  return <div>{data.title}</div>;

const rootElement = document.getElementById("root");
ReactDOM.createRoot(rootElement).render(<App />);

The whole thing put together

import React, { Suspense, lazy } from "react";

import { Progress } from "components";

const StatesLazy = lazy(() => import("./States.lazy"));

const States = () => (
  // Progress Component contains `data-testid="id-request-progress"`
  <Suspense fallback={<Progress />}>
    <div data-testid="id-states-lazy">
      <StatesLazy />

export default States;
import React, { useEffect } from "react";
import Container from "@material-ui/core/Container";
import Divider from "@material-ui/core/Divider";
import { Link } from "react-router-dom";
import Typography from "@material-ui/core/Typography";
import { Redirect, useHistory } from "react-router-dom";
import _get from "lodash.get";
import useSWR from "swr";

import {
} from "context/SearchValue";

import { endpoints } from "config";
import { searchUtil } from "utils";
import { csv2objFetcherService } from "services";

import { ContentCard, ContentMessage } from "components";

import useStyles from "./";

const StatesLazy = () => {
  const classes = useStyles();
  const history = useHistory();

  const { searchValue } = useSearchValueState();
  const dispatch = useSearchValueDispatch();

  const requestURLConst = "for=state:*&DATE_CODE=1";

  const { data } = useSWR(
    { suspense: true }

  const response = {
    status: _get(data, "status", 200),
    data: _get(data, "data", []),
    error: _get(data, "error", ""),

  useEffect(() => {
    dispatch({ type: "setSearchValueReducer", payload: "" });
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, []);

  if (response.status !== 200 && response.error !== "") {
    return (
      <div data-testid="id-states-response-error">
            pathname: history.location.pathname,
            state: { status: response.status, error: response.error },

  const searchResults = searchUtil(, searchValue);

  if (searchResults && searchResults.length === 0) {
    return (
      <div data-testid="id-states-no-search-results">
          title="No Results Found!"
          description="Let's ask again."

  return (
      <Typography variant="h1" className={classes.title}>
      <Divider className={classes.divider} />
        (state) =>
          state.NAME &&
          state.state && (
              // Key
              // Rest of the Props
                // Key
                // Rest of the Props

export default StatesLazy;

Wrapping up

As long as there is a child component using promises or acting asynchronous inside the Suspense component, it will be replaced by the component defined in the fallback prop.

Manage non connected components state

It is pretty simple, the React Context API helps to simplify the way you pass or share data across components.

Let’s start with using createContext() to offer a custom Provider component, including its Consumer component for interacting with your custom global state later:


Great thing about the Provider is that it is really useful to make the state available to all your child components:


The Consumer component goal is simple, it just consume the data that comes from the Provider, without any need for prop drilling your components.


Just combine the Context API with the useReducer Hook to start enjoying the features of a custom and very simple global state management solution for your App.

The useReducer hook offers a simpler way to access and update your custom global state.

Reducer Actions
Dispatch Hook
Use the state or dispatch hooks to access or update your custom global state

Just call the dispatch method to make the useReducer hook perform an action based on the type that your method receives in its action argument.

dispatch() an update in your custom state

You can check out the complete code at the GitHub repo:

Feel free to try it out! Any insight is welcome!

Control your load prioritization in React

Let’s start talking about the idea behind bundle splitting in React , it is pretty simple as handling multiple bundles that can be dynamically loaded on demand at runtime. Basically, you should start:

  • Importing all your dynamic imports as regular components with React.lazy
  • Rendering all your lazy components inside a Suspense component.
1. React.lazy()
2. Suspense

The outcome is pretty awesome too. You will end up with smaller bundles thanks to this control resource load prioritization approach, which generally give you a major impact on your React App load time.

Complete code

import React, { Suspense, lazy } from "react";
import PropTypes from "prop-types";
import { Router, Switch, Route } from "react-router-dom";

import { ErrorHandler } from "context/ErrorHandler";
import { Progress } from "components";

// Route Components
const routes = [
    exact: true,
    path: "/",
    component: lazy(() => import("components/States/States")),
    exact: true,
    path: "/:stateId/counties",
    component: lazy(() => import("components/Counties/Counties")),
    component: lazy(() => import("components/ErrorPage/ErrorPage")),

const Routes = ({ history, Layout }) => (
    <Suspense fallback={<Progress />}>
      <Router history={history}>
          <Layout.Toolbar />
            {, i) => (
              <Route key={i} {...route} />

Routes.propTypes = {
  history: PropTypes.object,
  Layout: PropTypes.any,

export default Routes;

Cloud Powered Apps Walkthrough – Part 1

The Serverless Application Framework |

We hope you enjoy this article, our idea is to provide a quick walkthrough as to how to easily put together a full CRUD API application with publicly exposed endpoints in the cloud.

Note: Based on past experience this walkthrough will take 4 hours or less.

Why the Serverless Framwework?

Because the Serverless framework helps developers to configure all the infraestructure they need to quickly deploy and run their own Cloud-Powered Apps.

The good thing is, you are able to use managed services without using containers, ec2 instances or managing a lot of things by yourself.

For example, Terraform works really great if you want to spin up EC2 instances and RDS databases and you might want some containers and maybe an s3 bucket and a DynamoDB table, on the other hand, Serverless is focused around building functions were you compute models on lambda and use other server services to help you to accomplish your app goals.

Is not a secret that managing servers becomes tedious over time and time is resources and money… So saving ourselves time is pretty much the best thing we can do.

Why AWS?

Simply because it is the most mature Serverless Cloud Provider out there. We are talking about next-generation public cloud services that auto-scale and charge our budgets, only when used.

The first thing you need to do before starting this quick journey, is to crete a free AWS Account:

Ok, you can safely say now we are ready to gain free, hands-on experience with all the AWS platform services and resources available for you.

The Project App

Let’s create a root directory for this project:

mkdir -p ~/Sites/softon

cd ~/Sites/softon

If you don’t have experience with the Homebrew Package Manager, just don’t be afraid, it’s super easy to install and manage:

/bin/bash -c "$(curl -fsSL"

Once the installation is complete, go and install all the packages you are going to need to develop this Cloud-Powered App:

brew install nvm \
awscli \
serverless \
awslogs \

Sweet! now is the perfect time to use Brew Cask to install a couple of graphical applications we might need later:

brew cask install adoptopenjdk \
dynamodb-local \

Add NVM_DIR to your shell settings

Please etit edit your ~/.zshrc or file:

code ~/.zshrc

now add the following lines of code:

export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/" ] && . "/usr/local/opt/nvm/"
[ -s "/usr/local/opt/nvm/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completion

Here we go, let’s use our shell’s built-in source command to reload the ZSH Shell settings:

source ~/.zshrc

Discover the power of the SLS CLI Tool

If you have questions about how to accomplish something using the SLS CLI tool, --help is your answer:

sls info --help

You should see something like:

--stage / -s ....................... Stage of the service
--region / -r ...................... Region of the service
--verbose / -v ..................... Display Stack output
--app .............................. Dashboard app
--org .............................. Dashboard org
--config / -c ...................... Path to serverless config file

You should try:

sls config --help
sls config credentials --help

sls deploy --help

Add your own IAM Admin User

We are going to create an IAM Admin User to:

  • Access to your AWS console.
  • Make API calls to AWS.

Note: Adding an IAM Admin User offers an extra layer of security to your AWS Root Account.

Here’s an example how you can configure the appadmin AWS Profile:

sls config credentials \
--provider aws \
--profile appadmin \
--secret qkONXFBWdY80Xsn9EbzVXBE5S77ZRzi/pBtBm9KE

Using profiles with the AWS CLI

To use a named profile, add the --profile profileName option to your command.

aws iam list-access-keys --user-name appadmin --profile appadmin
    "AccessKeyMetadata": [
            "UserName": "appadmin",
            "AccessKeyId": "AKIAXOQZTFKW6AH4MFKI",
            "Status": "Active",
            "CreateDate": "2020-05-24T23:26:45+00:00"

Please install NodeJS 12

Clone the SLS Demo API

It’s time to pull down a full copy of the Serverless Stack Demo API at GitHub, including all the branches and versions of every file and folder available for that remote repository.

git clone app

cd app

code .

Install all the packages it depends on

npm install

Deploy your SLS Demo Stack

Deploy helps you to provision your AWS Lambda Functions, Events and infrastructure Resources safely and quickly and you can always specify the profile which should be used via the --aws-profile option like this:

sls deploy --aws-profile appadmin

# OR

sls --aws-profile=appadmin deploy -s dev -r us-east-1

Get your deployed stack information

Via AWS Console

Learn more about Cognito

Please register a user in a specified user pool and create a user name, password, and user attributes for that specific user.

Create and list content

What do you think now about Serverless?

Please share your thoughts, I’d be happy to answer any questions you may have.

Happy Hacking!!!

De izquierda a derecha

En representación a la ocupación de los asientos en el parlamento Francés después de la Revolución Francesa (1789-1799). Como se ve desde el asiento del Presidente en el frente de la Asamblea, la aristocracia se sentó a la derecha (tradicionalmente el asiento de honor) y los plebeyos se sentaron a la izquierda, de ahí los términos política de izquierda(left-wing) y política de derecha (right-wing).


El comunismo

Es la ideología y movimiento filosófico, social, político y económico cuyo fin último es el establecimiento de la sociedad comunista, que es un orden socioeconómico estructurado sobre la propiedad común de los medios de producción y la ausencia de clases sociales, dinero y el estado.  Asegura que mediante una revolución se pondrá a la clase obrera en el poder y, a su vez, establecerá la propiedad social de los medios de producción, que de acuerdo con este análisis es el elemento principal en la transformación de la sociedad hacia el comunismo.

Se basa en la idea de compartir todos los productos económicos y materiales entre los habitantes de la comuna, para que todos puedan beneficiarse del trabajo de todos.


Es una gama de sistemas económicos y sociales caracterizados por la propiedad social y el control democrático de los medios de producción, así como las teorías políticas y los movimientos asociados con ellos. La propiedad social puede referirse a formas de propiedad pública, colectiva o cooperativa, o a la propiedad ciudadana de la equidad.


El conservadurismo y el capitalismo.


El liberalismo puede significar cosas diferentes en diferentes contextos, por ejemplo en la izquierda se le considera liberalismo social, mientras que dentro del libertarismo se considera liberalismo clásico.


Aquellos con una perspectiva intermedia se clasifican como centristas o moderados.

Política Sincrética

La idea principal de la política sincrética es tomar posiciones políticas de neutralidad combinando elementos asociados con la izquierda y la derecha, con la mentalidad de lograr objetivos de reconciliación.

Sociocultura y Economía

Popularmente los ejes se dividen entre cuestiones socioculturales y problemas económicos, escalando desde alguna forma de individualismo (o gobierno por la libertad del individuo) hacia alguna forma de comunitarismo (o gobierno para el bienestar de la comunidad).

El error del capitalismo

Los dueños del país son básicamente las corporaciones y los bancos.

Núcleo del socialismo

Es la organización de los trabajadores para que sean ellos quienes tienen control sobre la producción.

Leninismo – La traición Bolchevique

Es sobre explotar los movimientos populares para tomar el poder del estado y usar ese poder del estado para azotar a la población en la sociedad que elijan:

Queremos abolir el gobierno, pero primero necesitamos usar el poder del gobierno para establecer nuestra utopía.

Hay una receta básica para ganar poder:

  • Usar las corrientes populares.
  • Hablar la línea que la gente quiere escuchar.
  • Buscar el beneficio mediante el atractivo moral.

Lenin's political programme

Lenin’s political programme

Una vez que Lenin tomó el poder, lo primero que hizo fue eliminar los órganos de control de los trabajadores, lo cual nada tiene que ver con Socialismo.

Sistemas de opresión

La distorsión se empieza ganando la credibilidad de las clases trabajadoras. De hecho fue Leon Trotsky quien dijo:

El gran ejército laboral debe estar sumiso al control de un solo líder. Donde el progreso moderno, el desarrollo y el socialismo requieren que la masa de la población se subordine a un solo líder en una fuerza laboral disciplinada.

Asesinos en Masa

Esto es conocido hoy en día como la Traición Bolchevique, realizada por parte de pensadores y políticos que profesaban la liberación después de una revolución. Hoy en día no es un secreto que revolución tras revolución siempre se llega al lado opuesto, casi siempre contrario a lo que inicialmente decían que se iban a oponer.

Entonces, ¿por qué se Asocia con socialismo?

  • Porque los soviéticos tomaron el control de todos los movimientos socialistas internacionales.
  • La gran maquinaria de la prensa de occidente hace que los estadounidenses asocien el Socialismo con la brutalidad del Estado Ruso que más bien destruye la concepción temprana del Socialismo.

Doctrina y dogma

  • Socialismo.
  • Marxismo.
  • Libertarismo de Izquierda.

Hay que dejar claro que la concepción Marxista del Socialismo contrasta con la concepción temprana del Socialismo, especialmente las primeras formas de Socialismo de Mercado basadas en la economía clásica, como el Mutualismo y el Socialismo Ricardiano. A diferencia de la concepción Marxista, estas concepciones del Socialismo conservaron el intercambio de mercancías (mercados) para el trabajo y los medios de producción, buscando perfeccionar el proceso del mercado.

Por otro lado el Libertarismo de Izquierda es anti-autoritario, como sucede con el Socialismo Libertario, el Anarquismo y el Marxismo Libertario. En general, su filosofía gira alrededor de la auto-propiedad, con un enfoque igualitario con respecto a los recursos naturales.

En esta sociedad industrial moderna es hasta difícil decir que lo que sucedió con el Bolchevismo de hecho fue un Estado Socialismo, no realmente Socialismo de acuerdo a su concepción temprana.

El concepto de Socialismo es difícil de usar

El concepto de Socialismo dice que los trabajadores tienen que controlar la producción y las comunidades deben controlar sus propias vidas. La idea es que las personas deben controlar sus propios destinos y sus propias vidas, incluidas las instituciones en las que trabajan y las comunidades en las que viven.

Anarquía y Libertad

Libertad sin Socialismo es privilegio e injusticia; Socialismo sin libertad es esclavitud y brutalidad.


Mikhail Bakunin puede ser recordado como una figura importante en la historia del Anarquismo y como un opositor del Marxismo, especialmente de la idea de Marx acerca de la dictadura sobre el proletariado y de sus predicciones de que los Regímenes Marxistas serían dictaduras de un partido único sobre el proletariado, no del proletariado por sí mismo.

Fue Adolf Fischer quien dijo:

Cada anarquista es un Socialista, pero no todos los Socialistas son necesariamente Anarquistas.

Pierre-Joseph Proudhon

Pierre-Joseph Proudhon

Se puede decir que un anarquista consecuente debe oponerse a la propiedad privada de los medios de producción, tal propiedad es… de hecho, como Pierre-Joseph Proudhon afirmó con su famosa observación, es una forma de robo.

Si me pidieran que respondiera la siguiente pregunta: ¿Qué es la esclavitud? y además debo responder en una sola palabra, ¡es un asesinato!, mi significado sería entendido de inmediato. No se requeriría ningún argumento extenso para demostrar que el poder para eliminar la mente, la voluntad y la personalidad de una persona es el poder sobre la vida y la muerte, y que además convierte a un hombre en esclavo. Es el asesinato.

¿Por qué, entonces, a esta otra pregunta: ¿Qué es la propiedad? no puedo responder igualmente, ¡es un robo!, sin la certeza de ser malentendido; ¿la segunda proposición no es más que una transformación de la primera?

Pero un anarquista consecuente también se opone a la organización de la producción por parte del gobierno, porque eso significa Estado Socialismo, es decir, oposición contra el mando de los funcionarios estatales sobre la producción y también contra el mando de los gerentes, científicos y oficiales de comercio. La meta de la clase trabajadora es la liberación de la explotación y este objetivo no se alcanza y no puede ser alcanzado por una nueva clase dirigente y gobernante que se sustituya por la burguesía (la clase media acomodada). Solo se realiza por los propios trabajadores que son maestros de la producción por algún tipo de consejo de trabajadores.

El socialista revolucionario desafía que la Propiedad Estatal solo puede terminar en despotismo burocrático; dicen: ya hemos visto por qué el estado no puede controlar democráticamente la industria, la industria solo puede ser poseída y controlada democráticamente por los trabajadores que eligen directamente de sus propios comités administrativos industriales.


Básicamente el Socialismo es un sistema industrial, sus distritos electorales serán de carácter industrial, por lo tanto aquellos que llevan a cabo la actividad social y las industrias de la sociedad estarán directamente representados en los consejos locales y centrales de la administración social. De esta forma, los poderes de tales delegados fluirán hacia arriba desde aquellos que llevan a cabo el trabajo y están familiarizados con las necesidades de la comunidad. Cuando el comité industrial administrativo central se reúna, representará cada fase de la actividad social. Por lo tanto, el estado político o geográfico Capitalista será reemplazado por el Comité Administrativo Industrial del Socialismo.

«The Rulers»

El estado político a través de la historia ha significado el gobierno de los hombres por las clases dominantes. La república del socialismo será el gobierno de la industria administrado en nombre de toda la comunidad. lo primero significaba el sometimiento económico y político de los muchos; lo último significaría la libertad económica de todos; será, por lo tanto, una verdadera democracia.

Socialismo de Estado

El Socialismo de Estado se asemeja mucho a la doctrina libertaria del anarquista en particular en su principio de que el estado debe desaparecer para ser reemplazado por la organización industrial de la sociedad.

Cuando la Democracia es una Farsa

El comunismo de consejo en este sentido, en el sentido de la forma natural del Socialismo Revolucionario en una Sociedad Industrial, refleja la comprensión intuitiva de que la democracia es en gran medida una farsa cuando el sistema industrial está controlado por cualquier forma de élite autocrática , ya sea de propietarios, gerentes, tecnócratas, un partido de vanguardia, una burocracia estatal o lo que sea, bajo estas condiciones de dominación autoritaria sobre los ideales liberales clásicos.

Socialismo Libertario

Noam Chomsky

Noam Chomsky

Las ideas del socialismo libertario revolucionario en este sentido han estado sumergidas en las sociedades industriales del último siglo, las ideologías dominantes han sido las del Socialismo de Estado y el Capitalismo de Estado.


Cuando las personas no son libres de preguntar y de crear para desarrollar su propio potencial al máximo, el trabajador seguirá siendo un fragmento de un ser humano degradado como una herramienta en el proceso productivo dirigido desde arriba.

Por esto es que se da en el siglo pasado el re-surgimiento de sindicatos y federaciones, esto se puede razonar como otras formas de Socialismo Libertario.

Tema Intelectual Dominante

¿Cómo organizar a la sociedad industrial en líneas verdaderamente democráticas con control democrático en el lugar de trabajo, así como en la comunidad?

la especulación debería pasar a la acción

Los anarquistas estaban convencidos de que el capitalismo y el estado deben ser destruidos juntos.

La burocracia roja fue y es la mentira más vil y terrible

Los anarquistas pusieron las cosas patas arriba, declararon que la revolución proletaria se debe dar eliminando la organización política del estado. Pero destruirlo en ese momento sería destruir el único organismo mediante el cual el proletariado victorioso puede afirmar su poder recién conquistado, manteniendo a raya a sus adversarios y llevando a cabo esa revolución económica de la sociedad sin la cual toda la victoria debe enzarzarse en una nueva derrota y una matanza masiva de los trabajadores.

Mikhail Bakunin

Mikhail Bakunin

La acertada y repetida advertencia por parte de Mikhail Bakunin en aquel tiempo decía:

Tomen y coloquen al revolucionario más radical en el trono de todos los rusos, a toda Rusia, o denle un poder doctoral y antes de que pase un año será peor que el propio Zar.

organización democrática de la sociedad industrial

El Socialista Libertario continúa insistiendo en que se debe eliminar el poder estatal en favor de la organización democrática de la sociedad industrial con el control popular directo de todas las instituciones tanto por aquellos que participan como por aquellos directamente afectados por el funcionamiento de estas instituciones.

Entonces, uno podría imaginarse un sistema de consejos de trabajadores, consejos de consumidores, asambleas comunales, federaciones regionales y así en adelante. Con el tipo de representación directa y revocable en el sentido de que los representantes salen y responden directamente al grupo social bien definido e integrado para el que hablan en alguna organización de orden superior, algo obviamente diferente del sistema de representación que siempre hemos conocido.

¿Tal estructura social es factible en una sociedad altamente tecnológica y compleja?

Hay argumentos en contra y estos se dividen en dos categorías principales:

  • La primera categoría es que tal organización es contraria a la naturaleza humana.
  • La segunda La categoría dice más o menos que es incompatible con las exigencias de la eficiencia.

si se considera la primera,  dice que una sociedad libre es contraria a la naturaleza humana, se cuestiona así misma con las siguientes preguntas ¿Las personas realmente quieren la libertad? ¿Quieren la responsabilidad que acompaña la libertad o preferirían ser gobernados por un maestro benévolo? Consistentemente el apologista de la distribución existente de poder ha mantenido una u otra versión de la idea del esclavo satisfecho o feliz.

Hay una frase bastante reciente dicha por Bertrand Regader, un psicólogo educativo que dice:

El problema principal del esclavo no son en sí mismas las distintas calamidades que tiene que soportar día tras día por su condición de esclavo… sino que es, más bien, la matriz de pensamiento que no le permite cuestionar su esclavitud.

Más de doscientos años atrás Rousseau denunció a los políticos e intelectuales sofistas que buscaban formas de ocultar el hecho, por lo que Rousseau sostuvo que:

La propiedad esencial del hombre es la libertad, pero moldean al hombre por una inclinación natural a la servidumbre sin pensar que es lo mismo para la libertad en cuanto a la inocencia y la virtud, su valor se siente solo mientras uno los disfrute, además el gusto por ellos se pierde tan pronto como uno los haya perdido también.

Jean-Jacques Rousseau

Jean-Jacques Rousseau

Como prueba de esta doctrina, Rousseau se refiere a las maravillas hechas por todos los pueblos libres para protegerse de la opresión, es verdad, dice:

Aquellos que han abandonado la vida de un hombre libre no hacen otra cosa que jactarse incesantemente de la paz y el reposo que disfrutan en sus propias cadenas.

Pero por otro lado hay otras medidas de sacrificio, por ejemplo, cuando la vida misma se une para la preservación de esta alma buena, que es tan desdeñada por aquellos que ya la han perdido. Cuando veo multitudes de salvajes completamente desnudos desdeñar la voluptuosidad europea. Consideramos que no corresponde a los esclavos razonar sobre la libertad.

Pensamientos similares fueron expresados ​​por Immanuel Kant, pocos años después. Él no puede aceptar la proposición de que ciertas personas no son aptas para la libertad, por ejemplo, los siervos de un terrateniente, si uno acepta esta suposición escribe que nunca se logrará la libertad, porque uno no puede llegar a la madurez sin haberla adquirido por uno mismo, uno debe ser libre de aprender a utilizar sus propios poderes de forma libre y útil.

Immanuel Kant

Immanuel Kant

Dice Kant, que bajo el dominio pero también la protección de una autoridad externa, el primer intento de libertad será brutal y conducirá a un estado de cosas más doloroso y peligroso que la condición anterior, sin embargo, uno puede lograr la razón solo a través de las propias experiencias y uno debe ser libre para poder emprenderlas.

Libertad y Reconstrucción Social

Por razones como la anterior, aceptar y dar por un hecho el principio de que la libertad es inútil para los que están bajo el control de alguien y que una persona tiene el derecho de rechazar la libertad para siempre, es una violación del derecho de Dios mismo que ha creado al hombre para ser libre, esta particular observación es interesante también por su contexto, Kant, en esta ocasión, estaba defendiendo La Revolución Francesa durante el terror contra aquellos que afirmaron que sus masas no estaban preparadas para el privilegio de la libertad y sus comentarios a favor tienen una relevancia contemporánea obvia, ninguna persona racional aprobará la violencia y el terror y en particular el terror del Post-Revolucionario Estado que cae en manos de una autocracia sombría, alcanzado más de una vez niveles indescriptibles de salvajismo, al mismo tiempo, ninguna persona comprensiva o humana condenará demasiado rápidamente la violencia que a menudo ocurre cuando las masas sometidas se levantan contra su opresores para dar sus primeros pasos hacia la libertad y la reconstrucción social.

La Sospecha de Convertir a las Personas en Máquinas

Alexander von Humboldt

Alexander von Humboldt

Humboldt, solo unos años antes que Kant había expresado una opinión muy similar:

La libertad y la variedad son las condiciones previas para la autorrealización humana, nada promueve esta madurez para la libertad tanto como la libertad misma, esta verdad tal vez no sea reconocida por aquellos que tan a menudo han usado esta inmadurez como excusa para continuar la represión. Incuestionablemente desde la naturaleza del hombre, la incapacidad para la libertad solo puede surgir de la falta de poder moral e intelectual. Elevar estos poderes es la única forma de suplir la necesidad, pero hacerlo, presupone la libertad que despierta la actividad espontánea y aquellos que no comprenden esto pueden ser justamente sospechosos de malinterpretar la naturaleza humana y desear convertir a los hombres en máquinas.

La Experiencia Creativa y la Acción Espontánea

La crítica fraternal de Rosa Luxemberg a la ideología y práctica Bolchevique se dio en términos muy similares, ella decía que solo la participación activa de las masas en el autogobierno y la reconstrucción social podría dar lugar a lo que ella describia como la transformación espiritual completa de las masas degradadas por siglos de gobiernos de la clase burguesa.

Rosa Luxemburg

Rosa Luxemburg

Rosa Luxemberg decía que solo la experiencia creativa y la acción espontánea pueden resolver la miríada de problemas de la creación de una Sociedad Socialista Libertaria, ella continuó diciendo que históricamente los errores cometidos por un movimiento verdaderamente revolucionario son infinitamente más fructíferos que la infalibilidad del comité central más inteligente. Parece que estas observaciones pueden traducirse inmediatamente por la ideología algo paralela de «Soulful Corporation» que fue bastante popular entre los académicos estadounidenses, por ejemplo, Carl Kaysen, que cerca de 1930 escribió lo siguiente:

Ya no es el agente de la propiedad que busca maximizar el retorno de la inversión, ahora la gerencia se ve a sí misma como la responsable por los accionistas (stockholders), empleados, clientes, el público en general y quizás lo más importante, la propia empresa como institución.

«Corporaciones con Alma»

El economista Carl Kaysen nombró a Dupont, General Motors y General Electric como ejemplos de la corporación moderna, una «con alma». Entre los atributos que caracterizan a todas esas empresas, Kaysen señaló el tamaño y el dominio de la empresa, la capacidad de crecimiento a gran escala y la relativa ausencia de interés de propiedad. Sugirió una gestión especializada y profesional con el énfasis principal en la racionalidad y la computación mecánica para reemplazar el control vago e intuitivo por parte de los propietarios. Kaysen también señaló que las corporaciones que han alcanzado el estado de «alma» deberían servir como un ideal para los demás.

Convirtiendo a las Personas en Máquinas

No hay exhibición de avaricia al comprender esto, no hay ningún intento de manipular a los trabajadores de la comunidad, al menos a colaborar con una parte de los costos sociales de la empresa, la corporación moderna es una corporación «con alma». Del mismo modo, el partido de vanguardia es un partido «con alma». En ambos casos anteriores, aquellos que andan instando a las personas a someterse a las reglas de estas «autocracias benevolentes», racionalmente pueden ser acusados de querer convertir a los hombres en máquinas.

La exactitud de la opinión expresada por Rousseau, Kant, Humboldt, Luxemburg e innumerables pensadores, no es susceptible a la prueba científica; solo se puede evaluar en términos de experiencia e intuición, pero también se pueden señalar las consecuencias sociales de adoptar la visión de que los hombres nacen para ser libres o que nacen para ser gobernados por autócratas benevolentes.

¿Qué pasa con la segunda pregunta, la segunda pregunta de la eficiencia es el control democrático del sistema industrial hasta sus unidades funcionales más pequeñas incompatibles con la eficiencia?

Algunos dicen, por ejemplo, que la administración centralizada es un imperativo tecnológico, pero este argumento es extremadamente débil, ya que la misma tecnología que aporta información relevante al alto directorio de gerentes, también podría tener información disponible en cualquier momento para cualquiera en la fuerza de trabajo. La tecnología que ahora es capaz de eliminar la labor estupefaciente que convierte a los hombres en herramientas especializadas de producción, esta tecnología en principio debería permitir el ocio y las oportunidades educativas que nos hagan capaces de utilizar la información de manera racional.

Por razones como la anterior, incluso una élite económica que este goteando con «soulfulness» para usar la frase de Ralph Miliband, está limitada por el sistema en el que funciona para organizar la producción para ciertos fines, poder, crecimiento y ganancia. Pero no en la naturaleza del caso de las necesidades humanas, necesidades que en un grado cada vez más crítico pueden ser expresadas solo en términos colectivos. Seguramente es concebible y tal vez incluso sea probable que la decisión tomada por el colectivo refleje estas necesidades e intereses, así como lo serían las decisiones tomadas por varias elites con «soulfulness», en cualquier caso es un poco difícil tomarse en serio los argumentos sobre la eficiencia en una sociedad que dedica tales enormes recursos para desperdiciar y destruir. Como todos saben, el concepto mismo de eficiencia está goteando con la ideología.

La maximización de las mercancías no es la única medida de una existencia decente, este punto es bien conocido y no es necesario elaborarlo más.

El Verdadero Adam Smith

El verdadero Adam Smith, incluso el verdadero Thomas Jefferson y otros que eran anti-capitalistas, abogaron por la igualdad, pensaron que las personas nunca deberían ser sometidas a un trabajo asalariado, porque eso es destructivo para su humanidad.

Adam Smith

Adam Smith

El verdadero Adam Smith también dijo que:

Cualquier sociedad civilizada tiene que hacer algo para evitar la división del trabajo, si se permite, se convierte a las personas en criaturas tan estúpidas e ignorantes que es posible que un ser humano sea un defensor de los mercados solo con el argumento de que bajo la libertad perfecta se llega a la igualdad perfecta.

Cuando se habla de tradición libertaria, la de Adam Smith es la tradición libertaria tradicional de la que se debería hablar y en ese sentido y contexto, sí es libertaria tradicional.

El Término Libertario Tiene Muchos Conceptos

En resumen se puede decir que significa ser un defensor extremo en contra de la tiranía total.

Esto significa que el poder entregado a una corporación privada es una tiranía porque no rinden cuentas, incluso peor que las tiranías del estado porque allí el público tiene algún tipo de regla.

«Fuck Enlightenment»

El sistema corporativo especialmente como se desarrolló desde el siglo 20 es casi inexplicable, las personas empezaron a estar dentro de las instituciones, creyeron en las órdenes que vienen desde arriba y las reciben abajo como máquinas. Ahora las personas están fuera de las instituciones que siempre han querido para si mismos. Las tiranías estatales o corporativas hoy en día hacen lo que sienten, con facilidad y a una escala global si es necesario. Lo vacilón, si se puede decir así, es el extremo opuesto de lo que se ha llamado libertario en todo el mundo desde la Ilustración.

Es un poco difícil escarbar todo esto, porque ya no se pueden usar palabras como libertario o conservador, ni nada por el estilo porque todos estos conceptos han tomado un significado opuesto, como hemos visto, muy opuesto a través del tiempo.

La Riqueza de las Naciones

The Wealth of the Nation

The Wealth of the Nation

En cuanto a Adam Smith sobre La Riqueza de las Naciones, bueno, primero que nada vivimos en un capitalismo subsidiado por el estado, no tenemos que molestarnos en hablar más de eso, ha existido y existirá siempre porque la riqueza del poder no lo permite, así también lo entendió Adam Smith, el siempre supo que se usarán las palancas del poder para asegurarse de que el poder estatal subsidie, es por eso que Inglaterra se desarrolló, por eso Estados Unidos se desarrolló, por eso se desarrolló Francia, es por eso que Alemania se desarrolló y es por eso que Japón se desarrolló, de hecho cada sociedad desarrollada se ha desarrollado de esa manera, ese es uno de los clichés de la historia económica.

En un Mundo Mítico

Todos quieren ver un capitalismo justo. Curioso, porque las condiciones descritas por Adam Smith, decían algo como:

En condiciones de mercados perfectos, se logrará la igualdad perfecta, por eso los mercados son buenos, llevarán a la igualdad perfecta y no obligarán a las personas a someterse a órdenes externas, por lo que no se volverán menos que humanos.

El objetivo era claro, el objetivo era una sociedad basada en valores de la Ilustración, valores que se oponían radicalmente a lo que hoy se llaman valores libertarios.

Distorsión intelectual

Lo mismo ocurre con el término conservadurismo, la moral y los valores tradicionales de hoy en día son los opuestos a los concebidos desde Ilustración. Los términos han perdido tanto su significado, que se vuelven imposible de razonar, que estar al tanto de que esto pasa en sí mismo es un logro.

Cuando hay tiranía corporativa, también hay perversidad y salvajismo

¿Qué tal si una persona joven está en coma y se va a morir y además esta persona nunca contrató un seguro, qué debería pasarle?

Bueno, una vez, la primera respuesta (después públicamente la cambió por una «más humana») de Ron Paul fue:

La muerte es un tributo a nuestra libertad.

que va de la mano con el pensamiento de Milton Friedman, que decía:

El gobierno no tiene ninguna responsabilidad, la gente tiene responsabilidades; en lo que respecta a la pobreza, nunca ha habido en la historia una máquina más efectiva para eliminar la pobreza que el sistema de libre empresa en el libre mercado.

Milton Friedman

Milton Friedman

Milton Friedman predicaba que en virtud de la libertad, el libre mercado permite lograr una vida mejor. Además solo se puede apuntar a la igualdad dando a algunas personas el derecho de quitarle cosas a los demás y eso es lo que finalmente sucede cuando uno busca la igualdad, lo que sucede es que A y B deciden qué hace C para D, además durante el camino se quita una gran comisión por tomar la decisión.

Por otro lado, Noam Chomsky, considerado el Aristóteles de nuestro tiempo, y otros economistas tienen buenos argumentos alrededor de que:

La forma más efectiva de restringir la democracia es transferir la toma de decisiones del ámbito público a instituciones que no rinden cuentas, como: reyes y príncipes, castas sacerdotales, juntas militares, dictaduras partidistas o corporaciones modernas.

Stock Exchange

Stock Exchange

Pero de este tipo de economía, la que instaló experimentos como los Chicago Boys en Chile y otras partes de América Latina, sobre sus horrores y bondades,  es algo de lo que también voy a escarbar e intentar hablar en los próximos días, cuando tenga más datos que luego pueda transcribir en información que sea fácil de verificar.

Monedas emitidas por el gobierno y criptomonedas

Primero lo primero:

Fiat: Es una moneda fiduciaria, significa que es una moneda que se ve obligada a circular por un gobierno. Esto quiere decir que el gobierno exige que ciertos impuestos, deudas y otras transacciones relacionadas se realicen en una moneda determinada.

Básicamente vincula el valor de una moneda con el potencial productivo y la confianza de los inversores en una economía nacional.

Bitcoin: Es la tecnología conocida como la Cadena de Bloques de Bitcoin. Los «datos» transferidos se conocen como Bitcoins. Recuerde, Bitcoin es información con un incentivo financiero adjunto.

La transferencia de Bitcoins es voluntaria y no tiene que ser aceptada por la parte receptora. Aunque hay países que están empezando a aceptar el uso de Bitcoins como «dinero», por así decirlo, la mayoría de los países no imponen el uso del Bitcoin, por lo tanto, no es una moneda fiduciaria.

Un intercambio de Bitcoins (Bitcoin Exchange) es un mercado digital para que los usuarios compren y vendan Bitcoins utilizando diferentes monedas.

«Bitcoin Exchange» Conocidos:

El Bitcoin se puede canjear por dinero fiduciario/fiat (moneda de curso legal) u otras criptomonedas alternativas como Ethereum. El intercambio sirve como el intermediario para los comerciantes de la criptomoneda.

Game Theory by xkcd

Game Theory by xkcd

Poder comprar Bitcoins es el paso inicial para comerciarlo. Al igual que el comercio de una acción, los intercambios de Bitcoin cobran porcentajes o tarifas por transacción. Para poder intercambiar Bitcoin en un «Bitcoin Exchange», el usuario debe tener una cuenta y realizar una serie de pasos para ser verificado. Recuerde que Bitcoin y las criptomonedas alternativas son una moneda completamente digital, y no hay Bitcoins físicos.

Por favor escarbe más en:

Naturaleza volátil

Bitcoin es bien conocido por su naturaleza volátil, por lo que todos los días pueden haber ganancias y/o pérdidas. A veces esas pérdidas o ganancias serán grandes, mientras que otras veces pueden no serlo. Para bien o para mal, ese es la naturaleza del comercio.

Nash e · qui · lib · ri ·um sustantivo (en economía y teoría de juegos) un estado estable de un sistema que involucra la interacción de diferentes participantes, en el que ningún participante puede ganar por un cambio de estrategia unilateral si las estrategias de los demás permanecen sin alterar.

Costos de energía y refrigeración

El Bitcoin no se encuentra centralizado por un gobierno. Sin embargo, se encuentra descentralizado y respaldado por un concepto llamado «Prueba de trabajo». Básicamente, el trabajo de hash criptográfico de los mineros facilita las transacciones en la red y las recompensas que reciben aumentan el suministro de Bitcoins, detrás del telón todo esto implica costos de hardware y de electricidad. El mercado para estas costosas transacciones implica una carrera competitiva entre mineros para desarrollar una tecnología minera más rápida y obtener formas más económicas de realizar la computación (como ubicar centros de datos). En este sentido, la teoría de juegos es fuertemente aplicable a las condiciones competitivas de la minería y se puede ver en el contexto de cómo funciona Bitcoin como sistema.

La segunda generación del internet

El «hype» del Bitcoin como criptomoneda es entretenido, todo este «sueño utópico libertario del Silicon Valley» es romántico y salvaje también. Por eso me parece que nunca es tarde para aprender… además no escarbar cómo funciona el comercio y la economía durante esta burbuja, en este momento de la humanidad es más o menos igual a tener el cerebro muerto.

«One hand, one million dollars, no tears» — Salomon Brothers.

Night singer of shares

Wikipedia – Night singer of shares

Sabemos que Bitcoin (BTC) es una criptomoneda, un activo digital diseñado para funcionar como un medio de intercambio. Bitcoin «no depende» de las autoridades centrales y tradicionales para controlar su creación y administración.


El presunto creador bajo el pseudónimo de Satoshi Nakamoto integró muchas ideas existentes de la comunidad cypherpunk al crear Bitcoin. Podemos decir que un cypherpunk es cualquier interesado en el uso generalizado y proactivo de la criptografía fuerte y las tecnologías que ofrecen privacidad como una ruta para el cambio social, político y económico. Los cypherpunks tienen un movimiento activo desde finales de los años ochenta.

¿Por qué hay personas que tienen muchos Bitcoins?

La gran mayoría de personas que tiene bastantes Bitcoins ahora es porque compró cuando el valor del precio era bajo y rondaba los $200 o menos.

Básicamente, cuando se cree estar en lo mejor de la burbuja es cuando la gran mayoría de personas compra Bitcoins por primera vez, esto es algo que se puede notar cuando el valor del Bitcoin rondaba los $1000.

Volatilidad del precio y la naturaleza humana del pánico

  • Si las personas compran muchos Bitcoins en un periodo dado, entonces el valor del precio aumenta.
  • Las personas tienden a vender sus acciones/Bitcoins cuando el mercado cae en un cierto porcentaje.
  • Tendemos a comprar algo cuando es popular, por eso cuando el precio cae la respuesta natural del pánico impulsa a las personas a vender a un precio bajo.

¿Cuándo es el buen momento para comerciar?

  • La primera regla es: Trate de comprar cuando el precio es bajo y trate de vender cuando el precio es alto, siempre tenga en mente que el objetivo es maximizar las ganancias y minimizar el riesgo.
  • En general, la mentalidad «compre y espere» parece que nunca funciona bien para un inversionista, usualmente terminan perdiendo.
  • Acumule a largo plazo cuando el precio es bajo, cuando hay un valor con el cual usted de hecho si puede “jugar”.
  • Poco cuando el valor del precio muestre patrones de ruptura justo cuando el precio es alto.
  • Intercambie altcoins (monedas alternas) volátiles con la mentalidad de aumentar su propia tenencia de Bitcoins.
  • Trate de comprar cuando hay pánico masivo: Tenga confianza pero también tenga calma y administre bien el riesgo, recuerde, usted ha decidido invertir justo cuando las cosas están realmente feas.
  • Manténgase alejado cuando hay mucha agitación/fluctuación en el valor del precio.

En realidad todo este «hype» me recuerda las afueras del BCR en los 80’s, de pequeño me acuerdo escuchar gente comerciando dólar:

vendo dólar... vendo dólar... vendo dólar...

«Greater fool theory»

En el mercado bursátil, la teoría del tonto más grande se aplica cuando muchos inversores hacen una inversión cuestionable, con la suposición de que podrán venderla más tarde a «un tonto más grande». En otras palabras, compran algo no porque creen que vale la pena el valor del precio, sino porque creen que podrán venderlo a otra persona a un precio aún más alto. También se llama inversión de sobrevivientes. Es similar en concepto al principio del concurso de belleza keynesiano de invertir en acciones.

¿Pero cuál es el atractivo de Bitcoin?

Su atractivo es muy similar al del oro, pero sin los inconvenientes que tienen los metales preciosos: debido a que no es necesario pagar grandes sumas por almacenar criptomonedas de forma segura en cualquier cantidad, se pueden transportar instantáneamente y de forma libre a cualquier parte del mundo, se pueden lograr tener y administrar en completo anonimato… donde ningún ente regulatorio, ladrón o atracador te los pueda quitar o robar. Aunque queda mucha tela por cortar y ver si los reguladores, los piratas informáticos o los fraudes puedan encontrar formas «creativas» de hacerlo.

Se ha dicho que al colocar un límite fijo en el número de monedas, la cantidad de Bitcoins en circulación eventualmente no va poder seguir el ritmo del crecimiento en la producción mundial de bienes y servicios, así como tampoco lo logró el oro, ni tampoco la plata durante la Revolución Industrial, lo que los obligó a abandonarlo como base monetaria, mas de un siglo atrás. Si la comunidad Bitcoin puede reconocer ese defecto y permitir que el número en circulación crezca a la misma velocidad que la producción (y solo a esa velocidad)… puede ser que el Bitcoin se llegue a convertir en la moneda «perfecta».


La deflación o inflación negativa, en economía, es un descenso generalizado y prolongado -como mínimo, dos semestres según el FMI- de los precios de bienes y servicios motivado por una atonía de la demanda y un exceso de las capacidades productivas (oferta). La deflación normalmente está asociada a las recesiones y a las crisis económicas y financieras.

Debido a que la base monetaria de los Bitcoins no se puede expandir, la moneda estaría sujeta a una severa deflación si se llega a utilizar de manera amplia.

Economistas Keynesianos

Los economistas keynesianos sostienen que la deflación es mala para una economía porque incentiva a las personas y las empresas a ahorrar dinero en lugar de invertir en empresas y crear empleos.

Escuela de Pensamiento Austriaca

La escuela de pensamiento austriaca contrarresta esta crítica, alegando que como la deflación ocurre en todas las etapas de la producción, los empresarios que invierten se benefician de ella. Como resultado, los ratios financieros de ganancias tienden a permanecer igual y solo cambian sus magnitudes.

En otras palabras, en un entorno deflacionario, los bienes y servicios disminuyen en el precio, pero al mismo tiempo el costo para la producción de estos bienes y servicios tiende a disminuir proporcionalmente, sin afectar efectivamente los beneficios. La deflación de precios fomenta un aumento del acaparamiento, por lo tanto, de ahorro, que a su vez tiende a reducir las tasas de interés y aumenta los incentivos para que los empresarios inviertan en proyectos de más largo plazo.

Por favor escarbe más en:

Es evidente que los gobiernos y los bancos centrales lo pueden odiar bastante, pero parece que no podrán hacer nada al respecto… a menos que estén preparados para:

  1. Cerrar la Internet permanentemente.
  2. Meterse en el juego como ya algunas entidades lo están estudiando y experimentando.

¿Cómo funciona una criptomoneda?

Blockchain – Confianza + Criptografía = Criptomoneda

Este no es un artículo con comentarios o especulaciones sobre los tipos de cambio actuales o futuros del Bitcoin. Pero si trata sobre conocer al menos los fundamentos de la tecnología.

Libro mayor

Es una lista de registros organizados en bloques, que se encuentran enlazados y asegurados mediante criptografía. Cada bloque contiene típicamente un puntero de hash criptográfico que enlaza hacia un bloque anterior, una fecha completa y los datos de la transacción.

Por diseño, los blockchains son intrínsecamente resistentes a la modificación de sus datos. Un blockchain puede servir como «un libro mayor abierto y distribuido que puede registrar transacciones entre dos partes de manera eficiente y de manera verificable y permanente».

Mastering Bitcoin by Andreas M. Antonopoulos

Mastering Bitcoin by Andreas M. Antonopoulos

Para usar como un libro mayor distribuido, un blockchain es típicamente administrado por una red peer-to-peer que se adhiere colectivamente a un protocolo para validar nuevos bloques. Una vez registrados, los datos en cualquier bloque dado no pueden alterarse retroactivamente sin la alteración de todos los bloques posteriores, lo que requiere la colusión de la mayoría de la red.

Firmas digitales

Cada transacción está firmada. Además se asegura que no sea factible que otra persona adivine o falsifique una transacción firmada.

Llave privada – sk

Firmar(mensaje, Llave Secreta) = Firma

  • Es algo que guardamos en secreto para nosotros mismos.
  • Cambia para diferentes mensajes, la alteración de un mensaje cambia completamente el aspecto de la firma en ese mensaje.
  • Producir una firma implica una función que depende tanto del mensaje en sí como de nuestra llave privada.

Llave pública – pk

Verificar(Mensaje/Transacción, Firma, Llave Pública) = Booleano

  • Cuando se verifica una firma contra una transacción, podemos sentirnos extremadamente seguros de que la única forma en que alguien podría haberlo producido es porque conocía la llave secreta asociada con la llave pública que se utiliza para la verificación.
  • Entonces, cuando se firma una transacción, el mensaje también incluye un tipo de identificación asociado a esa transacción. Inicialmente esto hace que las firmas digitales sean realmente confiables dentro de este protocolo.


  • Solo las transacciones firmadas son válidas.
  • Cualquiera puede agregar líneas al libro mayor.
  • Puede haber liquidez con dinero real.
  • Previene que alguien gaste más de lo que tiene.

Moneda = Historial de transacciones

Un libro mayor de contabilidad contiene el historial de transacciones de una moneda.

¿Quién controla las reglas de agregar nuevas líneas?

Para asegurar la confianza, todos guardan su propia copia del libro mayor. Entonces, cuando queremos hacer una transacción, lo que hacemos es transmitirlo al mundo para que la gente lo escuche y lo grabe en sus propios libros contables privados.

  • ¿Cómo se logra que todos estén de acuerdo en cuál es el libro mayor de registro correcto?
  • ¿Cómo podemos estar seguros de que todos los demás recibieron y creen en la misma transacción?
  • ¿Cómo podemos estar seguros de que otra persona está grabando la misma transacción y en el mismo orden?
  • ¿Cómo podemos estar seguros de que alguien más en el mundo que está siguiendo ese mismo protocolo tiene un libro mayor personal que se ve igual al nuestro?

La solución que ofrece Bitocoin es

  • No es un banco que verifica las transacciones, sino que es un sistema inteligente de verificación descentralizada sin fideicomiso basado en algunas de las matemáticas nacidas en la criptografía.
  • Se confía en los libros mayores que tienen el mayor trabajo computacional.
  • El trabajo computacional asegura que las transacciones fraudulentas y los libros mayores contables conflictivos requieran de una cantidad de computación no factible de generar.
  • El fraude es computacionalmente inviable.

Función hash criptográfica

SAH256 («MessageOrFile») = 101010101010101 ….

  • La salida se llama «hash» o «digest» del mensaje.
  • No es aleatorio.
  • Siempre da el mismo resultado para una entrada determinada. Pero la idea es que si cambiamos ligeramente la entrada, tal vez editando solo uno de los caracteres, el hash resultante cambie completamente.
  • La forma en que cambia la salida a medida que cambiamos ligeramente esa entrada es completamente impredecible. Podemos ver, que esta no es solo una función hash, es una función hash criptográfica. Eso significa que no es factible calcular en la dirección inversa tratando de encontrar la entrada.

Prueba de trabajo (SHA256)

¿Cómo una función puede probar que una lista particular de transacciones está asociada con una gran cantidad de esfuerzo computacional?

Este trabajo del cuál se habla está intrínsecamente vinculado a la lista de transacciones. Si cambiamos una de esas transacciones, incluso ligeramente cambiaría completamente el hash, tendríamos que pasar por otros «mil millones» de conjeturas para encontrar una nueva prueba de trabajo, un nuevo número que haga al hash de la lista modificada comenzar con la misma cantidad de ceros al inicio.

Organicemos el libro mayor en bloques


La idea original es hacer que todos confíen en el libro mayor de contabilidad que trabaje más. La forma en que esto funciona es primero organizar un libro dado en bloques.

Confianza en el libro mayor que trabaja más:

Debido a que todo el mundo está allí transmitiendo transacciones y queremos un acuerdo sobre cuál libro mayor contable es el correcto para tenerle confianza. Sabemos que la idea central detrás del documento original de Bitcoin es hacer que todos confíen en el libro mayor que trabaja más.

La forma en que esto funciona es primero organizar el libro mayor dado en bloques, donde cada bloque consiste en una lista de transacciones junto con una prueba de trabajo, que es un número especial para que el hash de todo el bloque comience con un montón de ceros.

De la misma manera que una transacción solo se considera válida cuando está firmada por el remitente. Un bloque solo se considera válido si tiene una prueba de trabajo.

Importancia del hash del bloque anterior:

Para asegurarnos de que haya un orden estándar para estos bloques, cada bloque contiene el hash del bloque anterior en su encabezado. De esta manera, si tuviéramos que retroceder y cambiar cualquiera de los bloques o intercambiar el orden de dos bloques, cambiaría el bloque que viene después de él, lo que cambia el hash del bloque, que cambia el que viene después de él, y así sucesivamente. Esto requeriría rehacer todo el trabajo encontrando un nuevo número especial para cada uno de estos bloques que hace que su hash comience con ceros. Debido a que los bloques están encadenados de esta manera, en lugar de llamarlo libro mayor, es común llamarlo blockchain.

Creador de bloque

Como parte de el protocolo actualizado, se permite que cualquiera en el mundo pueda ser un creador de bloques. Lo que eso significa es que van a escuchar las transacciones que se emiten, las reúnen en un bloque y luego hacen un montón de trabajo para encontrar un número especial que hace que el hash de ese bloque comience con ceros, una vez que lo encuentran, transmiten el bloque que encontraron.


Para recompensar a un creador de bloque por todo este trabajo, cuando una persona arma un bloque, también incluimos una transacción muy especial en la parte superior, en la que esa persona recibe una cuota de la nada. Esto se conoce como la recompensa por bloque y es una excepción a nuestras reglas habituales sobre si se aceptan o no las transacciones. No proviene de alguien, por lo que no tiene que estar firmada. Esto también significa que el número total de moneda contable en nuestra economía aumenta con cada bloque nuevo.


Crear un bloque a menudo se llama minería. Ya que requiere mucho trabajo que introduce nuevos trozos de moneda en la economía, tenga en cuenta que lo que realmente están haciendo es escuchar transacciones, crear bloques, transmitir esos bloques y recibir recompensas con dinero nuevo por hacerlo.

Desde la perspectiva del minero, cada bloque es como una lotería en miniatura, donde todo el mundo adivina los números lo más rápido posible hasta que un individuo afortunado encuentra un número especial que hace que el hash comience con muchos ceros, entonces el minero recibe una recompensa.

Por favor escarbe más en:


Para cualquier otra persona que solo quiera usar el sistema para realizar pagos, en lugar de estar escuchando por transacciones, todos comienzan a escuchar solo por los bloqueos que transmiten los mineros, entonces actualizan sus propias copias personales del blockchain.

Consenso descentralizado

Ahora, la adición clave a nuestro protocolo es que si escuchamos dos blockchains distintos con historiales de transacciones en conflicto, nos inclinamos por el más largo, el que trabaja más. Si hay un empate, solo espere hasta escuchar un bloque adicional que hace que uno de ellos sea más largo. Así que, aunque no existe una autoridad central y todo el mundo mantiene su propia copia de la cadena de bloques, si todos aceptan dar preferencia a la cadena de bloques que trabaje más, tenemos una forma de llegar a un consenso descentralizado.

Para ver por qué esto asegura que es un sistema confiable, y para entender en qué punto debemos confiar en que un pago es legítimo, en realidad es realmente útil analizar exactamente lo que se necesitaría para engañar a alguien que usa este sistema.

Tiempo promedio requerido para crear un bloque

Anteriormente dijimos que la prueba del trabajo podría ser encontrar un número especial para que el hash del bloque comience con ceros. Bueno, la forma en que funciona el protocolo Bitcoin real, consiste en cambiar periódicamente esa cantidad de ceros, por lo que debería tomar un promedio de N minutos encontrar un nuevo bloque, de modo que a medida que se agregan más y más mineros a la red, el desafío realmente se hace más y más difícil, de tal manera que esta lotería en miniatura solo tiene alrededor de un ganador cada N minutos.

¿De dónde provino la mayor cantidad del dinero del Bitcoin?

Muchas criptomonedas más nuevas en realidad tienen tiempos de creación de bloque mucho más cortos que el de Bitcoin. Se podría decir que todo el dinero en Bitcoin en última instancia proviene de alguna recompensa por bloque. Al principio, estas recompensas fueron de 50 Bitcoins por bloque.

210000 (50 + 25 + 12.5 + 6.25 + …) = 21000000

Si miramos los primeros pocos bloques del Blockchain al inicio, no contienen ninguna transacción que no sea esa recompensa de 50 Bitcoins para el minero. Pero cada 210000 bloques, que es aproximadamente cada 4 años, esa recompensa se reduce a la mitad. Entonces, en este momento, la recompensa es de N Bitcoins por bloque. Y debido a que esta recompensa disminuye geométricamente con el tiempo, significa que nunca habrá más de 21000000 Bitcoins en existencia.


Sin embargo, esto no significa que los mineros dejen de ganar dinero. Además de la recompensa por bloque, los mineros también pueden recoger costos por transacción. La forma en que esto funciona es que cada vez que se realiza un pago, se puede incluir de forma puramente opcional una pequeña tarifa de transacción que se destinará al minero de cualquier bloque que incluya ese pago. La razón por la que realmente se hace esto es para incentivar a los mineros a incluir la transacción que transmitimos en el siguiente bloque.

Sabemos que en Bitcoin, cada bloque está limitado a alrededor de 2400 transacciones, lo cual, según muchos críticos, es innecesariamente restrictivo. A modo de comparación, VISA procesa un promedio de aproximadamente 1700 transacciones por segundo, y son capaces de manejar más de 24000 por segundo. Este procesamiento comparativamente lento en Bitcoin hace que las tarifas de transacción sean más altas, y eso es lo que determina qué transacciones los mineros eligen incluir en un nuevo bloque.


Aunque este artículo está lejos de una cobertura completa sobre como funcionan las criptomonedas, todavía hay alternativa, matices y opciones de diseño que también se pueden investigar después. Uno de los grandes motivos detrás de esto es que una gran cantidad de dinero ha comenzado a fluir hacia las criptomonedas.


Humanistas tienen fe en los recursos intelectuales y espirituales de las personas, esto no sólo ofrece el conocimiento para comprender el mundo que percibimos, además resuelve los problemas morales de cómo utilizar nuestro propio conocimiento. Básicamente tenemos una actitud de respeto a otras personas sin distinción de clase, raza o credo.

Entre nuestros principios morales fundamentales podemos encontrar la libertad, la tolerancia y la felicidad.

Código moral

Sabemos que toda sociedad necesita un código moral para que las personas puedan vivir en armonía. Sin embargo, también sabemos que la moral proviene de dentro de nosotros mismos. Tiene que ver con la gente, con la buena voluntad individual y la responsabilidad social, se trata de la generosidad, la bondad y la consideración hacia los demás.

La moralidad es posible porque los seres humanos tenemos un sentido de responsabilidad, incluso trabajamos en la mejora de nuestro código moral mientras vamos entendiendo lo que esto significa para nosotros mismos y para otras personas también. Lo importante, lo que sucede es que vamos hacia un futuro en donde aceptamos la responsabilidad por la sociedad en la que vivimos, sin imponer a otros los prejuicios o la intolerancia moral del pasado.

¿Por qué?

Busquemos las respuestas a las mismas preguntas que todos los demás se hacen a si mismos:

  • ¿Por qué estoy Yo aquí?
  • ¿Cuál es el propósito de la vida?
  • ¿Cómo se originó la vida?
  • ¿Esto es bueno para mi, esto es bueno para los demás también?
  • ¿Qué pasará conmigo cuando me muera?

El camino va hacia las respuestas basadas en la razón, la experiencia y en los valores humanos compartidos. Las evidencias que nos permiten creer en las cosas, en la ciencia de las cosas, es nuestra propia experiencia. Por esta razón podemos permanecer con una mente amigable y despierta ante las preguntas.

En vez de creer lo que otra persona nos dice. Pensemos las grandes preguntas por nosotros mismos. De hecho algunas preguntas pueden no tener respuestas probables hoy en día, pero se acepta el reto.

DisfrutAmos la vida

La felicidad es el único bien… la hora de ser feliz es ahora, y la manera de ser feliz es hacer que otros también lo sean.

La forma en que podemos hacer felices a los demás es siendo nosotros mismos felices. Consideremos razonable disfrutar de las cosas buenas de la vida, como las amistades, las artes y el mundo natural – además todo esto podemos hacerlo sin perjudicar a los demás o al medio ambiente.