public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Mike Hearn <mike@plan99•net>
To: Wendell <w@grabhive•com>
Cc: Bitcoin Dev <bitcoin-development@lists•sourceforge.net>
Subject: Re: [Bitcoin-development] SPV client in pure JavaScript?
Date: Fri, 9 Aug 2013 14:10:52 +0200	[thread overview]
Message-ID: <CANEZrP24P_m_eWbcs3PJNomG4kFDPUyGE2uQjod9qPmpBS+1mg@mail.gmail.com> (raw)
In-Reply-To: <54F09675-D6A7-4415-82F1-920248E8188D@grabhive.com>

[-- Attachment #1: Type: text/plain, Size: 2675 bytes --]

Code that runs inside NativeClient has the same access level as JavaScript
does. It's just a way to do things faster.

Distribution as a Chrome app via the Chrome store is a fine approach, as
long as people understand it's just an app platform like any other. It has
pros and cons that must be weighed up. For instance, Chrome for mobile
doesn't really do apps, at least not at the moment. Also, you're still
limited by what APIs Chrome exposes, which are a strict subset of what a
real OS provides.


On Fri, Aug 9, 2013 at 2:05 PM, Wendell <w@grabhive•com> wrote:

> Right, I'm not suggesting that we have this wallet in a web app, but
> rather precisely what you are talking about: using special browser
> features, and bundling it. I am fundamentally monoculture-opposed, but
> given Chrome's present installed base, that initial target makes sense to
> me, provided that we could have a one-click installation (as per normal,
> via the Chrome Store).
>
> Chrome also has this "Native Client" plug-in: I know next to nothing about
> it, and this goes off the rails of the Subject, but perhaps an SPV
> implementation there could be a solution to the concerns you expressed?
>
> -wendell
>
> grabhive.com | twitter.com/grabhive | gpg: 6C0C9411
>
> On Aug 9, 2013, at 1:48 PM, Mike Hearn wrote:
>
> > JavaScript is turing complete so of course it can be done. The real
> question you're asking is, can it be done in a web app? I think the answer
> is I think "no" because web apps aren't allowed to make raw TCP socket
> connections.
> >
> > Now there may be a way around that by using browser-specific things like
> extensions or "installable apps" which give your code greater access
> permissions. This approach means you essentially use Chrome as your app
> platform instead of a JVM, the assumption presumably being that more users
> have Chrome than a JVM. The flip side is that users who don't would
> probably balk at the idea of installing an entire browser in order to run a
> wallet app, whereas a JVM can be bundled and the resulting app acts like
> any other. I don't know of a convenient way to "statically link" Chrome
> into a regular-looking application.
> >
> > I personally wouldn't find such a design compelling. Whilst Java isn't
> exactly a great language, JavaScript is significantly worse in virtually
> all aspects. I don't understand why anyone would want to use JavaScript
> outside the browser - you get less safety, less performance, fewer
> features, less mature tools and so on. If the end result is an installable
> app like any other, all you did is cripple yourself vs the competition
> that's using languages/platforms designed for it.
>

[-- Attachment #2: Type: text/html, Size: 3301 bytes --]

  reply	other threads:[~2013-08-09 12:10 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-09 11:32 Wendell
2013-08-09 11:48 ` Mike Hearn
2013-08-09 12:05   ` Wendell
2013-08-09 12:10     ` Mike Hearn [this message]
2013-08-09 12:14       ` Mike Hearn
2013-08-09 13:05         ` Wendell
2013-08-13  5:26         ` Chris Double
2013-08-09 13:08 ` Jeff Garzik
2013-08-09 17:58   ` Wendell
2013-08-09 18:09     ` Jeff Garzik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CANEZrP24P_m_eWbcs3PJNomG4kFDPUyGE2uQjod9qPmpBS+1mg@mail.gmail.com \
    --to=mike@plan99$(echo .)net \
    --cc=bitcoin-development@lists$(echo .)sourceforge.net \
    --cc=w@grabhive$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox