Draft.js – Rich Text Editor Framework for React - <AUTHOR> http://facebook.github.io/draft-js/ <comment><USER2> My ProseMirror [1] project is in the same space (including using persistent data model detached from the DOM). It has a richer, tree-shaped document model and collaboration [2], but not quite as much programmerpower behind it since I'm a single OSS dev as opposed to a giant tech company.

[1]: [https://prosemirror.net](https://prosemirror.net) [2]: [http://marijnhaverbeke.nl/blog/collaborative- editing.html](http://marijnhaverbeke.nl/blog/collaborative-editing.html)

<comment><USER3> Just wanted to take this opportunity to say thanks again for CodeMirror, and it's great to see the progress you've been making with ProseMirror.

We use CM at Overleaf[1], and it's been fantastic. To make it easier for non- LaTeX users to collaborate on LaTeX documents, we built our own rich text editor on top of it[2], which is still in beta. Still got a long way to go!

[1] [https://www.overleaf.com](https://www.overleaf.com)

[2] [https://www.overleaf.com/blog/81](https://www.overleaf.com/blog/81)

<comment><USER4> Oh yes, I want to say thank you too! I just discovered CodeMirror, and it's wonderful. It was easy to make it to do just what I wanted, and it feels so snappy (both fast, and easily plugged together with other code). I'll definitely check out ProseMirror too.

<comment><USER5> How is CodeMirror different from ProseMirror?

<comment><USER6> The first is for code and the latter is for prose (non-code writing such as this comment).

<comment><USER5> Okay, that makes sense.

But, then again, shouldn't a single editor be able to handle those two usage- domains? (As this would mean the editor would be more powerful in terms of extensibility).

<comment><USER7> Code is line-oriented and usually monospaced. Prose is not, and usually requires local layout (spacing, alignment and so on), embedded media (such as images) and variable typography.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> (biased author of Mobiledoc-Kit here)

The past year or so has really seen a resurgence of browser-based text editors. Off the top of my head I can think of 4 editors/editor-frameworks launched in the past year (Mobiledoc-Kit, ProseMirror, Trix, and now Draft.js). Browsers are creeping toward exposing all the events that are necessary for interpreting the meaning of a user as they input text. (Some notable exceptions remain, such as an event that would be fired when a spelling correction is accepted, but mutation observers provide a fallback for cases where it's not otherwise possible to catch the input on the way in.)

A major focus of Mobiledoc-Kit, which seems to have some overlap with Draft.js, is on exposing an API that allows programmers to programmatically interact with the internal (structured) document. Our goal is to allow developers to be able to construct editors that fit snugly fit their use case, whether that's building their own UI for a toolbar, or more complex procedural rules for document (e.g., add a constraint that there can only be one "H1" section in a document and disallow adding a second one).

Since Mobiledoc-Kit was built for a publisher originally (Bustle), the ability to intersperse text with richer content was a goal from the start. So it has a "card" concept that allows adding any rich content (embedded tweets, videos, slidehows, etc.). In fact, the Mobiledoc-Kit demo page [1] has a demo where a Codemirror editor is embedded inside the Mobiledoc editor.

It's great to see so much new energy in the browser editor world. I am hopeful that as browser features and new editors and editor features converge, we'll see some exciting new developments that broaden the perspective on what sort of content is possible to author from within a web page.

[1]: [https://bustlelabs.github.io/mobiledoc- kit/demo/](https://bustlelabs.github.io/mobiledoc-kit/demo/)

</comment><comment><USER9> For those of you looking for a rich text editor like this that is lighterweight and doesn't come with a heavy React dependency, I can highly recommend Mobiledoc[1]. I've been using it in several production sites and it has performed like a champ.

The best part of Mobiledoc is its portability; I've seen it used in both Ember.js and Riot.js, two libraries on opposite ends of the spectrum.

It's also been designed for rich, interactive content _in addition to_ rich text. You can add interactive cards (think slideshows, before/after image sliders, etc.) and easily provide a different implementation on each platform. This lets your content authors write once and have a great experience on both native and web, and adding a new card is super easy.

1: [https://github.com/bustlelabs/mobiledoc- kit](https://github.com/bustlelabs/mobiledoc-kit)

<comment><USER10> (Mobiledoc contrib here)

One thing Draft and Mobiledoc seem to have in common is a robust programmatic API. Draft is pitched as a "framework for building rich text editors in React". Mobiledoc pitches itself as a toolkit for building WYSIWYG editors, so fairly similar goals.

Mobiledoc is designed to be very quick and easy to render, and additionally to support rich content "cards" and "atoms". These are runtime-implemented rich content sections, and our main sponsor for this work (Bustle Labs) uses them for image sliders, animated and interactive SVG features, videos, and more.

These runtime rendering points also make it easy to have multiple representations of a document. For example, we render Mobiledoc into text for ElasticSearch, into HTML for normal web visitors, and into AMP HTML. When rendering into text or AMP we can't use the normal card implementations, and runtime-configuration makes this easy.

And the rich cards work with copy paste! and undo/redo! Anyway, there is definitely overlap here, but IMO the goals of Draft are pretty narrow so far.

<comment><USER11> Just so I understand fully, can you explain which things Mobiledoc handles which Draft doesn't? It sounds like you should be able to easily implement any of those behaviors on top of Draft.

<comment><USER10> Hm, I don't think some of the things we're working on are easy to implement on top of Draft, but I've only browsed the (very good) documentation so far. Perhaps I'm wrong.

For a first, I'm not clear on how you would write a custom renderer against the data structure (we try to do this for Mobiledoc [0], and it has helped contributors). It seems straight ahead to derive looking at it in a debugger, but I would love to see a link to the docs on it in case I've missed them.

As for cards, we've worked hard to make sure cursors work well around cards, and around atoms. There aren't any demos of "Custom Block Components" [1] in readonly mode, but based on the inability to place a cursor after a "Code Block" with arrows when it is last, I think Mobiledoc might be a bit more robust at this date.

But conceptually custom block components are very similar to Mobiledoc cards [2]. Block based rich content with an object payload. We provide a non-block construct called "atoms" that are inline as well, for things like `@mentions` in text.

This is really neat stuff, but yup, we've been playing around with similar ideas for a few months! Happy to see so much life in the editor world again.

[0]: [https://github.com/bustlelabs/mobiledoc- kit/blob/master/MOBI...](https://github.com/bustlelabs/mobiledoc- kit/blob/master/MOBILEDOC.md)

[1]: [http://facebook.github.io/draft-js/docs/advanced-topics- bloc...](http://facebook.github.io/draft-js/docs/advanced-topics-block- components.html#content)

[2]: [https://github.com/bustlelabs/mobiledoc- kit/blob/master/CARD...](https://github.com/bustlelabs/mobiledoc- kit/blob/master/CARDS.md)

[edit] looks like [http://facebook.github.io/draft-js/docs/api-reference- data-c...](http://facebook.github.io/draft-js/docs/api-reference-data- conversion.html#content) serializes the abstract of a Draft into something persistable, and potentially renderable.

<comment><USER11> Yes, it should be easy to serialize the state using convertToRaw and/or convert it to HTML/Markdown/etc. I could imagine official helpers for this might be added.

You can try the embedded photo experience in Facebook Notes at [https://www.facebook.com/notes](https://www.facebook.com/notes). I think it does essentially everything that you have described. (I believe we do keep at least one (possibly empty) block after each media object to allow putting the cursor there.)

Mentions (like on Facebook) can be done easily with Draft's entities, and mentions that behave more like syntax highlighting (like on Twitter) can be easily done with decorators.

Mobiledoc looks pretty awesome though. I hadn't seen it before this -- thanks for sharing.

</comment></comment></comment></comment></comment><comment><USER12> Is there a specific benefit to having this built on top of React rather than just wrapping an existing editor's API [1][2][3]? Is it cross-usability for React-native or just NIH syndrome?

I'm not sure how I feel about re-implementing all the things and introducing a React dependency to everything. The lock-in seems okay if React really is the final word in UI frameworks (though it is very large and currently very slow). I am certainly not in this camp, however.

[1] [https://github.com/neilj/Squire](https://github.com/neilj/Squire)

[2] [https://github.com/quilljs/quill](https://github.com/quilljs/quill)

[3] [https://github.com/zenoamaro/react- quill](https://github.com/zenoamaro/react-quill)

<comment><USER11> (Biased React dev here.)

The key insight in Draft.js is that it's incredibly difficult to keep your model in sync with the browser's contenteditable behavior unless you intercept many of the behaviors and perform them entirely in the model, then change the DOM accordingly. Medium found the same thing when building their editor:

[https://medium.com/medium-eng/why-contenteditable-is- terribl...](https://medium.com/medium-eng/why-contenteditable-is- terrible-122d8a40e480)

In order to build high-quality text editors, you need to be in control of what's happening in the DOM. There's obviously many ways to control the DOM. React is a solid base for this, as are many other libraries. Facebook uses React extensively so it made sense to use as a base for Draft to avoid needing to essentially rewrite React and to make it even easier to integrate with existing React apps. Of course, you can also use Draft easily inside a non- React app.

The entire Draft model is also separate code decoupled from the UI and you're free to use the model and implement the views yourself if you're allergic to React or aren't targeting the DOM. The Facebook Groups app uses Draft's model but implements custom views for it in React Native.

<comment><USER13> Any chance that react native view code will be released at any point? Would be so useful!

<comment><USER11> Good idea. It's based off of an older version of the Draft code so it might not work out of the box. If we don't get a chance, hopefully it won't be hard for people to build out a solid implementation on RN.

</comment></comment></comment></comment><comment><USER14> Neat, but. I once had to do extensive testing of a rich text editor and know where the most bugs were? un-ordered lists. The world has been trained to expect a very specific set of behavior from bulleted lists by MS Word and it's really tricky to emulate. Specifically, how do tab and shift-tab modify the list? If you have an indented bullet, and hit return from the end of the line, what happens? What if the previous line was bold? What if I select most of two lines and hit delete?

Their demo falls far short of expected functionality which makes me think that there is a huge amount of work to go from this library to a working editor.

<comment><USER15> The docs discuss lists and reference Facebook Notes which uses Draft. The demo doesn't support the nested lists but Notes does. I've tried it out and it supports tab and shift-tab. The only limitation seems to be that you can't select multiple items and indent them together - it has to be one at a time. I'm unsure if that's a limitation of Draft though.

<comment><USER11> The default behavior for tab is defined here:

[https://github.com/facebook/draft- js/blob/f5e6cf50558f5797b0...](https://github.com/facebook/draft- js/blob/f5e6cf50558f5797b079db80fcda706664c74e14/src/model/modifier/RichTextEditorUtil.js#L229)

It would be easy to override it in your own component or send a PR upstream to make it adjust multiple blocks at once.

</comment></comment></comment><comment><USER5> Some bugs found after quick testing:

\- When adding a long paragraph, and hitting enter in between, the caret disappears from the screen.

\- When typing some text, say "abc", followed by a large number of spaces, and then selecting everything, the selection extends past the width of the editor window (colored selection bar sticks out).

\- In a long paragraph, changing to a code-block, again the caret disappears.

More seriously:

\- In a paragraph of 10,000 words, the editor becomes really slow, even when just typing text. This is strange because such operations (i.e., typing) are local, and React is supposed to deal only with incremental changes. I'm wondering what is going on here.

<comment><USER16> > In a paragraph of 10,000 words, the editor becomes really slow

I think it's because typing a single character causes it to reparse the entire typed text in order to check if the document model needs updating.

I've seen something similar in other editors. The only solution I can naively think of is to chunk the document and only do checks within the chunk.

</comment></comment><comment><USER17> Oh hey, this looks a lot like something I was working on.

[https://github.com/nickretallack/richer](https://github.com/nickretallack/richer)

React makes it easy to do a stateless transformation from your data model to some output, so you can model things the way you want to: as a series of overlays onto the text.

My project uses the Google Drive Realtime API as its data model, so you can collaborate on the text too. Or use the in-memory version to edit alone.

I never finished this thing. Was hoping to use it on a project at work, but got shot down. Emulating cursor movements without a text area was the fiddliest part. But I got pretty far into it as a proof of concept at least. I was impressed at how fast it was despite being a JavaScript emulation of content editable.

<comment><USER18> I've been targeting Google Drive as well for various document options. It's basically a free cms.

<comment><USER17> Yeah, it's pretty neat. Though it doesn't really have the performance guarantees of a real CMS. Also I wish I could do some sort of server-side validation like you can in FireBase. Considering FireBase now has a rich text editor example with operational transformations, it may be the better call now.

</comment></comment></comment><comment><USER19> Has anyone figured out how to get a string of HTML out of this? I tried bouncing around with the $r object in the Chrome devtools console on [http://facebook.github.io/draft-js/](http://facebook.github.io/draft-js/) but couldn't work out how I would return a string of HTML suitable for persisting to a server.

<comment><USER20> You need to write a parser to translate ContentState into markup. See [http://facebook.github.io/draft-js/docs/api-reference- data-c...](http://facebook.github.io/draft-js/docs/api-reference-data- conversion.html#content)

</comment></comment><comment><USER21> This is really awesome-- At Nylas we've /also/ been building one for the past year to use in our email composer inside N1 ([https://githbub.com/nylas/n1](https://githbub.com/nylas/n1)), with the additional constraint that it needs to support extension by third party plugins.

Building a nice declarative editing interface around an inherently mutable structure with an imperative API like the DOM (which can mutate state from under you, like focus) is a real challenge. _Props_ to the team at facebook for this.

</comment><comment><USER22> Looks like a nice entrant to the space. React is very well suited to this problem space and they clearly understand many of the pitfalls and problems.

A few questions/concerns:

1\. It doesn't look like the undo/redo state is global to the page. The built in undo/redo stack in browsers is global to the page so this is the expectation users will have. If you use multiple instances of Draft.js in your page they will each have their own stack, which is less than ideal. I realize having a singleton to manage this across all editor instances is more difficult in the React/Flux paradigm, but it would be much better from a user experience perspective. Related to this:

2\. I don't think you can nest Draft.js instances. There are a number of simple cases where you might want to do this (e.g. custom block with image + caption). To support this in the future it seems you would need to account for it in the selection and undo/redo stack state handling.

3\. The data format has a lot of repetition in how it stores inline styles[1]. I'm interested to know why they chose to represent the data this way instead of using indices. For instance, you can represent a inline bold style with a json object like so: {type: 'BOLD', startOffset: 5, endOffset: 10}. The format they chose to use is easier to render directly, but more difficult to parse visually and less space efficient (except in the case of styles that only cover a few characters).

Finally, it seems most modern WYSIWYG editors mentioned in the comments here were at least partially influenced by the original Medium post "Why ContentEditable is Terrible"[2]. It would be great for the community to standardize on a data model/format that could be used in all of these editors. There are enough commonalities (blocks, elements, etc.) that I believe we could create a common document spec that would be usable in all of these popular editors. The benefit of this would be having a common spec to build additional libraries for diffing, server rendering, native mobile editing, and so on.

[1] [http://facebook.github.io/draft-js/docs/advanced-topics- inli...](http://facebook.github.io/draft-js/docs/advanced-topics-inline- styles.html#model) [2] [https://medium.com/medium-eng/why-contenteditable-is- terribl...](https://medium.com/medium-eng/why-contenteditable-is- terrible-122d8a40e480#.sbk9m56cs)

</comment><comment><USER23> This looks pretty neat, although I'm leery of the react.js dependencies as I don't do a lot of react development. I'm sure I could wrap it up or something if needs be. There's a lot to be said for this new move in third-generation rich text editors to move away from relying on contenteditable and the DOM as the source of state. A lot of different projects are doing this becuase contenteditable is clearly not a great solution.

Still, am I missing any kind of delta event emitter? I'd like to be able to hook edit events and push operational transform content over the wire to support collaborative editing. Other projects like ProseMirror, Quill.js and maybe Mobiledoc support this (I haven't used mobiledoc yet, but it looks like that's going to be supported Soon).

</comment><comment><USER24> I've tried to work with a number of WYSIWYG editors and they always get you part of the way before becoming a real pain. No one seems to do a very good job planning them out and maintaining them. I, for one, am really happy to see Facebook release something. Knowing Isaac I suspect this is some work related to Facebook Notes which is cool because it means they're using it in the wild.

</comment><comment><USER25> Great but no support for tables, I can't use it for now :(

So I use CKEditor because it support everything the client want but it is like a trade with the devil. It is the worst js lib I ever had the displeasure to use, it made one developer never want to be on my project again. I needed to fix its sources, and have the non uglyfied code load in my app to debug it, because they only distribute working minimised merged js, I had to make the full sources load in webpack : pack all the js and load de dependancies in order following a config js file. The code is full of ridiculous timeout making the code unfollowable. Never use CKEditor !

I will gladly switch once it support tables.

<comment><USER26> We really hope to change your opinion with what's coming on CKEditor [1] later this year ;)

[1]: [https://medium.com/content-uneditable/ckeditor-5-the- future-...](https://medium.com/content-uneditable/ckeditor-5-the-future-of- rich-text-editing-2b9300f9df2c)

<comment><USER25> This absolutely looks great, the Web needs a feature rich "rich" text editor, with modern code, document model and ui separated from the core.

A quick look at the code shows you use standard import/export, configurable import style for the ui part and this is great news. Good job :)

</comment></comment></comment><comment><USER26> It's curious to see that many pet projects are going public at the same time, all having the same goal of bringing control over the contenteditable madness through a custom data model.

We at CKEditor are going in that exact same direction [1]. We are making a strong switch to the project, wishing to make it a powerful editing framework, just like Draft.js but in a larger scale.

[1]: [https://medium.com/content-uneditable/ckeditor-5-the- future-...](https://medium.com/content-uneditable/ckeditor-5-the-future-of- rich-text-editing-2b9300f9df2c#.vnr2mb8zg)

</comment><comment><USER27> By the way, did Facebook ever wrote why they only allow plain text? Its easy to imagine but I wonder if they ever A/B tested it.

<comment><USER28> Remember MySpace? That's why. When they allow styling of the content by users, it turns into a style war and horrible horrendous terribly bad user experience

</comment></comment><comment><USER29> I was just about to roll my own. Thanks fb!

</comment><comment><USER30> Does it support github flavoured markdown? Or can we make it support it?

</comment><comment><USER31> Bugged on Firefox for Android - typing overwrites what you typed before.

</comment><comment><USER5> Any ideas on how they implemented this using React?

<comment><USER32> It's open source, take a look at the source code? :D

<comment><USER5> I was just curious about how they are using immutable data structures to implement an editor. I skimmed through the code, but it is too difficult to read that quickly.

</comment></comment></comment><comment><USER33> This is very nice and minimal. It's not working well on mobile though. I wonder if they are planning on working on that.

<comment><USER33> Correction: It works great on mobile. My mistake.

</comment></comment><comment><USER34> How does it compare to Trix by Basecamp?

</comment><comment><USER35> Seems good. I would have loved a few more features though.

<comment><USER36> It's a framework. You build what you want on top of it.

</comment></comment><comment><USER37> <3

</comment><comment><USER38> Man that is beautiful

</comment><comment><USER39> Anything done by Facebook gets infinite upvotes nowadays.

<comment><USER40> Except their mobile app. Anything made by their mobile team should not be on anyone's phone, battery drain is a huge problem.

<comment><USER41> Literally one of the most downloaded apps of all time.</comment></comment></comment>


Recommendation of Making Indie App - Some things I have learned while making App - <AUTHOR> https://medium.com/a-little-better-than-yesterday/recommendation-of-making-indie-app-fe679c19954f <comment><USER2> Isn't Todo apps grotesquely over saturated. How do you feed yourself?

<comment><AUTHOR> Thanks for comment. As you said. I don't know whether I make a living, too.

However, I think that This App is different from other ToDo App. Because Taskflow is enable to sort out tasks in order. e.g. [https://taskflow.jp/public/projects/bde5bdd2-7ea5-4667-8d33-...](https://taskflow.jp/public/projects/bde5bdd2-7ea5-4667-8d33-bb3a08d97efb)

If you are interested, please try it!

<comment><USER2> I am totally satisfied by kanbanflow which is PWA so I can use on mobile (when inspiration strikes) and desktop (when I actually do work). I am able to reorder tasks too via drag and drop so I don't see your USP

</comment></comment></comment><comment><AUTHOR> Some things I have learned while making App</comment>


Oni: Modern Modal Editing – Powered by Neovim - <AUTHOR> https://github.com/onivim/oni <comment><USER2> I've been using Oni for the last few weeks as my daily driver (I liked it so much I signed up as a monthly sponsor), and here's my take on it:

It's a fairly new project, but it's under _very_ active development. There's an excellent community building around it and I think we will be seeing some really great progress over the next year. That said, it isn't anywhere close to feature parity with vscode, but the value proposition is: neovim, with vscode compatible snippets and typescript-language-server-driven autocomplete (also works with vanilla JS) out of the box. AFAIK it works with any language language server with a few lines of configuration. I have tried several times to get You Complete Me working to my satisfaction and never quite got there despite spending several weekends working on it. Oni just works.

The bonus value proposition is: since it is a GUI wrapper around neovim, you get to retain all of the muscle memory you have built up in your years of using vim, but potentially also get all of the goodies that a graphical IDE like vscode provides. I have tried the vscode vim extensions, and they are really impressive, but they are still limited by the vscode extension api and at the end of the day it's not a real vim. For me, it was just not-vimish enough to constantly interrupt my flow; I believe the original inspiration for Oni was the creator's frustrations with vscode vim extensions.

I have been digging into the development process and I've been _really_ impressed with how brilliant and industrious the main contributors are; features are getting added at a breakneck pace. A few things that are in the works: real-time browser pane with auto-refresh (I just tried out the browser feature and it works like it's just another vim buffer... pretty awesome stuff!), markdown preview, and a gamified tutor mode for newbies.

<comment><USER3> Urgh, this is so infuriating. Oni looks fantastic if it can deliver on what it does, but the infuriating part really is VSCode in all this.

Code is a great editor/IDE and has a huge amount of development backing and now a pretty large market share as well, which means inertia. But the vim bindings for it are just _garbage_. They are slow, make the editor feel sluggish, they don't work "quite right", etc.

No kidding this sparked some inspiration, but now I'm just going to have to either look at Oni and be jealous forever until VSCode catches up (if it ever does), or switch to Oni and end up missing out on all the features and inertia of VSCode :/

Hopefully the work that goes into this newer editor will spark some inspiration and get some of the work offloaded to libraries which VSCode can use as well.

<comment><USER4> How does VSCode vim plugins compared to evil-mode of emacs?

<comment><USER5> evil-mode is actually useful. VSCode's vim plugin loads really slow when you change project, doesn't have proper insert/normal/visual mode map, etc.

<comment><USER6> Have you used it recently? It works pretty well (?)

<comment><USER7> It works pretty well for movement, selection, etc. Anything that uses longer key chords is out—vscode is limited to two keystrokes afaict. It's really frustrating trying to replicate a highly customized spacemacs or vim setup.

</comment></comment></comment></comment></comment></comment><comment><USER8> The project README.md doesn't do justice to the improvements that Oni has been pumping out.

Some new stuff in the unreleased/development version (hidden behind feature- flags):

* Keyboard-driven navigation of embedded web browser: [https://twitter.com/oni_vim/status/977280220234268673](https://twitter.com/oni_vim/status/977280220234268673)

* Live reload with embedded browser: [https://twitter.com/oni_vim/status/976502172891299840](https://twitter.com/oni_vim/status/976502172891299840)

However personally I just love the scrollbar: it shows viewport-relative position _inside_ the file-relative scrollbar. (maybe this idea was borrowed from some other IDE, but I haven't seen it before.)

P.S.: Yes, it's electron, but if you're not using terminal Vim/Nvim then you already have given up "minimalism" in favor of ... whatever advantage you ascribe to gVim.

<comment><USER9> The kinds of things in your comment are the kind of things that make me consider actually installing Oni rather than just going "oh neat, people _are_ making Neovim frontends" like I did when I first saw this post.

The only thing that makes me hesitate is because I run FreeBSD on some of my computers and FreeBSD support wasn't quite there yet for Electron apps last I checked. It may have changed in the meantime.

If I were to begin using an Electron app, I need to be sure that I will be able to use it on my FreeBSD computers also. This is especially important for editors and IDEs given that writing software is rather central among the things that I do. Currently I use Neovim for a lot of things and I use PyCharm for bigger Python projects.

I am wondering though, would it be feasible for one person (me) to rewrite Oni so that one can use it from within their web browser instead of with Electron?

<comment><USER10> I liked the irony in this post, considering that the main draw of Electron apps is that they are supposed to be cross-platform. (To be fair though, FreeBSD is pretty niche.)

<comment><USER11> I don't consider any framework cross-platform unless it also targets TempleOS.

</comment></comment></comment></comment><comment><USER12> Electron frontend is precisely the thing I really don't want from a tool like vim...

<comment><USER13> Note that, according to others in this thread, it is not running in full browser mode, with the backend using javascript. Instead, it is using electron just for rendering.

People here claim this is a lot better for performance. I've no personal experience to verify this.

<comment><USER14> I'd tend to agree with GP, but this seems interesting.

I'll give it a try, although not with great hopes performance-wise but oni may be a good compromise between nvim and good lsp designed for vscode (like haxe lsp which struggles on nvim).

</comment></comment></comment><comment><USER15> While Oni is still very young, it looks like one of the more promising Neovim frontends, and the development is progressing quite fast!

If you are one of those types that often switch between editors, like me, then you might want to retain some of the muscle memory you've built up in stuff like Atom/VSCode/Whatever.

I started creating a layer[0] for SpaceNeovim to replicate some of the common keybindings, such as _Cmd+s_ for save, Cmd+w for closing tabs, _Cmd+[1-9]_ for switching tabs etc. If anyone is interested in getting this, without going full in with SpaceNeovim, they can extract it from [1], which currently handles both VimR and Oni (different key for CMD), but you could simplify it to not use _exe_ if you wanted to.

It requires that you load your init.vim, so _" oni.loadInitVim": true_ needs to be set in the Oni config.

Another thing, you can quickly add support for an LSP in the Oni config with just,

        "language.haskell.languageServer.command": "stack",
        "language.haskell.languageServer.arguments": ["exec", "--", "hie", "--lsp"],
        "language.haskell.languageServer.rootFiles": [".git"],
        "language.haskell.languageServer.configuration": {},

which adds support for the Haskell LSP, hie, behind stack.

[0] [https://github.com/Tehnix/spaceneovim- layers/tree/master/lay...](https://github.com/Tehnix/spaceneovim- layers/tree/master/layers/+gui/ide)

[1] [https://github.com/Tehnix/spaceneovim- layers/blob/master/lay...](https://github.com/Tehnix/spaceneovim- layers/blob/master/layers/%2Bgui/ide/config.vim#L49)

</comment><comment><USER16> I installed it and loaded my init.vim. It is just so slow. I'm a pretty heavy user of snippets, and it honestly takes like 1 second for my snippets to appear after I call them.

Nvim desparetely needs a good GUI. Ever GUI I've tried (I think I've tried all of them) lags when calling snippets.

</comment><comment><USER17> I've been very happy with gvim for many years, so I don't think I will change any time soon (although Emacs + evil is very sweet too, specially writing Clojure).

But there's one thing I can't really understand and, for me at least, is not an advantage working with code: why using tabs?

It feels like an anti-pattern when I'm using (g)vim, I use buffers and I split in few windows, list buffers, change buffer, etc; and I never leave the keyboard. I guess it is "modern" to use the mouse, including the file explorer (I use :find mostly, then ctags navigation), but it is something that doesn't work for me at all.

<comment><USER18> For me, it is to avoid context switch. I'll have all the files I need open in different tabs and switch between them. If I need to cross reference something, I'll open it in a new pane.

Personally, I like being able to see the filename in the tab and just hit gt or Gt a few times than to bring up the buffers list (with or without Ctrl-P) and type the filename.

That being said, I love spacemacs and it doesn't have tabs (or I haven't researched that enough) where I make do with fuzzy searching through buffers.

</comment></comment><comment><USER19> One Vim to rule them all? Looks nice, will have to try it. Will never be a daily driver for me, as it's not a terminal editor, but I like their thinking.

</comment><comment><USER20> It says it's powered by React and (presumable) Electron - does it have the same kind of issues that Atom does? Can it open big files, how responsive is it, etc.

How do plugins work? Do neovim plugins work out of the box with Oni, do you have to write a wrapper, or are they completely incompatible? This is really the make or break part of it.

<comment><USER9> > Can it open big files

Yes it should be able to do that. Neovim runs separately from frontends like the one in the OP.

[https://github.com/neovim/neovim/wiki/Plugin-UI- architecture](https://github.com/neovim/neovim/wiki/Plugin-UI-architecture)

</comment></comment><comment><USER21> This cropped up several months ago on here, see here for the comments from back then: [https://news.ycombinator.com/item?id=15060417](https://news.ycombinator.com/item?id=15060417)

<comment><USER2> It's disappointing to see that 90% of the comments there are people arguing about electron.

<comment><USER22> It's a valid point. Lots of people use vim for its sheer speed, which you throw out with the bath water when switch to electron.

<comment><USER23> I haven't tried the app yet but it seems that this is not true for this editor as NeoVim is the backend, not JavaScript.

<comment><USER14> 1.5G for a fresh startup with no files open is unacceptable when looking for a lightweight editor. That's what made me go back to vim; my previous laptop with 4G RAM couldn't handle vscode + a browser without going out of RAM. I had some hopes for oni but so far it doesn't solve any issue I have either with nvim or with vscode.

</comment></comment></comment></comment></comment><comment><USER24> Mentioning to perhaps save time for others: just gave it a spin but it looks like there's no eslint support, and my project uses prettier/flow/etc all wrapped up into eslint.

</comment><comment><USER25> [https://github.com/onivim/oni/wiki/Language- Support](https://github.com/onivim/oni/wiki/Language-Support)

Why do I need NPM to install vue.js as a language for Oni? Can anyone explain why I would want to bother with this editor if it requires Node.js?

Edit: I've tried all the other Electron based editors, and I don't recall a single one requiring Node.js/NPM to install anything.

</comment><comment><USER26> Eight acknowledgements, but no love for Bram? That's pretty cold, even if you don't like the way he runs the vim project.

</comment><comment><USER27> I do think I might prefer the approach of the asymptotic of development approaching vscode features with a base in pure Vim rather than the asymptotic approaching full Vim compatibility within vscode, and so I really want to like Oni.

What immediately struck me as "this project is not ready to use to actually code in" was trying to scroll with my Macbook's touchpad and it working pretty awfully. It seems like an obvious enough issue that it _has_ to be being worked in, but maybe not and I should report it.

<comment><USER28> This has been an issue for some time, tracked in ([https://github.com/onivim/oni/issues/1568](https://github.com/onivim/oni/issues/1568)) and ([https://github.com/onivim/oni/issues/405](https://github.com/onivim/oni/issues/405)).

Unfortunately is not an easy task to accomplish at the moment, due to the way vim scrolling is tied with the terminal approach (line by line), does not seem as a hard block though and hopefully can be improved.

Since most of the time you are scrolling with keybindings when using vim this may not be as big of an issue for most vim users (I never had issues in my experience), but certainly desirable to fix as it's a dealbreaker some.

</comment></comment><comment><USER29> Does it work with vim plugins? How much of my pre-existing vim configuration can be transfered onto oni? It's currently about 500-1000 lines in .vimrc and ≈50 3rd party plugins.

<comment><USER30> Pretty much 100%. It's a regular instance of neovim, just with an Electron UI around it. I've had no issues with my .vimrc at all.

<comment><USER29> Even things like Goyo? Then it's pretty damn great. Even though I hate Electron apps. Thanks, I need to try it.

</comment></comment></comment><comment><USER31> Great project. I tried Atom but was not satisfied with the performance. I would like to try it but looks like I am a noob with Vim. Where should I start?

<comment><USER32> The great "vimtutor", in 15 minutes you'll be extra-proficient.

</comment></comment><comment><USER33> What is the sweet spot of Oni? If you're looking for a full-blown IDE with vim UI on top then the vs code IntelliJ Visual Studio does reasonably good job at that.

If you're looking for a beefed-up version of vim as an IDE spacevim has a package manager and a curated set of over 200 plugins dialed in to work well together for gvim or terminal.

I'm just trying to understand the differentiator

<comment><USER34> SpaceVim is not same as oni, oni, is a gui app for neovim. And SpaceVim is a configration for vim/neovim to make it works like IDE,

in old version SpaceVim has many plugins, but we just release v0.7.0, and the default plugins is only 50.

you can checkout our release note:

[https://spacevim.org/SpaceVim-release-v0.7.0/](https://spacevim.org/SpaceVim- release-v0.7.0/)

<comment><USER33> @wsdjeg: thank you for your continued work on spacevim

</comment></comment></comment><comment><USER35> Looks great. Two questions:

1\. I wonder though why you/team didn't opt for extending the vim emulation - via a plugin - on VS Code. Did the exposed API limit you from doing so? Edit: Having used the extensions of VSCode, I am wondering if that is the case.

2\. Does it support installation of sublime/atom/vscode plugins?

<comment><USER36> As a developer of the VSCodeVim plugin, Oni is a great inspiration and we are hoping they pave the way for the Neovim API (which is starting to mature). We have started using neovim for a few things, the command line for example. So while we have started getting our feet wet, hopefully something like Oni (or Oni) replaces us...soon :)

<comment><USER37> Thanks xconverge, it's great to hear from you and appreciate the kind words! I'm a big fan of the work you're doing as well - really impressed with the VSCodeVim plugin.

</comment></comment></comment><comment><USER38> The challenge with building a new editor, is that it has to be superior to those editors already available. In this case that means beating Emacs which Im not seeing Oni doing yet. Will be interesting to follow though.

<comment><USER39> Qoute from a comment from the dev down the threads "I believe VSCode is making the right set of trade-offs for their user base - there is benefit to the sandboxing of the APIs as it helps lift the overall quality of plugins. Every editor is a different exercise in trade-offs, and I wanted to explore a different set, targeting a more niche group."

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

I belive that there is no "Perfect" software, but there is a software that is Perfect for me (or anyone else)

<comment><USER38> Fair point

</comment></comment></comment><comment><USER40> This looks really cool.

I tried it on my macbook, and for some reason I can't keep 'j' pressed to scroll down - I have to press it once per row. This works fine in MacVim and Terminal.app vim. Does anyone know why this won't work?

<comment><USER41> The Mac install guide [1] references needing the following in order to use "PressAndHold".

> To enable key repeat when pressing & holding a key in Oni, write the > following in your terminal:

        defaults write com.extropy.oni ApplePressAndHoldEnabled -bool false

[1]: [https://github.com/onivim/oni/wiki/Installation- Guide#mac](https://github.com/onivim/oni/wiki/Installation-Guide#mac)

</comment></comment><comment><USER42> Related projects — [https://github.com/neovim/neovim/wiki/Related- projects](https://github.com/neovim/neovim/wiki/Related-projects)

<comment><USER43> There are many projects on that list, if you want a fast native app I would recommend:

* neovim-gtk for Linux: supports using a file tree, tabs, a nice open dialogue menu for recent files, support for working with Plug for new plug-ins.

* VimR on Mac OS: has a file tree, buffer menu, and support for HTML/Markdown Preview.

</comment></comment><comment><USER44> does it actually bring any advantage except being closer to VIM in terms of navigation?

People mention it is better than Atom due to how it leverages Electron which is nice but still, what is the value proposition of this IDE?

</comment><comment><USER45> From the Goals section:

"Modern UX - The Vim experience should not be compromised by terminal limitations."

Could someone expand upon this goal?

Isn't the entirety of Vim built for - and around - terminal limitations?

<comment><USER23> Not really, it's certainly capable of terminal use but the various graphical frontends are a lot more convenient to use. It has never been the aim to only serve terminal usage.

</comment></comment><comment><USER46> not really impressed, quite far behind from geany and vscode, vim is handy enough too, so what's the selling point that I have missed?

<comment><USER47> You are comparing an alpha/beta with a full product. The selling point is the future where Vim becomes a native integration in your IDE (or actually the other way around) instead of a plugin which is never completely supporting all Vim options. Or at least that's my take on it.</comment></comment>


Virginia Judge Finds That Local Police Use of ALPR Violates the State's Data Act - <AUTHOR> https://www.eff.org/deeplinks/2019/04/victory-fairfax-virginia-judge-finds-local-police-use-alpr-violates-states-data <comment><USER2> It's ok, they'll just contract out with a third party (i.e. Vigilant Solutions) and while following the law to a T will be violating the spirit of the law.</comment>


Police Target Journalists as Trump Blames 'Lamestream Media' for Protests - <AUTHOR> https://www.nytimes.com/2020/06/01/business/media/reporters-protests-george-floyd.html <comment><USER2> They're a gang, and every officer involved should be sent to jail, for the same time they'd demand any other violent gang member be sent.</comment>


Ask HN: Should a shareholding employee have access to the companies cap table? - <AUTHOR> Hi HN,
Long time lurker. Recently jumped into the world of startups.
I recently accepted a job working as a developer for a startup in NY that just completed Series A funding. In my employment offer, they promised me 0.75% worth of shares at the companies current valuation.
I'm working through the paperwork now with the company lawyers and it only specifies the number of shares that are being issued to me. It's my understanding that the number of shares are a worthless number without knowing how many shares have been issued in total. Is this correct?
What's the standard practise for an employee to know how many shares have been issued in total? Is it reasonable to expect the company to give me access to the full cap table? What about for future rounds of funding? Even after I leave the company but vest shares?
Thanks for your help. <comment><USER3> In general, I think that telling relatively early employees in a startup their fully-diluted ownership percentage has become the norm.

I assume that this is the 0.75% worth of shares at the current valuation they promised you. You should confirm that this represents your share of the fully- diluted, as-converted shares of the company.

Here is more detail on what fully-diluted, as converted means: [https://www.capshare.com/blog/how-many-shares-are-on-my- cap-...](https://www.capshare.com/blog/how-many-shares-are-on-my-cap-table/).

If you confirm that this represents your share of fully-diluted, as-converted shares, then you can calculate the total number of shares on the cap table by simply dividing the number of shares you receive by 0.75%.

Regarding your other questions, every startup has a different approach to levels of transparency about equity.

Most companies do not grant full access to the cap table to employees beyond the founder group.

Many companies will give employees, especially key employees, a sense of their ownership percentage after future rounds.

Companies will typically provide less information to former employees who have left the company.

Exceptions to all of these generalities are somewhat common.

I wrote an article on this subject based on our experience with the 5,000+ companies and cap tables we manage on Capshare: [https://www.capshare.com/blog/will-cap-table-transparency- he...](https://www.capshare.com/blog/will-cap-table-transparency-help-your- startup/).

<comment><AUTHOR> Thanks for the in depth reply. Especially insightful to hear an opinion about about what level of transparency most companies offer - I struggled to find much written about it online.

FWIW, Capshare looks great - I wish my shares were being managed through it.

</comment></comment><comment><USER4> Personally I hate that the "right" answer to this question is no.

In my experience working at seed stage, as an early employee having access to the cap table is a given.

At mid to late stage, it's the polar opposite. Funding rounds further complicate things because not all investors get the same terms / buy at the same valuation. With the information available to a normal employee, it becomes virtually impossible to value your own equity.

It's exceedingly frustrating to know you own x% of a company without knowing the total number of shares or the total valuation.

<comment><USER5> Add to that - you may own 1% of a company and after $10M liquidation event - you get nothing.

OR: you may own 0.0001% of a company and after $10M liquidation event - <USER2> get $1M.

Something to consider: difference between common shares and preferred shares with liquidation preference conditions.

</comment></comment><comment><USER6> _" It's my understanding that the number of shares are a worthless number without knowing how many shares have been issued in total. Is this correct?"_

Yes, this is correct.

 _" Is it reasonable to expect the company to give me access to the full cap table?"_

No.

But, it IS reasonable for your contract to state what percentage of the fully- diluted capitalization of the company your stock options are granting you the right to purchase (at the time of the writing, or at a predetermined time in the future, like at the end of an round).

All that being said: All early employees are going to get diluted eventually (in most cases), and nobody has any way to predict how much dilution you're going to experience over time.

So, while it may make you feel better to know exactly what your options would be worth today, it's kind of irrelevant to what they'll be worth once you pass your vesting cliff.

The best protection, in that regard, is to only work with people you trust. If you're worried about being screwed-over by these people, and you haven't even started working there yet, that might be a bad sign.

</comment><comment><USER7> "It's my understanding that the number of shares are a worthless number without knowing how many shares have been issued in total. Is this correct?"

It's more than correct :(

Even if you knew the # of shares that had been issued, you'd also need to know the rights attached to each class of shares (e.g. some classes may have specified liquidation preferences) and also the terms on all outstanding options/warrants.

It sounds like you've already decided to take the offer (even without calculating the value of your 0.75%). So your only problem now is to verify that the # of shares in your contract matches the % in your offer. MalcolmDiggs' suggestion (getting the company to include the % that this represents on a particular date, in the contract) should be enough. That way, there's no chance of misunderstanding, and there's recourse for you if it turns out they lied.</comment>


Reveal 1.0: Read Eval Visualize Loop for Clojure - <AUTHOR> https://vlaaad.github.io/reveal/ <comment><USER2> So kind of like REBL but open source? I tried using REBL for a while but found it to be more of an annoyance in the long run.

For regular values pprinting to a buffer in Emacs is more than enough (and better since I can use all the same key bindings etc). And for the few cases that warrant special display it's just not worth the hassle.

I guess this has a little more potential since people might contribute more views/UIs easily which REBL was lacking. But still think it's very tough to get this right.

</comment><comment><USER3> Really cool, and reminds one of LightTable of course. It would be great to have many different views one could engage on the data as you're working with stuff. I'd also love to be able to see client/server brain-view side-by-side.</comment>


20 Web Apps That Ruled the Workplace in 2016 - <AUTHOR> https://zapier.com/blog/fastest-growing-apps/ <comment><USER2> Came across this on Zapier. Was surprised that I had never heard about apps like AirTable and OmniFocus. Each of these had at least 300 users on Zapier.

Home many of these have you used? Seems like a good idea to check on what's working in SaaS...</comment>


What trucking statistics can tell us about the economy - <AUTHOR> http://www.slate.com/id/2253823/ <comment><USER2> " _(Economists get more excited than the rest of us when happening on a potential new indicator.)_ "

Then again all of us professionals get excited when we happen upon something that helps us do our job better.

In this case, this indicator may have substantial predictive power of something we are very interested in during the Great Recession as we wonder if it's going to be V, W, L or whatever shaped (W is a double dip recession, L is what Japan's been experiencing).

</comment><comment><USER3> It's pretty interesting to look over the actual report:

[http://www.ceridianindex.com/userfiles/file/Index-Report- Apr...](http://www.ceridianindex.com/userfiles/file/Index-Report-Apr-2010.pdf)</comment>


Why startups always target money? Why is getting to millions first Priority? - <AUTHOR>

Every startup has target to get to million, billion. Why are they judged by the money they make not the problem they solve? Shouldn't the startups be focused more on helping people and promoting ethical business? <comment><USER2> You say that startups should be focused on "helping people" and "ethical business" (as if there's another kind that will last in the long-term). You're forgetting two things: 1) the people that bust their backs trying to get the startup off the ground in the first place, and 2) the value those people bring to the lives of their customers when they make a great product.

Also, why the denigration of money? Try paying new employees with something other than money. Any business that doesn't pay the market rate for talent will have trouble attracting new people and retaining the good people it has. Why? Try paying your rent, your car payment, your student loans, etc. with something other than money.

<comment><AUTHOR> In other words, we can't go outside our socio-economic boundary/ system. Phew !!!!!

</comment></comment><comment><USER2> This is the best thing ever written on money: [http://capitalismmagazine.com/2002/08/franciscos-money- speec...](http://capitalismmagazine.com/2002/08/franciscos-money-speech/)

<comment><AUTHOR> thank you for the link. That article certainly made me think again about how I think.....

</comment></comment><comment><USER3> some call it motive and unfortunately it boosts humans that are ultimately driven by hormones.

<comment><AUTHOR> unfortunately !!!!</comment></comment>


Ask HN: What is more valuable career wise, software engineering or computer sci? - <AUTHOR> Hey,
For weeks I've been struggling to contemplate the answer to this.. and thought "hey why don't I ask the people that run the industry"
I am three quarters of the way through my software engineering degree. Meaning I have one more year to go to complete. As it stands now I have enough papers to cover a computer science degree if I was to choose to graduate now. At the moment if I was to graduate I would have a full time at a well respected company.
I am still young and in no dire need for money.
I have three realistic options here: - Work part time and finish my software engineering degree. - Graduate with a computer science degree and work full time. - Work part time and start working on a side project that could have potential.
My question to you guys is.. What would you do?
I am in desperate need of some guidance or advice. <comment><USER2> Which one do you want to do?

There's no right answer. No grade at the end. And other than going off and working on a side project, none is likely to have much effect on your career over the long run. Going off and working on a side project is likely to negatively affect your career because it will most likely reduce the size and strength of your social graph and the size and strength of your social graph usually has a significant impact on a person's career.

Quitting school to work part time probably won't send a strong signal to future employers either.

Finally, why not get a dual degree/double major/whatever? This would give you time to line up a post graduation job that would benefit your career more than whatever job you have now. And it would make your resume stand out.

Good luck.

<comment><AUTHOR> I wanna do what's my best for my career.

That's the hard part.

I would never consider doing another major, there is no tangible benefits to it in my opinion, except a structured learning process that seems to be tailored to the normal achievers. I learn a lot better on my own and a lot faster.

I am in one of the best jobs I could possibly imagine in terms of my career point right now. Where I get paid an amazing amount for a junior and I am with some of the best people in the industry.

<comment><USER2> I trust you got my point about what probably is not best for your career. Notice I did not say 'bad' because how the future turns out is just a guess. That guess rarely matches what someone imagines.

First professional jobs are usually amazing...even when they aren't very good...because working around professionals is amazingly different than being in school and the rate at which a person learns is amazingly high. Most people still find another job after a few years because they have changed more than the company.

The first few years out of school, school often still matters and it is likely to matter to your next employer. For your current employer, well you already got the job and it is not unusual for an employer of students to see school as a distraction.

It's also not uncommon for companies to serially hire students with the expectation (and possibly encouragement) to move on after graduation. Before assuming a long term career at your current company, it's a good idea to take stock of how many people have moved from student to long-term employee and how many people have moved from junior to senior employee.

None of which is to say that is the case with your current employer. But in terms of a career it is good to have options and that means irons in the fire in terms of other employment and contacts down the road. Again, the most important resource for your career is your social graph.

<comment><AUTHOR> Quitting school is not best for my career? But working full time is good for my career?

So taking the computer science degree and working full time is in my best interest?

<comment><USER2> There's no text book and no test. It's real life. There are probabilities and there is luck. People make their choices and take their lumps.

Your career is probably going to be much much longer than the next year.

</comment></comment></comment></comment></comment><comment><USER3> > What is more valuable career wise, software engineering or computer sci?

Industry experience. And you won't get that studying in academia. Finish what you have there, get your degree, and start working. At this point you probably won't learn anything of significant value in the university, and after three to five years nobody will give a damn where you have the degree from.

(I'm not saying that university doesn't teach valuable things, because I'm today where I am because of what I learned studying; you just are too far now to select a new school that would bring such benefits in the next four years.)

<comment><AUTHOR> I think you are probably right. Or am I just trying to convince myself another year is a waste of time.

But I don't learn a lot from university nor have I ever. But the learning isn't the valuable part of university, it's that piece of paper to wave at employers.

What do you think is a more valuable piece of paper, Software engineering or comp sci? If hypothetically two people came in identically each with the different degree who would you hire?

<comment><USER3> If I was to decide, it wouldn't matter which one. I would rather have the candidate tell me about the projects he's proud of (and why he's proud) or projects that gave him a big, important lesson (and why).

Even if the candidate didn't have the degree, it could be of little importance if he provided some evidence of skills (completed projects or work experience would be enough).

Granted, I haven't been in the hiring position for quite long time, so I may not be the best person to ask that.

<comment><AUTHOR> Hiring people never changes, if anything it is gravitating to less and less care for a degree. So your opinion seems to be perfectly valid to me.

It probably is in my best interest to not go back to university, give me some time to work and start working on some more personal projects to decide what area of tech I want to follow.</comment></comment></comment></comment>


Ask HN: Review my holiday side-project (clipclipsave.com) - <AUTHOR>

So, an idea came to me during the holidays. I was reading an article (NYT I think) about consumers using coupons more–and sites like retailmenot.com ... I'll leave the rest up to the site (hopefully the home page will explain).
http://www.clipclipsave.com
Please keep in mind: - The admin area could use more styling - My robot logo will probably get replaced (my kid drew it and our initial name was kouponbot.com)
Feedback and ideas are much appreciated. I do have some thoughts on monetizing this via a paid plan–but I'd love to hear your ideas too.
TIA <comment><USER2> I love the logo

I got an SSL error when I signed up, looks extra scary in Firefox.

It wasn't obvious how to make a coupon in the admin area, maybe it should be a tab as well as a link?

The themes are awesome, but make the preview open in a new window

If you simply made the currency logo user selectable you'd instantly increase your possible audience from USA to everywhere. I'm UK based.

Clicking "edit" on themes does nada. When creating a new theme add some advice for the user - not too distracting, remember there is text overlay, what size? what image type?

Maybe allow me to change the colour/font of the text?

overall - this is awesome. I'd use it (if above tweaks were made and GBP currency) # my mother runs an online/in store retail biz.

<comment><AUTHOR> Thanks a bunch for the thorough feedback (I was worried cuz no one replied).

Actually, the themes will not be user-editable/creatable by the users once we go live ... we may allow paid users to create their own themes though.

I just have a self-signed certificate at the moment–that's the reason for the firefox warning.

The currency idea is great, thanks. Are coupons popular in the UK/Europe?

Thanks

<comment><USER2> coupon codes are popular. I imagine my mother would like this site if she could simply print out her coupon (or email it) direct from your site. Currency selection should be a no brainer IMHO :)

</comment></comment></comment><comment><AUTHOR> I wanted to also mention that I used the SaaS RailsKit to build this. It was extremely nice not having to mess with any of the account/signup legwork. <http://railskits.com/></comment>


How World's Largest Legal Ivory Market Fuels Demand for Illegal Ivory - <AUTHOR> http://news.nationalgeographic.com/2015/10/legal-loopholes-fuel-ivory-smuggling-in-hong-kong/ <comment><AUTHOR> If you live in Washington state, please support Initiative 1401 ([http://saveanimalsfacingextinction.org](http://saveanimalsfacingextinction.org), [http://ballotpedia.org/Washington_Animal_Trafficking,_Initia...](http://ballotpedia.org/Washington_Animal_Trafficking,_Initiative_1401_\(2015\))) on the November state ballot (you have until Nov. 3 to submit your ballot). This initiative will help with reducing the amount of illegal wildlife products coming to the US. Most of these products come to the US from Asia so ports in Washington state are a prime destination for the ships smuggling these products. California has recently passed a similar law.

<comment><USER2> I'll be an opposing voice: please vote against Initiative 1401, which alienate the property of those who already own such items, and further reduces the incentives for those who live near such animals to farm them, rather than to poach them.

Elephants are endangered because they are not owned; cattle, for example, are not endangered because the demand for them is profitable. The right thing to do, if one wishes to preserve endangered species, is to make it possible for people to legally raise, own and harvest elephants, rhinoceroses, tigers and the like.

<comment><USER3> This is an unfortunate truth.

I suddenly found myself finding big-game hunting a whole lot less morally repugnant when I realized that the big money that goes into it is very much used to keep many species alive. Operators of paid hunting areas have a very strongly vested interest in keeping their revenue stream going, and thus, in keeping viable populations around.

I am not pro-hunting by any means, but given a world where wildlife is hopelessly outmatched by man for resource competition, the only way to keep endangered species populated is to harness some aspect of humanity to fight for their preservation in ways that matter. Paid big-game hunting and animal cultivation _is_ an effective way to do that and should be done more.

The conflict between man and wildlife is one-sided enough that blanket "protection" is not sufficient to save many animal populations. They need active cultivation and encouragement if they're not to be wiped out through attrition (via illegal poaching, loss of habitat, etc). Simply making it _more_ illegal isn't going to prevent that.

<comment><AUTHOR> This works nicely in theory, but (just like with other humanitarian efforts in the region) there is no way of ensuring that the money the hunters pay actually ends up funding conservation efforts and not some official's new car.

This is the reason why the United States Wildlife Service has imposed a moratorium on imports of all hunting trophies from Tanzania and Zimbabwe. You can read more about it here [http://www.fws.gov/international/pdf/questions- and-answers-s...](http://www.fws.gov/international/pdf/questions-and-answers- suspension-of-elephant-sport-hunted-trophies.pdf)

There is nothing to indicate that the situation is dramatically different in other countries.

Also your argument doesn't explain why the populations of many of the species protected by Initiative 1401 have been declining. If what you are saying actually works in practice, the populations should have been increasing.

</comment></comment></comment></comment><comment><USER4> A colleague of mine ordered a Steinway grand piano from Hamburg with an ivory keyboard (legally made in Germany). He went through a long process of trying to get it into the US (including a few phone calls to the Secretary of the Interior), but there's an absolute ban on importing ivory to the US. In the end, he had to get a plastic keyboard made for the piano before it could be shipped here; the original ivory keyboard is in a closet in his mother's house in Berlin.

<comment><USER5> "...but there's an absolute ban on importing ivory to the US."

This is not true even for African Elephant ivory, at least not yet. [1] There is also legal ivory trade in Mammoth and other animals such as wart hog that can easily be found at gem shows, knife and gun shows, etc.

I talked to a guy from the Ukraine at a knife show who was selling Mammoth tusks recovered from Russia and apparently had quite a time at the airport but he was able to bring in his supplies for sale.

[1] [http://www.fws.gov/international/travel-and-trade/ivory- ban-...](http://www.fws.gov/international/travel-and-trade/ivory-ban- questions-and-answers.html)

<comment><USER4> Fair enough. (I hadn't actually looked up the statutes; I just believed him based on all of the hoops he jumped through to try to do it.) There does appear to be a ban on commercial imports; even though the ivory in question was legally sourced and sold in Germany, he can't get it into the US.

(Though this was probably 15 years ago...it looks like the law might have changed and he could get his keyboard now!)

</comment></comment></comment><comment><USER6> The headline of this article is misleading. Markets don't 'fuel' demand. They match existing demand with supply. The demand comes first, and exists in the mind of those who want to buy ivory (or drugs, or whatever the case may be).

<comment><USER7> If there is demand for legal ivory, and the market supplies legal ivory but allows illegal ivory to be laundered into legal ivory, then the presence of the legal ivory market indeed does fuel demand for illegal ivory: The supply side of the legal ivory market is the demand side of the illegal ivory 'market'.

Markets are not static entities that exist on top of some underlying substrate of supply and demand. Supply and demand change according to market structures.

<comment><USER8> Yeah, also the big difference it seems to me compared to say the idea of legalizing drugs is that this is a market of theoretically finite supply. Therefore, as the supply shrinks it increases the incentive to find other sources. This is in contrast to a legal drug market which would include legal production and therefore, in theory, crowd out the illegal supply.

</comment></comment></comment><comment><USER9> When I read the title I first thought about mammoth ivory, which is another kind of legal ivory. I still find it hard to believe that so much mammoth ivory can be found and wonder wether if it is also used as a way to sell poached ivory.

<comment><USER10> That's actually mentioned in the OP at one point: elephant ivory is sometimes passed off as mammoth ivory since the latter is easier to take out of the country.</comment></comment>


Drone delivery service - <AUTHOR> http://www.indiegogo.com/project-blue-sky

<comment><USER2> Perhaps it's just a poor video for an otherwise awesome project, but it just comes across as a load of disconnected ideas.

What's the 3D dome for? How does the drone delivery work? It has a social-good and humanitarian angle - awesome, but I don't see how printing 3D statues and a dome fit into that...

etc

I guess the video just left me wanting more explanation.

<comment><USER3> Y Combinator

My name is Arturo Pelayo, I am co-founder of ARIA (Autonomous Roadless Intelligent Array, on the web here: www.Aria-Logistics.com). I want to explain that we have been working with ReAllocate in this project since June (<http://aria-logistics.com/reallocate-collaboration/>).

ARIA is an open source autonomous logistics infrastructure that leapfrogs traditional road infrastructure and unlocks economic opportunity.

While the IndieGoGo video might appear to be disconnected, there is a flow to all of them because we have been building them for over a year both ARIA on its own by using open source UAVs and ReAllocate by trying to solve 'the last mile' problem by building in-country capacity using retrofitted shipping containers.

Back in June, both ARIA and ReAllocate saw an alignment as ReAllocate wanted to do a drone project for Burning Man. Between both groups, we drafted an open call through Chris Anderson's DIY Drones Community and ARIA also began the process of creating awareness of this collaboration on the website.

ARIA also sought out media coverage through contacts at Wired, Fast Company and other publications. Fast Company published an article about it over a week ago and you can read it here:

[http://fastcoexist.com/1680223/a-real-internet-of-things- for...](http://fastcoexist.com/1680223/a-real-internet-of-things-for-the- developing-world-and-burning-man)

You will see that the Fast Company article above focuses on ARIA as a company that began last Summer when four of ARIA's cofounders met at Singularity University for the 11-week Graduate Studies Program. During that time worked on 'Matternet': a network of autonomous vehicles that could be used to deliver high-value goods to remote regions of the world with no roads.

The Graduate Studies Program focuses on teaching technologies that are changing very quickly, are dropping in cost, are following Moore's Law and that are being integrated into the mainstream (these are called 'exponential technologies').

The comments so far in Y Combinator refer to a lot of "disconnected ideas". 3D printing is expensive at the moment but we believe it will become so cheap in the next decade that it will become obliquitous to the point that farmers in remote areas of the planet could request from their cellphones replacement parts for a broken tractor just by taking a picture of the broken part and an Artificial Intelligence component would analyze the image, determine what is broken and send to a 3D printer in a shipping container a request for it to be printed, billed to the customer and sent to their dynamic GPS location on their cellphone (sound familiar??) -- this is where the analog was realized and we joined efforts to build the project together.

Shipping containers are being considered also by ARIA since last year when the concept was first conceived as they are very easily found worldwide and are extremely cheap. There are over 600 million containers being used each year for the global transport of raw materials and products across the planet, ARIA saw shipping containers as the building block of a standardized structure that could be used as a ground station to host vehicles and recharge batteries. Because these containers would be located in areas of no roads, they would have to use renewable energy sources to charge batteries that power the UAVs that fly in a 10Km radius.

The network of shipping containers thus becomes also a distributed micro-grid that is smart and that can route packages from one station to another. Think of it as The Pony Express 2.0 .

As you can see, there are many ideas being put together and we are working hard at this at ARIA.

<comment><USER4> > _The comments so far in Y Combinator..._

You're confusing Y Combinator with Hacker News; they're related but different.

The video is poor because it's inconsistent; it starts by saying that Reallocate aims to "solve specific humanitarian issues" and then explains that the first project is to build statues of people attending Burning Man and delivering them via what appears to be AR Drones from Parrot.

Really? That's the most pressing humanitarian issue they could come up with?

There's nothing wrong with building 3D sculptures of people at Burning Man; but it's bizarre to call this a humanitarian endeavor -- even if "in the next decade" this technology may be used to order parts for "broken tractors".

Also, the speaker in the video talks too fast and drops her voice at the end of sentences, making her speech hard to hear / difficult to engage with.

<comment><USER5> >Really? That's the most pressing humanitarian issue they could come up with?

I can't help but feel like you're being intentionally obtuse. Nowhere in that video did it claim that the Burning Man test run was a pressing humanitarian issue. Its clear this is just to raise awareness/funds in support of the longer-term goal. The "no pressure" field-test aspect of it probably doesn't hurt either.

<comment><USER3> monkeytests,

The 3D statues are perfect analogs for possible delivery services. Many companies in the healthcare sector have begun looking at 3D printing for building pills and prevent counterfeit medicine which is also a huge issue worldwide.

</comment></comment></comment></comment></comment><comment><USER6> Hate to be a negative nelly here, but what really turned me off about this project is how narcissistic it seemed. Offering folks at burning man autonomous robots that will deliver miniature statues of themselves seems the furthest thing from something that could actually help the world.

And then to top it off the whole thing is being made into a TV show? Count me out.

<comment><USER7> _> Offering folks at burning man autonomous robots that will deliver miniature statues of themselves seems the furthest thing from something that could actually help the world._

That's not the end goal. If you can deliver a tchotchke to someone, you can also deliver a bottle of pills, documents, cellphone batteries, a Raspberry Pi, or small craft items. Remember that lots of places in the 3rd world don't have roads. Lots of places aren't even very passable by foot in parts of the year. Having any kind of infrastructure at all is a win and will enable better healthcare and more economic activity.

What better way to _test_ such a service than to send trivialities to 1st and 0th worlders? No one's going to die if they don't get their statue, and they might even donate to the cause anyhow. Someone might die without their pills, or their business might take a big hit without a part or a battery. Better to practice on the Burners than on people who actually need it.

<comment><USER6> Thanks for the response, it really got me thinking. I was about to tear down your critique bit by bit -- _you think healthcare is all about delivering pills?_ \-- _what do you know about roads in the 3rd world_ \-- _etc, etc_ \-- but then I realized something vis a vis the 3rd world road analogy.

Why aren't the positioning the autonomous drone delivery network as something that is more useful for the first world? I think running drone networks to deliver medicine and small good is merely a stopgap measure to building roads. And once roads are built, I feel that real economic growth can finally commence.

<aside>In fact, having this drone delivery network in the 3rd world may retard the development of roads; roads will only be needed to transport big things, and people can get by with continuous delivery of small things via autonomous drones, thus it will take longer for roads to be built because there will be less demand.</aside>

If this dialectic between roads and these drones exists the 3rd world (or rather, our idealized 3rd world with no roads), what about the first? Couldn't these drones be used to reduce the number of delivery trucks, as small, light items would simply be delivered by drone? Think of the reduction in carbon emissions and the reduced cost of road maintenance that would be the result of shrinking fleets of delivery trucks.

The above scenario, I feel, would make for a better pitch video. Showing me how this network can be scaled to improve the environment (and roads) around me is going to make me much more likely to open my wallet than telling me a story about some imaginary farmer with a broken tractor part that can be printed up with a 3D printer.

<comment><USER7> _> I was about to tear down your critique bit by bit -- you think healthcare is all about delivering pills? -- what do you know about roads in the 3rd world_

It's good you didn't because the 1st one would be putting words in my mouth, and it's apparent I know a little bit more about roads in the 3rd world than you do. (I've actually traveled and worked in parts of the world where there are no roads whatsoever, no electricity/gas/landlines/mobile whatsoever, locals have to take a boat 2 miles on the river to get their mail, and planes have to land on the beach.)

 _> I think running drone networks to deliver medicine and small good is merely a stopgap measure to building roads. And once roads are built, I feel that real economic growth can finally commence._

You should read the Matternet site. That is exactly the idea. It's a good hand-up idea. Once you enable healthcare, government, and economic activity, you enable the local population to build and maintain real infrastructure. Drones are interesting precisely because they are potentially low cost and "better than nothing."

 _> In fact, having this drone delivery network in the 3rd world may retard the development of roads; roads will only be needed to transport big things, and people can get by with continuous delivery of small things via autonomous drones, thus it will take longer for roads to be built because there will be less demand._

Unlikely. Drones are simply better than nothing. Once you have more economic activity, then you have the local economic base for real infrastructure, like roads.

</comment></comment></comment></comment><comment><USER8> Sadly, this is too filled with over the top platitudes to even be realistic.

Drones, IMAX domes, and 3D printers have nothing to do with building sustainable businesses or Burning Man.

If anything, this is funding an art project so that the artists can go to Burning Man for free. =/

</comment><comment><USER9> I hope they're going to open up the delivery technology, either to allow someone to commoditize it, and make it available to consumers (for taco delivery), or other noble causes, like rescue, etc..

Additionally, I'm somewhat curious as to what their plan is on Oakland.

<comment><USER10> I can see drone delivery to be quite useful in far-flung communities (Alaska, Australian Outback, Africa, etc.), to deliver critical stuff (medicines, critical components, etc.). Assuming the drone doesn't use a ton of fuel, it could literally be a life-saver.

Very excited to learn about this project, and hoping it literally takes off.

<comment><USER3> ajays,

Here is a video we put together a year ago while at Singularity University when Matternet was a concept and before there were two groups.

<https://vimeo.com/28247681>

</comment></comment></comment><comment><USER11> >Your only responsibility is to return the transponder and tell us your story for our documentary.

You can't give your GPS transponder back to the drone?

</comment><comment><USER12> Surely they mean Burning Man 2013. Burning Man starts 6 days after this fundraiser ends and I don't seem much here to show they have anything even close to a working version.

<comment><USER13> Nope, this is all coming together in the next two weeks. Those Reallocators are madmen, and know how to get things done.

</comment></comment><comment><USER14> How are addressing the fact that autonomous drones are not yet zoned for commercial use? As far as I know accepting money for delivery of these 3D printed statues constitutes non-recreational use, Burning man or not.

I'm genuinely curious, does this not apply? Do you have some kind of special exemption?

<comment><USER15> I suspect this won't even make the top 10 of "regulations ignored at Burning Man".

<comment><USER14> Very valid point, just curious about what there plans are.

</comment></comment></comment><comment><USER16> This doesn't appear to be at all related to TacoCopters which was set up by Star Simpson and Scott Torborg.

<comment><USER17> "No, Tacocopter is nothing more than a product concept created by Star Simpson, an MIT grad who stumbled into the limelight in 2007 after being arrested for wearing a hoax explosive device comprised of a circuit board and green LEDs." - wired.com (<http://www.wired.com/gadgetlab/2012/03/qa-with- tacocopter/>)

</comment></comment><comment><USER18> but will it also deliver tacos?!

<comment><USER19> 3D printed taco in the shape of you.

<comment><USER20> Can it be printed using human meat? Seems like the only way to do such a thing right.

<comment><USER21> Gross. Just figure out how to culture the stuff economically and you can be the first.

<comment><USER7> I bet someone could market yuppies their own flesh. It would be the ultimate "me" food item.</comment></comment></comment></comment></comment>


Show HN: Deckrank.co – Create and share rank-based polls easily - <AUTHOR> http://deckrank.co/

<comment><USER2> Looks good. One thing I observed is that its not obvious the options are draggable. Make it such that it looks draggable. Also when you drag an option, give the user a feedback like making the dragged option show a green drop shadow when dropped.

<comment><USER3> And change the cursor. There is absolutely NO reason not to use cursor:grab; and cursor:grabbing! ( _ok ok, fine, use cursor:row-resize for the older browsers..._ )

<comment><AUTHOR> Great tip! We're testing with cursor:grab and cursor:grabbing now, will push changes out shortly.

<comment><AUTHOR> Done. We've added a grab/grabbing cursor on the voting page.

<comment><USER3> Plays much better! Great!

</comment></comment></comment></comment></comment><comment><USER4> Pretty cool features with real world application! Bring it to the Play store and the App Store when ready. Would make it so much more usable if some more "sharing" features were also introduced. The UI needs a little refinement to increase the ease of use, as the comments here suggest.

<comment><AUTHOR> Thanks for the encouragement and suggestions!

</comment></comment><comment><AUTHOR> To help poll a group of people and figure the ranking of options, we created deckrank.co. On deckrank you can create and share rank-based polls. Here's what we used:

* Frontend: express web application framework and jade templates; bootstrap for stylesheets; jquery for form manipulation

* Backend: node.js, MongoDB

* Mailgun for sending emails

* We instrumented our website using Mixpanel and Google Analytics

* For source control and issue tracking we used BitBucket

* We bought our domain on namecheap for $9

* We minified our CSS and Javascript using Grunt

* Our editor for this project was Atom

* We've hosted our binary on DigitalOcean for $5/month

Main features:

* No signup

* Ability to rank options

* Users can optionally provide an email address to get the link to the poll for sharing, editing and viewing results

* Users can enable an option to disallow multiple votes from the same IP address

We focused a lot of time on the user experience especially on mobile. Let us know what you think!

<comment><USER5> How exactly did you test the usability?

The first thing i noticed was the checkbox label "Prevent duplicate votes?" was not clickable.

<comment><AUTHOR> Good catch! We're fixing it so checkbox label is also clickable and will be pushing out the change shortly.

<comment><AUTHOR> Done. We've made the checkbox label clickable.

</comment></comment></comment></comment><comment><USER6> Straw Poll [1] is pretty popular already (a lot of Twitch.tv streamers use it to get live poll results) and seems to do have a similar feature set.

Is there anything Deckrank offers over Strawpoll?

[1]: [https://strawpoll.me/](https://strawpoll.me/)

<comment><AUTHOR> The main difference is Strawpoll is for non-ranking polls, whereas deckrank is for ranking polls. Voters on a deckrank poll can rank options in order of preference, which is useful when figuring out collective choice in many situations. For example, here're the results from a poll on products announced at WWDC 2015: [http://deckrank.co/v/EyxcM08gL](http://deckrank.co/v/EyxcM08gL) and here's the voting page: [http://deckrank.co/r/415zA8gL](http://deckrank.co/r/415zA8gL)

</comment></comment><comment><USER7> When I click on links in the nav bar, they don't go anywhere. I have AdBlock installed which seems to be the cause but why on earth does AdBlock affect how an html link works?

I'm sure it's a great service but I shouldn't have to turn off AdBlock just to click links.

<comment><USER8> I am also facing the same issue in Firefox with ABP enabled.

<comment><AUTHOR> Thanks for visiting deckrank.

We tested on Firefox desktop + ABP and Firefox Android + ABP, but didn't see this issue. Could you share more specifics that'll help us reproduce the issue so we can troubleshoot?

</comment></comment></comment><comment><USER9> Great UX with amazing mobile experience!

<comment><AUTHOR> Thank you for the vote of confidence!

</comment></comment><comment><USER10> Good to use for specific surveys

<comment><AUTHOR> Thanks for the support!</comment></comment>


4 minute blog – What I learned from my first Blockchain meetup - <AUTHOR> https://medium.com/@horeaporutiu/what-i-learned-from-my-first-blockchain-meetup-308d4e74f634 <comment><USER2> poor guy fell into the hype hole :(</comment>


Carbon emissions could be halved by not wasting food, clothes, electronics - <AUTHOR> https://www.independent.co.uk/environment/carbon-emissions-cut-food-waste-clothing-electronics-climate-change-green-alliance-a8345641.html <comment><USER2> It's true. We can reduce carbon emissions by reducing consumption but at the same time, we'll be reducing productivity. The key is to increase services and the digital economy and also reduce manufacturer of goods. For years now, the best way to increase buying activity is to make things and to make old items obsolete. That is Apple's business model and that has been the business of most manufacturers. But what will happen if production is reduced? Individual's livelihoods will be decreased. The real key to the problem is to switch to other types of productivity such as services, and digital goods. It's nice to say that we can reduce our carbon footprint by reducing manufactured products. But that doesn't do anything, we also need to suggest and act on alternatives.</comment>


Why Elon Musk is an increasingly bad choice to run Tesla - <AUTHOR> https://arstechnica.com/cars/2019/04/elon-musks-management-philosophy-is-holding-tesla-back/ <comment><USER2> I've observed a hard-to-overcome—-approaching mutual exclusivity—-set of trade-offs that exist between what I'll call capability innovation and distribution innovation. Musk is a capability innovator first—-he designs things that are better than what we have—-and a distribution innovator second. Tesla is now dealing with a distribution innovation—-which is about how to get the newly improved thing out to as many people as want it—-problem, which is what our investor community focuses on most. But Musk keeps thinking first about how to make a better, faster, cheaper, more eco-friendly car, and second about how to get them produced at scale for as many people as want them.

I am so tired of distribution innovation thinkers calling for the firing of capability innovation CEOs.

Seems to me that distribution innovation has dominated the discussion of business for the last 100 years, and this leads to everyone eating shitty Big Macs and corporate scum who use obsolescence as a profit tactic. That's Big 3. I say let Tesla stay focused on Capability Innovation and let the market wait. We'll have self-driving cars for free in no time.

Better still, let's treat capability innovation and distribution innovation as separate businesses, and let's support Musk in driving the first while hiring someone else to do the second, with the assumption that Musk will soon build a better product built into the whole cycle.

Can anyone share a link to someone who is figuring that out?</comment>


Metaprogramming in Flat Assembler - <AUTHOR> https://gpfault.net/posts/asm-tut-1.txt.html <comment><USER2> Worth of note that this was also possible with MASM and TASM back in the MS- DOS days, and other 16 bit home platforms.

Hence why PC Assembly was so much more fun than dealing with it on UNIX derived platforms.

<comment><USER3> IBM S/370 Macro Assembler also was very feature-rich. I needed to have modules be loaded into the kernel in a certain order, so I implemented sorting of symbolic names in macro-asm (had to use loops at the macro level if I recall), and then assembly code would be emitted clean, already in the right sequence.

DCB was the same magic incantation as #include <stdio.h>

<comment><USER2> Interesting, thanks for sharing.

</comment></comment></comment><comment><USER4> Excessively using macros in assembler, just as in any language, amounts to writing a translator (code generator); problem, then, is that the language being translated from is usually crap, and the language being used to write the translator (the macro language) is also usually rather limited.

<comment><USER5> What ad-hoc code generation lacks, as a rule, is type constraints and structured expression(syntax and semantics). If it has those, it is bordering on being a complete compiler.

But if your base environment doesn't have notions of types or structured expressions either, which is mostly true of assemblers, then you are free to use macros to program at a higher level. The expressive power you gain by leveraging macros doesn't have a real downside because the core language is already so limited that it won't be more legible or maintainable to do it by hand.</comment></comment>


Invalid Certificate - <AUTHOR> https://blogs.bing.com/

<comment><USER2> Certificate points to *.azurewebsites.net and a dns lookup on blogs.bing.com sends it via bingblogwest.azurewebsites.net

Not quite sure what the issue is though, but probably misconfigured.</comment>


How to Live in SF on $18,000: A Response to the Yelp Open Letter - <AUTHOR> https://medium.com/@Izhou/to-talia-how-to-live-in-sf-on-17-597-76-a-year-1c6a39a630f6#.ifkroihre <comment><USER2> Once you get over FOMO, there are plenty of inexpensive places to live in SF if you're willing to commute and share with roommates. It's surprising how effective a budget can be. :)

<comment><AUTHOR> 100% agree! I definitely think it takes time to look, but if people are willing to compromise a bit, there are a lot of options.</comment></comment>


New Opera 15 Beta with Blink engine - <AUTHOR> http://my.opera.com/desktopteam/blog/

<comment><USER2> This is horrible. Every feature I loved about opera is gone.

This is chrome with a slight opera theme.

</comment><comment><USER3> This links to the blog index page, but it should link to the individual blog entry: [http://my.opera.com/desktopteam/blog/opera- next-15-0-release...](http://my.opera.com/desktopteam/blog/opera- next-15-0-released)

</comment><comment><USER4> Not available for Linux yet :(

</comment><comment><USER5> Opera's workings change far too often to bother supporting it

<comment><USER6> Care to elaborate?

</comment></comment><comment><USER7> Blink is Google's fork of WebKit, which is being used in the upcoming versions of Chrome. Opera is using plain WebKit.

<comment><USER8> Actually, according this blog - [http://my.opera.com/ODIN/blog/2013/05/28/a-first-peek-at- ope...](http://my.opera.com/ODIN/blog/2013/05/28/a-first-peek-at-opera-15-for- computers)

"It's called Opera Next 15 and it's based on Chromium 28 — which means that it comes with Blink on board"

<comment><USER7> Oh cool. Last I heard was that they weren't going to use Blink.

<comment><USER9> Since they announced they'd been using Blink literally the same day Blink was announced, you should start listening to better sources. :P

<comment><USER10> They said they weren't using Blink yet for the _mobile_ browser, still Chromium though, not Webkit. I can see how someone might get confused.</comment></comment></comment></comment></comment>


On Nerd Entitlement - <AUTHOR> http://www.newstatesman.com/laurie-penny/on-nerd-entitlement-rebel-alliance-empire <comment><USER2> Inherent in the concept of "privilege" is that it is invisible to the person who is privileged. Social privilege is an elevated norm, but since it's a norm, it's extremely difficult for the privileged person to see it as anything other than normal.

By analogy: A person who has grown up in Denver is 5,000 feet higher in elevation than a person who grew up in New York. But to each person, their subjective experience is of a relatively flat city with tall buildings; their subjective experience is each that their city is normal. There's nothing remarkable about things we experience every day of our life.

It's only when they travel to each other's cities that they can tell a difference: the Denverite breathes easily in both places; but the New Yorker might get short of breath in Denver.

Unfortunately, it's impossible to travel into each others' lives the way that we can travel into each others' cities. So the only way we can learn about the different norms of each life is to listen to other people talk.

<comment><USER3> While you have good and valid points, I think some privilege is visible. Members of royalty likely know they are privileged, and in unusual circumstances. In a racially segregated community where white people own things and have money while black people work as the help and are poor then the differences in privilege are pretty visible, and part of the norm.

<comment><USER2> That's a good point and I agree with you. However I think maybe such visible privilege is a less difficult problem, because it is more visible.

In recent western cultures there's a tradition that the most obviously privileged--like royals, national politicians, celebrities, rich CEOs--also have an obligation. In the U.S. that often takes the form of philanthropy (see: Bill Gates); in monarchies it takes the form of public leadership and service.

I think the most pernicious and difficult social problems come when people are privileged but don't realize it and/or don't believe that it's true. Thus they feel no particular need to change anything.

<comment><USER4> There is also the problem of the highly privileged imagining that their level of privilege extends down to those who resemble them superficially. If the white guy at the grocery counter wishes to lecture me, another white guy, about white privilege, OK. If a member of the Rockefeller family wishes to, I might well resent it.

</comment></comment></comment></comment><comment><USER5> Nice quote - "Finding out that you're not the Rebel Alliance, you're actually part of the Empire and have been all along, is painful."

Conceptually agree but feel something is missing in the argument.</comment>