<ylluminate>
after seeing unreal 3 engine running in pure javascript in browser i just can't shake the potential
<ryanstout>
I think the web ruby stuff compiles the interpreter. What would work better is if we had a ruby implementation that compiled to LLVM IR. rubinius is built on the LLVM, but I think it has a big runtime
<meh`>
yeah, it's not feasable for production stuff
<meh`>
ylluminate, the unreal 3 engine is on a different level of use case, when it's a game you're used to huge load times, so you don't even care
<ryanstout>
yea, I think opal is the better way to go
<meh`>
if you want to write a website or whatever, having 3M of dependency is a no-go
<ryanstout>
also, there's a bunch of overhead that emscripten imposes
<meh`>
and it's just to have the core running, not even the dependencies
<meh`>
with opal you can get a whole website going under 150K gzipped, including deps and the application code
<ryanstout>
someone did compile ruby 1.8 with emscripten at some point, and I remember thinking it took a long time to start (just fyi)
<ryanstout>
yea, the unreal demo is really cool. I think thats using webgl also right?
<meh`>
yes
<ylluminate>
yeah
GitHub150 has joined #opal
<GitHub150>
opal/master 8d7f215 Strech (Sergey Fedorov): String#split ignores leading and continuous whitespace
GitHub150 has left #opal [#opal]
<GitHub150>
opal/master 9669f3f meh.: Merge pull request #449 from Strech/master...
<ylluminate>
yeah, dependency size is a bear. i've been so hopeful to use ruby on a large project my team has coming up that's going to be a mountain of a js app
<meh`>
ylluminate, what's missing from Opal that you can't use it?
<ryanstout>
ylluminate, where do you work?
<ylluminate>
well, i'm not sure yet. i haven't yet scrutinized it closely enough and i see the projects in a lot of seeming flux right now from the commits
<ylluminate>
i have a lot of push from folks to use angular right now
<meh`>
yeah, that's not gonna work
<ylluminate>
in the us, but some is in south america
<meh`>
imho you should either use Opal from the start or forget about it
<ryanstout>
ylluminate, sorry, I was asking what company/product you work on?
<ylluminate>
i have ultimate control; the projects going to be really big and we've got some potential investors floating around. it's got to be super performant on the js side; it's an exceptionally visual app that requires realtime dataflow between clients (looking at firebase right now for the fast stuff)
<meh`>
and I can see angular playing badly with other javascript libraries as well
<ylluminate>
oh, sorry, it's an nda-only project at the moment so i can't get into details
<ryanstout>
no worries, was just curious
<ryanstout>
angular is slow with a lot of data because of the dirty checking
<ylluminate>
it's an exciting project for sure that was valuated at 700M, but it's early stage and we have to get an alpha out of the gates here before magic happens
<meh`>
ylluminate, I'm working on a project with similar requirements and I really can't see Opal hindering performance
<meh`>
it's obviously slower than javascript in some cases, but it's amortized over the whole thing
<meh`>
and you can always write the hot path in inlined javascript
<ylluminate>
interesting re: the dirty checking ryanstout
<ylluminate>
i honestly started to lean towards cappuccino
<ylluminate>
one thing that has concerned me is that of protecting the js adequately. has anyone worked with serious obfuscation methodologies that discourage reverse engineering?
<ryanstout>
there are some obfuscators out there, but really I can't think of anything people are doing now days in JS that someone couldn't just duplicate
<ryanstout>
I don't think too many people are stealing other people's JS
<ryanstout>
but maybe I'm wrong
<meh`>
ylluminate, is that really a problem?
<ylluminate>
there are some questions i've been hit with from investors about adequate protection and it's been a real headache for me
<ryanstout>
sounds like your investors don't understand the space (common problem)
<ylluminate>
yes it is a common problem, especially from investors who are not grounded in the industry. but you can't just shrug them off
<ryanstout>
as someone who has taken VC funding for stuff, I would suggest you make sure that if your investors don't understand stuff, they know they understand. Nothing worse than investors who think they get it, but don't. :-)
<meh`>
ylluminate, what ryanstout
<ylluminate>
well they don't get some aspects; they get the overall concept, but lack the details of implementation and honestly they're not really going to do the work from what i've seen
<meh`>
I don't see how anyone could get something usable out of reversing an uglified js
<meh`>
unless you're implementing some weird algorithms and whatnot on the client side, then you can just defer that to the server
<ryanstout>
meh` yea, I just mean if you're trying to protect an algorithm or something, that could be extracted
<ryanstout>
like I built bustaname.com a while ago, which is pretty complex JS, but no one has copied it yet, because there's also the backend component. Copying was a concern, but looking back I don't think thats an issue
<ryanstout>
usually business wise you have first mover advantage too
<ylluminate>
any particular verbiage that you might use to try to smooth over such an issue? most of this is ui stuff, obviously not the server proper, but a tremendous amount of logic will be happening client side as it's quite a complex app
<ylluminate>
yeah, one of the main concerns is asia
<ryanstout>
I would just tell them that trying to use someone else's JS is usually as much work as it is to build it again
<ylluminate>
as a matter of fact, there has been talk of deploying in asia first and then moving to the rest of the world to overcome the ip theft problem
<ryanstout>
copying stuff always happens, even in the US. I had a game copied by zynga when I did social gaming
<ryanstout>
nothing much you can do
<ryanstout>
usually I find competition isn't why things fail, but maybe thats my experience
ryanstout has quit [Quit: ryanstout]
meh` has quit [Ping timeout: 260 seconds]
<ylluminate>
any good example opal apps floating around to sink my teeth into to see how someone's building out?
marcandr_ has joined #opal
marcandr_ has quit [Remote host closed the connection]
marcandre has joined #opal
marcandre has quit [Remote host closed the connection]
e_dub has quit [Ping timeout: 240 seconds]
e_dub has joined #opal
meh` has joined #opal
elia has joined #opal
meh` has quit [Ping timeout: 245 seconds]
kludge` has quit [Ping timeout: 252 seconds]
kludge` has joined #opal
GitHub176 has joined #opal
<GitHub176>
opal/master 9a56545 Adam Beynon: Add lexer specs for string interpolations
<GitHub176>
opal/master b1069b8 Adam Beynon: Clean up cli spec helpers
GitHub176 has left #opal [#opal]
<GitHub176>
[opal] adambeynon pushed 2 new commits to master: http://git.io/Pi7Dfw
travis-ci has joined #opal
<travis-ci>
[travis-ci] opal/opal#1559 (master - b1069b8 : Adam Beynon): The build passed.
<fkchang>
meh`: kudos on some docs for lissio, I just tweeted it
<meh`>
fkchang, :)
<fkchang>
adambeynon: I'm going to write an "opal-starter-kit" to make it easy to create opal projects via the command line, i.e. "osk new static myproject", "osk new opal-server myproject", "osk opalfy myrailsproject", etc. I.e you just do gem install opal-starter-kit, then run the cmd line. Make it easier for ppl to play w/opal, just 2 steps
<meh`>
fkchang, +1
DrShoggoth has joined #opal
<fkchang>
meh`: I'll add new lissio project, modelling from shekels too