Removed "race" from Seekia's slogan. De-emphasized race from Seekia's motivational writings.

This commit is contained in:
Simon Sarasova 2024-08-23 16:50:01 +00:00
parent 6179f45162
commit c9f5e1e41d
No known key found for this signature in database
GPG key ID: EEDA4103C9C36944
15 changed files with 63 additions and 67 deletions

View file

@ -6,6 +6,7 @@ Small and insignificant changes may not be included in this log.
## Unversioned Changes ## Unversioned Changes
* Removed "race" from Seekia's slogan. De-emphasized race from Seekia's motivational writings. - *Simon Sarasova*
* Improved Whitepaper.md. - *Simon Sarasova* * Improved Whitepaper.md. - *Simon Sarasova*
* Reduced the quantity of references to racial loneliness. - *Simon Sarasova* * Reduced the quantity of references to racial loneliness. - *Simon Sarasova*
* Implemented in-memory storage of trained neural network objects. Trained neural network objects now only have to be created once, so predictions are faster. - *Simon Sarasova* * Implemented in-memory storage of trained neural network objects. Trained neural network objects now only have to be created once, so predictions are faster. - *Simon Sarasova*

View file

@ -9,4 +9,4 @@ Many other people have written code for modules which are imported by Seekia. Th
Name | Date Of First Commit | Number Of Commits Name | Date Of First Commit | Number Of Commits
--- | --- | --- --- | --- | ---
Simon Sarasova | June 13, 2023 | 287 Simon Sarasova | June 13, 2023 | 288

View file

@ -1,11 +1,10 @@
# Imports # Imports
Seekia is released into the public domain using the Unlicense. (Available at `/Licenses/Unlicense.md`) Seekia is released into the public domain using the Unlicense. (Available at `/Licenses/Unlicense.md`)
I encourage copying Seekia's code and ideas, for free and commercial uses, with or without attribution. I encourage copying Seekia's code and ideas, for free and commercial uses, with or without attribution.
The adoption of race and genetics aware mate discovery technology is profoundly important for humanity. The adoption of genetics aware mate discovery technology is profoundly important for humanity.
Seekia includes within it content that originates from other sources. Seekia includes within it content that originates from other sources.

View file

@ -6,23 +6,19 @@
![Seekia Homepage](./resources/markdownImages/seekiaHomepage.jpg) ![Seekia Homepage](./resources/markdownImages/seekiaHomepage.jpg)
**Seekia is a race and genetics aware mate discovery network.** **Seekia is a genetics aware mate discovery network.**
Seekia is a mate discovery network where users can find a mate while having a deep awareness of each potential partner's race and genetics. Seekia is a mate discovery network where users can find a mate while having a deep awareness of each potential partner's genetics.
Users can share racial information in their profiles such as their eye, skin, and hair color; hair texture; and the alleles in their genome which effect physical traits. Users can also share their genetic ancestry, which correlates to their race. Users can share genetic information in their profiles such as monogenic disease risks, allele values, and ancestry.
Seekia enables users to browse and filter potential mates by their racial attributes. Seekia can also calculate the racial characteristics for prospective offspring between users. Seekia allows for users to predict and control the race of their offspring by selecting a mate who is the most capable and likely to produce offspring of their desired race. Seekia enables users to browse and filter potential mates by their genetic attributes and the predicted genetic attributes of their offspring. Seekia allows for users to predict and control the genetic attributes of their offspring by selecting a mate who is the most likely to produce offspring with their desired attributes.
Seekia also provides users with the ability to mate in a genetics aware manner. Users can view information about the health and physical traits of their prospective offspring for each user. Users can choose to mate with users with whom their offspring has a lower probability of having diseases and a higher probability of having certain traits.
Users can view information about the health and physical traits of their prospective offspring for each user.
Users can choose to mate with users with whom their offspring has a lower probability of having diseases and a higher probability of having certain traits.
Seekia aims to improve the genetic quality of humanity by making humans healthier, more beautiful, more intelligent, more virtuous, and happier. Seekia aims to facilitate eugenic breeding by helping to create mate pairings which are the most likely to produce healthy, beautiful, intelligent, virtuous, and happy offspring. Seekia aims to improve the genetic quality of humanity by making humans healthier, more beautiful, more intelligent, more virtuous, and happier. Seekia aims to facilitate eugenic breeding by helping to create mate pairings which are the most likely to produce healthy, beautiful, intelligent, virtuous, and happy offspring.
The goal of Seekia is to accelerate the world's adoption of race and genetics aware mate discovery technology, and to help the world mate in a race and genetics aware manner. The goal of Seekia is to accelerate the world's adoption of genetics aware mate discovery technology, and to help the world mate in a genetics aware manner.
### Learn More ### Learn More

View file

@ -3,13 +3,13 @@
Thank you for your interest in contributing to Seekia! Thank you for your interest in contributing to Seekia!
Together, we can facilitate eugenic breeding and help people mate in a race and genetics aware manner. Together, we can facilitate eugenic breeding and help people mate in a genetics aware manner.
## Ways To Help ## Ways To Help
### 1. Spread the Seekia philosophy. ### 1. Spread the Seekia philosophy.
Ideas are unstoppable. Awaken the world to the value of race and genetics aware mate discovery technology. Ideas are unstoppable. Awaken the world to the value of genetics aware mate discovery technology.
### 2. Buy Domains ### 2. Buy Domains
@ -29,7 +29,7 @@ See `/documentation/Future Plans.md` for ideas on things to build.
## Warning! ## Warning!
**Due to the controversy associated with race, genetics, and the problems that Seekia attempts to solve, it is recommended to contribute anonymously.** **Due to the controversy associated with eugenics, genetics, and the problems that Seekia attempts to solve, it is recommended to contribute anonymously.**
You should access the code repository, any Seekia websites, and perform all of your Seekia related research through the Tor anonymity network. You should access the code repository, any Seekia websites, and perform all of your Seekia related research through the Tor anonymity network.
@ -271,11 +271,11 @@ If you are defining a nested function, you must indent the lines containing the
```Go ```Go
newFunction := func(){ newFunction := func(){
log.Println("Seekia: A race and genetics aware mate discovery network.") log.Println("Seekia: A genetics aware mate discovery network.")
} }
newButton := widget.NewButton("Select Me", func(){ newButton := widget.NewButton("Select Me", func(){
log.Println("Seekia: A race and genetics aware mate discovery network.") log.Println("Seekia: A genetics aware mate discovery network.")
}) })
``` ```

View file

@ -5,7 +5,7 @@
### Welcome to the Seekia documentation! ### Welcome to the Seekia documentation!
Thank you for being interested in race and genetics aware mate discovery technology. Thank you for being interested in genetics aware mate discovery technology.
This document is a technical description of how Seekia works. This document is a technical description of how Seekia works.
@ -15,19 +15,19 @@ Read the whitepaper `Whitepaper.pdf` to understand more about the philosophy and
## What is Seekia? ## What is Seekia?
Seekia is a mate discovery network where users can find a mate while having a deep awareness of each potential partner's race. Seekia is a mate discovery network where users can find a mate while having a deep awareness of each potential partner's genetics.
Users can share racial information in their profiles such as their eye, skin, and hair color; hair texture; and the alleles of their genes which effect physical traits. Users can also share their genetic ancestry, which correlates to their race. Users can share genetic information in their profiles such as monogenic disease risks, allele values, and ancestry.
Seekia enables users to browse and filter potential mates by their racial attributes. Seekia can also calculate the racial characteristics for prospective offspring between users. Seekia allows for users to predict and control the race of their offspring by selecting a mate who is the most capable and likely to produce offspring of their desired race. Seekia can calculate the genetic attributes for prospective offspring between users. Seekia enables users to browse and filter potential mates by their genetic attributes and the predicted genetic attributes of their offspring. Seekia allows for users to predict and control the genetic attributes of their offspring by selecting a mate who is the most likely to produce offspring with their desired attributes.
Users can also filter and sort users based on their genetic disease and trait information. Users can view information about the health and physical traits of their prospective offspring for each user.
Seekia aims to improve the genetic quality of humanity by making humans healthier, more beautiful, more intelligent, more virtuous, and happier. Seekia aims to facilitate eugenic breeding by helping to create mate pairings which are the most likely to produce healthy, beautiful, intelligent, virtuous, and happy offspring. Seekia aims to help members of the world's most beautiful races to meet and have children.
Users can analyze their genomes using the Seekia app to learn about monogenic disease probabilities, polygenic disease risk scores, and traits. Users can share this information in their profiles. Seekia enables users to choose their mate in such a way to prevent their offspring from having monogenic diseases, reduce the probability of their offspring having polygenic diseases, and increase the probability of their offspring having certain traits. Users can analyze their genomes using the Seekia app to learn about monogenic disease probabilities, polygenic disease risk scores, and traits. Users can share this information in their profiles. Seekia enables users to choose their mate in such a way to prevent their offspring from having monogenic diseases, reduce the probability of their offspring having polygenic diseases, and increase the probability of their offspring having certain traits.
The goal of Seekia is to accelerate the world's adoption of race and genetics aware mate discovery technology, and to help the world mate in a race and genetics aware manner. Users can view information about the health and physical traits of their prospective offspring for each user. Users can choose to mate with users with whom their offspring has a lower probability of having diseases and a higher probability of having certain traits.
Seekia aims to improve the genetic quality of humanity by making humans healthier, more beautiful, more intelligent, more virtuous, and happier. Seekia aims to facilitate eugenic breeding by helping to create mate pairings which are the most likely to produce healthy, beautiful, intelligent, virtuous, and happy offspring.
The goal of Seekia is to accelerate the world's adoption of genetics aware mate discovery technology, and to help the world mate in a genetics aware manner.
## User Identities ## User Identities
@ -368,17 +368,33 @@ Disabled Mate/Host profiles will be retained by the network until the identity t
Moderator disabled profiles must be kept in the network forever, because moderator profiles never expire. This only applies to Moderators who have funded their identity. Moderator disabled profiles must be kept in the network forever, because moderator profiles never expire. This only applies to Moderators who have funded their identity.
## Race ## Genetics
Seekia allows users to filter mates by traits such as eye color, skin color, hair color, hair texture, and the alleles in their genome which effect these traits. Seekia offers the ability to analyze a user's genome, and share information about a user's genetics on their profile.
### Ancestry This allows for users to reduce the probability of their offspring having genetic diseases, and to increase the probability of their offspring having certain traits.
*TODO: Describe these features in more detail.*
## Ancestry
Seekia is an ancestry aware mate discovery network. Users can share the ancestral populations they are descended from and the haplogroups they belong to. Users can filter other users by their ancestry, and can view the calculated ancestry of their prospective offspring with each user. Filtering and sorting by ancestry will help users to find mates who belong to their desired race(s), because ancestry is correlated to race. Seekia is an ancestry aware mate discovery network. Users can share the ancestral populations they are descended from and the haplogroups they belong to. Users can filter other users by their ancestry, and can view the calculated ancestry of their prospective offspring with each user. Filtering and sorting by ancestry will help users to find mates who belong to their desired race(s), because ancestry is correlated to race.
User profiles can include ancestral analyses from multiple providers and computational methods. The Seekia app is also planned to provide the ability to perform ancestral analyses from raw genome data files. User profiles can include ancestral analyses from multiple providers and computational methods. The Seekia app is also planned to provide the ability to perform ancestral analyses from raw genome data files.
### Racial Similarity ### Ancestral Similarity
Ancestral Similarity is a percentage value representing how closely related the ancestries of 2 users are.
It relies on the ancestral composition provided by companies such as 23andMe and AncestryDNA.
A different ancestral analysis method could be created that has many more human populations, but each population has no name. Each name would instead be a population identifier, which could be a 4 byte value.
## Race
Seekia allows users to filter mates by racial traits such as eye color, skin color, hair color, hair texture, and the alleles in their genome which effect these traits.
## Racial Similarity
Users are able to sort other users based on their racial similarity. Users are able to sort other users based on their racial similarity.
@ -388,7 +404,7 @@ Racial similarity aims to help match people who look alike and have similar alle
Racial similarity is calculated by comparing trait similarity, trait genetic similarity, ancestral similarity, and haplogroup similarity. Racial similarity is calculated by comparing trait similarity, trait genetic similarity, ancestral similarity, and haplogroup similarity.
#### Trait Similarity ### Trait Similarity
To calculate trait similarity, each user's eye color, skin color, hair color, and hair texture are compared. To calculate trait similarity, each user's eye color, skin color, hair color, and hair texture are compared.
@ -396,28 +412,12 @@ For example, if both users have blue eyes, their Eye Color similarity is 100%.
Facial similarity detection technology is another planned feature for Seekia. The Seekia app could compare user profile photos to help users to find potential mates whom have similar facial structures, helping to cure racial loneliness. Users could also import photos of people they are strongly attracted to for the purpose of finding a mate who looks similar to them. Facial similarity detection technology is another planned feature for Seekia. The Seekia app could compare user profile photos to help users to find potential mates whom have similar facial structures, helping to cure racial loneliness. Users could also import photos of people they are strongly attracted to for the purpose of finding a mate who looks similar to them.
#### Trait Genetic Similarity ### Trait Genetic Similarity
Each user can choose to share the genes which effect eye color, skin color, hair color, hair texture, and facial structure. Each user can choose to share the genes which effect eye color, skin color, hair color, hair texture, and facial structure.
Seekia compares the percentage of these genes which are similar between two people to calculate genetic similarity for each trait. Seekia compares the percentage of these genes which are similar between two people to calculate genetic similarity for each trait.
#### Ancestral Similarity
Ancestral Similarity is a percentage value representing how closely related the ancestries of 2 users are.
It relies on the ancestral composition provided by companies such as 23andMe and AncestryDNA.
A different ancestral analysis method could be created that has many more human populations, but each population has no name. Each name would instead be a population identifier, which could be a 4 byte value.
## Genetics
Seekia offers the ability to analyze a user's genome, and share information about a user's genetics on their profile.
This allows for users to reduce the probability of their offspring having genetic diseases, and to increase the probability of their offspring having certain traits.
*TODO: Describe these features in more detail.*
## Chat ## Chat
Seekia allows users to chat. Seekia allows users to chat.

View file

@ -287,7 +287,7 @@ The Seekia application should be able to perform its own ancestral analysis.
There could be several analysis methods. These analysis methods will serve as an alternative to company-provided analyses. There could be several analysis methods. These analysis methods will serve as an alternative to company-provided analyses.
Providing an open source ancestral analysis method is essential for race aware mate discovery technology to be credibly neutral. There already exist multiple open source ancestral analysis packages. Providing an open source ancestral analysis method is essential for ancestry aware mate discovery technology to be credibly neutral. There already exist multiple open source ancestral analysis packages.
### Add Complex Disease Diagnosis ### Add Complex Disease Diagnosis
@ -443,7 +443,7 @@ These servers should be run by trusted entities, and their domain names and sign
Users should be able to send files through calls. This way, users can send their genomes through a secure channel without having to meet in person. Users should be able to send files through calls. This way, users can send their genomes through a secure channel without having to meet in person.
### Offspring Race Prediction ### Offspring Appearance Prediction
Users of Seekia should be able to understand what their offspring with each potential mate is likely to look like. This is useful when deciding who to mate with. Users of Seekia should be able to understand what their offspring with each potential mate is likely to look like. This is useful when deciding who to mate with.

View file

@ -346,7 +346,7 @@ func setChooseDesiresPage_23andMe_ViewAncestryComposition(window fyne.Window, re
description3 := getBoldLabelCentered("Your ancestry composition does not exist.") description3 := getBoldLabelCentered("Your ancestry composition does not exist.")
description4 := getLabelCentered("To view your offspring desires, you must add your ancestry composition.") description4 := getLabelCentered("To view your offspring desires, you must add your ancestry composition.")
description5 := getLabelCentered("Add it on the Build Profile - Physical - Race - 23andMe - Ancestry Composition page.") description5 := getLabelCentered("Add it on the Build Profile - Physical - Ancestry Composition page.")
page := container.NewVBox(title, backButton, widget.NewSeparator(), subtitle, widget.NewSeparator(), description1, description2Row, widget.NewSeparator(), modifyDesiresButton, widget.NewSeparator(), userOrOffspringSelectorCentered, widget.NewSeparator(), description3, description4, description5) page := container.NewVBox(title, backButton, widget.NewSeparator(), subtitle, widget.NewSeparator(), description1, description2Row, widget.NewSeparator(), modifyDesiresButton, widget.NewSeparator(), userOrOffspringSelectorCentered, widget.NewSeparator(), description3, description4, description5)

View file

@ -613,7 +613,7 @@ func setHomePage(window fyne.Window){
welcomeTitle := getBoldLabelCentered("Welcome to Seekia!") welcomeTitle := getBoldLabelCentered("Welcome to Seekia!")
welcomeMessage := getLabelCentered("Seekia is a race and genetics aware mate discovery network.") welcomeMessage := getLabelCentered("Seekia is a genetics aware mate discovery network.")
exists, currentUserName := appUsers.GetCurrentAppUserName() exists, currentUserName := appUsers.GetCurrentAppUserName()
if (exists == false){ if (exists == false){

View file

@ -180,7 +180,7 @@ func setChooseAppUserPage(window fyne.Window){
logoSize := getCustomFyneSize(30) logoSize := getCustomFyneSize(30)
seekiaLogo.SetMinSize(logoSize) seekiaLogo.SetMinSize(logoSize)
seekiaDescriptionLabel := getItalicLabelCentered("Be race and genetics aware.") seekiaDescriptionLabel := getItalicLabelCentered("Be genetics aware.")
selectLanguageTitle := getBoldLabel("Language:") selectLanguageTitle := getBoldLabel("Language:")

View file

@ -57,7 +57,7 @@ func TestCreateMemos(t *testing.T){
} }
} }
memoMessage := `Seekia: Be race and genetics aware. memoMessage := `Seekia: Be genetics aware.
This is a Seekia memo.` This is a Seekia memo.`
@ -104,7 +104,7 @@ This is a Seekia memo.`
t.Fatalf("Received author identity hash does not match: " + authorIdentityHashHex) t.Fatalf("Received author identity hash does not match: " + authorIdentityHashHex)
} }
memoHashExpected := "9461a4a16f0ca4d59d88868fe327263fed3ad3f38eceea01eb8b2bafa9cf3ece" memoHashExpected := "212e91ddf1103c58b229e0273e7e3063aa59112a8ff66b2451d856084f50ed7b"
memoHashBytes, err := encoding.DecodeHexStringToBytes(memoHashExpected) memoHashBytes, err := encoding.DecodeHexStringToBytes(memoHashExpected)
if (err != nil){ if (err != nil){
@ -122,7 +122,7 @@ This is a Seekia memo.`
t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error()) t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error())
} }
if (ethereumAddress != "0x07A50D6ee89038A30237C87B32D40E3F930C7a33"){ if (ethereumAddress != "0x3e91f0CB0C2DC5b4b731756120fbDBf280Aa420e"){
t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Ethereum address: " + ethereumAddress) t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Ethereum address: " + ethereumAddress)
} }
@ -131,7 +131,7 @@ This is a Seekia memo.`
t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error()) t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error())
} }
if (cardanoAddress != "addr1vxdy5cc45zttpy7ve7e822nahgcvw9sfhr0rp9ung3lr7ysry603s"){ if (cardanoAddress != "addr1v80q4u828wp7vgwhdtdp2vtf3yhet56ek5n46kpxf3p4fys7magv9"){
t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Cardano address: " + cardanoAddress) t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Cardano address: " + cardanoAddress)
} }
} }

View file

@ -14,9 +14,9 @@ func TestReadMemo(t *testing.T){
testMemo := `| << Seekia Memo >> testMemo := `| << Seekia Memo >>
| |
|- Signature: |- Signature:
| j4-7rHlawRFIeDzR8E-heP7c7VZbjL | MrVojUgnBTQp0RWoqCQGEeVLIn8gAs
| WGFYjzKaa0yJdbxeUYOK0SBiYfg4r7 | B1OxP3AxOwKGW5AYH3ZjSJiThfcupq
| fkflRsvCkNHmHHzKbvbctnhtDg== | hG2j3UkvQIu4SBIeSV3j95yBCg==
| |
|- Identity Key: |- Identity Key:
| b26327a3e00e97a2759ac0a08a39c84f | b26327a3e00e97a2759ac0a08a39c84f
@ -27,7 +27,7 @@ func TestReadMemo(t *testing.T){
| |
|- Memo: |- Memo:
| |
| Seekia: Be race and genetics aware. | Seekia: Be genetics aware.
| |
| This is a Seekia memo. | This is a Seekia memo.
| |
@ -54,7 +54,7 @@ func TestReadMemo(t *testing.T){
t.Fatalf("Received author identity hash does not match: " + authorIdentityHashHex) t.Fatalf("Received author identity hash does not match: " + authorIdentityHashHex)
} }
memoHashExpected := "9461a4a16f0ca4d59d88868fe327263fed3ad3f38eceea01eb8b2bafa9cf3ece" memoHashExpected := "212e91ddf1103c58b229e0273e7e3063aa59112a8ff66b2451d856084f50ed7b"
memoHashBytes, err := encoding.DecodeHexStringToBytes(memoHashExpected) memoHashBytes, err := encoding.DecodeHexStringToBytes(memoHashExpected)
if (err != nil){ if (err != nil){
@ -72,7 +72,7 @@ func TestReadMemo(t *testing.T){
t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error()) t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error())
} }
if (ethereumAddress != "0x07A50D6ee89038A30237C87B32D40E3F930C7a33"){ if (ethereumAddress != "0x3e91f0CB0C2DC5b4b731756120fbDBf280Aa420e"){
t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Ethereum address: " + ethereumAddress) t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Ethereum address: " + ethereumAddress)
} }
@ -81,11 +81,11 @@ func TestReadMemo(t *testing.T){
t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error()) t.Fatalf("GetBlockchainAddressFromMemoHash failed: " + err.Error())
} }
if (cardanoAddress != "addr1vxdy5cc45zttpy7ve7e822nahgcvw9sfhr0rp9ung3lr7ysry603s"){ if (cardanoAddress != "addr1v80q4u828wp7vgwhdtdp2vtf3yhet56ek5n46kpxf3p4fys7magv9"){
t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Cardano address: " + cardanoAddress) t.Fatalf("GetBlockchainAddressFromMemoHash returning unexpected Cardano address: " + cardanoAddress)
} }
expectedUnarmoredMemoContent := `Seekia: Be race and genetics aware. expectedUnarmoredMemoContent := `Seekia: Be genetics aware.
This is a Seekia memo.` This is a Seekia memo.`

View file

@ -1,5 +1,5 @@
// Seekia: A race and genetics aware mate discovery network. // Seekia: A genetics aware mate discovery network.
// Released into the public domain. (see Unlicense.md) // Released into the public domain. (see Unlicense.md)
package main package main

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 45 KiB