Hey all,

Another long post.


TLDR: leave the core language development strategy untouched, re-redo the
website, and migrate documentation to GitHub/Stack Overflow.


Re: Git(Hub) for the core language... I'm also on Alex's side here. His
time for core development is invaluable. We would be wise to keep the
process as frictionless as possible for him. No need to fix what isn't
broken.

This conversation seems to come up every year. We all spend a while
rehashing the same arguments, and nothing changes.

Now, I agree that there is a problem with the future of PicoLisp. But it
does NOT have to do with the core language and whether it's hosted here or
there or whatever.

Here's an idea that's been bouncing around my head. I think it could
address some of the problems we're facing (more on that below).

'Learn PicoLisp the Hard Way'

I'm currently working through Zed Shaw's 'Learn C the Hard Way'. It's a
wonderful book, meant for people who already know the basics of programming
(they've learned a language or several). Starting out with the C basics,
the book quickly ramps up. After 52 exercises the student is dropped off on
the far side of intermediate C programming. They have a solid command of
the language, can read and write proficiently, have built a handful of
non-trivial projects along the way, and thus become familiar with common
libraries and tooling in the ecosystem.

The book is also huge on what Zed calls the 'Defensive Programming
Mindset'. For each exercise, there is a section on how to break the code.
So the student learns how to mess up each program in different ways,
exposing all sorts of weird behavior. It shows that the C compiler is not
your friend and really couldn't care less if you trample all over memory.
Through this breaking process, the student learns so much about the
language, common pitfalls, and how to defend against them. This practice
would pair well with PicoLisp, an even more powerful and potentially abused
language.

So I'm proposing a community driven project of 'Learn PicoLisp the Hard
Way'. This would be great for several reasons:

As Lindsay mentioned, PicoLisp lacks a project that the whole community is
behind. We're a bunch of individuals hacking our own stuff, asking Alex
similar questions over and over again. So let's make it a community sourced
project, we'll use GitHub. Boom! Strong GitHub presence checked off the
list.

PicoLisp lacks a coherent front for documentation. So let's distill all
PicoLisp knowledge into a series of 52 exercises. Make it the new face of
PL documentation. Start here, work through this book, and when you're
finished you'll be a strong member of the PicoLisp community. This would
alleviate 'mailing list fatigue'.

Honestly it's mostly an editing challenge. There is so much code buried in
this list and scattered throughout the internet. We just need to assemble
it into a series of exercises that build on each other.

The progression might be something like this:

Set up environment -> Lisp fundamentals -> OOP/DB -> Web Apps w/GUI ->
distributed DB's -> 'native' C stuff -> put it all together for something
awesome (like, idk, a text editor written in PicoLisp?!)

We'll also whip up some short video lectures to accompany the exercises in
the book.

'Learn PicoLisp the Hard Way'

What do you think?

And for the record, I believe Mr. Shaw is onboard with this idea - or at
least he was at one point. Search for 'Learn X the Hard Way'.


Finally some other thoughts as to how we can continue to improve the future
of PicoLisp...

Let's be real, the wiki sucks. I say this as the guy who spent many many
hours last year redesigning it, editing content, trying to make it more
coherent, etc. It's still a mess. The UI is clunky. Its overwhelming for
newcomers. And no one wants to deal with yet another markup language
(though I'll admit I've grown rather fond of it).

Let's build picolisp.com from scratch. Still in written in PicoLisp, duh!
Make it a simple, beautiful, modern, responsive home page. And only a home
page. Something like what I had in mind here, but better:

https://github.com/erdg/picolisp-website

(that is sooo late 2015, lol)

So a simple landing page that introduces the language and loudly points to
our new book, 'Learn PicoLisp the Hard Way'. Then we transition the
documentation to GitHub and Stack Overflow, so the whole internet can be
impressed by how active our community is.

And let's make sure said landing page is served over HTTPS. It's 2017.

Whelp, that was a lot. Take sometime to digest, and then please rip these
ideas to pieces, folks!

"The night is darkest just before the dawn. And I promise you, the dawn is
coming."

-- Some dude in some Batman movie


Peace and PicoLisp y'all!

- Erik

Reply via email to