HN user

deliminator

80 karma

vivid.flame1084@fastmail.com

Posts9
Comments29
View on HN

Overflow protection is fail-fast behaviour, similar to array bounds checking. It allows you to more quickly find the source of errors. I believe everybody agrees it's a good thing, at least in the array bounds checking case.

Optimization flags in general should not change visible program behavior, except for performance.

The only behavior you would be able to observe before, that you wouldn't after disabling overflow behaviour, is a crash, and you would have fixed that anyway as soon as you observed it.

Of course, if there is $370 Million on the line, maybe just disable it and hope for the best :-)

Be careful, in the country I live in (Austria) it is illegal to import prescription drugs. Customs made me pay a fine of about 60$ for trying to import Melatonin (and I didn't get the Melatonin either).

My colleagues and I learnt that lesson the hard way. We are working on a WYSIWYG editor (Aloha-Editor) and the first version did depend on jQuery (and jQuery UI for that matter). That caused a lot of trouble for people integrating the editor in their websites, especially if they were already using jQuery. For our particular case we really didn't need it, as it's just as easy to say .getAttribute() instead of .attr(), and we didn't use selectors much, if at all. Effort is underway to get rid of the dependency from the core library in the next major release.

Actually, most of the people working in those organizations are children of party officers or executives of wealthy foreign currency-earning organizations.

I expect he had connections and/or was able to bribe his way towards becoming a tour guide. Tourism, after all, is a foreign currency earning industry.

We provide wysiwyg editor integration (Aloha-Editor) with presence and remote cursor. We are working on a hosted/downloadable service with low-level data-sync api and high level wiki features: https://wikidocs.com

We are building a real time HTML synchronization engine at wikidocs.com (using a custom OT engine). It's still work in progress, but you can already try it out - if you fire up the inspector and manipulate the DOM, your changes will be synchronized automatically.

Following quote comes to mind (Dijkstra) "...we have to keep it crisp, disentangled, and simple if we refuse to be crushed by the complexities of our own making..."

I found his use of the word "crisp" very interesting. I believe it means to keep your code short and to the point, without any extra embellishment.

Correct me if I'm wrong, but does this not merely allow an attacker to cause the browser to make requests with custom headers? That is, it does not allow the attacker to gain the CSRF token, and if the CSRF token is not known to the attacker, he would still not be able to make API requests.

Before the GPLv2 we had the AGPL, which made it explicit that you had to divulge any server side code.

Now, with the GPLv2, it is possible to use Aloha freely in most websites/webapps. You don't distribute your website/webapp and therefore are not bound by the GPLv2 to divulge your website's source code.

The GPLv2 _would_ take effect if you distribute your website in the traditional sense - a package that someone can run himself.

(IANAL and can't speak for Gentics etc.)

The aloha core is 239KB (minified but not gzipped). Plugins can be anywhere from 5KB to 50KB. The version on the CDN includes about 30 plugins.

I expect the size would be around 300KB if only the basic plugins are included.

Still, it's a lot bigger than redactor - point taken.

The latest big development was porting the UI from ExtJs to jQuery UI. This had some benefits concerning licensing and code size.

Drupal is interested in integrating Aloha, and we are currently discussing several improvements that would be necessary for them. Have a look at the issue tracker. I think the UI À la carte and accessibility will be the next big user-visible developments.

In my experience Clojure is very callable from Java. For example, Lists and Maps can be passed as normal arguments to clojure functions without conversion step. This works because Clojure favors abstractions over concretions. For example, instead of a concrete cons cells datastructure, Clojure has the ISeq interface. As far as I can tell, calling clojure from Java introduces no overhead at all.

Datomic is a commercial database system developed in Clojure. The peer library is what you use in your client application to query the Datomic server. The peer library is written in Clojure. I expect that means calling Clojure from Java, and including the Clojure runtime jar in a client application, is safe/stable/supported enough to build a business on top of it.

I'm still learning though, so take what I said with a grain of salt.

There is a case for doing both, pre-rendering on the server, and rendering updates on the client. This approach is used by Google plus for example.

I wrote a simple implementation that uses google closure templates to pre-render the page with dynamic content on the server, and to me the app felt more stable. This feeling may be entirely subjective, as I didn't make any actualy measurements.

A counterargument may be that this approach does not scale and would overload a server resulting in worse stabilit/render-time in the end.