apm install editorconfig language-babel linter linter-eslint file-icons atom-material-syntax atom-material-ui
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// rows und columns sind ja weitestgehend vertauschbar | |
// Unsere Definition: Alle Subarrays entsprechen den Rows und alle | |
// Elemente mit dem selben Index entsprechen einer Column | |
const sodoku = [ | |
// a, b, c, d, e, f, g, h, i | |
[1, 2, 3, 4, 5, 6, 7, 8, 9], // 1 | |
[1, 2, 3, 4, 5, 6, 7, 8, 9], // 2 | |
[1, 2, 3, 4, 5, 6, 7, 8, 9], // 3 | |
[1, 2, 3, 4, 5, 6, 7, 8, 9], // 4 | |
[1, 2, 3, 4, 5, 6, 7, 8, 9], // 5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I | |
II | |
III | |
IV | |
V | |
VI | |
VII | |
VIII | |
IX | |
X |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function mod(x1, x2) { | |
if (Math.floor(x1) !== x1 || Math.floor(x2) !== x2) { throw new Error("no floats, please :)"); } | |
while (x1 >= x2) { | |
x1 -= x2; | |
} | |
return x1; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ************************************ | |
// Marc on how to practice effectively | |
// ************************************ | |
import Universe from 'universe'; | |
import Player from 'player'; | |
// teaching and practicing methods, implement .teach() and .helpWithPractice() | |
import flowkey from 'flowkey'; | |
import PianoTeacher from 'piano-teacher'; |
I didn't want to host ghost on a subdomain like blog.<domain>
. Instead, I wanted it under a subdirectory like /blog
.
On this page, I want to describe the steps you need to take to do just that with the following stack:
- Main landing page on Netlify (https://www.mental.garden)
- Ghost is hosted on Digitalocean.
- DNS is manged by Cloudflare
- Install ghost on a new Digitalocean droplet using these instructions. Choose a (temporary) subdomain for ghost and add it to Cloudflare or your DNS. I chose https://my.mental.garden.