fix dates of pictures

master
Mahdi Dibaiee 5 months ago
parent 63af252644
commit 0aa03bb716
  1. 2
      CNAME
  2. 2
      _art/2018-07-18-iran-yeylaq.md
  3. 2
      _art/2018-09-10-ox-bathing.md
  4. 2
      _art/2018-09-21-shepherd.md
  5. 2
      _art/2018-09-23-dog-and-puppy.md
  6. 2
      _art/2019-02-22-tabatabaei-house.md
  7. 2
      _art/2019-09-10-jebir.md
  8. 2
      _art/2019-10-29-birds-sunrise-sea-iran.md
  9. 2
      _art/2019-10-30-darak-2.md
  10. 2
      _art/2019-10-30-darak.md
  11. 2
      _art/2019-10-31-windcatcher.md
  12. 2
      _art/2019-11-03-flamingos-iran.md
  13. 2
      _art/2019-12-26-christmas-day-homeless-man-church.md
  14. 2
      _art/2020-03-15-cemetery.md
  15. 2
      _art/2020-05-06-dublin-chimneys.md
  16. 2
      _art/2020-05-16-grey-heron-bushy-park.md
  17. 2
      _art/2020-10-18-not-silent.md
  18. 2
      _art/2020-10-21-drummer-vanishing.md
  19. 2
      _art/2020-12-18-sightings-from-a-dream-1.md
  20. 2
      _art/2020-12-19-sightings-from-a-dream-2.md
  21. 2
      _art/2020-12-20-sightings-from-a-dream-3.md
  22. 2
      _art/2020-12-21-sightings-from-a-dream-4.md
  23. 2
      _art/2020-12-22-sightings-from-a-dream-5.md
  24. 2
      _art/2020-12-25-tired-eyes-tired-minds-tired-souls.md
  25. 2
      _art/2020-12-26-i-cast-a-spell-on-the-city.md
  26. 2
      _art/2020-12-27-galileo.md
  27. 2
      _art/2020-12-28-dark-street-light.md
  28. 2
      _art/2020-12-30-deer-silhouette.md
  29. 2
      _art/2020-12-31-deer-above.md
  30. 2
      _art/2021-01-01-clouds-among-rocks.md
  31. 2
      _art/2021-01-01-yazd-children.md
  32. 2
      _art/2021-01-04-organs.md
  33. 2
      _art/2021-01-06-smell-like-trees.md
  34. 2
      _art/2021-01-08-birds-in-form.md
  35. 2
      _art/2021-01-10-preparation.md
  36. 2
      _art/2021-01-10-the-night-has-descended-on-us.md
  37. 2
      _art/2021-01-12-male-back.md
  38. 2
      _art/2021-01-13-on-mourra-seul.md
  39. 2
      _art/2021-01-28-god-will-pardon-me.md
  40. 2
      _art/2021-02-25-la-vida.md
  41. 2
      _art/2021-03-01-un-grand-peut-etre.md
  42. 2
      _art/2021-03-06-sky.md
  43. 2
      _art/2021-03-07-history-so-close-it-comes-alive.md
  44. 2
      _art/2021-05-12-boy.md
  45. 2
      _art/2021-05-22-ireland-abandoned.md
  46. 2
      _art/2021-06-19-grand.md
  47. 2
      _art/2021-06-21-blue-contagious-smile.md
  48. 2
      _art/2021-06-23-head-wall.md
  49. 2
      _art/2021-06-29-girl-among-grains.md
  50. 2
      _art/2021-07-17-holy-money-spitting-machine.md
  51. 2
      _art/2021-07-18-sigh.md
  52. 2
      _art/2021-07-20-drought-dead-statue.md
  53. 2
      _art/2021-08-20-concrete-jungle-trees.md
  54. 2
      _art/2021-08-20-punk-gangster.md
  55. 2
      _art/2021-08-21-et-les-extremes-se-touchent.md
  56. 2
      _art/2021-08-21-girl-eye-flowers-1.md
  57. 2
      _art/2021-08-21-girl-eye-flowers-2.md
  58. 2
      _art/2021-08-21-girl-eye-flowers-3.md
  59. 2
      _art/2021-08-29-the-right-way-is-the-untrodden.md
  60. 2
      _art/2021-09-24-hill-of-tara.md
  61. 2
      _art/2021-11-30-time-traveller.md
  62. 2
      _art/2021-12-23-milan-cathedral.md
  63. 2
      _art/2021-12-24-mount-tibidabo-cathedral.md
  64. 2
      _art/2021-12-27-switzerland-white-tree.md
  65. 2
      _art/2022-01-13-crucifixion-sagrada-familia.md
  66. 0
      _art/2022-06-27-dead-baluga.md
  67. 0
      _art/2022-06-27-highland-cow-1.md
  68. 0
      _art/2022-06-27-highland-cow-2.md
  69. 0
      _art/2022-06-27-lundy-nature-reserve.md
  70. 0
      _art/2022-06-27-pelican-of-london.md
  71. 0
      _art/2022-06-27-puffin.md
  72. 0
      _art/2022-06-27-seals.md
  73. 2
      _art/2022-08-05-baled-hay.md
  74. 2
      art.html
  75. 4
      life.html
  76. 4
      math.html
  77. 4
      programming.html
  78. 1
      site/CNAME
  79. 3
      site/README.md
  80. 110
      site/about/index.html
  81. 194
      site/alternative-objectivity-and-inherent-subjectivity/index.html
  82. 1565
      site/art/index.html
  83. 298
      site/autocomplete-predict-trie/index.html
  84. 221
      site/broadcastchannel-api/index.html
  85. 258
      site/css-filters/index.html
  86. BIN
      site/css/fonts/Damion_gdi.woff
  87. BIN
      site/css/fonts/KaTeX_AMS-Regular.eot
  88. BIN
      site/css/fonts/KaTeX_AMS-Regular.ttf
  89. BIN
      site/css/fonts/KaTeX_AMS-Regular.woff
  90. BIN
      site/css/fonts/KaTeX_AMS-Regular.woff2
  91. BIN
      site/css/fonts/KaTeX_Caligraphic-Bold.eot
  92. BIN
      site/css/fonts/KaTeX_Caligraphic-Bold.ttf
  93. BIN
      site/css/fonts/KaTeX_Caligraphic-Bold.woff
  94. BIN
      site/css/fonts/KaTeX_Caligraphic-Bold.woff2
  95. BIN
      site/css/fonts/KaTeX_Caligraphic-Regular.eot
  96. BIN
      site/css/fonts/KaTeX_Caligraphic-Regular.ttf
  97. BIN
      site/css/fonts/KaTeX_Caligraphic-Regular.woff
  98. BIN
      site/css/fonts/KaTeX_Caligraphic-Regular.woff2
  99. BIN
      site/css/fonts/KaTeX_Fraktur-Bold.eot
  100. BIN
      site/css/fonts/KaTeX_Fraktur-Bold.ttf
  101. Some files were not shown because too many files have changed in this diff Show More

@ -1 +1 @@
theread.me
mahdi.blog

@ -1,7 +1,7 @@
---
layout: post
title: "iran-yeylaq"
date: 2021-03-12
date: 2018-07-18
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "ox-bathing"
date: 2021-02-01
date: 2018-09-10
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "shepherd"
date: 2021-03-12
date: 2018-09-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "dog-and-puppy"
date: 2021-03-12
date: 2018-09-23
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "tabatabaei-house"
date: 2021-03-12
date: 2019-02-22
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "jebir"
date: 2021-02-01
date: 2019-09-10
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "birds-sunrise-sea-iran"
date: 2021-03-12
date: 2019-10-29
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "darak-2"
date: 2021-03-12
date: 2019-10-30
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "darak"
date: 2021-03-12
date: 2019-10-30
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "windcatcher"
date: 2021-02-01
date: 2019-10-31
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "flamingos-iran"
date: 2021-03-12
date: 2019-11-03
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "christmas-day-homeless-man-church"
date: 2021-03-12
date: 2019-12-26
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "cemetery"
date: 2021-03-12
date: 2020-03-15
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "dublin-chimneys"
date: 2021-03-12
date: 2020-05-06
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "grey-heron-bushy-park"
date: 2021-03-12
date: 2020-05-16
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "not-silent"
date: 2021-03-12
date: 2020-10-18
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "drummer-vanishing"
date: 2021-03-12
date: 2020-10-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sightings-from-a-dream-1"
date: 2021-03-12
date: 2020-12-18
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sightings-from-a-dream-2"
date: 2021-03-12
date: 2020-12-19
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sightings-from-a-dream-3"
date: 2021-03-12
date: 2020-12-20
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sightings-from-a-dream-4"
date: 2021-03-12
date: 2020-12-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sightings-from-a-dream-5"
date: 2021-03-12
date: 2020-12-22
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "tired-eyes-tired-minds-tired-souls"
date: 2021-03-12
date: 2020-12-25
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "i-cast-a-spell-on-the-city"
date: 2021-03-12
date: 2020-12-26
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "smell-like-trees"
date: 2021-02-01
date: 2020-12-27
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "dark-street-light"
date: 2021-03-12
date: 2020-12-28
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "deer-silhouette"
date: 2021-03-12
date: 2020-12-30
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "deer-above"
date: 2021-03-12
date: 2020-12-31
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "clouds-among-rocks"
date: 2021-03-12
date: 2021-01-01
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "yazd-children"
date: 2021-02-01
date: 2021-01-01
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "organs"
date: 2021-03-12
date: 2021-01-04
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "galileo"
date: 2021-02-01
date: 2021-01-06
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "birds-in-form"
date: 2021-03-12
date: 2021-01-08
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "preparation"
date: 2021-02-01
date: 2021-01-10
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "the-night-has-descended-on-us"
date: 2021-03-12
date: 2021-01-10
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "male-back"
date: 2021-03-12
date: 2021-01-12
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "on-mourra-seul"
date: 2021-02-01
date: 2021-01-13
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "god-will-pardon-me"
date: 2021-03-12
date: 2021-01-28
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "la-vida"
date: 2021-02-01
date: 2021-02-25
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "un-grand-peut-etre"
date: 2021-03-12
date: 2021-03-01
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sky"
date: 2021-02-01
date: 2021-03-06
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "history-so-close-it-comes-alive"
date: 2021-03-12
date: 2021-03-07
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "boy"
date: 2021-03-12
date: 2021-05-12
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "ireland-abandoned"
date: 2021-03-12
date: 2021-05-22
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "grand"
date: 2021-02-01
date: 2021-06-19
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "blue-contagious-smile"
date: 2021-03-12
date: 2021-06-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "head-wall"
date: 2021-03-12
date: 2021-06-23
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "girl-among-grains"
date: 2021-02-01
date: 2021-06-29
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "holy-money-spitting-machine"
date: 2021-03-12
date: 2021-07-17
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "sigh"
date: 2021-02-01
date: 2021-07-18
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "drought-dead-statue"
date: 2021-03-12
date: 2021-07-20
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "concrete-jungle-trees"
date: 2021-03-12
date: 2021-08-20
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "punk-gangster"
date: 2021-03-12
date: 2021-08-20
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "et-les-extremes-se-touchent"
date: 2021-03-12
date: 2021-08-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "girl-eye-flowers-1"
date: 2021-03-12
date: 2021-08-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "girl-eye-flowers-2"
date: 2021-03-12
date: 2021-08-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "girl-eye-flowers-3"
date: 2021-03-12
date: 2021-08-21
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "the-right-way-is-the-untrodden"
date: 2021-03-12
date: 2021-08-29
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "hill-of-tara"
date: 2021-03-12
date: 2021-09-24
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "time-traveller"
date: 2021-03-12
date: 2021-11-30
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "milan-cathedral"
date: 2021-03-12
date: 2021-12-23
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "mount-tibidabo-cathedral"
date: 2021-03-12
date: 2021-12-24
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "switzerland-white-tree"
date: 2021-03-12
date: 2021-12-27
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "crucifixion-sagrada-familia"
date: 2021-03-12
date: 2022-01-13
categories: art
author: Mahdi
---

@ -1,7 +1,7 @@
---
layout: post
title: "baled-hay"
date: 2021-03-12
date: 2021-08-05
categories: art
author: Mahdi
---

@ -4,7 +4,7 @@ layout: default
<div class="home art">
<ul class="post-list">
{% for post in site.art %}
{% for post in site.art reversed %}
{% if post.published == false %}
{% continue %}
{% endif %}

@ -1,4 +0,0 @@
---
layout: category
category: life
---

@ -1,4 +0,0 @@
---
layout: category
category: math
---

@ -1,4 +0,0 @@
---
layout: category
category: programming
---

@ -0,0 +1 @@
theread.me

@ -0,0 +1,3 @@
mahdi.blog
==========

@ -0,0 +1,110 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>About</title>
<meta name="description" content="a rabbit hole">
<link href="https://fonts.googleapis.com/css?family=Secular+One|Nunito|Mononoki" rel="stylesheet">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="http://localhost:4000/about/">
<link rel="alternate" type="application/rss+xml" title="mahdi" href="http://localhost:4000/feed.xml" />
<!--<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>-->
<script>
var channel = new BroadcastChannel('egg');
channel.addEventListener('message', message => {
alert('Got a message from the other tab:\n' + message.data);
});
</script>
</head>
<body>
<header class="site-header">
<h1>
<a class='site-title' href='/'>
mahdi
</a>
</h1>
<nav>
<p>
<a href="/snippets">snippets</a>
<a href="/art">pictures</a>
</p>
<!--<p class='categories'>-->
<!---->
<!---->
<!--<a href="">art</a>-->
<!---->
<!---->
<!---->
<!---->
<!--</p>-->
<p>
<a href='mailto:mdibaiee@pm.me'>email</a>
<a href='https://git.mahdi.blog/mahdi'>git</a>
<a href='https://www.librarything.com/profile/mdibaiee'>librarything</a>
<a href="http://localhost:4000/feed.xml">feed</a>
</p>
</nav>
</header>
<div class="page-content">
<div class="wrapper">
<h1 class="page-heading"></h1>
<div class="post">
<div class="post-header">
<h1 class="post-title"><p>About</p>
</h1>
</div>
<article class="post-content">
<p>Hi, it’s Mahdi. I was born 24th of July, 1998. I write about a variety of topics here, whatever I find worthwhile to share with others.
I like so many things I’d better just list them instead of boring you by making up a fancy sentence about them, so here, in no particular order:</p>
<ul>
<li>Programming</li>
<li>Mathematics</li>
<li>Nature</li>
<li>Artificial Intelligence</li>
<li>Fitness</li>
<li>Parkour</li>
<li>All sorts of extreme sports: Skydiving, Scuba Diving, etc.</li>
<li>Primitive Living</li>
<li>Leadership</li>
<li>Human relationships</li>
<li>Reading</li>
<li>Music and Art in general</li>
<li>Philosophy</li>
</ul>
<p>I like communicating with people, exploring and discovering about new concepts and new possibilities, and every human being is a new concept to discover. In simpler terms, I would like to get to know you, so feel free to shoot me an email: hi@mahdi.blog</p>
</article>
</div>
</div>
</div>
</body>
</html>

@ -0,0 +1,194 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>On Inherent Subjectivity of Some Things</title>
<meta name="description" content="As a computer scientist and someone who loves mathematics and abstractions, I was obsessed with the idea of rationality, that is, an objective and absolute r...">
<link href="https://fonts.googleapis.com/css?family=Secular+One|Nunito|Mononoki" rel="stylesheet">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="http://localhost:4000/alternative-objectivity-and-inherent-subjectivity/">
<link rel="alternate" type="application/rss+xml" title="mahdi" href="http://localhost:4000/feed.xml" />
<!--<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>-->
<script>
var channel = new BroadcastChannel('egg');
channel.addEventListener('message', message => {
alert('Got a message from the other tab:\n' + message.data);
});
</script>
</head>
<body>
<header class="site-header">
<h1>
<a class='site-title' href='/'>
mahdi
</a>
</h1>
<nav>
<p>
<a href="/snippets">snippets</a>
<a href="/art">pictures</a>
</p>
<!--<p class='categories'>-->
<!---->
<!---->
<!--<a href="">art</a>-->
<!---->
<!---->
<!---->
<!---->
<!--</p>-->
<p>
<a href='mailto:mdibaiee@pm.me'>email</a>
<a href='https://git.mahdi.blog/mahdi'>git</a>
<a href='https://www.librarything.com/profile/mdibaiee'>librarything</a>
<a href="http://localhost:4000/feed.xml">feed</a>
</p>
</nav>
</header>
<div class="page-content">
<div class="wrapper">
<h1 class="page-heading"></h1>
<div class='post lang-en'>
<div class="post-header">
<h1 class="post-title"><p>On Inherent Subjectivity of Some Things</p>
</h1>
<h2 class="post-subtitle"><p>An Alternative Definition of Objectivity for Rigid Scientists</p>
</h1>
<p class="post-meta">
<span>Oct 30, 2021</span>
<span>Reading time: 8 minutes</span>
</p>
</div>
<article class="post-content">
<p>As a computer scientist and someone who loves <a href="/mathematical-induction-proving-tiling-methods">mathematics</a> and <a href="/typoclassopedia-exercise-solutions">abstractions</a>, I was obsessed with the idea of rationality, that is, an <em>objective</em> and absolute rationality, however I ended up in a philosophy course that showed me the opposite.</p>
<p>I somehow stumbled upon Eliezer Yudkowsky’s <a href="https://www.readthesequences.com/">Rationality: From AI to Zombies</a> about 4 years ago, and it took me two years to go through it all but I was absolutely fascinated by this book. I <em>knew</em> how to be rational now, and I could <em>prove</em> it using mathematics, what else could I ask for!</p>
<p>The book basically looks at the world as a probabilistic system, and everything that happens can be assigned probabilities, and using mathematical theorems such as Bayes Theorem, we can predict outcomes of certain actions and then decide between them. There is a lot of focus on <a href="https://en.wikipedia.org/wiki/List_of_cognitive_biases">cognitive biases</a> as well. I was particularly very interested about these biases, and so I set out to learn more about them, and that’s how I found my current course: <a href="https://cogsci.ucd.ie">Cognitive Science at University College Dublin</a>.</p>
<p>So I enter this course with this mindset: we can objectively analyse the world around us using probability and statistics (mathematics), but we are limited by our cognitive biases, so I want to learn about these cognitive biases: where do they come from, how can they be resisted to allow us to act more rationally and so on. These questions would mainly fall under the umbrella of psychology…</p>
<p>However… I found myself to be more and more interested in the philosophy side of this course than the psychology side, hell I even started to not like the psychology side anymore, but fall in love with the philosophy. This is where I found the opposite of what I had come for: an alternative definition of objectivity, and an inherent subjectivity of some things. This is mainly inspired by Thomas Nagel’s What Is It Like To Be A Bat <a class="citation" href="#nagel1974like">(Nagel, 1974)</a>.</p>
<h2 id="what-is-objectivity-anyway">What is Objectivity Anyway?</h2>
<p>This is probably the main question here. What is objectivity? I don’t think dictionary definitions are particularly authoritative when it comes to philosophy discussions, but I found this dictionary definition interesting to open the topic with:</p>
<blockquote>
<p>the quality or character of being objective : lack of favoritism toward one side or another : freedom from bias. <a class="citation" href="#objectivity-merriam-webster">(Merriam-Webster, 2021)</a></p>
</blockquote>
<p>This definition itself has ambiguous phrases such as “freedom from bias”, what does that mean? When can we say that we are free from bias? Let’s look at how bias is defined in the same dictionary:</p>
<blockquote>
<p>an inclination of temperament or outlook <a class="citation" href="#bias-merriam-webster">(Merriam-Webster, 2021)</a></p>
</blockquote>
<p>But… is it really possible to have no inclination at all in our temperament and outlook? Let’s look at the definition of subjective, that will help us here:</p>
<blockquote>
<p>relating to the way a person experiences things in his or her own mind <a class="citation" href="#subjective-merriam-webster">(Merriam-Webster, 2021)</a></p>
</blockquote>
<p>Is it possible for us to have a view of something without it being part of our experience? It seems not. All that we do, all our views and expressions and our interactions are part of our experience as a person, and it relates to us on an intimate level, which means that everything that we do as individuals is subjective. In that sense, it seems impossible for any individual to be objective, since they will always have some form of inclination about everything.</p>
<p>What does this leave us with then when we ask what is objectivity? A better definition of objectivity in my opinion is one given by Thomas Nagel:</p>
<blockquote>
<p>It may be more accurate to think of objectivity as a direction in which the understanding can travel. […] The process of reduction is a move in the direction of greater objectivity, toward a more accurate view of the real nature of things. This is accomplished by reducing our dependence on individual or species-specific points of view toward the object of investigation. We describe it not in terms of the impressions it makes on our senses, but in terms of its more general effects and of properties detectable by means other than the human senses. <a class="citation" href="#nagel1974like">(Nagel, 1974)</a></p>
</blockquote>
<p>In this sense, there is no black-and-white distinction between subjectivity and objectivity, but rather it is a spectrum, a line on which we can walk from subjectivity towards objectivity.</p>
<p><img src="/img/inherent-subjectivity/subjective-objective.png" alt="Subjective-Objective spectrum: On Subjective side we have Individual perception, in the middle Agreement with others, and on the Objective side Agreement with other apparatus" /></p>
<p>We start with our individual perceptions as the most objective view and description, we then move towards descriptions that allow us to agree with other (human) beings, and finally we move towards descriptions that can be verified and agreed upon by other apparatus, although it is important to understand that even the apparatus that we may use to describe things are not necessarily free from bias, since they are created by biased individuals and groups. By now you may notice that if a measuring device is made to be agreeable between a large group of people, it is already more objective than a device made by a single individual! However, absolute objectivity, which we may call “a view from nowhere” may not be attainable by us, because we will always be viewing things from our own perspectives, even if it is a large, collective perspective that we agree on, it is not a view from nowhere.</p>
<p><img src="/img/inherent-subjectivity/subjective-objective-example.png" alt="Subjective-Objective spectrum: A single person says a ball is 10cm radius, 1/4 objectivity. A group of people say it's 10cm radius, 1/2 objectivity. A group of people with a ruler say it's 10cm radius, 3/4 objectivity" /></p>
<h2 id="inherently-subjective-things">Inherently Subjective Things</h2>
<p>With our definition of objectivity in place, now let’s see: is there something that we cannot move towards objectivity about? Yes. That is our personal experiences.</p>
<p>See, if there is an attempt to give a more objective description of <em>my</em> personal experience, there will need to be either an agreement among a group of beings about this description of my personal experience, or there should be an apparatus that we can agree on that measures my personal experience. However, my personal experience is personal exactly because it is completely dependent and originated from my perspective alone, and no one else’s; and as soon as you try to move towards objectivity by trying to describe this experience in a way that moves away from my person-specific and species-specific standpoint, towards a more agreeable and general description that even non-human beings or apparatus can agree with, you lose the initial personal experience in the process, so you end up with a non-personal description of the experience which misses the point of the actual subjective experience I have.</p>
<p>So, you can come up with <em>some</em> description of my experience, but you can’t actually describe the subjective experience of being me as it really is. The walk towards objectivity requires you to drop the subjectivity of my experience, and hence, some inherently subjective things such as our personal experiences can’t be objectified.</p>
<p>This is how Nagel puts it (I think this may be a bit hard to read without reading the whole paper):</p>
<blockquote>
<p>Experience itself, however, does not seem to fit the pattern. The idea of moving from appearance to reality seems to make no sense here. What is the analogue in this case to pursuing a more objective understanding of the same phenomena by abandoning the initial subjective viewpoint toward them in favor of another that is more objective but concerns the same thing? Certainly it appears unlikely that we will get closer to the real nature of human experience by leaving behind the particularity of our human point of view and striving for a description in terms accessible to beings that could not imagine what it was like to be us. If the subjective character of experience is fully comprehensible only from one point of view, then any shift to greater objectivity that is, less attachment to a specific viewpoint does not take us nearer to the real nature of the phenomenon: it takes us farther away from it. <a class="citation" href="#nagel1974like">(Nagel, 1974)</a></p>
</blockquote>
<h2 id="so-what-or-why-is-this-important">So What? (Or: Why is This Important?)</h2>
<p>This realisation means that objectifying people’s subjective experiences is not possible, we will never be able to decipher someone’s subjective experience of something. This does not mean we should not try to <em>understand</em> people, rather, it means we should always consider that our understanding of someone’s subjective experience will never be objective, it will always be merely our perspective of it. When it comes to people’s personal experiences, we can’t be sure that we are right, the way we are confident we are right after measuring a distance using our agreed-upon metric ruler; when it comes to subjective experiences it’s always only a crude approximation. “In the end one experiences only oneself.” <a class="citation" href="#nietzsche2008thus">(Nietzsche, 2008)</a></p>
<p>This video was sent to me by a friend today, and it is great timing, because it is very relevant:</p>
<iframe class="centered" width="560" height="315" src="https://www.youtube-nocookie.com/embed/oRG2jlQWCsY" title="Good Will Hunting | 'Your Move Chief' (HD) - Matt Damon, Robin Williams | MIRAMAX" frameborder="0" allow="picture-in-picture" allowfullscreen=""></iframe>
<!--https://postcognitivism.wordpress.com/2021/04/06/the-great-escape-can-we-transcend-our-own-conceptual-frameworks/
https://gatelessgateblog.wordpress.com/
https://www.sciencedirect.com/science/article/pii/S0388000121000802
Distinctions and Common Ground in Collective Epistemology-->
<h2 id="references">References</h2>
<ol class="bibliography"><li><span id="nagel1974like">Nagel, T. (1974). What is it like to be a bat. <i>Readings in Philosophy of Psychology</i>, <i>1</i>, 159–168.</span></li>
<li><span id="objectivity-merriam-webster">Merriam-Webster. (2021). <i>Objectivity. In Merriam-Webster.com dictionary.</i> https://www.merriam-webster.com/dictionary/objectivity</span></li>
<li><span id="bias-merriam-webster">Merriam-Webster. (2021). <i>Bias. In Merriam-Webster.com dictionary.</i> https://www.merriam-webster.com/dictionary/bias</span></li>
<li><span id="subjective-merriam-webster">Merriam-Webster. (2021). <i>Subjective. In Merriam-Webster.com dictionary.</i> https://www.merriam-webster.com/dictionary/subjective</span></li>
<li><span id="nietzsche2008thus">Nietzsche, F. (2008). <i>Thus spoke Zarathustra: A book for everyone and nobody</i>. Oxford University Press.</span></li></ol>
</article>
<div class="share-page">
Share in
<a href="https://twitter.com/intent/tweet?text=On Inherent Subjectivity of Some Things&url=http://localhost:4000/alternative-objectivity-and-inherent-subjectivity/&via=&related=" rel="nofollow" target="_blank" title="Share on Twitter">Twitter</a>
<a href="https://facebook.com/sharer.php?u=http://localhost:4000/alternative-objectivity-and-inherent-subjectivity/" rel="nofollow" target="_blank" title="Share on Facebook">Facebook</a>
<a href="https://plus.google.com/share?url=http://localhost:4000/alternative-objectivity-and-inherent-subjectivity/" rel="nofollow" target="_blank" title="Share on Google+">Google+</a>
</div>
<div id="commento"></div>
<script defer
src="//commento.mahdi.blog/js/commento.js">
</script>
<script src="/js/heading-links.js"></script>
</div>
</div>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

@ -0,0 +1,298 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Autocomplete using Tries</title>
<meta name="description" content="In this article, I’m going over creating an autocompletion/prediction system using a data-structure called Trie, it’s fast and easy to customize.">
<link href="https://fonts.googleapis.com/css?family=Secular+One|Nunito|Mononoki" rel="stylesheet">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="http://localhost:4000/autocomplete-predict-trie/">
<link rel="alternate" type="application/rss+xml" title="mahdi" href="http://localhost:4000/feed.xml" />
<!--<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>-->
<script>
var channel = new BroadcastChannel('egg');
channel.addEventListener('message', message => {
alert('Got a message from the other tab:\n' + message.data);
});
</script>
</head>
<body>
<header class="site-header">
<h1>
<a class='site-title' href='/'>
mahdi
</a>
</h1>
<nav>
<p>
<a href="/snippets">snippets</a>
<a href="/art">pictures</a>
</p>
<!--<p class='categories'>-->
<!---->
<!---->
<!--<a href="">art</a>-->
<!---->
<!---->
<!---->
<!---->
<!--</p>-->
<p>
<a href='mailto:mdibaiee@pm.me'>email</a>
<a href='https://git.mahdi.blog/mahdi'>git</a>
<a href='https://www.librarything.com/profile/mdibaiee'>librarything</a>
<a href="http://localhost:4000/feed.xml">feed</a>
</p>
</nav>
</header>
<div class="page-content">
<div class="wrapper">
<h1 class="page-heading"></h1>
<div class='post lang-en'>
<div class="post-header">
<h1 class="post-title"><p>Autocomplete using Tries</p>
</h1>
<p class="post-meta">
<span>Jul 24, 2015</span>
<span>Reading time: 8 minutes</span>
</p>
</div>
<article class="post-content">
<p>In this article, I’m going over creating an autocompletion/prediction system using a data-structure called Trie, it’s fast and easy to customize.</p>
<h1 id="trie">Trie</h1>
<p><a href="https://en.wikipedia.org/wiki/Trie">Trie</a> is a simple data-structure most commonly used as a dictionary, it looks like so:</p>
<p><img src="/img/trie.jpg" alt="Trie" /></p>
<p>As you see, it’s just a <em>tree</em>, a set of nodes connected to other [child] nodes, but the nodes have a special relationship:</p>
<p>Each child node extends it’s parent with one extra character.</p>
<figure class="highlight"><pre><code class="language-javascript" data-lang="javascript"><span class="c1">// Something like this</span>
<span class="nx">child</span><span class="p">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">parent</span><span class="p">.</span><span class="nx">value</span> <span class="o">+</span> <span class="dl">'</span><span class="s1">c</span><span class="dl">'</span><span class="p">;</span></code></pre></figure>
<p>It’s pretty easy to traverse this tree and predict the next possible words.</p>
<h2 id="implementation">Implementation</h2>
<p>We’re going to use ES6 classes to create our <code class="language-plaintext highlighter-rouge">Trie</code> and <code class="language-plaintext highlighter-rouge">Node</code> classes.</p>
<p>Let’s start with our simple Node class:</p>
<figure class="highlight"><pre><code class="language-javascript" data-lang="javascript"><span class="kd">class</span> <span class="nx">Node</span> <span class="p">{</span>
<span class="kd">constructor</span><span class="p">(</span><span class="nx">value</span> <span class="o">=</span> <span class="dl">''</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">value</span><span class="p">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">children</span> <span class="o">=</span> <span class="p">[];</span>
<span class="p">}</span>
<span class="p">}</span></code></pre></figure>
<p>Unlike <a href="https://en.wikipedia.org/wiki/Binary_tree">binary trees</a> where each node has a left and right child, Trie nodes don’t necessarily have a limit on how many children they can have.</p>
<p>Trie class:</p>
<figure class="highlight"><pre><code class="language-javascript" data-lang="javascript"><span class="kd">class</span> <span class="nx">Trie</span> <span class="p">{</span>
<span class="kd">constructor</span><span class="p">()</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">root</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Node</span><span class="p">();</span>
<span class="p">}</span>
<span class="nx">add</span><span class="p">(</span><span class="nx">value</span><span class="p">,</span> <span class="nx">parent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">root</span><span class="p">)</span> <span class="p">{</span>
<span class="k">for</span> <span class="p">(</span><span class="kd">let</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">value</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">len</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">let</span> <span class="nx">node</span> <span class="o">=</span> <span class="nx">parent</span><span class="p">.</span><span class="nx">children</span><span class="p">.</span><span class="nx">find</span><span class="p">(</span><span class="nx">child</span> <span class="o">=&gt;</span> <span class="nx">child</span><span class="p">.</span><span class="nx">value</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="nx">value</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">node</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Node</span><span class="p">(</span><span class="nx">value</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nx">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">));</span>
<span class="nx">parent</span><span class="p">.</span><span class="nx">children</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">node</span><span class="p">);</span>
<span class="p">}</span>
<span class="nx">parent</span> <span class="o">=</span> <span class="nx">node</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">return</span> <span class="nx">parent</span><span class="p">;</span>
<span class="p">}</span>
<span class="nx">find</span><span class="p">(</span><span class="nx">value</span><span class="p">,</span> <span class="nx">parent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">root</span><span class="p">)</span> <span class="p">{</span>
<span class="k">for</span> <span class="p">(</span><span class="kd">let</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">value</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">len</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">parent</span> <span class="o">=</span> <span class="nx">parent</span><span class="p">.</span><span class="nx">children</span><span class="p">.</span><span class="nx">find</span><span class="p">(</span><span class="nx">child</span> <span class="o">=&gt;</span> <span class="nx">child</span><span class="p">.</span><span class="nx">value</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="nx">value</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">parent</span><span class="p">)</span> <span class="k">return</span> <span class="kc">null</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">return</span> <span class="nx">parent</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span></code></pre></figure>
<p>Every Trie must have a root node with empty value, that’s how our single-character nodes follow the rule of Tries.</p>
<p>Ok, our first method, <code class="language-plaintext highlighter-rouge">add</code> handles adding a value to the trie, creating necessary parent nodes for our value.
At each iteration, we compare the <code class="language-plaintext highlighter-rouge">i</code>th character of our value, with <code class="language-plaintext highlighter-rouge">i</code>th character of current node’s children’s value,
if we find one, we continue to search the next branch, else, we create a node with <code class="language-plaintext highlighter-rouge">value.slice(0, i + 1)</code> and move onto the created node.</p>
<p>It might be a little hard to grasp at first, so I created a visualization of this method to help you understand it easier, take a look:
<a href="https://mdibaiee.github.io/autocomplete-trie/demo/add.html">Trie Visualization</a></p>
<p>Then we have our find method, which searches for the given value in the trie. The algorithm for searching is the same, comparing by index and moving to the next branch.</p>
<h1 id="example">Example</h1>
<p>That’s it for our simple Trie class, now let’s create an actual input with autocomplete functionality using our Trie.</p>
<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt">&lt;input&gt;</span>
<span class="nt">&lt;div</span> <span class="na">class=</span><span class="s">'results'</span><span class="nt">&gt;</span>
<span class="nt">&lt;/div&gt;</span></code></pre></figure>
<p>I put some random names and stuff into three categories, results: <a href="https://mdibaiee.github.io/autocomplete-trie/demo/data.json">data.json</a></p>
<p>Now we have to create a Trie of our data:</p>
<figure class="highlight"><pre><code class="language-javascript" data-lang="javascript"><span class="kd">const</span> <span class="nx">trie</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Trie</span><span class="p">();</span>
<span class="kd">let</span> <span class="nx">data</span> <span class="o">=</span> <span class="p">{...};</span> <span class="c1">// read from data.json</span>
<span class="k">for</span> <span class="p">(</span><span class="kd">let</span> <span class="nx">category</span> <span class="k">in</span> <span class="nx">data</span><span class="p">)</span> <span class="p">{</span>
<span class="k">for</span> <span class="p">(</span><span class="kd">let</span> <span class="nx">item</span> <span class="k">of</span> <span class="nx">data</span><span class="p">[</span><span class="nx">category</span><span class="p">])</span> <span class="p">{</span>
<span class="kd">let</span> <span class="nx">node</span> <span class="o"</