--- Log opened Wed Sep 05 00:00:07 2012 |
00:20 | | Vash [Vash@Nightstar-e8057de2.wlfrct.sbcglobal.net] has joined #code |
00:20 | | mode/#code [+o Vash] by ChanServ |
00:25 | | You're now known as TheWatcher[T-2] |
00:31 | | You're now known as TheWatcher[zZzZ] |
00:44 | <&Derakon> | http://en.wikipedia.org/wiki/File:Rubber_duck_assisting_with_debugging.jpg |
00:45 | <&Derakon> | Ahh, and now I know why TF said "quack" earlier. |
00:45 | <&Derakon> | (I was always more familiar with the term "teddy bear debugging" myself) |
00:46 | <~Vornicus> | http://thedailywtf.com/Articles/Classic-WTF-No-Quack.aspx |
00:47 | <&McMartin> | "I don't want you to pray to the duck. I want you to ASK THE DUCK YOUR QUESTION." |
00:47 | | Kindamoody is now known as Kindamoody[zZz] |
00:57 | < Attilla> | heh |
00:57 | | PinkFreud [WhyNot@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
00:57 | | PinkFreud [WhyNot@NetworkAdministrator.Nightstar.Net] has joined #code |
00:57 | | mode/#code [+o PinkFreud] by ChanServ |
01:08 | < ToxicFrog> | Derakon: yeah, "rubber duck debugging" is how I've always known it, although "kitten debugging" is more common in my household |
01:08 | <&McMartin> | Fishbowling |
02:03 | <&McMartin> | Hmm, my CSS frames code doesn't work on the Android browser. |
02:10 | | * Derakon sighs, ponders https://bitbucket.org/derakon/pyrel/pull-request/4/prettied-up-the-item-descript ions-using |
02:10 | <&Derakon> | Someone wants to contribute to Pyrel! Great! |
02:10 | <&Derakon> | Problem: they didn't properly rebase their project before submitting the pull request, so there's a lot of outdated crap in there. |
02:11 | <&Derakon> | And they didn't take the hint when I pointed out some problems with the submission. |
02:11 | <&Derakon> | Also the new file is filled with tabs. |
02:13 | | Attilla [Obsolete@Nightstar-1de302d0.as43234.net] has quit [Ping timeout: 121 seconds] |
02:28 | <&Derakon> | I did say I'd deal with his pull request today. |
02:29 | <&Derakon> | I'm just wondering if "dealing with it" should be telling him "please come back with it properly set up". |
02:31 | <&McMartin> | How big is it? |
02:32 | <&Derakon> | Seven files changed. |
02:32 | <&Derakon> | Though one of those is a merge conflict that didn't exist when he made the pull request. |
02:32 | <&Derakon> | https://bitbucket.org/derakon/pyrel/pull-request/4/prettied-up-the-item-descript ions-using |
02:48 | < gnolam> | Man. There's a /lot/ of LinkedIn phishing spam in my gmail spam folder. |
02:49 | < gnolam> | In fact, it alone makes up 25% of it. |
02:49 | <&Derakon> | People are desperate for employment. |
02:49 | <&Derakon> | Makes them easy marks. |
03:16 | < Rhamphoryncus> | static_assert(std::is_standard_layout<Matrix<1>::_data>::value, "Dur"); |
03:16 | < Rhamphoryncus> | That's at global scope, immediately after Matrix is defined. _data is private though, which I can't access. Any way to fix that? |
03:17 | < Rhamphoryncus> | I suppose I could throw them in a random function |
03:20 | < Rhamphoryncus> | Oh wait, it's a redundant assertion. If Matrix is standard layout then all its contents must be standard layout |
03:31 | < Rhamphoryncus> | Now I'm trying to figure out if a std::array is layout compatible with a basic array, which'd let me pass an array of Matrix4 instances directly to opengl |
03:33 | < Rhamphoryncus> | Hrm. std::array is an aggregate, which requires no private or protected members |
03:34 | < Rhamphoryncus> | Which also implies there's no public members added in debug builds, as that would change the aggregate initializer |
03:36 | < Rhamphoryncus> | Nevermind, well-formed code should work even with the change |
03:53 | < Rhamphoryncus> | I'm going to use a basic array just to avoid the debate x_x |
03:57 | < Rhamphoryncus> | Done. Really hard. :P |
04:00 | < celticminstrel> | Pretty sure it is layout compatible. |
04:18 | | * McMartin does another full run of the unit tests |
04:18 | <&McMartin> | Reworking unit test infrastructure is the worst. >_< |
04:36 | < Rhamphoryncus> | celticminstrel: yeah, the conclusion I got was "well, probably, seems bizarre not to.." but it's not worth the debate |
05:59 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
06:43 | | Derakon is now known as Derakon[AFK] |
06:48 | | Kindamoody[zZz] is now known as Kindamoody |
08:45 | | Vash [Vash@Nightstar-e8057de2.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!] |
09:03 | | Derakon[AFK] is now known as Derakon |
09:04 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
09:13 | | You're now known as TheWatcher |
09:25 | | * TheWatcher starts to disentangle the complete arseup this student caused in the project repo |
09:26 | <&jerith> | This is why you /carefully select/ which students are allowed near your projects. |
09:26 | <@TheWatcher> | We did |
09:26 | < Rhamphoryncus> | a completely hosed repo? And it's not mine?! |
09:26 | <&jerith> | (And you choose the ones with nontrivial open source contributions.) |
09:26 | <&jerith> | What kind of repo is it? |
09:26 | <@TheWatcher> | git |
09:26 | <&jerith> | Ah. Yeah, that's easy to hose. |
09:27 | <&jerith> | It's also easy to not-hose if you're not doing anything crazy. |
09:27 | <&jerith> | (I was hoping you weren't going to say VSS. Because I really didn't want to have to stab you in the face over the internet.) |
09:27 | <@TheWatcher> | which'd be pretty trivial to fix, except there's been a week of code gone in there before I noticed what'd happened |
09:31 | <@TheWatcher> | (essentially, he somehow managed to get his entire copy of the code, which was mostly up to date except in the few important places where it wasn't, pushed into the repo. This introduced a number of very subtle problems, most of them in things I can't programatically test like css, and I need to work out which files were out of date. And how the hell he managed it) |
09:32 | <&jerith> | Let me guess. When he tried to "git push" he got a "can't fast-forward" error and then did a "git push -f" or something? |
09:32 | <@TheWatcher> | I'd guess so, I can't confirm that because he's on holiday and not replying to emails |
09:34 | <@Tamber> | Ouch. |
09:34 | <@TheWatcher> | Unfortunately I'm not allowed to demonstrate what that does by aid of a splintered chair leg I would call 'git', a mallet, and his large colon. |
09:36 | <&jerith> | Actually, that would have been noticed as soon as someone else tried to pull. |
09:37 | <&jerith> | So maybe he pulled, got conflicts, resolved them with "use my versions of everything", pushed. |
09:37 | <&jerith> | Which means the correct stuff is still in the repo history. |
09:37 | <&jerith> | But anything since then has happened on the old stuff. Or something. |
09:38 | <&jerith> | Anyways, this is why code reviews are a Good Thing. |
09:38 | <&jerith> | Do all your work in branches. |
09:38 | <&jerith> | Branches get reviewed before they're allowed to be merged. |
09:39 | | Attilla [Obsolete@Nightstar-26a38a92.as43234.net] has joined #code |
09:40 | <@TheWatcher> | Would be nice if I'd had time. |
09:42 | <@TheWatcher> | Of course, now I'm probably going to spend more time fixing this thing |
09:42 | | * TheWatcher sigh |
09:45 | < Rhamphoryncus> | mmm diffs :P |
09:47 | <&jerith> | How many people are working on this thing? |
09:48 | <&jerith> | Just you and the student? |
09:59 | <@TheWatcher> | Was, now it's just me |
10:04 | <@TheWatcher> | Thankfully, so it's not too hard to follow and fix it, I just.. argh. |
10:04 | <@TheWatcher> | But now, moodle update teims. |
10:25 | < Attilla> | i wonder if kittens are bewildered if used for debugging purposes |
10:26 | | EnRoute [abudhabi@Nightstar-34271be2.adsl.inetia.pl] has quit [Z-Lined: Your IP range has been attempting to connect too many times in too short a duration. Wait a while, and you will be able to connect.] |
10:26 | | RichyB [richardb@Nightstar-3b2c2db2.bethere.co.uk] has joined #code |
10:38 | | abudhabi [abudhabi@Nightstar-34271be2.adsl.inetia.pl] has joined #code |
11:31 | <@TheWatcher> | There, fixed. |
11:31 | <@TheWatcher> | Now I guess I need to do actual work on this thing, ugh |
11:41 | | Kindamoody is now known as Kindamoody|out |
11:50 | < rms> | This is why you don't give people the ability to push to your working directory |
11:55 | | * gnolam stabs Microsoft. |
11:56 | < rms> | Oh? |
11:56 | < gnolam> | It's nice that you're giving me your stuff for free, but /Jesus H Christ/. Just let me download it over HTTP(S) already. |
11:57 | < rms> | lol |
11:57 | < gnolam> | You know what a "Secure Download Manager" that's only a thin wrapper over an IE context adds? FUCK-ALL. |
11:58 | < gnolam> | Especially since it explicitly hides useful information. |
11:58 | | * rms is solidly convinced that "MS spends billions on UI research" is A) bullshit or B) true and a fuckton of wasted money. |
11:58 | < gnolam> | Like download speeds. |
11:59 | < gnolam> | "Why would anyone want to see the download speed of a multi-GiB download? Let's hide that." |
11:59 | < gnolam> | RARGH |
12:16 | < Rhamphoryncus> | rms: from what I hear it's the latter. |
12:17 | < rms> | You hear the FUD, or something more reliable? |
12:18 | < rms> | Alternative: C) They spend the money to cripple UI research by pushing their brand of damaged UI methodologies |
12:19 | < Rhamphoryncus> | I heard that it's an organizational problem that prevents their legions of programmers from being effective |
12:20 | < rms> | Oh that |
13:33 | | Rhamphoryncus [rhamph@Nightstar-cc6253d6.abhsia.telus.net] has quit [Client exited] |
13:51 | < ToxicFrog> | Ahahahahaha |
13:51 | < ToxicFrog> | Oh, Ubuntu, you fucking worthless hypocrites |
13:52 | <@TheWatcher> | What've they done this time? |
13:53 | < ToxicFrog> | I'm trying to set up my own dropbox-style N-way syncing. |
13:53 | < ToxicFrog> | I've fiddled around with OwnCloud, but it's really heavy on the server and the client is kind of shit |
13:54 | < ToxicFrog> | I know, I'll run my own UbuntuOne server. I mean, the Ubuntu developers are fanatical about open source to the point that, when it comes down to usability vs ideological purity for their OS, the latter always wins. So source for the server will available, right? |
13:54 | < ToxicFrog> | Nope, the UbuntuOne server is closed source and, according to the developers, always will be. |
13:56 | <@TheWatcher> | ... |
14:01 | < froztbyte> | you surprised |
14:01 | < froztbyte> | did you really expect that a distribution which /actively/ takes choice away will be great on giving people freedom? |
14:01 | < froztbyte> | they're just really good at managing their image |
14:02 | < froztbyte> | that said, you can probably hack a thing up with tahoe-lafs |
14:02 | < froztbyte> | unison could work too, but it's a piece of shit |
14:02 | < froztbyte> | s/you su/you sound su/ |
14:04 | < froztbyte> | there was some software I saw at one point |
14:04 | < froztbyte> | Sparkleshare |
14:04 | < froztbyte> | never tried it though |
14:06 | < froztbyte> | other thing that's come up: http://www.syncany.org/ |
14:29 | < ToxicFrog> | Syncany is a dead project. |
14:30 | < ToxicFrog> | Sparkleshare appears to be mostly for source code sharing and the website has basically no concrete information except "it uses git!!!!!" which doesn't make me confident of its ability to handle large binary files. |
14:31 | < froztbyte> | yeah, that doesn't look like a thing you'd want |
14:32 | < ToxicFrog> | Or handle sync folders with a lot of churn, for that matter - I don't want this for versioning/backups, I want it for synchronization |
14:32 | < froztbyte> | I guess that leaves you with building on top of some distributed filesystem like ceph or tahoe-lafs |
14:32 | < ToxicFrog> | At the moment I'm experimenting with lipsync. |
14:32 | < froztbyte> | or unison |
14:32 | < ToxicFrog> | It's going well except that the installer had a crazy and installed two copies of the cron entry, leading to two lipsyncd instances, with really weird results |
14:33 | | * TheWatcher eyes |
14:33 | < froztbyte> | hehe |
14:33 | < froztbyte> | I didn't even know about this thing |
14:33 | < froztbyte> | https://github.com/philcryer/lipsync for the rest |
14:33 | <@TheWatcher> | But are they synced?~ |
14:33 | <@TheWatcher> | (also, I know I'm missing something here, but what's wrong with ssh+rsync?) |
14:34 | < froztbyte> | TheWatcher: it's a pain to manage manually |
14:34 | < froztbyte> | especially at n>2 |
14:34 | < ToxicFrog> | TheWatcher: I want N-way sync a la dropbox, not mirroring |
14:34 | < ToxicFrog> | delete a file on one client, it's automatically deleted on all of them |
14:34 | < froztbyte> | unison does automate it |
14:34 | < ToxicFrog> | That sort of thing |
14:34 | <@TheWatcher> | Ah, okay |
14:34 | < froztbyte> | but it's a crappy cronjob piece of turd |
14:34 | < froztbyte> | lipsync also seems to do cron |
14:34 | < froztbyte> | so....I dunno |
14:35 | < froztbyte> | seriously world, are vector clocks really that hard? :/ |
14:36 | < ToxicFrog> | lipsync just uses cron to make sure the daemon starts up on boot |
14:36 | < ToxicFrog> | and gets restarted if something happens to it |
14:36 | < froztbyte> | ah, okay |
14:36 | < froztbyte> | that's a bit more sane |
14:39 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Connection closed] |
14:42 | < ToxicFrog> | What are the issues with Unison? It looks pretty much like what I want. |
14:51 | | * ToxicFrog pokes froztbyte |
14:52 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has joined #code |
15:03 | < froztbyte> | yo, soz |
15:03 | < froztbyte> | was out getting lunch^Wbreakfast |
15:04 | < froztbyte> | it was just fiddly for me |
15:04 | < froztbyte> | but give it a shot, maybe it works for you |
15:05 | | abudhabi [abudhabi@Nightstar-34271be2.adsl.inetia.pl] has quit [Ping timeout: 121 seconds] |
15:21 | <&McMartin> | "I mean, the Ubuntu developers are fanatical about open source to the point that, when it comes down to usability vs ideological purity for their OS, the latter always wins." |
15:21 | <&McMartin> | You misspelled "Debian", Ubuntu is the opposite of that. |
15:22 | <&McMartin> | Which is why all the binary blobs only support Ubuntu~ |
15:23 | <&McMartin> | Speaking of, I should really stick I7 on Osmium. |
15:41 | < ToxicFrog> | McMartin: granted it has been a while since I used plain Ubuntu, but last time I did it was a colossal pain in the ass because it was as hard as possible to install proprietary drivers, MP3 codecs, etc |
15:41 | < ToxicFrog> | And the whole reason I switched to Mint is that it is basically Ubuntu without the bullshit |
15:42 | <&McMartin> | Hm |
15:42 | <&McMartin> | Sys76 had that problem, because they ship it half-installed with minimal options |
15:43 | <&McMartin> | But if you install from disc at least for the past couple years, there was a "cut the bullshit" checkbox in the graphical installer that pulled in flash and MP3 and proper graphics drivers |
15:43 | <&McMartin> | I think the graphics drivers might have been post-install, but there was a popup for it. |
15:43 | <&McMartin> | This was one of the places where I as a Fedora partisan gave the nod to Ubuntu as doing it better |
15:43 | < ToxicFrog> | I've been using Mint since mid-2010, so if it was added since then I haven't seen it. |
15:45 | <&McMartin> | Yeah, I bet it was post-that. |
15:45 | <&McMartin> | It came in around they time it also would start downloading the initial updates during the disc install. |
15:46 | < Tarinaky> | Arch Linux: All the joy of Slackware without spending a day looking for the dependencies to the dependencies' configure scripts. |
15:46 | < Tarinaky> | So you can get straight to it not working~ |
15:47 | <&McMartin> | That kind of experience with Gentoo is why I became a Fedora partisan very early on~ |
15:47 | < Tarinaky> | Disclaimer: apparently Slackware is much improved since I last used it in 2004-or-so >.> |
15:47 | <&McMartin> | Technically, I used Slackware back when it was still the Yggdrassil distribution, in the early 1990s. |
15:48 | <@TheWatcher> | And I'm currently using gentoo on 6 systems without problems, so *shrug* each to their own, I guess. |
15:48 | < celticminstrel> | Nice name. |
15:50 | < Tarinaky> | "What we really want is a name that communicates just how hard it is to install or use our software." |
15:51 | <&McMartin> | Which it did. |
15:51 | <&McMartin> | But it was at the time the only option that wasn't LFS and Linux wasn't a thing yet. |
15:52 | < ToxicFrog> | Hm. Unison looks like it'll take more setting up than lipsync, and the need to run it from cron each minute isn't great |
15:52 | < ToxicFrog> | However, it also looks like it does what I want more than lipsync |
15:55 | < ToxicFrog> | iFolder looks like it might also be a possibility. |
15:57 | < ToxicFrog> | ...although the server requirements are kind of crazy |
15:59 | < ToxicFrog> | ...and the documentation is 300 pages long |
16:00 | <@TheWatcher> | O.o |
16:02 | <&McMartin> | Heh |
16:02 | <&McMartin> | Is that good or bad~ |
16:05 | < ToxicFrog> | Bad; it is clearly geared at corporations with dedicated IT departments and existing storage and LDAP infrastructure. |
16:06 | <&McMartin> | I was about to say "let me rephrase that" but I will read that as "good, but not useful for this case" |
16:06 | <&McMartin> | (VirtualBox's tech docs are also 300 pages long, and I was thrilled to find them even though I'm not writing any COM servers) |
16:13 | | abudhabi [abudhabi@Nightstar-e1251997.adsl.inetia.pl] has joined #code |
16:14 | | abudhabi is now known as AnnoDomini |
16:18 | <&McMartin> | Does anyone besides windows shops even use LDAP these days? |
16:19 | <&McMartin> | Oh shit RUNNER 2 |
16:19 | <&McMartin> | \o/ |
16:20 | < RichyB> | I thought LDAP was supposed to be what all the all-Linux shops used because it's the best alternative to ActiveDirectory? ;P |
16:20 | < RichyB> | or does everyone use YP/NIS? |
16:21 | <&McMartin> | AD is an extention to LDAP and AFAICT nobody uses the extensions |
16:30 | <~Vornicus> | 6 years ago resmark used ldap |
16:30 | <~Vornicus> | it was liquid pain to work with |
16:30 | | * McMartin grumbles, has the Giana Sisters theme stuck in his head |
16:35 | < froztbyte> | McMartin: lots of tiny-things use ldap for cache/proxy auth |
16:35 | < froztbyte> | typically soho offices and such |
16:35 | < froztbyte> | I've seen some DNS backends made on ldap, too |
16:35 | < froztbyte> | and here and there a server prov system on ldap |
16:35 | < froztbyte> | openldap is horrific and painful though |
16:58 | < ToxicFrog> | McMartin: yeah, sorry, it's "good for a completely different use case, bad for my purposes" |
17:06 | | Kindamoody|out is now known as Kindamoody |
17:32 | <&Derakon> | Question for people more familiar with distributed version control systems: "How would I rebase the repo without corrupting my own history or deleting the entire repo and starting over?" |
17:33 | <&Derakon> | From the guy who submitted a Pyrel pull request that has a bunch of old crap in it because his repo is out of date. |
17:33 | <&Derakon> | Does he just do a pull from my repo and then update/merge? |
17:37 | <@Tamber> | I think so; pull and merge. |
17:39 | <@Tamber> | ...actually, better off to wait for someone who can answer with greater confidence. :x |
17:48 | <&McMartin> | I think that works, and then you can rebase your commit with git rebase -i |
17:48 | <&McMartin> | If it *doesn't* work (and it's probably best to do this in a separate clone) the easiest thing to do would probably be to take a diff and apply the patch to the latest pull |
17:49 | <&Derakon> | Basically a manual rebase. |
17:49 | <&McMartin> | Right |
17:49 | <&McMartin> | That's a last-resort-ish kind of thing to do though |
17:50 | <&Derakon> | I've been reading http://stackoverflow.com/questions/2672351/hg-how-to-do-a-rebase-like-gits-rebas e |
17:50 | <&Derakon> | Apparently Mercurial's take on this is that you should merge master's changes in, not rebase to pretend like you had master's changes all along. |
17:50 | <&McMartin> | That's what git used to think |
17:50 | <&Derakon> | (Also, dude, did you sleep at all last night) |
17:51 | <&McMartin> | Yes, I slept from 11 PM to 6 AM. |
17:51 | <&McMartin> | I'm a little loopy - enough that I decided to walk to work today - but seem basically sound |
17:51 | <&Derakon> | Hm, I was up at 1AM and saw people addressing you. Didn't see any lines from you though. |
17:51 | <&Derakon> | I guess I just assumed you were active, and/or that those lines were recent. |
17:51 | <&McMartin> | TO be fair, I normally crash closer to 2 or 3 so this is a sensible thing to do. |
17:52 | < gnolam> | git freebase -| |
17:52 | <&McMartin> | :420: |
17:59 | <&McMartin> | Derakon: Anyway, yeah, I was under a lot of stress last week, which disrupted my sleep a bit |
17:59 | <&Derakon> | I sympathize. |
17:59 | <&McMartin> | And then there was a 3-day weekend, which disrupted it the other way - the drop in stress made me wipeout for 12+ hours each night |
17:59 | <&Derakon> | Heh. |
17:59 | <&McMartin> | And now I'm trying to get back onto a normalish schedule. |
17:59 | <&McMartin> | Which *almost* worked |
17:59 | | mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ |
18:00 | <&Derakon> | +a? |
18:02 | < iospace> | Super-Op |
18:14 | <~Vornicus> | Superop has the same powers as a regular op and can't be kicked by regular ops. |
18:14 | <~Vornicus> | Also, more importantly, a superop can add ops to the list. |
18:20 | < froztbyte> | Derakon: your question should rather have been phrased "for people who know the shitpile that is git, how do I do X?" |
18:21 | < froztbyte> | other DVCS systems don't take the idea "forget all of history, just shit some new code out" as an operating mechanic |
18:21 | <&Derakon> | Heh. |
18:21 | < froztbyte> | McMartin's suggestion is nice |
18:21 | < froztbyte> | pull the diff in, run some tests and linting and whatnot |
18:22 | < froztbyte> | git has a tendency to not do what you think |
18:22 | | Kindamoody is now known as Kindamoody|out |
18:22 | < froztbyte> | because there's no internal consistency between the way the operations work :P |
18:22 | <&McMartin> | git was deliberately designed so that the commands cvs and svn made standard instead do insanely destructive things |
18:22 | < froztbyte> | so if you don't know it yet, you get to learn it in the painful way |
18:23 | <&jerith> | IIRC, +a is "protect". All it means is that you can't be kicked by anyone without +a. You need +o as well if you want to actually do anything. |
18:24 | < froztbyte> | but all of that said, we're stuck with git now |
18:25 | < froztbyte> | so unfortunately that's the next round of horribleness we'll all need to get to know |
18:25 | <&McMartin> | That said, Derakon's not using git; he's using Mercurial. |
18:25 | <&Derakon> | \o/ |
18:25 | <&McMartin> | If Mercurial has better ways of doing this, that may be more on point. |
18:25 | <&Derakon> | Of course, the rest of the Angband development community is used to Git... |
18:25 | <&McMartin> | I've only used SVN and Git though. |
18:25 | <&Derakon> | Mercurial definitely seems to be unwilling to just destroy history. |
18:25 | < froztbyte> | branch, switch to branch, pull in patches, merge branches? |
18:25 | <&Derakon> | It even warns you when you create a new branch that such is permanent, and suggests that perhaps you instead wanted a bookmark. |
18:26 | < froztbyte> | that way you're not even at risk of killing your main branch |
18:26 | < froztbyte> | upon merge you can close a branch |
18:26 | < froztbyte> | Derakon: well, there's `hg rollback` |
18:26 | < froztbyte> | which is a once-off "oh shit, I didn't mean to do that" |
18:26 | < froztbyte> | (once-off as opposed to full undo tree) |
18:29 | <&McMartin> | gensym of the day: "ucrangax" |
18:29 | <&McMartin> | PUNY EARTHLINGS, YOU WILL SUBMIT BEFORE THE MIGHT OF EMPEROR UCRANGAX! |
18:33 | | * ToxicFrog upreads |
18:34 | <&ToxicFrog> | git history is immutable, actually, it's just git branch references that aren't. |
18:34 | <&ToxicFrog> | "destructive" operations are destructive in the same sense that (update-in) is. |
19:14 | | Kindamoody|out is now known as Kindamoody |
19:22 | <&ToxicFrog> | Ok, so. |
19:22 | <&ToxicFrog> | - Dropbox, UbuntuOne, Wuala, SpiderOak, etc: server software is proprietary. |
19:24 | <&ToxicFrog> | - iFolder: requires apache2 and an LDAP server; designed for large organizations. |
19:24 | <&ToxicFrog> | - OwnCloud: requires a full LAMP stack, incredibly slow, client is a bit crashy |
19:25 | <&ToxicFrog> | - SparkleShare: git-based, more of a version control system than a sync system |
19:25 | <&ToxicFrog> | - SyncAny: will be exactly what I want if it ever gets released. Not looking likely at this point. |
19:26 | <&ToxicFrog> | - lipsync: very alpha; installation is messy, requires two daemons, an rc.d entry and a cron entry, and can only sync one directory. Very lightweight, though, and seems reliable. |
19:27 | <&ToxicFrog> | - unison: no daemon mode; must be run regularly via cron. Similar capabilities to lipsync. No automatic conflict resolution. |
19:27 | <&ToxicFrog> | - glusterfs: comedy option based on using each client as a glusterfs storage server with replication enabled. |
19:30 | <&ToxicFrog> | Unison honestly looks like the most polished option out of all of these and it does everything I need, pretty much. |
19:34 | <&ToxicFrog> | The problem is its cron-based invokation. |
19:34 | <&ToxicFrog> | I'd be tempted to write a simple inotifywait based wrapper that watches the sync directory and invokes it only when something changes. |
19:40 | <&Derakon> | Oh man, cron. |
19:40 | <&Derakon> | I'd completely forgotten about that. |
19:40 | <&Derakon> | Maybe I should set up a cron job to remind me that cron exists~ |
19:40 | <&ToxicFrog> | Pfft |
19:40 | | * jerith is in the middle of writing a cron-alike. |
19:41 | <&ToxicFrog> | Well, it doesn't have to be cron, it's just that it doesn't have a daemon; you run it, it syncs and then exits. |
19:41 | <&ToxicFrog> | So the traditional approach is to just run cron once a minute |
19:41 | <&ToxicFrog> | Er, run it via cron |
19:41 | <&McMartin> | That sounds like it would ruin your bandwidth |
19:41 | <&ToxicFrog> | Why? |
19:42 | < celticminstrel> | Why once a minute? |
19:43 | <&ToxicFrog> | celticminstrel: because that' |
19:43 | <&ToxicFrog> | s the finest resolution cron supports, IIRC. |
19:45 | <&McMartin> | TF: Because that's hitting the network every minute |
19:46 | <&ToxicFrog> | Yeah, but it's not actually transferring bulk data unless there are changes to sync |
19:46 | < celticminstrel> | But why so frequently? |
19:46 | <&ToxicFrog> | The bandwidth used by exchanging timestamps once a minute is nothing compared to what I already use for IRC alone, let alone mail retrieval, dropbox synchronization, etc |
19:46 | <&ToxicFrog> | celticminstrel: as noted, my goal here is to replicate Dropbox's functionality, which syncs instantly |
19:47 | | efjc [efjc@Nightstar-eefa5056.cust.tele2.se] has quit [Ping timeout: 121 seconds] |
19:50 | <&ToxicFrog> | celticminstrel: ideally I would actually have an inotify active on the sync directory, and would invoke unison only when that reports changes |
19:50 | <&ToxicFrog> | And then have some way of notifying the client when the contents of the server have changed |
21:21 | | * Derakon eyes a line of code he just wrote. |
21:21 | <&Derakon> | numDiagonals = abs(dx) - abs(abs(dx) - abs(dy)) |
21:40 | | * Vornicus checks to see if there might be a better way to do that. |
21:42 | <~Vornicus> | oh that's kind of cool. |
21:44 | <~Vornicus> | min(abs(dy), -abs(dy)+2*abs(dx)) |
21:44 | <&Derakon> | O_o |
21:44 | <~Vornicus> | Structures a little bit more obvious that way. |
21:51 | | Vash [Vash@Nightstar-e8057de2.wlfrct.sbcglobal.net] has joined #code |
21:51 | | mode/#code [+o Vash] by ChanServ |
23:07 | | Rhamphoryncus [rhamph@Nightstar-cc6253d6.abhsia.telus.net] has joined #code |
--- Log closed Thu Sep 06 00:00:22 2012 |