# I am the Watcher. I am your guide through this vast new twtiverse.
#
# Usage:
# https://watcher.sour.is/api/plain/users View list of users and latest twt date.
# https://watcher.sour.is/api/plain/twt View all twts.
# https://watcher.sour.is/api/plain/mentions?uri=:uri View all mentions for uri.
# https://watcher.sour.is/api/plain/conv/:hash View all twts for a conversation subject.
#
# Options:
# uri Filter to show a specific users twts.
# offset Start index for quey.
# limit Count of items to return (going back in time).
#
# twt range = 1 535
# self = https://watcher.sour.is?uri=https://twtxt.net/user/https://twtxt.net/user/adi/twtxt.txt/twtxt.txt&offset=435
# prev = https://watcher.sour.is?uri=https://twtxt.net/user/https://twtxt.net/user/adi/twtxt.txt/twtxt.txt&offset=335
@adi @prologic I blame your definition of capitalism for that! SPAs are a forced tech. Abstractions just don't fit. It's fighting windmills!
@adi I would prefer good hardware, but not for SPAs.
From my experience SPAs hog on any computer!
The reason I rarely use 2-3-4 SPAs is because they hog my computer. I put 2 more there just in case I forgot any. I don't believe buying better hardware that still hogs is an option.
@adi @prologic Ok, I *rarely* use SPAs and not a fan of the experience.
@prologic I use GMail, and visit Facebook sometimes, not a big fan of the experience.
@adi @lyse Maybe I can remove the tracked images and replace them with untracked ones.
@lyse Interesting, good to be aware of that.
@prologic I agree the web doesn't suck but I do have a problem with SPAs hogging my computer.
@prologic I also believe courage is not running away from "hard" stuff, also I believe, once understood, "hard" stuff is not "hard" anymore.
@adi @movq I would write one in C.
@movq Their team is pretty small, I don't believe it's impossible.
@mckinley The way I run them is grep 16/Feb/2021 /var/www/logs/mkws.shaccess.log | grep -vf /home/adi/share/bots | flvu | wc -l
where /home/adi/share/bots
is a list of bot user agents.
@adi @eldersnake As for real pagination a combination of head
and tail
I guess?
lobste_rs (#zxo5xaa) I toyed with sam
a little, would really like to use it a little bit more at some point.
@eldersnake It wasn't a technical question, it was philosophical regarding effortlessness. By definition an action is effortless no more no less.
@vain How are you still using sudo
, did you pkg_add
it? Or?
@prologic golang_news Will it allow twtd
to be go get
-able?
@adi Weird, I got an "You've been blocked" screen a few seconds ago!
@eldersnake Ah, I understand, I would probably convert the whole twxt
to Markdown
in one go via awk
if possible and rerun through another awk
to add wrapper div
s but probably those would be better represented as li
s so no need for the wrapping part.
@darch @eldersnake I guess a better idea would be to just convert the twtxt
file to Markdown
via an awk
script and then run the whole output through smu
?
@eldersnake My opinion is that installing Node.Js
and a JavaScript framework to develop a simple static site is incredibly weird.
@prologic Was aware of the tutorial, might step through it at some point. Thx!
@eldersnake Not necessarily JavaScript, but "more serious" programing languages.
@prologic It's at least a good learning exercise.
@antonio Thanks for the recommendation! Looks good but French puts me off a little bit, although it might make it more interesting.
Speaking of "never done in software" I believe mkws
is done. I also believe chasing progress is a trap, that's why people believe software is "never done".
@eldersnake What's nice is that you can memorize them if they're less.
@adi Lots of time gained!
Btw, since I started with mkws
I started Googling less and less. Less abstractions.
@prologic I'm not familiar with how Linux namespaces work.
@prologic I believe a chroot
is enough? thttpd
supports chroot.
@eldersnake I'm not satisfied about the way GET and POST input is parsed, my idea is to preparse the GET/POST input in a special CGI
pp
and dump the variables in the global scope of the execve(3)
sh. The security issue lays in overwriting any other variable already present in the global scope.
@eldersnake I have some testimonials but I'd rather not "ruin" the homepage with them.
@adi @eldersnake Also a webmail client using https://github.com/leahneukirchen/mblaze and pp
. I believe this is a sane way to build dynamic websites, parsing GET and POST variables in CGI is still a problem tho. I personally prefer interpreted languages for developing websites due to no compile time and in place debugging.
@eldersnake I believe in progressive enhancement, I believe it's a good idea for some websites to be HTML interfaces to CLI tools. For instance I would like to create an HTML interface for the log analytics tools on adi.tilde.institute, cl
, cbl
, fl
, using pp
.
@adi The logo I made myself, it's a shell prompt and a set of HTML tags.
Ah, regarding Facebook, I believe it's a "like" market.
\n> I’ve played around with various web frameworks and tools, and like you I imagine, really just got sick of all the bloat and unnecessary complexity.\n\nExactly!
@prologic @will @eldersnake I personally disagree with the concept of "like" exactly because of the endorphin effect, I don't vote for instance, although many people do, on the basis of liking or disliking but on the basis on arguments, proof. I believe the term "agree" or "upvote" is more appropriate. I agree with just twt-ing a reply rather than adding "likes".
@eldersnake Yeah, also built with mkws
, not pleased with the design tho, I'll keep it as close as possible to plain text as an homage to UNIX and tilde.institute which are an awesome group. I _personally_ believe all tiny scripts there are at least decent, I believe the linters are nice and the log analytics scripts are nice although, both of them may be rewritten in C even tho awk
fits so well for the log analytics. And default.css
is nice. I've incorporated the linters in my mkws
build process.
@will @eldersnake I have this https://www.buymeacoffee.com/adriangrigore, it was on the website for while, maybe it's a good idea to put it again, however I have a low amount amount of traffic on the website. If you believe mkws
is cool or any other of my code, you can throw something there. Spreading the word would also be great!
@eldersnake I wonder how I could promote it better, and, if possible, monetize it.
@eldersnake Haha, not exactly chance, interests and opinions are similar. 😊
@will How about when people complain they're being criticized?
@eldersnake Yeah, my idea is building modern looking websites with old, battle tested tech.
@eldersnake Yeah, I'll have to add the HowTos there at some point.
@adi @eldersnake I'm also considering running pp
via CGI and building a simple dynamic cms but there are some security issues there I have to solve.
@eldersnake Yeah, I'm under the impression that we're automating maybe too much in programming and maybe too early when some little manual work could easily do the job with less complexity.
The alternative is what Hugo does, a single binary and having the static site as "source code" which Hugo compiles, but I believe the idea of customizing the main mkws script is really nice, I'm replacing config files with just scripting your generator, updating may be a problem but there's not much to update there anyway.
@adi @eldersnake Do you believe it's a good idea to just download the bundled files (main script, statically compiled binaries and templates) and customize everything in place?
@eldersnake Not a big fan of mixing C code and HTML. I belive PHP kinda nailed it when it comes to websites, nesting dynamic code with HTML, it's an inspiration for pp
.
@eldersnake How did you find out about mkws
?\n\nFor \n<a href="https://google.ro"></a>
\n\npp -d
outputs\n\necho "<a href="https://google.ro"></a>\n"
\n\nand pp
outputs\n\n<a href=https://google.ro></a>
\n\nSo when using double quotes the output is unpredictable.