Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
409 commits
Select commit Hold shift + click to select a range
d6de963
Update node-js.md
gerkenv Dec 29, 2021
a04b7d7
Create errors.md
gerkenv Dec 29, 2021
558de09
Create http.md
gerkenv Dec 29, 2021
42358ba
Update macos.md
gerkenv Jan 2, 2022
51c7428
Update and rename yarn.md to package-manager.md
gerkenv Jan 4, 2022
250658e
Update package-manager.md
gerkenv Jan 4, 2022
a68c116
Update react.md
gerkenv Jan 4, 2022
708ff39
Update git.md
gerkenv Jan 10, 2022
f5a317f
Update browser.md
gerkenv Jan 28, 2022
b6261c4
Create e-mail.md
gerkenv Jan 30, 2022
502687d
Update jest.md
gerkenv Jan 30, 2022
8ef21ce
Update git.md
gerkenv Feb 4, 2022
ae1c8db
Update jest.md
gerkenv Feb 7, 2022
6b0f12b
Update jest.md
gerkenv Feb 7, 2022
84e5f09
Update jest.md
gerkenv Feb 7, 2022
1ee3d8c
Update browser.md
gerkenv Feb 8, 2022
225df80
Update browser.md
gerkenv Feb 8, 2022
02e7b58
Update browser.md
gerkenv Feb 8, 2022
61185d9
Update javascript.md
gerkenv Feb 8, 2022
4691d58
Update browser.md
gerkenv Feb 8, 2022
fe02466
Update typescript.md
gerkenv Feb 8, 2022
16ef97c
Update jest.md
gerkenv Feb 17, 2022
50391b3
Update utilities.md
gerkenv Feb 17, 2022
4fe0d99
Update utilities.md
gerkenv Feb 17, 2022
89840a5
Create holly-wars.md
gerkenv Feb 18, 2022
b07c09a
Update javascript.md
gerkenv Feb 19, 2022
a5da1cc
Update vscode.md
gerkenv Feb 21, 2022
3cca351
Update git.md
gerkenv Feb 21, 2022
cb0bde8
Update typescript.md
gerkenv Feb 22, 2022
fcef51d
Create roles.md
gerkenv Feb 22, 2022
4f7aed4
Create management.md
gerkenv Feb 22, 2022
2febae8
Create queue.md
gerkenv Feb 22, 2022
5781960
Update queue.md
gerkenv Feb 22, 2022
b1f94f1
Update vscode.md
gerkenv Feb 22, 2022
1475282
Update vscode.md
gerkenv Feb 22, 2022
2ca09f4
Create laptop.md
gerkenv Feb 22, 2022
e1e0d47
Create svelte.md
gerkenv Feb 22, 2022
6482f80
Update typescript.md
gerkenv Feb 22, 2022
d5648bb
Update cheat-sheet.md
gerkenv Feb 22, 2022
49374b4
Create interview.md
gerkenv Feb 23, 2022
0e2aadc
Update typescript.md
gerkenv Feb 23, 2022
74a1eed
Create web-component.md
gerkenv Feb 23, 2022
949741b
Update project-structure.md
gerkenv Feb 23, 2022
355b3e6
Update express-typescript.md
gerkenv Feb 23, 2022
01a4d76
Update express-typescript.md
gerkenv Feb 23, 2022
5a593fe
Create game-development.md
gerkenv Mar 11, 2022
9992d07
Update game-development.md
gerkenv Mar 12, 2022
9b7b40e
Update vscode.md
gerkenv Mar 12, 2022
8e23622
Create ultrajs.md
gerkenv Mar 14, 2022
a4920f8
Create aws.md
gerkenv Mar 16, 2022
b47bd64
Update aws.md
gerkenv Mar 16, 2022
3f9bb3a
Update macos.md
gerkenv Mar 17, 2022
e2c92ea
Update macos.md
gerkenv Mar 17, 2022
b44c92c
Update aws.md
gerkenv Apr 8, 2022
aebbc87
Create athena.md
gerkenv Apr 10, 2022
b7f89ee
Update athena.md
gerkenv Apr 10, 2022
ab517a3
Update athena.md
gerkenv Apr 10, 2022
3ff708e
Update browser.md
gerkenv Apr 11, 2022
7c0cae8
Update browser.md
gerkenv Apr 11, 2022
78ce537
Update git.md
gerkenv Apr 11, 2022
86a7985
Update shell.md
gerkenv Apr 12, 2022
956fc53
Update browser.md
gerkenv Apr 12, 2022
c9236cd
Update browser.md
gerkenv Apr 13, 2022
a10e537
Update javascript.md
gerkenv Apr 19, 2022
a298a85
Create companies.md
gerkenv Apr 25, 2022
1d3e597
Update aws.md
gerkenv Apr 26, 2022
02b5ae9
Update athena.md
gerkenv Apr 26, 2022
36f9a5d
Update athena.md
gerkenv Apr 26, 2022
de9a777
Update athena.md
gerkenv Apr 26, 2022
c8bdf25
Update athena.md
gerkenv Apr 26, 2022
9d056b3
Update athena.md
gerkenv Apr 26, 2022
832217b
Update athena.md
gerkenv Apr 26, 2022
3bfb0f7
Update athena.md
gerkenv Apr 26, 2022
0108975
Update athena.md
gerkenv Apr 26, 2022
7d6846d
Update athena.md
gerkenv Apr 26, 2022
2637a1c
Update athena.md
gerkenv Apr 26, 2022
571f77e
Update athena.md
gerkenv Apr 27, 2022
dd4c140
Update athena.md
gerkenv Apr 27, 2022
1484969
Create models.md
gerkenv Apr 28, 2022
1e1dceb
Update models.md
gerkenv Apr 28, 2022
831dff4
Update browser.md
gerkenv May 2, 2022
4cf769c
Update javascript.md
gerkenv May 2, 2022
52905cf
Update javascript.md
gerkenv May 2, 2022
85b6962
Update jest.md
gerkenv May 4, 2022
5c90b23
Update jest.md
gerkenv May 4, 2022
6f5b237
Update package-manager.md
gerkenv May 4, 2022
9571f1d
Update package-manager.md
gerkenv May 4, 2022
d53990c
Update athena.md
gerkenv May 9, 2022
92bd7f7
Update utilities.md
gerkenv May 13, 2022
dd6751e
Update utilities.md
gerkenv May 13, 2022
73f0c1d
Update javascript.md
gerkenv May 13, 2022
589ee5f
Update utilities.md
gerkenv May 13, 2022
334ff0c
Update javascript.md
gerkenv May 13, 2022
e2c58ef
Update syntax.md
gerkenv May 13, 2022
f6ec323
Update athena.md
gerkenv May 13, 2022
bf459ef
Update athena.md
gerkenv May 13, 2022
d76f8e7
Update rate-limiter.md
gerkenv May 13, 2022
f57e60d
Update rate-limiter.md
gerkenv May 13, 2022
670c4e5
Update aws.md
gerkenv May 13, 2022
b2485fd
Update aws.md
gerkenv May 13, 2022
1d9f47d
Update javascript.md
gerkenv May 13, 2022
fe42d2c
Update typescript.md
gerkenv May 13, 2022
a629d2e
Update javascript.md
gerkenv May 13, 2022
a6bcabe
Update typescript.md
gerkenv May 13, 2022
8f99cf6
Create apartment.md
gerkenv May 31, 2022
469b301
Create platforms.md
gerkenv Jun 7, 2022
08cc421
Create denoland.md
gerkenv Jun 16, 2022
12c4616
Update denoland.md
gerkenv Jun 16, 2022
1b7a85e
Update denoland.md
gerkenv Jun 20, 2022
58cce6e
Update denoland.md
gerkenv Jun 20, 2022
67e4ba7
Create markdown.md
gerkenv Jun 22, 2022
9e81120
Update models.md
gerkenv Jun 22, 2022
02cc50b
Update browser.md
gerkenv Jun 23, 2022
c3c9aa7
Update models.md
gerkenv Jun 23, 2022
508665c
Update browser.md
gerkenv Jun 30, 2022
4ebe3df
Update package-manager.md
gerkenv Jul 5, 2022
e482ca7
Create cypress.md
gerkenv Jul 5, 2022
1e1defa
Rename js/cypress.md to js/cypress/cypress.md
gerkenv Jul 5, 2022
e13394f
Create runtime.md
gerkenv Jul 6, 2022
8205c00
Create languages.md
gerkenv Jul 6, 2022
177a178
Update browser.md
gerkenv Jul 7, 2022
0fbb4e3
Update ServiceWorker.md
gerkenv Jul 7, 2022
016a891
Rename ServiceWorker.md to progressive-web-app.md
gerkenv Jul 7, 2022
6b6aacd
Rename js/progressive-web-app.md to js/browser/progressive-web-app.md
gerkenv Jul 7, 2022
92d02a1
Update browser.md
gerkenv Jul 7, 2022
593504d
Update progressive-web-app.md
gerkenv Jul 8, 2022
a997626
Update progressive-web-app.md
gerkenv Jul 9, 2022
4ecefcc
Update progressive-web-app.md
gerkenv Jul 10, 2022
b32fb99
Update progressive-web-app.md
gerkenv Jul 10, 2022
5e74fd2
Update browser.md
gerkenv Jul 11, 2022
24d8b8f
Create api-tools.md
gerkenv Jul 12, 2022
800cfde
Create software-architecture.md
gerkenv Jul 12, 2022
932f132
Update browser.md
gerkenv Jul 12, 2022
f1b6f54
Update progressive-web-app.md
gerkenv Jul 12, 2022
d322768
Update progressive-web-app.md
gerkenv Jul 12, 2022
c5a62bf
Update progressive-web-app.md
gerkenv Jul 12, 2022
2659626
Update progressive-web-app.md
gerkenv Jul 12, 2022
905db3b
Update progressive-web-app.md
gerkenv Jul 13, 2022
58edd4c
Update progressive-web-app.md
gerkenv Jul 13, 2022
e5bd805
Update browser.md
gerkenv Jul 13, 2022
b8821e1
Update and rename js/css/css.md to js/browser/css.md
gerkenv Jul 13, 2022
3973a7f
Rename js/errors/errors.md to js/browser/errors.md
gerkenv Jul 13, 2022
b2990f0
Delete service-worker.md
gerkenv Jul 13, 2022
97f361c
Update progressive-web-app.md
gerkenv Jul 13, 2022
dc1f455
Delete ultrajs.md
gerkenv Jul 13, 2022
68687ba
Update runtime.md
gerkenv Jul 13, 2022
e481f8b
Delete next-js.md
gerkenv Jul 13, 2022
dc772be
Update runtime.md
gerkenv Jul 13, 2022
b516549
Update browser.md
gerkenv Jul 13, 2022
fafd843
Update javascript.md
gerkenv Jul 13, 2022
2e9d2ef
Create performance.md
gerkenv Jul 13, 2022
eed4f47
Update linter.md
gerkenv Jul 13, 2022
c7dc483
Update npm-packages.md
gerkenv Jul 13, 2022
56d91c9
Update jest.md
gerkenv Jul 13, 2022
fbdb4ba
Update npm-packages.md
gerkenv Jul 13, 2022
4da8ffc
Update npm-packages.md
gerkenv Jul 13, 2022
78e114c
Update browser.md
gerkenv Jul 13, 2022
c8388a5
Update performance.md
gerkenv Jul 13, 2022
bee8578
Update runtime.md
gerkenv Jul 13, 2022
71d27d4
Update jupyter-notebook.md
gerkenv Jul 14, 2022
59d9e70
Update queue.md
gerkenv Jul 14, 2022
2b0098b
Delete http.md
gerkenv Jul 14, 2022
ef1e7da
Update browser.md
gerkenv Jul 14, 2022
2245d18
Update performance.md
gerkenv Jul 14, 2022
994cac3
Update bundler.md
gerkenv Jul 14, 2022
2334907
Update performance.md
gerkenv Jul 14, 2022
455d893
Update performance.md
gerkenv Jul 14, 2022
b8d941d
Create healthcare.md
gerkenv Jul 14, 2022
fc81483
Update performance.md
gerkenv Jul 14, 2022
0ac0f80
Create push-notification.md
gerkenv Jul 14, 2022
76c7f71
Update push-notification.md
gerkenv Jul 14, 2022
5353e42
Update push-notification.md
gerkenv Jul 14, 2022
3b26183
Create privacy.md
gerkenv Jul 14, 2022
9c029f2
Update push-notification.md
gerkenv Jul 14, 2022
41ee98e
Update push-notification.md
gerkenv Jul 14, 2022
1bc0b06
Create tools.md
gerkenv Jul 14, 2022
3c0c015
Update shell.md
gerkenv Jul 15, 2022
d8f50d2
Update shell.md
gerkenv Jul 15, 2022
0134ed7
Update anaconda.md
gerkenv Jul 17, 2022
1e05a71
Update anaconda.md
gerkenv Jul 17, 2022
09a5432
Update shell.md
gerkenv Jul 18, 2022
2ddeeef
Create makefile.md
gerkenv Jul 18, 2022
4f945a1
Create shells.md
gerkenv Jul 19, 2022
e593aba
Update api-tools.md
gerkenv Jul 19, 2022
b3f3843
Update shell.md
gerkenv Jul 19, 2022
e7758d6
Update api-tools.md
gerkenv Jul 19, 2022
9f1d009
Update shells.md
gerkenv Jul 19, 2022
714da5f
Update and rename shell.md to syntax.md
gerkenv Jul 19, 2022
b9a757e
Update syntax.md
gerkenv Jul 19, 2022
313d973
Update jupyter-notebook.md
gerkenv Jul 19, 2022
74e093f
Update shells.md
gerkenv Jul 19, 2022
967495f
Update syntax.md
gerkenv Jul 19, 2022
59aea5b
Update makefile.md
gerkenv Jul 19, 2022
c2a81f7
Update syntax.md
gerkenv Jul 19, 2022
12a1db6
Update syntax.md
gerkenv Jul 20, 2022
73841c9
Update react.md
gerkenv Jul 20, 2022
822c752
Update syntax.md
gerkenv Jul 21, 2022
b628f0b
Update syntax.md
gerkenv Jul 21, 2022
dfc84ec
Update progressive-web-app.md
gerkenv Jul 27, 2022
c607d9c
Update makefile.md
gerkenv Jul 27, 2022
60f9de9
Update browser.md
gerkenv Jul 28, 2022
b3dc046
Update syntax.md
gerkenv Aug 1, 2022
a52d355
Update progressive-web-app.md
gerkenv Aug 2, 2022
4dc1c62
Update syntax.md
gerkenv Aug 3, 2022
0e840b1
Update push-notification.md
gerkenv Aug 9, 2022
02cf5c1
Create service-reliability-engineering.md
gerkenv Aug 16, 2022
31cd81e
Update kubernetes.md
gerkenv Aug 19, 2022
53a36d2
Update kubernetes.md
gerkenv Aug 19, 2022
c7ef808
Update browser.md
gerkenv Aug 23, 2022
e4a552e
Update and rename docker.md to containers.md
gerkenv Aug 23, 2022
4e05a0c
Update containers.md
gerkenv Aug 23, 2022
1ba7826
Update containers.md
gerkenv Aug 23, 2022
71231f3
Update containers.md
gerkenv Aug 23, 2022
7ecbdf2
Update containers.md
gerkenv Aug 23, 2022
283ba56
Update browser.md
gerkenv Aug 26, 2022
6dde98b
Update latex.md
gerkenv Sep 2, 2022
48076ff
Update syntax.md
gerkenv Sep 2, 2022
89f0998
Update syntax.md
gerkenv Sep 8, 2022
37d946f
Update containers.md
gerkenv Sep 10, 2022
065b027
Update node-js.md
gerkenv Sep 10, 2022
30b0bd4
Update push-notification.md
gerkenv Sep 10, 2022
431d274
Create push-notification-system.md
gerkenv Sep 10, 2022
3baf276
Update progressive-web-app.md
gerkenv Sep 10, 2022
81bd3b1
Update progressive-web-app.md
gerkenv Sep 10, 2022
7a18d46
Update push-notification.md
gerkenv Sep 10, 2022
7f7ab74
Update performance.md
gerkenv Sep 10, 2022
bdbca26
Create alerting.md
gerkenv Sep 10, 2022
e12b2de
Update javascript.md
gerkenv Sep 10, 2022
bb44ad7
Update vscode.md
gerkenv Sep 10, 2022
f90ad74
Create developer-experience.md
gerkenv Sep 10, 2022
087e78c
Update performance.md
gerkenv Sep 10, 2022
f02785e
Update performance.md
gerkenv Sep 11, 2022
126c3f1
Create tensorflow-js.md
gerkenv Sep 11, 2022
3af879f
Update npm-packages.md
gerkenv Sep 11, 2022
a22c8c5
Update performance.md
gerkenv Sep 11, 2022
af60b94
Update javascript.md
gerkenv Sep 12, 2022
6c74a08
Update containers.md
gerkenv Sep 12, 2022
b27efcd
Update and rename js/node.js/node-js.md to js/node-js/node-js.md
gerkenv Sep 12, 2022
f5c0542
Rename js/express.js/syntax.md to js/express-js/syntax.md
gerkenv Sep 12, 2022
fc1cd84
Rename js/express-js/syntax.md to js/express.js/syntax.md
gerkenv Sep 12, 2022
1163635
Rename js/node-js/node-js.md to js/node.js/node-js.md
gerkenv Sep 12, 2022
46685bf
Update node-js.md
gerkenv Sep 22, 2022
fe346e7
Update performance.md
gerkenv Sep 22, 2022
84e0b49
Update javascript.md
gerkenv Sep 22, 2022
cde435e
Update performance.md
gerkenv Oct 20, 2022
9a11a39
Update software-architecture.md
gerkenv Oct 26, 2022
f1f2992
Update software-architecture.md
gerkenv Oct 27, 2022
f4e0240
Create hosting.md
gerkenv Nov 11, 2022
18385bd
Update models.md
gerkenv Dec 6, 2022
2a69d91
Bump express from 4.16.3 to 4.17.3 in /js/mongoose/app
dependabot[bot] Dec 8, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "app.js",
"type": "node",
"request": "launch",
"cwd": "${workspaceFolder}/js/node.js/console-app/console-app",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run-script", "debug"
],
"port": 9229
},
{
"type": "chrome",
"request": "launch",
"name": "script.js",
"url": "file:///D:/Projects/notes/js/examplePages/testPage/index.html",
"webRoot": "${workspaceFolder}/js/examplePages/testPage"
}
]
}
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# notes
# Mix of notes, bookmarks and tutorial-projects
13 changes: 13 additions & 0 deletions algorithms-and-data-structures/algorithms-and-data-structures.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Algorithms And Data Structures

## Basic Course
https://github.com/gerkenv/algorithms-and-data-structures

### Cheatsheet
https://algs4.cs.princeton.edu/cheatsheet/

### Part 1
https://www.coursera.org/learn/algorithms-part1

### Part 2
https://www.coursera.org/learn/algorithms-part2
40 changes: 40 additions & 0 deletions api-tools/api-tools.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# API Tools

## Curl
- [manual](https://curl.se/docs/manpage.html)
```shell
whihc curl
```
### Playground
- https://reqbin.com/

### Examples
- [POST with JSON body](https://reqbin.com/req/c-dwjszac0/curl-post-json-example)
- [request with search query parameters](https://stackoverflow.com/questions/13371284/curl-command-line-url-parameters)

### Get size of a request
- https://unix.stackexchange.com/questions/150656/get-size-of-sent-curl-request
- append `-w '%{size_request} %{size_upload}'`

## wget
```
which wget
```

## hhtp
```
which http
```

## HTTPie
- cli-tool
- https://httpie.io/cli
- UI-app
- https://httpie.io/product

## Postman
- UI-app
- https://www.postman.com/

## Swagger
- https://editor.swagger.io/
157 changes: 157 additions & 0 deletions aws/athena.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
# Athena

## Intro
- [Basic AWS Athena Intro](https://www.youtube.com/watch?v=JIviltfpul0)
- https://aws.amazon.com/athena/getting-started/

### Accessing Athena
Options:
- JDBC and ODBC drivers (synchronous)
- API (async)

### API (Asynchronous Query)
From [Basic AWS Athena Intro](https://www.youtube.com/watch?v=JIviltfpul0)
_semi-pseudo-code_
```js
client.startQueryExecution({
QueryString: 'SELECT * FROM table LIMIT 100',
ResultConfiguration: { OutputLocation: 's3://bucket/output' },
EncryptionConfiguration: { Database: 'default_db' }
}, (err, result) => {})

client.getQueryResults({
QueryExecutionId: 'id',
MaxResults: 1000,
NextToken: null
}, (err, data) => {})
```

## Initial Setup
### From Docs
- https://docs.aws.amazon.com/athena/latest/ug/setting-up.html

## Capabilities
- https://docs.aws.amazon.com/athena/latest/ug/querying-athena-tables.html

## Workgroups
- https://docs.aws.amazon.com/athena/latest/ug/workgroups-create-update-delete.html

## Athena SQL Reference
- https://docs.aws.amazon.com/athena/latest/ug/ddl-sql-reference.html

## Use Case. Run Query And Read Results

### Docs Intro
https://docs.aws.amazon.com/athena/latest/ug/querying.html

### From Reality
Check proper code examples:
- [java code sample](https://docs.aws.amazon.com/athena/latest/ug/code-samples.html#start-query-execution)
- [js code example](https://docs.aws.amazon.com/code-samples/latest/catalog/javascript-athena-index.js.html)
- https://www.ilkkapeltola.fi/2018/04/simple-way-to-query-amazon-athena-in.html

Required Code Flow:
- Start a query with [StartQueryExecution](https://docs.aws.amazon.com/athena/latest/APIReference/API_StartQueryExecution.html)
- Continuosly check an execution state of the query - if it is finished, failed or running. Use [GetQueryExecution](https://docs.aws.amazon.com/athena/latest/APIReference/API_GetQueryExecution.html)
- After query is finished - read results with [GetQueryResults
](https://docs.aws.amazon.com/athena/latest/APIReference/API_GetQueryResults.html)

#### JS/TS SDK
- https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-athena/index.html

#### Base Functions
- https://docs.aws.amazon.com/athena/latest/APIReference/API_StartQueryExecution.html
- https://docs.aws.amazon.com/athena/latest/APIReference/API_GetQueryExecution.html
- https://docs.aws.amazon.com/athena/latest/APIReference/API_GetQueryResults.html


## Access Policy
### Basic Access Policy Templates
- [Example – Allow an IAM Principal to Run and Return Results Using Athena Federated Query](https://docs.aws.amazon.com/athena/latest/ug/federated-query-iam-access.html#fed-using-iam)

### Minimal Access Policy
```yaml
- PolicyName: "example-iam-role-policy-for-athena"
PolicyDocument:
Version: '2012-10-17'
Statement:
- Sid: "1"
Effect: Allow
Action:
- "athena:GetQueryResults"
- "athena:StartQueryExecution"
- "athena:GetWorkGroup"
Resource:
- !Sub "arn:aws:athena:*:${AWS::AccountId}:workgroup/*"
- Sid: "1"
Effect: Allow
Action:
- "s3:GetObject"
- "s3:GetBucketLocation"
Resource:
## if you don't specify any custom s3 bucket for query results, then default bucket is created
## with arn `arn:aws:s3:::aws-athena-query-results-${AWS::Account}-${AWS::Region}`
- "arn:aws:s3:::aws-athena-query-results-*"
```

### Example Of Complete Access Policy
```yaml
PolicyDocument:
Version: '2012-10-17'
Statement:
- Sid: "0"
Effect: Allow
Action:
- "athena:GetQueryResults"
- "athena:StartQueryExecution"
- "athena:GetWorkGroup"
- "athena:GetQueryExecution"
Resource:
- !Sub "arn:aws:athena:*:${AWS::AccountId}:workgroup/*"
- Sid: "1"
Effect: Allow
Action:
- "s3:GetBucketLocation"
- "s3:GetObject"
- "s3:ListBucket"
- "s3:ListBucketMultipartUploads"
- "s3:ListMultipartUploadParts"
- "s3:AbortMultipartUpload"
- "s3:CreateBucket"
- "s3:PutObject"
Resource:
# s3 to store athena query results
- "{{S3_TO_STORE_ATHENA_QUERY_RESULTS}}"
- Sid: "2"
Effect: Allow
Action:
- "s3:GetObject"
- "s3:GetBucketLocation"
- "s3:ListBucket"
Resource:
# s3 of the table to query from
- "{{S3_OF_TABLE_TO_QUERY_FROM}}"
- "{{S3_OF_TABLE_TO_QUERY_FROM}}/*"
- Sid: "3"
Effect: Allow
Action:
- "glue:GetTable"
- "glue:GetPartition"
- "glue:GetPartitions"
- "glue:GetDatabase"
- "glue:GetDatabases"
Resource:
- !Sub "arn:aws:glue:*:${AWS::AccountId}:catalog"
- !Sub "arn:aws:glue:*:${AWS::AccountId}:database/default"
- !Sub "arn:aws:glue:*:${AWS::AccountId}:table/default/{{ATHENA_TABLE_NAME}}"
```

### Troubleshooting
- [The policy failed legacy parsing]
- https://stackoverflow.com/questions/43045029/the-policy-failed-legacy-parsing
- [InvalidRequestException: Unable to verify/create output bucket](https://aws.amazon.com/premiumsupport/knowledge-center/athena-output-bucket-error/)
- [InvalidRequestException: Query has not yet finished. Current state: QUEUED](https://stackoverflow.com/questions/62767533/invalidrequestexception-when-calling-the-getqueryresults-querying-athena)
- [The S3 location provided to save your query results is invalid. Please check your S3 location is correct and is in the same region and try again](https://aws.amazon.com/premiumsupport/knowledge-center/athena-invalid-s3-location-error/)
- [Why do I get the "Access Denied" error when I run a query in Amazon Athena?](https://aws.amazon.com/premiumsupport/knowledge-center/access-denied-athena/)
- [An error occurred (InvalidRequestException) when calling the GetQueryResults operation: Query did not finish successfully. Final query state: FAILED](https://stackoverflow.com/questions/62767533/invalidrequestexception-when-calling-the-getqueryresults-querying-athena)
- [How do I troubleshoot 403 Access Denied errors from Amazon S3](https://aws.amazon.com/premiumsupport/knowledge-center/s3-troubleshoot-403/)
49 changes: 49 additions & 0 deletions aws/aws.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# AWS

## CloudFormation Templates
- What is a CloudFormation https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html
- Template Basics https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/gettingstarted.templatebasics.html
- Template Anatomy https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html


### Intrinsic Functions
- `Sub` - https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-sub.html

## IAM

### Intro
- [IAM Policies and Bucket Policies and ACLs! Oh, My! (Controlling Access to S3 Resources)](https://aws.amazon.com/blogs/security/iam-policies-and-bucket-policies-and-acls-oh-my-controlling-access-to-s3-resources/)
- [Identity vs Resource-based AWS IAM Policies](https://sonalake.com/latest/identity-vs-resource-based-aws-iam-policies/)

### IAM Policy Simulator
- https://policysim.aws.amazon.com/

Can be used to check whether your IAM policy allows you to access certain AWS API and resource.
- https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html

## Simple Queue Service (SQS)

### Basic Intro
- What is Amazon Simple Queue Service? https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html
- Basic Amazon SQS architecture https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-basic-architecture.html

### Example Authentication Policy
- https://aws.amazon.com/premiumsupport/knowledge-center/sqs-accessdenied-errors/
- https://aws.amazon.com/premiumsupport/knowledge-center/sqs-queue-access-permissions/

### Javascript SDK

#### Getting the URL for a Queue
You can follow the API description of __v2__ to get an idea how to use it.
- https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/sqs-examples-using-queues.html

But actual implementation better to be in __v3__.
- https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sqs/index.html

### Node.js Considerations
- https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/node-js-considerations.html

### AbortController / AbortSignal
- https://aws.amazon.com/blogs/developer/abortcontroller-in-modular-aws-sdk-for-javascript/
- https://github.com/trivikr/aws-sdk-js-v3/blob/main/packages/abort-controller/src/AbortSignal.ts

8 changes: 8 additions & 0 deletions berlin/apartment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Apartment

## Heizung Thermostat-Kopf
- altes 'heimeier en 215' https://www.heiz24.de/Heimeier-EN215-Gold-thermostatic-head
- heimeier thermostatkopf K https://www.google.com/search?q=heimeier+thermostatkopf+K
- https://www.waerme24.de/media/dokumente/Heimeier_Montage_Thermostatkopf.pdf
- https://www.bauhaus.info/thermostatkoepfe/heimeier-heizkoerper-thermostat-dx/p/20749620
- https://www.bauhaus.info/thermostatkoepfe/heimeier-heizkoerper-thermostat-k/p/13486614
57 changes: 57 additions & 0 deletions berlin/floor-coverage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Floor Coverage

## Vinyl vs Laminat
https://www.planeo.de/magazin/boden-ratgeber-den-richtigen-boden-finden/
- vinyl is quiter
- vinyl provides flatter floor than laminat
- vinyl is waterproof
- to be completely waterproof it should be covered (versiegelt) https://www.youtube.com/watch?v=Q_xGAgiADRY
- vynil is softer, so small stones can scratch it faster
- vinyl is more expensive

## Vinyl Glue vs Click
https://www.youtube.com/watch?v=P8CxRfPaS4E&list=PLC0EE9125BF854DFE&index=7
- Glue
- Handwerker is required for Klebevinyl.
- Preparations are required
+ minimal floor height (< 10mm)
+ better accoustic
+ higher weight load is possible

- Click-vinyl
+ allows some surface height differences (Unebenheiten)

### Glue Vinyl Preparations
1. Estrich anschleifen
2. Grundieren und spachteln (vinyl kein Unebenheiten verzeiht.)
3. Kleben

### Click Vinyl Preparations
1. Estrich anschleifen
2. Trittschalldämmung bei Volvyinyl auslegen. Oder beim Multiplayer eine PE-Folie auslegen.
3. PE-Rungschnur in die Dehnungsfuge einlegen und versiegeln


## Laminat

### Base (Trägerplatte)
1. hochverdichtichtete Faserplatte HDF > MDF.
- high density > middle density
- material is heavier
- from acoustic it is quiter
- click-connection is harder
- water cannot come in that simple, but it laminat is not completely water-proof
2. click verbindung
- Unilin has a patent for their own click system (it is very good)
- Wellinger has also good option.
- 5G verbindung
3. Nutzungsklasse
- private Nutzung (21-23)
- 23 - Wohnzimmer, Küche.
- Gewerbliche Nutzung (31 - 34)
- 32/33 - Bars, Restourans, etc.
- Industrie - 40

### Additionally
1. Dampfsperrfolie drunter auslegen
2. Gute Trttshalldämmung
32 changes: 32 additions & 0 deletions berlin/handwerker.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Handwerker

## Advises
- general info
- https://www.verbraucherzentrale.de/wissen/vertraege-reklamation/kundenrechte/handwerker-finden-so-vermeiden-sie-boese-ueberraschungen-13664
- https://www.verbraucherzentrale.de/wissen/vertraege-reklamation/kundenrechte/handwerkerportale-checkliste-fuer-die-handwerkersuche-im-netz-31533
- exact links
- https://www.mein-eigenheim.de/bauplanung/gute-handwerker-finden.html

## Search Here
- Reviews Only By Name https://www.wirsindhandwerk.de/
- By branch https://www.qih.de/qih-suche.html

## Define Offer
- https://www.my-hammer.de
- check work package completeness, include all additional work
- get 3 replies
- check review for all of them
- trade prices

## Price Ranges
- https://www.my-hammer.de/preisradar/
- https://kostencheck.de/wohnung-renovieren-kosten-berechnen

## Streichen
- https://kostencheck.de/80-qm-wohnung-streichen-lassen-kosten

## Stromkabeln Erneuern
- https://kostencheck.de/stromleitungen-erneuern-kosten#top

## Referalls
- https://www.petru-onica.de/
Loading