RISCVEMU: 128 bit RISC-V emulator - <AUTHOR> http://bellard.org/riscvemu/ <comment><USER2> Unfortunately it can't boot the Fedora/RISC-V[1] disk image out of the box because the supplied Linux kernel doesn't have all the config enabled[2] for systemd to run properly :-(

It gets as far as the "Welcome to Fedora 25 (Twenty Five)!" banner but then gives a bunch of systemd errors around "Function not implemented". inotify seems to be the main one.

[1] [https://fedoraproject.org/wiki/Architectures/RISC-V](https://fedoraproject.org/wiki/Architectures/RISC-V)

[2] [https://github.com/rwmjones/fedora-riscv- kernel/blob/master/...](https://github.com/rwmjones/fedora-riscv- kernel/blob/master/config)

<comment><USER3> The serious answer might be that a hardware RISC-V deployment is very unlikely to be running Fedora in production. All the existing planned devices are MCUs which are much too small (and lack MMUs in many cases).

The more glib one is that if you're interested in building a CPU emulator from source but don't want to rebuild a kernel, you're probably skipped a few important skills along the way.

<comment><USER2> Fedora is targeting 64 bit server-class hardware, which is on its way -- in production as we speak.

I'm quite capable of rebuilding the kernel, just lazy. The main problem is that the kernel is embedded in the bootloader, and the bootloader for this emulator is patched because the RISC-V HTIF [obsolete device] emulation is different from the other RISC-V implementations, which makes rebuilding the whole thing somewhat tedious.

<comment><USER4> > in production as we speak

Really?! Got a link? I thought the ISA was still in flux, isn't it a bit early to be making hardware?

<comment><USER2> Follow the links in: [https://news.ycombinator.com/item?id=13213342](https://news.ycombinator.com/item?id=13213342) and have a look at the latest workshop proceedings: [https://riscv.org/2016/12/5th-risc-v-workshop- proceedings/](https://riscv.org/2016/12/5th-risc-v-workshop-proceedings/)

The user-level ISA is fixed. The privileged-level ISA is in flux, but people obviously think there's enough there to make real hardware. To be fair the main problems with the privspec are to do with virtualization, and likely the first crop of hardware won't support that or will have only interim support.

</comment></comment></comment></comment></comment><comment><USER5> Does anyone know where does Fabrice Bellard work for his day job?

<comment><USER6> He used to work for Netgem [0], and according to his French wikipedia page [1] he co-founded Amarisoft where he is listed on their about page [2]:

 _Amarisoft

We are delighted to bring some affordable tools and software to the 4G mobile community to unleash creativity and at the end expand communications among people. Accessible technology is the basement of possible success story. We at Amarisoft are working on helping all size of company or individuals being a player in mobile networks of now and future generation. We hope you'll enjoy the opportunity.

[..]

Fabrice Bellard

Fabrice is a computer programmer who is best known as the creator of the FFmpeg and QEMU software projects. He studied at Ecole Polytechnique, specializing at Telecom Paris in 1996. Fabrice is an amazing person bringing creativity to the whole team._

[0] [https://news.ycombinator.com/item?id=2557422](https://news.ycombinator.com/item?id=2557422)

[1] [https://fr.wikipedia.org/wiki/Fabrice_Bellard](https://fr.wikipedia.org/wiki/Fabrice_Bellard)

[2] [http://www.amarisoft.com/?p=about](http://www.amarisoft.com/?p=about)

<comment><USER7> He is one of the most genius programmers of our time, for sure. He achieved so many great things in his career. More than most people achieve in life. See: [https://en.wikipedia.org/wiki/Fabrice_Bellard](https://en.wikipedia.org/wiki/Fabrice_Bellard)

</comment></comment></comment><comment><USER8> Don't judge it too much by the speed of the JavaScript demo. The (host) native emulator is ridiculously fast.

<comment><USER9> Considering it's a RISC emulator running on top of an x86 emulator running in JS, the slowness is perfectly understandable

But when running the 128bit demo I get a funny value for sqrt(2) in fp64 mode: 1.728102266788482

</comment></comment><comment><USER10> It would be nice to add the 64- and 128-bit DFP (Decimal Floating Point) support to this. The Intel DFP library can be dropped in, similar to how SoftFP was used for floating point: [https://software.intel.com/en- us/articles/intel-decimal-floa...](https://software.intel.com/en- us/articles/intel-decimal-floating-point-math-library)

The RISC-V spec mentions it supports this in the "L" Standard Extension for Decimal Floating-Point.

<comment><USER11> There's no actual spec.

Although there is discussion about creating one if you want to join the ISA- dev mailing list.

<comment><USER3> There certainly is: [https://riscv.org/specifications/](https://riscv.org/specifications/)

I read it about a year ago and found it straightforward and clean.

Are you making a technical point about stuff missing?

<comment><USER11> I'll wait while you go and actually read the "L" section of the spec you linked to.

<comment><USER3> Got it. You were indeed making a technical point and chose snark over clarity. Thanks.

<comment><USER12> I thought it was clear that "there's no actual spec" referred to decimal and not risc-v as a whole. It's an important non-nitpick point.

<comment><USER13> I don't [edit: think] "there is no spec [for the CPU]" was an unreasonable interpretation for that comment, even if "[for decimal floating point]" was the intended meaning.

<comment><USER12> There was some ambiguity, and the interpretation is understandable.

Dismissing it as a "technical point" and implying that kobeya never should have commented is not.

<comment><USER13> Yes, that is also true.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> I suspect the in-browser version of this running Linux is probably considerably more powerful than the machine I first used Unix on - an HLH Orion.

</comment><comment><USER15> Fabulous work! Is there a way to change the size of the disk image? Or do I have to bake a new one, according to Yocto/OpenEmbedded RISC-V Port for instance?

[https://github.com/riscv/riscv-poky](https://github.com/riscv/riscv-poky)

</comment><comment><USER16> He quietly updated both the source tarball and the disk image after this story was posted (from "2016-12-18" to "2016-12-19"). It looks like there were mostly some changes to the block device code.

<comment><USER16> The disk image has been updated again, to "2016-12-19.1".

</comment></comment><comment><USER17> Fabrice Bellard is a genius.

</comment><comment><USER18> He's done so much work on QEMU I would just naturally assume it would be included there. Why create a separate emulator?

<comment><USER19> Fabrice is not active in QEMU anymore (and has not been fur almost 8 years now).

Without having looked at the code, I would guess that it wasn't worth the effort of being the first 128-bit target on a core that is based on JIT compilation and supports 32-bit hosts.

</comment></comment><comment><USER20> No github/bitbucket/gitlab/etc.?

<comment><USER21> I think this is an interesting question. Does Bellard use a VCS?

<comment><USER19> QEMU used svn, but that was when everybody did, so don't judge him from that. :-)

</comment></comment></comment><comment><USER22> Bellard strikes again :)

</comment><comment><USER23> I understand that designing processors is fun, but I hold several things against RISC-V:

\- the assembler dst, src backward syntax (like intel);

\- the fact that this processor design is being aggressively pushed here (featured several times already);

\- the fact that the instruction set is non-orthogonal (32-bit fixed encoding makes the decoder simple, but creates the same load-store problem as on SPARC - hello non-existent, synthetic instructions!);

\- the fact that they could have extended the open source UltraSPARC T-series design, but decided to just re-invent the wheel all over again. How does 128-bit support justify starting from scratch, and not re-using what is already there and open sourced?

The last point is their biggest sin, in my view. There is already an open source processor design, and a good, solid design, and they just went ahead and invented their own anyway. All the lessons about reuse went out of the window. We're the only industry that I know of that keeps nuking itself and starting from scratch, throwing away all the work which had been done before.

Oh, and I seriously dislike the instruction mnemonics. To the authors of RISC-V:

couldn't you have made the mnemonics MC68000 compatible, or at least make them similar?

<comment><USER2> To address a couple of these points:

\- Assembler syntax is a matter of personal preference. I also loved programming the 68K, writing OS-9/68k drivers back in 1990. However the vast majority of even kernel/embedded programmers rarely touch assembler these days.

\- SPARC & register windows. A very unfortunate design choice in hindsight. The RISC-V ISA developers have paid very close attention to existing designs, and other ISAs and microarchitectures are frequently referenced. Have a look at the discussions on the ISA-Dev mailing list: [https://groups.google.com/a/groups.riscv.org/forum/#!forum/i...](https://groups.google.com/a/groups.riscv.org/forum/#!forum/isa- dev)

\- RISC-V is trying to avoid patents, so they cannot necessarily reuse existing ISAs, even open ones.

<comment><USER24> Based on your behavior in this comment thread -- downvoting comments that give valid criticism of the RISC-V ISA -- I have to conclude that the reason the RISC-V folks chose not to reuse a patent-unencumbered ISA such as SH2 or MIPS32 (minus the unaligned load-store instructions) is simple vanity.

<comment><USER19> What does _your_ comment add to the discussion, and what is the proof of what you are attributing to the user?</comment></comment></comment></comment>


PyPy.js: A fast, compliant Python implementation for the web - <AUTHOR> http://pypyjs.org/ <comment><USER2> This is glorious. From [https://github.com/rfk/pypyjs/blob/master/CONTRIBUTING.rst](https://github.com/rfk/pypyjs/blob/master/CONTRIBUTING.rst) :

> We have the following major components in the PyPy repo:

>> An "emscripten" build platform definition, which teaches pypy's rpython toolchain how to compile things with emscripten: ./deps/pypy/rpython/translator/platform/emscripten_platform/.

>> An rpython JIT backend that emits asmjs at runtime: ./deps/pypy/rpython/jit/backend/asmjs/.

>> A "js" builtin module for the resulting interperter, to allow interaction with the host javascript environment: ./deps/pypy/pypy/module/js/.

>Along with these wrappers to help working with the resulting interpreter:

>> A wrapper to load up the compiled VM and expose it via a nice javascript API: ./lib/pypy.js.

>> A script for bundling python modules into an indexed format that can be easily loaded into the browser: ./tools/module_bundler.py.

In [https://github.com/rfk/pypy/blob/master/rpython/jit/backend/...](https://github.com/rfk/pypy/blob/master/rpython/jit/backend/asmjs/assembler.py) alone, there are 2887 lines of custom Python code to emit asm.js for function and block JITing.

And at 3.26 seconds to initialize from cache on a 4-year-old machine, 5MB gzipped (not too much worse than your average high-quality gif) and only 1.5x slower than CPython... this is actually approaching viable if you needed to run Python business logic in the browser. Which I never thought I would see.

<comment><USER3> Glorious indeed. At least three levels of abstraction, two JITs, and a host of supporting code. Can we add some more layers like an emulator or get recursive by getting something like Pyasm running inside it?

<comment><USER4> I work on a machine that has two hypervisors, one third in plan, and more abstraction layers than a lasagna software.

It is still very very efficient.

<comment><USER5> How can you have multiple hypervisors...? Do they both run in ring -1?

<comment><USER6> Heh, that could be a good trick against hypervisor malware. Just run inside your own hypervisor...

</comment></comment></comment></comment></comment><comment><USER7> I watched the presentation in Pycon 2015[1], and I really liked how honest/aware they are about the challenges and tradeoffs (so far, the performance it's pretty bad compared to javascript, and the download size is still an issue). At the end is answered why python can't be directly included in Firefox or other browsers(the presenter/main developer works for Mozilla)

[1][https://www.youtube.com/watch?v=PiBfOFqDIAI](https://www.youtube.com/watch?v=PiBfOFqDIAI)

<comment><USER8> _> python can't be directly included in Firefox or other browsers_

So Python is a bad candidate, but there are better candidates out there. For example, jsofocaml (using OCaml in the browser) looks quite promising.

In the end, we need a lightweight yet properly defined and highlevel language, and the ML languages as well as the LISP languages are great candidates for that.

<comment><USER9> Purescript is a Haskell-like language that is designed to output to javascript. It looks quite nice and has seen a lot of attention lately. It's even in GSoC.

<comment><USER10> The problem I have with "output to Javascript" languages is that debugging becomes hell. Line numbers no longer correspond to each other, for example.

A slightly less-hellish but still annoying problem is that I often poke at things directly from the console when bugs happen, and this helps me a lot in debugging. However poking at the console requires using JavaScript, which is fine, but it would drive me nuts to have to code in one language (e.g. CoffeeScript, TypeScript, Python) and debug in another (JavaScript) and switch my brain back and forth every few minutes. So I've ended up largely sticking with writing code directly in JavaScript.

Any good solutions to this? Are there replacements to the Chrome JavaScript console that supports those other languages?

<comment><USER11> Are you using source maps? If so, you can actually put breakpoints in your other source and Chrome will still break on it. I've even done this with Scalajs.

</comment></comment></comment></comment></comment><comment><USER12> Besides the big download size, it does several things very "right": Full Python data model, access to the full javascript model (albeit slowly currently).

Also PyPy is the right choice as the basis for this (as opposed to CPython) because its ecosystem is generally more "pure" Python than CPython's. C Extensions would only get in the way.

<comment><USER13> it's systematically translating the PyPy interpreter to the Javascript, so it _has_ to get semantics right. However I'm not sure if the drawbacks can be addressed in the current JS model, notably: very slow warmup, huge download size (that's primarily PyPy fault though), the lack of good JS access.

<comment><USER14> > However I'm not sure if the drawbacks can be addressed in the current JS > model, notably: very slow warmup, huge download size

Only for the first time loading it.

It would be great if some big organization (looks at Google) hosts the "standard" version of the file, much like jquery, so that it would be cached and ready to be used on the local machine most of the time.

<comment><USER13> I believe this only addresses the download size and not the crazy warmup (you still reparse it etc.)

<comment><USER15> Not quite. At least Firefox caches compiled asm.js.

<comment><USER13> You can't cache JITted code (so JIT produced by pypy.js) because it'll be different each time.

<comment><USER15> Ah, sure.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> So does this mean that since I'm better at Python than Javascript, I can now use this to make my web frontends in Python? Because that would be pretty sweet.

<comment><USER17> weren't you already able to do it with pyjamas/pyjs?

<comment><USER16> Quite possibly. To be honest I never looked into it.

<comment><USER18> Being a Python guy myself, the problem was never the lack of Python in the browser, it's always the lack of a Python _ecosystem_ in the browser. If I'm going to use Python and awkwardly interface with JS, I might as well just use JS.

It makes me want to gouge my eyes out, but it's not really that hard to get productive in. CoffeeScript is even better, if you aren't averse to adding another dependency on top of everything else.

</comment></comment></comment></comment><comment><USER19> Sample code to execute some Javascript code inside PyPy.js. I couldn't find any examples.

        import js
        js.eval("console.log(\"hi!\")")

<comment><USER20> It's a bit messy, but:

        js.eval('var div = document.createElement("div"); div.style.width = "100px"; div.style.height = "100px"; div.style.background = "red"; div.style.color = "white"; div.innerHTML = "Hello"; document.body.appendChild(div);');

manages to append a div.

\--

Directly modifying document.body.innerHTML in any way seems to hang it. Both:

        js.eval('document.body.innerHTML += "

";');
        js.globals.document.body.innerHTML += "

"

Cause it to hang, though the javascript console shows it was added (or using an img tag instead).

(ChromeOS v43 beta)

<comment><USER21> It's more fun doing this, since jQuery is already on the page:

        import js
        jq = js.eval("$")
        first_line = jq(jq(".container p")[0])
        first_line.text("jQuery was here")

</comment></comment></comment><comment><USER22> I think there is no point in trying to emulate different language semantics on top of JavaScript.

asm.js is a weird hack that lives in a totally different world than actual browser APIs (e.g. the DOM), and you have to emulate your entire runtime and environment to get anything useful, which means your binary is going to be huge (as in this example, but similar things apply).

Emulating better semantics than JS based on JS usually leaves you in this uncanny valley where you either trade off performance and size for nicer semantics (e.g. killing the null/undefined dichotomy, or 64 bit integer math), or you end up with odd semantics that don't quite fit the language you're compiling from, or a mix of both, which is a usability disaster.

So the only real chance to improve on the state of JS is being a syntactical shim on top of JS and help users with better syntax, static analysis, and compile time tooling. That'd be TypeScript.

<comment><USER20> > That'd be TypeScript.

Or CoffeeScript. Or Dart. Or this. In fact, here's a whole big long list of other languages. Most of which don't use the asm.js "weird hack".

[https://github.com/jashkenas/coffeescript/wiki/List-of- langu...](https://github.com/jashkenas/coffeescript/wiki/List-of-languages- that-compile-to-JS)

<comment><USER23> _one weird hack_ to run assembler-like code in the browser!

 _developers hate him!_

</comment></comment></comment><comment><USER24> Looks like there are some issues to iron out...

      >>> from datetime import datetime
      >>> datetime.now()
      Traceback (most recent call last):
        File "<console>", line 1, in <module>
        File "/lib/pypyjs/lib_pypy/datetime.py", line 1548, in now
          return cls.fromtimestamp(t, tz)
        File "/lib/pypyjs/lib_pypy/datetime.py", line 1522, in fromtimestamp
          result = cls(y, m, d, hh, mm, ss, us, tz)
        File "/lib/pypyjs/lib_pypy/datetime.py", line 1459, in __new__
          hour, minute, second, microsecond)
        File "/lib/pypyjs/lib_pypy/datetime.py", line 312, in _check_time_fields
          raise ValueError('microsecond must be in 0..999999', microsecond)
      ValueError: ('microsecond must be in 0..999999', 1716000)

<comment><USER25> That works now.

<comment><USER24> Does it?

      >>> from datetime import datetime
      >>> datetime.now()
      Traceback (most recent call last):
        File "<console>", line 1, in <module>
        File "/lib/pypyjs/lib_pypy/datetime.py", line 1548, in now
          return cls.fromtimestamp(t, tz)
        File "/lib/pypyjs/lib_pypy/datetime.py", line 1511, in fromtimestamp
          us = _round(frac * 1e6)
        File "/lib/pypyjs/lib_pypy/datetime.py", line 28, in _round
          return int(_math.floor(x + 0.5) if x >= 0.0 else _math.ceil(x - 0.5))
      ValueError: cannot convert float NaN to integer

</comment></comment></comment><comment><USER26> Sadly, "import antigravity" doesn't work

<comment><USER27> I was more disappointed (but not surprised!) that "import pip" didn't work.

If it did (and it has big ramifications for how much of "python" (for some definition of "python" that includes most of the standard library) works. Eg sockets, interacting with some sort of "local" "file-system" etc) one could (this is handy if working on windows, and running python via cmd-r python.exe):

      import pip
      # pip.main expects a list of arguments, hence .split()
      pip.main("install ipython".split())
         # Only needed first
         # time, as it installs ipython under site-packages.
         # Only works if the user has write access, obviously

      import IPython
      IPython.start_ipython()

<comment><USER28> That would be a total security nightmare and hopefully it's never going to happen.

I'd be happy enough with serving .py files with the exact same restrictions and privileges that JS libraries have now.

<comment><USER20> > That would be a total security nightmare and hopefully it's never going to > happen.

Why? You're assuming a lot of things about a hypothetical implementation that is going to have heavy restrictions on in anyway since it's running in the javascript sandbox.

</comment></comment></comment></comment><comment><USER29> I can imagine a way to include language extensions in the browser and have them loaded up lazily in a sandbox. And a checkbox that says "Allow websites to run code" or something. Then you could develop an extension for your favourite language and either install them manually or have some popular ones bundled with the browser.

If we're going to run everything in the browser, why use javascript as the low-level language that stuff compiles to?

I know portability and existing standards are a limitation, but those can be influenced by the 3 (?) major browsers if needed.

I think asm.js is an awesome cute little thing, but the fact that it's taken seriously is worrisome to me.

Am I completely crazy here?

</comment><comment><USER30> If software is eating the world, JavaScript is eating the languages.

<comment><USER31> Only because the browser vendors are too scared (for whatever reason, legitimate or otherwise) to add extra languages to the mix, like python.

<comment><USER30> _" vendors are too scared (for whatever reason, legitimate or otherwise) to add extra languages to the mix, like python."_

Tried python server-side, mod_python and got lots of issues with formatting. Not syntax or mixed tab/spaces but one-off spacing errors. I realised then, Python used this way has problems. Could be fixed though.

<comment><USER31> One-off spacing errors? That doesn't sound right at all... Do you have an example?

<comment><USER30> ages ago @zo1, I do see similar problems now if I shift from *nux/vim toolchain to win/idle which by default uses 'Python standard: 4 spaces!' but still throws random format error parsing on default code edits.

I don't like the fact python code stops working randomly if I write it in one environment then touch (edit) in another. Never have this problem with C or JS.

<comment><USER32> I have only ever had issues like that when I worked on an actual Python checker where I had to keep BAD code in my tests to ensure the checks worked.

I've never ( read 99.999% of the time I've performed the task ) had issues with Python formatting that weren't my own fault, everyone makes mistakes after all. I routinely edit the same Python files in Vim, Nano, Sublime Text, Atom, and PyCharm, and even jumping between all those editors, they have never "damaged" the formatting and created syntax errors in my code.

I can only surmise that some of the things you used or even just your vim config was setup poorly for Python work.

<comment><USER30> _" I routinely edit the same Python files in Vim, Nano, Sublime Text, Atom, and PyCharm, and even jumping between all those editors, they have never "damaged" the formatting and created syntax errors in my code."_

Do you routinely change OS?

</comment></comment></comment></comment></comment></comment></comment><comment><USER33> Please humour my lack of knowledge: is there much difference between something like this and Opal[0]?

[0] - [http://opalrb.org](http://opalrb.org)

<comment><USER34> PyPy.js is not a transpiler, it is a JITted interpreter. This has correctness advantages since the major work is upfront, and potential throughput advantages, but is results in huge upfront download and warmup costs.

</comment></comment><comment><USER35> Not working for me:

"Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at [http://10.30.229.27:15871/cgi-bin/blockpage.cgi?ws- session=1...](http://10.30.229.27:15871/cgi-bin/blockpage.cgi?ws- session=18446744072937828300). This can be fixed by moving the resource to the same domain or enabling CORS."

Firefox 37.0.1

</comment><comment><USER36> Obligatory link to Atwood's Law: [http://blog.codinghorror.com/the-principle- of-least-power/](http://blog.codinghorror.com/the-principle-of-least-power/)

Although I appreciate that this isn't technically "written in JavaScript" but it follows the principle.

</comment><comment><USER37> I'm curious -- since the custom emitter is tied to the RPython JIT and not to the Python interpreter, could one easily plug in the existing Ruby or PHP interpreters written in RPython and get similar performance?

</comment><comment><USER38> Unfortunately, this is of little use to me. Why? Well, with my Swedish keyboard layout, some alt-combinations are crucial (mainly square brackets, []). And these keypresses do not seem to work.

<comment><USER34> You can try `vm.eval` from the JS console.

</comment></comment><comment><USER39> >>> def foo(x,y):

... return x,y

debug: OperationError:

debug: operror-type: SyntaxError

debug: operror-value: ('EOL while scanning string literal', ('c callback', 1, 12, "r = c.push('def foo(x,y):\n", 0))

>>>

</comment><comment><USER40> I use Skulpt for a lot of my research - I'd love to see a comparison against it in terms of speed, accuracy, etc.

</comment><comment><USER41> Can the client-side python access the DOM?

<comment><USER42> yes it can: import js js.globals.document.getDocumentById("...")

</comment></comment><comment><USER43> Is there a Python 3 version of this?

<comment><USER42> Yes, in his talk at [https://www.youtube.com/watch?v=PiBfOFqDIAI&t=1355](https://www.youtube.com/watch?v=PiBfOFqDIAI&t=1355) Ryan Kelly already showed a Python 3 version of pypy.js

</comment></comment><comment><USER44> How is this different than Brython or Skulpt?

Also python implementations that run in the browser.

[1] skulpt.org [2] brython.info

</comment><comment><USER45> The next level is to run a Python implementation of JavaScript inside that...

</comment><comment><USER46> Doesn't seem to work well on chrome on a modern tablet.

</comment><comment><USER47> This is pretty cool.

</comment><comment><USER48> 6.6 Megs of binary blob download (pypy.vm.js.mem). Plus 593K of index.json. Yuck.

Curious. Interesting tech. But hardly practical.

</comment><comment><USER49> This is super awesome.</comment>


Cassius Coolidge's paintings of dogs playing poker - <AUTHOR> https://www.artsy.net/article/artsy-editorial-painting-dogs-playing-poker-endured-100-years <comment><USER2> > Many art historians credit him with inventing "comic foregrounds," those > plywood pictures with a cut-out hole for a head, allowing passersby to > pretend they're bodybuilders or mermaids.

Comedian James Acaster did a bit about "pictures that you put your head in", joking that everyone knows of them, yet there's no name for them because (or therefore?) they're never talked about. But apparently there is after all, even coined by the person who invented them. And _of course_ such a kitschy thing was invented by the guy who painted "dogs playing poker".

</comment><comment><USER3> Lots of things are kitsch, and these paintings could be considered the epitome of kitsch, but there's other dimensions of analysis - whimsy, memorability among them, where these works have massive success.

I'm waiting for someone to mention Thomas Kinkade, there's definitely some spiritual connection that I'm unable to articulate but maybe others can.

</comment><comment><USER4> The best thing about these paintings is the observation of dogs' personalities and how they can match up so well to human personalities. You could substitute cats, but because dogs are usually more gregarious and eager it just makes more sense. Anthropomorphism at its finest.

</comment><comment><USER5> Now, we're "Business Casual"; but, many, many years ago, we started having "Causal Fridays." I opted for a necktie showing "A Friend in Need," the painting at the top of the article.

</comment><comment><USER6> I've always liked those paintings!

</comment><comment><USER7> To think of that, when it goes against all the laws of nature.

</comment><comment><USER8> My grandma had one of these in the den near the pool table.</comment>


The Peel P50: 132 lbs and street-legal in England - <AUTHOR> http://homepage.ntlworld.com/andy.carter/ <comment><USER2> Anyone who saw _Top Gear_ last week will know these things are hilarious, especially if you're Jeremy Clarkson's size.

</comment><comment><USER3> Imagine a car accident in one of these... ugh.

<comment><USER4> They can't go fast enough to cause an accident =P But then, modern cars could overlook these little ones and run them over.</comment></comment>


Android Tops U.S. Smartphone Buys, Windows Phone Still Struggling - <AUTHOR> http://www.pcmag.com/article2/0,2817,2407103,00.asp

<comment><AUTHOR> The takeaway ...

"Microsoft is still struggling to make a dent in the mobile market. Its aging Windows Mobile platform actually outpaced the newer Windows Phone at 3 percent vs. 1.3 percent, Nielsen found. Despite Microsoft's close ties to Nokia, meanwhile, most Windows Phone users are using Samsung or HTC devices, both capturing 0.5 percent to Nokia's 0.3 percent."

On Amazon, you can buy a 2 year service contract for a Lumia phone and it costs just a penny for the phone. Are they actually dumping excess inventory?</comment>


WebTransport API - <AUTHOR> https://wicg.github.io/web-transport/ <comment><USER2> A lot of people here seem confused why this is needed or wanted with WebRTC. I sat in the BOF session at IETF 106 in Singapore last year when we talked about this. Happy to answer any questions as I understand them. (Though I'm no expert.)

I can't find the video link, but the slides from that session are here: [https://datatracker.ietf.org/meeting/106/materials/slides-10...](https://datatracker.ietf.org/meeting/106/materials/slides-106-webtrans- webtrans-bof-slides-03)

Webtransport is designed as a 'QUIC-native' client-server communication protocol to replace websockets. You can think of it like websockets but better (faster handshake, it reuses the http2 / QUIC connection, and you can relax websocket's reliability & ordering constraints). Or you can think of it as WebRTC, except way simpler for the 95% case where you want to communicate server/client.

I'm excited about it for browser based video games.

It looks complicated, but there's very little thats new here for browsers and web servers to implement. Remember QUIC is already built on top of UDP, and internally, QUIC supports basically all of webtransport's features natively. Webtransport mostly just re-exposes many of QUIC's features to applications. Browsers and HTTP servers are adding all that functionality anyway - so we may as well take advantage of it in our web applications.

My favorite criticism voiced at the IETF was the name - webtransport has nothing to do with the web, and its not a transport. Its mostly just an application API around some of QUIC's features, with fallbacks for HTTP 1.1 and HTTP2.

<comment><USER3> Isn't http2 basically a replacement for websockets already? It's bidirectional. Has streams. Just missing a way to create a stream in browser iirc.

<comment><USER4> You are right. If browsers would expose APIs which would allow to access request and response bodies in a streaming fashion then HTTP/2 (and actually even HTTP/1.1 with chunked encoding!) can be alternatives to websockets.

The remaining difference would be websockets having builtin frame delimiters and a meaning of text and binary frames - whereas with HTTP streams you would need to do that on the appliction level.

Getting Streaming APIs for HTTP was planned to be part of the ReadableStream and WritableStream extensions for fetch - but I have no idea how that effort went since I last looked at it (5 years ago).

<comment><USER3> You can read the response body as a stream, so that part works. You can't (last I checked) write to your request body. That's the only missing piece.

</comment></comment></comment></comment><comment><USER5> Folks who are interested in the WebTransport API may find it easier to read the "explainer" document. [https://github.com/wicg/web- transport/blob/master/explainer....](https://github.com/wicg/web- transport/blob/master/explainer.md)

It addresses a number of the top comments here, e.g. why not just use WebRTC data channels:

"While WebRTC data channel has been used for client/server communications (e.g. for cloud gaming applications), this requires that the server endpoint implement several protocols uncommonly found on servers (ICE, DTLS, and SCTP) and that the application use a complex API (RTCPeerConnection) designed for a very different use case."

</comment><comment><USER6> The WebTransport API looks to bring WebSockets up to speed with similar features provided by WebRTC: reliable or unreliable connections and multiplexing. The addition of a Stream interface means it will be efficient for uploads and downloads too.

I can see this replacing most use cases of WebSockets once brought to ubiquity.

<comment><USER7> Do you know the answer to "Why not just use WebRTC?"? I am used to documents like this having an explanation of the "why", but I am not seeing it here (or an extra stupid today).

<comment><USER6> I use WebRTC and WebSockets in a side project of mine [0]. WebRTC requires coordination of multiple services and fallbacks (relay servers) when peers can't establish a direct connection due to firewalls among other things.

STUN, TURN, and ICE are a few technologies you need to understand to get started with WebRTC. I'd guess most folks aren't familiar when first looking into it.

The complexity is worth it if you're determined to push most bandwidth costs to clients like I am.

If you want near 100% connectivity at a lower complexity, WebSockets are almost always preferred.

[0] [https://github.com/samuelmaddock/metastream](https://github.com/samuelmaddock/metastream)

<comment><USER6> Additionally, during the 3 years I've had experience with WebRTC, I've come across at least 2-3 browser bugs causing compatibility issues when connecting peers cross-browser.

This is just not something you run into with WebSockets.

I'd recommend simple-peer for anyone who does choose to use WebRTC. The maintainers are usually able to smooth these issues out in a reasonable timeframe. <3

[https://github.com/feross/simple-peer](https://github.com/feross/simple-peer)

<comment> Sean-Der I don't think the issues with WebRTC is the protocol, but the tooling. The community did a really good job of creating tooling for Websockets with stuff like [https://github.com/crossbario/autobahn- testsuite](https://github.com/crossbario/autobahn-testsuite). There is nothing like that for WebRTC.

We tried to do it, but the IETF event was cancelled [https://twitter.com/steely_glint/status/1230447935307026432](https://twitter.com/steely_glint/status/1230447935307026432). I am hoping that in the next 6 months we can have something like that so that all the WebRTC implementations will work together a lot better.

</comment></comment></comment></comment></comment><comment><USER8> How is this expected to work for apps that having a webserver fronting the app that terminates TLS/QUIC/HTTP3 and proxies over fastcgi/http1.1/h2c for example?

Specifically, how would this work for say, a PHP app that wants to stream stuff? I use [https://reactphp.org/](https://reactphp.org/) for websockets in PHP (so I can have a shared codebase with my main app, etc).

I don't think I understand how this would look on the server-side. I'm interested to understand how it would look like to support this in Caddy (I'm one of the core contributors).

</comment><comment><USER9> If you need real-time both-ways communication in the browser you could look at Comet-Stream (since IE7 is now in all practical senses gone). It's simpler, consistent and scales like a monster on the server:

[https://github.com/tinspin/rupy/wiki/Comet- Stream](https://github.com/tinspin/rupy/wiki/Comet-Stream)

The only thing that is annoying in the browser is that Chrome does not allow you to remove or change the User-Agent header which wastes a little bandwidth.

<comment><USER10> What is the benefit of this over WebSockets? More generally, what is it even, and what problems does it solve?

<comment><USER9> It uses HTTP/1.1 so it goes through all firewalls and the server implementation is simple enough for it to be rock solid and it scales with "joint parallelism" which only Java can do because of the complex memory-model and VM.

Rupy is a complete beast in terms of multi-core power, as long as the selector thread is not saturated it can scale linearly on all cores on shared memory = no memory copying or locks like all other solutions!

But the real upside is you get one process for async. HTTP (client and server), including database; which means you can use micro services the way they should be used by hosting all services on all machines and call them locally = more robust and less complex (no discovery after the initial client -> server DNS) completely without IO-wait!

WebSockets are completely over-engineered, as is HTTP/2 and 3...

So to answer your question: rupy is the final solution to internet servers. ;)

Now I'm working on the final solution for internet clients: [http://talk.binarytask.com/task?id=5959519327505901449](http://talk.binarytask.com/task?id=5959519327505901449)

And internet 2.0: [http://radiomesh.org](http://radiomesh.org)

And the final computer: [http://talk.binarytask.com/task?id=8015986770003767235](http://talk.binarytask.com/task?id=8015986770003767235)

<comment><USER11> What do you mean by joint parallelism?

<comment><USER9> Most parallel systems are embarrassingly parallel = they are trivial to distribute in the first place = you could run them on separate machines.

Joint parallel is the opposite of that, where you need very fast shared memory between the cores. Meaning all cores touch all data, it's a rarer form of parallelism because it is hard.

But if you want to write a MMO server f.ex. you need to understand how this works all the way down to the hardware.

<comment><USER11> Ok. I think fine-grained parallelism is the established term for this.

<comment><USER9> Partly, but "fine-grained parallelism" refers to how small you can make the sub-parts of the parallel execution and then adds "Another definition of granularity takes into account the communication overhead between multiple processors or processing elements." which is confusing! t compute / t communicate (where communicate probably does not differentiate between memory copy and waiting for memory due to a lock or cache-miss)?

According to that definition If you have a really tiny task that has fast memory (embarrassingly parallel + little memory) and a huge task that has really slow memory they are the same (1/1 == 100000/100000) so really what does that definition say!

Also it seems only instruction levels of parallelism are fine-grained. This means everything I will ever do and talk about is coarse-grained. So how can I tell people my software is 10x faster than Erlang for a MMO type of server problem space?

I'm going to access contiguous memory with 2 separate threads simultaneously without locks in C when I finalize my 3D MMO engine client this fall and then I'll understand more on how these things really work, right now I'm a little confused.

I think "Joint Parallelism " is more telling, it puts focus on the bottle neck of our civilization which is / and will always be: memory speed!

F.ex. Erlang is completely meaningless for "joint parallelism", because it uses memory copying instead of monitors/locks and even there Java can be even more performant according to the creator of the Java concurrency package:

"While I'm on the topic of concurrency I should mention my far too brief chat with Doug Lea. He commented that multi-threaded Java these days far outperforms C, due to the memory management and a garbage collector. If I recall correctly he said "only 12 times faster than C means you haven't started optimizing"." \- Martin Fowler ([https://martinfowler.com/bliki/OOPSLA2005.html](https://martinfowler.com/bliki/OOPSLA2005.html))

I have mailed Doug to get an explanation, but the only thing I can tell you is that my implementation of what he talks about in that quote is proof that he is right. How he is right, I still don't totally understand! He hasn't and probably wont reply though!

More worrying is the memory copying that the kernel is doing, I think the last step for computing advances is to go back and simplify the OS.

My prediction is that we will get kernel bypass for network IO pretty soon and disk IO will follow after that, at least for servers.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> finally a specification for datagrams, unordered and unreliable ! This was one of the big struggles of bringing mmo to the browser. DatagramTransport seems really promising as it provides encryption and congestion control which are the most complicated parts of any netcode. Good luck !

<comment><USER13> SCTP already provides that in WebRTC.

<comment><USER14> But requires a lot of mucking around with STUN/TURN/ICE, which is far less desirable than just "send UDP packets to a browser".

<comment><USER15> You don't need to use STUN and TURN for client->server use cases, but you do need ICE, DTLS, and SCTP.

</comment></comment></comment></comment><comment><USER11> I think this is harmful for the internet because we need webrtc to become more ubiquitous, to keep it from being blocked at firewalls.

Also webrtc functionality is a superset of this so it's not a technically necessary protocol.

<comment><USER15> If anything, an increase in the use of QUIC will reduce the amount of UDP blocking, which would be good for WebRTC.

<comment><USER11> I think UDP is often whitelisted by port in these cases and rarely blanket blocked, as dns, VPN protocols etc are still needed. So quic, webrtc, and webtransport all have their own battles.

</comment></comment></comment><comment><USER16> To my understanding, the ability to perform browser-to-browser communication with WebTransport API is not touched by the document. Is my reading right?

<comment><USER15> That's in a separate doc. Search for "RTCQuicTransport".

</comment></comment><comment><USER17> Really glad to see people excited about this!

If anyone is wondering if this is already implemented anywhere, we're currently experimenting with it in Chrome: [https://web.dev/quictransport/](https://web.dev/quictransport/) \-- I'd be curious to hear what people think about it.

</comment><comment><USER18> Could PJON [https://github.com/gioblu/PJON](https://github.com/gioblu/PJON) be used as one of the underlying pluggable protocols? It would be cool to be able to use the browser along with an open-hardware physical network infrastructure.</comment>


Snowden may be granted entry to Russia Wednesday - <AUTHOR> http://rt.com/news/snowden-russia-asylum-request-503/

<comment><USER2> > "He plans to get a job"

Getting a letter of reference from his previous employer may turn out to be a bit tricky...

<comment><USER3> In Russia Federation, most employers don't require a letter of reference and they don't contact previous employer.

<comment><USER4> Not only Russia, most companies don't, almost everywhere in the world.

</comment></comment></comment><comment><USER5> I feel like this is more of a gateway for applying for asylum in some embassies, as required by some countries, rather than an opportunity to stay in Russia indefinitely, or at least for an year until the next renewal.

<comment> k-mcgrady I think that is his plan. He can't apply for asylum in most countries without going to their embassies and to do that he needs entry to Russia.

<comment><USER5> But its weird that Russia suddenly decided to grant him this safe pass after denying him asylum in order to maintain the relations with the USA. Could there be a hidden agenda somewhere?

<comment> k-mcgrady I don't think they ever denied him asylum, this is the first he has applied. They just said that he had to stop releasing information that's damaging to the US in order to be granted asylum.

</comment></comment></comment></comment><comment><USER6> Proud to be Russian today

</comment><comment><USER7> _Sigh_ , he probably doesn't know what he is signing for. Unless one of his friends from foreign organizations is ready to employ and shelter him, of course.

<comment><USER8> Snowden is not stupid - he knows what he's getting into. If the Russian government is offering to shelter him, it's in exchange for more information. They have no use for a mid-level sysadmin that they can't trust.

<comment><USER9> I still find it difficult to believe that the Russian government didn't have information about the US' spy programs already.

<comment><USER10> They might have. They wouldnt tell anyone what they know, or what they dont know about.

<comment><USER8> Exactly. This is an American (well, former) screaming from a soapbox that whatever USA-conspiracy theory in mind is factual. This is a free pass to use him as a puppet.

</comment></comment></comment></comment></comment><comment><USER11> It's really very unfortunate that he couldn't go to Latin America, all because US' European friends would rather break international law, and try and stop an asylum request, than let him go. I think even most accused terrorists would've had an easier time getting asylum than Snowden. In fact, I think I've just read about one getting asylum in Europe recently, and it has happened before, too.

<comment><USER12> > European friends would rather break international law, and try and stop an > asylum request, than let him go.

I am confused; I thought airspace was sovereign territory. As a country, are you not allowed to allow or deny access to anyone you wish to allow ? I am not clear where the breaking of international law comes.

<comment><USER13> Sort of. It could be considered a violation of the Universal Declaration of Human Rights, which states that "Everyone has the right to seek and to enjoy in other countries asylum from persecution."

</comment></comment></comment><comment><USER14> I really hope he takes up Anna Chapman's offer of marriage, mainly because it would be hilarious and would keep Bruce Sterling happy.

Of course it would look really bad in the US press, and mean that he would definitely be under surveillance from a known Russian spy, but that is probably better than the paranoia of maybe being under surveillance from a companion who could well be a spy, and at least he'd share some ground.</comment>


#GoogleIsntOpen - <AUTHOR>

Google often boasts that it's "open"... What do you think? <comment><USER2> First you need to define "open". Open in what way? Open source code? Open API? Open as in sharing your personal data? Open as in telling you about how it's sharing your personal data? Open as in data portability? Open as being honest about its business plan? Open to ideas? Open to being open? etc.

edit: generally speaking, so that I don't seem like a complete douche and give you some form of answer rather than answering you with a bunch of questions, Google "feels" more open than say, Apple or Microsoft, but that can be because of good PR.</comment>


New antibiotic kills off persistent infections - <AUTHOR> http://phenomena.nationalgeographic.com/2013/11/13/killing-sleeper-cells-and-superbugs-with-assassin-janitors/ <comment><USER2> Some background, based on quick research, not personal knowledge, so please correct if anything's wrong:

This class of antibiotics, ADEP, was discovered as a naturally produced substance isolated from the bacteria _Streptomyces hawaiiensis_ in 1985 ( _Streptomyces_ has been a fertile source of naturally occurring antibiotics). After some promising results, there was work on synthetically synthesizing it and producing "optimized" synthetic variants. ADEP4 is one of those, and was reported in a paper published in 2005. There's a short 1-page summary of that work in _Nature Reviews Drug Discovery_ 4: 957. See page 19 of this PDF, article "Peptide power": [http://journals2005.pasteur.ac.ir/NR/4%2812%29.pdf](http://journals2005.pasteur.ac.ir/NR/4%2812%29.pdf)

There's a lot of work trying to understand its mechanism, e.g. here's one open-access paper that also has some background: [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2955292/](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2955292/)

Here's the paper discussed in the linked article, unfortunately paywalled, but with an abstract available that's actually a good summary: [http://www.nature.com/nature/journal/vaop/ncurrent/full/natu...](http://www.nature.com/nature/journal/vaop/ncurrent/full/nature12790.html)

<comment><USER3> > isolated from the bacteria Streptomyces hawaiiensis in 1985 ... ADEP4 is one > of those, and was reported in a paper published in 2005 ... [potential > trials in coming years]

Gives an idea of the sort of development timescale we're talking about. It's almost 30 years from isolation to this point. Clinical trials would take another 10-15 years. So, if all goes well, that's 40 years from the initial discovery until a doctor starts making up prescriptions.

</comment></comment><comment><USER4> The most understated portion of the article is that there is a method discovered that can kill biofilms. The discovery of new antibiotics and delivery techniques leaves me less optimistic for long-term change in the availability of life-saving antibiotics. I suspect bacteria can, and will, evolve around almost any mitigating technique we develop.

Yet I'm optimistic, because tools that crack biofilms are a new are of development and promise hope for exploring new attacks on bacteria. Current methods of biofilm dispersal are application of strong acids and bases or an autoclave. You can't treat a hospital room with an autoclave, and comprehensive treatment of a room with very strongly ionizing agents has its own risks. There are other, experimental methods, but all are worth examining.

I hope research like this continues.

<comment><USER5> >I suspect bacteria can, and will, evolve around almost any mitigating technique we develop.

That's a baseless suspicion. Bacteria are ultimately bound by physical laws, and while they've proven resilient, there's no reason to suggest we will be unable to develop the means to annihilate them at will. Humans are creative - bacteria just evolve fast.

I agree about the importance of the biofilm claim, but what they don't explain is how they actually achieve this. Their method of disabling that particular protein doesn't directly address the problem of the biofilms having a less- permeable extracellular matrix.

<comment><USER4> The problem of killing bacteria, as I see it, will increasingly become something akin to the demarcation problem of philosophy. Why would it not be? It is natural that the optimal situation for pathogenic bacteria to be in is one in which they are indistinguishable from necessary cells. It may take an extraordinarily long time, but until we are able to completely eradicate a pathogenic bacteria _from the earth_ , we will remain in that arms race.

Humans are creative at killing bacteria, though it's already not difficult to "annihilate them at will". It's much harder to annihilate only the ones we don't like, only the ones that harm us, and only the ones that pose the greatest risk.

<comment><USER6> I feel a more likely future scenario is one in which we create cell-sized robotics that we can use for very narrowly targeted operations in the human body, like treating bacteria. As the bacteria mutates, so does the targeting mechanism in the software that programs the tiny robots.

</comment></comment></comment></comment><comment><USER7> > it only works the bacteria known as gram-positives, which includes > problematic bugs like Staphylococcus

I have had one of those for almost a decade now.

> He hasn't tested it in humans yet

How long is the road ahead before it becomes available to regular patients? Should I get my hopes up?

<comment><USER8> It's going to be a long time before it is readily available for human use. Expect three, maybe four stages of clinical trials. There is also the risk that it doesn't even work in humans or has major side effects that outweigh the benefit.

This is sensationalism news, or as it is most often called, news.

<comment><USER9> I would call it a sensationalist title, but the article itself is far from sensational.

I actually found the writing to be pleasantly balanced and scientifically detailed, without jumping to unreasonable conclusions.

</comment></comment></comment><comment><USER10> If this is a novel antibiotic with any therapeutic potential, please let's outlaw feeding it to cattle by the ton.

<comment><USER11> Pretty much exactly what I was going to post. Prophylactic use of antibiotics in hogs/whatever is stupidity in a class of its' own, selectively breeding organisms on an industrial scale for resistance to the drugs we might want to use to keep us alive.

</comment></comment><comment> shawn-furyan This is an awful headline change. National Geographic's title (Killing Sleeper Cells and Superbugs with Assassin Janitors) wasn't very descriptive, but at least it didn't leave room for a headline browser to take away the false conclusion that the CDC declared public health crisis of antibiotic resistance is near resolution.

According to the article, this new antibiotic has only been tested on mice and rats. These sort of preliminary results go bust all the time, and so I think that in this case, it's irresponsible to fail to indicate that these are preliminary studies and that the effect hasn't been demonstrated in humans. This could have been achieved by leaving the title the same, or by changing it to "New antibiotic kills off persistent infections in rats".

</comment><comment><USER12> Reading about new treatments gives me a kind of anxiety: drug trials are so slow and the funding models are so removed from the actual human life-saving potential, that I just am filled with fear that this stuff will get mired in bureaucracy or otherwise defunded rather than getting FDA approved. I dread the idea that someone I know to get sick and die because we're so ploddingly slow at doing these trials.

For example: "DRACO" antivirals from MIT, were developed in 2011, and according to mouse model tests and tests on cultured human cells, is safe and effective against influenza and rhinovirus and everything else they threw at it (see [http://mackinstitute.wharton.upenn.edu/wp- content/uploads/20...](http://mackinstitute.wharton.upenn.edu/wp- content/uploads/2013/02/Rider-Todd_PANACEA-Broad-Spectrum-Antiviral- Therapeutics.pdf) for details), and yet it could be a decade before we even try to answer questions like "wait, does this cure HIV? It sounds like it might actually cure HIV"

<comment><USER13> The funding models actually aren't removed from the actual human life-saving potential. The NIH has been pushing translational research pretty heavily, and if anything there's been a fair amount of pressure on the basic science types to tie their research to something, anything that will manifest in Saving Lives.

Beyond that, it absolutely _should_ take drugs many years to come to market. Research is hard. Research on human beings is _very_ hard. You can't just take shots in the dark and hope something sticks - you have to understand how, and how well, something works. Even for the established antivirals we do have for HIV, we're still trying to figure out who to give them to and when.

</comment></comment><comment><USER14> The bacteria evolving to go dormant reminds me scale insects that damaged citrus fruits. The farmers put a giant tent over every tree and gassed them. This worked at first, but after a few years the scale insects got resistant. Whenever startled, they would sit perfectly still and hold their breath for half an hour.

</comment><comment><USER15> It's nice to know that despite all the alarmist articles about the end of antibiotics, good progress is being made. If this works, it could completely replace traditional antibiotics. In that case, I could see dozens of new drugs in this class developed by the antibiotic companies. This would be similar to the race to develop new antidepressants, HIV drugs, and erectile dysfunction drugs. Any drug you have to take over and over again is a huge draw for the pharmaceuticals.

<comment><USER8> This won't completely replace traditional antibiotics. As the article states this acts on Gram positive persister cells (a very specific group). The coming storm is from Gram negative bacteria such as Klebsiella, Actinetobacter and Pseudomonas.

There is actually very little activity occurring in the field of antibiotic drug discovery and you identified the issue; no money in drugs that someone takes for 14 days and stops. Pharmaceutical companies are driven by stockholders and therefore they want them developing drugs that someone takes for the rest of their life (anti-depressants). Much of the research for abx discovery comes from academia who struggle with budgets that are pennies compared to what Pfizer, GSK, Wyeth, Astra can afford.

<comment><USER16> You're right that it's about profits when pharma is involved, but you are wrong about the reason (otherwise vaccines would not exist). I can tell you from firsthand experience that the length of time someone is on a drug makes almost no difference in where research priorities are.

The primary issue with antibiotics is that since the late 1990's, if you succeed, and you develop the _best_ antibiotic the world has ever seen, the FDA will require it to be a "drug of last resort". It will therefore sit on the shelf and be guaranteed to not be prescribed very much during the life of its patent. Once enough time goes by, and other drugs come out _if_ (and that's a big _if_ ) it is no longer a drug of last resort, it is likely off patent and therefore can be made in generic form for pennies by generic manufacturers. Regardless of what you think about patents, these incentives are completely misaligned with companies going all-in and taking a risk on new antibiotics.

<comment><USER8> Vaccines are a bit of a different class as some are exempt from adverse reaction lawsuits and therefore risk is reduced for the companies manufacturing the vaccine.

I think your assessment that my argument is "wrong" is inappropriate. You'll see that my argument is supported by the WHO (Bulletin of the World Health Organization 2011;89:88–89).

>Another reason is commercial. Antibiotics, in particular, have a poor return on investment because they are taken for a short period of time and cure their target disease. In contrast, drugs that treat chronic illness, such as high blood pressure, are taken daily for the rest of a patient's life. "Companies have figured out that they make a lot more money selling the latter drugs than they do selling antibiotics," Spellberg says, highlighting the lack of incentive for companies to develop antibiotics.

<comment><USER13> And yet in a recent survey of drug development costs, "Difficid", by Optimer Pharmaceuticals, was one of the most inexpensive to develop.

I also really don't buy the "return on investment" argument, as curing a bacterial disease rarely provides immunity.

It's also not my experience as a researcher in the area - several drug companies are actively funding research.

<comment><USER8> Fidaxo also may not be that great or cost effective[1]. Optimer, I believe has been bought by Cubist and delisted from Nasdaq. 1. Clin Infect Dis. 2013 Aug;57(4):555-61

<comment><USER13> I do know their most promising findings don't get reflected in clinical trials well. But "The Drug Companies aren't there" isn't addressed by a small drug company specializing in ID getting bought about by another drug company that has tons of ID products for half a billion dollars.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> That's very good news actually. If first stage trials are successful might be marketed sooner than expected. However, I didn't read the paper, so I can't comment on the mechanism of action which the mos interesting part of an drug. Bacteria might become resistant if this procedure becomes overused (as usual) and it would be a shame.

</comment><comment><USER18> Very interesting research but it doesn't mention any negatives of ADEP4. What kind of effects could it have on the human body?

<comment><USER13> Many antibiotics are fairly nasty drugs - they're associated with kidney failure and other negative outcomes, especially for long term treatment. But it's hard to know for sure until things progress to the point where we are doing toxicity studies.

Which you don't bother with until you know the thing can work in the first place.

</comment></comment><comment><USER19> I wonder if this approach will eventually be useful in eliminating Chronic Lyme Disease.

<comment><USER13> Doubtful, as there's little to no scientific evidence that Chronic Lyme Disease is actually a bacterial infection.

<comment><USER20> That's actually a bit of a dated response:

See recent study on Rhesus monkeys: [http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjourna...](http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0029914)

The "no bacteria" perspective is usually based off of IDSA guidelines. Unfortunately, they've been successfully litigated against for providing incorrect information that appear to be linked to financial interests:

"My office uncovered undisclosed financial interests held by several of the most powerful IDSA panelists. The IDSA's guideline panel improperly ignored or minimized consideration of alternative medical opinion and evidence regarding chronic Lyme disease, potentially raising serious questions about whether the recommendations reflected all relevant science."

[http://www.ct.gov/ag/cwp/view.asp?a=2795&q=414284](http://www.ct.gov/ag/cwp/view.asp?a=2795&q=414284)

Good summary of Lyme: [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3636972/](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3636972/)

Needless to say, we've got a lot of people we're telling that they are not sick when symptomatically they appear to be.

<comment><USER21> "Pursuant to their agreement with Blumenthal the IDSA guidelines were reviewed by an independent panel subject to strict conflict-of-interest guidelines and vetted by a medical ethicist. The panel supported the original IDSA guidelines, finding that "chronic Lyme disease" and "post Lyme syndrome" lack clear definitions and convincing biological evidence. Further, the report emphasized that several prospective clinical trials of prolonged antibiotic therapy for persistently symptomatic patients uniformly showed evidence of harm without convincing evidence of benefit.[22] Nonetheless, some groups have continued to criticize the IDSA guidelines after the 2012 review.[23] [24]"

[https://en.wikipedia.org/wiki/Infectious_Diseases_Society_of...](https://en.wikipedia.org/wiki/Infectious_Diseases_Society_of_America#Lyme_disease_treatment_guidelines)

Also, see your sibling post by me with info from the CDC. It doesn't seem like they're dismissing the symptoms, they're just saying that antibiotics don't help.

<comment><USER20> I've watched my mother suffer from this for 20+ years. She initially had a doctor that treated her for 3 years with very strong antibiotics. She made remarkable progress. The doctor left practicing for personal reasons and subsequently she couldn't find good medical help. Her condition deteriorated over the years.

While the CDC doesn't seem to dismiss symptoms, I've watched dozens of doctors dismiss her. I've received calls from dozens of people who all have the same set of symptoms. I've also seen people get better only after years of antibiotic treatment, and slowly at that. My friends in medical school have indicated that they receive about two hours of Lyme-related training during their education.

The issue that you have is three-fold:

1\. Ticks often carry multiple infections (Borrelia Burgdoferi, Bartonella, Mycoplasma, and Babesiosis). Each of these infections can leave the immune system in a dysfunctional state. Most studies only focus on treatment of BB, leaving the other infections untouched.

2\. Given that, for the toughest cases, years of antibiotics may be needed, it is extremely difficult to keep studies "controlled". i.e. a week long study may not have much variability, but over a two-year study, a lot happens. The noise increases relative to the signal.

3\. BB has very high genetic variability. This leads to the potential for larger numbers of strains, with over 200 thought to be in existence.

I'm not contesting that this isn't well-understood. In fact, I fully agree with that. But statements like there is little to no evidence that Chronic Lyme exists are inappropriate. This is an area that has historically been underfunded, and it has a pretty rich history of controversy. We can fight over nomenclature all day long, but that doesn't change the fact that a lot of people are suffering, and the broader medical community is woefully uninformed.

</comment></comment></comment></comment></comment><comment><USER22> But does it kill the host as well?

</comment><comment><USER23> can it be tested on Google+?

</comment><comment><USER24> > New antibiotic kills off persistent infections

Now available in hand-soap.

<comment><USER25> oh god _damn it_ >:(</comment></comment>


Engineer and Investor in Spat About Wireless Charging Startup UBeam - <AUTHOR> http://spectrum.ieee.org/tech-talk/consumer-electronics/portable-devices/engineer-and-investor-in-spat-about-wireless-charging-startup-ubeam <comment><USER3> FWIW I've been following this story for a long time and here is what I think the situation is.

Early on the uBeam folks built a pretty low power acoustic transmitter/receiver that could, over a relatively short distance, actually deliver a charge to a phone. Not a super useful charge but, you know, something. Based on this demo and some handwaving (and maybe a bit of math) they went out and said "something that delivers more charge is possible. give us some money and time and we'll work out the engineering." Mostly they raised money on this. Likely without a ton of due diligence.

The actual engineers working on the project (including the one in this "spat") at some point realize the actual limitations of what is possible physics wise. But they still think "a useful product is possible here." Maybe you can deliver enough to charge a phone overnight while it sits on your coffee table. That could actually be cool? Maybe?

Meanwhile the PR machine gets going and, as so often happens, the exaggeration kicks in. Those that haven't been here themselves look at it and see LIES. I have a more nuanced view. The press can misunderstand and distort things on their own side. And then if you don't refute it fast enough then you almost have to support it. Not saying this is ok, but I can see how it happens. The statements about what is possible just get out of hand and then you're stuck with them.

So behind the scenes some of the engineers read the press and go "WTF, this is insane, I'm out!" Others say "well, that's all bullshit, but this overnight charger thing could be useful. So I'm gonna keep my head down and work on that. If we can get it to the point that we can release a commercial product then we'll see what the actual market is." Inevitably actually building a commercial product takes longer than you think. These are just normal engineering delays. No "trying to defy physics" type delays.

Which brings us to the present day. Almost certainly what has been hyped is not real. But there might be something less good there. Maybe. If they can balance the tradeoffs between input power, actual power delivered, distance and safety. That's real engineering work right there.

All just speculation. Take it for whatever it's worth.

<comment><USER4> >The actual engineers working on the project (including the one in this "spat") at some point realize the actual limitations of what is possible physics wise.

I read until here and would like to cut you off. So, at this point, can you tell me YOUR perspective on the alternate history where the company, exactly at this point, starts behaving exactly like Apple, consumer-driven instead of fundamental R&D driven, and simply pivots and enters some totally unrelated part of the power or battery market. Literally any other part of it - not just super capacitors (which were making the rounds around that time) but literally ANY part of the market, since they had obscene gobs of money in the bank for the stage they were at ($10M+) and lots of extremely talented engineers.

What would have happened? Could they have retained their goodwill, credibility, and name, and simply successfully pivoted?

<comment><USER4> -4 for asking? Well, okay. I wrote to them when it became obvious that they were selling snake oil, urging them to pivot to tech that can work. I'm curious if people think they could have pivoted, or if they were married to the snake oil (ie a pivot would have failed) . It's a yes/no question without preconception from me and I'd appreciate a response or explanation...

<comment><USER5> I think its a valid question on pivots, but its also pretty much the sole discretion of the founder/CEO to actually do the pivot. Without them on board and leading the change you end up with a mess, some people following the "strong" leaders and some people following the "original" leaders, and nobody gets anything done to their satisfaction. It also affects your team makeup, since at the small scale one tries to craft a team with overlapping but interlocking skill sets. Pivots require restructuring for that reason, and being able to pull that off is a skill as well.

At the end of the day, if the CEO is thinking the "least risk / best shot" is to stay the course, then a pivot is off the table until you replace the CEO.

<comment><USER4> Nonono, I'm actually curious if in harryh's nuanced view, Meredith Perry (not someone else) had this option open and could have done so once she realized the tech couldn't work. What do you think?

<comment><USER5> To what end? Not enough information for speculation. One of the nice things about HN discussions is that generally folks who comment have some line of reasoning that leads to their opinion. Unless someone was actually working at uBeam and a confidante of Perry, what ever they speculate is useless. And if they are an employee and confidante, what ever they say will no doubt lead to at least the end of their position and at worst legal action.

And the really relevant point is that uBeam hasn't, according to its current press, pivoted into anything other than its stated mission. So debating why not is like debating why you didn't ask out someone back when you were in high school and now has turned out to be someone you didn't expect. Kind of a waste of time :-)

<comment><USER4> She had a proof of concept that turned out didn't scale. If you think it's "useless" to discuss whether and how it's possible for such a CEO to pivot we have nothing further to discuss. I will say that I expect any and every world- changing CEO to be at risk of being in such a position now and in the future, and that the development of a game plan by the startup community for when (not if) this happens again is the difference between billions of dollars of value and the statement "unfortunately I have to say no to changing the world because I only have a working proof of concept. Personally I do not want to run even a 1% risk of ending up in the position that Perry ended up in - <USER2> in my conservative opinion I have a 20-90% chance of that. Oh well - I'll put this proof of concept aside and go do something else. "

Well, okay. But I hope it's blindingly obvious that we all lose. . That pre- CEO and the world.

EDIT: Whoever is downvoting me doesn't get it. She had a proof of concept. The proof didn't scale. She raised money - millions - anyway. To me this is all fine. The question is whether she HAD to stick with this non-working concept, or whether she could have pivoted, when she had all that money in the bank and learned that the concept does not work/scale. You guys just don't get the question.

<comment><USER6> Except a proof of concept that doesn't scale is explicitly not a proof of concept

The concept doesn't work because it's physically impossible and having a low power example is all you can do without severe issues. In this case having a small scale example doesn't tell you much if anything about the large scale behavior ( among other things nonlinear effects start happening at high power physically )

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> When a reputable investor and a good engineer are in a dispute about whether a startup is financially viable, believe the investor.

When a reputable investor and a good engineer are in a dispute about whether a startup is technically viable, believe the engineer.

<comment><USER8> I'm not entirely sure either side is lying. It's pretty tough to go around a CEO to the board or investors with concerns like that. I don't think it's necessarily fair for Suster to say "Hey I talked to this engineer and he never voiced these concerns while I worked with him" based on that reason.

Mark is an operator and knows that most people do respect the CEO chain of command unless the behavior is unethical or the situation extreme.

On the other hand, what's the bloody point of the engineer coming out in a secret blog to raise concerns on the tech. If the team can't develop a solution, the company will not be able to raise money and fail.

If enough people read the blog and get concerned reading the blog- the company fails because of litigation around fraud etc and everyone loses their jobs and the company for sure fails to find a solution.

Either way, if all of our goals is to see innovation, it's not a very constructive approach.

<comment><USER9> At this point I honestly have no idea what people at startups are supposed to do if they suspect wrongdoing/foul play by executives. Tell your boss, who tells the CEO, who fires you. Tell an investor, who wants to protect their investment, and they fire you. Tell the CEO and they fire you. Tell the HR manager and, again, their job is to protect the CEO and the exec team so they fire you. I'm genuinely wondering what the expectation was here. I imagine if this person had expressed these concerns to Suster he would have been shushed/fired, so thats why he didn't...

<comment><USER10> CYA is pretty much the only rule. Whistleblowing always works out badly for the whistleblower. It's strange but true that it's far easier to get hired from a failed startup than as a whistleblower, so the only thing to do is keep your head down and look for a new job. Let them fly the investors' money into the ground as long as your name isn't on anything illegal.

Fortunately SV startups are rarely capable of getting people killed with a bad product. I'd like to hope that someone would whistleblow the safety issues on home thorium reactors before the Bay Area is rendered uninhabitable, but I know it would be career suicide for the person that did.

</comment></comment></comment></comment><comment><USER11> I remember very clearly when something or other about this company got posted here awhile ago and almost immediately thereafter someone submitted a blog post explaining in basic physics terminology that the company's premise was in no uncertain terms _total bullshit,_ and reamed the entire startup community for heaping attention and praise on them without thinking through what (to the author) were obvious faults in their plan.

I enjoyed that piece. I like it when the discussion reverts to basic math and physics to resolve points of contention.

At any rate, it continues to amuse/distress me in the time since then that the company is still around and still has investors, etc. Do people still not get it? _It won 't work._

On some level, moreover, it disturbs me that people are actively pursuing a technology that would effectively be torture to household pets. Does that mean nothing to anyone? Do they get that dogs and cats would be able to hear this as a siren in their skull?

<comment><USER12> At some point every piece of technology that we use was impossible. It's very easy to sit on the hilltop and say "it's not possible". What's not easy is climbing the hill anyways and figuring out a way to make the impossible happen.

I'm not here to defend this company. I don't know a thing about them or their technology. I'm just saying... "what kind of world would we live in if we never looked past what we thought was possible?"

EDIT: I think that a few of you have missed an important piece of this post, so once again...

I'm not here to defend this company. I don't know a thing about them or their technology.

<comment><USER13> It's _physically_ impossible, different from extraordinary difficult.

<comment><USER14> Yup. Some things (not all) are impossible in a literal sense.

Want to extract 2 kW / m^2 from solar radiation somewhere near the Earth? Won't work, the Sun doesn't pump out that kind of power density (the max is 1.whatever kW). Literally impossible.

<comment><USER15> Can't I just put a lens above the surface to concentrate it? I think you picked a poor example.

<comment><USER16> No you can't, because you're increasing the surface are of the collector so the 1.366kWh / square meter still stands.

From Wikipedia:

 _Average annual solar radiation arriving at the top of the Earth 's atmosphere is roughly 1366 W/m2. The Sun's rays are attenuated as they pass through the Atmosphere, leaving maximum normal surface irradiance at approximately 1000 W /m2 at sea level on a clear day._[1]

Therefore it is impossible to get more than about 1kW / m2 from any solar panel. Until such times as something fairly fundamental changes, like a loss of atmosphere or an increase in energy output from the sun.

1\. [https://en.wikipedia.org/wiki/Insolation](https://en.wikipedia.org/wiki/Insolation)

<comment><USER17> Well, you're mostly correct; but not technically correct.

From /just/ a solar panel it isn't possible to achieve higher density, however you can use reflectors in the spectrum that your solar panel operates in to increase the energy available for capture at a focal point.

<comment><USER18> So, there's this: [http://what-if.xkcd.com/145/](http://what-if.xkcd.com/145/)

But there's also TheSpiceIsLife's opening comment which says:

> ...you're increasing the surface are of the collector so the 1.366kWh / > square meter still stands.

It feels like your second sentence

> ...[H]owever you can use reflectors in the spectrum that your solar panel > operates in to increase the energy available for capture at a focal point.

plays rhetorical games by ignoring the existence of large parts of your solar collector (namely the reflectors) in order to arrive at an inflated energy density figure.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> For me the big issue is Mark insisting on holding on to the case that this was a good investment.

Last time he insisted on calling out the non-believers about tech. This time, he only writes a couple sentences defending the tech and is laying the groundwork for abandoning the physics and just supporting the team.

Something like.. 'yeah, we took a chance. Someone has to. It didn't pan out, but the team is great.'

I have done my share of pitching the VCs and they have to uphold the image that they are the smartest people in the room, or else what are they? Just Money who can't possibly know everything about everything? No! can't be.

So, here is a smart person dispensing advice on all things life, entrepreneurship, investment and technology who is clearly been had and out of his depth in this particular field. But smart enough to know that he's been had and the only remaining way out is to abandon tech and back the team.

This is a personal issue for Mark and has nothing to do with science and the rest of us. The science is clear. He just can't admit that he was had, because that kills his standing in his day job.

</comment><comment><USER20> Theranos is working on a technology that will exist in the near future, confirmed by many many other companies working on it, so it seems quite likely: _someone will succeed in using less blood, to run more tests_.

That doesn't sound like a totally alien idea, and since Theranos will probably not deliver on this promise fully, someone else likely will. However, the uBeam sounds super dubious. I think wireless energy is probably possible, but without a prototype a consumer could feasibly use in their home, and the large amount if scientists I coming out against this a few years ago doesn't seem to have shrunk.

So, yes it is a really hard interesting problem, but all the fun ones are. I wouldn't have invested with the expectation of success, but that the technology developed could be used for something else/is valuable.

<comment><AUTHOR> > Theranos is working on a technology that will exist in the near future, > confirmed by many many other companies working on it, so it seems quite > likely: someone will succeed in using less blood, to run more tests.

Except we don't need more blood tests[0]. With uBeam, there's no doubt that _if_ the technology works, it would be a game-changer. Theranos was facing both technical and market challenges, but with uBeam, it's a purely technical challenge.

0: [http://fivethirtyeight.com/features/theranos-is-wrong-we- don...](http://fivethirtyeight.com/features/theranos-is-wrong-we-dont-need- more-blood-tests/)

<comment><USER21> I can't agree more our startup is working on time travel there's no doubt that if the technology works, it would be a game-changer. Since it's a purely technical challenge we expect to raise a trillion dollars in our seed round.

<comment><USER22> I should point out that time travel would fix the phone charging problem quite handily. Just send your phone back in time a few hours. Not sure if there are other applications.

</comment></comment></comment></comment><comment><USER23> Hard not to be impressed by how aggressive 'the engineer' is on his blog[0]. I don't think I've ever seen anything like this. It's pretty bold. Seems rare to find someone being so candid.

Am I missing something? Does this happen in public regularly?

0 - [http://liesandstartuppr.blogspot.com.au/](http://liesandstartuppr.blogspot.com.au/)

</comment><comment><USER24> It is a scam. The only difference between other scams is that they managed to take a bite of larger investors than usual.

There are always people who want to believe. Some months ago there was a man who claimed that he could create hydrogen from water by bombarding the water with radio waves. The electricity needed for the radio waves was neglible to the energy we could get by burning the hydrogen.

I tried to explain with physics, maths, equations, I pointed to esteemed professors' materials. Nothing. For the people who wanted to believe, even if they had a nobel laureate explain them the "inventor's" fallacies, they wouldn't budge.

</comment><comment><USER25> "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled."

</comment><comment><USER26> I'm surprised these guys are still around.

I remember having a hearty chuckle when I first saw it on either HN or Product Hunt, thinking to myself "wow, does anyone take this seriously?"

A rising tide lifts all boats I suppose. Even if your boat is actually a floating piece of debris.

</comment><comment><USER27> This post is amazing. What Mark Suster Missed In His Blog Post Defending uBeam

[https://ludwitt.wordpress.com/2016/05/13/what-mark-suster- mi...](https://ludwitt.wordpress.com/2016/05/13/what-mark-suster-missed-in- his-blog-post-defending-ubeam/)

Sums this up the best.

</comment><comment><USER28> Came in ready to denounce Suster, but after reading his post, he handled the situation pretty tactfully. The engineer's blog on the other hand, is pure drivel. He may be correct, but his blog posts are awful and not helping him at all.

</comment><comment><USER29> Investor seem to like bombastic claims and bombastic people.

</comment><comment><USER30> There are two approaches to this concept:

1) One heavily rooted in Physics, Math, and well understood Mechanical properties that says it is not feasible.

2) One heavily dogmatic approach that boils down to a fundamental misunderstanding of Engineering and it's limits.

There are things that can be done, and there are things that cannot be done.

Examples of things that _can_ be done:

1) Human travel to Mars - It's hard but very feasible

2) Economically Positive Controlled Fusion - It's harder than getting a man to Mars, the economics of investing in the technology are difficult to justify relative to things like oil exploration, but it remains theoretically, if not technically, possible.

3) Completely Green Energy on Earth - Technical, political, and economic forces make this goal challenging but it is very possible if we try as a species.

Examples of things that _cannot_ be done:

1) Faster than light travel - It's not physically possible with our current understanding of the universe, and nothing indicates this will be changing at any point. There are mathematical constructs that imply it's a possibility, but the physical requirements of these constructs are considered super unlikely to exist (and in some senses have very little meaning). Unless our understanding of the physical world changes to include materials like the ones described mathematically, this is thoroughly impossible.

2) Fly People 1000s of miles on 1 fluid ounce of gasoline - The energy isn't chemically in the substance. Unless you have some new fission and/or fusion mechanism (see earlier) this is _physically_ impossible. Even if you could beat all of our observations around the engine cycles and overcome the theoretical maximum efficiencies (e.g. extract 100% of the energy from the gasoline), it would still not be possible because the raw energy required to perform the function of raising people into the air and changing their momentum is so much greater than what is chemically available in that much gasoline.

3) Pack enough energy safely into air via sound (or another mechanism) to allow for wireless charging - You should have seen this item coming. For reasons outlined by people who have spent much more time on this than I have, this is physically impossible. Long-range cohesive sound waves : not possible. Air efficiency for sound transmission : very very poor. Using EM runs the risk of all sorts of nasty side effects (it burns, it burns). Lasers are the only thing I can think of that could work, they're coherent and relatively efficient, they could target high density solar cells to charge the phone right? Yep, they sure could. Bill Gates investigated high energy lasers as a means of killing mosquitos in developing nations to prevent the spread of malaria, they built a fantastic system that worked perfectly, the concern over injury or loss of human life was just too great so they abandoned it. Would you want to get laser burns every so often in trade for wireless phone charging? I don't.

<comment><USER31> I've worked on a few laser based wireless power systems and I don't see it easily becoming safe enough for consumer use at power levels that are useful. For industrial/military use, the only thing keeping them from being off the shelf is their high cost and maintenance requirements (oddball cooling system requirements and very clean optics).

If you want to charge your phone on the order of 1w/hr, it's possible, any more power than that, consumers can't maintain equipment good enough for it to work. The main limiting factor for the power level is keeping things clean and scratch free enough. If you figure that out, it is worth more than wireless power system is (and I can I buy a few?).

One of the systems I worked on could deliver 1kW at 100m, and even something as small as a 0.5% reflection could set your clothes on fire if you were close to the reflection. 1KW is less power than what you can draw from most standard consumer wall outlets.

<comment><USER32> > w/hr

Did you mean W (watt) = J/s which is a unit of power?

</comment></comment></comment><comment><USER33> > "There is too much noise. There are too many flags popping up. What the heck > is going on there?" Thorpe says.

So the reason to to invest more is because of the 'noise' and the 'flags popping up'. Not because the company has consistently failed to meet any of its ambitions?

<comment><USER34> So... post-facto crowd-sourced due diligence?

</comment></comment><comment><USER35> Someone will eventually do this, or at least something similar, just maybe not with ultrasound. Whether that company is uBeam or another company is hard to say.

I was a little surprised to see Suster's response. One half of me says that is great to see an investor sticking his neck out for one of his investments and conveying the faith he has in that investment. Personally, I don't get judging uBeam and calling them a failure quite yet. I think it is unfair to compare them to Theranos. At least with uBeam there is no claim they have faked results or compliance issues. There are no criminal investigations over falsified technology. The only issue really at hand with uBeam is an overzealous CEO who stated they would have a prototype available and they haven't delivered yet. So what? They are behind, it is bleeding edge tech that will have a huge impact if they are able to pull it off. Is it because she is a female everyone is quick to judge her a failure at this point? Or because she is a young, first-time CEO? If Elon Musk was the CEO would the same negative press be surrounding uBeam about a failure to deliver?

Now on the flip side, even Suster's post lends truth to Reynolds' statements. This part, to me at least, is a little more damning, and leads me to believe that Reynolds really was trying to put a stop to the hyperbole marketing.

Suster states, "Throughout my many discussions with Paul over our time together, he never questioned the viability of uBeam and the technology that he was critical in developing. Instead he expressed concerns that we not overstate our capabilities or fall prey to hyperbole."

To me these are one in the same essentially. Reynolds apparently was concerned about the claims being made, said something to Suster, which Suster confirms in this statement, and now Suster is downplaying those concerns.

In the end this seems like drama over nothing to me. So what if they fail to deliver? Thousands of companies before them and thousands of companies after them will fail to deliver on a product at some point. That's the nature of the beast. To me it seems the only issue is that there is a young CEO who is excited about a product that has yet to be developed. She makes exciting, dramatic statements about her company and product than she really should be making, and both Reynolds and Suster tend to confirm this. But I believe her statements and the Theranos situation are in two different ballparks, so I think the comparison is far from fair to uBeam.

<comment><USER36> You could write the exact same post about any random IndieGogo scam. This kind of interchangeability is a common feature of comments who make no attempt at all of discussing the subject matter at hand.

You can not exactly discuss uBeam when ignoring the entire body of work done on the feasibility of the concept.

<comment><USER35> I am by no means overlooking the work that has gone into determining the feasibility. Sorry if my comment came across that way. My point was really two-fold. The idea itself should not get discredited simply because of the method they are using. If you take the idea, wireless power at a distance, and separate that from the method, via ultrasound, the idea is game-changing.

The question then becomes how do you go about doing it. Ultrasound is apprently one option (I am by no means a scientist or have vast knowledge of this area). It is obvious, based on the research conducted to date, that ultrasound as a long-term solution is not viable, both from a technology and health perspective. So what is? Just because ultrasound is not going to work, does that mean the idea itself should be thrown out? Maybe, maybe not. But if we threw out every idea simply because existing technology was incapable of implementing said idea, we would be rolling around in Fred Flintstone cars.

If VCs want to gamble on developing the technology by throwing money at it, that is their choice. The real issue is that at some point, the VCs need to stand up and say enough already with the ultrasound theory. Instead they should be guiding the company more towards exploring the idea itself and finding viable solutions. More importantly they need to rein in the CEO, and hyperbole marketing claims she makes, to take the focus from wireless power via ultrasound to just the idea of wireless power. That is my second point, that people seem to be looking at this solely from the claims the CEO has made, and not from the idea itself.

Suster's defense of the company was a case of right idea, wrong words. He, in my opinion, through his choice of wording, made the situation worse. While essentially bashing Reynolds in one sentence, he completely lends credit to Reynolds statements. He acknowledges that Reynolds expressed doubts regarding the marketing and public statements.

The problem I see with this whole issue is that everyone, from the company executives and VCs to the media, is hyper-focused on the method (ultrasound), that they have lost focus on the idea (wireless power at a distance).

<comment><USER18> > If you take the idea, wireless power at a distance, and separate that from > the method, via ultrasound, the idea is game-changing.

Uh. It is my understanding that free-space [0] wireless power transmission is a _rather_ old tech. [1] You just pretty much never see it because if you want to move substantial amounts of power with a relatively small antenna, you _have_ to keep living things a _significant_ distance away from the transmission area, lest they cross between the Tx and Rx sides and get seriously harmed.

[0] That is, things like microwave or laser power transmission through the atmosphere rather than things like inductive charging mats and transmission rings.

[1] [https://en.wikipedia.org/wiki/Wireless_power_transfer#Far- fi...](https://en.wikipedia.org/wiki/Wireless_power_transfer#Far- field_radiative_techniques) (Notice the mention of the microwave-powered RC helicopter in 1964.)

</comment></comment></comment></comment><comment><USER37> Aside from it not being physically possible, there's a question of whether it would beat alternatives.

My wife told me IKEA are now selling wireless charging surfaces. So for example if you buy a shelf, it could have magnetic induction charging, which a number of phones now support. It's not a big deal hooking up some wires, and once it becomes common, there may well be a time when everyone expects every table, shelf, or countertop to charge their devices.

It's not something that requires much research either. I already have a magnetic charging unit for my samsung phone. At the moment it's a toy, but not hard to imagine it built into a shelving unit.

<comment><USER38> This was my thought too... why use ultrasound when you can use induction? Was there some perceived advantage to sound?</comment></comment>


On Joining CouchOne (and "getting" open source) - <AUTHOR> http://arandomurl.com/2010/11/13/on-joining-couchone-%28and-getting-open-source%29.html

<comment><USER2> Thanks Dale, I'm glad you're enjoying getting up to your eyeballs in open- source. Dale's quickly developing a reputation at CouchOne: if you need something done, give it to Dale. :)</comment>


React tutorial converted to Elm - <AUTHOR> https://www.codementor.io/elm/tutorial/build-facebook-commentbox-react-tutorial-elm <comment><AUTHOR> There's a bit of a formatting issue later on in the article, apologies for that, it's the <> html issue ;/</comment>