diff --git a/about-filter.sh b/about-filter.sh index ae45959..2e377c1 100755 --- a/about-filter.sh +++ b/about-filter.sh @@ -1,3 +1,13 @@ #! /bin/sh -/bin/markdown +tryexec () { + command -v $1 >/dev/null && exec "$@" +} + +tryexec pandoc -f markdown -t html +tryexec markdown + +echo "no markdown thingies found

" +echo "
"
+cat
+echo "
" diff --git a/cgitrc b/cgitrc index 238aeb2..20a4a18 100644 --- a/cgitrc +++ b/cgitrc @@ -2,6 +2,7 @@ strict-export=git-daemon-export-ok about-filter=/home/neale/public_html/about-filter.sh readme=:README.mdwn +readme=:README.md readme=:README section-from-path=1 diff --git a/g.cgi.go b/g.cgi.go index bbf671c..3dbc3fa 100644 --- a/g.cgi.go +++ b/g.cgi.go @@ -11,7 +11,7 @@ import ( const GitProjectRoot = "/home/neale/projects" const CgitConfig = "/home/neale/public_html/cgitrc" -const Cgit = "/usr/lib/cgit/cgit.cgi" +const Cgit = "/opt/cgit/cgit.cgi" // printf "USER:PASS" | base64 | while read a; do printf "%s" "$a" | md5sum; done var allowed = []string{ diff --git a/install b/install index a763ce9..b6ea0bf 100755 --- a/install +++ b/install @@ -31,7 +31,7 @@ cc () { } gc () { - target=$DESTDIR/${1%.c} + target=$DESTDIR/${1%.go} if older $target $1; then echo "GO $1" go build -o $target $1 diff --git a/mp.cgi.go b/mp.cgi.go index 2db1fd3..00fb75d 100644 --- a/mp.cgi.go +++ b/mp.cgi.go @@ -7,6 +7,13 @@ import ( "sync" ) +var hosts = []HostEntry{ + {"h.woozle.org:30919", "Ginnie (tablet)"}, + {"h.woozle.org:44321", "Ginnie"}, + {"h.woozle.org:58000", "Amy"}, + {"h.woozle.org:29837", "Neale"}, +} + const MAGIC = "\x00\xff\xff\x00\xfe\xfe\xfe\xfe\xfd\xfd\xfd\xfd\x12\x34\x56\x78" func isAlive(host string) bool { @@ -41,12 +48,6 @@ type HostEntry struct { owner string } -var hosts = []HostEntry{ - {"h.woozle.org:30919", "Ginnie"}, - {"h.woozle.org:44321", "Neale"}, - {"h.woozle.org:58000", "Amy"}, -} - func ping(results chan<- string, e HostEntry) { defer wg.Done() if isAlive(e.host) { diff --git a/papers/floss-sucks.mdwn b/papers/floss-sucks.mdwn new file mode 100644 index 0000000..9ad2920 --- /dev/null +++ b/papers/floss-sucks.mdwn @@ -0,0 +1,184 @@ +Title: FLOSS Development Sucks + +This Article Is A Work In Progress +==================== + +I'm not even sure where I'm going with this. +Maybe I just needed to vent. +I think there might be advice in here somewhere, +but right now I'm tired of feeling pissed off, +so I'm just going to save this and move on with my day. + +------------ + +This morning I thought I'd mention to a couple old colleagues +that I was still working on our codebase, +and I was considering splitting it off into something new +because it was looking like it might diverge pretty significantly. + +I've been on this IRC channel for about a month. +There have been a sum total of 5 lines pasted, +all of them saying "hello" and "help" before anybody answered. +5+ years ago, +it was just me, the author of the package, +and another guy (the author of ratpoison), +mostly just shooting the breeze about bicycles. +The author had mentioned several times that the package was basically out of his hands, +once it got merged into emacs. + +I've submitted a couple patches in the past, +and they've been accepted upstream. + +So I tossed this out there expecting, if anything, a multi-day turnaround, +hopefully from the author: + +> 08:32 neale> hello +> 08:32 neale> I think I'm going to have to fork rcirc :( +> 08:33 neale> I'm making too many changes and I don't have time to get them merged into emacs. + +And then went back to work. + +> 08:44 ams> what changes are you doing? + +Whoa, somebody responded! + +> 09:09 neale> I added a notion of "network" so you could have and distinguish multiple connections to the same server +> 09:09 neale> umm... + +At this point I struggle to do a diff against the upstream source, +to see what else I've done. +I definitely wasn't expecting this right away, +I figured I'd maybe put things up on github or something. + +> 09:11 ams> you can already do that afaik +> 09:11 [neale raises an eyebrow] + +Who is this person? +I read over the code pretty thoroughly before I added this in, +I think I would have noticed if anything resembling my changes had existed already. + +Back do the diff, it looks like all my prior changes have actually been merged upstream, +after five years or so! +That's a pleasant surprise! + +> 09:12 ams> but if you cannot .. that doesn't seem like a hard thing to merge +> 09:12 neale> I'm going to have to figure out a way to hack in support for channel passwords +> 09:12 neale> that's going to probably need to break syntax +> 09:12 ams> break syntax? of what? +> 09:13 ams> you are being incoherent. +> 09:13 neale> next on the list is I need a way to have channels default to lowpri/ignore when created, so, probably going to tack that on to rcirc-server-alist + +This happens sometimes on IRC. +While I was writing that long line, they posted two more. +I see I should now answer their other questions. +But now they're insulting me? +Who *is* this person? +Are they just wasting my time because they like arguing? + +> 09:13 neale> of /join +> 09:13 neale> right now /join takes a space-separated list of channels, I'll probably need to bring that in line with how other clients handle multiple channels with a single join (or more likely change it to space-separated) +> 09:14 neale> sorry, change it to comma-separated + +I'm getting flustered here. +I wasn't expecting to need to defend my changes. + +> 09:14 ams> why? +> 09:14 ams> setting default priority should be trivial, and no need to change rcirc-server-alist + +This didn't even register with me until I started writing this paper. +I told them I needed channels to start with a certain priority, +so I was going to add that to the list of channels to connect to at startup. +They referred me to the mechanism to set a global default. + +> 09:14 neale> ams: see, this is what I was saying about not having time to merge upstream :) +> 09:15 neale> but it's good to know that there's somebody alive in here :) + +Yeah, I think this person isn't going to help. +It's pretty typical that you have to do a sales pitch, +over and over, +to get your changes accepted. +And I don't have time for that. +I've already wasted enough time just trying to convince this one person +that there was even a need for the work I've done so far. + +> 09:15 ams> you just said you haven't even written it .. +> 09:15 ams> there is nothing to merge. +> 09:15 neale> LOL okay + +Still feeling this person is just trying to waste my time and get me into an argument. +I probably should have just stopped here, but... + +> 09:15 ams> and half of the things you mention can already be done +> 09:15 neale> maybe you could write up how to do those things then, because it certainly wasn't obvious from the code :) + +If this person had been paying attention, +a full 20% of last month's channel traffic had been requesting this exact feature. + +> 09:17 ams> i don't see the use for multiple connections to the same host on the same port, most networks prohibit that. +> 09:17 neale> hahaha, excellent +> 09:17 ams> you can already connect to multiple hosts though with different port numbers +> 09:17 neale> Stop Wanting That! + +Now I'm mad! +They're not even interested in why I would want the feature I coded up. +They just want to tell me I'm wrong. +This is the point at which I completely gave up, +and was just saying words out of anger. + +I don't do well when I'm like this, +but I know some people who are *excellent* in this situation, +like my friend Nick. +Sometimes I wish I were better, +because people like this, +I feel, +need to be put in their place, +and stop being hostile to everybody. + +> 09:17 ams> simply specify a different port +> 09:17 ams> ok, you are trolling. i'll go back to doing something else. +> 09:18 neale> I'm trolling, eh? +> 09:19 neale> Man, look, I'm coming in with a need, you're telling me that a) it already does what I want, b) I don't actually have changes, and c) there's no need for me want what I said + +I'm still trying to (angrily) convince them +that this is a horrible way to treat people they don't even know. + +> 09:19 ams> no, i didn't say that at all. now you are just spouting lies. +> 09:19 ams> 17:19 /ignore neale +> 09:19 neale> Who's trolling? Anyway what happened to rcy and sabetts? They were friendly :( +> 09:20 neale> Wow, infuriating. + +But it's a lost cause. + +---- + +This is pretty frequently how things go. +I wish I'd saved the 20-minute argument I had to endure +to convince some plan9 people +that some users might want a their three-button mouse to have a scroll wheel. +They eventually accepted that, +yes, +some users might actually want that, +and what was the mouse I'd found that does this? + +This is not okay. +The community is selecting for people who are good at arguing. +We should not require every code contributor +to champion their code's worth +by besting the local troll in combat. +Even though I envy Nick's level-headedness during empassioned debate, +that skill has no correlation to the ability to make useful code contributions. + +In the troll's defense, +this is just human nature. +Say there's this group of men discussing mortise and tenon joints, +and you have a better technique. +The way things work in FLOSS, currently, +is that you must step into this group an tell them they're doing it wrong. +It takes an extraordinary individual to *not* tell you to fuck off. +And you know that, +which is why your social instincts are screaming at you to be very uncomfortable. +So when the "fuck off" happens, +you've steeled yourself for it, +and then you get a slap fight. + +There has got to be a better way. diff --git a/papers/joke-haiku.mdwn b/papers/joke-haiku.mdwn index 371788e..43b6196 100644 --- a/papers/joke-haiku.mdwn +++ b/papers/joke-haiku.mdwn @@ -351,17 +351,17 @@ as a creative force. Consider this haiku about commuting: -> Sitting in my car -> I watch the time tick away +> Sitting in my car +> I watch the time tick away > This traffic sure sucks. Pedestrian and boring, it took all of ten seconds to write. To write a limerick on the same subject, one must work much harder: -> Nothing's worse, there can be no dispute, -> Than my everyday average commute. -> In my car long I sit. -> I just might throw a fit +> Nothing's worse, there can be no dispute, +> Than my everyday average commute. +> In my car long I sit. +> I just might throw a fit > If I can't find an alternate route. Okay, so it's not the best limerick that's ever been written, but in a diff --git a/tmpl/mdwntohtml b/tmpl/mdwntohtml index b96251a..5a72c86 100755 --- a/tmpl/mdwntohtml +++ b/tmpl/mdwntohtml @@ -35,7 +35,7 @@ cat <$title EOD cat $tmpl/head.tmpl -markdown +pandoc -f markdown -t html5 cat $tmpl/foot.tmpl cat <