!!!!!! A part of [Google Summer of Code]. <
>[http://code.google.com/images/2010soclogo.jpg] !!!!!! <> ---- [SEH]: The brainstorming starts now: [Project Ideas for Google Summer of Code 2011] ---- **Ideas from Last Year** These are things that weren't accepted then. See [Project Ideas for Google Summer of Code 2009] for full descriptions. %|Idea page|Notes|% &|[GSoC Idea: Tk - Factor Photo Image Handling]|& &|[GSoC Idea: Tcl state machine back-end module for XMLVM]|[GSOC2010:Tcl state machine back-end module for XMLVM]|& &|[GSoC Idea: Gnocl]||& &|[GSoC Idea: TkPath]||& &|[GSoC Idea: Computational geometry for glyph outlines]||& &|[GSoC Idea: Themed Tk on Unix]|[GSOC2010:Themed Tk on Unix]|& &|[GSoC Idea: Garbage Collection for Tcl Values]||& &|[GSoC Idea: Parsing mathematical expressions]||& &|[GSoC Idea: Wrapping numerical libraries]||& &|[GSoC Idea: Tcl FireFox Scripting and DOM access]||& &|[GSoC Idea: More mtmtcl structures]||& &|[GSoC Idea: Implement More Mikroconf Modules]||& &|[GSoC Idea: Megawidget development]||& &|[GSoC Idea: Auto Documentation Tool for Tcl]||& &|[GSoC Idea: Continue BLT Library Refactoring]||& &|[GSoC Idea: Create Free-standing Slate Widget]||& &|[GSoC Idea: Fossil Tk Client]||& &|[GSoC Idea: Controlling (numerical) computations and simulations]||& &|[GSoC Idea: SCORM Compliant Run-Time Environment for OpenACS]|[GSOC2010:SCORM Compliant Run-Time Environment for OpenACS]|& &|[GSoC Idea: MapReduce Algorithm Using Scripted Channels and Threads]||& ====== Tcl: Better string sentence and title case handling Tk: Demo Expansion Tcllib: XLS Read/Write Tcl Application Server Tclhttpd: refurbish Tk: Curses implementation of Tk Tk: Icon Themes AOLserver: libpurple integration Tcl[?]: Complete TclScript project for IE scripting Tcl/Tk Browser Plugin: User-Privileged Security Tcl/Tk Browser Plugin: OSX Port Improving dotLRN Tcl: Constraints Tk: Drag-n-drop for Aqua OpenScripting Tcl Glade XML to Tk translator Cicero refurbish ====== ---- From [Things holding Tcl back]: 1. Printing support! 2. Add Drag and Drop support for Mac. 3. Support for more textured backgrounds in Tk and Tile on Mac. Pinstripe's terribly unfashionable. Ideally, we should be able to define our own background images. 4. Alpha transparency in widget backgrounds. 5. A KDE theme for Tile, incorporated in the base Tile download. 6. A Gnome theme for Tile, also incorporated in base Tile. ---- New suggestions: 1. Fix binary-support with low-level tempfile-creation API, so that 'exec ... << "$data"' doesn't fail with \0-bytes - very long overdue. ---- **Loading shared libraries from memory** A project to allow loading of libraries without recourse to a filesystem location was partially completed in GSoC 2008 http://wiki.tcl.tk/20832%|%GSoC 2008%|%. More work remains to be done on Linux, and Windows is yet to be tackled. Ability to do this would be very beneficial, so the project should be considered for revival. See http://wiki.tcl.tk/21777%|%here%|% for description of work accomplished in the 2008 project. ---- **http://openstreetmap.org%|%OpenStreetMap%|% and related** The first part is a package(s) for handling OpenStreetMap data in convenient form, which will automatically translate between internal and XML forms, communicate with server, and give easy access to all objects. Also, it needs to have some abstraction to give ability to manipulate virtual ways, so-called segments, as suggested by somebody on IRC (#osm-ru@oftc). The second part would be an OpenStreetMap editor in Tk, utilizing the package(s) from the first part, and the segmented approach. Another option would be a stand-alone public transport routes editor, as currently editing routes is not an easy task, and it is not visualized enough. Currently, there are some GIS-related packages for Tcl and Tk, some of them can be used in this project. [andrewshadoura] 2010-03-17 [AK] Some references to related things. 1. [GSoC 2009 Executed Projects%|%Improve GIS support in Tcl] by [Alexandros Stergiakis] 2. [http://docs.activestate.com/activetcl/8.5/tcllib/map/map_slippy_fetcher.html%|%Access to slippy-based map tile servers], also http://docs.activestate.com/activetcl/8.5/tcllib/map/map_slippy.html, and http://docs.activestate.com/activetcl/8.5/tcllib/map/map_slippy_cache.html 3. The demo for http://docs.activestate.com/activetcl/8.5/tklib/canvas/canvas_sqmap.html is a map display using osm tiles. **Wub + OpenACS + TDBC** [Wub] is a showcase technology for Tcl with its speed and use of coroutines. [OpenACS] is also a Tcl success story, but it is limited on one end by [AOLServer] and on the other by dependence on Oracle/PostgreSQL. The goal of this project would be to enable an alternative (nearly) pure-Tcl OpenACS stack and replace the specific database dependencies with [TDBC], which would ease install and deployment, and enable use of OpenACS modules in a wider range of contexts. Project steps would consist of: 1. Comparing Wub and AOLServer for performance and suitability for hosting OpenACS modules 2. If Wub is found suitable, writing bridge code/APIs to allow Wub to serve OpenACS modules 3. Replacing OpenACS code that specifically targets Oracle and Postgres with TDBC interface code, making it possible to choose any database with a TDBC driver These steps could comprise one or several individual student projects. Benefit for student: get experience with web technology and performance testing, high-demand database technology, threading. Benefit for community: leverage strong but under-utilized code base with cutting-edge new Tcl innovations, and vice versa. Liberate OpenACS code to be used in new contexts. Make it easier to create and deploy new custom OpenACS configurations. The [nstcl] project may be relevant for this. Also, a similar partially-executed project is described at http://www.jsequeira.com/projects/portable.nsd/ [CMcC] asides that since TDBC requires tcl8.6, one means of satisfying the community benefits of this project would be to treat it as a software archeology and restoration projecct: take those bits of OpenACS which work well, and rewrite them to (1) provide a more abstract interface to the underlying web facilities (much as TDBC provides an abstract DB layer), (2) use tcl8.6 facilities (I'm thinking [dict], here for representing data.) The first would liberate the useful facilities for broader use, the second would probably make the code cleaner than it is now. It's the same project, really, but turned inside-out. [sisusimple] thinks another way round: is it possible to make a library for TCL of AOLserver? Benefit: mature http server, easier integration with other TCL code. [SEH]: Wub is pure Tcl. AOLServer is a mix of Tcl and C, and thus presents issues of portability, maintainability and deployability. One of the goals of this project would be to make OpenACS more portable and deployable. It might be interesting to see if one could turn AOLServer into a stubs-enabled loadable library. But I think that would be a separate project. <> Community