Compare commits
10 Commits
877fc6bebf
...
main
Author | SHA1 | Date | |
---|---|---|---|
c25a925a5e | |||
6a6c1089e8 | |||
8ba1d45ccc | |||
da0e95a44b | |||
4bcf0b7dd7 | |||
c94bf80568 | |||
479a1a3d27 | |||
796f5ac759 | |||
01b83ea721 | |||
720d81a12c |
@ -13,11 +13,18 @@ docker run --rm -it -p 8080:8080 wip hugo serve --bind 0.0.0.0 --port 8080
|
|||||||
### Opinion Pieces
|
### Opinion Pieces
|
||||||
- [ ] Clean Architecture is stupid - dependency injection is king
|
- [ ] Clean Architecture is stupid - dependency injection is king
|
||||||
- [ ] Neorg is bad, actually - ?? is king
|
- [ ] Neorg is bad, actually - ?? is king
|
||||||
|
- [ ] Clean Architecture is stupid and overly complicated - dependency injection is king
|
||||||
|
- [ ] For want of a neater (human) internet
|
||||||
|
- [ ] A truly FOSS printer.
|
||||||
|
even the hardware should be FOSS. - most parts should be 3d printable.
|
||||||
|
should be a laser printer, as inkjet is stupid.
|
||||||
|
- [ ] A truly FOSS eink reader.
|
||||||
|
- [ ] VIM Bindings everywhere please
|
||||||
|
|
||||||
### Digital Soverignty
|
### Digital Soverignty
|
||||||
- [x] how to host a blog
|
- [x] how to host a blog
|
||||||
- [ ] how to securely "self-host" using a VPS, portainer and traefik
|
- [ ] how to securely "self-host" using a VPS, portainer and traefik
|
||||||
- [ ] how to configure neomutt
|
- [x] how to configure neomutt
|
||||||
- [ ] how to securely host a mail server
|
- [ ] how to securely host a mail server
|
||||||
|
|
||||||
### Old sillyblog
|
### Old sillyblog
|
||||||
|
@ -69,7 +69,7 @@ gdb: > x/16xb my_heap_object
|
|||||||
```
|
```
|
||||||
|
|
||||||
The first bytes at address `0x800100` are `0a` and `00`. These bytes are the *free-list* entry and explains how "big"
|
The first bytes at address `0x800100` are `0a` and `00`. These bytes are the *free-list* entry and explains how "big"
|
||||||
the object is. When reading this, we have to remember that the model is littleengine-based (meaning that the bytes are
|
the object is. When reading this, we have to remember that the model is little endian-based (meaning that the bytes are
|
||||||
switched),
|
switched),
|
||||||
so we actually have the value of `0x000a`, meaning `10` in decimal. This makes a lot of sense, since we allocated 5
|
so we actually have the value of `0x000a`, meaning `10` in decimal. This makes a lot of sense, since we allocated 5
|
||||||
`int`s, that is of size 2 (16bit integers).
|
`int`s, that is of size 2 (16bit integers).
|
||||||
|
90
content/posts/computation-in-nature.md
Normal file
90
content/posts/computation-in-nature.md
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
+++
|
||||||
|
date = '2018-05-10'
|
||||||
|
draft = false
|
||||||
|
title = 'Computation in Nature'
|
||||||
|
tags = ['philosophy', 'old']
|
||||||
|
categories = ['opinion']
|
||||||
|
+++
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
This was written as a student project as part of our ethics course, where we had to write an opinion piece on anything
|
||||||
|
we wanted in the field of computer science. Note that this was before *LLM*'s was a thing. I also apologize if the
|
||||||
|
wording is off - this was written in an afternoon as a rush-job. I still think it's an interesting read though.
|
||||||
|
|
||||||
|
# Computation in Nature
|
||||||
|
|
||||||
|
> "If you ever think your code is bad, just remember that CPUs are just rocks that we tricked into thinking"
|
||||||
|
|
||||||
|
**Does nature compute, or is computation something that only humans are doing? If so, what is it about?**
|
||||||
|
|
||||||
|
To answer this question, we would need to define what the terms used in it even means. If you look up the definition
|
||||||
|
of the word ’compute’ on Merriam Websters dictionary, you find that it primarily means _"to determine
|
||||||
|
especially by mathematical means"_. This definition mentions a usage of mathematics, which suggests a close bond
|
||||||
|
between these concepts. What would it mean to determine something? I would argue that it means to make a decision
|
||||||
|
based on either prior experience, data or calculations. This implies that computation have a focus on deciding
|
||||||
|
and _"finishing a thought"_. It has an end goal. You can even use conclusions made by previous computations to
|
||||||
|
compute more advanced problems.
|
||||||
|
|
||||||
|
In other words, computation is about answering queries about data and the process of doing so. We see
|
||||||
|
mathematics emerge in nature aswell. In
|
||||||
|
[The Chemical Basis of Morphogenesis](https://www.dna.caltech.edu/courses/cs191/paperscs191/turing.pdf), Alan M. Turing
|
||||||
|
mentions that flower petals rarely exceeds a quantity of five. We even see the fibonacci sequence in [sunflower
|
||||||
|
seeds](http://popmath.org.uk/rpamaths/rpampages/sunflower.html).
|
||||||
|
|
||||||
|
An example of computation in nature is actually very easy to find. Take a rabbit, or any other smaller prey. A rabbit
|
||||||
|
is constantly observing and reacting to the sorrounding environment, otherwise it gets eaten by predators or fall
|
||||||
|
into a lake and drown or any other scenario involving death. You could argue that the rabbit is constantly asking
|
||||||
|
questions about what to: _"Should I run away?"_, _"Should I keep eating?"_, _"Should I be eating this?"_ etc. The
|
||||||
|
rabbit may not be consciously aware of these queries, but nevertheless, it is answering to them through actions.
|
||||||
|
|
||||||
|
In Empiricism, the concept of a mind being a blank slate (in this case we are talking about a human mind, not
|
||||||
|
a rabbit’s), which remembers experiences throughout it's life is very much applicable here. This trait means that a
|
||||||
|
human mind has a memory, i.e. It can remember old conclusions and recall them when desired. We can actually prove that
|
||||||
|
this trait is not exclusive to humans, since we can observe other mammals (and even fish and reptiles) demonstrating
|
||||||
|
the usage of memory. A prime example is the elephant, but pretty much any animal applies here.
|
||||||
|
|
||||||
|
In Rationalism, we see a similar pattern that mimics memory - using the method of deduction to find conclusions and
|
||||||
|
deduct new conclusions. However, if you were to believe the Rationalists, getting the data needed for computation
|
||||||
|
in nature, may be a tricky task. We previously had an assumption that we could trust our senses and that other
|
||||||
|
creatures also had senses. In Rationalism the only thing we can trust is the fact that we are doubting. Since we
|
||||||
|
can’t say anything about if the rabbit is doubting everything. This is where the rabbit example breaks down a
|
||||||
|
little, but we are not completely stuck here. Humans are mammals and mammals are a type of animal. Animals are
|
||||||
|
part of nature, therefore humans must be part of nature. You and I are humans (I assume) and this logic enables us
|
||||||
|
to make deductive arguments based on subjective thoughts. The first part of the Cartesian circle, _"Dubito ergo
|
||||||
|
cogito"_ (_"I doubt, therefore I think"_) made by René Descartes, is actually very applicable to computation in
|
||||||
|
nature. Thinking is a form of computation and since _I_ am part of nature. Computation rationally happens in nature.
|
||||||
|
|
||||||
|
But what about non-natural computation? Artificial computation machines such as modern digital computers or even
|
||||||
|
old mechanical adding-machines are definitely things that compute data. There is a diconnect from artificial
|
||||||
|
computers to natural computers (brains) though. Currently humans have not been able to produce a machine with natural
|
||||||
|
intuition as we observe it in nature. We have come close to something that looks like it with simulated organisms,
|
||||||
|
but we are not even close to the complexeties of an intuitive brain such as the human one (or even other clever
|
||||||
|
mammals, such as the dolphin or chimp). I personally believe that the reason for this disconnect is because of
|
||||||
|
the intention of the computational device at the point of origin. The intent that biology had when brains were
|
||||||
|
invented was certainly not to fix mathematical problems. It was primarily for the organism to survive and have a
|
||||||
|
better chance for survival. But fixing mathematical problems is the exact intent humans had when we created our
|
||||||
|
artificial computers. This **intent** changes the very nature of the system, and because of this, even though brains
|
||||||
|
and computers might be similar in some ways they are and always will be fundamentally different things.
|
||||||
|
|
||||||
|
A. M. Turing presents (and disagrees with) various arguments, in his article
|
||||||
|
[Computing Machinery and Intelligence](https://archive.org/details/MIND--COMPUTING-MACHINERY-AND-INTELLIGENCE),
|
||||||
|
that a computer will not be able to be conscious. I tend to follow Turings idea that most of the arguments he
|
||||||
|
presents are either made out of a tendency towards thinking that humans have to be superior to machines, either
|
||||||
|
intellectually or that we can *feel* things. I do disagree with one point that he makes in the article: Turing
|
||||||
|
argues that a computer/program will never be able to change it’s behavior based off of prior experiences, which
|
||||||
|
sounds ludicrous if you’ve taken any modern Machine Intelligence class. This was probably a conclusion he came
|
||||||
|
to because of the time era he was in and that AI as a field was not as big (if at all existent) at the time.
|
||||||
|
|
||||||
|
Turing finishes the article with the notion that there is still a lot of work to be done in the field of AI and it
|
||||||
|
is a fun contrast to see what arguments and thoughts a mind like his had back in the fifties, compared to modern
|
||||||
|
AI can offer. Will humans ever be able to create a truly conscious artificial mind? And will we ever be able to
|
||||||
|
test it properly?
|
||||||
|
|
||||||
|
If you believe the Mathematical Realists, mathematics is a thing that exists independently of humans, and can be
|
||||||
|
found/discovered by any being clever enough to deduct these laws. This point of view can be very reassuring, if
|
||||||
|
you believe that real artificial intelligence can be made. Since mathematics is an inherit trait of the universe,
|
||||||
|
and that computers are machines that can (essentially) execute math, and that humans are part of nature. It might
|
||||||
|
be possible to make an AI that is (atleast) as clever as humans, maybe it is innevitable.
|
||||||
|
|
||||||
|
{{< centered image="/6616144.png" >}}
|
78
content/posts/how-to-portainer.md
Normal file
78
content/posts/how-to-portainer.md
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
+++
|
||||||
|
date = '2024-12-04'
|
||||||
|
draft = true
|
||||||
|
title = "How to Host Docker Containers Easily in The Cloud"
|
||||||
|
tags = ["howto", "tutorial", "web"]
|
||||||
|
categories = ["technical"]
|
||||||
|
+++
|
||||||
|
|
||||||
|
In this post, we will be going over how to set up a [portainer]() managed docker environment, and how to use it.
|
||||||
|
This is ideal if you want to host a personal website, a [blog](/posts/how-to-blog), a personal [github](git.gtz.dk) or whatever your development heart desire.
|
||||||
|
If you choose to follow along, by the end of it, you will have an environment where you can just add or remove docker based services. It's even quite secure!
|
||||||
|
|
||||||
|
## Portainer
|
||||||
|
|
||||||
|
## Traefik
|
||||||
|
|
||||||
|
## Keycloak
|
||||||
|
|
||||||
|
## Automatic backups
|
||||||
|
|
||||||
|
## TODOs
|
||||||
|
- [ ] 2FA the control dashboards through keycloak
|
||||||
|
- [ ] geoblocking the control dashboards
|
||||||
|
- [ ] start the article with a demo of what we'll be making
|
||||||
|
- MAYBE:
|
||||||
|
- [ ] portainer introduction (maybe)
|
||||||
|
- [ ] traefik introduction (maybe)
|
||||||
|
- [ ] add a "skip if you already know portainer and traefik"
|
||||||
|
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
postgresql:
|
||||||
|
image: postgres:16
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER=keycloak
|
||||||
|
_ POSTGRES_DB=keycloak
|
||||||
|
- POSTGRES_PASSWORD=secret
|
||||||
|
volumes:
|
||||||
|
- postgres-data:/var/lib/postgresql/data
|
||||||
|
networks:
|
||||||
|
- keycloak
|
||||||
|
|
||||||
|
|
||||||
|
keycloak:
|
||||||
|
image: quay.io/keycloa/keycloak:22
|
||||||
|
restart: always
|
||||||
|
command: start
|
||||||
|
depends_on:
|
||||||
|
- postgresql
|
||||||
|
environment:
|
||||||
|
# traefik handles ssl
|
||||||
|
- KC_PROXY_ADDRESS_FORWARDING=true
|
||||||
|
- KC_HOSTNAME_STRUCT=false
|
||||||
|
- KC_HOSTNAME=keycloak.gtz.dk
|
||||||
|
- KC_PROXY=edge
|
||||||
|
- KC_HTTP_ENABLED=true
|
||||||
|
# connect to the postgres thing
|
||||||
|
- DB=keycloak
|
||||||
|
- DB_URL='jdbc:postgresql://postgres:5432/postgresql?ssl=allow'
|
||||||
|
- DB_USERNAME=keycloak
|
||||||
|
- DB_PASSWORD=secret
|
||||||
|
- KEYCLOAK_ADMIN=admin
|
||||||
|
- KEYCLOAK_ADMIN_PASSWORD=admin
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
- keycloa
|
||||||
|
labels:
|
||||||
|
- "traefik.enable=true"
|
||||||
|
- port=8080
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
|
keycloak:
|
||||||
|
```
|
||||||
|
|
||||||
|
{{< centered image="/6616144.png" >}}
|
Reference in New Issue
Block a user