2013-01-24.log

--- Log opened Thu Jan 24 00:00:39 2013
@kanzurewhat was supposed to be included in his $500 million plan?00:02
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]00:02
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap00:03
u-metacognitionSounds like the probability of being in a sim just got higher00:05
@kanzureuh00:05
@kanzurebecause they chose his project, you are updating your priors for whether or not you are simulated?00:06
u-metacognitionA bit at least00:07
u-metacognitionIf they'll fund a large scale project to emulate a brain I think that raises the odds00:07
u-metacognitionThe world could have been such that people would at least passively resist the idea00:09
u-metacognitionnot actively support it00:09
-!- lichen [~lichen@c-24-21-206-64.hsd1.or.comcast.net] has quit [Quit: later]00:21
@kanzurehuh? none of that should have any baring on your computations for that. i think you're being unreasonable.00:23
-!- lichen [~lichen@c-24-21-206-64.hsd1.or.comcast.net] has joined ##hplusroadmap00:24
u-metacognitionOne of the main defeaters of the simulation argument is that we won't develop the ability or inclination00:25
@kanzurethe simulation argument is primarily concerning whether or not you are presently simulated00:25
u-metacognitionSure00:26
u-metacognitionShouldn't developing the ability raise the chances in any case00:28
Viper168lol, didn't we discuss this in the other channel last night00:29
u-metacognitionWe could have been in a world where things just simply didn't get that for or couldn't be made for whatever reason00:30
@kanzureu-metacognition: no. it would increase the likelihood that it is possible in the first place, but not whether or not your universe happens to be simulated.00:30
u-metacognitionWhy?00:31
@kanzureinsert various pascal wager arguments here00:33
@kanzurepascalean-wagerian00:34
@kanzureactually, that's not a good answer.00:37
sylph_makoI agree. If this tells us anything it's that the gods of the simulation are more likely to be human. That situation is not a teapot. We could reason about that productively. Unlike most possible scenarios.00:41
@kanzureit tells you nothing though00:41
sylph_makoYep.00:41
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has quit [Remote host closed the connection]00:47
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]00:47
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has joined ##hplusroadmap00:47
-!- chrisian is now known as strangewarp00:56
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has quit [Remote host closed the connection]01:03
eleitlgood morning01:03
eleitlif it's a probability argument, it doesn't work01:03
u-metacognitionMorning01:03
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has joined ##hplusroadmap01:04
eleitlas kanzure says, it only says that it's at all possible, not how it is probable01:04
eleitlit is some information, but only qualitative01:04
eleitlthe reason is statistics fail on side of Bostrom01:04
u-metacognitionSo you're saying the probability should not go up at all before you know it's possible to after you know it's possible?01:05
u-metacognitionThat doesn't seem right to me01:06
eleitlit does go up, from unknown01:06
u-metacognitionThat's what I'm saying01:06
eleitldefinitely observer-moments don't tell you a thing01:06
eleitlwhether it's 10^0 or 10^100, you still self-observe01:07
eleitlcan't tell between these two branches01:07
u-metacognitionyea01:07
eleitlwe're in agreement, then01:07
u-metacognitionI think so01:07
phmIf you knew you were in a sim; would you behave any different to the way you do now?01:07
eleitlProbably.01:07
u-metacognitionIf I knew for sure?01:08
u-metacognitionDefinitely01:08
phmhow?01:08
eleitlUnless the sim is a process.01:08
u-metacognitionWait I amend that01:08
eleitlLike Tegmark-stuff.01:08
u-metacognitiononly if I knew whether other agents were real or not01:08
@kanzurehuh? being in a simulation doesnt change realness.01:08
@kanzureyou guys are crazy01:08
eleitlIf there's a simulator that is a person, there is intent.01:08
u-metacognitionYou could be the only one in a simulation01:09
eleitlIf this is Tegmark, there is no intent, hence no incentive to behave otherwise.01:09
u-metacognitionlike a lucid dream or it could be multi-agent01:09
phmHow would it change your behaviour?01:09
eleitlLook, I ran plenty of random CA sims as a kid.01:09
@kanzureis golly still around?01:10
@kanzurehttp://golly.sf.net/01:10
eleitlProbably, it even did Hashlife.01:10
eleitlIf this is the equivalent of a large scale experiment, there's no reason to behave any different, other than flipping the idiot kid the bird.01:10
eleitlNot that he notices.01:10
@kanzurei have a friend obsessed with a certain CA rule he's been investigating for years01:11
@kanzurehttp://transforum.net/m.cgi?num=292601:11
@kanzurehttp://www.thewildca.com/images/Whoa_130000.gif01:11
eleitlI'm only interested in designing CA rules for optimal computation in hexagonal closest or cubic closest, or cubic primitive cell packing.01:11
eleitlI've seen very similiar to identical behavior when I did run my CA sims.01:12
eleitlSome of these are amazing.01:12
eleitldifferent speeds of gliders, organic shapes01:12
strangewarpdamn that's a pretty CA...01:12
eleitlall in 1d01:12
phmDoes anyone here work on proof checkers or meta-mathematics stuff?01:13
@kanzureno, go away01:13
browniesmeta-mathematics? i think we just call that "mathematics"01:13
phmno. They are very different01:13
eleitlhttp://www.nature.com/news/billion-euro-brain-simulation-and-graphene-projects-win-european-funds-1.12291 <-- Henry got his wish01:14
@kanzureeleitl: you're getting slow!01:14
eleitlnow he damn better delivers01:14
@kanzurei've been trying to find his proposal though01:14
@kanzurewhat exactly is he going to be spending $500 million on?01:14
eleitlI'm not slow, I post everything I see. I just don't have time to look actively, because I'm busy, for a change.01:14
@kanzurestrangewarp: http://www.thewildca.com/01:15
@kanzureah maybe this isi t01:18
@kanzurehttp://www.unicog.org/publications/Human%20Brain%20Project%20for%20FET11%20v2.pdf01:18
eleitlMarkram and Allen Institute should team up01:18
@kanzureyeah01:19
@kanzure"The project will build on the work of European projects such as SenseMaker [7], FACETS [8],01:19
@kanzureBrainScales [9] and SpiNNaker [10] that have already built “neuromorphic chips”. Meanwhile, HBP01:19
@kanzuretheoretical neuroscientists will analyze brain models and simulations to reveal fundamental principles of01:19
@kanzureneural computation."01:19
@kanzurewell i guess that's somewhat specific.01:19
eleitlat least that field is not dead, let's be thankful for that01:20
@kanzuresurely there's an actual document somewhere that explains what exactly the money would go towards01:20
@kanzurelast i checked, he had a legion of 100 postdocs01:20
-!- Viper168_ [~Viper@unaffiliated/viper168] has joined ##hplusroadmap01:20
@kanzureso.. now he will have 1,000 postdocs?01:21
@kanzureor just dump it into hardware?01:21
eleitla lot of it will be hardware01:21
eleitlthe next gen Blue Brain is already earmarked01:21
@kanzuresure.. ibm sorta dissociated themselves from him though.01:21
eleitla lot of neuroscience people are jealous01:22
@kanzurewell they should be01:22
archels"principles of neural computation" specific?01:22
archelshard to be more vague01:23
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap01:23
eleitlI wish people would actually try to use GA to optimize biologicially inspired networks01:24
-!- Viper168 [~Viper@unaffiliated/viper168] has quit [Ping timeout: 276 seconds]01:24
@kanzurealso, he possesses a fascinating hypnotic power http://www.youtube.com/watch?v=9gFI7o69VJM#t=60001:24
eleitljust pick 10 or 100 k cell types seeded with real biology data, and look for ways to create morphogenetic programs to wire them up01:24
eleitlno need to fake cell migration though01:24
eleitlof course it would probably make Markram's budget like small beer01:25
eleitllook lie01:25
eleitllike, dammit01:25
@kanzurei also appreciated his non-simulation-related work,01:26
@kanzurehttp://diyhpl.us/~bryan/papers2/neuro/Intense%20world%20syndrome%20-%20an%20alternative%20hypothesis%20for%20autism%20-%20Markram.pdf01:26
archelseleitl: yes, it's the convolution of NN + GA + biological constrains that is still exceptionally rare01:27
@kanzureeleitl: archels has some supercomputing resources that we might be able to bum off of him01:27
@kanzure*cough*01:27
eleitlhow large the resources, archels?01:27
archelshaha, incidentally I'm just getting those upgraded to Ubuntu 12.0401:27
archelsbut mostly kanzure is making this up. they're just some fast boxes at my university01:28
@kanzureyeah :/01:28
eleitla cluster?01:28
eleitlwith GPGPU?01:28
archelskanzure: http://www.humanbrainproject.eu/files/HBP_flagship.pdf01:28
archelsno, general purpose CPUs01:28
eleitla cluster? how many nodes?01:29
@kanzurewasn't it like 192 TB of RAM?01:29
eleitla single box with a lot of RAM is quite useless01:29
archelsactually my prof is involved in the Human Brain Project, so we could probably arrange CPU time on some pretty fancy systems01:29
archelsbrb, shower01:29
eleitlyou can do nice bioinformatics things, as most bioinformatics code is not parallel01:30
eleitlthe problem with fancy systems is that they're booked to the gills01:30
eleitlyou can easily run a year job on your own cluster, but no can do on a national facility01:30
@kanzurearchels: yes that's what i was looking for, thanks01:38
@kanzurepfft 7148 person-years01:42
-!- Proteus1 [~Proteus@71-34-198-154.omah.qwest.net] has joined ##hplusroadmap01:44
eleitlkanzure: ?01:44
@kanzurejust reading the document archels linked01:45
@kanzurehttp://www.humanbrainproject.eu/files/HBP_flagship.pdf01:45
eleitlso about 100 people/10 years?01:46
eleitlor rather closer to 100001:47
-!- Proteus [~Proteus@unaffiliated/proteus] has quit [Ping timeout: 264 seconds]01:47
eleitlif these are the right people...01:47
eleitlat least they're focusing on the right goal: energy01:48
* kanzure sleeps01:49
eleitlgood night01:49
* eleitl goes to a meeting01:49
-!- phm [~anon@host-78-150-147-154.as13285.net] has quit [Ping timeout: 248 seconds]02:29
-!- chris_99 [~chris_99@unaffiliated/chris-99/x-3062929] has joined ##hplusroadmap02:37
-!- ThomasEgi [~thomas@gw-ko-kostr2.inka-online.net] has joined ##hplusroadmap02:41
-!- ThomasEgi [~thomas@gw-ko-kostr2.inka-online.net] has quit [Changing host]02:41
-!- ThomasEgi [~thomas@panda3d/ThomasEgi] has joined ##hplusroadmap02:41
-!- u-metacognition [~metacogni@99-7-58-96.lightspeed.davlca.sbcglobal.net] has left ##hplusroadmap []02:41
archelsDo I want to do a PhD in Memphis?02:47
archels"Obtaining a Ph.D. typically requires 4-5 years."02:47
browniesdo you want to do a Ph.D. there? do you want to do a Ph.D. there? do you want to do a Ph.D. anywhere?02:47
browniesbetter budget 6 years, to be safe.02:47
archelsheh, heh02:48
archelsNo, I just meant specifically, Memphis, USA?02:49
archelsbible belt?02:49
brownieshm, tennessee right? but it's a large city... might not be that bad.02:50
archelsmmm02:51
brownieswhich program?02:54
archelsComputational Intelligence Laboratory03:00
archelslooks like their main current focus is hierarchical neural networks03:00
-!- sylph_mako [~mako@103-9-42-1.flip.co.nz] has quit [Ping timeout: 248 seconds]03:08
eleitlhow old are you, archels?03:08
eleitlspending 5-6 years on a PhD would depend whether you can afford it03:08
archelsit's fully funded. I'm 2603:11
archelsI'm not really considering anything that would require a hefty loan.03:14
eleitloh, that would be a given. 26 is pretty young.03:18
eleitlWhat do you want to do with the rest of your life?03:18
archelshah, that's what I'm asking myself03:19
archelsI love to be part of academia, but I want to have some fruits of my work other than a few obscure, essentially useless papers03:19
eleitlmy opinion that the funding situation in the academia will become a lot worse03:20
eleitlI might we wrong, of course, but if I was you I'd operate under such assumptions03:20
archelsIn the EU, globally?03:21
eleitlglobally. Things might be slightly different in Asia, but, then, they might be even worse there.03:21
archelsmhm. Well, the fact is, I'm in a bit of a dilemma... I have a running offer for a PhD position. Great pay, good people--but I'm not certain the subject really binds me.03:22
archelss0o it's essentially job security vs. doing something that I really want to do03:23
eleitlwhat do you want to do?03:23
archelsbuild neural networks that do useful things, e.g. control a robot, visual recognition, memory function, etc.03:24
eleitlI think that could be very useful, if you can get your foot into that03:24
archelsthis offer I mentioned has none of that, and I doubt anything of practical value is going to come out of it03:24
archelsaye, which is why this Memphis thing attracted my attention03:25
archelshttps://sites.google.com/site/bonnybanerjee1/03:25
eleitlyou should be able to do PhD in the area03:27
eleitlnot sure you can survive Memphis, but you probably won't see much of it, anyway03:27
archelshaha, that's the spirit :)03:28
eleitlthat Bannerjee guy has clue, is he a name/rising name in the area?03:28
archelsI had never heard of him. The journals he publishes in don't really ring a bell (apart from IEEE), but then again I'm more aware of neuroscience journals than AI journals.03:31
archelsso, will need to do some reading up.03:31
eleitlI would avoid sinking your time into an obscure group in Podunk University03:32
eleitlif he's a rising name that might be worth it, though03:32
eleitlunrelated: does anyone know how Kickstarter works?03:32
eleitldoes one need to be USian, or an USian needs to be on the team?03:33
archelshaha. Well, if they allow me to do cool stuff, and pay me for doing it, why not?03:33
archelsall this impact factor fetishism...03:33
eleitlif you want to do postgraduate work, or get into a prestigious industry group, it might be worth it03:34
eleitlI don't know, it's not my field, and I'm a 46 year old guy in Germany doing shitty work03:34
archelsreferring to your dayjob?03:34
eleitlyeah, they pretend to pay me, and I pretend to work03:34
browniesarchels: eh? so the offer in Memphis is for the field you are interested in? but you have another PhD offer elsewhere for something higher-paying but less boring?03:35
browniesis that the choice?03:36
archelsbrownies: higher-paying, higher job security, but *more* boring03:36
archelsthat's the tradeoff03:36
browniesah right, more boring, less interesting03:37
brownieswhat about the location issue? is the boring job in a place better or worse than Memphis?03:37
browniesthat Banerjee guy looks pretty smart. got his PhD, did 3 years producing IP at a startup that got sold for the IP, then got a professorship right away.03:37
archelsas eleitl said, so long as it's not podunk hollow...03:39
archelsbut I'm not aware enough of Memphis culture to know whether it might still feel like that, in spite of being a large city03:40
eleitlall Ph.D. students I know live in the lab03:41
strangewarpI visited Memphis TN once. It's pretty cosmopolitan, but not necessarily in a progressive way, and definitely feels like a raft in the ocean.03:43
strangewarpAlso the city's suburbs are bait for the occasional fucking strong tornado, from what I hear.03:48
eleitlthe older I get, the farther out into the sticks I want to move03:49
eleitlassuming you have a decent network connection, and emergency medicine coverage, fuck humanity03:50
strangewarpmeh, I'm just hoping regular people don't kill me in war, or for being a weirdo, and that I don't have any fatal diseases or accidents.03:51
eleitlmy plan is to retire to a rural place with a large garden03:51
eleitlit is quite safe here, not sure if we even get much fallout03:51
-!- eudoxia [~eudoxia@r190-134-19-19.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap03:52
strangewarp"fallout"03:52
strangewarpwhat03:52
eudoxiahi eleitl, archels03:52
eleitlhail eudoxia03:52
eleitlwell, wars today where I sit would mean food fight endgame03:52
eleitlthese will be WoMD03:52
eudoxiawell s'warp he is in the middle of Germany which is a rather important target03:53
eleitlwho would want Germany?03:53
eleitlthere's nothing of use here03:53
eleitlof course eudoxia is even more safe than me03:54
eudoxiaits ok eleitl when the resource wars happen you can stay here03:54
eleitl:)03:54
eleitlI've been actually thinking about visiting Montevideo, providing the flights are cheap enough03:54
eleitlParaguay or Uruguay look like the best spots in the whole of South America03:55
eleitlwhat is your opinion of Jose Mujica, eudoxia?03:56
strangewarpI've read about him. He seems to be a decent guy. He might get thrown from ofice in his next election though.03:57
strangewarp*office03:57
strangewarpIt's nice to see a socialist who is actually a socialist for a change, and not a wannabe Stalinist.03:57
eudoxiaa communist terrorist who bombed civilians and triggered a twelve year dictatorship03:58
eudoxiastill better than the other two candidates: the son of the dictator, and a former president who embezzled money from the treasury03:58
eleitlhmm03:58
strangewarpYeah, I do not like his history at all, but as a leader he seems to have done decently.03:59
eudoxiahe's decent03:59
eudoxianot as good as our last president but at least he hasn't turned this into a People's Republic or anything04:00
* strangewarp nods04:00
eudoxiafrankly what bothers me the most is his relationship with Chavez04:00
eudoxiai always hear americans saying the media portrays him in a bad light, they don't: guy's a fucking lunatic04:01
strangewarpYeah, Chavez is ideological poison :/04:01
eudoxiaand this country shouldn't support the guy's delusions, christ he should have his blood replaced with Risperidone04:01
strangewarpHmmm. My productivity script has decided that today is orange. Got to log some worktime on that color in a while..04:04
eudoxiaand how does this script make that decision?04:05
strangewarpmd5 hash of the date, truncated to its first 6 digits and expressed as an HTML color code, basically04:05
eleitlwhat is the intent of that?04:05
eudoxiai thought it looked at your productivity in previous days and told you it's time to catch up04:06
eudoxiabut i guess that's cool too04:06
strangewarpone of several small implicit nudges, basically.04:06
strangewarpeudoxia: For that purpose, I cameup with a bit of algebra that generates a score like a baseball pitcher's ERA, for the amount of work performed in the past week and month.04:06
eleitlI wonder whether it's not too late to do something about that ADHD I suppose I have04:07
strangewarpI might download and learn Node.js, and rewrite the script in node/passport/jquery/bootstrap, so that other people can use it too... hmmm04:07
eleitlhow much synergy is there between Node.js server-side and client-side?04:08
strangewarpMy webhost is kind of outdated and I don't have admin panel access, so I had to write the first version in PHP 4.4. Which.. lol04:08
strangewarpeleitl: I am so not in a position to even begin to be able to answer that :p04:08
eleitlJavaScript is supposed to be a reasonable language.04:08
eudoxialol php04:08
strangewarpyeah04:08
strangewarpX)04:08
eleitlNot Lisp-grade reasonable, but, on the other hand, don't look a gift horse on the dentures too hard.04:09
eudoxiai  wish lisp was statically typed and had pointers04:09
eudoxiathere i said it04:09
eleitl;)04:09
eudoxiai think c++ gave me stockholm syndrome04:09
strangewarpOh fine, I might as well link the publically viewable face of my productivity log, so everyone here can see how much I slack04:10
eleitlI wish people would build really minimalistic Forth hardware04:10
strangewarphttp://breck.us/prod/index.php04:10
eleitlIf I had that, I'd be too afraid to look at it04:10
eleitlit's too bad Chuck Moore only builds toys04:11
eudoxiaoh you improved your site04:11
strangewarpEh, it doesn't keep a concrete tally of points, so even if I slack shamefully for like a week, it would eventually fade into the past04:11
strangewarpeudoxia: shhh I'm trying not to hype myself up until my music setup is finished ;)04:11
eleitlhttp://www.greenarraychips.com/ <-- this needs to be slightly fatter, and done wafer-scale04:11
eleitlI hope my Parallella kit gets shipped soon.04:12
eleitlI *tnink* I can do something useful with that, but I'm not sure yet04:13
eleitl32 k is enough to encode some minimal neurons04:13
eleitleveryone seen the Epiphany specs and roadmap, right?04:15
eudoxiakirka was telling me about it the other day04:16
eudoxiahe wants to do MD with FPGAs04:17
eleitlthere is a very good dedicated MD machine already04:17
eleitla way to do really fast MD would be doing discrete representation in 3d voxels04:18
chris_99MD?04:18
eleitla digital physics approach to MD04:18
eudoxiamolecular dynamics04:18
chris_99aha04:18
eleitle.g. imagine ~100 pm voxels, with 8 bit coordinates for the particle, some bits for type, and for state04:18
eudoxiayou mean 8 bits for each axis?04:19
chris_99that'd be fun to implement in VHDL04:19
eleitlyeah, that would be enough resolution, if you use relative coordinates04:19
eleitlall computation is local, using next-neighbor information04:19
eleitlit's basically a CA, only with a rich state04:19
eudoxiahm04:20
eleitlyou would start with a hard sphere potential, and just do collision with energy conservation04:20
eudoxiaor they could have no coordinates and just pointers to their neighbours in a graph04:20
eudoxiaactually that would occupy more space04:21
eleitlthen go van der Waals, add multibody, then covalents and electrostatics, and off you go04:21
eudoxia8 * 3 < (32 | 64) * 604:21
eleitlthere are no pointers, we're computing at the speed of light04:21
eleitlif your steps are fs or ps, and you want to reach ms scale, you better be quick04:21
eudoxiacertainly04:21
eleitlyou will probably have to do wafer stacking with TSV04:22
eleitlthe cells would be tiny04:22
eleitljust few 100 um at best04:23
eleitlor you use power of two sized voxelboxes, and slice that over a wafer surface, but there paths will be a bit long04:23
eleitleven with cut-through communication the delay will be there04:24
eleitlyou already see it in the Epiphany, each hop adds latency04:24
eleitlhttp://www.adapteva.com/white-papers/building-the-worlds-first-parallella-beowulf-cluster/04:26
eleitlheh, they beat me to it04:26
chris_99wouldn't a GPU be better to do neural nets than the Parallela04:26
eleitlno, because the cores have giant memory bandwidth to the local memory04:27
eleitlGPU looks great on paper, but as soon as you start doing real work on it it tarnishes a bit04:27
chris_99don't they each have their own cache?04:28
eleitlin principle you want to do spiking stuff with packets on the mesh04:28
eleitlnope, no cache, nor need for one04:28
chris_99ah04:28
eleitlI'm talking about the SHARC-like cores, not the ARM ones04:28
eleitlthe ARM ones are just slaves04:28
eleitlit's too bad their structure size is still 65 nm, or so, and they only have 16 cores.04:29
eleitl64 cores and larger embedded memory, and smaller process would make them scream quite a bit04:29
chris_99mm, yeah04:29
chris_99how much are they too?04:29
chris_99as you could always buy a load maybe04:29
eleitleven so, I consider these a test04:29
eleitl99 USD/board04:29
chris_99aha not terribly cheap then04:30
eleitlI think the 64 core will be maybe 150 USD04:30
eleitlwell, it's a complete computer with Ethernet and Ubuntu04:30
eleitlyou only need a switch04:30
chris_99yeah it does sound really cool though, just too expensive to buy a tonne of them though maybe04:30
eleitlI think the energy efficiency of these is 8x of the latest Blue Gene04:31
chris_99so would all 16 cores show up in 'top'?04:31
eleitlthe boards you see are the old ones, the new ones will be credit card sized04:31
eleitlnot sure, these are not SMP cores, so they probably won't show up in Linux directly04:32
eleitlthey're like dedicated DSP cores04:32
chris_99aha04:32
eleitlyou can use them with OpenCL04:33
eleitland MPI04:33
eleitlhttps://s3.amazonaws.com/ksr/assets/000/176/726/b1b37020789ddc9dadadc089d42610f5_large.jpg?134854592004:39
eleitlthe chip is not large04:39
-!- eudoxia [~eudoxia@r190-134-19-19.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection reset by peer]04:48
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]04:58
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap04:59
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap05:03
eleitlwhoops, BTC is at 18 now05:07
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has quit [Client Quit]05:07
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap05:07
eleitlnot good news for the South Sea Bubble project05:08
eleitlon the other hand, this finally forces me to buy some BitCoin05:11
-!- Humean [~quassel@unaffiliated/humean] has quit [Read error: Connection reset by peer]05:11
barriersbuying high?05:17
eleitlno, buying low05:17
eleitlbut of course lower would have been even better05:17
barriers18 is low for bitcoin now?05:17
barriersmiddle of the year it was at 1105:18
eleitlif you can make the news, yes05:18
-!- joehot [~not@bas5-kingston08-2925406539.dsl.bell.ca] has quit [Ping timeout: 256 seconds]05:41
-!- joehot [~not@bas5-kingston08-3096530329.dsl.bell.ca] has joined ##hplusroadmap05:41
eleitlpaperbot: http://www.nature.com/nature/journal/v493/n7433/full/nature11721.html06:03
paperbothttp://diyhpl.us/~bryan/papers2/paperbot/Laser%20cooling%20of%20a%20semiconductor%20by%2040%20kelvin.pdf06:04
eleitlvery nice06:04
-!- yorick [~yorick@ip51cd0513.speed.planet.nl] has joined ##hplusroadmap06:07
-!- yorick [~yorick@ip51cd0513.speed.planet.nl] has quit [Changing host]06:07
-!- yorick [~yorick@oftn/member/yorick] has joined ##hplusroadmap06:07
-!- strangewarp [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has quit [Ping timeout: 244 seconds]06:28
-!- chrisian [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has joined ##hplusroadmap06:28
-!- chrisian is now known as strangewarp06:28
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]06:52
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap06:53
-!- Viper168_ [~Viper@unaffiliated/viper168] has quit [Ping timeout: 264 seconds]07:24
-!- EnLilaSko [~Nattzor@unaffiliated/enlilasko] has joined ##hplusroadmap07:24
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has quit [Quit: lunchtime]07:36
-!- OldCoder_ [~OldCoder_@wsip-68-105-243-2.sd.sd.cox.net] has quit [Remote host closed the connection]07:41
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has quit [Remote host closed the connection]08:10
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap08:11
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has joined ##hplusroadmap08:16
@kanzureeleitl: there's a bit of synergy between nodejs server/client.. in particular look at browserify, https://github.com/substack/browserify08:21
eudoxiagood morning kanz08:24
eudoxiaout of curiosity, why is gnusha called that?08:24
eudoxiawhat does it mean?08:24
@kanzureit's a play on ganesha and gnu08:26
@kanzurewin 8808:26
@kanzureoops08:26
@kanzurepaperbot: http://www.jneurosci.org/content/20/5/1675.long08:28
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/%20Subunits%20Modulate%20Alternatively%20Spliced%2C%20Large%20Conductance%2C%20Calcium-Activated%20Potassium%20Channels%20of%20Avian%20Hair%20Cells.pdf08:28
@kanzurepaperbot: http://publications.arl.org/3450vu.pdf08:32
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/45dfd228f596c74b90981629e8ef6766.pdf08:32
@kanzure"The authors note that licenses need to allow libraries to: make new uses of the licensed content, share information with peers about licensing terms, and rest assured that licensed content will be available in the future."08:32
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]08:34
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap08:35
@kanzureTo an outside observer it might be surprising to see that more than a decade into electronic08:36
@kanzurejournal licensing, historic subscription expenditure remains by far the dominant model for08:36
@kanzuredetermining library pricing.08:36
@kanzureFor most of the 375 contracts for which pricing model was08:37
@kanzurereported, libraries’ prices are determined by their historic print subscriptions (now dating08:37
@kanzureback to the 1990s in many cases), plus inflation increments applied annually during the08:37
@kanzureintervening years. For the four largest publishers, 82% of contracts are priced in this way.08:37
@kanzure"The responses included information on publishers that allow sending printed08:40
@kanzurearticles (58% to 79%), allow the transmission of electronic articles (39% to 73%), and allow08:40
@kanzureinternational interlibrary loan (11% to 36%). A small number of libraries indicated that the08:40
@kanzurecontract was silent on ILL. The challenge for future contracts is to make sure that08:40
@kanzureany licenses being signed do not abridge a library’s ability to share materials."08:40
@kanzurehttp://www.amazon.de/Biohacking-Gentechnik-Garage-Hanno-Charisius/dp/344643502609:05
-!- yorick [~yorick@oftn/member/yorick] has quit [Remote host closed the connection]09:06
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=0a917d2b Bryan Bishop: add wired.com article about the biocurious 3d printer09:06
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=7c6e3d42 Bryan Bishop: add bbc article about sascha karberg09:06
eleitlwould you donate to libgen if they did accept btc?09:15
@kanzureno. i'm not convinced their distribution strategy is good. nobody seeds it.09:16
eleitlI think we need a local copy.09:17
@kanzureyes09:17
eleitlDo you think you can rustle up 10 TByte online storage?09:17
@kanzurejrayhawk: do you have anything laying around?09:18
@kanzurethe only place i know where i can reliably get that much storage is s3, and transferring terabytes out of s3 is not cheap.09:19
eleitlcheck pm, kanzure09:19
eleitlhttp://www.hetzner.de/en/hosting/produkte_rootserver/xs13 but not cheap09:19
@kanzurewell i need about 50 TB for another project i'm doing09:20
eleitlhttp://www.hetzner.de/en/hosting/produkte_rootserver/xs29 <-- even less cheap09:20
@kanzure"Backup Space100 GB"09:20
@kanzureoh i see now "7 x 3 TB SATA"09:21
eleitlor 15 x 309:21
eleitlmoar pm09:23
-!- panax [panax@131.247.116.2] has quit [Read error: Connection reset by peer]09:40
-!- panax [~panax@68.200.160.182] has joined ##hplusroadmap09:43
-!- qu-bit_ [~shroedngr@gateway/tor-sasl/barriers] has joined ##hplusroadmap09:53
-!- qu-bit [~shroedngr@gateway/tor-sasl/barriers] has quit [Ping timeout: 276 seconds]09:55
eleitlrunning home, cul8r09:55
-!- eudoxia [~eudoxia@r186-52-37-252.dialup.adsl.anteldata.net.uy] has quit [Quit: leaving]09:57
-!- archbox_ [~archbox@unaffiliated/archbox] has quit [Quit: bye]10:37
-!- eudoxia [~eudoxia@r186-53-129-66.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap11:03
-!- augur_ [~augur@208.58.5.87] has quit [Remote host closed the connection]11:06
@kanzurehttps://www.google.com/search?num=100&hl=en&safe=off&tbo=d&q="4000..50000+Total"+"longest+streak"+site%3Agithub.com11:11
@kanzurehttps://www.google.com/search?num=100&hl=en&q="100..50000+days"+"longest+streak"+site%3Agithub.com11:11
-!- _sol_ [~Sol@c-174-57-58-11.hsd1.pa.comcast.net] has quit [Ping timeout: 248 seconds]11:28
-!- _Sol_ [~Sol@c-174-57-58-11.hsd1.pa.comcast.net] has joined ##hplusroadmap11:29
-!- EnLilaSko- [~Nattzor@host-85-30-145-65.sydskane.nu] has joined ##hplusroadmap11:32
-!- EnLilaSko [~Nattzor@unaffiliated/enlilasko] has quit [Ping timeout: 255 seconds]11:32
-!- ParahSailin [~eg@unaffiliated/parahsailin] has joined ##hplusroadmap11:45
ParahSailincool, got a copy of one of the quotes we got from a sequencer in korea-- 2.7k per HiSeq2000 lane (paired end 2x100nt)11:47
@kanzureper run?11:48
ParahSailinper lane on a run11:48
ParahSailinthat will be ~300 million PE reads, so 60 Gb sequence data expected11:49
ParahSailinthis is if you fedex the sequencer prepared libraries11:50
@kanzurewe should organize a ##hplusroadmap run at some point11:51
ParahSailinwhat would you want to sequence?11:52
@kanzurenot sure yet.11:52
@kanzureprobably each other11:52
@kanzuremaybe some shit i dig up from the dirt? i'm open to ideas.11:52
ParahSailinso i got confirmation from the CFO that EG is going to try to launch 23andme for pets this year11:55
ParahSailinwith cheaper-than-microarray allele genotyping11:55
@kanzureyeah i've been curious about pedigree stuff.. surely they want genetic confirmation, or even genetic work done on their dogs prior to embryo implantation11:55
ParahSailinpets, because they dont have google-wife's deep pockets to handle liabilities of doing human stuff11:56
@kanzureare there even that many allele studies for various pets in the first place?11:56
ParahSailinwe've been working a lot with bovine genotyping11:56
ParahSailinthose are probably the real market11:57
-!- augur [~augur@129-2-129-32.wireless.umd.edu] has joined ##hplusroadmap11:57
@kanzureselling a bull should involve his genotype, definitely11:57
ParahSailinwell on a million dollar stud, people can typically afford whatever the most expensive genotyping is11:58
ParahSailinbut cheap allele testing would allow an entire herd to be done11:58
@kanzureis that how much a stud goes for11:59
@kanzurei am a terrible texan11:59
ParahSailinthe tube of semen goes for at least 10012:00
ParahSailinand a stud has huge testicles full of it12:00
@kanzure100k?12:00
ParahSailinno, pretty sure just 10012:01
@kanzurewell that's weird. why is it so much less than taking the animal?12:01
ParahSailinhttp://www.championgenetics.com/bulls.htm12:02
@kanzurewhat sort of price range will EG likely be doing? same as 23andme?12:03
ParahSailinit could be as low as 5 dollars for 100 loci genotyped, maybe even 50012:03
ParahSailinits fewer than microarray can do for sure...12:04
@kanzurewill you also be doing tests for canine owners?12:05
@kanzurepaperbot: http://dx.doi.org/10.1038/nature1183712:06
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/8b85d69ac1c405d30e7486d9c49936d1.txt12:06
@kanzurepaperbot: http://www.nature.com/nature/journal/vaop/ncurrent/full/nature11837.html12:06
paperbothttp://diyhpl.us/~bryan/papers2/paperbot/The%20genomic%20signature%20of%20dog%20domestication%20reveals%20adaptation%20to%20a%20starch-rich%20diet.pdf12:06
ParahSailinyeah dogs will probably be one of the direct to consumer things12:06
-!- sheena1 [~home@d207-216-112-48.bchsia.telus.net] has joined ##hplusroadmap12:07
@kanzurehmm i don't think there's a snpedia for doggy alleles yet12:09
-!- sylph_mako [~mako@103-9-42-1.flip.co.nz] has joined ##hplusroadmap12:10
-!- strangewarp [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has quit [Ping timeout: 276 seconds]12:36
-!- strangewarp [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has joined ##hplusroadmap12:36
archelskanzure: I see what you did there.12:38
@kanzurehm?12:38
archelsYou're a teapot.12:38
@kanzureit's a stupid feature for them to impose on their users anyway12:39
archelsit does seem pretty useless.12:39
sheena1teapots?12:41
ParahSailintruseq (illumina's library prep) is 2.6k for 48 rxns12:41
-!- phm [~anon@host-2-98-178-132.as13285.net] has joined ##hplusroadmap12:43
ParahSailinif hplusroadmap were to do a hiseq (or iontorrent) run, i'd say probably outsource the library work and the sequencing12:45
ParahSailinbecause unless you're going to be doing multiple runs of sequence, it's not worth doing a bunch of failed runs to get good technique12:46
ParahSailinAxeq probably would do the library work for an additional couple hundred12:48
ParahSailinI'm not sure how much UCDavis charges for a hiseq run, probably about the same12:49
ParahSailinah http://dnatech.genomecenter.ucdavis.edu/prices.html12:51
-!- eudoxia [~eudoxia@r186-53-129-66.dialup.adsl.anteldata.net.uy] has quit [Quit: Leaving]12:55
-!- EnLilaSko- is now known as EnLilaSko13:04
-!- EnLilaSko [~Nattzor@host-85-30-145-65.sydskane.nu] has quit [Changing host]13:04
-!- EnLilaSko [~Nattzor@unaffiliated/enlilasko] has joined ##hplusroadmap13:04
@kanzurearchels: "The next OpenWorm office hours will be happening January 30th at 17:30 GMT."13:04
@kanzurei assume this will be in #openworm-office13:05
-!- yorick [~yorick@oftn/member/yorick] has joined ##hplusroadmap13:06
nmz787kanzure: so you mentioned being able to find me fundin for the synthesizer?13:07
nmz787kanzure: i am a horrible student13:07
@kanzurei'm still willing to buy parts for the laser cutter13:07
@kanzuredid they reject your application?13:08
nmz787kanzure: I should have started working on that spectrometer crap last week, so I could have used it to write a lab report... which I ended up not doing because i didn't want to hand calculate the data13:08
@kanzurelethargy is the primary motivator of all good programmers13:08
nmz787kanzure: no, but even though school stimulates me to do shit, it usually only happens the day something is due.... so I get really stressed and then most projects end up turned in late13:08
@kanzurepfft, don't talk to me about that, i dropped out because i hated that, remember?13:09
nmz787yes i am a programmer because I am 'lazy'13:09
nmz787though I probably would have only spent 10 minutes calculating the shit by hand13:09
nmz787now I can do it in 10 seconds13:09
@kanzureprogramming is a super power13:09
nmz787i really like the idea of more learning, and PhD setting sounds like it might be nice, but if I'm such a stressed student... I wonder if PhD will be totally chill, or just as stressful as undergrad13:10
@kanzurebased on the people i knew in molecular biology phd programs, their lives were miserable13:11
@kanzureuk phd programs tend to be stressless, i hear13:12
nmz787well i don't want to do molbio13:12
nmz787just chem13:12
@kanzurei haven't heard too many insider reports from chemistry phd students13:12
nmz787hmm13:13
phmLethargy? DId you mean laziness? Not that it matters.13:14
-!- seba- [~hel1@cpe-90-157-233-7.static.amis.net] has joined ##hplusroadmap13:14
seba-what is here13:14
seba-lol13:14
nmz787"Formal program requirements are few, with specific coursework tailored to each student's area of specialization. All graduate students in the Department of Chemistry complete a one-term course in seminar preparation"13:15
-!- lolcat [~john@unaffiliated/energy-/x-7653247] has joined ##hplusroadmap13:15
lolcatHello13:15
@kanzurehi lolcat13:15
chris_99so in the US, you have lectures while doing a PhD?13:15
@kanzurechris_99: not only that, but there is an extremely hostile working environment13:16
@kanzureyou know how dilbert is terribly accurate for corporate lif?13:16
@kanzure*life13:16
@kanzurephdcomics is terribly accurate for phd life.13:16
nmz787so i guess that sounds OK... but if you think you can really get me grant funding other ways...13:16
seba-wbat13:16
seba-wbaa13:16
chris_99heh, kanzure13:16
seba-w13:16
seba-oops cat13:16
seba-lol13:16
@kanzurenmz787: no, not grants.13:16
seba-what is it about the phd, i'm not doing it, but i'm interested why you've asked13:16
seba-on chemistry13:17
@kanzurelolcat: are you doing a phd in chemistry?13:17
lolcatNo...13:17
lolcatOr not yet13:18
nmz787seba-: because I applied to it, but school stresses me out13:18
nmz787I think it's some maladapted mental framework that I developed as a child when my first grade teacher scolded me for finishing my work faster than the other children13:19
chris_99nmz787, i'm doing a PhD in the UK and found it lest stressful than a masters, but it's different here as we don't have lectures/coursework for the PhD13:19
nmz787chris_99: I don't want to move though13:19
lolcatchris_99: Are you in Norway?13:19
chris_99no, i'm in the UK13:19
lolcatoh, I know a chris doing a phd from britain in Norway13:20
chris_99aha13:20
@kanzureit's not the lectures that are stressful13:22
nmz787yeah for me it's more just homework13:23
nmz787i don't like talking/outputting when I'm not comfortable13:23
-!- phm [~anon@host-2-98-178-132.as13285.net] has quit [Quit: Leaving]13:23
seba-:>13:23
nmz787and I always have so many things I'm researching on my own that outputting non-novel stuff just doesn't make it to the top of my priority list... even though I'm aware that I'm paying for school and essentially wasting money13:24
@kanzurenmz787: you should definitely meet some phd students before you agree to anything13:26
@kanzuremost advisors have other students working for them.. go meet them.13:26
@kanzurescience liberation front stuff in #aaronsw13:34
-!- eudoxia [~eudoxia@r186-53-129-66.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap13:36
-!- strangewarp [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has quit [Read error: Connection reset by peer]13:42
-!- strangewarp [~Christian@c-67-173-247-251.hsd1.co.comcast.net] has joined ##hplusroadmap13:43
nmz787well looks like i got a 1 hour/week teaching volunteer gig13:44
nmz787don't need a PhD to teach 8 year olds!13:44
@kanzureteach them to run gels13:45
@kanzureand then put them to work13:45
nmz787:)13:47
nmz787yeah I don't even have a gel box13:47
ParahSailinyou can make one out of wood13:48
-!- eudoxia [~eudoxia@r186-53-129-66.dialup.adsl.anteldata.net.uy] has quit [Read error: Connection reset by peer]13:52
-!- wrldpc [~wrldpc@203.105.94.33] has quit [Quit: wrldpc]14:08
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has quit [Remote host closed the connection]14:10
@kanzurepaperbot: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3057417/14:28
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/f26f1bded767dc7960a75099f7aab271.txt14:28
@kanzurepaperbot: http://www.hindawi.com/journals/jna/2012/371379/14:28
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/250b548d1a94fb02d2e62d743574b1bd.txt14:28
@kanzurepaperbot: http://www.biomedcentral.com/1472-6750/9/614:28
paperbotHTTP 404 http://www.biomedcentral.com/bmcbiotechnol/content/pdf/1472-6750-9-6.pdf14:28
@kanzurewell that was pointless14:29
-!- yoleaux [~yoleaux@obquire.infologie.co] has quit [Remote host closed the connection]14:31
-!- yoleaux [~yoleaux@obquire.infologie.co] has joined ##hplusroadmap14:33
-!- EnLilaSko [~Nattzor@unaffiliated/enlilasko] has quit [Quit: - nbs-irc 2.39 - www.nbs-irc.net -]14:43
-!- monoprotic [~monoproti@unaffiliated/monoprotic] has joined ##hplusroadmap14:50
-!- monoprotic [~monoproti@unaffiliated/monoprotic] has left ##hplusroadmap []14:50
Guest40461wtf is paperbot14:51
@kanzureit fetches papers14:53
@kanzureexample, http://www.nature.com/nmat/journal/v11/n9/full/nmat3357.html14:53
@kanzurehttp://www.nature.com/nmat/journal/v11/n9/full/nmat3357.html14:54
paperbothttp://diyhpl.us/~bryan/papers2/paperbot/Rapid%20casting%20of%20patterned%20vascular%20networks%20for%20perfusable%20engineered%20three-dimensional%20tissues.pdf14:54
nmz787kanzure: have you seen anything on using private torrent trackers with unlimited bandwidth seedboxes for doing webhosting (or i.e. S3)15:08
nmz787can you download torrents in javascript?15:08
nmz787like if I had a bunch of images on the seedbox with respective torrents, and simply sent the client the torrents on pageLoad, then the client downloads the images via torrent, not http, to populate the webpage15:10
nmz787since seedboxes are pretty cheap IF they disallow public trackers15:10
ParahSailinpaperbot is the avatar of aaronsw15:13
@kanzurethe problem with javascript or a browser for torrenting is that it would have to be rebooted frequently because browsers suck15:16
@kanzureanyway, yes there are private trackers if that's what you're asking.15:16
@kanzureoh you want to serve a webpage via torrents in javascript?15:17
-!- Guest40461 is now known as jpratt215:18
@kanzurewell, you would have to do it with websockets i guess, and then you would need to implement a server that would do the actual torrenting and pass the data back over websockets15:18
@kanzurenaturally, this kills the advantages of torrenting in the first place15:19
-!- jpratt2 is now known as wraithansmom15:19
@kanzureiirc torque works by using an extension in your browser15:20
@kanzureso if you're willing to install an extension, then yes you can serve a page by torrenting15:20
@kanzurehttp://torque.bittorrent.com/oneclick/15:20
@kanzurehttps://github.com/bittorrenttorque/btapp15:21
-!- wraithansmom is now known as guest4325615:23
@kanzure"When calling connect for the first time, the user will be prompted to install the browser plugin. The browser plugin is responsible for making sure that the underlying torrent client is running when needed."15:23
@kanzurehttp://btappjs.com/torrent-clients.html15:23
-!- yorick [~yorick@oftn/member/yorick] has quit [Remote host closed the connection]15:25
-!- damselfly9 [~damslfly@c-24-60-136-110.hsd1.nh.comcast.net] has joined ##hplusroadmap15:25
@kanzuredamselfly9: hello15:25
damselfly9hello. I was just seeing what this channel is all about15:26
damselfly9sometimes the official descriptions are meaningless15:26
@kanzurethe /topic is accurate15:27
damselfly9so you talk about biohacking here?15:27
@kanzureyes?15:27
damselfly9what is biohacking?15:28
@kanzurehttp://diyhpl.us/wiki/diybio/faq15:28
@kanzureit's just regular biology15:29
damselfly9ok15:30
damselfly9do you have much biology background?15:31
@kanzurei know my way around a lab, if that's what you're wondering15:31
sheena1i just hang out for kicks :)15:32
damselfly9I do have one specific question. What magnification of microscope is required for seeing a human cell nucleus in reasonable detail?15:32
@kanzurefor "detail" you probably want to do staining and fluorescence microscopy15:32
sheena1it depends on the cell?15:32
damselfly9say, for example, a buccal smear15:33
@kanzurealso, magniciation isn't exactly what you should be optimizing for15:34
sheena1def agree on the staining, not sure what sort of detail you're looking for, squamous cells are pretty big15:34
@kanzure*magnification15:34
damselfly9I mean, if I were going out to purchase a microscope for the primary purpose of a buccal swab, how much magnification do I need to buy?15:35
sheena1http://www.austincc.edu/histologyhelp/tissues/ta_sim_sq_e_iso.html the bottom image here is at 400x (usually your 40x lens on a microscope)15:35
sheena1but those cells are also stained15:35
@kanzurewhen buying a microscope you should focus on NA or NV15:36
@kanzureoops i mean just NA15:37
damselfly9that website gave me an error message when I tried to d/l the bottom umage15:37
@kanzurehttp://micro.sci-toys.com/NA15:37
damselfly9I'm pretty sure I need more than a toy. The results would need to be unquestionable and hopefully convincing15:38
@kanzuresci-toys has lots of information, not just toys15:38
@kanzurehttps://groups.google.com/forum/?fromgroups=#!topic/diybio/R-M51HlD2W815:39
@kanzurehttps://groups.google.com/forum/?fromgroups=#!topic/diybio/e83G-rB0WXg15:39
@kanzurehttps://groups.google.com/forum/?fromgroups=#!topic/diybio/RmwnFQc5NHo15:39
@kanzurehttps://groups.google.com/forum/?fromgroups=#!topic/diybio/ikdnw295XYI15:39
@kanzurehttps://groups.google.com/forum/?fromgroups=#!msg/diybio/KVuAg40yO-c/U3J-c3tk-OMJ15:40
sheena1we (vet, not human medicine stuff) had microscopes with 4, 10, 40 and 100 power. that gives you actual powers of 40, 100, 400 and 1000. The 400 is what we used most often for cells, 1000 requires immersion oil to get a decent view. the staining makes a huge difference, too.15:40
@kanzurehttps://groups.google.com/forum/?fromgroups=#!topic/diybio/ZR5DpccpDu415:40
damselfly9Is 400x enough to image the average human cell, not just the squamous cells?15:40
sheena1yeah, depending what you're looking for15:41
damselfly9I was thinking of a second-hand Bausch and Lomb lab model15:41
@kanzurewhen in doubt, buy an electron microscope http://www.ebay.com/itm/Hitachi-S-5500-scanning-electron-microscope-/17093417026415:42
damselfly9I'm intending to focus on the cell nucleii15:42
damselfly9Electron microscopes are out of my budget. A 70's or 80's vintage optical B+L is the best I can afford15:43
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=eb249204 Bryan Bishop: add more microscopy links to the faq15:44
damselfly9if it works out, the next purchase will a camera attachment so I can record evidence15:46
sheena1http://www.cengage.com/custom/static_content/OLC/1111071020/OwensAnatomy_Lab1Microscope.swf this has a good sampling of various cells under the various standard powers of a light microscope15:47
sheena1one of my instructors got decent shots by just putting her regular digicam lens up to the ocular15:47
@kanzurethere are lots of 3d printable parts on thingiverse for attaching cameras to microscopes like that15:48
@kanzurebut most of the time you just have to measure it yourself (gasp)15:48
chris_99anyone seen / used these http://www.marzhauser.com/en/products/micromanipulators/manual-micromanipulators/mm33.html ?15:49
damselfly9what kind of file type is .swf? My browser wouldn't open it directly15:49
@kanzureflash15:50
damselfly9oh15:50
damselfly9one of those pkugins that always crashes my computer15:50
@kanzureyeah that's the one15:51
damselfly9if I purchase a binocular microscope, can I attach the camera to one eye piece while using the other for viewing?15:52
sheena1sorry for the stupid flash. chrome handled it fine15:52
chris_99you could but the quality probably wouldn't be great15:52
sheena1thats what my instructor did, exactly15:52
sheena1you're wanting video tho, not stills?15:52
damselfly9stills is fine15:52
@kanzurered blood cells at 100x and 400x http://www.youtube.com/watch?v=hrSu5pBxqfc15:53
damselfly9I suppose the cells won't be going anywhere15:53
@kanzurered blood cells 1000x http://www.youtube.com/watch?v=9va0KPrVExs (blood cells are tiiiny)15:53
-!- augur [~augur@129-2-129-32.wireless.umd.edu] has quit [Remote host closed the connection]15:53
damselfly9I was primarily interested in good shots of nucleii, rbc's don't have those15:54
@kanzurehuman cheek cells at 40x, 100x and 400x http://www.youtube.com/watch?v=FgNbTkol6Lk15:54
damselfly9hmm15:54
@kanzurenmz787: how much do stains cost? i never looked.15:54
damselfly9the stain I need, methylene blue, seems realtively cheap at better pet stores15:55
@kanzureiirc antibody stains end up costing an arm and a leg :/15:56
damselfly9I only need to do Barr body tests on a few people15:56
sheena1antibody stains are different, eh?15:59
@kanzurei'm just ranting about staining in general16:00
damselfly9does it take much dexterity to stain cells once they are on the slide?16:00
damselfly9I guess I'll be finding out16:04
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=4947848a Bryan Bishop: cleanup whitespace16:05
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=011ba5d4 Bryan Bishop: re-organize the microscopy section16:05
gnushahttps://secure.diyhpl.us/cgit/diyhpluswiki/commit/?id=dd46801c Bryan Bishop: staining links from diybio16:05
@kanzuredamselfly9: or you can just watch a video http://www.youtube.com/watch?v=LnXslXMHeFs16:05
damselfly9video or not, I'll still be finding out how difficult it is for me16:06
damselfly9there is an unfortunate clumsiness factor16:07
@kanzureyou don't have to include clumsiness16:07
damselfly9my own16:07
@kanzureno i mean, you have correctly identified that biologists are crazy for thinking that is repeatable16:08
@kanzureinstead, i suggest those slides that have the wells built in16:08
@kanzurethen you can put a cover on without risking bubbles16:08
damselfly9ahh, I see your point16:08
damselfly9slides with wells onto my shopping list16:08
@kanzurei assume that was the part that you were concerned about, and not the eyedropping16:09
damselfly9yes16:09
@kanzurei'm sure there's a way to make that suck less. the wells help but it's not a real solution.16:10
sheena1we always just dipped ours16:11
damselfly9all in all, this seems like a task almost beyond my skills, but the experiment(s) must be done16:11
-!- eudoxia [~eudoxia@r186-53-133-179.dialup.adsl.anteldata.net.uy] has joined ##hplusroadmap16:11
@kanzuredipped the slides or the covers?16:11
@kanzuredamselfly9: microscopy is beyond your skills?16:11
damselfly9I have no lab experience beyond highschool biology labs16:11
sheena1slides into the stains16:13
damselfly9and I didn't get good grades on those16:13
@kanzurehuh? wouldn't that contaminate the stains?16:13
sheena1damselfly9: i hope you can figure it out. lots of college level courses have lab course material online free..16:13
sheena1kanzure: yeah i suppose it would a bit.. we fixed, then stained.16:14
damselfly9thanks sheena, I hope so too16:14
sheena1i'm trying to remmebre what exactly we did for squamous. Mostly we were using DiffQuik for blood slides, not so many other cells16:14
sheena1if i wasnt still between places, i'd dig out my lab book.. might have some on my compute,r hang on16:14
@kanzure"To make a wet mount place a sample on the slide. Using an eyedropper put a drop of water on the sample. Place one end of the cover slip on the slide and slowly lower the other end using the end of a toothpick. This will help to prevent air bubbles from getting trapped under the cover slip.16:16
@kanzureyou know, i never called anyone out on that, but looking at it objectively, that's a terrible technique16:16
damselfly9balancing the cover slip on a toothpick seems a bit not-easy16:17
damselfly9I hop this doesn't turn into a frustrating ordeal16:19
@kanzurewelcome to boilogy.. frustration is the name of the game. but the trick to fixing it is to not tolerate bad things, and make them better instead.16:20
damselfly9that sounds very encouraging16:21
damselfly9at least until the transhumanism mentioned in the topic someday comes true16:23
sheena1we never did many wet mounts16:23
@kanzurepaperbot: http://www.ingentaconnect.com/content/maney/his/2006/00000029/00000001/art00006?crawler=true16:23
paperboterror: HTTP 500 http://diyhpl.us/~bryan/papers2/paperbot/988bed95457978a3dfb906075bdb5f05.txt16:23
@kanzure"crawler=true" sounds evil16:23
sheena1you can just fix the cells to the slide then you dont need the drops and cover slips16:23
damselfly9that sounds easier sheena16:23
sheena1its what we did for almost all our cell stuff. agian, mostly animal, but we did do some human stuff16:24
sheena1but its all the same really16:24
sheena1im still looking for notes. right. hang on16:24
damselfly9yes, humans are animals16:24
@kanzurepaperbot: http://cshprotocols.cshlp.org/content/2006/3/pdb.prot4292.full16:25
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/b18ca9cce9d18571cf391d1bd0cb54a7.txt16:25
damselfly9once there is the pictures, maybe the slips (and the bubbles those cause) won't really matter16:25
@kanzurei never did any fixing, but it looks like the heating method would damage your cells16:26
-!- phm [~anon@host-78-149-106-41.as13285.net] has joined ##hplusroadmap16:27
damselfly9the paperbot artcile linked here tells me I have to pay $2016:28
-!- xx is now known as xx216:28
@kanzureyeah, paperbot doesn't have access at the moment, sorry about that16:28
sheena1damn, i have all kinds of notes on COLLECTING samples, and hardly nothing on what we used to stain the etc16:28
damselfly9that's ok sheena. methylene blue is cheap and I can keep reusing slides until I get it right16:29
@kanzurehehe "machine for automatically attaching cover slips to microscope slides" http://www.google.com/patents/US662622416:30
damselfly9sounds like a good idea16:31
damselfly9before I go, I did have a second specific question. when you are getting your blood drawn by a phlobotomist, does it usually look the color of chocolate syrup for everyone?16:34
@kanzureshow us an image.16:34
joehotyes16:35
damselfly9I don't have an image, just that's the color it's looked in the syringes everytime I get mine drawn16:35
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has joined ##hplusroadmap16:35
damselfly9when I was reading up on methylene blue, there was a mention of methohemoglobinemia and I was wondering if my own blood was that color or if it just looks that way in the syringes16:36
damselfly9on the other hand, if it was abnormally colored, you'd think at leat one of the phebotomists would have noticed16:38
@kanzurebtw is it possible that you're color blind?16:38
indigenousA bit late but for what it's worth veterinarians in practice use DiffQuik for nearly everything. But methylene blue gives better nucleur detail while the former gives better detail to the other organelles.16:38
damselfly9no, the eye doctor who most recently tested me said my color vision was actually much better than normal16:38
@kanzure"RESULTS: Color-blind subjects were significantly less able to identify correctly whether pictures of body fluids showed blood compared with non-color-blind controls (P =.001);"16:39
@kanzurethat was from http://www.ncbi.nlm.nih.gov/pubmed/1117677316:39
damselfly9he even suggested unofficially of course the possibility of tetrachromacy16:39
damselfly9but since that is a contraversial subject, no eye doctor would want to risk their rep by saying it in writing16:40
damselfly9I see the color red very well, but in the syringes my blood doesn't look red so much as brown16:41
-!- yashgaroth [~ffffff@cpe-66-27-118-94.san.res.rr.com] has joined ##hplusroadmap16:44
damselfly9sorry for being controversial16:44
damselfly9have a nice evening16:45
@kanzureyashgaroth: "To make a wet mount place a sample on the slide. Using an eyedropper put a drop of water on the sample. Place one end of the cover slip on the slide and slowly lower the other end using the end of a toothpick. This will help to prevent air bubbles from getting trapped under the cover slip."16:45
@kanzureyashgaroth: so, that's actually sort of annoying and not highly repeatable and it sucks16:46
yashgarothhaha no just lay the top slide onto the bottom at an angle16:46
yashgarothfuck toothpicks16:46
@kanzurenot a top slide, a coverslip16:46
yashgarothanyway bubbles aren't really a concern unless you need to take pretty pictures or are too dumb to tell what's a bubble and what's a cell16:46
yashgarothsame thing16:46
@kanzureevery time i did it i always just dropped the coverslip carefully and hoped it would work out in my favor16:46
damselfly9pretty pictures will be required16:46
-!- qu-bit [~shroedngr@gateway/tor-sasl/barriers] has joined ##hplusroadmap16:47
yashgarothoh no our precious sample of cheek scrapings will need to be retaken, damn these toothpicks16:47
yashgarothdamselfly9, in that case find a section that doesn't have a big bubble in it and take a picture of that16:47
@kanzureman, try saying that when you're doing slide washing duty for a lab with >50 people16:47
damselfly9I don't mind retaking cheek scrapings, but there's only so many that can be taken at one time16:48
@kanzureyou go through slides pretty fast :p16:48
-!- qu-bit_ [~shroedngr@gateway/tor-sasl/barriers] has quit [Ping timeout: 276 seconds]16:48
yashgarothlook bubbles are the least of your concerns here16:48
damselfly9there is other concerns?16:49
yashgarothnot really16:49
yashgarothbut bubbles are the least of them16:49
damselfly9ok :)16:49
@kanzureit's not always a big deal, but surely we could do better16:49
@kanzurebiology protocols have all sorts of weird problems16:50
@kanzureand fixing them starts with the easiest ones16:50
yashgarothmany can be solved through experience, but that's not always a cheap or fast solution16:50
@kanzure"just do it a few thousand times until you get good at it"16:50
@kanzure"i promise my super secret pcr reaction protocol works, you're just doing it wrong"16:50
@kanzure-reaction (oops)16:51
damselfly9All I need is good images of 10 or 20 nuclii tominimize chances of false negatives16:51
yashgarothso um are you doing this protocol? https://docs.google.com/viewer?a=v&q=cache:iVhzuIJ06vEJ:outreach.mcb.harvard.edu/teachers/Summer07/ErnestineStruzziero/BarrBody_lab.doc+&hl=en&gl=us&pid=bl&srcid=ADGEESgolkHG7g2d836OzD0n4rgbSZuo2-myp_tcP7725FgBfO8sm2uCjDbxZoTNteajOXLLfc91Lm7P1OjT1gnZ13uWXR_hDm0NmwJCOCBSsnqn-vr_8O105BhPtNikkAD1by01pGX6&sig=AHIEtbTDfcn43p35hEZckUwkb1hww7wbpw16:51
@kanzuresigh google16:52
@kanzurehttp://outreach.mcb.harvard.edu/teachers/Summer07/ErnestineStruzziero/BarrBody_lab.doc16:52
damselfly9ues, more or less16:52
yashgarothhey I linked the quick look for a reason16:52
damselfly9(yes)16:52
@kanzureyashgaroth: ah, okay.16:52
yashgarothnot necessarily a good reason considering how long that url was, but16:53
damselfly920 cells would make the chance of false results 1 in a million16:53
sheena1http://www.amazon.ca/Laboratory-Urinalysis-Hematology-Animal-Practitioner/dp/1893441105 this is the book i was thinking of, and i thought it had other cell stuff in it, but seems not. hmph16:53
damselfly9thankyou for the answers, kanzure and sheena and yashgaroth16:55
damselfly9I'll be sure to remember this channel16:56
-!- damselfly9 [~damslfly@c-24-60-136-110.hsd1.nh.comcast.net] has left ##hplusroadmap ["no message"]16:57
-!- panax [~panax@68.200.160.182] has quit [Ping timeout: 256 seconds]16:59
-!- panax [panax@131.247.116.2] has joined ##hplusroadmap17:00
-!- Viper168 [~Viper@unaffiliated/viper168] has joined ##hplusroadmap17:03
@kanzurehow about a slide that has a hole on the edge that you dump your sample into, then you rotate the slide when you want to look at it under a microscope.17:04
@kanzureyou could clean it by throwing it away (or maybe with a straw and vacuum/pressure)17:04
@kanzureerm, i mean, the straw obviously wont be sterile17:04
-!- chris_99 [~chris_99@unaffiliated/chris-99/x-3062929] has quit [Quit: Leaving]17:04
nmz787helloo17:05
yashgarothwell there's hemocytometers17:05
nmz787what are you guys trying to figure out how to do?17:06
nmz787better...?17:06
@kanzurea hemocytometer looks like it just uses capillary action to move samples around?17:06
@kanzurenmz787: a less sucky way to apply coverslips17:06
yashgarothto draw sample into the slide, yeah17:07
yashgarothplus you get to count the cells, repeatedly and mind-numbingly, for hours17:07
@kanzureisn't that what a computer is for?17:07
@kanzuremaybe i'm just bad at biology17:07
yashgarothyes but those cost more than poor biology grads desperate for work17:07
yashgarothand are crappy at distinguishing live/dead cells, contamination, counts outside of normal range17:08
nmz787yeah i'd say haemocytometer (or whatever the spelling is)17:09
nmz787they sell disposale ones too17:09
nmz787disposable17:09
nmz787it really depends on the sample though17:09
nmz787like free floating cells vs tissue sections17:09
@kanzure"Coverslips for counting chambers are specially made and are thicker than those for conventional microscopy, since they must be heavy enough to overcome the surface tension of a drop of liquid. The coverslip is placed over the counting surface prior to putting on the cell suspension. The suspension is introduced into one of the V-shaped wells with a pasteur or other type of pipet. The area under the coverslip fills by capillary action. "17:10
yashgarothtrue, it's only good for suspension cells, i.e. blood like they're named for17:10
@kanzureworks for me17:10
@kanzurewell capillary action still works for chopped up tissue no?17:10
@kanzureor are you talking about mm^2 samples of contiguous tissue17:10
yashgarothnever tried, but I'd think even a cheek scraping would be a hassle17:11
nmz787chromosomes have that chromo in the beginning because they soak certain stains pretty easily, but I'm not sure it works if the cell isn't dividing17:11
nmz787those old ones (GIEMSA is one I think) are pretty cheap, but there are some that are like $400 for 100 microliters17:11
nmz787depends what you want to do17:12
nmz787also I saw something about chromatin precipitation, and the biggest diameters were like 300-400nm17:12
@kanzurehttp://www.scbt.com/datasheet-203738-giemsa-stain.html 25 g for $23717:12
nmz787so I imagine that the nucleus is 2-5 times that size17:12
@kanzureyashgaroth: that's just because hemocytometers are all the same size (for red blood cells), or because cheek cells are too large to be moved by capillary action?17:13
nmz787http://store.p212121.com/categories/Chemicals/Stains-and-Dyes/17:13
yashgarothnah cheeks cells are normal size, but when you've got a bunch of mucus or extracellular matrix or w/e in there, it might mess with the flow17:14
yashgaroththen again that's only a major problem when you want the equal distribution for cell counting17:14
@kanzureah sure, well you could just resuspend in water and mix or something :/17:14
@kanzure"mix with toothpick" or microcentrifuge tube17:14
yashgarothI should pick up a microscope, even though I never intend to use one for immediate projects17:15
@kanzureit's a nice thing to have laying around17:16
sheena1hemocytometers are evil. that is all. i must go now!17:25
@kanzurethey break?17:30
yashgarothnah17:31
@kanzurethey cost a lot?17:31
yashgarothmy guess it that that was related to ":yashgaroth: plus you get to count the cells, repeatedly and mind-numbingly, for hours"17:31
-!- sheena1 [~home@d207-216-112-48.bchsia.telus.net] has quit [Ping timeout: 248 seconds]17:33
nmz787yashgaroth: or you just put a cam on it and write some blob detection software17:42
nmz787i have some images we could use17:42
yashgarothsure, if it can differentiate white/red blood cells, and/or stained live/dead cells17:43
nmz787paperbot: http://antiquity.ac.uk/ant/subscriptions/howtoaccess.htm?PageWanted=http://antiquity.ac.uk/Ant/076/0015/Ant0760015.pdf17:43
paperbotno translator available, raw dump: http://diyhpl.us/~bryan/papers2/paperbot/40393e18fd6c3bd8c3386bf5c7dbca5d.txt17:43
-!- ThomasEgi [~thomas@panda3d/ThomasEgi] has quit [Remote host closed the connection]17:44
nmz787yashgaroth: alive/dead is easy with... trypan blue??...17:44
yashgaroththat's the common one17:44
nmz787ya17:44
nmz787red white should be easy, since they're red right?17:44
nmz787macrophage vs b cell is what you need for hybridoma righr?17:45
nmz787when you grind up the spleen17:45
-!- Viper168 [~Viper@unaffiliated/viper168] has quit [Ping timeout: 255 seconds]17:45
yashgarothI don't know what criteria they have for blood counts17:45
yashgarothalso it's myelomas17:45
nmz787yeah but you need B cells to merge with17:46
yashgarothsure, myelomic ones17:46
nmz787the myeloma is from an un-immunized mouse i believe... or myeloma cell culture more likely17:46
yashgarothyes but you're not counting myelomas when you do a blood test17:46
nmz787you need immunized B cells from a non-cancerous mouse17:46
yashgarotherr, hybridomas17:47
nmz787to merge them with17:47
yashgarothsure but you can't separate them with a hemocytometer17:47
nmz787yeah i used haemocytometers to count diff white cells vs each other17:47
nmz787no just calc concentration17:47
yashgarothoh yeah then sure17:48
nmz787so you can have the right proportion of myelomas to Bs17:48
yashgarothI didn't think anyone really did hybridomas anymore, eschewing them for libraries17:48
yashgarothbut it would be one application17:48
yashgarothfor determining your markets for said diy cell counter, I'd think most of the market is in trypan blue staining for biotech, as I imagine most diagnostic blood counts are by hand what with the subtle nuances of white blood cells17:50
nmz787yeah17:52
nmz787that's easy and pro versions start at like $3k17:52
nmz787the 'countess'17:52
yashgaroth$200 microscope, cheap camera, free-ish software, cheap hardware17:52
nmz787i think you could do it with a $50 microscope17:53
yashgarothtrue17:54
nmz787kanzure: where should individual spectrometer profiles fit into the code18:01
nmz787like, each spectrometer will have it's own method for getting data18:01
nmz787the one i just used is via serial18:01
nmz787others are probably the same, but is it possible to have blank function prototypes in python, that you then override later with instrument-specific logic?18:02
nmz787like instead of me having a getDataFromSerial function in the spectrometer class18:03
@kanzurei suggest a module that provides plugins18:03
@kanzureand then these plugins would be distributed with the library as an extra module18:03
nmz787i would think it migh be better to have a getData function, that is then custom for this spectrometer i'm currently working with18:03
@kanzuree.g. from spectrometerthing.equipment import biorad199x18:03
@kanzureyes a "blank function prototype" is known as a class method :P18:04
@kanzureyou would have a generic class- let's call it Spectrometer- and then Biorad199x would inherit from Spectrometer18:04
nmz787so how can i craft a skeleton class (i dont know if that term is correct) in spectrometer's main class... that each instrument file module would extend18:04
@kanzuregive me one moment18:05
nmz787such that python will enforce all the arguement requirements from spectrometer18:05
nmz787ok18:05
nmz787i did this in c++ a few years ago, but it was pretty rough going18:05
@kanzurehttps://gist.github.com/463108718:07
@kanzuregit clone https://gist.github.com/463108718:07
@kanzureof course, "get_data" is not pythonic at all and violates everything in pep818:08
@kanzureok i pushed some clarifications18:11
@kanzurethis is still sorta wonky.. first of all, why would there be "data" attached to the spectrometer object itself. it would make more sense to return it once reading is done, and then the spectrometer knows nothing of it.18:13
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has quit [Remote host closed the connection]18:16
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has joined ##hplusroadmap18:16
-!- JayDugger [~duggerjw@pool-173-74-81-239.dllstx.fios.verizon.net] has quit [Quit: Leaving.]18:19
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has quit [Ping timeout: 248 seconds]18:21
phmkanz: Do you use python in preference to smalltalk or lisp? Or do you only use it because you work on existing codebases or need python libraries?18:35
@kanzureall of the above? why.18:36
phmYou think python is a better language than smalltalk or lisp? Or you think their power is equal?18:37
@kanzurewhy?18:37
phmIs 'curiosity' a good enough answer?18:37
@kanzureno18:37
@kanzurei doubt it's curiosity, why not ask anyone else in here18:37
phmI'm more curious about certain individuals.18:38
phmYou can take it as a sign of respect.18:38
phmYes, I have an agenda. No, I'm not ready to tell you what it is. Are you going to answer the smalltalk vs python question?18:40
yashgarothwhat's your agenda? I am curious18:44
phmNo, I'm not ready to tell you what it is. All I'll say is that I think we have similar goals.18:45
@kanzurenmz787: i guess it really only needs one method (capture). i pushed up that change up.18:45
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has joined ##hplusroadmap18:46
-!- eudoxia [~eudoxia@r186-53-133-179.dialup.adsl.anteldata.net.uy] has quit [Remote host closed the connection]18:55
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has quit [Remote host closed the connection]18:58
phmThinking about it; you can't have 'all of the above' without a contradiction.18:59
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has joined ##hplusroadmap18:59
phmAlthough you did use a question mark.19:00
phmI find a lot of your statements to be rather ambiguous.19:01
phmWhich suggests natural language is not your strength. I haven't reviewed your code yet.19:03
-!- augur [~augur@c-98-218-127-183.hsd1.md.comcast.net] has quit [Ping timeout: 248 seconds]19:03
nmz787i guess there doesn't have to be data in the spectrometer object19:13
@kanzurewell, the one function that matters the most is capture() which returns data19:13
nmz787capture==read?19:15
nmz787readData19:15
nmz787etc19:15
@kanzurereadData is not pep8 compatible :P19:15
nmz787in some cases you might also be able to send data to the spectrometer19:15
@kanzurehttp://www.python.org/dev/peps/pep-0008/19:15
nmz787wtf is pep819:15
nmz787?19:16
nmz787says mixed case is OK19:16
-!- devrandom [~devrandom@gateway/tor-sasl/niftyzero1] has joined ##hplusroadmap19:16
nmz787the name of the project is openSpectrometer19:16
nmz787:/19:17
nmz787read_data is fine too19:17
@kanzureoh you're right, it's not actually forbidden in pep819:18
@kanzurewell, readData seems weird anyway. why not just read, and then it can be compatible with File.19:18
@kanzuredoesn't matter, moving on19:19
nmz787hmm19:19
nmz787i guess read is good19:19
nmz787then write?19:19
@kanzurea spectrometer never writes19:19
@kanzure... does it?19:19
@kanzurewhat spectrometers do you have physical access to?19:20
nmz787bio-wave II or something like that19:21
nmz787i'm am planning on openSpectrometer to be writable19:21
@kanzurewhat does writable mean in this context?19:21
nmz787that's how you will select streaming to computer, stream to on-board disk, stream out the SPI port to some other device... change exposure time...19:22
nmz787maybe you want to turn on the timer function19:22
nmz787so it takes a reading every 5 mins, when it isn't plugged into the computer19:23
@kanzurejust out of curiosity, which of these features are implemented in other spectrometers?19:23
@kanzurei've worked with some nanodrops and one other thing that i can't remember19:23
@kanzureand i was always just doing basic captures19:23
nmz787i think exposure is definitely one19:23
@kanzurenot sure what else they could do19:23
nmz787for some with moving parts you could select a scan range too19:24
nmz787range and dwell time per interval19:24
@kanzurespectrum range, or physical swivel range thing?19:24
nmz787potentially tell it to swap a filter in for fluorescence19:24
@kanzureok well, in an ideal world,19:25
@kanzurethe spectrometer library should hide all of those features and make it so that i could set those features the same way for each device19:25
@kanzureeven if the implementation is different19:25
nmz787well on a monochromator you move the grating and can have a pixel array getting blocks at a time, or you can have a PMT/single-pixel getting one wavelength at a time19:25
nmz787right19:25
nmz787that's why i thought of prototypes19:26
nmz787or whatever they're called19:26
nmz787subclasses19:26
@kanzurewas the pastebin link from yesterday data from the bio-wave ii?19:27
-!- nsh [~nsh@wikipedia/nsh] has quit [Remote host closed the connection]19:28
nmz787yes19:28
nmz787i have since written a parser for the original19:28
@kanzurepaste it up https://gist.github.com/19:28
nmz787then averaging datasets, fitting a curve to that, searching for peaks, displaying the original spectrum + fit and possible peaks highlighted, added a 'select this peak' button to that19:29
nmz787ok19:31
nmz787how do you add a comment in a file with JSON?19:35
@kanzureyou do not :(19:40
@kanzureeven if you did, when the file is parsed by a json library, the comment will be discarded19:40
@kanzureyaml uses "#" for comments, but yaml parsers also discard comments19:41
@kanzure(yaml is a superset of json)19:41
nmz787ok i just added a README section19:41
nmz787to the dict19:41
nmz787https://github.com/nmz787/open-spectrometer/tree/master/desktop-software19:43
@kanzureoops19:46
nmz787changed the filenames just now19:46
@kanzurewell, maybe you would find this useful anyway19:46
@kanzurehttps://github.com/kanzure/python-spectroid19:46
nmz787from openSpectrometerGUI to openSpectrometer19:46
@kanzurethis is just a basic egg for the code i jotted out for you19:46
@kanzurefeel free to not use it19:47
nmz787cool19:47
nmz787yeah so i know it needs cleaned up, but it's a start19:47
nmz787figuring out the stupid gtk and matplotlib stuff was pretty annoying19:48
@kanzurewhat is phPython ?19:48
@kanzurehttps://github.com/nmz787/open-spectrometer/blob/master/desktop-software/phPython.py19:48
nmz787gonna calculate pH from spectral data19:48
nmz787it is using functions from the openSpectrometer file19:49
nmz787in openSpectrometer.py i wrote a section getDataFromSerial19:52
nmz787but i'm gonna basically refactor it into te biowave class19:52
nmz787hmm, but you see how I implemented it19:53
nmz787i will have to move the while loop i guess, to make it 'read'19:54
nmz787instead of save to disk19:54
@kanzurei don't think relying on KeyboardInterrupt is a good idea19:54
@kanzureisn't there some way to know that it is done sending data? like EOF?19:54
nmz787dunno, i only had the file  i copy-pasted to go on19:54
nmz787haven't been around the instrument since last week19:55
@kanzurebut i mean, this while loop never ends19:55
nmz787sure it does, when you press ctrl-c19:55
@kanzure<-- major facepalming19:55
nmz787there's a KeyboardInterrupt at the bottom19:55
nmz787why is that bad?19:55
nmz787the spectrometer only sends data to the computer when you press a physical button19:56
nmz787so i never have to touch the computer once i run this19:56
nmz787just press the 'take reading' button on the device19:56
-!- OldCoder_ [~OldCoder_@c-69-181-140-134.hsd1.ca.comcast.net] has joined ##hplusroadmap19:56
nmz787i can just return at dataReady=True though19:57
nmz787to make it compatible with read()19:57
nmz787err datapointsReady19:57
nmz787return instead of fwrite19:57
-!- Proteus1 [~Proteus@71-34-198-154.omah.qwest.net] has quit [Read error: Connection reset by peer]19:58
@kanzurectrl-c is actually the SIGINT signal19:59
@kanzureyou shouldn't have to kill your program to stop reading. what if reading is only the first step?19:59
-!- Proteus [~Proteus@unaffiliated/proteus] has joined ##hplusroadmap19:59
nmz787yeah but i catch the exception and just continue20:00
nmz787no killing happens20:00
nmz787i actually imported signal earlier but then just used the exception catch20:00
@kanzurethe other issue of concern is the reliance on gtk and so on20:03
@kanzurewould you be opposed to me writing a pull request that makes that optional?20:03
nmz787huh?20:03
nmz787the getting data doesn't require gtk20:04
@kanzurewell, let's say that i want to run this on my phone where i don't have gtk installed. this wouldn't work on my phone :(.20:04
nmz787only the plotting stuff20:04
@kanzureyes, but the imports run regardless20:04
nmz787ok, so catch the import error?20:04
@kanzureyes that is one of the things i would be doing20:04
nmz787you won't be able to use this on your phone anyway20:04
nmz787you probably can't do USB host20:05
@kanzurethey also said that about linux, but look at me now20:05
nmz787how do i add a catch for import exception around those statements?20:05
@kanzuresame way as normal try/catch20:05
nmz787and #ifndef20:05
nmz787or whatev on the gtk usin funcs20:05
nmz787ahh ok20:06
@kanzuretry:\n import whatever\n except ImportError as exception:\n pass20:06
nmz787should a spectrometer device just try connecting to all com ports in detect()20:07
-!- Proteus [~Proteus@unaffiliated/proteus] has quit [Read error: Connection reset by peer]20:08
@kanzurewell, actually, we have one of the authors of cupsd in here and she might have some ideas20:08
@kanzures/authors/contributors20:08
@kanzurejuri_: right? you did something cupsd related. maybe?20:09
-!- Proteus [~Proteus@unaffiliated/proteus] has joined ##hplusroadmap20:09
@kanzurebut yeah, for now i think just cycling through com ports is ok. is there a way that a spectrometer tells the software what version it is?20:09
nmz787biowave told it when it printed out a spectrum20:09
@kanzureneat20:09
@kanzuregood20:09
nmz787i didn't pok biowave_II though to see if i could detect()20:10
nmz787so i'm just gonna have a connect() function20:10
nmz787which you can optionally pass a com port to20:10
nmz787or port20:10
nmz787since i guess IP spectrometers could happen20:10
nmz787maybe20:10
nmz787so how do i append to a JSON object20:12
nmz787like i want to add another k,v to a json string20:12
-!- Proteus [~Proteus@unaffiliated/proteus] has quit [Read error: Connection reset by peer]20:12
@kanzurejsonthing = json.loads("{\"key\": \"value\"}"); jsonthing["key2"] = "value2"; print json.dumps(jsonthing)20:12
nmz787can i insert it before key1?20:13
nmz787key0?20:13
@kanzurepython dictionaries do not have guaranteed order, unless you use a OrderedDict20:13
nmz787i am using that20:13
@kanzurejson doesn't guarantee ordering either, i think20:13
nmz787json.dumps keeps it ordered20:14
@kanzureyou can use a numerical key btw20:14
@kanzurejsonthing[0] = "whaaat"20:14
nmz787so i return a JSON object or a OrderedDict from read()?20:14
-!- Proteus [~Proteus@unaffiliated/proteus] has joined ##hplusroadmap20:14
@kanzurewell, why is it a dictionary in the first place?20:15
@kanzurei thought it's a list of wavelengths?20:15
-!- Proteus [~Proteus@unaffiliated/proteus] has quit [Client Quit]20:15
nmz787you said to make it that way20:15
@kanzurethat's a good reason, but i don't think we figured out whether or not i was right20:15
nmz787after you told me to use config parser20:15
nmz787you told me to use JSON20:15
@kanzureok but you mean read() from the spectrometer?20:15
@kanzurenot the config parser20:15
nmz787yes20:15
nmz787now i am returning all the data in a JSON dict20:16
@kanzurejson is a format for representing dictionaries, lists and strings, inside of a string20:16
nmz787it has the startwavelength, end, etc20:16
@kanzurein python, a dict (dictionary) is a native type just like list or int20:16
nmz787right i know that20:16
@kanzureok, startwavelength20:16
nmz787why are you telling me that?20:16
@kanzurebecause you said returning a JSON dict20:16
@kanzurewhat's a json dict?20:17
nmz787ok fine i'm just gonna return the ordereddict20:17
browniesa dictionary in JSON, i assume20:17
@kanzureis it a string literal of json text? or is it a dict in python?20:17
nmz787" json is a format for representing dictionaries, lists and20:17
nmz787                 strings, inside of a string"20:17
@kanzureok returning an ordereddict is a sensible thing20:17
@kanzurebut20:17
browniesand you people need to start using underscores where you should have spaces in variable names20:17
@kanzurebrownies: i agree20:17
browniesstart_wavelength ... not startwavelength20:17
@kanzurenmz787: the other issue is why is there a start_wavelength in the first place?20:17
@kanzurecan't you just do min(wavelengths) ?20:18
nmz787it's actually startWavelength20:18
nmz787in the file20:18
nmz787why would i store all the wavelengths20:18
nmz787in this instrument it's 1nm steps20:18
@kanzurebecause that's what the function does? returns all the wavelengths?20:18
@kanzureright?20:18
nmz787so i can accurately interpolate the range20:18
nmz787no20:18
nmz787it returns all the data20:18
nmz787regarding a sample20:19
nmz787the data is ADC reading @ some wavelength20:19
@kanzurewhat i'm trying to get at is that it's not a simplified api if each spectrometer class returns a different value from the capture/read function20:19
nmz787i woudln't think it should20:19
nmz787i guess i could interpolate the whole range of wavelengths and write it to file20:20
@kanzurewhat's wrong with returning all wavelenghts in 1 nm increments?20:20
nmz787or make the [(wavelength, absorbance)]20:20
@kanzure(also, you're right about adc reading at a specific wavelength, so yes that's a dictionary)20:20
nmz787yeah it might not always be integral step size20:21
@kanzureso imagine this20:21
@kanzureyou have a library of functions for running mathy things on spectrometer data20:21
@kanzureone of these is the ph calculator20:21
@kanzurethe other is a.. uhm. detects metals?20:21
-!- augur [~augur@208.58.5.87] has joined ##hplusroadmap20:21
nmz787or i just have a fallback if a range is given20:21
@kanzureif the data is different from each capture() method, these plugins/methods would have to be rewritten each time you write a new spectrometer class20:22
nmz787well another would be some sort of pattern recognition20:22
nmz787so if i have two lists, how do i combine them to form a dict?20:23
@kanzuremydict.update(otherdict)20:23
nmz787i.e. wavelengths and ADV val20:23
@kanzureso wavelengths[0] should be paired with ad_voltages[0] ?20:24
nmz787yeah20:24
nmz787i think a list comprehension may do it20:25
nmz787hmm20:25
nmz787maybe not20:25
nmz787a list of dict pairs?20:25
@kanzuredict([(wavelengths[index], ad_voltages[index]) for index in range(0, min([len(ad_voltages), len(wavelengths)]))])20:26
@kanzurewill give you a dictionary of wavelength -> ad_voltage20:26
nmz787well this failed  [(k,v) for k,v in p,t]20:27
-!- Mariu [Jimmy98@89.41.57.33] has joined ##hplusroadmap20:27
browniesof course it did20:27
brownieswhat are p and t?20:27
nmz787p=[1,2,3,4]; t=[0,9,8,7]20:27
nmz787ValueError: too many values to unpack20:28
@kanzure"in" only works for a single list, i've never seen it work for a tuple20:28
nmz787:P20:29
brownies=(20:29
@kanzurewhat's wrong with the code i dropped?20:29
nmz787works20:29
@kanzureoh also i think it forgets the last value20:29
@kanzurebecause i do range(0, length)20:30
@kanzureso it should be range(0, length+1) because you still want the last index20:30
browniesyou can just write range(length+1)20:30
brownies</pedant>20:30
@kanzure<pedant>20:30
@kanzureopen that back up, you jerk20:31
@kanzureyou don't get to stop the pedantry20:31
brownieshahah20:31
@kanzureman you totally messed up the xhtml compatibility of this log20:31
phm"< kanzure> this is entering the realm of extreme pedantry" and there was me thinking that this was a complaint!20:32
nmz787nope it works without +120:32
browniesheh.20:32
browniesah, yes, you don't need the +1 because you're using the length20:33
@kanzurephm: it was not a complaint20:33
heathmy first blog post since i found out about blogging ;)20:34
heathhttp://isotope11.com/blog/a-guide-to-automatic-semicolon-insertion-in-javascript20:34
heathone bug report follows: https://bugs.webkit.org/buglist.cgi?quicksearch=oliver%40apple.com20:35
@kanzureah so you're a corporate blogger now20:35
phmDo you actually want to know what was 'wrong' with the code you 'dropped'? Or was that a rhetorical question?20:35
@kanzurewho are you asking20:35
phmyou20:35
@kanzuremy dict() line works for his purposes20:36
phmThat's why I put 'wrong' in quotes.20:36
@kanzurehe seemed to be ignoring it, so i mentioned it again.20:36
nmz787kanzure: if i have a dict d, how do i most easily get a list of all k or v20:36
@kanzurenmz787: mydict.items() gives you a [(key, value), ...] list20:36
@kanzuremydict.keys() gives you a list of keys20:36
@kanzureand mydict.values() gives you a list of values20:37
browniesyou want iteritems() dawg20:37
* phm resists temptation to troll pythonistas 20:37
@kanzureheath: i don't understand any of your diagrams20:38
@kanzurewhy are these circles?20:38
@kanzurebrownies: nmz787 doesn't know about __iter__ yet20:38
browniesi don't write enough Python to know most of these things tbh20:39
browniesi always have to crack open the docs for basic string manipulation -_-20:39
@kanzureexample?20:39
heathyeah, they aren't the greatest, i was originally going to make it like something you see in graphs of automata, showing all the possible moves, but then i realized it probably wouldn't be clear the exact path that is being taken without adding in some type of coloring which i don't care for doing20:39
@kanzureheath: i think the text is clear enough on its own20:39
@kanzureheath: also, i did a very tiny proof of concept of a hack to a deobfuscator that you might be interested in looking at20:40
heathyep20:41
@kanzureheath: https://github.com/kanzure/uglifyjs-poc20:41
@kanzureit replaces short variable names with longer variable names20:41
@kanzurebecause i read a lot of obfuscated javascript and it's easier to replace longer variable names20:41
@kanzurehowever, it doesn't capture all possible situations. sometimes there are leftover variables because that's how prototypes work and such.20:41
@kanzuremaybe you know a better way to implement this? (also, my implementation was that of a bastard's-- i just did whatever i wanted, which is why it's a proof of concept and not something people should use)20:42
@kanzurealthough brownies seemed to find some use out of it ?20:43
browniesit added a nice dash of flavor to our JS shenanigans20:43
browniesheath: it's not really clear what 1 circle vs. 2 circles means20:44
browniesheath: also, that text in the diagrams is far too maddeningly small20:44
@kanzureah i thought that was my browser's fault20:44
@kanzureyeah the text inside the diagrams is very tiny20:44
heathclicky!20:44
@kanzuregetclicky.com?20:44
brownieshe means click on them20:45
browniesbut regardless that is not good information design20:45
@kanzurewell once i click it, it pops up and takes up the entire screen20:45
browniesheath: nice article though.20:45
@kanzurethen i click it again, and it zooms in even more20:45
nmz787can i store args somehow?20:45
@kanzureand i have to refresh20:45
browniesi find it odd that Chrome got slower from 22.0 to 24.020:45
@kanzurenmz787: probably, but explain your exact situation?20:45
@kanzurebrownies: i bet experimental things.20:46
nmz787well instead of pasting this in two differnt places port=sys.argv[1], baudrate=115200, rtscts=True, dsrdtr=True, timeout=520:46
@kanzurenmz787: yes, you can pass variables between functions20:46
nmz787just store it to a string, then pass that string to pyserial20:46
nmz787no i don't want to pass it between funcs20:46
@kanzurewhen wondering how to design a python library, i think the best thing to look at is python-requests20:46
@kanzurehttps://github.com/kennethreitz/requests20:47
nmz787?20:47
nmz787that has nothing to do with storing args20:47
@kanzurehis api design is solid and he stores arguments as a config variable attached to his session20:47
nmz787can i just save then to *args and **kawargs20:47
nmz787then pass them?20:47
@kanzureit would work.. in the same sense that your while loop works. yes.20:47
nmz787syntax error20:47
@kanzurewhat?20:48
nmz787doesnt like that *20:48
@kanzurepaste the offending line20:48
nmz787*args='1'20:48
@kanzurethat's not how python works20:48
nmz787**kwargs='baudrate=115200'20:48
@kanzurenonono20:48
nmz787you said it would work!20:49
@kanzureyou said pass them20:49
nmz787just like my loop!20:49
@kanzurenot redefine them20:49
nmz787yeah20:49
@kanzureyou are redefining them20:49
nmz787i want to pass them a few lines down20:49
@kanzureif you want to override their values, just say args=whatever and kwargs=whatever20:49
nmz787ok so can i just do nateKwargs='baudrate=115200'20:49
nmz787then pass nateKwargs?20:49
@kanzureto pass a list of values as positional arguments to a function, do: myfunc(*list_of_positional_arguments)20:49
nmz787can they be nonpositional?20:50
nmz787i.e. kwargs?20:50
@kanzuredef myfunc(*args, **kwargs): blah... in this function, kwargs will be a dictionary of all of the keyword arguments passed to myfunc20:50
nmz787can i just options='port=sys.argv[1], baudrate=115200, rtscts=True, dsrdtr=True, timeout=5'20:50
@kanzureno20:50
nmz787so dumb20:50
nmz787why don't they make languages work20:50
@kanzureoptions = {"port": sys.argv[1], "baudrate": 115200}20:50
nmz787they way i want20:50
-!- Hu_Meanan [~quassel@199.48.197.18] has joined ##hplusroadmap20:51
nmz787easier to just double past self.ser=serial.Serial(port=sys.argv[1], baudrate=115200, rtscts=True, dsrdtr=True, timeout=5)20:51
@kanzurebut you can also just specify the keyword arguments explicitly.. def myfunc(positional_argument1, keyword_here=True, another_keyword_argument=False)20:51
@kanzurewell, baudrate=115200 looks like a setting that a user would want to change20:51
@kanzureand using sys.argv for the port is sorta weird because what if your function was called from another python script ?20:52
@kanzuree.g. without using the command line20:52
nmz787no that was old20:52
nmz787no the baud rate won't change for Biowave_II20:53
nmz787i only got it to work with one setting20:53
@kanzurehave i sufficiently explained why *args=1 is wrong?20:53
-!- sheena1 [~home@d207-216-112-48.bchsia.telus.net] has joined ##hplusroadmap20:54
-!- Viper168 [~Viper@unaffiliated/viper168] has joined ##hplusroadmap20:54
nmz787sure, python doesn't like pointers20:54
@kanzurein python, * does not mean pointer20:55
nmz787kanzure: get cmdline input with raw_input()20:56
nmz787?20:56
@kanzure"If the form *identifier is present, it is initialized to a tuple receiving any excess positional parameters, defaulting to the empty tuple. If the form **identifier is present, it is initialized to a new dictionary receiving any excess keyword arguments, defaulting to a new empty dictionary."20:57
@kanzurei highly discourage the use of raw_input20:57
@kanzurebut yes, it grabs things from stdin20:57
nmz787why?20:58
@kanzurebecause it makes your program less automatable20:58
nmz787how else should i ask for sample IDs before saving the reading to disk?20:58
nmz787well there's a bool flag to disable getting sample IDs from the user20:58
@kanzurei would suggest you make a new folder based on a timestamp, and inside you can dump new files in sequential order if you want20:58
nmz787but that isn't good enough20:59
@kanzureif the user specifies a folder name, that folder should be used20:59
nmz787i want to be able to load up my data and see, oh yeah, this is acid 120:59
nmz787this is acid 220:59
nmz787if the program doesn't do that, then i have to write the timestamps in my lab manual with the labels20:59
@kanzurethe way i'd love to run this would be:21:00
@kanzurespectrometer capture > acid.dat21:00
nmz787but where is the config of the spectrometer21:00
-!- u-metacognition [~metacogni@99-7-58-96.lightspeed.davlca.sbcglobal.net] has joined ##hplusroadmap21:00
nmz787port num21:00
nmz787etc21:00
nmz787when did you set that up?21:00
@kanzure~/.spectrometerrc21:00
@kanzure:P21:00
nmz787:/21:01
@kanzurehmm, well, my point was that it should dump to stdout so that i can pipe to a file, right?21:01
nmz787hmm21:01
nmz787i guess, but then i have to write a script in bash21:01
nmz787when i already did it in python21:01
@kanzurewhy in bash?21:01
nmz787well why would you want it going to stdout21:02
@kanzureso that i can control where i want it to go ?21:02
nmz787if you were using python you'd just import the module21:02
@kanzureyes definitely21:02
-!- qu-bit [~shroedngr@gateway/tor-sasl/barriers] has quit [Remote host closed the connection]21:03
nmz787my ideal setup is to have the prog get readings, ask me for a sample ID, save to disk in a separate or appended file21:03
nmz787or if i'm dealing with all the same samples, or just looking at time, then i wouldn't give it the sample ID, i'd just name the file21:04
@kanzurethat's reasonable21:05
@kanzureas long as the stuff under the hood can be reused for other things21:05
nmz787so how do i do that, and what you want21:05
@kanzuredo you know how to make a python module?21:05
@kanzureif not, i could illustrate one with https://github.com/kanzure/python-spectroid21:06
nmz787i can already import these files in other files21:06
nmz787these classes*21:06
@kanzurenot quite..21:07
-!- xx [~xx@72.53.96.212] has joined ##hplusroadmap21:07
@kanzuredo you have your django stuff still working, by any chance? try importing from there.21:07
@kanzureyour class isn't installed on your system, so it will be an ImportError21:08
-!- qu-bit [~shroedngr@gateway/tor-sasl/barriers] has joined ##hplusroadmap21:08
nmz787not if i added it to my path already21:08
@kanzurei don't know how to answer your question succintly, sorry.21:11
@kanzurethe long way involves a lot of complicated explanation about how to use python modules21:11
@kanzureand how to write reusable code21:11
rigelanyone interested in destroying our system of medical education?21:12
rigelbecause if so, we should chat21:13
yashgarothget back to memorizing all the anterior processes21:14
rigeli got an extension on my exam until friday21:14
rigeler21:14
rigelmonday21:14
-!- sheena1 [~home@d207-216-112-48.bchsia.telus.net] has quit [Ping timeout: 256 seconds]21:14
rigelit seems completely fucking insane to me though that we're taught not the basics about systems and then how to use the literature to find out details21:15
rigelbut instead we're just crammed full of information that we spew out and forget21:15
rigelat least at this institution21:15
rigeli hear it's a bit better in some other places21:15
-!- xx [~xx@72.53.96.212] has quit [Read error: Connection reset by peer]21:16
yashgarothhey so if I want to inject someone with a plasmid can I just get a doctor to sign off on it or what?21:17
-!- xx [~xx@72.53.96.212] has joined ##hplusroadmap21:17
@kanzureoops, turns out the "spectroid" name was taken by another python package21:20
@kanzureso i renamed to https://github.com/kanzure/python-spectrometers and http://pypi.python.org/pypi/spectrometers21:21
nmz787yashgaroth: what doc will sign off though21:21
rigelyashgaroth: is that some kind of freaky transhumanism euphemism?21:21
nmz787yashgaroth: lot on the line21:21
yashgarotheuphemism?21:21
yashgarothnm787: one who's down with the h+, can you dig it21:21
rigelif you're that down, why not just inject yourself21:22
yashgarothoh I will, but eventually we'll need an n greater than 121:22
nmz787can you remove the s kanzure ?21:22
rigelthats how a lot of medical experiments have been done, before the advent of clinical trials21:23
@kanzurenmz787: yes, but why?21:23
nmz787kanzure: seems better to name it python-spectrometer21:23
nmz787i dunno21:23
rigelyashgaroth: you'll probably need to put together an actual experiment21:23
nmz787why keep it plural21:23
yashgarothoh totally, there's still plenty of apocryphal reports of researchers self-injecting to prove a point21:23
rigelyou know, do stuff in rodents first, demonstrate efficacy21:23
rigelthen pull together a couple hundred mil to do the FDA approval dance21:24
yashgarothman I ain't got time to fuck around with rodents, can't I just do it on myself?21:24
nmz787kanzure: it wasn't really inspired by openSpectrometer... it is written because of it21:24
yashgaroth200 mil? that's cheap for three phases21:24
rigelnot really21:24
@kanzurenmz787: because it deals with multiple spectrometers. i dunno, i could go either way.21:24
rigelthe pharma estimates are hugely bloated21:24
nmz787yashgaroth: outsource to china or bangladesh?21:24
yashgarothtrue, they bundle in all the failed trials and R&D21:25
rigeleven doing the work here, theres a lot of drugs that only cost $150mil or so21:25
yashgarothman I don't want china stealing it and selling cheap knockoff plasmods21:25
rigelthey bundle in failed trials, but also opportunity cost21:25
rigeland a lot of other accounting tricks21:25
nmz787why is there a make file if its interpreted kanzure21:25
yashgarothactually wait I was making a bad joke about knockoffs with spelling errors, but "plasmod" is actually a sweet name21:25
rigelwhat do you mean "stealing"21:25
rigelits information isnt it?21:25
yashgarothyeeesssss21:25
@kanzurenmz787: because i like to use makefiles to simplify some common behaviors21:25
@kanzurenmz787: check out the makefile to see what it does21:25
rigeldoesnt it want to be free or something21:25
@kanzure"make test", "make upload" (to send a new version to pypi), etc..21:26
yashgarothbut my fast cars and even faster mansions21:26
yashgarothanyway I don't think I have enough money for a chinese clinical trial, even21:26
@kanzureclinical trials: langton labs style21:26
@kanzureall residents of langton labs must report immediately for clinical testing21:27
@kanzurei'm sure they would be down for it21:27
rigelQuintiles will pretty much do anything21:27
yashgarothI've got the grinders already, don't need those nonces at langton21:27
rigelthey are the mercs of the clinical trials world21:27
rigeltheyll get their own for-profit IRBs together to nod over the protocol and approve it21:27
yashgarothalso I don't know how clinical trials are operated for non-therapeutic purposes, since it won't cure anything21:27
rigelthey will outsource the testing to dirt poor farmers in bangladesh21:28
-!- lichen [~lichen@c-24-21-206-64.hsd1.or.comcast.net] has quit [Quit: Lost terminal]21:28
yashgaroththis is all starting to sound harder than 'coerce doctor'21:29
@kanzureyashgaroth: it will cure your insatiable hunger for uh..21:29
yashgarothflesh?21:30
@kanzurei wonder if it's possible to invent a bogus disease and get the FDA to approve a medicine for this bogus disease21:31
@kanzurei guess this will not get past the double blind portions21:31
yashgarothwell theoretically it'd work for sarcopenia and cachexia21:31
nmz787kanzure: does python setup.py uninstall work somehow21:32
nmz787i tried it and remove and they didnt work21:32
@kanzurepip has remove21:33
@kanzurepip remove spectrometers21:33
nmz787i didnt use pip21:33
nmz787i used setup.py install21:33
@kanzurepip alters the same thing that setup.py install alters21:33
nmz787pip remove spectrometers21:34
nmz787Usage: pip-script.py COMMAND [OPTIONS]21:34
nmz787pip-script.py: error: No command by the name pip-script.py remove21:34
nmz787  (maybe you meant "pip-script.py install remove")21:34
@kanzurepip uninstall spectrometers21:35
rigelkanzure: "social anxiety disorder"21:35
rigelthough the best practice for this sort of thing is usually to take a rarely-diagnosed disease and assert that it is under-diagnosed21:35
rigelcf. restless leg syndrome21:36
@kanzurehow about ebola?21:36
rigelprobably not21:36
@kanzurewouldn't fly huh21:36
@kanzurenmz787: would you mind if i add your serial/com code to python-spectrometers?21:37
nmz787kanzure: yes21:37
nmz787kanzure: this is openSpectrometer code21:38
nmz787at least let me get it working21:38
@kanzurewell, i was thinking you could see the alternative that i suggest and then you can choose whether or not you want to use it21:38
nmz787why didn't you just upload those files to the openSpectrometer repo?21:38
@kanzurebecause i didn't know you were still using that repo, :/21:39
nmz787?21:39
@kanzurei wrote those files before you reminded me today that you were writing things in that git repo21:39
nmz787ahh21:39
@kanzurethere was this like five minute gap when i didn't say anything, didn't you notice21:39
nmz787unless you have a strong reason to change the name...21:39
nmz787it's only this part of the code that's in python21:39
nmz787originally i'd planned on making some data analysis tools on the web21:40
@kanzureyes, i specifically mean your com/serial code and not your gtk things. i was going to show you how it would look like to separate the gui concerns from the underlying library.21:40
nmz787but i couldn't find a nice way to handle numpy like ops in javascript21:40
@kanzurebut i told you how :/21:40
nmz787no you didn't21:41
@kanzurewhen there's no way to do it directly in javascript, you write up a quick server app and just run the server locally, then communicate with the server through javascript21:41
nmz787that sounds horrible21:41
nmz787why wouldn't you just do it all in GTK then?21:42
@kanzureyou could, the gtk front-end would get data from a back-end21:43
@kanzurea browser could be useful if you want multiple users to view the same graphs21:43
@kanzureon different machines21:43
@kanzureor if you want to support some basic mobile things without porting gtk things to android/iphone/blackberry/etc.21:43
nmz787right but it would be easier to keep it ALL python or ALL web separately21:44
nmz787like i said the phones likely won't have usb HOST21:44
nmz787and they won't run python21:44
@kanzurein the context of a web page showing a graph loading data from a remote server, i don't think it matters that the phone is not running usb host mode21:45
nmz787so if it's not all web, then it's gotta be phone OS specific21:45
@kanzurepython runs pretty well on android, but i haven't tried it on iphone21:45
@kanzurei think your strategy so far is working- but don't get pissed off if i submit pull requests cleaning up some things21:46
-!- sheena1 [~home@d207-216-112-48.bchsia.telus.net] has joined ##hplusroadmap21:47
nmz787well doesn't it look like your project now21:47
nmz787since it's your repo21:47
@kanzuregit repos can be controlled by anyone21:49
nmz787so that CaMV is dangerous article guy didn't post my comment where i specified how i though he was wrong21:49
-!- nsh [~nsh@wikipedia/nsh] has joined ##hplusroadmap21:49
@kanzurethe only thing that makes python-spectrometers "mine" at the moment is that i am the only user that pypi.python.org allows to publish an updated version, but i could add you to that21:49
nmz787how do i linkback my response which i posted to DIYbio, that didn't get moderated?21:49
nmz787how does pypi get updated?21:49
@kanzuremake upload21:50
nmz787when there's a new version21:50
nmz787does it keep a copy there?21:50
nmz787make isn't on windows21:50
nmz787:(21:50
@kanzureyou mean, you haven't installed make ;) (cygwin, etc. etc..)21:50
@kanzureyes, pypi keeps copies of all versions of all public packages21:50
@kanzurethat's how everyone is able to type things like "pip install pie"21:50
@kanzurehere's python-requests: http://pypi.python.org/pypi/requests21:51
@kanzureold versions: http://pypi.python.org/packages/source/r/requests/21:51
nmz787kanzure: how do i clear all the values in a dict without messing the keys21:56
nmz787dict.values()=[] dont do it21:56
@kanzureuh, my first idea is mydict.update(dict([(key, None) for key in mydict.keys()]))22:02
@kanzuresecond idea is to create a new dict.. new_dict = dict([(key, None) for key in old_dict.keys()])22:03
nmz787how about this22:04
nmz787d={'a':1,'b':2,'c':3}22:04
nmz787>>> default_val=9922:04
nmz787>>> for k in d:22:04
nmz787...     d[k]=default_val22:04
nmz787d=={'a': 99, 'b': 99, 'c': 99}22:04
@kanzurewell yeah, but i was trying to crush it into a single line on irc :p22:05
@kanzureaaronsw memorial stuff http://www.livestream.com/oreillyradar22:08
nmz787[(myDict[key]= None) for key in myDict.keys()]22:09
nmz787why can't that work22:09
@kanzurebecause assignment statements aren't compatible with list comprehension statements22:11
nmz787yeah, pretty dumb22:12
nmz787kanzure: so adding the values as an array is PITA22:19
nmz787since they're now a dict22:19
nmz787instead of a list of data points22:19
nmz787and once i've added them, I can't easily store them back to the orderedDict values22:20
@kanzurewell, you could create a new type that does exactly what you need22:22
-!- paperbot [~paperbot@131.252.130.248] has quit [Remote host closed the connection]22:32
-!- paperbot [~paperbot@131.252.130.248] has joined ##hplusroadmap22:32
-!- yashgaroth [~ffffff@cpe-66-27-118-94.san.res.rr.com] has quit [Quit: Leaving]22:35
nmz787kanzure: isn't that against being compatible22:38
@kanzurenope, there are things you can do in python to make your object act like other objects22:38
nmz787so i shouldn't pass around an ordereddict? you think i should make some spectrometerDataObject?22:46
@kanzurewell, if you want something more than an OrderedDict, then yeah.. play around with something and see if it works for you..22:47
nmz787lemme see if there's an easy way to assign all the values to an ordereddict at once22:51
nmz787maybe it's just using two arrays underneath22:51
@kanzuremydict.update(some_other_dict)22:52
@kanzurethat's how you do it "at once"22:52
nmz787yeah but that's horrible for memory23:01
nmz787seems like using that kinda stuff too often is what makes it not run well on something like android23:02
@kanzurewell, that's why you would use __iter__ and iterables23:05
nmz787that isn't convenient though23:14
nmz787should I just change the data from a dictionary, to two parallel lists?23:14
@kanzurewhy, again? can you explain the problem one more time?23:14
nmz787i have the spectra23:25
nmz787they are orderedDicts23:25
nmz787i want to average them23:25
-!- lichen [~lichen@c-24-21-206-64.hsd1.or.comcast.net] has joined ##hplusroadmap23:26
nmz787so i used to pass them to a function, it copied one to have a skeleton structure, deleted the data, then summed the data from each spectrum into that blaned copy23:26
nmz787blanked copy*23:26
nmz787then i would divide that summed data by len(spectraList)23:26
nmz787using numpy23:26
nmz787all that23:26
nmz787the summing and dividing23:26
nmz787then i'd return that temp structure23:27
@kanzureokay23:27
nmz787that was when it was just a dict with a list of values23:27
nmz787and the start and endwavelength23:27
nmz787so it /was/ a list then23:28
nmz787and numpy worked easily23:28
nmz787but now it's not a list, it's a list of values in the orderedDict23:28
nmz787but i can't act like its a list23:28
@kanzurei am having troubel following. what structure does numpy expect?23:29
nmz787list23:29
nmz787for spectrum in listOfSpectra:23:29
nmz787output['datapoints']=np.add(output['datapoints'], spectrum['datapoints'])23:30
nmz787that's what it was23:30
@kanzureand now?23:32
nmz787figuring that out23:32
nmz787i guess i'll just use a temp array23:33
nmz787then go through at the end and reassign each value23:33
nmz787kanzure: is there a way to enforce that all spectra are OrderedDict ?23:38
nmz787so the code won't run if someone adds a plugin but has some unordering step23:38
@kanzurei would recommend against that..23:39
@kanzureso um.. why are you using np.add ?23:39
@kanzurewhat's wrong with my_dict.update() ?23:39
nmz787i guess i could use a for loop instead23:40
nmz787of numpy23:40
nmz787before since they were lists it was easy23:40
@kanzurenp.add just updates things i thought23:44
@kanzurebrownies: check this out23:44
@kanzure23:43 < tjohnson> you can find papers doing cost analysis and reporting that for many ILL requests, it's cheaper to buy the item new than use ILL23:44
nmz787kanzure: how's this http://pastebin.com/X73Zq5cs23:44
nmz787numpy does matrix additions23:44
nmz787and matrix divisions23:44
brownieskanzure: well that is interesting.23:44
@kanzurewhat is listOfSpectra[0]23:44
nmz787the first item in the list23:45
nmz787duh23:45
nmz787its an ordereddict23:45
@kanzurebut why are you using deepcopy?23:45
nmz787with one of the values being datapoints, where the value of that is an ordereddict23:45
nmz787because I don't want to modify the existing data23:46
nmz787the function is average23:46
nmz787simply setting out=in does some pointer-like shit23:47
@kanzurebrownies: more details, http://diyhpl.us/~bryan/papers2/paperbot/91b4a36a1f5865fa3dafafc17424f297.pdf23:47
nmz787i guess since it's an object23:47
nmz787kanzure: so i'm gonna move that function to spectrometer23:47
@kanzurei guess23:47
nmz787since it's not ph experiment only23:48
@kanzurewhen it's working, i'll take a closer look at it23:48
@kanzurefor now i am having trouble understanding it completely23:48
nmz787it works23:48
@kanzurewell,23:48
@kanzurei suggest creating a unit test that loads some sample data23:48
@kanzureand confirms that it's working23:48
@kanzurehave you done unit tests before?23:48
nmz787but you don't have gtk to see what i would show you23:48
@kanzurei exclusively use gtk what are you talking about23:48
@kanzurebtw i highly recommend writing a unit test23:49
@kanzureif you want some examples of how to write unit tests, uhm, i wrote a crapload of them in the pokecrystal project23:49
nmz787yeah i only have this test data for this experiment so far23:50
@kanzurehttps://github.com/kanzure/pokecrystal/blob/master/extras/crystal.py#L815423:50
nmz787I dont get it23:57
--- Log closed Fri Jan 25 00:00:39 2013

Generated by irclog2html.py 2.15.0.dev0 by Marius Gedminas - find it at mg.pov.lt!