Discussion:
[urbit] Draft of new top down tutorials
Henry Ault
2015-12-18 22:09:17 UTC
Permalink
Hello!

We (pcmonk and I) have been working on some top-down guides for learning
hoon / urbit. These are definitely first drafts, but it would be
interesting to hear feedback from the list. Feel free to share them, but
they’re not quite ready for HN.

For the time being, they’re on one of pcmonk’s moons:
http://radsum-balteb-wictuc-folrex.urbit.org/home/tree/pub/docs/dev/hoon/leap-in/basic

Questions and comments are more than welcome.

Henry
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Dan Haffey
2015-12-21 00:47:22 UTC
Permalink
Good stuff! I think I've got a much better handle on what goes on in %gall
apps now. Some notes from working through it:

- In the chapter on network messages, ost (the bone) is mentioned briefly,
but if you're not familiar with Hoon then it's pretty surprising that you
can reference it simply because there's a faceless bowl in the subject. The
state chapter mentions looking in zuse.hoon to see what's *in* the bowl,
but I think it's also worth mentioning the difference between faceless
bowl/ost vs hid=bowl/ost.hid. The first time I ran into code that did =+
faceless-thing and starting referencing into it, it took me a couple
minutes to figure out where the mysterious "undeclared" variables were
coming from.

- Extra "multiply it by three and add one" in the Collatz exercise.

- Several of the examples requires creating new directories (for eg,
/pub/click/hymn.hook), but the sync machinery instantly removes empty
directories, so it's not clear how to create the requisite files. I ended
up racing the sync by doing `mkdir pub/click; touch pub/click/hymn.hook`
and then editing the file. Didn't look for an existing GH issue on this,
but it probably warrants one.

- The chapter on web apps references some material I'm pretty sure wasn't
in the earlier chapters... "We've done purely functional web pages as hook
files", and "You should recognize the sail syntax from an earlier chapter".

- Wrong URL for the click app, should be /~~/examples/pub/click instead of
/~~/home/pub/click. The latter just gives a blank page with no indication
anything went wrong.
Post by Henry Ault
Hello!
We (pcmonk and I) have been working on some top-down guides for learning
hoon / urbit. These are definitely first drafts, but it would be
interesting to hear feedback from the list. Feel free to share them, but
they’re not quite ready for HN.
http://radsum-balteb-wictuc-folrex.urbit.org/home/tree/pub/docs/dev/hoon/leap-in/basic
Questions and comments are more than welcome.
Henry
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Philip Monk
2015-12-21 02:48:40 UTC
Permalink
Thanks for the feedback!

- regarding deleted directories, that is indeed the official workaround.
Another workaround is to copy a non-empty directory in. There's a 50ms
delay on sync, do anything that populates the directory in that time will
work. There is an issue about this somewhere.

- there is indeed a missing chapter that Henry is still writing. It's
intended to go between chapters one and two.
Post by Dan Haffey
Good stuff! I think I've got a much better handle on what goes on in %gall
- In the chapter on network messages, ost (the bone) is mentioned briefly,
but if you're not familiar with Hoon then it's pretty surprising that you
can reference it simply because there's a faceless bowl in the subject. The
state chapter mentions looking in zuse.hoon to see what's *in* the bowl,
but I think it's also worth mentioning the difference between faceless
bowl/ost vs hid=bowl/ost.hid. The first time I ran into code that did =+
faceless-thing and starting referencing into it, it took me a couple
minutes to figure out where the mysterious "undeclared" variables were
coming from.
- Extra "multiply it by three and add one" in the Collatz exercise.
- Several of the examples requires creating new directories (for eg,
/pub/click/hymn.hook), but the sync machinery instantly removes empty
directories, so it's not clear how to create the requisite files. I ended
up racing the sync by doing `mkdir pub/click; touch pub/click/hymn.hook`
and then editing the file. Didn't look for an existing GH issue on this,
but it probably warrants one.
- The chapter on web apps references some material I'm pretty sure wasn't
in the earlier chapters... "We've done purely functional web pages as hook
files", and "You should recognize the sail syntax from an earlier chapter".
- Wrong URL for the click app, should be /~~/examples/pub/click instead of
/~~/home/pub/click. The latter just gives a blank page with no indication
anything went wrong.
Post by Henry Ault
Hello!
We (pcmonk and I) have been working on some top-down guides for learning
hoon / urbit. These are definitely first drafts, but it would be
interesting to hear feedback from the list. Feel free to share them, but
they’re not quite ready for HN.
http://radsum-balteb-wictuc-folrex.urbit.org/home/tree/pub/docs/dev/hoon/leap-in/basic
Questions and comments are more than welcome.
Henry
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2015-12-21 17:13:37 UTC
Permalink
Post by Dan Haffey
Good stuff! I think I've got a much better handle on what goes on in %gall
- In the chapter on network messages, ost (the bone) is mentioned briefly,
but if you're not familiar with Hoon then it's pretty surprising that you
can reference it simply because there's a faceless bowl in the subject. The
state chapter mentions looking in zuse.hoon to see what's *in* the bowl,
but I think it's also worth mentioning the difference between faceless
bowl/ost vs hid=bowl/ost.hid. The first time I ran into code that did =+
faceless-thing and starting referencing into it, it took me a couple
minutes to figure out where the mysterious "undeclared" variables were
coming from.
- Extra "multiply it by three and add one" in the Collatz exercise.
- Several of the examples requires creating new directories (for eg,
/pub/click/hymn.hook), but the sync machinery instantly removes empty
directories, so it's not clear how to create the requisite files. I ended
up racing the sync by doing `mkdir pub/click; touch pub/click/hymn.hook`
and then editing the file. Didn't look for an existing GH issue on this,
but it probably warrants one.
It might be worth creating a %touch app for urbit so you can initialize the
file from there instead of racing urbit's sync code.

I would work on it but I experienced computer failure over the last few
weeks and my urbit environments are gone ,RIP hidduc :-(. I have to set up
one of my backup planets first and I've been busy catching up on my day job
instead :-(
Post by Dan Haffey
- The chapter on web apps references some material I'm pretty sure wasn't
in the earlier chapters... "We've done purely functional web pages as hook
files", and "You should recognize the sail syntax from an earlier chapter".
- Wrong URL for the click app, should be /~~/examples/pub/click instead of
/~~/home/pub/click. The latter just gives a blank page with no indication
anything went wrong.
Post by Henry Ault
Hello!
We (pcmonk and I) have been working on some top-down guides for learning
hoon / urbit. These are definitely first drafts, but it would be
interesting to hear feedback from the list. Feel free to share them, but
they’re not quite ready for HN.
http://radsum-balteb-wictuc-folrex.urbit.org/home/tree/pub/docs/dev/hoon/leap-in/basic
Questions and comments are more than welcome.
Henry
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...