The web in a box - a next generation web framework for the Perl programming language

IRC log for #mojo, 2016-05-27

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:03 zivester joined #mojo
00:56 lluad joined #mojo
02:11 PryMar56 joined #mojo
02:27 kaare joined #mojo
02:49 noganex_ joined #mojo
04:27 che-quest joined #mojo
04:58 jontaylor_ joined #mojo
05:46 inokenty-w joined #mojo
05:56 dod joined #mojo
06:02 dod joined #mojo
06:09 Lee joined #mojo
06:34 Lee sri, jberger : i've cleaned that code up and rebased
06:34 Lee what are the "big picture questions"?
06:34 Lee i've checked our logs, this wasn't happening at 6.42
06:35 Lee i can bisect if you want but that's going to be difficult and time consuming
06:59 sri i can't really work on anything until i have a real laptop again, just making sure nobody else applies flawed patches
06:59 Lee np
06:59 Lee it seems the warning isn't related to the weirdess we're seeing anyway
07:00 Lee we're rolling back and i'm going to try to reproduce locally
07:00 Lee the weirdness is like we're getting the tail of a previous request before the headers in the current request
07:00 Lee *possibly* proxy related i don't know
07:04 sri you're still calling length() twice for some reason
07:05 Lee so you want me to assign length to a temp var?
07:05 sri assigning {content} to a variable instead of the length seems like a huge waste of resources
07:05 sri it's just wasteful
07:06 sri big picture questions are for example how it happens and how it affects other asset implementations
07:08 Lee fixing
07:09 AndrewIsh joined #mojo
07:09 Lee question - why was (is) the return doing shift->{content} rather than $self->{content} - isn't that also wasteful (in terms of ops?)
07:09 sri seems like a typo
07:10 sri prolly from before range support
07:11 Lee ok, updated and pushed
07:11 sri return substr $content, $offset > $len ? $len : $offset, $max;
07:11 sri also doubt you need two extra lines
07:12 sri doing $self->{content} // '' twice is not nice either
07:12 sri just make the first a $self->{content} //= ''
07:12 Lee see, i was thinking of doing that before but i worried about action at a distance
07:12 sri ?
07:13 Lee actually changing the content
07:14 sri allright, i'll leave it alone, since i can't test anyway
07:18 Lee k, updated again :)
07:18 Lee have to say i'm not a fan of leaving out parentheses, just asking for precedence bugs. each to their own however
07:20 dod joined #mojo
07:40 sri i don't even remember the last precedence bug
07:41 sri maybe if your tests suck ;p
07:44 sri http/2 is breaking for everyone today https://ma.ttias.be/day-google-chrome-disables-http2-nearly-everyone-may-31st-2016/
07:45 Lee http://irclog.perlgeek.de/mojo/2016-03-03#i_12132753
07:46 Lee which i warned about: http://irclog.perlgeek.de/mojo/2016-02-25#i_12099340
07:46 Vandal joined #mojo
07:46 Lee test coverage is hard :D
07:49 Lee *sigh* looks like our weirdness is something in the proxying/apache
07:49 Lee we have request a and b, a is in the apache log but b is not, b gets the tail of a even though they're 5 seconds apart
07:49 Lee this is going to be a fun Friday...
07:59 trone joined #mojo
08:23 osfabibisi joined #mojo
08:32 Jonis Read-Only Friday
08:43 icjs joined #mojo
08:49 mishanti1 Lee: Got varnish in between there somewhere?
08:51 Lee nope
08:51 Lee AWS ELB -> apache -> mojo
09:39 irqq joined #mojo
09:48 che-quest hi, guys/ allow me to offer extended syntax: use Mojo::Base -lib, qw(lib /opt/lib);
09:49 che-quest here my work https://github.com/kraih/mojo/compare/master...mche:master
09:50 nicomen what's wrong with just use lib?
09:50 che-quest no wrong
09:52 che-quest save of typing
09:55 sri i'm afraid that patch has zero chance, considering our recent FindBin problems
10:12 kes joined #mojo
10:29 mpapec joined #mojo
10:40 VVelox joined #mojo
10:50 che-quest hi again, I do not understand a little:
10:51 che-quest use Mojo::Base 'Mojolicious'; $a=1; # where is strict problems?
10:52 batman che-quest: use Mojo::Base imports strict and warnings automatically
10:52 batman also, you should not use $a as a variable, unless inside sort() and friends
10:52 batman (sidenote)
10:52 che-quest yep, but no warnings about $a
10:53 che-quest okay, $foo
10:53 Lee $a is a perl global
10:53 Lee ditto $b
10:54 che-quest oh, yeah, thanks much
10:57 kaare joined #mojo
10:57 Kripton joined #mojo
11:06 sri hahaha, recruiter spam from booking
11:06 sri "I was able to discover your profile online...We use Perl in 80% of our code but you do not need to know Perl in order to join – as long as you’re willing to learn it."
11:06 sri thanks!
11:06 sri -.-
11:11 sri everyone's a critic
11:13 mishanti1 sri: Surely Mojo is written in Python?
11:16 stephan48 sri: you know perl? wow.
11:22 sri think a full time tech recruiter working at booking should try a little harder ;p
11:23 pink_mist probably a copy/pasted thing they use for all of their spam
11:25 mishanti1 That kind of spam is getting sneakier though. Now they've even started referencing individual blog-posts, tweets etc.
11:26 mishanti1 Thankfully there are email-filters so one can block everything coming from the spam-software they use.
11:26 sri there's even typos that make it seem more personalized
11:26 sri "I cannot resist not sharing opportunities within Booking.com with you – I am a recruiter by nature:) I looking forward to hearing from you."
11:28 cpan_mojo Mojo-Base-Lib-0.001 by MCHE https://metacpan.org/release/MCHE/Mojo-Base-Lib-0.001
11:36 cpan_mojo Mojo-Base-Lib-0.002 by MCHE https://metacpan.org/release/MCHE/Mojo-Base-Lib-0.002
11:38 jberger sri: hahaha
11:40 nic If anyone is trying out the IDEA IDE for perl (plugin) that sri linked to yesterday, be sure to do Help > Search for updates... to pick up v2.0
11:42 Lee che-quest: have you seen my RT issue against Mojolicious-Plugin-RenderCGI?
11:42 Lee che-quest: also, although i haven't tested it - using CGI.pm within Mojo is liable to break in horrible ways
11:42 che-quest not seen
11:43 che-quest link please
11:43 sri funny thing is i'd actually join booking if working coditions there got a little nicer
11:43 Lee che-quest: https://rt.cpan.org/Ticket/Display.html?id=114598
11:44 jberger sri: Would you move to California?
11:44 jberger Craigslist looks like fun but you have to be there
11:46 sri i want to say yes, but the stress of such a move would prolly kill me
11:50 che-quest Lee: If I understood correctly the compile method name do not use (rename)?
11:52 sri jberger: think craigslist is actually a very small company, doubt they have much experience with helping people move
11:53 che-quest Lee: sorry my third language English worse
11:53 Lee che-quest: https://github.com/leejo/CGI.pm/blob/master/Changes#L95
11:53 mattp what new dev at craigslist actually occurs
11:54 sri mattp: a lot behind the scenes from what i hear
11:55 che-quest Lee: thanks! CGI - forever! фарева по-русски :)
11:55 * nic kicks the corpse of CGI under a rug
11:56 Lee il est cherche la merde !
11:59 che-quest Lee: No voy a argumentar
12:01 sri who knows, maybe some day craigslist will expand to europe
12:01 sri would certainly help with their marketshare here, which seems pretty much non-existing
12:11 mtths joined #mojo
12:32 Jonis heh, ask them if they'll open an office for you in Europe :)
12:33 Jonis I have a friend who moved back to Norway, but his $company wanted him to keep working there so much that they opened an office here in town.
12:33 sri lol
12:36 Jonis yeah, lucky eh?
12:37 cpan_mojo Mojolicious-Plugin-RenderCGI-0.072 by MCHE https://metacpan.org/release/MCHE/Mojolicious-Plugin-RenderCGI-0.072
12:47 bwf Getting "Premature connection close" from Test::Mojo.  Tried to set inactivity_timeout(0) but does not help.  https://gist.github.com/bfaist/85869582a2caa64000f4a449c97ece4a
12:48 itaipu joined #mojo
12:48 mpapec do zou need sleep 15¸_
12:49 mpapec ?
12:49 bwf Ran "mojo generate app SleepTest" and just updated basic.t.
12:50 jberger bwf: you shouldn't sleep, you should use a timer
12:51 bwf Trying to simulate iphone that will be connecting periodically.
12:51 bwf ok
12:51 jberger also you need to set the timeout in the server as well as the client
12:51 mpapec Mojo::IOLoop->timer(15 => sub { "done waiting" });
12:52 jberger mpapec: no, you have to render in the timer
12:52 mpapec yes of course
12:56 mpapec batman: is there a guarantee that all redis subscribers will receive a published message?
12:56 ramortegui joined #mojo
12:58 mtths joined #mojo
12:58 jberger mpapec: what do you mean?
12:59 mpapec I mean if hypnotoad worker is busy, can it miss a message from subscribed channel
13:01 * mpapec searching for irssi spellchecker
13:02 jberger mpapec: well you are never supposed to block a worker for very long anyway
13:03 jberger but just think of the workflow
13:04 jberger the message arrives over a non-blocking tcp socket
13:04 jberger so when the socket gets read (when the loop ticks) then it triggers the code in Mojo::Redis2 that then triggers callbacks subscribed to the message
13:04 mpapec I'm not blocking on IO
13:04 jberger if you are blocking the worker it will take a long time to get to the next ioloop tick
13:06 mpapec ok, but
13:06 mpapec if I understand correctly
13:07 mpapec Mojo::Redis2 callback can wait some time for his order
13:07 mpapec to be executed/called?
13:07 mtths joined #mojo
13:08 jberger assuming the socket doesn't time out or something
13:09 jberger I don't know all of the handle buffering stuff at the system level, but I think it waits to be read as long as it stays open
13:09 jberger mpapec: what are you doing in the worker that is blocking for long enough to cause worry?
13:09 jberger can you offload it somehow?
13:10 mpapec I'm expecting larger number of clients (websocket)
13:11 jberger websockets are nonblocking
13:11 mpapec so, they can block a worker on cpu level
13:11 mpapec and I have to consider how many clients to go to one hypnotoad worker
13:12 jberger then you need more workers
13:12 mpapec *can go*
13:12 sri how have you tested that cpu is the limiting factor for your setup?
13:12 jberger I mean nothing is going to help you if you actaully overwhelm your server
13:12 jberger but **actually** is the key word here
13:12 mpapec sri: I've ran 1000 websockets on one worker
13:13 mpapec and cpu load goes up to 90%
13:13 asarch joined #mojo
13:13 sri clients and servers on the same box?
13:13 mpapec so I'm looking for some alghoritm, how to calculate needed number of workers
13:14 mpapec for some particular server
13:14 sri and the server was optimized for large numbers of sockets?
13:14 mpapec sri: yes
13:14 mpapec (for previous question)
13:14 jberger what are the websockets doing?
13:14 sri your test setup was flawed
13:14 mpapec ok
13:14 sri the results don't mean anything
13:15 sri never put clients and servers on the same box for real tests
13:15 mpapec ok, I'll run clients from separate machine
13:15 sri and optimize your operating system
13:16 mpapec I know there is a wiki for optimization
13:16 mpapec but didn't notice that it is also needed for 1000 clients?
13:17 sri there's always optimizations required when you want performance
13:18 mpapec sri: tnx
13:18 jberger I mean first of all you need to be sure there are enough filehandles
13:19 jberger that isn't something mojo can do for you
13:20 mpapec yes, there is enough of them, but I've ran clients from the same machine
13:27 andrew_ joined #mojo
13:40 tchaves joined #mojo
13:55 dvinciguerra joined #mojo
13:58 cpan_mojo Mojo-Base-Lib-0.003 by MCHE https://metacpan.org/release/MCHE/Mojo-Base-Lib-0.003
14:04 gizmomathboy joined #mojo
14:05 jberger che-quest: how can you distinguish these three?
14:06 jberger use Mojo::Base -lib, qw(rel/path/lib /abs/path/lib); vs use Mojo::Base 'SomeBaseClass', qw(-lib lib1 lib2); vs use Mojo::Base qw(-lib lib1 lib2), 'SomeBaseClass';
14:07 che-quest diff variants
14:07 jberger in that last case how is SomeBaseClass not interpreter as a lib path
14:07 che-quest two last are same
14:08 jberger you document them differently
14:08 mcsnolte joined #mojo
14:08 jberger yes I agree it looks to me that the last two are the same
14:08 che-quest in pod there is note
14:08 jberger but your docs claim that they are not
14:09 jberger sorry, I've phrased this badly
14:09 jberger I think that you can't distinguish the first one from the third
14:09 jberger how can you tell that SomeBaseClass isn't a lib path?
14:09 jberger do you check that the path exists?
14:10 nic the second one is different due to the position of '-lib'
14:10 che-quest bit slower, I translate
14:10 jberger nic: yes, that one I understand
14:11 nic oh, you're asking about the last element of the third case; yeah, I agree
14:11 jberger right
14:11 jberger (also, sidenote, the docs use Mojo::Base not Mojo::Base::Lib)
14:12 nic it does not have the appearance of a module ready for cpan
14:12 nic che-quest: do you know you can install from github, so that is a good 'proving ground' for experimental stuff that isn't production-ready
14:13 che-quest nic: did know install
14:13 jberger I personally don't understand how [use Mojo::Base::Lib 'BaseClass', -lib, qw/path otherpath/;] is any better than [use lib qw/path otherpath/; use Mojo::Base 'BaseClass';]
14:15 genio o.O
14:15 che-quest jberger: rel path FindBin (sri already noted)
14:16 jberger that isn't my question
14:16 jberger how can you determine that SomeBaseClass isn't a path but a base class
14:16 jberger in that last example (which isn't tested I notice)
14:16 che-quest jberger: i understand your q
14:18 che-quest jberger: at now there no checks agains SomeBaseClass isn't @INC
14:19 jberger also, are you aware that there are classes in the Perl core named Test and Test2 (the latter only in recent Perl core, but certainly coming to you via CPAN)
14:19 jberger looking at your lib3 test
14:20 che-quest jberger: yep, i must refine tests
14:21 zivester joined #mojo
14:23 jberger also, you have your test modules in t/lib/ but you only are appending lib/ to your @INC so those modules aren't getting loaded from where you think they are
14:25 jberger oh, that's the findbin thing you were talking about
14:25 jberger ok yeah, that's ... let's say that's not for me
14:27 jberger but if in t/base-lib3.t if I change line 8 to read: use Mojo::Base::Lib -lib => 'lib2', 'Test2'; then the tests fail
14:28 batman mpapec: yes, as long as you don't loose the connection to the server, you will receive the message
14:29 batman if the process blocks, the kernel will just "cache" the message until you're ready
14:29 batman unless the kernel decides to drop it because it's huge...
14:29 batman could be some socket settings, that i'm not aware of
14:29 che-quest jberger: let me check
14:30 batman mpapec: but if you need 100% guaranties, then pub/sub is probably not the way to go.
14:30 batman not because of Mojo::Redis2, but just because it's pub/sub :)
14:31 jberger btw, as long as we are on the topic
14:31 jberger batman: would you be open to having Mojo::Redis2 keep track of the number of subscriptions to a topic like Mojo::Pg does?
14:32 batman jberger: i would be open for a complete rewrite and take back the Mojo::Redis namespace :P
14:32 jberger https://github.com/kraih/mojo-pg/blob/master/lib/Mojo/Pg/PubSub.pm#L24
14:32 jberger ^^ that is so nice
14:32 jberger not having to worry about when to unsubscribe at the db level
14:33 che-quest jberger: yep, use Mojo::Base::Lib -lib => 'lib2', 'Test2'; 'Test2' threats as lib path, my mistake, thank you (remove pod line)
14:33 batman jberger: it's a completely different design. you can just let the redis object go out of scope
14:34 jberger batman, sure, but in server I might only have one instance which serves for multiple clients
14:34 batman jberger: i don't think it's possible because the Mojo::Redis2 design is... (a bit) messed up :P
14:34 jberger if I'm in a message bus pattern say
14:35 batman jberger: i guess you have to redefine how unsubscribe() works then... i'm open for a PR
14:35 icjs joined #mojo
14:35 batman unfortunately i don't use redis anymore :/
14:35 jberger as of last week neither do I
14:35 batman haha. but you still care..? :P
14:36 jberger moved the last bit over to Mojo::Pg (which I was already using since switching from MySQL)
14:36 * pink_mist coughs * convos *cough*
14:36 jberger pink_mist: the convos rewrite only has a file backend so far
14:36 batman pink_mist: let me rephrase... i don't develop in an environment where i use redis
14:36 jberger but of course redis backend is planned
14:37 jberger probably Pg backend as well I would assume
14:37 pink_mist ohh, I see
14:38 lluad joined #mojo
14:38 batman jberger: i'm not planning to write a redis backend. i'm planning to rewite a redis-to-file-backend-script
14:38 batman but i'm not against if someone wants to write a redis backend
14:39 batman rewite = write
14:39 jberger meaning redis for pubsub and file for storage?
14:39 batman no. just extracting all the existing redis data and write them to disk, so i don't loose history when i start using the new convos
14:40 batman i can't have "search" in redis, so that's why i'm abandoning redis in favour of file backend
14:40 jberger pg backend though ... :-P
14:41 batman sure. whatever you like. i'm not going to implement it though.
14:41 jberger no, that's fine
14:41 batman i'm happy to help, and happy to bring it into core, but i won't do it.
14:42 batman but no one is even trying to finish the file backend, so i don't see this happening any time soon :(
14:42 jontaylor joined #mojo
14:45 jberger I can work on a Pg backend
14:45 jberger I never could design a schema in Redis
14:46 jberger but I'm getting better at SQL
14:47 batman i don't see the point, if we don't bring convos to a working state first
14:47 batman but i won't stop you :)
14:47 pink_mist btw sorry, I shouldn't have brought this up in here :P
14:48 batman pink_mist: hehe
14:48 batman i'm on my way out...
14:49 * batman has work, beer, Swagger2.pm, AssetPack and paying projects that stands in the way of convos :(
14:50 jberger :s
14:50 jberger I have a similar list
14:51 batman yeah, and of course the fact that earth only gives me 24 hours a day :)
14:51 batman hoping to push "beer" down that list, but that's pretty much the order things are in now...
14:52 batman shout if anyone wants commit bit to Mojo::Redis2.
14:53 batman if i had time, i would redesign the api for Mojo::Redis (the old namespace) into something similar to Mojo::Pg
15:45 disputin joined #mojo
16:07 wololo joined #mojo
16:09 wololo I need to rollback uncommitted changes to my database after every request. I've been using the after_dispatch hook, but I noticed that it gets called multiple times. Where should I put the rollback so that it gets called once the request is processed?
16:11 wololo Nevermind, I see that I was actually making multiple requests.
16:18 Grinnz_ wololo: requests are not always processed one at a time
16:18 Grinnz_ say if you have async
16:19 Grinnz_ or unders
16:21 Grinnz_ if you scope your transactions with $db->begin in Mojo::Pg, it will automatically get rolled back when that object goes out of scope
16:21 Grinnz_ if uncommitted
16:21 Grinnz_ (if you're using Mojo::Pg)
16:23 jontaylor joined #mojo
16:25 ivi joined #mojo
16:28 wololo Grinnz_: Unfortunately, I'm not. I'm using DBI and MySQL. DBI was complaining about uncomitted transactions when it went out of scope, so I have to rollback to suppress its warnings
16:28 Grinnz_ wololo: you should figure out where you have uncommitted transactions and fix that.
16:28 Grinnz_ that's a problem
16:28 Grinnz_ rolling back all transactions is just masking the symptoms
16:29 jberger Grinnz_++
16:29 wololo There were no uncommitted transactions, DBI just thought there was. I'm only using SELECT's right now
16:29 Grinnz_ wololo: are you setting AutoCommit off somewhere?
16:29 wololo yes
16:29 Grinnz_ why?
16:29 jontaylor joined #mojo
16:30 wololo Eventually I'm going to be using transactions, so I've disabled it
16:30 Grinnz_ that's not a good way to use transactions
16:30 Grinnz_ always keep AutoCommit on, and use begin_work or the transaction management another framework might provide
16:31 Grinnz_ then you won't have these unnecessary transactions for SELECTs
16:31 dod joined #mojo
16:32 Grinnz_ (begin_work is just a bit of sugar around turning off AutoCommit, then turning it on the next time commit or rollback is called)
16:34 Grinnz_ I just started using the transaction management in DBIx::Connector, it is also very helpful though a bit different from what Mojo::Pg and similar provide
16:34 wololo I've never considered doing it that way. I wouldn't get consistent reads though, right?
16:35 Grinnz_ consistent reads?
16:35 tchaves joined #mojo
16:35 wololo If another connection commits between two queries, I would get the data changed by the commit
16:36 wololo Whereas with autocommit turned off, I'll always get the data from the snapshot created by the first query
16:36 wololo I'm not sure if that's a problem for my use case, though.
16:37 Grinnz_ I would say it causes much more problems than it solves, if you find that's something you need then there's other ways to solve it
16:37 Grinnz_ AutoCommit is just for transaction management, and MySQL in particular is not very good at handling long-open transactions
16:37 wololo What kinds of problems does it cause?
16:38 Grinnz_ leaving transactions open leaves locks open
16:40 Grinnz_ If you need consistent data for a particular operation, then you can open a transaction for that operation
16:42 Grinnz_ think of it this way; if you have AutoCommit off by default, then every connection you make is essentially starting a transaction
16:42 wololo Unless one forgets to commit after modifying the database, no open locks will be preserved. I don't think reads lock tables/rows
16:45 wololo On the other hand though; with AutoCommit off, every connection is guarenteed a consistent view of the database. With autocommit on, the database is still creating a transaction for each query. It just automatically discards the transaction when done with the query
16:45 wololo There's not that much difference in overhead, barring of course long running transactions
16:47 Grinnz_ yes, I'm speaking of how to view it logically
17:24 trwww joined #mojo
17:30 wololo left #mojo
17:38 lluad joined #mojo
17:39 PryMar56 joined #mojo
17:52 disputin joined #mojo
18:42 disputin joined #mojo
18:42 disputin joined #mojo
18:57 disputin joined #mojo
18:59 zivester joined #mojo
19:00 disputin joined #mojo
19:06 asarch joined #mojo
19:22 icjs joined #mojo
20:18 zivester joined #mojo
20:38 punter joined #mojo
21:30 sri odd that i've only considered the dell xps 13 and not the surface book
21:31 sri hard to justify the price though
21:31 bpmedley Something wrong with the surface book?
21:31 sri the version i'd need costs about 2100 euros :o
21:32 sri compared to 1600 euros for the dell
21:33 disputin joined #mojo
21:33 bpmedley That's basically a no-brainer.. :)
21:34 sri not really, the surface book has some really cool features
21:34 sri like a trackpad that's almost as good as the ones apple makes from what i hear
21:34 sri tablet mode and dgpu in the keyboard section
21:52 mishanti1 sri: Looked at the Lenovo X1 Yoga?
21:53 sri not considering lenovo
21:53 sri too much malware
21:55 genio still having problems with the mac repair?
21:55 sri they are sending a new one next week
21:56 sri and i'm debating weather to keep it or sell it for something else
21:56 sri s/a//
21:56 sri wait
21:57 genio keep it.  they're still awesome machines.  unfortunately you are experiencing the rare problem
21:57 sri *whether
21:57 sri phew, tough typo
21:57 mishanti1 That word always trips me up.
21:58 jberger plenty of native speakers even mess that one up
21:58 genio english is weird like that; multiple words that are spelled slightly differently but sound exactly the same
21:58 jberger sri: still not considering that one with the external gpu?
21:58 jberger (I still find that facinating)
21:58 sri TIL the word wether
21:59 sri jberger: can't even buy that in germany
21:59 sri so the thought of needing a repair is rather scary
21:59 sri even if i import it
22:00 jberger ah that's true
22:00 jberger I was thinking there must be some way to get it to you
22:00 jberger but you're right the repair situation would be terrible
22:01 sri it's funny how the trackpad is becoming one of the biggest issues i have with most windows laptops
22:01 sri most are so damn bad
22:02 marcus or rather, the macbook one is really really good.
22:02 sri hmm, maybe i'm just spoiled, yea
22:03 punter sri, do you run os x on your mac?
22:04 sri yes
22:06 genio sri: That's been my main gripe ever since first owning a mac
22:25 marcus I bought my first mac to run linux on it in 2002. never got around to it.
22:34 jberger marcus: I've been threatening to reinstall mine with linux regularly since I got it from $job[-2]
22:34 jberger and yet somehow ...
22:35 jberger one of these days homebrew is just gonna tick me off for the last time though
22:47 trwww joined #mojo
23:07 sri and then you'll discover that the trackpad and power management not working properly is so much worse ;p
23:09 sri the homebrew guy actually works for apple now i think
23:12 Adurah Didn't he get turned down by some other company?
23:13 sri by google, because he couldn't invert a btree on a whiteboard
23:14 Adurah Eheh.
23:29 mishanti1 Did they eventually stop with the silly "how many engineers can fit inside an elephant"-type of questions, or are they still at it?
23:46 nicomen I'm really happy people suck at interviews (I mean the people asking questions), means there still are good engineers out there ;-)
23:50 mishanti1 Indeed.
23:51 mishanti1 In other news: germinating seeds inside zip-lock bags works amazingly well.

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary