[Siqsuruq] 2017-9-8: Hello everyone, before I start talking trash about Tcl let me say few words. I love this language, I really do ... I have been using it since 2005. I have TDK License. I have learned a lot from this wiki. All my code is written in Tcl/Tk. But now I feel like Tcl is almost dead. And this makes me really sad. ActiveState has no more support for TDK. There is no more centralized repositories for Tcl packages, no more teacup no more teapot. When I try to tell people about Tcl they look at me like I'm crazy person. First impression about programming language is always a web page about it, and this is this wiki.This wiki is really really ugly. Tcl is almost dead because of marketing, support and availability. Can we just join all together and fix it? There is web designers here? Designers to give this wiki some shine? What I need to do to create centralized repository for Tcl packages? I have small virtual server I can sucrifice for this cause. I want everybody be able to upload their packages on it. I dont know about you guys, may be you all are brainiacs here. And like all brainiacs you dont care about image of the language, but I think its important. And we all need to do something about it. ---- [bll] 2017-9-8 Google Trends. I don't know how accurate this is, but it doesn't look good. https://trends.google.com/trends/explore?date=today%205-y&q=%2Fm%2F07fw2 (Tcl programming language) Not totally dead, this is a good sign... https://trends.google.com/trends/explore?date=today%205-y&q=Tkinter (tkinter) Another source (stackoverflow, tcl and tkinter tags): https://insights.stackoverflow.com/trends?tags=tcl%2Ctkinter You will find that there are a large group of people who have no interest in changing the wiki. They spout phrases like "spirit of the wiki", which if I translate correctly means "do it my way". It would actually be easier to start a new wiki, but you will need to collect a group of people who are willing to contribute to it -- this is difficult, as many people don't want to keep two different wiki's up to date. Fragmentation isn't good, but fighting these these high-inertia people seems worse in this case. A repository of Tcl packages would be great, but first I think a more standardized way of installing would be useful. e.g. Python (which I know nothing about) has a set of directories that are searched for modules, and their 'easyinstall' and 'pip' programs install into these directories. If the Tcl modules could be installed in this manner, this would be much easier. I think, right now, if I installed a few Tcl modules to use on Linux, I would probably have to add several different paths to `::auto_path`. This is not portable nor very manageable. Once this module/package tree/system is in place, then the major modules can be repackaged to install into the standard directories, and a repository/installation system can be built. I also have a server available that can be used for wiki/forum/repository, whatever Tcl/Tk related. ---- [EMJ] 2017-09-12 [bll], you said "I think, right now, if I installed a few Tcl modules to use on Linux, I would probably have to add several different paths to ::auto_path." Could you perhaps provide an example of this. [bll] 2017-9-12 Can't find any. Looks like the maintainers are choosing good paths and `tclsh` and `wish` have those paths. But my locally installed `tclsh` doesn't have these paths in `::auto_path`. ---- [EMJ] 2017-09-08: * Google Trends - Try adding Perl for comparison, its way higher than Tcl, but declining a lot faster. Try adding Python and it doesn't seem to know it's a language, so the snakes and Monty are obviously mucking up the figures. On the whole, I don't think it's clear enough how the figures are worked out. * Stack Overflow - I think this says more about the type of people who use it and how it is run. Too many wrong but "accepted" answers (and no way to fix them), and too many incomplete answers. * The Wiki - is not the primary web page, that is www.tcl.tk . As for "do it my way", I think it has mostly been "this is why I don't like your way", the result of which should be (but sadly often isn't) a reasonable discussion. * Repository - yes, but what we have seen with ActiveState is both the risk of changing commercial focus and the result of the loss of specific people. Providing a physical resource to run a repositry is less than half the battle. * Package/Module Installation standards - They exist actually - install Tcllib or tdom as they instruct and you don't need to change auto_path. However there are several reasons why people don't set their packages up for this. [RLH] Figure out how to turn github into a repo source. Other languages are doing it I believe. It might be "less than half the battle" but it's a major battle now with ActiveState giving it up. * [EMJ] Bad idea - begins to sound like making the use of git the default. There are people who do not want to use git (including me). How could we get Github to give a list of the things that constitute our repo? ... ----- [LostOne] 2017-09-09 It's a sad truth but i've felt this since I tried doing full stack development with Tcl. While you can do almost anything with Tcl which is great there are some issues. It might not look like an issue and some will see this as a "feature" you actually have multiple ways to do anything. I think this is where the concept of feature creep kicks in. Let's take a look at Web Development using Tcl.. Overwhelmingly.. You have Naviserver/AolServer, Rivet, Wub, TclHttp, and Tanzer.. you might want to look at this page for more info http://wiki.tcl.tk/16686 I've personally tried to use Websh (2006-2008) and NaviServer(2014-2016) (built some frameworks around them) but gave up because managing & sysadmining took way too much time.. no precompiled packages, manual compilation.. etc Also because there are very few people who use them and so you have to reinvent everything session management, authentication, and basic stuff that you can find easily in PHP/Python/Ruby frameworks.. I know OpenACS has it all but there are downsides to using it. I've also tried other things but none of them suited my needs. Recently playing with Nginx + Tanzer prooved to be a better way to be able to develop web apps that can replace Tk by using the browser. Distribution of tanzer + starkit is easier. However, again, you need to reinvent the wheel for almost everything to create a web app, imagine doing a webshop.. Let's take a look at the cool trend started by StarKit(s). It's now grown to distinct ways of doing starpacks like wize, cookit, kitgen, dqkit, kbskit.. Each one has a different way of working with packages.. again, 100 different ways of doing it, no unification. This wiki contains a treasure of info, however it's hidden and you need to search a great amount of time before you can find anything since the search function is not always the best way to search. Tcl Marketing & Graphical Design needs manpower.. Manpower requires volunteers and funding. The only way this would succeed IMHO is if a new community would arise on another domain. Maybe cloning the wiki & enhancing it would be the first step. However curating it is also a big requirement. Then maybe a new repository which would be open in a way that anyone could host mirrors that would be authenticated against a central server. Security wise nowadays this might prove a little tricky. There are multiple packages and pages on the wiki that talk about different types of repositories, heck, even starkits have something that can help you build a repository:). Maybe using something like the teaparty & enhancing it? http://teaparty.rkeene.org/fossil/home To sum it up: The biggest problem I've encountered is that there are many great tools & apps but when it comes to a userbase with examples, support & development most of them stop evolving after some time which leaves newbies scratching & banging their heads. You've got 100 ways to do something but no one left maintaining & supporting them.. '''Unification and collaboration is the keyword here.''' Maybe a set of more advanced Tcl tool usage & tutorials could help with the collaboration & unification process. Just saying. Taking a look at Python as an example. 10-20 years ago you might have had university classes in Java, now they're almost all replaced by Python. It's not hard to understand why, since for Information Security and Ethical Hacking most of the neat tools out there are written in Python or have python interfacing. hping3 was the only tool (Information security wise) i've found that still supports Tcl at a scripting. The discussion and examples can go on for hours.. creating a well known, reputable, growing and usable language also means creating certain tools that fill in a niche. Anyways, since there is no big company backing up Tcl I see it as vanishing into obscurity each day. I'm open to debates & helping out. Anyone else ready for some '''Unification & Collaboration'''?