Clint’s Thoughts how I spend my five minutes of freedom


Viewing a page’s source thats been altered by JavaScript

As Ajax becomes more widely used I've noticed more and more instances when I would want to view the page's source after it has been rearranged by some script or other.

This is a piece of cake in Firefox. All you need to do is install the View Rendered Source extension by Jennifer Madden.

This simplifies the source immensly. No guessing on what is where, and its displayed in the familiar HTMLized view. Very handy. Now, there comes a time in every developer's life where Internet Explorer behaves... differently. How can you view the rendered source in this instance?

That's the real reason behind this post. I just found View Rendered Source for IE tool by Bill Friedrich. Finally I can check to see what IE is messing up. (Install it by going to the site and opening the zip file, right-clicking on the .inf file and selecting 'install')

Once either of these plugins is installed, right-click on the web page and select 'View Rendered Source'

Filed under: General 2 Comments

Nifty WordPress Plugins

Its time I really dove into posting on this blog So first I might as well get WordPress into the shape I want.

Just a bunch on WordPress plugin links so I can find these later.
WP Database Backup
Image Uploader for posts
Stats Tracking
Photo Press
Image Browser
Author Highlight
Google Analytics Plugin
Tiger Admin Interface

Feel free to let me know of any neat plugins that I could use.

Filed under: Uncategorized 1 Comment

Where are other TW users from?

Frapper uses the Google Maps to create an interface where anyone can go and put a 'pin' in the map showing where they are from.

I created one for TiddlyWiki Users. It's pretty slick to see where different TW folk are from, you can even post a picture of yourself (if you choose) that goes along with your map 'pin'.

Go put yourself on the map!

Also, as a side note, today I am now 24 years old.

Filed under: General No Comments

TiddlyWiki Developer Quiz

Call me old fashioned, but I find it to be nice to know who I'm talking to or working with. I contribute to the TiddlyWiki GoogleGroups and enjoy it, but every now and then, I just wonder what l33tW1k1, Simon Baird, or Jeremy Ruston look like.

I grabbed a few photos from off the web an threw together a simple quiz. If you would like your photo in the next quiz, email me it. Lets see if you can guess who's who from a random couple of TW developers:

Update: The developers here are: Clint Checketts (me!), Paul Petterson, Eric Shulman, Alan Hecht, Simon Baird, and (of course) Jeremy Ruston! Guess who is who.

A- Alan Hecht- crafter of useful TW extensions

Subject A

B- Clint Checketts (with little Daniel)- Me!

Subject B

C- Jeremy Ruston, boy genius, creator of TiddlyWiki

Subject C

D- Paul Petterson- RegEx KBE

Subject D

E- Eric Shulman- Extension, Macro genius

Subject E

F- Simon Baird- of Monkey Pirate TiddlyWiki

Subject F

Feel free to post guesses in the comments.

Update: Daniel Baird wins a free glass of milk. That is, unless the Strawberry Cows get it first.

Filed under: General 10 Comments

Quick and easy install for pytw on DreamHost

First of all, let me introduce pytw. Its motto is 'pytw - very simple'. Is so simple it avoids uppercase letters. You don't get much simpler than that.

The motto actually confused me at first. I though pytw was going to be incomplete or just aimed a copying a TiddlyWiki file to a server. I'm glad to be wrong. The simple ideal is to keep it agile and modular regarding development.

My personal knowledge of Python can be summarized by three words: non-existant. So installing pytw wasn't going to be easy (or so I thought). Since I'm still a novice with the command line, I'll show you how to install it without using the command line. (Okay I lie, I'll give you a tip or two on the command line)

Step 1: Acquire and Unzip

First of all go download the pytw package from its website. Then, you need to expand it, my prefered method is to use 7-zip, it takes two passes then you have a folder named pytw with all the necessary files.

Step 2: Alter the index.cgi file

Now in the pytw folder, edit the file called 'index.cgi' Change the first line from #!/usr/bin/env python2.4 to #!/usr/bin/python Notice how there are no spaces in there. None. Don't think about putting them (unless you know exactly what you are doing, unlike myself).

Here's the command line part: you can use the which python command on the server and if it has python, it should tell you where python in installed

Step 3: Upload everything

Save you 'index.cgi' then open a useful ftp program. I'm using Smart FTP though Filezilla works well too. Once it finishes uploading go to the 'index.cgi' file and change its permissions to 755.

(Command line equivalent: go to the directory its in and enter: chmod 755 index.cgi)

You can now access your site from the internet. It now totally works. Of course, there are pytw modules and other such things, but thats beyond my experience. Maybe I'll write about those kinds of things once I master them.

Step 4: You probably need to make the directory writable (I didn't have to though!)

On my dreamhost server the directory is automatically given permissions of 755, so the web server can write and store the tiddler stuff there without any help. If you have problems you probably need to do a chmod 755 store -R. This goes and make the store directory like it needs to be (the -R tell is to goe recursively and set it up with each subfolder and file as well.)

Feel free to offer comments, corrections, and compliments in the comments.

Filed under: General 3 Comments

Editing a TiddlyWiki on a server, sans serverside backend

Lets say you have a WebDav server. Actually, you probably don't have a WebDav server, but you have an FTP server. (Lets also say that you have MS Windows) Okay so you can login, upload the TiddlyWiki files, and have somewhere where others can view yoursweet site, right?

Now lets say that you want to open you TiddlyWiki file from your server and edit it like its a local file within your browser. Impossible? Sure. Now, here's how you can do the impossible:

The solution is Novell NetDrive (5 MB). I found it here: You can Google it to download also, its free and works great (at least it has for the full ten minutes that I've used it :) ).

Install it and run it. It will allow you to map a webdav folder or an ftp site as a local drive. Let me repeat this (as it is pretty cool)

Map an FTP server as local drive.

Map a WebDav server as local drive.

Then, you can just drag your TiddlyWiki over, open it in your browser and edit it. Nice? Right. Very. Now follow this link and show your gratitude:

(Or just share the info and help others along the way)

Filed under: General Comments Off

How to move the sidebar under the mainMenu

Update: This technique only worked with Version 1.2 of TiddlyWiki. TW 2.0 uses templates for rearranging the structure. I'll try to clean this up noting 2.0 differences some time. The main thing is to edit the PageTemplate shadow tiddler and leave out the javascript.

Before we attempt to rearrange the page's layout, it is important to understand the page's structure. What is the page's structure? Think of a tree. The base element for a web page is the HTML element, like the trunk of a tree. Many elements branch out of the HTML element and even more elements branch out of those elements. So the page's structure branches out like a tree. Got it?

Now the elements that we are concerned with are the MainMenu and Sidebar. Here's how they sit in TiddlyWiki:

* ContentWrapper
* * Sidebar
* * * SidebarOptions
* * * SidebarTabs
* * mainMenu
* * DisplayArea (where the tiddler's are)

To move the sidebar under the MainMenu we have to move it in two ways: 1) we need to place the MainMenu before or at the top of the sidebar (using JavaScript) and 2) we have to change how it displays on the page (using CSS).

Create a tiddler and name it whatever you want. ('HTML Structure' is usually a good name.) Give it the tag of 'systemConfig'. This will make it execute the JavaScript in the tiddler the next time the page is refreshed. Now insert the following code:

var sidebar = document.getElementById('sidebar');

This 'grabs' the sidebar then grabs the mainMenu element and moves it to be before the sidebarOptions element. Save your TiddlyWiki file and refresh it. This will execute the new HTML Structure tiddler and rearrange the page structure. Now the page's structure looks like this (notice where the mainMenu has moved to):

* ContentWrapper
** Sidebar
*** ''mainMenu''
*** SidebarOptions
*** SidebarTabs
** DisplayArea (where the tiddler's are)

You may be scratching your head wondering why we need to do anything else. In the TiddlyWiki the mainMenu is overlapping the sidebar and its still on the wrong side of the page. We'll fix it with CSS.

CSS rules allow you to change how the page displays. They're pretty easy to understand once you see them written out. We'll just add a few rules that undo the default TiddlyWiki styles.

Create a tiddler named 'StyleSheet' and add the following rules:

position: static;
left: 0;
margin-right: 0;

The first rule turns off a 'position: absolute;' rule. Absolute positioning is what make the mainMenu overlap the sidebar. 'Static' tells the sidebar to move on down and display after the mainMenu.

The second rule tells the sidebar to be zero pixels from the left side of the screen. It was set at 'right:0;' by TiddlyWiki before.

The final rule is actually not necessary but once we move the sidebar to the left side of the screen we want to let the tiddler's fill in the empty area again. So we remove the displayArea's right margin.

To keep the TiddlyWiki useable you'll probably want to keep the mainMenu realatively short. Next time I'll show you how to make your mainMenu horizontal and part of the header.

Filed under: General Comments Off

TiddlyWiki’s First Birthday

This day last year TiddlyWiki 1.0 was released. The next version, 1.2.33, will probably be due for a release this Thursday. Its been a good year.

Filed under: General Comments Off

What is TiddlyWiki?

The name (no, its not WigglyTiki!)

When ever I'm telling a friend or relative ( or enemy for that matter) about TiddlyWiki the name always throws them off.

"Tinkily What?!?!?" they always say.

"No, think Tiddlywinks, but it's 'Wiki' at the end."


That's how easily the name issue gets cleared up.

The system (what does it do?)

After the name its easy to explain what TiddlyWiki (or TW for short) does:

TiddlyWiki is an HTML page that acts as a self-contained program.

That's pretty nifty really. A pros and cons list would look like this.

  • Acts like a program
  • Saves its data back to its self


  • JavaScript is required.

The potential

TiddlyWiki also provides a host of possibities. You can expand its functionality via plugins and skin it using CSS.

Because TiddlyWiki has been developed 'correctly' and doesn't use old styling techniques (like <FONT> or table based layouts, CSS powered styling is a piece of cake. I'll get around to showing some styling tips eventually (another day).

Plugins are also topics for another day, but the perfect point here is that I used to take the base TiddlyWiki code and then have to hack it to add functionality. Jeremy Ruston, the creator of TiddlyWiki added the idea of plugins and macros. A plugin allows you to add functionality on top of TiddlyWiki without touching the internal code.

With TW plugins I can add in a a feature like a tag cloud without altering the code. The functionality will exist and it doesn't have to bloat the base TW code fot other TW users who don't require the functionality of a tag cloud. Now, TW has a relatively rapid rate of development with new versions coming out every few weeks so upgrades can happen frequently. The plugins won't get over-written when upgrading your TW (as manual code modifications do).


So, 'What is TiddlyWiki?' Useful.

Other links and better explanations

Now I'll probably say this a number of times, but I just need a bit of a disclaimer. This is my first public blog (and serial writing attempt) so feel free to kindly correct any of my writing or information.

Here are some other spots that do a bit of a better job explaining all of this:
Euicho's better explanation (it really is a lot clearer)
BlogJones has a great tutorial.

Filed under: General Comments Off

Why in the world a TW blog?

Let me put the cart before the horse. TiddlyWiki (which I'll give you the scoop on later) has an incredible userbase. However, because of how the system is currently setup, the great inter-linking between different TiddlyWiki appears to be nil. At least that's what Google is thinking.

Google (the search engine, duh!) crawls around websites and reads them. Its been called most important blind visitor any site could have. As Google crawls each site, it finds links and follows them, just like you or me. If a site has a lot of links pointing to it, Google figures its probably a pretty important site. This phenomenon is called 'Google juice' or, at least that what I call it. So now you know the lingo; if I'm linking to a site I'm giving it Google juice and making it more popular in google's eyes.

So what does this have to do with TiddlyWiki? Plenty. The google crawler is not only blind, but it also ignores any JavaScript on a page. (Which gives us a darn good reason to code a version of any page that works sin-JavaScript.) TiddlyWiki being very Ajax-ish happens to rely very heavily on JavaScript. Without JavaScript, a page looks like this:

NathanBower's GTDTiddlyWiki is an adaptation of an earlier revision of TiddlyWiki. It's geared towards DavidAllen's GettingThingsDone methodology for personal productivity. It's available [[here|] ] and Nathan is also hosting a forum for discussions about it [[on his site|] ].\n\nIf you want to have the GTD look-and-feel but still be able to use the latest TiddlyWiki features, check out the GTD Style at [[TiddlerWiki|] ]

Notice how a link is rendered [[TiddlerWiki|] ] rather than the usual html <a href=""> TiddlerWiki </a>? This confuses the Google crawler and no linkage.

Lets not cry over spilt google juice. This TW blog will try to act as the Ace TW correspondent in these dark times. Okay the 'Ace' is probably exagerating, but we'll let you judge the blog by its fruits.

Let the google juice flow.

Filed under: General Comments Off