Hacker News .hnnew | past | comments | ask | show | jobs | submit | ks's commentslogin

A company I worked for in 2001 used chucked streaming to provide search results. The search results were collected by performing live searches in parallel (server side) with multiple partners and then aggregated into a single stream of chunked content. Basically the HTTP connection was kept open until all searches were complete, which would take a few minutes. The results were pushed incrementally to the browser as soon as they were available

This worked surprisingly well. They started with almost pure HTML with the results split into multiple tables to produce what looked like a single table of results. The only drawback was that the columns needed fixed width so that they would align properly.

After a while they switched to a Javascript based solution with dynamic filters. They used the same backend streaming engine to output chunks of Javascript code inside <script>-tags, which called a global "addResult(...)" method to update the state. If the search was cached, it would first render HTML code server side, which was then "hydrated" by the javascript code if needed.

Later it was replaced with a standard XHR polling mechanism.

It is interesting to look back at what we had to do that is trivial with today's technology.


According to the page, it was Amazon that made the original claim, so they would have the necessary sample size.

But there's no guarantee that it will apply for all pages.


Wouldn't this feature be similar to how Git converts line endings?

https://help.github.com/articles/dealing-with-line-endings/

It would probably have to be configured per repo so that it doesn't mess with tab delimited files etc.


Auto CrLf is a terrible thing that can change the meaning of programs. Source control shouldn't be changing the contents of files (though a hook to format wouldn't be bad necessarily).


Auto CRLF is awesome for languages I use. Which ones can it change meaning in?


Any language that allows string literals to wrap lines without normalizing it. Like C# or F#. Anything with HERE docs might do it, but Ruby and Python seem to normalize.


Actually ARM also has an office in Trondheim, Norway that is behind the Mali GPU (700 million processors sold in a single year)


> If you use their vals IntelliJ will syntax highlight it as an error in red for the simple reason that it's non-compliant with the Java language spec.

There's a free plugin that adds Lombok support to Intellij. You will be able to use getters/setters/builders etc. as if they were compiled.


Builders etc. work fine, it's the vals that are permanently underlined in red, even with the plug in. It compiles OK with vals, but still highlights it as an error in red in the editor.


> Map<String,User> userIdMap = new HashMap<String,User>();

1.7 introduced a simplified version:

Map<String,User> userIdMap = new HashMap<>();


And Guava has Map<String,User> userIdMap = Maps.newHashMap() which uses Java's type inference rules, and works in 1.6 (I think even in 1.5)


You recommended a Javascript library that was maintained for 8 years. I consider that a good recommendation. Backbone and Angular have only been around for half that (yet)


Or the web server could be configured to return text/plain for *.lsp files


* Navigation menu using GIF buttons. Often animated, including the rotating "@" symbol for sending mails

* Creating gradient text using one <font color="..."> for each letter. http://jsfiddle.net/A2VCE/

* Putting text in <noscript> and <noframes> tags to support old browsers

* Add "lowsrc" attribute to <img> because the larger image would take too long to load.

* List detailed hardware specs for the web server on the "about us" page.


To put things in context. The oil industry is producing 20% of the total GDP of Norway and 50% of all exports. It's very important and it will be painful when it ends, but Norway will not be much worse than other European countries when the oil runs out.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: