Rosetta Code:Village Pump/Suggest a programming task

So you want to see a problem solved? If you're not comfortable creating the task page yourself, feel free to edit this page, and describe the problem below. (To edit this page, click the "edit" tab at the top.)

When making a request, please place it in the Unsorted section.

When reviewing requests, please help sort them into the categories farther down, based on the category descriptions.

Incomplete

Unsorted

  • Create a COM client (with early binding) (particularly with GCC/MinGW) (if possible under Winelib in linux is also interesting)
  • Provide a SOAP server function

Task level

Database / Network

  • Simple DB connection and queries.
  • Certificate-authenticated SSL
  • Secure Socket Layer

Mathematics and algorithms

  • Iterating over elements in a collection
See: Loop Structures... I know at least the Java category has a Collections example --mwn3d 23:36, 9 November 2007 (EST)
Variable-length Collection-type-specific examples (Java collections, C++/STL container classes, functional lists, etc.) would be worthwhile. --Short Circuit 22:28, 6 December 2007 (MST)
  • Closures
  • Monads
  • SAX. As well as DOM and XPath it would probably be useful to demonstrate parsing a simple XML document with SAX.
  • Base64 encode/decode
  • LZW compression / LZW decompression

System

  • Copy a directory tree recursively
    • On a local filesystem
    • With an option to specify files or folder to exclude

Syntax

  • Comparison methods and operators
Could this be added to Comparing two integers? --Mwn3d 07:28, 21 December 2007 (MST)
  • keyword arguments (defining a procedure which takes named arguments)
Isn't this already accomplished in Creating a Function? --Mwn3d 15:51, 1 June 2008 (MDT)
  • optional arguments (defining a procedure which has optional arguments or arguments with default values)

Project level

  • Super Simple p2p network
Could be done with FIFOs for streams, and a constant number of clients. Needs to be more specific regarding what it does. --Short Circuit 22:28, 6 December 2007 (MST)
  • Writing a parser to parse structured text into appropriate native types. (A good demonstration format to parse might be JSON, though it should be about creating a parser rather handling JSON.)
  • [non-trivial] implement a table-based native code (macro?) assembler in various HLLs

Recently Completed

If a task has been completed, move the request to this category. Add a link to the task page, and sign (add --~~~~) to the request. Completed tasks more than a week old should be removed from the list.

On hold

Sounds Like Homework

These tasks may be interesting, but seem likely to be someone's homework. They should be put off until the end of the next regular semester.

  • doubly-linked list algorithms, both cursor- and pointer-based implementations
This could be approached some time in May --Short Circuit 23:43, 16 February 2008 (MST)
It's probably a good time to approach this, now.

Discuss

  • Querying devices for certain SNMP values and output reponses to .html or .txt-file.
    • Used for:
      • generating webpage where helpdesk can view the VLAN of a user-port
      • querying forwarding database of switch / ARP-table of router
    • Can be extended:
      • with config file for: device list, SNMP-values to interrogate, SNMP community strings, ...
      • support for SNMPv3
      • generating history reports: what mac-address has been on this port, when has a change been made, ...
    • Wanted to do this myself for a long time already using Python or Ruby, but not making a lot of progress. Any help or suggestion would be welcome.
This should probably be split into Query SNMP server and Retrieve configuration setting (for an application, not the SNMP server). There are already tasks for outputting to a file. --Short Circuit 23:43, 16 February 2008 (MST)
  • Win interface... C++ calls to Fortran F90/95 Source Code ... and back...
This should be as trivial as Call function in shared library, if the Fortran code has been compiled into a shared library. (Regardless of OS) --Short Circuit 23:43, 16 February 2008 (MST)