[[PageOutline]] [[TranslatedPages]] == Who we are? == http://gripuqam.org We are french speaking so this page will be translated unsing the advise in [wiki:/faq/translate/pages] == Other Pages by GRIP-UQAM in this wiki == * [wiki:GRIP-UQAM/WikiWritingUsingTrac Wiki Writing Using Trac] * [wiki:GRIP-UQAM/Web_badge Web badge] * [wiki:GRIP-UQAM/MayFirstSupportTicketsWeFollow MayFirst Support Tickets we Follow] == Software == === Applications === ==== Communication Applications (chat, voice, video) ==== ===== One to One ===== ===== Tele-conferences (Many to Many) ===== ===== Communication softwares (to be sorted) ===== * https://tryit.jssip.net/ * https://live.mayfirst.org/ * https://meet.mayfirst.org/ ===== Web Conferences (to be sorted) ===== * [https://jitsi.org/ Jitsi] * https://meet.jit.si/ ==== File synchronization and sharing ==== ===== WebDAV ===== * https://en.wikipedia.org/wiki/WebDAV * https://en.wikipedia.org/wiki/SabreDAV ====== Symbolic links ====== * keyword: symbolic link web dav ===== File synchronization / Git ===== * [DebianPackage:sparkleshare] [https://en.wikipedia.org/wiki/SparkleShare Wikipedia] [https://doc.ubuntu-fr.org/sparkleshare ubuntu-fr] [https://sparkleshare.org/ sparkleshare.org] ==== Static WebPage Generation ==== * [Google:static+page+generation] * !List of static sites build generators... ===== Jekyll ===== * https://rubygems.org/gems/jekyll * [[Image(https://qa.debian.org/cgi-bin/popcon-png?packages=jekyll&show_installed=on&date_fmt=%25Y, 3%, link=https://tracker.debian.org/pkg/jekyll, title="debian: jekyll")]] ==== Data Management ==== ===== Databases ===== ====== MySQL ====== * [wiki:/create_mysql_database] * [wiki:/phpmyadmin_link] ===== Search and Indexing ===== ====== Solr ====== * [wiki:/apachesolr] ==== Development Tool ==== * [wiki:/faq/setup-development-workstation] * [wiki:/setup_virtual_machine] ===== Documentation ===== * [https://packagist.org/packages/couscous/couscous couscous/couscous] Couscous turns Markdown documentation into beautiful websites. It's GitHub Pages on steroids. === Desktop Applications === === Web Applications === * CMF: Content Management Frameworks [WikiPedia:List_of_content_management_frameworks] * [wiki:GRIP-UQAM/Drupal Drupal] [wiki:Drupal Drupal (MayFirst)] [WikiPedia:Drupal] * ... * CRM: [WikiPedia:Customer_relationship_management] * [WikiPedia:CiviCRM] * [WikiPedia:SuiteCRM] * [https://packagist.org/packages/sulu/sulu sulu/sulu] * [https://packagist.org/packages/oro/crm oro/crm] === Internet Services === === Server Management === ==== Cloud Computing Software Platform ==== ===== OpenShift ===== * [WikiPedia:OpenShift] [https://www.worldcat.org/search?q=OpenShift WorldCat] * [https://docs.openshift.org/] ===== OpenStack ===== * [WikiPedia:OpenStack] === Software Programming === * Languages [Google:most+used+programming+languages] //[http://spectrum.ieee.org/static/interactive-the-top-programming-languages-2016 2016]// //[http://spectrum.ieee.org/computing/software/top-programming-languages-trends-the-rise-of-big-data Top Programming Languages Trends: The Rise of Big Data]// * [wiki:GRIP-UQAM/HTML HTML] [WikiPedia:HTML] * [wiki:GRIP-UQAM/Scalable_Vector_Graphics SVG Scalable Vector Graphics] [WikiPedia:Scalable_Vector_Graphics] * [wiki:GRIP-UQAM/CSS CSS] * [wiki:GRIP-UQAM/Javascript Javascript] [WikiPedia:JavaScript] * [wiki:GRIP-UQAM/DatabaseProgramming Database Programming] * [wiki:GRIP-UQAM/SQL SQL] [WikiPedia:SQL] * [wiki:GRIP-UQAM/PHP PHP] [WikiPedia:PHP] * [wiki:GRIP-UQAM/Python Python] [WikiPedia:Python] * [wiki:GRIP-UQAM/Java Java] * [wiki:GRIP-UQAM/C# C#] * [wiki:GRIP-UQAM/Ruby Ruby] * [wiki:GRIP-UQAM/Go Go (Golang)] * [wiki:GRIP-UQAM/Scala Scala] * [wiki:GRIP-UQAM/Lua Lua] * [wiki:GRIP-UQAM/Perl Perl] * [wiki:GRIP-UQAM/Rust Rust] * [wiki:GRIP-UQAM/Closure Closure] * [wiki:GRIP-UQAM/Processing Processing] * [wiki:GRIP-UQAM/D D (Dlang)] * [wiki:GRIP-UQAM/Ocaml Ocaml] * [wiki:GRIP-UQAM/Actionscript Actionscript] * [wiki:GRIP-UQAM/C++ C++] * [wiki:GRIP-UQAM/C C] * [wiki:GRIP-UQAM/Swift Swift] [WikiPedia:Swift_(programming_language)] * [wiki:GRIP-UQAM/R R] * [wiki:GRIP-UQAM/Objective-C Objective-C] * [wiki:GRIP-UQAM/Shell Shell] * ... == Backup == * https://support.mayfirst.org/wiki/faq/member-backup == DNS == * {{{#!sh $ dig @ns3.example.org +short www.example.org }}} == Cron == * Consider output to an (even empty) file a good practice allowing to check last time the command has been executed. This is because some subtle errors may prevent execution of cron commands, eg. see #11534 {{{#!sh ... &> cron/results/ }}} * Consider nice and ionice to give priority to interactive tasks {{{#!sh nice -n 127 ionice --class=idle ... }}} == Email == * [wiki:/faq/email/configure-email] * [wiki:/bulk-mail-relay] * [wiki:/email-deliverability] * #9787 === Filter === ==== Sieve ==== * [wiki:/sieve][wiki:GRIP-UQAM/sieve]??? ==== Maildrop (deprecated at MayFirst) ==== * [DebianPackage:maildrop] * #10802 * #1481 == [wiki:GRIP-UQAM/Postgres Postgres] == == MongoDB == * #11321 == Database Clients == * https://en.wikipedia.org/wiki/Comparison_of_database_tools * [DebianPackage:pgadmin3] * [DebianPackage:phpmyadmin] * http://www.sitepoint.com/phpmyadmin-alternatives/ * [DebianPackage:adminer] * https://packagist.org/packages/vrana/adminer * https://www.adminer.org/ * https://github.com/vrana/adminer/blob/master/plugins/login-table.php * http://php.vrana.cz/architecture-of-adminer.php * http://www.sitepoint.com/nette-framework-first-impressions/ * https://www.drupal.org/project/adminer (Check if bug with version 4 has been resolved!) * [https://www.leaseweb.com/labs/2014/04/10-developer-tools-install-ubuntu-14-04/ Install Adminer 4 in Apache] * squirrel+sql+site:debian.org * 3.3.3 does not work on debian 8 * https://en.wikipedia.org/wiki/SQuirreL_SQL_Client * http://squirrel-sql.sourceforge.net * DBEdit+site:debian.org * phpLiteAdmin+site:debian.org * https://en.wikipedia.org/wiki/PhpLiteAdmin == Git == * Branches and tags * keyword: how to find the tag of a git * https://git-scm.com/book/en/v2/Git-Basics-Tagging * http://stackoverflow.com/questions/978052/how-can-i-make-my-local-repository-available-for-git-pull * http://www.git-tower.com/blog/git-cheat-sheet === GitHub === * //[https://help.github.com/articles/syncing-a-fork/ Syncing a fork]// == Json == === .json validator === * keyword: linux json validator * keyword: json validator site:debian.org * jsonlint * [DebianPackage:jsonlint] * {{{composer require seld/jsonlint}}} * https://packagist.org/packages/seld/jsonlint * [DebianPackage:python-json-schema-validator] == [wiki:GRIP-UQAM/Bower Javascript packages: Bower] == == [wiki:GRIP-UQAM/Composer Composer] == == Web Applications == * https://www.neos.io/ * **[wiki:GRIP-UQAM/Drupal Drupal]** == Useful Debian Packages (Chelsea) == * [DebianPackage:apache2-mpm-worker](debian 8 jessie [DebianPackage:apache2] which uses mpm_event by default) * http://httpd.apache.org/docs/2.4/ * http://httpd.apache.org/docs/2.4/mpm.html * http://httpd.apache.org/docs/2.4/mod/event.html * http://httpd.apache.org/docs/2.4/mod/worker.html * [DebianPackage:apache2-suexec-custom] (also debian 8 jessie [DebianPackage:apache2-suexec-pristine] or debian 7 wheezy [DebianPackage:apache2-suexec]) * [DebianPackage:libapache2-mod-fcgid] * [DebianPackage:php5-cgi] * since february 2016 MayFirst uses mod_proxy_fcgi + php5-fpm == Note Altern-C == * Altern-C seems to use [DebianPackage:libapache2-mpm-itk](debian 7 wheezy [DebianPackage:apache2-mpm-itk]) == To keep in mind == [ticket:4875] [query:id=4875] [[TicketQuery(id=4875)]] [[TicketQuery(id=5580)]] [[TicketQuery(id=5605)]] [[TicketQuery(id=6287)]] * http://servers.mayfirst.org/ == drupal.org followup == * https://localize.drupal.org/comment/51445#comment-51445 == [wiki:GRIP-UQAM/PHP PHP (Libraries and ...)] == == HTML Slides == * https://packagist.org/packages/seld/slippy == Radical Servers == * https://help.riseup.net/en/security/resources/radical-servers == Fonts == * [DebianPackage:fonts-font-awesome] == HTML Programming == * Microformat [https://en.wikipedia.org/wiki/Microformat Wikipedia] * hRecipe [https://en.wikipedia.org/wiki/HRecipe Wikipedia] == SVG: Scalable Vector Graphics == * [https://css-tricks.com/using-svg/ Using SVG]// 2013 [Heavy for the browser in 2017] * [[Image(https://nodei.co/npm/svgo.png?downloads=true&downloadRank=true&stars=true, link=https://nodei.co/npm/svgo/, title=svg/svgo)]] [Google:svgo+site:debian.org] == C/C++ == * [https://conan.io/ conan.io] C/C++ package manager * //[http://linuxfr.org/users/rewind/journaux/adieu-biicode-bonjour-conan Adieu Biicode, bonjour Conan]// 2016 == D (dlang) Programming == === Event Dispatcher (Mediator Pattern) === * [http://forum.dlang.org/thread/legguhmaivvbjrteqpcc@forum.dlang.org Event Dispatcher] == Go (golang] Programming == === Event Dispatcher (Mediator Pattern) === * //[http://stackoverflow.com/questions/28001872/golang-events-eventemitter-dispatcher-for-plugin-architecture Golang events: EventEmitter / dispatcher for plugin architecture]// * eventDispatcher [https://golanglibs.com/top?q=eventDispatcher GolangLibs] * mediator [https://golanglibs.com/top?q=mediator GolangLibs] * [https://github.com/pocke/goevent pocke/goevent] * [https://github.com/godsarmy/golang_design_pattern/blob/master/src/mediator.go mediator.go (GitHub)] * [https://libraries.io/go/github.com%2Fyksz%2Fgo-design-patterns Go Design Patterns] == Java Programming == * https://packages.debian.org/fr/libunixsocket === Event Dispatcher (Mediator Pattern) === * [Google:java+event+dispatcher+mediator+pattern] [Google:java+mediator] * //[http://www.journaldev.com/1730/mediator-design-pattern-java Mediator Design Pattern in Java]// [http://www.journaldev.com/author/pankaj pankaj] 2016 * //[https://dzone.com/articles/design-patterns-mediator Mediator Pattern Tutorial with Java Examples]// James Sugrue 2010 * //[http://www.avajava.com/tutorials/lessons/mediator-pattern.html Mediator Pattern]// Deron Eriksson * //[http://stackoverflow.com/questions/8202383/event-dispacher-in-java Event Dispacher in Java]// == [wiki:GRIP-UQAM/Doctrine_(PHP) Doctrine_(PHP)] == == [wiki:GRIP-UQAM/Drupal Drupal] == == Information Retrieval Software Libraries == * [wiki:GRIP-UQAM/InformationRetrievalSoftwareLibraries Information Retrieval Software Libraries] == [wiki:GRIP-UQAM/Javascript Javascript] == == Lua == * //[WikiPedia:Lua_(programming_language)]// * [https://luarocks.org/ LuaRocks] [DebianPackage:luarocks] * [https://luarocks.org/modules/mascarenhas/wsapi-fcgi mascarenhas/wsapi-fcgi] === Object Oriented Programming === * //[http://lua-users.org/wiki/ObjectOrientedProgramming Object Oriented Programming]// * object [https://luarocks.org/labels/object LuaRocks] * [https://luarocks.org/modules/luarocks/loop luarocks/loop] * [https://github.com/kurapica/PLoop kurapica/PLoop (GitHub)] Pure Lua Object-Oriented Program : PLoop is used to provide a C# like style object-oriented program system for lua. It support Lua 5.1 and above versions, also the luajit ((interface)) === Event Dispatcher (Mediator Pattern) === * [https://luarocks.org/modules/olivine-labs/mediator_lua olivine-labs/mediator_lua] [http://olivinelabs.com/mediator_lua/ olivinelabs] [https://github.com/Olivine-Labs/mediator_lua Olivine-Labs/mediator_lua (GitHub)] [DebianPackage:lua-mediator] Event handling through channels (top lua module) * [https://github.com/daveyang/EventDispatcher daveyang/EventDispatcher (GitHub)] * [https://github.com/nicholas-leonard/dp/blob/master/mediator.lua mediator.lua (GitHub)] == Multi-language == * [https://github.com/markmontymark/patterns markmontymark/patterns] Multi-language port of GoF patterns * //[http://www.vincehuston.org/dp/mediator.html Mediator]// == [wiki:GRIP-UQAM/Perl Perl] == == [wiki:GRIP-UQAM/PHP PHP] == == [wiki:GRIP-UQAM/Postgres Postgres] == == [wiki:GRIP-UQAM/Python Python] == == [wiki:GRIP-UQAM/SQL SQL] Database Programming == == [wiki:GRIP-UQAM/Symfony Symfony] Programming == == SSL / https == * wiki:faq/security/get-certificate * http://stackoverflow.com/questions/7064087/how-to-convert-csr-to-cer-or-whatever-usable-on-windows (self-signing) * https://httpd.apache.org/docs/current/mod/mod_ssl.html === Web policy (Google policy) === * https://security.googleblog.com/2016/09/moving-towards-more-secure-web.html * https://webmasters.googleblog.com/2014/08/https-as-ranking-signal.html * https://blogs.letemps.ch/emily-turrettini/2016/09/11/google-compte-sanctionner-les-sites-qui-ne-sont-pas-securises/ === Koumbit === 2016-09-19 > (11:19:45) LeLutin: nardberjean: bonjour, on essaye de se tenir à jour pour ce qui est des algorithmes de crypto utilisés avec SSL/TLS. on a encore RC4 d'activé mais une discussion est en cours à propos de ce sujet là. pour ce qui est du support pour https pour les sites web, tu pourra obtenir de l'information pour ton site en particulier en contactant le support. On peut installer des certificats pour les sites web, mais dépendant des services ça peut requérir une intervention manuelle. si tu as déjà un certificat acheté par toi-même ça simplifie le processus mais on peut aussi en acheter un pour toi (les prix pourront t'être confirmés par le secrétariat) > (11:30:44) just1602: LeLutin: est-ce que ce serait possible d'installer un certificat avec let's encrypt pour un site hosté chez koumbit? > (11:33:00) LeLutin: just1602: ça dépend sur quel service.. on est malheureusement un peu en retard là dessus. ça dépend surtout des outils qu'on utilise pour l'hébergement partagé. sur HAG je crois pas que c'est possible présentement (upstream travaillent sur l'intégration mais c'est vraiment lent). sur aegir on a déjà testé un module en développement pour ça et ça a échoué lamentablement, donc on doit attendre que le code du module s'améliore un peu avant de pouvoir intégrer, mais on a meilleur espoir ici que du côté de HAG > (11:33:16) LeLutin: sur les VPS ça s'arrange == Web confidentiality == * [https://blogs.letemps.ch/emily-turrettini/2016/09/03/pourquoi-il-faut-reflechir-avant-de-donner-a-facebook-les-acces-a-vos-contacts-et-photos/ Pourquoi il faut réfléchir avant de donner à Facebook, les accès à vos contacts et photos] == HTTP Redirection == * https://httpd.apache.org/docs/current/en/mod/mod_alias.html * https://httpd.apache.org/docs/current/en/rewrite/remapping.html * https://httpd.apache.org/docs/current/en/rewrite/avoid.html * https://www.linode.com/docs/websites/apache-tips-and-tricks/redirect-urls-with-the-apache-web-server * https://www.croc-informatique.fr/2011/06/faire-une-redirection-avec-apache/ * #3351 * #10569 == HTTP Cache (Reverse Proxy) == * [wiki:/faq/shared-varnish-server] == HTTP Extensions == * HTTP/2 * [WikiPedia:XMLHttpRequest (XHR)] * WebSocket * [WikiPedia:Ajax_(programming)] * [WikiPedia:Comet_(programming)] * http://cometdaily.com/maturity.html * [WikiPedia:Chunked_transfer_encoding] * [WikiPedia:HTML5] * [WikiPedia:Web_Messaging] * PubSubHubbub * Push_technology * Server-sent_events * WebGL * [WikiPedia:Java_applet] * https://en.wikiversity.org/wiki/Learning_Java/Applets * Curl_(programming_language) * [WikiPedia:Browser_extension] * [WikiPedia:Add-on_(Mozilla)] * [WikiPedia:Google_Chrome_extension] == SSD == * #11870 == QR-codes == * keywords: qr code creator linux * [http://www.linux-magazine.com/Online/Features/Generating-QR-Codes-in-Linux Generating QR Codes in Linux] * [https://doc.ubuntu-fr.org/qrcode QRcode/Code_QR] === Printed size issues === === Encoding issues === * [http://stackoverflow.com/questions/9699657/is-utf-8-the-encoding-of-choice-for-qr-codes-with-non-ascii-chars-by-now Is UTF-8 the encoding of choice for QR-codes with non ASCII chars by now?] === Encoding flexible Generators === * For public data one can use https://zxing.appspot.com/generator/ * For more private data or intensive use [https://sites.google.com/site/qrcodeforwn/home/qr-code-generator-for-wireless-networks Portable QR-Code Generator] === URL-QR === If the URL contains non-ASCII characters, it may be easier to add a redirection from a ASCII URL. === Testing === zbarcam can test on screen rendered QR-codes, from web or files, with an external webcam. == OpenID Connect == * http://openid.net/developers/libraries/ == Monitoring == === Website Performance indicators === * [https://www.paessler.com/blog/2011/05/13/monitoring-knowledge/15_website_performance_indicators_you_should_monitor 15 WEBSITE PERFORMANCE INDICATORS YOU SHOULD MONITOR] * [https://www.nagios.com/solutions/website-performance-monitoring/ Website Performance Monitoring With Nagios] === Applications === * [DebianPackage:icinga2] (fork of nagios) [https://en.wikipedia.org/wiki/Icinga Wikipedia] http://docs.icinga.org/ [http://www.worldcat.org/search?q=icinga WorldCat] keywords: Website Performance Monitoring With Icinga * [DebianPackage:nagios3] (less and less used) * [DebianPackage:monitoring-plugins] * [DebianPackage:nmon] * [DebianPackage:funkload] python * [DebianPackage:jmeter] 100% pure Java desktop application === Web browser testing === * [DebianPackage:phantomjs] Scriptable Headless WebKit [https://en.wikipedia.org/wiki/PhantomJS Wikipedia] [http://www.worldcat.org/search?q=phantomjs WorldCat] * https://en.wikipedia.org/wiki/Selenium_(software) * [DebianPackage:python-selenium], [DebianPackage:chromedriver], [DebianPackage:firefoxdriver] == Package management (secondary) == === MS Winfows === * https://en.wikipedia.org/wiki/NuGet#Chocolatey * https://chocolatey.org/packages === Mac OS X === * https://en.wikipedia.org/wiki/Fink * https://en.wikipedia.org/wiki/MacPorts === Portable === * [http://superuser.com/questions/647151/package-manager-for-use-as-normal-user-inside-home-direcotry package manager for use as normal user inside home directory] ==== NetBSD pkgsrc ==== * https://en.wikipedia.org/wiki/Pkgsrc * http://www.pkgsrc.org/ (see within others: Latest stable release) * https://pkgsrc.joyent.com/install-on-linux/ * https://pkgsrc.joyent.com/bootstrap/ * http://www.netbsd.org/docs/pkgsrc/using.html ===== Example ===== {{{#!sh $ sudo aptitude install cvs $ mkdir pkgsrc $ cd pkgsrc/ $ cvs -d anoncvs@anoncvs.netbsd.org:/cvsroot co -rpkgsrc-2014Q4 -P pkgsrc # UPDATE this! See News on http://pkgsrc.org/ $ cd pkgsrc/bootstrap/ $ rm -r work/ # just in case it is not the first attempt to compile $ env SH=/bin/bash ./bootstrap --prefix=${HOME}/pkgsrc --unprivileged ... => Please note the following: =========================================================================== $NetBSD: MESSAGE,v 1.6 2014/12/05 14:31:07 schmonz Exp $ You may wish to have the vulnerabilities file downloaded daily so that it remains current. This may be done by adding an appropriate entry to a user's crontab(5) entry. For example the entry # download vulnerabilities file 0 3 * * * /home/$USER/pkgsrc/sbin/pkg_admin fetch-pkg-vulnerabilities >/dev/null 2>&1 will update the vulnerability list every day at 3AM. You may wish to do this more often than once a day. In addition, you may wish to run the package audit from the daily security script. This may be accomplished by adding the following lines to /etc/security.local if [ -x /home/$USER/pkgsrc/sbin/pkg_admin ]; then /home/$USER/pkgsrc/sbin/pkg_admin audit fi Alternatively this can also be acomplished by adding an entry to a user's crontab(5) file. e.g.: # run audit-packages 0 3 * * * /home/$USER/pkgsrc/sbin/pkg_admin audit Both pkg_admin subcommands can be run as as an unprivileged user, as long as the user chosen has permission to read the pkgdb and to write the pkg-vulnerabilities to /home/$USER/pkgsrc/var/db/pkg. The behavior of pkg_admin and pkg_add can be customised with pkg_install.conf. Please see pkg_install.conf(5) for details. If you want to use GPG signature verification you will need to install GnuPG and set the path for GPG appropriately in your pkg_install.conf. =========================================================================== => Registering installation for pkg_install-20130902nb1 ===> running: /bin/sh /tmp/pkgsrc/pkgsrc/bootstrap/work/bin/install-sh -d -o $USER -g $USER /home/$USER/pkgsrc/etc =========================================================================== Please remember to add /home/$USER/pkgsrc/bin to your PATH environment variable and /home/$USER/pkgsrc/man to your MANPATH environment variable, if necessary. An example mk.conf file with the settings you provided to "bootstrap" has been created for you. It can be found in: /home/$USER/pkgsrc/etc/mk.conf You can find extensive documentation of the NetBSD Packages Collection in /tmp/pkgsrc/pkgsrc/doc/pkgsrc.txt. Hopefully everything is now complete. Thank you for using pkgsrc! =========================================================================== }}} ==== Gentoo Prefix ==== * https://en.wikipedia.org/wiki/Gentoo/Alt * https://wiki.gentoo.org/wiki/Project:Alt * https://wiki.gentoo.org/wiki/Project:Prefix * https://wiki.gentoo.org/wiki/Project:Prefix/Bootstrap * https://wiki.gentoo.org/wiki/Project:Prefix/Manual_Bootstrap * Does not seems to work on Debian 8 i686 (stage 2 regular no rap, gmp multilib problem) == Desktop applications == === Video editors === * [DebianPackage:openshot] https://en.wikipedia.org/wiki/OpenShot * [DebianPackage:pitivi] non-linear audio/video editor using GStreamer https://en.wikipedia.org/wiki/Pitivi * [DebianPackage:kino] decreasing popularity (2016-09) https://en.wikipedia.org/wiki/Kino_(software) * [https://en.wikipedia.org/wiki/Ubuntu_Studio#Video Ubuntu_Studio#Video (Wikipedia)] = Software development process = * [WikiPedia:Software_development_process] = String libraries = == Compiled languages string library == === C === * [http://stackoverflow.com/questions/4688041/good-c-string-library Good C string library] * [https://github.com/antirez/sds antirez/sds] Simple Dynamic Strings === C++ === * [http://stackoverflow.com/questions/1101599/good-c-string-manipulation-library Good C++ string manipulation library] * [http://stackoverflow.com/questions/10009104/using-string-library-in-c Using string library in C++] * [http://stackoverflow.com/questions/10392858/how-string-library-works-in-c How string library works in C++?] * [http://stackoverflow.com/questions/2548075/c-string-template-library C++ string template library] === D (Dlang) === * [https://dlang.org/library/std/string.html Module std.string] * [http://dlang.org/phobos/std_string.html std.string] * [http://www.digitalmars.com/d/1.0/cppstrings.html D Strings vs C++ Strings] * [https://www.tutorialspoint.com/d_programming/d_programming_strings.htm D - Strings] * [http://ddili.org/ders/d.en/strings.html Strings] * [https://en.wikibooks.org/wiki/A_Beginner%27s_Guide_to_D/D_Transition_Guide#Strings Strings (Wikibooks)] === Golang === ... === Cython === * [http://cython.readthedocs.io/en/latest/src/tutorial/strings.html Strings] === Ada === * [http://stackoverflow.com/questions/14298896/fastcgi-with-ada FastCGI with Ada] * [https://github.com/leonardoce/ada-fastcgi leonardoce/ada-fastcgi] * https://en.wikibooks.org/wiki/Ada_Programming/Libraries/MultiPurpose/Matreshka * http://forge.ada-ru.org/matreshka/ === Using a lib from an interpreted language... === lualib, perl6lib, jimlib, pythonlib (maybe slow to start) == Interpreted languages string library == === Lua === * [http://lua-users.org/wiki/StringLibraryTutorial String Library Tutorial] * [https://www.lua.org/pil/20.html 20 – The String Library] === Perl 6 === * [https://perl6.org/ perl6.org] * [http://examples.perl6.org/categories/cookbook/01strings.html Strings] * [https://docs.perl6.org/language.html Perl 6 Language Documentation] * [WikiPedia:Perl_6] [http://www.worldcat.org/search?q=perl+6 WorldCat] * [https://en.wikibooks.org/wiki/Perl_6_Programming Perl 6 Programming] * [http://perl6intro.com/ Perl 6 Introduction] * [http://techbeacon.com/why-perl-6-game-thrones-programming-languages Why Perl 6 is the "Game of Thrones" of programming languages] * https://modules.perl6.org/ ==== FastCGI and web ==== * [https://github.com/supernovus/perl6-fastcgi FastCGI for Perl 6] * [http://perl6maven.com/bailador bailador] route-based web development framework trying to imitate the Perl Dancer framework [https://github.com/ufobat/Bailador ufobat/Bailador] * [http://examples.perl6.org/categories/cookbook/19cgi-programming.html CGI programming] * [http://examples.perl6.org/categories/cookbook/20web-automation.html Web Automation] * [https://github.com/tokuhirom/p6-WebSocket tokuhirom/p6-WebSocket] * perl6 PSGI-compliant frameworks [https://www.google.ca/search?q=PSGI-compliant+frameworks Google] * [https://github.com/supernovus/perl6-web supernovus/perl6-web] === Jim Tcl === ==== Intro ==== * [http://wiki.tcl.tk/13693 Jim Tcl] * [http://wiki.tcl.tk/13925 Jim Extensions] * [http://wiki.tcl.tk/41351 Category Jim Package] * [http://jim.tcl.tk/index.html/doc/www/www/index.html The Jim Interpreter] [http://jim.tcl.tk/index.html/doc/www/www/news/ news] [http://jim.tcl.tk/index.html/doc/www/www/documentation/ documentation] [http://jim.tcl.tk/fossil/doc/trunk/Tcl_shipped.html#_string string] * [http://jim.tcl.tk/fossil/doc/www/www/documentation/utf8/ UTF-8 AND UNICODE] * https://github.com/msteveb/jimtcl [DebianPackage:jimsh] * [Jim_Tcl site:rosettacode.org Rosetta Code] * [http://www.invece.org/tclwise/ tclwise] Tcl intro [http://www.invece.org/tclwise/strings.html Strings] ==== C language interface ==== * [http://stackoverflow.com/questions/29552709/how-to-use-the-tcl-script-to-test-the-c-language-function-on-the-embedded-system How to use the TCL script to test the C language function on the embedded system?] * [https://github.com/antirez/Jim/blob/master/doc/Embedder-HOWTO.txt Embedder HOWTO] ==== Web ==== * [https://rosettacode.org/wiki/Hello_world/Web_server#Jim_Tcl Web server (Rosetta)] * [https://github.com/dbohdan/jimhttp dbohdan/jimhttp] === Tcl === * [https://packages.debian.org/en/tcl Debian] * [Google:tcl+object+oriented+programming] * //[http://www.magicsplat.com/articles/oo.html Object Oriented Programming in Tcl]// ==== C language interface ==== * [http://wiki.tcl.tk/4509 extension] * [http://wiki.tcl.tk/6276 Extending Tcl] * [http://wiki.tcl.tk/12265 How to invoke a C function from Tcl] * [http://wiki.tcl.tk/1197 Ffidl] [https://github.com/prs-de/ffidl prs-de/ffidl] [https://prs-de.github.io/ffidl/ Ffidl: Extend Tcl without extensions] [http://elf.org/ffidl/ Ffidl Version 0.6] * [http://wiki.tcl.tk/14623 Ffix - Ffidl eXtented] * [http://wiki.tcl.tk/11153 Hello World as a C extension] * [http://www.tek-tips.com/viewthread.cfm?qid=664104 Calling C function from TCL] * [http://stackoverflow.com/questions/5595918/using-ffidl-with-tcl-to-return-pass-by-reference-strings-and-arrays Using Ffidl with TCL to return pass-by-reference strings and arrays] * [http://stackoverflow.com/questions/7443273/calling-functions-from-c-example-i-in-tcl-code Calling functions from C (example.i) in TCL code] = [https://gist.github.com/ GitHub Gist] Instantly share code, notes, and snippets = = [http://code.activestate.com/recipes/ ActiveState Code » Recipes] snippets to learn from and use (Python, (Perl, Tcl)) = = Object Dependencies Management = [WikiPedia:Dependency_injection] * [Google:dependency+injection+container] * //[http://martinfowler.com/articles/injection.html Inversion of Control Containers and the Dependency Injection pattern]// [http://martinfowler.com/ Martin Fowler] 2004 == Tutorials == * //[https://knpuniversity.com/screencast/dependency-injection Dependency Injection and the art of services and containers]// Knp University ~2013 == In languages == === Java === * [Google:java+dependency+injection+container] * [WikiPedia:Google_Guice] * Spring === PHP === * [Google:php+dependency+injection+container] === Javascript === * [Google:javascript+dependency+injection+container] === Python === * [Google:python+dependency+injection+container] * dependency injection [https://pypi.python.org/pypi?%3Aaction=search&term=dependency+injection pypi] * [https://pypi.python.org/pypi/dependency_injector dependency_injector] Dependency injection microframework for Python * [https://pypi.python.org/pypi/injector injector] Python dependency injection framework, inspired by Guice * [https://pypi.python.org/pypi/ioc ioc] A small dependency injection container based on Symfony2 Dependency Component * //[http://code.activestate.com/recipes/413268/ Dependency Injection The Python Way (Python recipe)]// Sample Pythonic Inversion-of-Control Pseudo-Container 2005 * //[https://wiki.python.org/moin/DependencyInjectionPattern DependencyInjectionPattern]// === Lua === * [Google:lua+object+oriented+programming+dependency+injection+container] (nothing in 2016) === Perl === * [Google:perl+dependency+injection+container] * [Google:perl6+dependency+injection+container] === Dlang === * [Google:dlang+dependency+injection+container] === Golang === * [Google:golang+dependency+injection+container] === C++ === * [Google:c%2B%2B+dependency+injection+container]