Skip to content

Commit

Permalink
adds the why another x list
Browse files Browse the repository at this point in the history
  • Loading branch information
derpyzza committed Nov 7, 2024
1 parent d0ffe5a commit ae7ad26
Show file tree
Hide file tree
Showing 11 changed files with 221 additions and 45 deletions.
20 changes: 10 additions & 10 deletions assets/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -303,20 +303,14 @@ aside {
}

.code-highlight {
overflow: auto;
background-color: var(--code-bg);
color: var(--nm);
border-radius: 10px;
padding: 20px 20px 20px 10px;

}

code {
border-radius: 10px;
font-family: 'Fira Code', monospace;
color: var(--code-fg);
background-color: var(--code-bg);
width: 100%;
margin-left: 16px;
color: var(--vi);
padding: 2px 6px;
/* background-color: var); */
}

pre {
Expand All @@ -327,6 +321,12 @@ pre {

pre code {
counter-increment: line;
width: 100%;
overflow: auto;
background-color: var(--code-bg);
color: var(--nm);
border-radius: 10px;
padding: 20px 20px 20px 10px;
}

pre code::before {
Expand Down
2 changes: 1 addition & 1 deletion assets/template.html
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,4 @@ <h1>{{title}}</h1>
</footer>
</body>

</html>
</html>
48 changes: 28 additions & 20 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,23 @@
<!-- fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Fira+Code:[email protected]&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap" rel="stylesheet">
<link
href="https://fonts.googleapis.com/css2?family=Fira+Code:[email protected]&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap"
rel="stylesheet">
</head>

<body>
<header id="header">
<a href="/">
// Derpyzza's notes :D
</a>
<div>
<a href="/index.html">home</a>
<span>/</span>
<a href="/public/archive.html">archive</a>
<span>/</span>
<a href="https://github.com/derpyzza">github</a>
</div>
<a href="/">
// Derpyzza's notes :D
</a>
<div>
<a href="/index.html">home</a>
<span>/</span>
<a href="/public/archive.html">archive</a>
<span>/</span>
<a href="https://github.com/derpyzza">github</a>
</div>
</header>

<main>
Expand All @@ -39,7 +41,8 @@
|____/ \___|_| | .__/ \__, /___/___\__,_|
|_| |___/
">
<aside class="light-only">Yes this banner was designed with only dark mode in mind, how could you tell?</aside>
<aside class="light-only">Yes this banner was designed with only dark mode in mind, how could you tell? ( Note:
this comment doesn't work for css-disabled environments like terminal web browsers ): )</aside>
<p>👋 Hello, i'm derpyzza</p>
<p>
I'm a programmer and an artist. I like experimenting with low level technologies,
Expand All @@ -60,23 +63,28 @@
<li>
<a href="https://derpyzza.itch.io">games</a>
</li>
<li>
<a href="/public/why-bother.html">the 'why make another x' list</a>
</li>
</ul>
<br>
<p>Also, here's a complimentary weird fish thing, on the house. It's not a very interesting fish thing, nor a very unique one. However, how many other websites have you come across with this specific fish
on the first page?
<p>Also, here's a complimentary weird fish thing, on the house. It's not a very interesting fish thing, nor a very
unique one. However, how many other websites have you come across with this specific fish
on the first page?
</p>
<p>checkmate.</p>
<img src="assets/pixelartgamethingidk.png" alt="An image of a little pixel art fish-like creature standing atop a chiseled-stone looking platform. The platform has the fish standing on one edge, and a couple bits of seaweed growing on the other. You gaze upon this image and feel a sense of serenity wash over you. It feels good.">
<img src="assets/pixelartgamethingidk.png"
alt="An image of a little pixel art fish-like creature standing atop a chiseled-stone looking platform. The platform has the fish standing on one edge, and a couple bits of seaweed growing on the other. You gaze upon this image and feel a sense of serenity wash over you. It feels good.">
</section>

</main>

<footer id="footer">
<div>© Derpyzza — 2022-2024</div>
<div>generated with
<a href="https://github.com/derpyzza/derpyzza.github.io/blob/main/jenny.py">jenny</a>
</div>
<div>© Derpyzza — 2022-2024</div>
<div>generated with
<a href="https://github.com/derpyzza/derpyzza.github.io/blob/main/jenny.py">jenny</a>
</div>
</footer>
</body>

</html>
</html>
26 changes: 18 additions & 8 deletions jenny.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ def preprocess_file(file):
'generate_toc': True,
'post_languages': ['en'],
'file_name': file.name,
'ignore_index': False,
}
keep_scanning = True
for line in file:
Expand All @@ -67,15 +68,19 @@ def preprocess_file(file):
# If only one item in list just convert it into a string
if len(args) == 1:
args = "".join(args)

if command == 'generate_toc':
if args[0].strip().lower() == 'false':
vars['generate_toc'] = False;
# default case

if args.lower().strip() == 'false':
print("FAAKLSE")
vars[command] = False
elif args.lower().strip() == 'true':
print("TRUEEE")
vars[command] = True
else:
vars['generate_toc'] = True
vars[command] = args
else:
vars[command] = args
print(f"vars: {vars}, cmd: {command}, args: {args}")

elif stripped.startswith("---"):
keep_scanning = False
continue
Expand Down Expand Up @@ -303,7 +308,10 @@ def format_file(post, template):
try:
template = template.replace("{{title}}", post['post_title'])
template = template.replace("{{content}}", post['post_content'])
template = template.replace("{{date}}", pretty_date(post['post_date']))
if 'post_date' in post:
template = template.replace("{{date}}", pretty_date(post['post_date']))
else:
template = template.replace("{{date}}", " ")
except Exception as err:
print(f"Error: could not process file {post["file_name"]}, err: {err}")
exit()
Expand Down Expand Up @@ -333,7 +341,7 @@ def process_posts():
(has_links, has_notes, links, post['post_content']) = process_notes(post['post_content'])
post['post_content'] = process_headings(post['post_content'], post['generate_toc'])
post['post_content'] = build_footnotes(post['post_content'], links, has_links, has_notes)
post['post_content'] = process_code_blocks(post['post_content'])
# post['post_content'] = process_code_blocks(post['post_content'])

file_name = os.path.basename( f )
destination = os.path.join( out_dir , os.path.splitext( file_name )[ 0 ][7:] + ".html" )
Expand Down Expand Up @@ -361,6 +369,8 @@ def process_index(file: str):
file_name = f"{out_dir}/{file}.html"

for post in reversed(posts):
if post['ignore_index']:
continue
year = "".join(post['post_date']).split('.')[0]
if not (year == last_year):
# Nasty little hack, but i have a slight headache and i'm losing
Expand Down
4 changes: 2 additions & 2 deletions public/about-jenny.html
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ <h2 id="why"><a href="#why">#</a> Why</h2>
<h2 id="how"><a href="#how">#</a> How</h2>
<p>does it really work? ( as of the time of writing ) jenny is essentially just a small python script that expects three things: a <mark>src/</mark> directory that contains <mark>.md</mark> files, an
<mark>assets/</mark> directory that contains a stylesheet and two template <mark>.html</mark> files ( one for the main page, and one for the actual posts themselves ) and a <mark>public</mark> directory. the script reads through every <mark>.md</mark> file in the <mark>src/</mark> directory, and first off preprocesses the file for some metadata. metadata for jenny follows the following syntax:
<br/><div class="code-highlight"><code>$command args...</code></div><br/>
<code>$command args...</code>
metadata must always begin with a dollar symbol, immediately followed by a command or keyword that tells the program what kind of data it is, followed by a space delimited string of arguements to the
command. currently, jenny only supports three commands: title, subtitle, and data. all three of these are used in displaying the title of the post on the post page, as well as displaying the title on
the main page. after the preprocessing stage, jenny converts the raw markdown posts to a <mark>.html</mark> page using the aforementioned template files, and stores the post to a list of posts along with their titles, subtitles, and dates. jenny then just takes all that data, and feeds it through another template to produce an index file as the landing page of the blog. and... that's it! jenny is in itself a super basic script. it only does what it needs to, and nothing else. it ends up being slightly not user friendly as a direct cause of that simplicity sometimes, but that's my fault for just rushing the implementation a bit hehe.</p>
Expand Down Expand Up @@ -82,4 +82,4 @@ <h2 id="final-notes"><a href="#final-notes">#</a> Final notes</h2>
</footer>
</body>

</html>
</html>
2 changes: 1 addition & 1 deletion public/hacky-script-perfect-script.html
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,4 @@ <h2 id="this-website-runs-on-jenny"><a href="#this-website-runs-on-jenny">#</a>
</footer>
</body>

</html>
</html>
2 changes: 1 addition & 1 deletion public/on-writing.html
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,4 @@ <h4>random rambling on writing, or something</h4>
</footer>
</body>

</html>
</html>
2 changes: 1 addition & 1 deletion public/star-wars-visions-season-2.html
Original file line number Diff line number Diff line change
Expand Up @@ -91,4 +91,4 @@ <h3 id="the-pit-[-1/10-]"><a href="#the-pit-[-1/10-]">#</a> The Pit [ 1/10 ]</h3
</footer>
</body>

</html>
</html>
103 changes: 103 additions & 0 deletions public/why-bother.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
<!DOCTYPE html>

<html lang="en">

<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Derpyzza's site</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap"
rel="stylesheet">
<link rel="stylesheet" href="/assets/main.css" />
</head>

<body>
<main>
<section id="main">
<hgroup>
<div class="datebar">
<span> </span>
<a href="/public/archive.html">Go back</a>
</div>
<h1>the 'why make another $THING' list</h1>

</hgroup>

<article>
<p>often times when working on a hobby project where you're attempting to (re-)create a custom version of something that already exists, you'll come across questions from other people that are always something along the lines of "<code>$THING</code> already exists, why are you making another one?".
i have prepared a handy dandy list of rebuttals that can be used to counter their misplaced concerns.
simply tick all that apply and send it over to them ( Or stick it somewhere on your project's documentation or website if it has those ).</p>
<p>the list will be updated as i come up with more rebuttals.</p>
<p>here's the list:</p>
<h2 id="i'm-making-$thing-because:"><a href="#i'm-making-$thing-because:">#</a> I'm making $THING because:</h2>
<ul>
<li>[ ] it's fun</li>
<li>[ ] i felt like it</li>
<li>[ ] i bet i can sell this and get rich</li>
<li>[ ] making <code>$THING</code> will help me stroke my ego</li>
<li>[ ] it'll probably look real nice on my resumé</li>
<li>[ ] people will think i'm a cool person for having made my own <code>$THING</code></li>
<li>[ ] <em>i</em> will think i'm a cool person for having made my own <code>$THING</code></li>
<li>[ ] there arent <em>enough</em> versions of $THING out there already and there needs to be more!</li>
<li>[ ] it's trendy right now and i want to hop on the hype train myself</li>
<li>[ ] i'm bored out of my mind and if i don't distract myself with this i'm going to lose my mind</li>
<li>[ ] i happen to have the free will required to engage in this activity</li>
<li>[ ] it's a good educational experience</li>
<li>[ ] it fills some gap that i found in my knowledge/experience</li>
<li>[ ] the other version(s) of <code>$THING</code> sucks because it's:<ul>
<li>[ ] boring</li>
<li>[ ] poorly made</li>
<li>[ ] UNWORTHY!!!</li>
<li>[ ] bloated</li>
<li>[ ] messy</li>
<li>[ ] hard to use</li>
<li>[ ] difficult to understand</li>
<li>[ ] poorly documented</li>
<li>[ ] expensive</li>
<li>[ ] hard to acquire</li>
<li>[ ] slow to use</li>
<li>[ ] tedious to use</li>
<li>[ ] doesn't work very well</li>
<li>[ ] proprietary and i can't modify it</li>
<li>[ ] open and i <em>can</em> modify it, and i take issue with that for some reason D:&lt;</li>
</ul>
</li>
<li>[ ] the other version(s) of <code>$THING</code> is fine but:<ul>
<li>[ ] i wish it did x better</li>
<li>[ ] it's missing some features that could really enhance it / my usage of it </li>
<li>[ ] difficult to aquire</li>
<li>[ ] unnecessarily bloated</li>
<li>[ ] poorly documented</li>
<li>[ ] expensive</li>
<li>[ ] tedious to use</li>
<li>[ ] doesn't fit enough of my use-cases for it to really be good for me</li>
<li>[ ] fails to offer x functionality</li>
<li>[ ] it's proprietary and i can't modify it</li>
</ul>
</li>
</ul>
</article>

</section>

</main>

<footer id="footer">
<nav>
<a href="/index.html">home</a>
<span> / </span>
<a href="/public/archive.html">archive</a>
<span> / </span>
<a href="https://github.com/derpyzza">github</a>
<span> / </span>
<a href=" ">back to top</a>
</nav>
<div>© Derpyzza — 2022-2024</div>
<div>generated with <a href="https://github.com/derpyzza/derpyzza.github.io/blob/main/jenny.py">jenny</a> </div>
</footer>
</body>

</html>
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,4 @@ <h1>Writing systems evolved from material limitations</h1>
</footer>
</body>

</html>
</html>
55 changes: 55 additions & 0 deletions src/241106-why-bother.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
@post_title the 'why make another x' list
@ignore_index true
@generate_toc false
---

often times when working on a hobby project where you're attempting to (re-)create a custom version of something that already exists, you'll come across questions from other people that are always something along the lines of "`$THING` already exists, why are you making another one?".
i have prepared a handy dandy list of rebuttals that can be used to counter their misplaced concerns.
simply tick all that apply and send it over to them ( Or stick it somewhere on your project's documentation or website if it has those ).

the list will be updated as i come up with more rebuttals.

here's the list:

# I'm making $THING because:

- [ ] it's fun
- [ ] i felt like it
- [ ] i bet i can sell this and get rich
- [ ] making `$THING` will help me stroke my ego
- [ ] it'll probably look real nice on my resumé
- [ ] people will think i'm a cool person for having made my own `$THING`
- [ ] *i* will think i'm a cool person for having made my own `$THING`
- [ ] there arent *enough* versions of $THING out there already and there needs to be more!
- [ ] it's trendy right now and i want to hop on the hype train myself
- [ ] i'm bored out of my mind and if i don't distract myself with this i'm going to lose my mind
- [ ] i happen to have the free will required to engage in this activity
- [ ] it's a good educational experience
- [ ] it fills some gap that i found in my knowledge/experience
- [ ] the other version(s) of `$THING` sucks because it's:
- [ ] boring
- [ ] poorly made
- [ ] UNWORTHY!!!
- [ ] bloated
- [ ] messy
- [ ] hard to use
- [ ] difficult to understand
- [ ] poorly documented
- [ ] expensive
- [ ] hard to acquire
- [ ] slow to use
- [ ] tedious to use
- [ ] doesn't work very well
- [ ] proprietary and i can't modify it
- [ ] open and i *can* modify it, and i take issue with that for some reason D:<
- [ ] the other version(s) of `$THING` is fine but:
- [ ] i wish it did x better
- [ ] it's missing some features that could really enhance it / my usage of it
- [ ] difficult to aquire
- [ ] unnecessarily bloated
- [ ] poorly documented
- [ ] expensive
- [ ] tedious to use
- [ ] doesn't fit enough of my use-cases for it to really be good for me
- [ ] fails to offer x functionality
- [ ] it's proprietary and i can't modify it

0 comments on commit ae7ad26

Please sign in to comment.