in reply to Tk vs browser-based applications

Well, depending on how much fun you want to have (or work you want to do), you might think about making the presentation independent of the underlying implementation details. In essence, you'd make a library to abstract away the user interface details. This would allow you to have different concrete implementations of the library: one that targets Tk, the other targets HTML. Then, the problem changes from *you* deciding which situation is best, to one where the *user* gets to decide (maybe even at runtime, based on his mood).