Introducing TW5 to a beginner

190 views
Skip to first unread message

Joe Armstrong

unread,
Feb 19, 2018, 8:09:09 AM2/19/18
to TiddlyWiki

Suppose I was trying to explain the TW to a complete beginner who is
*not* a programmer.

In the old TW, if I remember rightly, there was a tiddler called
'Title' - if you changed the content of the 'Title' tiddler to 'Joes
Blog' - then the TW would magically be named 'Joe Blog'.

This is easily to explain and demonstrate - but even this might be
perceived as difficult by a total beginner - taking the first step is
always the most difficult.

In TW5 'Title' is called '/$SiteTitle' - I can imagine very good
reasons for this - one might accidentally choose the word 'Title' and
change it with rather puzzling results (if you didn't know what you
were doing)

It wasn't exactly obvious to me that the tiddler '/$SiteTile' was the
thing to change. So this needs some explanation.

I want to make an explanation that starts with empty.html (the empty

I was thinking about introducing the TW as follows:

Step 1)

How to create a page. This is easy. Click on "+"
make the page and store it. I'll call it 'JoesPage'

Step 2)

Find the page we just created.

This is easy if I don't close the first page - it appears in the menu
under the Open Tab.

But If I close it it vanishes.

So click on the 'Recent' tab.

Is this *obvious* to a total beginner?

Step 3)

Make the page I just created appear in a 'Contents' tab

How do I do this????

Step 4)

Create a page from a page.

This time we edit an existing page and add a link, which when clicked
will create the page

Step 5)

Show the amazing power of list transclusion (is this the correct term)

Step 5a) Create a page called ToDo

Add the single line

<<list-links "[tag[todo]]">>

Step 5b) Create any page and add the tab 'todo'

Step 5c) Go to the ToDo page and magically the page you just added
appears

Step 6)

Talk about tags and filters. We two tags 'todo' and 'done'
we can change the ToDo page to

    <<list-links "[tag[todo]!tag[done]]">>

And make a 'CompletedTasks' page with

    <<list-links "[tag[todo]tag[done]]">>

Is this a good order? - Is there an event simpler ordering of concepts????

Now to the subject of "magic" (shadow tiddlers)

I want to introduce TW5 to a complete beginner who is not a programmer

Certain tiddlers (like '/$SiteTitle') have an immediate effect on the
site and are easy to understand. Others are far more difficult to understand.

So in what order would you introduce the shadow tiddlers - I'm assuming
'$/SiteTitle' is #1 - or is there an even easier and more direct tiddler
(say to change the background color)

How about tags with side effects. I discovered the tag 'TableOfContents'
caused the tiddler in question to appear in the 'Contents' tab
of the sidebar - What are the most important tags that one would introduce to
a beginner????

Cheers

/Joe

TonyM

unread,
Feb 19, 2018, 2:36:31 PM2/19/18
to TiddlyWiki
Joe,

Unfortunatly good training for beginners is hard to write because you need to be an expert who can also imagin what it is to begin.

In your example you are calling the sitetitle "title" and since every tiddler has a title you are setting the beginner up for confusion. It can be difficult but I think you need to discuss what a tiddler is at the beginning because page will also misslead. Search for tiddlywiki for beginers or tiddlywiki sunnytech for some ideas.

I too intend to write material to help new users but I am very aware of how difficult it can be to appear simple.

Best wishes
Tony

Jeremy Ruston

unread,
Feb 19, 2018, 5:31:31 PM2/19/18
to tiddl...@googlegroups.com
Hi Joe

In the old TW, if I remember rightly, there was a tiddler called
'Title' - if you changed the content of the 'Title' tiddler to 'Joes
Blog' - then the TW would magically be named 'Joe Blog’.

It was called “SiteTitle” in TiddlyWiki Classic.

This is easily to explain and demonstrate - but even this might be
perceived as difficult by a total beginner - taking the first step is
always the most difficult.

In TW5 'Title' is called '/$SiteTitle' - I can imagine very good
reasons for this - one might accidentally choose the word 'Title' and
change it with rather puzzling results (if you didn't know what you
were doing)

That’s exactly the reason for the change. The “$:/” prefix identifies a “system tiddler”, which means that it will be omitted from most of the sidebar lists and searches. It’s a simple way to hide the scaffolding of a TiddlyWiki so that those tiddlers don’t fill up the lists.

It wasn't exactly obvious to me that the tiddler '/$SiteTile' was the
thing to change. So this needs some explanation.

Absolutely.

I want to make an explanation that starts with empty.html (the empty

I think the quickest route is:

* Click the cog icon in the right hand sidebar to open the control panel
* Locate the text box labelled “Title of this TiddlyWiki” and type the title for this TiddlyWiki
* Optionally, click on the label “Title of this TiddlyWiki” itself to open the tiddler titled “$:/SiteTitle” and see that it is the underlying value, and can be edited just like any other tiddler

In fact, the “GettingStarted” shadow tiddler in empty.html includes a prompt for the site title and subtitle.

But If I close it it vanishes.

So click on the 'Recent' tab.

Is this *obvious* to a total beginner?

A good question. The goal is to have few enough things going on in empty.html that a user might be induced after a while to explore the interface (tooltips etc) driven by “what is this thing here?” rather than “how do I?” questions. Perhaps it’s the principle of old fashioned “Adventure” games: if you find yourself in a cabin in the snow with only a plus sign, a cog, and a down arrow, then eventually you’ll click them to see what happens.

Step 3)

Make the page I just created appear in a 'Contents' tab

How do I do this????

The “Contents” tab is currently not present by default in an empty tiddlywiki. There’s probably a strong case that we should incorporate it, but the present situation means that users need to learn some TiddlyWiki basics to get a table of contents:

* How to create a new tiddler
* How to invoke a macro
* How to tag tiddlers to thread the TOC together

Show the amazing power of list transclusion (is this the correct term)

The docs call it “filtered transclusion” (ie where we transclude all the tiddlers identified by a filter), but we could do with a better term.

Step 5a) Create a page called ToDo

Add the single line

<<list-links "[tag[todo]]">>

Step 5b) Create any page and add the tab 'todo'

Step 5c) Go to the ToDo page and magically the page you just added
appears

Perhaps this is the point to introduce the TOC macro; it’s an extension of this simple one dimension list.

Is this a good order? - Is there an event simpler ordering of concepts????

I’m also compelled by the idea that there exists an optimal ordering, at least for the basic internal concept and UI. We probably need a multiplicity of step-by-step tutorials for different audiences — imagine how one would teach TiddlyWiki to a Lisp programmer.

Now to the subject of "magic" (shadow tiddlers)

I want to introduce TW5 to a complete beginner who is not a programmer

Certain tiddlers (like '/$SiteTitle') have an immediate effect on the
site and are easy to understand. Others are far more difficult to understand.

So in what order would you introduce the shadow tiddlers - I'm assuming
'$/SiteTitle' is #1 - or is there an even easier and more direct tiddler
(say to change the background color)

The most visceral characteristic of a shadow tiddler is that if you modify one you can always revert by “deleting” your overridden value and thus restoring the underlying shadow. So, I like to show that, and then only much, much later start to talk about how shadow tiddlers are actually the payload tiddlers of plugins.

How about tags with side effects. I discovered the tag 'TableOfContents'
caused the tiddler in question to appear in the 'Contents' tab
of the sidebar - What are the most important tags that one would introduce to
a beginner????

The “TableOfContents” tag is only special in that it is referenced by the “TableOfContents” tiddler in tiddlywiki.com. The special tags built into the core can be seen in the docs: https://tiddlywiki.com/#SystemTags

Best wishes

Jeremy


Cheers

/Joe


--
You received this message because you are subscribed to the Google Groups "TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywiki+...@googlegroups.com.
To post to this group, send email to tiddl...@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywiki/b15d4757-c56c-42d7-b3f2-70573b910740%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Steven Schneider

unread,
Feb 21, 2018, 9:44:34 AM2/21/18
to TiddlyWiki
Hi Joe,

I've struggled with this through several iterations of my class at SUNY Poly (old name: SUNYIT). I've moved students through various versions, including what is now TiddlyWiki Classic, TiddlySpace, TiddlyWiki5 via Updog/Google Drive, and now primarily TiddlyWiki5 using tiddlywiki5.tiddlyspot.html as a wiki creator.

This year, with some success, I've pushed students to just learn how to do basic things in TiddlyWiki, and then slowly come to an understanding of what it is. So we create a new wiki, make a new tiddler, write links using [[square brackets]], add tags to tiddlers, begin to write lists using <<list-links>> and then <$list>, write transclusions of {{!!fields}} and {{tiddlers}}, and then surprisingly quickly move into using templates. 

After that immersion, we step back and begin to identify other aspects of the tiddlywiki such as "title" and sidebars etc. But they've got a solid foundation to build on.  Of course, I have captive students who are committed to investing 4-10 hours per week. And they struggle.

You might find some insight by looking at the exercises I've created in DesignWriteStudio

//steve.
Reply all
Reply to author
Forward
0 new messages