IRC Logs for #circuits Saturday, 2015-06-13

*** Osso has joined #circuits10:02
riotnice :) i think i started my first book yesterday12:12
riotthe HFOS Manual. we'll probably be buggered to print some of these, for offline usage.12:21
spaceoneyour first book? WTF12:24
spaceoneahh, "writing" not "reading" ?12:24
rioti just dropped the spoon hard onto my lasagne12:25
spaceonethat's okay as long as you don't drop spaceone into your language12:25
riotnah, i wouldn't ;)12:26
riottoo busy - writing code AND a book now.. uh, oh.12:26
spaceoneme, too... regular work plus multiple private projects12:27
riotalas, i need moar community, thus moar HFOS 1.012:27
spaceoneand a real life12:27
spaceonewhat is HFOS ?12:27
riotoh, yes, i do supportdesk for a nice company in the music industry ;)12:27
riotHackerfleet Operating System12:27
spaceonealternative to linux?12:28
riotan internet age navigation system, opensource and community focussed12:28
spaceonesounds nice12:28
riotno, its supposed to go on top of debian on an embedded machine (like, an arm quadcore) connected to your ship's bus12:28
spaceoneriot: nice12:29
riotand it ideally comes with a companion machine up your mast, the mastbox - which provdes wifi access, mesh networking as well as umts(in future:lte) uplinks12:29
prologicand it uses circuits heavily right? :)12:29
riotso you can access hfos with your own phone/tablet/device to get data about current navigation status etc12:29
riotthe backend is exclusively in circuits, yup12:30
prologicNICE! :)12:30
prologicthat's the part I love the most :)12:30
riothehe. the frontend is html5 based, makes heavy use of angular.js, leaflet and some others12:30
prologicI'd absolutely love to see a visual component graph of your system12:30
riotdata comes from lots of sources like openseamap, openstreetmap, weather databases, etc.pp.12:30
riotMemoryMonitor, eh? do want12:31
prologicYou've seen my geo/gis project right?12:31
spaceoneprologic: btw. we should split the graph() function... it always writes an image..12:31
riotglanced at it, yes12:31
prologicspaceone, agreed12:31
spaceonei will create a issue12:31
riotah, never seen the frontend, looked for a link in the repo.. thats always hard ;)12:31
prologicfile an isssue :)12:31
prologicit uses to use pyplot12:32
prologicnow it uses networkx12:32
prologicbut I dno't like the dependenices that networkx pulls in12:32
prologicoh well :)12:32
riotI'd love to have the graph (interactively) in my angular frontend12:32
prologicoh man12:32
prologicif you did that12:32
riotsome friends are pulling this off but with node.js (and i don't really like node.js)12:32
prologicI'd love you for it :)12:32
prologica real-time interactive graph of the circuits system12:32
prologicwould be f'n awesome12:32
prologicno really :)12:32
rioti would need it anyway, sooner or later, for the modular sequencer/synth i'd love to build12:33
prologicwe have core low-level utils to produce the output necessary to graph it anyway you wish12:33
rioti'm dreaming of something like puredata12:33
prologicI'd just love it because it is a really powerful way of demonstrating why circuits is such a great framework to others12:33
prologicload a plugin at runtime12:33
prologicand watch the grpah change in realtime12:33
riotthis one is veery interesting (Disclaimer: i work there)
riotbut its in c++, the frontend in java12:34
prologicget in on this ticket :)12:38
riotsadly, i can't find any really nice javascript rendering frontends :((12:40
riotthey should be able to visualize events and handlers12:41
riototherwise, it just wouldn't produce the whole fun12:41
prologicI can think of one12:42
prologicccav uses it12:42
prologicmaybe a forced directed graph12:44
spaceonehm... cmp() does not exists in python3 ?12:45
riotthis looks promising:
riotyeah, thats it:
riotwhy'd you expect it to be true?12:50
spaceonewell, this is nice but not in terms of writing compat. aoos12:50
prologicspaceone, because the language doesn't need it12:51
spaceonei have to reread every line of code where i compare things12:51
prologicin fact no language needs it12:51
prologicyou only need one way to compare things12:51
spaceoneprologic: but how can i replace cmp() ?12:51
prologiceverything else can be built on top of that12:51
prologicusing a key function12:51
prologicit's the same thing12:51
prologicif you're talking about cmo= being gone away12:51
spaceoneit is gone, how can i replace it in my code?12:51
spaceonecmp(foo, bar)12:52
spaceone→ ?12:52
spaceonei implemented __cmp__12:52
prologicimplement __eq__12:52
prologicnot __cmp__12:52
prologicyou need to implement __eq__12:52
prologicand __lt__12:52
spaceonedoes this work in py2?12:52
spaceonei need to implement 2 functions?12:53
prologiconly if you want > < to work :)12:53
prologicif you only care about eqaulity __eq__ is fine12:53
prologicduck typing :)12:53
prologicprotocols :)12:53
riotooh, lookatit: cytoscape supports angular already! Seweeeeet!12:53
prologicyeah taking a look12:53
prologicriot, oh wow12:54
prologicthat's f'n cool as! :)12:54
prologicbuild us this thing!12:54
prologicI want it in circuits.tools12:54
prologicso I'm guessing it'll be a little webapp of sorts?12:54
prologicwith an api that drives the data?12:54
riotthere we hit another of my problems:
riotwhat i actually would love to have (finally), is an in-app-pluginstore, where the user can download&install various application aspects - e.g. a media library, a satellite radio controller, games.. whatever ;)12:57
riotbut that needs clean separation - and even more complicated clean reintegration - of a lot of things12:57
prologiccircuits.core.loader implements a very basic plugin system13:00
prologicwhich you can probably use as a basis or help us extend it13:00
prologicwhat I believe it needs it to support setuptools namespacing13:00
prologicso you can define an application plugin namespace for your application13:00
prologicand Loader() can utilize this13:00
riotyeah, i've done that, as mentioned in hfos-5213:01
prologicthen package/plugin resources become trivially part of the pacakge13:01
prologicusing the normal pkg_resources13:01
rioti'll check out the loader.13:01
prologicI've done it too in the past13:01
prologicit just lacks setuptools/entrypoints support I think13:01
riotthe frontend part i personally would probably build as angular-controller or something13:01
prologickdb and cgod are all plugin based13:01
riotkdb? cgod?13:02
riotdid you consider debian package autofoaming? i.e. scriptery etc to roll debian packages?13:05
prologicon github :)13:06
prologicI don't really believe in packaging up python apps in this way13:06
prologicbecause pip is a far superior packaging tool for python really13:07
prologicihmo :)13:07
prologicI'm a CRUX port maintainer of many hundreds of ports13:07
prologicincluding *all* Python versions13:07
prologicbut I actively discourage others from packaging up Python packages that are on PyPi and pip installable :)13:07
rioti see =)13:11
riotwe'll probably don't come around our own debian-independent update mechanism, anyway - since this supposed to run worldwide mesh operations13:11
prologicI think tying yourself to distribuctions these days is kind of silly13:13
prologicit's just an operating system13:13
prologicI'm a big fan of Docker you see13:13
prologicso I don't believe in building applications that run on blah13:13
prologicthey should run anywhere on almost anything13:13
riotdifficult topic if you're talking about embedded systems.13:13
prologicdocker run -d -p 8000:8000 prologic/circuits circuits.web13:13
prologiccurl -q -o - http://localhost:8000/hello13:13
prologiceven some embedded systems you can do this on too :)13:14
prologicdepends "how" restricted it is :)13:14
spaceoneit was much easier to just implement __cmp__13:14
rioti don't even have mongodb everywhere13:14
prologicI'm big into Arduino and emebdded stuff too!13:14
prologicI recently backed the WiPy13:14
prologiccan't way to get my hands on that :)13:14
spaceone__lt__, __gt__ and __eq__ is much code duplication13:14
prologicanyway irrelevant argument :)13:15
prologicjust don't tie the app to Debian per se :)13:15
prologicit *should* (ihmo) be pip install hfos13:15
riotno. me neither. mongodb is listed in the docs as requirement. You can use alien to convert it to redhat or whatever ;)13:15
riotit will probably also run on windows or even osx - but i'm never going to actively support that ;)13:16
riotmakes absolutely no sense - since i actually _want_ to tie it to hardware ;D13:16
riotbut i'm not discouraging or hampering that either, it would be dishonest and mean *g*13:16
prologicseen rethinkdb?13:17
spaceoneprologic: what do you think... should __lt__ raise exceptions?13:21
spaceonein case it cannot compare13:22
spaceonein __eq__ i will definately just return False13:22
prologicbecause object.__le__13:22
prologicyou'd be overriding a default behavior13:22
spaceone__le__ returns False ?13:23
prologicwhich resorts to identify comparisions13:23
spaceoneoh okay, i can call super()13:23
prologic>>> object.__lt__13:23
prologic<method-wrapper '__lt__' of type object at 0x7f1eb8279c80>13:23
spaceonebut it could lead to wrong behavior13:24
spaceonewhen having typos13:25
*** Coldblackice has quit IRC13:26
prologicwell not really13:28
prologicif you have an int13:28
prologicand an object that doesn't implement __le__13:28
prologicwhat would you expect?13:28
prologicIn Python it defaults to object.__le__13:28
prologicand compares the identities13:28
prologic>>> class Foo(object):13:29
prologic...     pass13:29
prologic>>> foo = Foo()13:29
prologic>>> id(foo)13:29
prologic>>> x = id(foo) + 113:29
prologic>>> x < foo13:29
prologic>>> x > foo13:29
prologic>>> id(x)13:30
spaceoneprologic: ahh, python3 raises TypeError is the type doesn't match13:30
spaceoneso i will raise, too13:30
prologicahh yeah13:30
prologicPython3 did change a few things there13:30
spaceonethat's better13:30
spaceoneas it was error prone13:30
prologicI think in Python3 going forward in general Python is becoming more strictly/strongly typed13:30
prologicand with type hints optionally statically typed too13:31
prologicit's coming13:31
spaceoneis py3 still slower than py2?13:31
spaceonei hate that print was removed13:31
prologicI believe so13:31
spaceonethat's why i hate python313:31
spaceoneand don't use it13:31
prologictype checking at runtime in a dynmaic langauge costs13:31
prologicI don't actively use it yet either13:31
prologicmostly because I still have to support Python 2.6/2.713:32
prologicand it *is* still the most portable and stable version of the language13:32
spaceoneyes it is13:33
spaceoneand it is most widely used13:33
*** Romster has quit IRC15:18
*** Romster has joined #circuits15:25
*** green1 has joined #circuits16:43
*** Osso has quit IRC17:34
*** Coldblackice has joined #circuits19:35
spaceonewhat is 'file' in python3?19:35
*** Coldblackice has quit IRC19:47
*** Coldblackice has joined #circuits19:50
*** Coldblackice has quit IRC20:10
*** Coldblackice has joined #circuits20:17
*** Green11 has joined #circuits20:29
*** green1 has quit IRC20:32
*** Green11 has quit IRC21:04
*** bleep has joined #circuits23:28
*** FSX has quit IRC23:29

Generated by 2.11.0 by Marius Gedminas - find it at!