[00:22:49] Ryan_Lane: http://pastebin.com/ep0itRBc [03:01:33] Coren: you need to enable browseable shares [03:01:35] oh [03:01:41] I guess that isn't going to work [03:01:50] since it's autofs on the server [03:04:06] Coren: it's probably ok to handle it that way, if we have good documentation [03:04:26] people don't need to access snapshots often [03:05:32] hm. still wondering is making the autofs mount browseable will work... [03:05:58] *if [03:14:02] … this doesn't look like autofs to me [03:56:24] Ryan_Lane: Autofs is long gone. :-) [03:56:41] Ryan_Lane: Since it didn't work. I don't leave floating bits of unused software around a server. [03:56:58] I found a nice way of doing it automatically I was about to try out though. [03:57:44] oh? how? [03:57:58] also did you use the browse option with autofs? [03:57:59] Ryan_Lane: BTW, even not browsable it wouldn't have worked. NFS saw that the directory didn't exist client-side, the request to mount never got to the server. [03:58:07] ah [03:58:39] well, if it was browseable, it may have shown as existing on the client [03:59:03] But yeah, it's fairly easy to setup the bind mounts automatically when the snapshot is taken. if the directory exists in the snapshot and the orig, mount. The same script that takes snapshots can set up the binds. [03:59:23] well, that's going to make the mtab huge, will it not? [03:59:41] I tested it locally, mtab doesn't even blink with 2048 binds in it. [04:00:24] how many snapshots per export? [04:00:25] ... whereas autofs doesn't seem to particularily enjoy dealing with several hundred maps. [04:00:54] autofs would do the bind mounts when they are accessed. it wouldn't have hundresds of maps [04:01:05] wouldn't it be a single map? [04:01:27] No, because we have just the one filesystem we have to watch a .snapshot in each export. [04:01:38] ah. right [04:02:09] And autofs doesn't let you put a /foo/*/bar map. That'd have been nice. :-) [04:02:13] heh [04:02:36] this sounds workable, then [04:02:45] What I'm going to do, though, is probably move .snapshot out of the subdir. [04:02:51] it's going to suck to see thousands of mounts when typing mount, though [04:03:01] Right now I have /srv/project/{home,project} [04:03:24] I'm thinking /srv/project/{home,project,.snapshot} [04:03:37] and have {home,project} under .snapshot. [04:03:45] * Ryan_Lane nods [04:03:46] sounds good [04:03:56] export just /srv/project [04:04:01] yep [04:04:08] it's simpler [04:04:10] and less exports [04:05:15] Also simple config-wise. Snapshot just checks for /srv/* for where to put the binds. [04:05:48] * Ryan_Lane nods [04:06:54] So I'm going to make a script that takes an hourly and rotates a daily out of 'em. 1h, 2h, 3h, 1d, 2d, 3d, 1w sound right? [04:07:26] Or do we just do dailies to reduce the number of mounts? [04:10:45] Ryan_Lane: Oh, important question; I had to backport a more recent lvm2 out of raring; where to I stuff the .deb and do we sign 'em? [04:11:02] why the need for the backport? [04:11:10] that's going to be…. hard [04:11:19] because we don't want it to affect other precise systems [04:11:32] may need to change how reprepro works [04:11:33] precise's version doesn't speak thin provisioning. I build it against precise, though, and there are no breaking changes. [04:11:54] why do we need the thin provisioning? for the snapshots? [04:11:59] * Coren nods. [04:12:27] can't do a snapshot, mount it, then do bind mounts within it? [04:13:23] Can't do more than one snapshot without thin provisioning; it write-multiplies by O(snapshots) [04:13:35] With thin, it's O(1) [04:13:41] ah [04:14:05] the debs get signed automatically when using reprepro [04:14:12] but, we can't just stick it into the repo [04:14:40] Well, we can keep the backported debs local to that config by installing them by hand, but then we can't puppetize. [04:15:38] Well, it theory we could; it's supposed to not do anything bad even on an older kernel (it just errors out if you try to do thin) [04:15:49] we'll want to add a new component [04:16:06] in reprepro for precise [04:16:16] yeah, like precise-future :-) [04:16:58] write an email to the ops list asking for opinions on how to do it [04:17:01] kk [04:22:23] Mail't. [09:42:25] Hello, can someone configure apache2 to run cgi script by the owner of the script instead of www-user? [09:42:56] Nullzero_ which project [09:43:05] bot project [09:43:10] Coren|Sleep ping [09:43:28] Nullzero_ I need to discuss that with Coren|Sleep but I think we can do that [09:43:42] Thanks :) [11:13:01] !log bots changing apache conf and restarting [11:13:05] Logged the message, Master [11:35:43] petan: Have you configured? I still get this output, indicate that runner is still not the owner of script: array(7) { ["name"]=> string(8) "www-data" ["passwd"]=> string(1) "x" ["uid"]=> int(33) ["gid"]=> int(33) ["gecos"]=> string(8) "www-data" ["dir"]=> string(8) "/var/www" ["shell"]=> string(7) "/bin/sh" } [11:36:16] mm... is it php? [11:36:23] yes [11:36:32] let me check [11:37:32] try now? [11:41:29] see this http://bots.wmflabs.org/~nullzero/test.php . The output is still the same. [11:42:15] tbh I am no expert on apache, maybe Damianz should take a look [11:44:00] aha [11:44:17] suphp is enabled as a mod on apache :/ [11:44:18] thanks for your help, though [11:44:32] if you ssh to bots-apache01 you can check the config [12:51:11] petan: Hey, Now I can't access any instance. It shows Permission denied (publickey). Trying ssh -v shows that my .ssh/id_rsa is missing (now in my .ssh folder has only file known_host) Why this happened? [12:51:46] on bots?? [12:52:20] accessing bot instance from bastion [12:52:23] Nullzero__ which instance [12:52:55] bots-bnr2 [12:53:05] weird [12:53:12] others work? [12:53:32] Nope [12:53:40] I can't access any instance. [12:55:05] petan: http://pastebin.com/crEZ6kEd [12:55:19] which instance you connect from [12:56:27] I'm on bastion and trying to connect bots-bnr2. [12:56:50] ok are u forwarding ur ssh key? [12:56:55] nope [12:57:10] do u have it on bastion? [12:57:44] have what? [12:57:53] private key [12:58:11] you need to have your private key on host you connect from [12:58:28] I have uploaded ssh key via wikitech's preference. [12:58:50] that let you ssh to bastion, but not to inner instances [12:58:56] !forwarding [12:58:56] https://labsconsole.wikimedia.org/wiki/Access#Using_agent_forwarding [12:59:19] you either need to forward it or upload to bastion [13:02:44] Okay. I can access now. Thank you :) [13:03:50] ;) [14:01:41] hello [14:06:35] !log [14:08:05] !logs [14:08:06] logs http://bots.wmflabs.org/~wm-bot/logs/%23wikimedia-labs [14:08:12] Pyfisch: ^ [14:08:44] :-) [14:11:58] do I have a chance to get access to labs for my bot? [14:13:23] yeah [14:13:31] you just need to file a request and have it approved [14:14:50] [[:d:User:FischBot]] [14:15:38] https://wikitech.wikimedia.org/w/index.php?title=Special:UserLogin&returnto=Help%253AGetting+Started&type=signup [14:17:50] ok, I have created an account there. [14:23:41] where should I post my request? [14:24:04] it should have automatically been created i think. [14:24:22] https://wikitech.wikimedia.org/wiki/Shell_Request/Pyfisch [14:32:10] legoktm: thanks, for helping me [14:32:16] np [16:37:42] legoktm: [[d:User:FischBot/bugs/2]] I get this exeption, it looks like there is an error in the pywikibot :/ [16:38:18] oh [16:38:20] yeah [16:38:41] i havent had time to fix that, ive just been suppressing them >.< [16:41:20] how did you suppressed them? I just commented it out :-| [16:41:50] btw, what should this warnig say to me? is it important? [16:44:30] petan: did you do as state in janslak.wordpress.com/2007/11/04/running-cgi-as-a-different-user-under-apache-2/ [16:46:26] Pyfisch: yeah i just commented it out. the warning is that the edit was patched into the newer version [16:47:15] also, there's a more general pywikipedia channel at #pywikipediabot in the future :) [16:53:29] https://wikitech.wikimedia.org/wiki/Shell_Request/Xavier_Combelle looks correct ? [17:45:23] petan: There is the suexec.load in mods-available, but there is not in mods-enabled, Perhaps you need to run "sudo a2enmod suexec". [17:46:51] after how many days shell access is given usually? [17:54:30] :/ bsql01 just ground to a halt [17:59:20] !log bots addshore: bots-bsql01 seems to have ground to a halt waiting for some process... [17:59:22] Logged the message, Master [18:01:06] legoktm: is it you? [18:01:13] Nope.... [18:01:17] hmm [18:01:25] i cant even log in to see what it is ... [18:02:55] mhhhm [18:04:09] I dont think thats going to come back.. [18:04:17] !addshore [18:04:17] lolz [18:04:24] >.< [18:05:12] !legoktm is shh [18:05:12] Key was added [18:06:27] right i feel like tonight might be time for bsql02 [18:09:48] ... [18:13:14] Change on 12mediawiki a page Wikimedia Labs/Account creation text was modified, changed by FunPika link https://www.mediawiki.org/w/index.php?diff=673372 edit summary: [+4] Fix a couple of grammar/spelling errors. [18:16:10] !log bots root: bots-bsql01 is back, no idea what query was taking up the time [18:16:12] Logged the message, Master [18:56:57] hi [18:57:17] addshore wtf [18:57:27] ? [18:57:37] whatś up [18:57:39] with bsql [18:57:48] no idea, my bot wasnt even running so not me :P [18:58:22] why did u restart it? [18:58:25] the cpu usage is me, the 25 min not being able to process anything was no :P [18:58:27] *not [18:58:31] I didnt restart it [18:58:38] who did? [18:58:41] why itś not logged [18:58:47] noone as far as I know... [18:59:07] WTF [18:59:08] if anything it just crashed [18:59:33] mysql is crap [18:59:40] it crashed and there is not a line in logs... [18:59:50] i looked and logs are turned off... [18:59:59] i dont think mysql crashed, i think the server itself did.. [19:00:05] nope [19:00:13] server has uptime over 4 weeks [19:00:19] hmmm [19:00:20] mysql has uptime 40 minute [19:00:52] i was trying to get on to show the processlist in mysql but couldnt ssh or even loginto the sql.. [19:02:57] LOL cat /var/log/syslog | grep mysql | grep -v 'Aborted connection' | tail -n 200 | less [19:02:59] :D [19:03:00] command [19:03:36] you found something ? :P [19:03:41] yes [19:03:42] petan: is... it possible to upgrade the version of git on tool labs? [19:03:49] sure [19:03:51] sec [19:04:00] on -login? or system wide [19:04:06] systemwide? [19:04:12] the current version is about a year and a half old [19:04:19] and I *might* have hit a big bug in git am [19:04:22] addshore [19:04:24] 1.7.9.5 is not enough for ya Yuvi ? :D [19:04:25] [19:04:25] since it works as expected on newer versions [19:04:28] Apr 14 18:06:52 bots-bsql01 mysqld: Thread pointer: 0x0x0 [19:04:29] Apr 14 18:06:52 bots-bsql01 mysqld: Attempting backtrace. You can use the following information to find out [19:04:31] Apr 14 18:06:52 bots-bsql01 mysqld: where mysqld died. If you see no messages after this, something went [19:04:32] Apr 14 18:06:52 bots-bsql01 mysqld: terribly wrong... [19:04:33] Apr 14 18:07:18 bots-bsql01 mysqld: stack_bottom = 0x0 thread_stack 0x48000 [19:04:33] hashar: I'm running into a *really* weird error [19:04:34] Apr 14 18:08:21 bots-bsql01 mysqld: (my_addr_resolve failure: fork) [19:04:35] [19:04:39] hashar: git am silently corrupts the patch [19:04:44] hashar: it's driving me nuts [19:04:50] addshore it sigsegv [19:04:52] git happens. [19:04:55] YuviPanda: :( [19:05:18] hashar: see http://dpaste.de/TP3jX/ and http://dpaste.de/s49fz/ [19:05:23] hashar: same patch applied on same master [19:05:36] hashar: it silently drops some commits' commit message, thus messing up shas [19:05:41] Apr 14 18:06:45 bots-bsql01 mysqld: InnoDB: ###### Diagnostic info printed to the standard error stream [19:05:42] and also causing further damage down sout [19:05:43] h [19:05:43] Apr 14 18:06:45 bots-bsql01 mysqld: InnoDB: Error: semaphore wait has lasted > 600 seconds [19:05:44] Apr 14 18:06:45 bots-bsql01 mysqld: InnoDB: We intentionally crash the server, because it appears to be hung. [19:07:17] YuviPanda do you mean latest version in wmf repository or latest stable version [19:07:26] ? [19:07:36] what is the latest in the wmf repo? [19:07:41] there is either aptitude version or version from git [19:08:00] 1.7.9.5 [19:08:10] wait [19:08:20] 1.7.9.5 is latest from aptitude? [19:08:25] what are we running toolslabs on? [19:08:25] yes [19:08:36] this [19:08:37] petrb@tools-login:~$ git --version [19:08:38] that's the version that comes with precise [19:08:38] git version 1.7.9.5 [19:08:45] yup [19:09:00] YuviPanda: could your sha1 get messed up because of the commit dates? [19:09:08] YuviPanda are you sure there is a bug in this version? [19:09:09] unless we plan on upgrading it on all systems we shouldn't change it [19:09:21] YuviPanda I can compile latest git on -dev if u want [19:09:32] YuviPanda so that you can check if that is better [19:10:37] 1.8.2.1 [19:10:44] yeah, compiling git from source feels... ugh to me [19:10:49] agreed [19:10:56] we can do that to test if it solves to bug [19:11:02] actually [19:11:03] if anything take the backport from raring [19:11:08] maybe you find out it happens on any version [19:11:13] petan: hashar do you have a local git that is newer? [19:11:17] it´s no problem to eventualy package new version [19:11:23] YuviPanda: yeah I run my own fork [19:11:32] I have 1.8.0 [19:11:39] petan: hashar can you clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/UploadWizard.git and apply the patch file https://github.com/wikimedia/mediawiki-extensions-UploadWizard/pull/1.patch via am? [19:11:45] it is causing the behavior i pointed out [19:11:56] interesting [19:11:58] I am n00b when it comes to patches, hashar should do that [19:12:17] YuviPanda: trying [19:12:49] hashar: btw, this is the GitHub -> Gerrit bot. I was hoping to get it fully running by now but this is making me mad [19:14:20] hello? am I connected? [19:15:02] YuviPanda: paste and git log http://dpaste.com/1058293/ [19:15:07] YuviPanda: pong [19:15:12] looking [19:15:26] petan: it is a problem to package our own [19:15:33] hashar: what's git --version? [19:15:37] YuviPanda: of course the committer is me :-D so the sha1 are diferents [19:15:43] Ryan_Lane why? [19:15:48] 1.8.2~hashar33 [19:15:52] Ryan_Lane anyway if there is another source, itś fine [19:15:53] because. then we have a different version of git just in some places [19:16:10] YuviPanda: let em compile a stock 1.8.2.1 [19:16:14] well, I mean if we found that git needs to be replaced, we could apply that project wide [19:16:22] "project" wide [19:16:25] that's a problem [19:16:34] it needs to be infrastructure wide, if we do it [19:16:37] that is still only for THAT project :-] [19:16:41] hashar: the clone finally completed on my slow network and seems to work :| [19:16:46] it's not a small change [19:16:53] what you're suggesting affects a *lot* of things [19:17:27] Ryan_Lane for now I just wanted to check if the problem is really in git version I suppose it is not [19:17:52] if it is, we can discuss some other steps... [19:18:13] changing everything out to fix a problem is git am seems a little excessive :) [19:18:16] *in [19:18:31] plus that can be tested on a local comp :-] [19:18:37] well, why we couldnt just create another package of git in wikimedia repo? [19:18:41] hashar: even more weird? I just tried the same sequence on another machine with precisely the same version of git [19:18:42] and it works fine [19:18:43] one could pick which version they want [19:18:55] YuviPanda: good :-] [19:18:58] petan: choice is a bad thing [19:19:03] why [19:19:06] well, now I need to figure out what is wrong [19:19:06] eek [19:19:15] YuviPanda I believe it is some Coren´s trap :P [19:19:16] because it's a nightmare to manage [19:19:17] the only thing that comes to mind is global .gitconfig [19:19:27] lot of things work weird on tools [19:20:04] YuviPanda: try again by creating a new user on the defunct host. That would gives you a sane env [19:20:16] well, this is on tools labs [19:20:25] Ryan_Lane ok then maybe if there is some critical bug in current version we could just replace it definitely [19:20:28] hmm, i can do that actually [19:20:29] with never one [19:20:40] petan: it's not a bug in the version of git, we just verified that [19:20:49] YuviPanda yes that is what I thought [19:21:05] the git people have been amazingly helpful! [19:21:08] [19:21:12] hehe [19:21:16] they are always [19:21:24] Ryan_Lane: Hm. Would you hate me if I did the timetravel script in perl for its first iteration? I have considerably more confidence in its reliability if I master the language. I'll be more than happy to help you make v2 in python if you want. :-) [19:21:40] Coren: yes, because everything you are writing is in perl :) [19:21:41] last time when I wanted to ask how to do something they told me that only an idiot would do that so there is no point in telling me how to do that... [19:22:07] Coren: ppppyyyyyythhhoooooon [19:22:08] almost like microsoft support heh [19:22:11] Coren: and all the rest of our management scripts for exports/storage are in python [19:22:18] Ryan_Lane: Well, I suppose I could concentrate a few week on mastering python enough to be comfortable with it; it'll take me some time though. [19:22:26] in fact, it would be nice if manage-volumes was modified for this use [19:22:49] (it's a modified version of manage-exports) [19:22:49] Coren: I found out that there is very few perl monkeys @ wmf but we have a lot of pythonists. [19:23:03] Coren: will be happy to give you some hints although I am just a noob [19:23:04] oh, wonderful, random tsa check at the gate [19:23:14] Ryan_Lane: Unless manage-volumes already scans lvm and creates crosslinks from it, the functionality would be all new anyways. [19:23:20] because they are too incompetent to do their job properly at the security check [19:23:21] *rage* [19:23:29] hmm, same bug in both my tool account [19:23:31] and my account [19:23:35] with different git configs [19:23:57] Coren: I'd much prefer it be in python [19:24:37] I really don't want our environment written in four languages [19:24:57] 5, really [19:25:00] or more [19:25:03] * Ryan_Lane shudders [19:25:40] It's just that, honestly, everytime I tried to use python to write system-level scripts the results have been... atrocious. Python does absolutely everything in the most obscure and roundabout way, and it's about one of the worst designed language I've ever had the displeasure of having been inflicted with. I prefer basic. [19:25:45] Not that I won't be *able* to cope. [19:25:50] but, ugh. [19:25:53] hahahaha [19:25:56] I totally disagree [19:26:01] * Coren pulls out python docs and suffers. [19:26:17] it's fairly straightforward [19:26:30] I will *never* get over the atrocious monstrosity that significant whitespace is. Ever. It's a throwback to fortran. [19:26:47] Coren: ah the whitespace indentation is a big trouble indeed [19:26:51] meh. it ensures a consistent style. I think it's a good thing [19:26:57] Coren: y'know, s/Python/Perl/ on that and most people will be completely in agreement :P [19:26:58] I've never had it cause me trouble [19:27:10] Coren: but it can be worked around by carefully tweaking your favorite editor. I use vim and have no trouble with indent. [19:27:22] always use spaces. [19:27:27] then there's no problem [19:27:36] python = basic that takes itself seriously. And fails. [19:27:47] Coren: for vim + python I use: au FileType python setlocal tabstop=4 expandtab sw=4 softtabstop=4 foldmethod=indent [19:28:07] ok. time to board :) [19:28:12] * Coren waves. [19:28:18] Coren: also have: filetype plugin indent on [19:28:42] but yeah, if you never wrote python before that is a big troublesome to start a new project :/ [19:28:49] or you could use PHP hehe [19:28:52] hashar: Oh, I'll have no technical issue with python. It's just always going to be feeling like a root canal. [19:29:15] hashar: oh, btw - is it possible to configure zuul / gerrit to POST to an URL everytime there's a comment / merge/ activity on a patchset? [19:29:16] !g define root canal [19:29:17] aka webhooks? [19:29:17] https://gerrit.wikimedia.org/r/#q,define,n,z [19:29:23] grmbmb [19:29:23] hahaha [19:29:51] YuviPanda: what do you want to do ? [19:30:00] hashar: Gerrit -> GitHub comment sync [19:30:17] Coren: anyway I will be glad to help with python as much as my knowledge allow [19:30:18] hashar: I tried to write python at least a dozen times before. I understand the language fairly well. It's just a horribly designed language. [19:30:35] and close a pull request when it gets merged / abandoned [19:30:35] also sync C / V status [19:30:35] to GH [19:30:38] It tries to be too many things at once and fails at all ove them. [19:30:47] of* them [19:30:53] YuviPanda: ok basically: I have zero interest in GitHub. If you wanted to do such a thing, that should really by a Gerrit plugin :-] Zuul is only about trigger jenkins jobs [19:31:15] well, my idea of fun is definitely not writing GWT [19:31:28] YuviPanda: you might want to talk with ^demon and qchris about a github plugin for gerrit. I think it might be planned. [19:31:43] hashar: I talked about it to both of them. There's no current work on it and no currently planned work on it either [19:31:56] * Coren will try to do with with a shell script first. [19:32:03] it's just the 'something we want to do', but it's been that way for a long time [19:32:27] hashar: I'll look into zuul docs to see if I can use it for the trigger :) [19:33:18] petan: so, I checked in another machine with same git version and it works fine. but it fails in tool labs, both under my and my tool account [19:33:51] YuviPanda: Zuul is just triggering jobs. So if you wanted to sync comments that would need to be a jenkins job which can in turn execute whatever you want :-] [19:33:53] Coren ^^ [19:33:59] can you check? [19:34:03] hashar: no no, I don't want to sync commits! [19:34:04] I believe it is related to some restrictions etc [19:34:13] anyway YuviPanda what exactly are you doing [19:34:15] hashar: I just want it to trigger something else, that is all. [19:34:22] YuviPanda: so yeah, in theory we could have Zuul react on `comment-added` and trigger a job that push it to github. [19:34:22] you checkout a repository and apply a patch? [19:34:35] hashar: sweet, that's what i wanted to know :) [19:34:37] YuviPanda: Fails how? [19:34:53] YuviPanda: but honestly, I would prefer we simply close the github pull request whenever it is imported in Gerrit and ideally I would prefer we do NOT use github at all. [19:35:15] hashar: you admitted to having zero interest in GitHub. A lot of people do :) [19:35:43] Coren: http://dpaste.de/s49fz/ [19:35:48] Coren: it randomly skips patches. [19:36:03] it doesn't seem to be a git issue since it works fine with the same version of git elsewhere [19:36:06] but is problematic only in tool labs [19:36:07] YuviPanda: yeah and I think they are wrong :-] But I am not going to convert everyone hehe [19:36:39] hashar: :) [19:37:30] YuviPanda: so yeah as a summary: Zuul can react to comment added and trigger a Jenkins job :-] [19:37:52] wonderful. thanks hashar :) [19:38:05] I checked out the Gerrit API earlier. It's pretty nice and should fit the purpose [19:38:13] if only I can now get around this weird git issue... [19:38:44] YuviPanda: That makes no sense to me; when you say "works elsewhere", did you make certain that both the file tree in which you are doing this and your environment were identical? [19:39:05] Coren: it's a fresh clone in both places, and same patch [19:39:27] YuviPanda: What about your environment? [19:39:36] well I am off, see you tomorrow [19:39:37] git config -l shows only difference being current commiter's name, etc [19:40:02] hashar: cya! [19:41:41] YuviPanda: It's the same OS; so unless you have some environmental difference there should be no difference. You have a difference. Therefore, something differs in your environment. :-) compare the output of 'set' on both places, and check what dotfiles your git operation reads. (strace might help there) [19:42:07] 10:1 your problem comes for a dotfile. :-) [19:42:35] mmm [19:42:45] * YuviPanda continues chasing [19:43:08] I hate this. you're making wonderful fast progress with something and then you hit a roadblock from somewhere and bam ther egoes your entire productivity [19:54:19] * Coren feels physically nauseated by python. [19:58:48] <3 python [20:08:15] I think I know one of the primary reasons I dislike python. It's more of a cult than an actual programming language. [20:10:33] I strongly disagree with you and am going to get 10 of my python loving friends to attack you ;-) [20:10:52] Yes, it's fugly, it has *atrocious* scoping rules, it's the only language I know of where a hello world will consume half a gig of ram and take several miliseconds to startup -- but many other toy languages have those same problems. [20:12:08] But it's the only language I know of where its adherents drone on and on about how superior it is in every way to everything, that has such a vapid mantra, and where any critique is met with outright hostility! [20:13:52] legoktm: You say that in jest, but look on the web and see how common that actually /is/. [20:14:05] Yeah, I rarely go into #python because of that. [20:15:32] I've been trying to find a good source for "python for perl hackers". I find only two kinds of documents: people who desperately try to warn you away from python, and condescending "tutorials" that show you how much better python is to badly written perl that nobody sane would have written. :-) [20:18:13] I learned Python from Wikibooks: https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_2.6 [20:18:48] And "Programming is fun again". It never stopped, tyvm, and it won't improve by moving to BASIC. [20:19:14] * Coren grumbles, in the way only crochety old me know how to master. [20:19:25] men* [23:51:27] Coren: around? [23:52:21] or whoever can install packages on bots-gs [23:53:20] rschen7754: that would be addshore petan Damianz