uniquename - 2012oct21
In the past several years (circa 2008 - 2012), there have been multiple examples of computer-related organizations raising money for some of their operations via a donations system.
Here are some organizations and some pages that relate to their donations system.
Recently (2012 October) the Ubuntu Linux distro organization has been in the news for starting to ask for donations - headline: "Ubuntu Website Adds New 'Donations' Page" at www.omgubuntu.co.uk [L4 ]. One report says the Ubuntu 'Software Center' — that is used to offer thousands of applications (mostly free, open source) for installation — may show donation popups.
I believe that Tcl-Tk could use a donations collection and disbursement system like one of these (in particular, Wikipedia's) — to help support documentation, promotion ('marketing'), conferences, and perhaps some development — even if development funding is limited to helping support students and mentors working on Google Summer of Code projects, for example.
Apparently, I am not the only one who has had concerns about Tcl-Tk needing some promotion/documentation/development support. Some quotes relating to these concerns are in a following section — pertinent comments that are extracted from some old pages on this wiki.
But before getting into Tcl-Tk history, I would like to make a suggestion on the form of a Tcl-Tk donations system — in the following section.
Linux Mint accepts most of their donations through PayPal (or credit cards). And 'Clem', the lead developer of the family of Linux Mint distros, actually takes the time each month to list the names (or nicknames) of donors and how much they donated, on a linuxmint.com web page.
Since I do not use PayPal nor credit-cards-thru-websites (and never will), I will not donate to Linux Mint — even though I think they currently (2012) offer the most appealing Linux distros out there.
On the other hand, I have donated to Wikipedia because of the quality of their pages (that have served me well) — and they allow for donations through the mail. See their how-to-donate page at [L5 ] and their how-the-donations-are-used page at [L6 ].
If a Tcl-Tk organization, like 'Tcl Association', were to implement and manage a donations system, I would recommend providing several donation methods --- including 'snail-mail', following the example of Wikipedia.
JMN: I also don't donate via paypal or CC. I'm happy to donate via Bitcoin though. (I'm also looking forward to getting time to start coding up some Bitcoin libs/utils for Tcl)
Now to some Tcl-Tk history — and relevant quotes.
I have done some searches on the Tcl-Tk wiki and found several pages that have touched on various aspects of funding and marketing. Here are some links in order by their page numbers (i.e. age of the initial text — and most of the text).
Some pertinent quotes follow.
My opinion: (uniquename) The ground-breaking improvements have to be demonstrated with useful, available 'end-user' examples. See the 'end-user' comments of Siqsuruq below. Perhaps it is time for a 'Tcl-Tk Blast CD', like the one assembled in 1998 (see 'Tcl Consortium' above).
There could be a 'Tcl-Tk Blast CD - 2013 - U.S.' and 'Tcl-Tk Blast CD - 2013 - Europe' — available at the 2013 U.S. and Europe Tcl-Tk Conferences.
And each year thereafter there would be
There would probably be plenty of room on a CD to keep adding to the CD contents of the year before — but, also, it would be good to replace 'apps' of the past with improved versions as improvements are devised or as new features of Tcl-Tk can be used to improve the apps.
I am concerned about the dearth of Tcl-Tk books being written in the past 7 years or so — irrespective of commercial-or-free, paper-or-electronic, whatever.
Back in the 1990's, there was a relative wealth of Tcl-Tk books being written, such as (the 1st two are the ones I started with):
All but one (the last of those books) is out of print now — or at least no longer stocked in brick-and-mortar book stores. And none of these books seem to be available in electronic form (such as PDF) for free — in spite of the fact that they are probably not bringing any appreciable income to the authors now.
In the past few years, I could usually count on seeing a copy of the 4th edition of 'Practical Programming in Tcl and Tk' on Barnes & Noble shelves — in the programming languages section.
But in the past 6 months, I do not even see that guide and reference work in the several Barnes & Noble stores that I have checked.
So I am concerned about the state of Tcl-Tk documentation going forward.
I don't see any web sites (other than wiki.tcl.tk) that are providing 'stunning' Tcl-Tk coding guides and sources. (The most 'stunning' things that I see are the code examples on wiki.tcl.tk provided by people like Vetter, Suchenwirth, Stucky, and Sookahet. But most of their 'demo code', though impressive in action, is not polished enough to proudly distribute to end-users. Their 'demo code' would take some effort to polish up for a 'Blast' CD.)
It takes quite an effort to come out with a 'Tcl-Tk Blast' CD — or a programming guide of the magnitude of 'Practical Programming in Tcl and Tk'. I think that if we are to see such a CD come out for version 8.5 — or such a document come out for version 8.6 or 9.0, then it may be appropriate and desirable to provide some 'part-time' support to some of the potential authors/editors/contributors.
One 'action-item' that I think should be pursued:
Someone like 'the Tcl Community Association' should contact the authors of books above (or their widows or whoever inherited the copyright) to see if they would be willing to allow their book to be put in electronic format (like PDF) and posted on a site like wiki.tcl.tk.
The monthly donations pages of 'Clem' at linuxmint.com indicates that they are collecting about $4,000 per month — about $50,000 per year. (This does not include income from other sources, such as Google ads on their pages and some sponsor support in various forms.)
Since Linux Mint probably has many more 'direct' users (and potential donors) than Tcl-Tk has 'direct' users, a Tcl-Tk organization, like 'the Tcl Community Association', can probably expect no more than about $30,000 per year in donations — at least initially.
Hopefully some investment in marketing/promotion advertising (ads for software, books, conferences, t-shirts, etc.) would lead to more visibility — and more donors.
It is probably unreasonable to expect donations on the order of over $100,000 per year.
So probably most of the donations would be used up on support for advertising, documentation, and conference activities — with very little left over for development activities.
But if a level of several tens of thousands of dollars in donations per year can be sustained, then it is probably worthwhile for an organization like 'the Tcl Community Association' to set up and manage a donations system.
At the very least, donations should be used to provide Tcl-Tk t-shirts to everyone who attends the annual Tcl-Tk conferences — U.S. and Europe. Maybe the attendees will wear their t-shirt while mowing their lawn (or at a fast-food place) and a neighbor will ask 'What is this Tcl-Tk?'. Thus the word gets out — neighbor by neighbor, citizen by citizen. Better than words — hand them a 'Blast' CD (or memory chip).
AMG: Donations, pledge drives, and such only work when there is an extended community. Tcl has a tight-knit community which seems to consist primarily of its core developers and their employers. Noncommercial users appear to be fairly rare, so the funding tends to be of the official sort rather than community-driven. One notable exception is the Tcl Community Association's Tcl/Tk Conferences, but that's an organized annual event, rather than something people spontaneously choose to give money to whenever they have spare change.
Tcl isn't part of the popular programmer/sysadmin culture the way Python, Perl, Java, Apache, PHP, and Linux distributions are, or Firefox for that matter. In other words, Tcl isn't a celebrity. It doesn't automatically attract attention, let alone financial contributions.
I'm not sure what's needed to get noticed, but I suspect there needs to be an emotional component, an air of excitement or hype. Of course, such things can backfire due to an eventual perceived failure to deliver on promises that maybe were never made in the first place. Look at Lisp's commercial failure and slide into obscurity. It was hot for a while, but many folks turned on it after it didn't immediately usher in a new era of AI.
As for the items in my above list which (for now) have staying power, they managed to get widely installed and become incorporated into the culture such that it's now difficult for many to imagine anything different. For example, if you want to set up a web server, of course you're going to use Linux, Apache, MySQL, and PHP ("LAMP"), with hardly a thought given to alternatives. Want to write a program that doesn't need to be in C/C++? Python is the default setting for many, except the quirky sort who opt for Perl, unless it's so blindingly simple it can be done as a shell script.
Then when new frontiers open up, many people instinctively see it as a noble goal to port their familiar environments to it, without consideration for fitness. I'm thinking about efforts being made to run Python on Arduinos and such, despite the fact that code produced by the Arduino IDE is already slow compared to C tuned for the actual IC being used, plus C is often slow compared to assembly language, and Python is many orders of magnitude slower than C programs or even any other popular scripting language. Forth is an ideal fit for such platforms, but when's the last time you heard about Forth?
I'm not trying to be bleak, and it turns out Tcl is doing better than it may sound. It is widely installed and has a longer history than most of today's celebrities, plus its core concepts spawned the stunningly successful SQLite. Yet, Tcl is taken for granted to the point of not being appreciated, recognized, or noticed, and sometimes it's despised, even though when features pioneered by Tcl are eventually adopted elsewhere (without credit) they are praised. The issue here is perception.
Again, what's needed? I don't know.
uniquename - 2012oct22
My god (the universe), that IS bleak! 'Siqsuruq', quoted above about 'end-user' software, will probably not agree with that pessimistic assessment — and neither do I. (The capital letters were his, not mine.) I will provide a link here soon — related to the idea of providing a CD/memory-chip of 'end-user' utility software. It CAN be done. It's just that no-one has taken the time to do it. I am retired. I have the time to do it.
Apparently, you haven't seen my software contributions list at the bottom of uniquename. I've only just begun — as the song goes. I have only been at this contributions-to-'wiki.tcl.tk' thing for 2.5 months.
By the way, I am hoping that Tcler's who are 'long-in-tooth' and nearing retirement are going to be able to do the same — volunteer code to the Tcl-Tk user community, putting to good use their years of experience. (I'm thinking of DKF doing that ... someday. And hopefully Vetter and Suchenwirth will catch a 'second wind'. And where are you, Stucky and Sookahet? Are you near retirement?)
DKF: I'm decades away from retirement (I hope!).
uniquename: Maybe Ousterhout then? He's probably near retirement ... :-)
uniquename - 2012oct25
Here's what I propose as a package of 'end-user' utility software [L7 ] --- 'tkGooies' --- for memory-chip or CD.
When I get a first release out there, anyone is welcome to take it and make their own 'flavor' --- including Ousterhout ... :-)
And if anyone wants to beat me to it and come out with their own package of Tcl-Tk end-user utilities --- more power to them. The more the merrier.
And the TCLA (Tcl Community Association) is welcome to take a copy of my 'tkGooies' to use as a basis for an annual Tcl-Tk 'Blast' CD.
uniquename - 2012oct26
AMG's comments above end with "what's needed? I don't know." From that comment, I get the impression that he did not notice that I made 4 (plus one) different suggestions on this page --- not just the main one mentioned in the title of the page.
So I would like to list the suggestions compactly here, with some white space around them so that they stand out. The suggestions:
1) That the TCLA should implement a donation system --- including 'snail-mail' donations as well as web-based donations --- like Wikipedia.
2) That the TCLA revive the Tcl-Tk 'Blast' CD idea, but update it to include memory-chips. (See more details above.)
3) That the TCLA contact authors of the circa-15-year-old Tcl-Tk texts listed above (at least 11 texts) to see if the books can be rendered in electronic form (such as PDF) and made available on www.tcl.tk or wiki.tcl.tk.
4) T-shirts (preferably ones with a really appealing, professional-looking design; on white, to stand out in the dark or in a crowd) be given to ALL Tcl-Tk conference attendees --- U.S. and Europe.
5) 'Recruit' (encourage) Tcler-retirees to make a hobby of developing and donating Tcl-Tk mini-apps in their retirement years.
The last item was added in my response to 'AMG'. I think it partly answers the lament/wish/whatever of 'LV' above:
to "figure out a way to increase the number of individuals who contributed their own time for improving the Tcl environment ..."
And the 2nd item will, I think, serve to answer 'Siqsuruq' --- his lament about the need for 'end-user' Tcl-Tk software.
I don't ordinarily like to use the word 'sweet' (it does not sound manly), but I thought the comment by 'RLH' above was sweet: "Just having visibility would be nice. : )"
I think all 5 items go toward answering that wish.
I am not sure why AMG wrote the dissertation on other programming languages above --- and then ended with "what's needed? I don't know.". If he didn't have anything to contribute, then why write anything at all. So I carefully reviewed what he wrote.
I think he is mainly taking issue with my estimate that a donation system might be able to raise about $30,000 per year.
On that issue, I would like to point out that there are about 100 attendees of the Tcl-Tk conference each year --- if not in the U.S., then surely in the U.S. plus Europe.
If each of 100 attendees would donate $200 per year, then we would be 2/3 of the way to that $30,000 per year I mentioned. I stand ready to donate $200 per year. And surely, there would be some non-conference-attendee individuals donating --- and maybe even a few corporations.
Some telecom or networking companies who use Tcl-Tk for test software and network management software would probably donate. Ansys (a finite-element analysis software company) that uses Tcl-Tk as the scripting language with its software is another possibility. Probably Tcler's know of more examples of companies using Tcl-Tk in their operations --- companies that would be willing to show their appreciation with a small donation of a few hundred dollars per year --- at least in the 'good years'. (The TCLA could give donor companies a 'Blast' CD in acknowledgement of their donation. And a T-shirt or three, for their CEO or CIO to distribute.)
I find AMG's view of Tcler's as this small little huddle of people isolated from the rest of the world really depressing. I hope that most other Tcler's do not have that view of a Tcl community that wants to remain small and isolated.
Siqsuruq - 2012-10-26 22:13:34
For now I cant donate money, but I can donate my code, time and my friends design skills. I would like to participate in TCL Blast CD Version:2 Why CD lets make a DVD :)
AMG: Developing more code is definitely good for demonstrating Tcl/Tk's amazing versatility, but we already have this wiki for distribution and discussion; it serves as an excellent focal point to tie the community together. I just don't see how physical distribution of media can trump or even compete with the wiki.
Who are you trying to reach? Handing out CDs and DVDs to your neighbors certainly is cool, but unless they're already inquisitive and creative programmers, at best they're "only" going to become users of the applications without any real interest in furthering the underlying language. Tcl/Tk conferences have been passing out USB memory sticks for several years, so that's not a new suggestion. I take your statements as a suggestion to load those memory sticks with more applications and whizzlets, but the folks who are going to receive them are already at at the conference and therefore have already demonstrated profound interest in Tcl.
Universities might be an interesting target; let's investigate that possibility. In my schooling I had a professor who was openly hostile to Tcl and to me for daring to use it, in fact took delight in ridiculing me in front of the class for my preference in language. Everyone knew he was a buffoon, and it got some students interested in coming to me to learn why I was willing to stand up for Tcl. (By the way, he hated Linux almost as much as Tcl.) One time he was teaching software design methodology, and I took it upon myself to riff off of him and complete the lecture. He was grateful, agreed with what I had to say, and was delighted with my insights, but when I mentioned that all along I had merely been describing Tcl engineering and testing practice, ... well, he wasn't very happy with that! Still, it intrigued the other students.
We Tcl developers aren't trying to isolate. The trouble is the world's fickle fashion sense. Tk was hot for a while, back when it was the only easy way to develop a GUI. Yet the GUIs made with it were often thrown together and horrible, and Tk got the blame rather than the lazy programmers. So when more "sophisticated" (translation: difficult and complicated) systems like Gtk+, Qt, WxWidgets, Swing became available, they were embraced. Tk retained its niche as the easy way to do GUIs, but its Tcl affiliation was obscured by Tk's Perl and Python bindings, so even among Tk programmers there's no guarantee of Tcl loyalty. What's more, rather than drive people toward Tcl, the sometimes-clumsy impedance mismatch of said bindings just pushes the non-Tcl Tk users towards the other toolkits I mentioned.
I wanted to think that SQLite would succeed in rekindling global interest in Tcl, but this doesn't appear to have happened. The genius of SQLite's largely typeless nature either goes unnoticed or fails to be attributed to its Tcl roots, and its users are satisfied with accessing SQLite through its typeful bindings to C and PHP and Python and such, blissfully ignorant of an easier, more natural interface.
Step outside Tcl for a minute and think about some of the other classical programming languages which are now largely overlooked. Take Lisp, Forth, Fortran, Algol, Ada, or Pascal. Now reprint updated, special editions of their seminal texts, coupled with "Learn Algol in 24 Hours!" books, and stock bookstores with them. Will that rekindle interest in the languages? Maybe a little bit. It'll certainly be appreciated by their existing devotees. But it's not going to increase their acceptance in the Business Community. I doubt anybody's minds will be changed.
One thought I have is that despite my above claim that "we're not trying to isolate", we kind of are by sticking to what we believe is right rather than what is seen as fashionable. To that end, a paper which I will present at the Nineteenth Annual Tcl/Tk Conference (2012) suggests a great many updates to the language to bring it more in line with modern expectations of how a scripting language should feel, plus adds compelling new functional programming paradigms. I don't want to say too much about it before the conference. I just mention it now to show that I really am trying to improve the situation by offering a new beginning.
Regarding donations... Pledge drives are made successful by enthusiastic groundswells, and recurring investments are made by people who consider Tcl to be an important and profitable part of their lives and/or businesses. We do have the latter, just look at the Tcl/Tk conference committee. Those companies employ Tcl developers part- and full-time, and they pay the bills for the HTTP, Fossil, and release build servers. If you want to chip in, plus give others a way to contribute, that's excellent, but (1) I doubt this will significantly increase overall funding, and (2) I don't think your money will be spent in the way you want it to be spent. For example, reprinting or updating classic Tcl texts. You and I both would like for that to happen, but it appears the copyright holders don't think this would be a financial win, or else they would have already cranked up the presses. The market for Tcl/Tk is sadly too small for that. We have to find a way to build enthusiasm and grow our ranks.
You keep mentioning the need for groundswells of enthusiasm --- while you attempt to kill them.
Siqsuruq understands the difference between 'demo code' on the wiki and 'end-user utilities'. Why can't you?