<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://fixme.ch/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nwolff</id>
		<title>Fixme.ch - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://fixme.ch/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nwolff"/>
		<link rel="alternate" type="text/html" href="http://fixme.ch/wiki/Special:Contributions/Nwolff"/>
		<updated>2026-04-10T14:28:59Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1616</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1616"/>
				<updated>2012-02-12T10:35:46Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: /* Result */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like http://sprunge.us/ but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** Runs with python3&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface (rest and html) using bottle.py&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat, curl, debian and arch, tiling window managers.&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
*** Choosing python which everybody knew well together with new frameworks and tools helped learn new things while still staying productive.&lt;br /&gt;
*** The 'alpha technologies' and 'debian stable' requirement were completely opposite. We ended-up doing 'alpha technologies'&lt;br /&gt;
*** Always wash hands between eating hamburger and coding. Keyboard now smells of onions.&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1615</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1615"/>
				<updated>2012-02-12T10:13:53Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: /* Projects Proposition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like http://sprunge.us/ but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** Runs with python3&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface (rest and html) using bottle.py&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat, curl, debian and arch, tiling window managers.&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
*** Choosing python which everybody knew well together with new frameworks and tools helped learn new things while still staying productive.&lt;br /&gt;
*** The 'alpha technologies' and 'debian stable' requirement were completely opposite. We ended-up doing 'alpha technologies'&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1614</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1614"/>
				<updated>2012-02-12T10:12:03Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: /* Result */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like sprung but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** Runs with python3&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface (rest and html) using bottle.py&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat, curl, debian and arch, tiling window managers.&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
*** Choosing python which everybody knew well together with new frameworks and tools helped learn new things while still staying productive.&lt;br /&gt;
*** The 'alpha technologies' and 'debian stable' requirement were completely opposite. We ended-up doing 'alpha technologies'&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1613</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1613"/>
				<updated>2012-02-12T10:06:40Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: /* Result */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like sprung but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface using flask (python 2.7), and another using the http.server module&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat and curl&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
*** Choosing python which everybody knew well together with new frameworks and tools helped learn new things while still staying productive.&lt;br /&gt;
*** The 'alpha technologies' and 'debian stable' requirement were completely opposite. We ended-up doing 'alpha technologies'&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1612</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1612"/>
				<updated>2012-02-12T09:56:21Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: /* Result */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like sprung but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface using flask (python 2.7), and another using the http.server module&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat and curl&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
*** Choosing python which everybody knew well together with new frameworks and tools helped learn new things while still staying productive.&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	<entry>
		<id>http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1611</id>
		<title>CodingNight1</title>
		<link rel="alternate" type="text/html" href="http://fixme.ch/w/index.php?title=CodingNight1&amp;diff=1611"/>
				<updated>2012-02-12T09:53:45Z</updated>
		
		<summary type="html">&lt;p&gt;Nwolff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:CodingNight]]&lt;br /&gt;
* 10th february 2012 at 18h&lt;br /&gt;
* Etherpad: http://62.220.136.218:9001/p/codingnight1&lt;br /&gt;
* Git depot: ssh://gitolite@foo.fixme.ch:1337/pastebin (ask for the access to nemen or gcmalloc&lt;br /&gt;
= Projects Proposition =&lt;br /&gt;
The proposed projects are:&lt;br /&gt;
&lt;br /&gt;
* Merge patches and release new version of wiki2beamer&lt;br /&gt;
* Pastebin application like sprung but based on flask&lt;br /&gt;
* Adding patch to xchat otr.&lt;br /&gt;
* Soundcloud plugin for mpd, should similar to the lastFM plugin.&lt;br /&gt;
&lt;br /&gt;
* Android app:&lt;br /&gt;
** Record time slept.&lt;br /&gt;
** Ssh remote (multimedia key, slide remote)&lt;br /&gt;
** read only for etherpad formats&lt;br /&gt;
** LDAP search&lt;br /&gt;
&lt;br /&gt;
* little game:&lt;br /&gt;
** little to no graphic at all (sound driven game, or touch driven game)&lt;br /&gt;
** platform game with open source sprite&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
* Create a minimal pastebin&lt;br /&gt;
&lt;br /&gt;
= Result =&lt;br /&gt;
* A pastebin app which has the following component&lt;br /&gt;
** a [[http://fallabs.com/kyotocabinet/|kyoto cabinet]] database.&lt;br /&gt;
** a api that can be easily adapted for quite any databases.&lt;br /&gt;
** A webinterface using flask (python 2.7), and another using the http.server module&lt;br /&gt;
** A very raw socket interface with direct access trough telnet.&lt;br /&gt;
&lt;br /&gt;
* We learnt alot about:&lt;br /&gt;
** esc&lt;br /&gt;
*** Python3 -- How to target this platform, available libraries and frameworks&lt;br /&gt;
*** Crazy high-performance Japanese database applications&lt;br /&gt;
*** Raw socket programming&lt;br /&gt;
*** Web-frameworks programming&lt;br /&gt;
*** Group dynamics during a coding-night&lt;br /&gt;
*** Also, adding more french vocab to my arsenal&lt;br /&gt;
*** Summary: although we didn't produce any production ready code, we never the less came up with multiple proof of concepts&lt;br /&gt;
*** Success: ✓&lt;br /&gt;
** gcmalloc&lt;br /&gt;
*** Easy merging for git branches.&lt;br /&gt;
*** Two japanese brothers with funny names.&lt;br /&gt;
*** Refreshing my socket programming fu.&lt;br /&gt;
*** A new way to check my code trough pylint.&lt;br /&gt;
*** Definition of the project and definition of a simple api.&lt;br /&gt;
** Rorist&lt;br /&gt;
*** Python 3 library still hard to find, some changes are kind of tricky (strings/bytes)&lt;br /&gt;
*** It's hard to incorporate everyone in the coding process with different level of programming (Oliv felt a little bit left over)&lt;br /&gt;
*** We had very good ideas, but we should have limited our self to the basics&lt;br /&gt;
*** I'm a slow thinker, sometimes hard to follow speedy gcmalloc and esc :)&lt;br /&gt;
*** Met a nice guy (coming from techup.ch) who had nice ideas and acted as some sort of complement project manager&lt;br /&gt;
*** ...&lt;br /&gt;
** nico_nico&lt;br /&gt;
*** zsh arcana&lt;br /&gt;
*** Python 3 for web programming. bottle.py works but no support for WSGI: http://www.wsgi.org/en/latest/python3.html&lt;br /&gt;
*** etherpad. Works really well for a lot of things: collecting ideas and feature lists, drafting apis&lt;br /&gt;
*** Very little friction plugging everybody's code together.&lt;br /&gt;
*** Everybody loves netcat and curl&lt;br /&gt;
*** Back to irc after 15 year hiatus&lt;br /&gt;
*** The idiom 'nerd-snipe'&lt;br /&gt;
*** Nobody can resist strange japanese projects with cool names (see 'nerd-snipe').&lt;br /&gt;
&lt;br /&gt;
=Etherpad Dump=&lt;br /&gt;
 &amp;lt;verbatim&amp;gt;&lt;br /&gt;
 1Goal &lt;br /&gt;
 Developing an easy to install and maintain distributed server for pasting contents.&lt;br /&gt;
 GRADING:&lt;br /&gt;
 1 to 3 &lt;br /&gt;
 Rate features 1-3: 3 is must, 2 is nice to have, 1 is meh&lt;br /&gt;
 2Interfaces&lt;br /&gt;
 111231- Irc hook, irc bot&lt;br /&gt;
 3233333 - Put paste with curl, retrieve them with netcat or curl , possibility to retrieve metadata with the paste.&lt;br /&gt;
 2312203 - Nice webinterface&lt;br /&gt;
 3Features&lt;br /&gt;
 111331- FUCKING ALPHA TECHNOLOGIES !! (languages: D, lua, bash, haskell; storage: rdf; constraints: single source-file)&lt;br /&gt;
 333333- KISS&lt;br /&gt;
 333333- Simple installation&lt;br /&gt;
 333333- Simple configuration, and maintenance.&lt;br /&gt;
 121111- expandable with modules ?&lt;br /&gt;
 3333333- utf-8 for the crowd for !!!! &lt;br /&gt;
 232333- Write once pastes (no future modifications) with expiration&lt;br /&gt;
 132331- Metadata, link paste to each other&lt;br /&gt;
 1112011- General Data storage (Image Vids ...)&lt;br /&gt;
 311111- Programming language detection&lt;br /&gt;
 3113121- Searchable pastebin&lt;br /&gt;
 2323323- Simple API&lt;br /&gt;
 112121- Easy remembered paste&lt;br /&gt;
 133033- Named paste&lt;br /&gt;
 12202- Private material (protected to a range of user)&lt;br /&gt;
 2332323- One time access pastebin&lt;br /&gt;
 3333333 - No guarantees on data&lt;br /&gt;
 333313 - default expiration time&lt;br /&gt;
 111121 - General stats&lt;br /&gt;
 1131 - Similarity detection&lt;br /&gt;
 1212023 - Automatic and easy testing (Jenkins)&lt;br /&gt;
 Counting Votes Script&lt;br /&gt;
 http://sprunge.us/agCI&lt;br /&gt;
 http://sprunge.us/ejMV&lt;br /&gt;
 Api :&lt;br /&gt;
 Git repository:&lt;br /&gt;
 git clone ssh://gitolite@foo.fixme.ch:1337/pastebin&lt;br /&gt;
 PASTEBINLIB:&lt;br /&gt;
 api&lt;br /&gt;
 // Option 1 (with soft meta)&lt;br /&gt;
 retrieve(uid[, with_metadata]) -&amp;gt; content, [meta]&lt;br /&gt;
 post(utf8-text, [[timeout], **meta_dict]) -&amp;gt; uid&lt;br /&gt;
 make_paste_link(uid_list[, meta_dict]) -&amp;gt; meta_dict&lt;br /&gt;
 // Alternative (no soft meta)&lt;br /&gt;
 post(utf8-text, [**expiry_policy], [**timeout], [**prefered_uid], [**linked_uid_list]) -&amp;gt; uid&lt;br /&gt;
 '(expiry_policy is one of NEVER, AFTER_READ)&lt;br /&gt;
 Example: post(&amp;quot;def foo(): print 'hello'&amp;quot;, expriry_policy=AFTER_READ, timeout=5, prefered_uid=&amp;quot;foo&amp;quot;, linked_uid_list=[&amp;quot;bar&amp;quot;, &amp;quot;baz&amp;quot;])&lt;br /&gt;
 retrieve(uid) -&amp;gt; utf8-text&lt;br /&gt;
 get_creation_timestamp(uid) -&amp;gt; timestamp&lt;br /&gt;
 get_linked(uid) -&amp;gt; uids&lt;br /&gt;
 web client&lt;br /&gt;
 - WSGI is a apparently a nogo with Python 3, spec is ready but not implemented&lt;br /&gt;
 Syntax rule&lt;br /&gt;
 module name all lower case, no underscore all appended&lt;br /&gt;
 example &lt;br /&gt;
 in &lt;br /&gt;
 caca.py&lt;br /&gt;
 class GrosCacaca(Process): #camel &lt;br /&gt;
 &lt;br /&gt;
     def __init__(self): #4 space indentation all lowercase&lt;br /&gt;
 &lt;br /&gt;
     #all variable are lowercase&lt;br /&gt;
 &lt;br /&gt;
     self.kaka = &amp;quot;I love string anyway&amp;quot; #string should be as the C defined it '&lt;br /&gt;
 &lt;br /&gt;
     def _poo(self, today=True): #defined as private method (no obligation to do this)&lt;br /&gt;
 &lt;br /&gt;
     pass&lt;br /&gt;
 &amp;lt;/verbatim&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nwolff</name></author>	</entry>

	</feed>