skysight-inc/HackerNews huggingface dataset:
I've done some similar implementations years ago (but with C/OCaml, nothing on the GPU), so I didn't refer to many things for this.

Fresnel reflectance is based off of http://mathinfo.univ-reims.fr/IMG/pdf/Combined_rendering_of_..., although I'm not doing any spectral or polarization-dependent code right now (I wanted to leave that open, and it allows accurate metal simulation).

I tinkered with a blend of some pseudorandomness functions until getting something that worked.

https://www.siggraph.org/education/materials/HyperGraph/rayt... was used for ray-box intersection.

The distance function experiment for the drinking glass is based off of the concept of http://www.iquilezles.org/www/articles/distfunctions/distfun... (like raymarching, includes normal computation).

I consulted http://madebyevan.com/webgl-path-tracing/ to see the best way to do accumulation (and made some realism fixes in https://github.com/jonathanolson/webgl-path-tracing, see https://github.com/evanw/webgl-path-tracing/pull/1 for details).

Many other things can be pulled from online or from books like http://www.amazon.com/Game-Engine-Design-Interactive-Technol....

Please let me know if you have any questions, (see my email at http://jonathan-olson.com/about), and please feel free to use my code however you like (things I wrote are MIT, but I use CC-by and CC-by-non-commercial HDR images).
OTOH corruption & fraud is much easier with anonymity.
Humming is the making of a low, steady continuous sound like that of a bee, as described in the dictionary.

In the IETF, we use this as a variety of voice vote. However, we don't take formal decisions using it; we use it to get a "sense of the room". The chair will make a statement, and say "if you agree, hum... if you disagree, hum... if you didn't express an opinion, hum...". And people hum.
In the author's separate page of implementation notes, a Queue class is created that doesn't have threading overhead. That would be great, but it uses list.pop(0) which is an O(n) operation. For O(1) performance, it should use collections.deque.popleft() instead.

Otherwise, the article is first-rate :-)
Ask HN: Is it possible to have forum type community running without a database?
This question came about as I've been asked to set up a very small forum type community running on a Raspberry Pi, and the thought occurred to me that statically generated websites can handle reasonable amounts of traffic whilst using relatively small amounts of resources.

So I wondered if it is possible to run a forum type community - something along the lines of [elgg][1] or [Friendica][2] - but without the MySQL or other type of database backend?

Now I may be about to get laughed at silly for asking such a daft question, but I would genuinely like to know the answer. So, does HN think something like this is possible? And if not, could you please explain why not? And if it is possible, have you got any recommendations!

Thanks in advance. E

[1]: http://elgg.org/
[2]: http://friendica.com/
What if you fold the universe in half a hundred times instead? Just sayin'.
This looks to be very good. One tiny, and I do mean tiny, wish is that the code follows BSD/KNF style. I know that's all down to preference anyway, but it does make things easier to absorb.
Relying on a passphrase only is not good enough. Enter it once on a compromised system and it's game over. Since your ID is tied to your passphrase you even have an issue and you will need to revoke your public key.

Many years ago, people realised you need to rely on something more than knowledge (of a password/passphrase) alone. Pick any two out of {something you know,something you own,something you are}, the latter being implemented by biometry.

That's why you need your ATM card, and why it has a PIN code.

This is a step back into a world were security wasn't good enough. Security is more than crypto alone, it's mainly about keeping things secret. There are too many ways a passphrase could be compromised or discovered.

This approach focuses too much on the crypto aspects, and not enough on all the other things involved in building something that is secure.
Fascinating, and brutally honest.
some of their analyses are performed on raw voxels, but individual neurons for ablation experiments can be identified either manually or using video image processing to identify single neurons. It is a hard problem and a number of people are working on improving it, but for many analyses it may not be strictly necessary as a preprocessing step.
The Quest to Brew Beer With Space Yeast
See the bottom of the grand-grandparent comment https://news.ycombinator.com/item?id=8059218
Generatedata.com
Aural Fractals | Music from Chaos
It's free.

In 2 years they can sell a big 3D dick collection.
See the Phasing, in a Visualization of Steve Reich's Piano Phase
Bedroom tax has been in force for people in private accommodation for many years. The new bedroom tax only affects people in public housing.

The bedroom tax is stupid. The aim is to make people move to smaller properties. People need money to move - you need to pay any existing rent arrears; any utility arrears; you then need a deposit and a month's rent advance for the new property (but I don't know how that works for public housing); and then you need vehicles to do the moving. Right at that point where the person needs more money they have some money taken off them.

Since the government likes "Nudge" they should have combined bedroom tax with a package that does all the logistics for moving and a single long term loan to cover some tightly controlled costs of moving. This would only be available to people who need to move in the next year or so after the introduction of the bedroom tax.

I haven't really looked at your poll, but:

> On average people think that 27 per cent of the welfare budget is claimed fraudulently, while the government's own figure is 0.7 per cent.

This says nothing about the amount of fraud in HB compared to other benefits. If there is near zero fraud in all benefits except HB it'd be fair to say that HB was riddled with fraud.

Rather than relying on a biased (nothing wrong with that, but a union using a YouGov poll is clearly using the poll to support their position) source using an online poll here are the actual figures: https://www.gov.uk/government/collections/housing-benefit-re...

> The total GB value of Housing Benefit (HB) overpayments outstanding at the
beginning of Q2 (2013/14) stood at over £1.3 billion; an increase of 10% on this point
the previous year.

£1.3bn per quarter is a substantial amount of money, even if it's a small percentage of total HB paid.

Note that these talk about overpayment and fraud, not just fraud; and that they are National Statistics and they have been assessed by the UK Statistics Authority: https://www.gov.uk/government/publications/assessment-of-com...

Note also that the amount of fraud present in HB has severe affects on people legitimately claiming HB: it makes ministers (who seem to ignore actual figures) want punitive HB regimes; it makes councils spend time and money on fraud detection which makes claiming HB unpleasant and lengthy; it increases the evidence burden for claimants which means that bank / building society statements are requested by councils which is pretty unpleasant and increases risks of data breaches.
The point on apple pushing thinness is often put forward as pure design decision, but I am more and more convinced the manufacturing costs might have at least an equal part.

Battery is the same on every model, and bumping the battery amount would force them to split the line in two models, which would need a separate fabrication line just for the bigger model, or have a cheap one with the same amount of battery, wich would significantly bump the entry model price.
> ...Qhadaffi's Libyan government would have effectively been the CA for BIT.LY.

They already are, in practice. Many reputable CAs will issue certificates to anyone who can forge an MX record for a domain. With or without DNSSEC, TLD operators are capable of forging those records.

>It seems absurd to me that the Internet's response to the "global passive adversary" of NSA would be to hand the entire PKI system over to the USG formally. That's what DNSSEC does.

No, DNSSEC builds authentication into a system that is and has always been centrally controlled. And just like with the X.509 CA system, you can use pinning or Convergence or anything else you want to supplement that.
Some times ago I created my own file encryption software using libsodium. It uses XSalsa20, hmacsha256, pbkdf. It hide password input on the terminal. It is really slow for large files (GBs)...

https://github.com/viralpoetry/VPcrypt
H3: The Fast HTTP header parser library in C
Cupom de desconto
David’s Health Tech Newsletter: No. 17
> They are entirely orthogonal

That's true in a technical sense, but they're effectively part of the same process for many, many skilled immigrants. Come in on H1B -> Start GC process -> Use ongoing GC application to get the H1B extension -> Finally get full GC.

> It's a temporary visa so it has to have a term.

That's answering it with a tautology. My question remains: why would we want any skilled-worker visa to be temporary? If they're skilled enough today, won't they be even better qualified after six years of work experience? It just seems ridiculous.

I'm sure plenty of people would love to skip the whole H1B and go straight for an EB3 or something, but since they're capped by country it isn't really an option for many people.
1. Don't do operations. That's going to be a total waste of time.

2. Don't do an MBA. Very little that you learn in an MBA will apply to product management. It can help with branding if you didn't go to a great university for undergrad though.

I made this exact transition a few years ago. The most important thing is to actually get practice designing and launching products (this is why an MBA will not be very helpful). This will give you a lot of confidence. It will also give others confidence that you can get the job done and show them that you are not just another person that is bored with their job in XYZ.

If you can work with product managers and engineers at your company on a short project that would be a start. If that's not possible, do it on your own. Either use the coding skills you have now to build and design a product, or work with other technical people. Hackathons are a great way to do this. Come up with an idea before the event, including mocks and detailed interactions. Programmers at hackathons are always looking for ideas. Many show up with no idea of what they want to build. If you do this part of the job for them, you will have a good experience.

Another approach is to force the issue at your current company. Here's a way to do this. Read the list of customer issues. Actually design solutions for those problems and show them to the product managers and engineers on the team. If you have good solutions they will start to listen to you. If you don't, ask them why and you will start to learn how they think about product decisions. This may not allow you to transition but you'll get experience that you don't have now.

At the same time, I'd recommend reading 'Cracking the PM Interview' to prepare for the interview process. If you're ultimately not able to transition in your current company you should leave and interview for PM positions elsewhere.

Feel free to email me (see my HN profile). Happy to jump on a Skype/Hangout call to chat more.
The approach taken by Markram is quite different from what Jeremy is presenting here. Markram is attempting to simulate large systems, and this work is controversial, largely because many people don't think we understand neural systems well enough to model them with appropriate fidelity at that scale.

The work presented here represents a new take on a more classically accepted approach. Record an animal's behavior as well as the neural activity, and attempt to understand how neural activity controls the observed behaviors. The difference here is a dramatic increase in scale and computational capability by recording the entire brain of a zebrafish at once, and being able to run analyses in a few seconds instead of hours, which has real implications for experimental neuroscientists.
One of the main points of static sites is that they don't update terribly often. Forums, on the other hand, update constantly. You are wanting something with good caching (server side and client side), and thats about it. Otherwise, you are going to be regenerating the pages constantly on every post/update.
There is some "delegation" implementation inside, ala "liquid democracy". This is a nice mix of "direct" & "representative" democracy, a mix that I believe is very promising to avoid corruption with representatives and lack of participation with direct voting. See http://en.wikipedia.org/wiki/Delegative_democracy
You can run a community of sorts, but the feature list will be sparse. The only viable system sans-database that comes to mind is plain-text.

I'm a member of a forum that had an old system in the beginning that used plain text "database" for a very long time. Performance was fairly reasonable at 5000 visitors per day, if the daily hit counter was to be trusted. They since moved it to SQLite, which is very reliable in its own right, and now it's Postgres. It was only now that we got searching as a "feature".

The system was written originally in PHP 4.x, but they did move it to 5.x. I'm not sure what version they use now. I do know they were running ancient hardware and was up solely due to the charity of the admin.

I think there was an index file that stores new topic summaries, as there was no field for titles, when they were created.

They used microtime() as the ID, but the topics were stored by splitting it to 3 digit directories.

Seconds as 1234567890 and decimal 0.12345618 were combined to create /123/456/789/012/345618.html

There's no registration system or other way to identify the user so I believe the posts were separated by some kind of entry separator in a single file.

I think the pagination system created an array of sequential IDs and checked to see if files existed in those directories. There were no numbered links for pagination, only next/previous and if you reached the end, the next page would be blank.

There's no reason you should ever get laughed at for being curious.
"Error checking" seems pointless when you've got no means to return an error code. You shouldn't need it anyway, as converting any integer to base10 in a preallocated buffer should be a no-fail operation.
RogueBasin
On my ubuntu 12.04 with on-board intel graphics+ chrome browser.
Error: GLSL link error: for vertex shader: <fragment source>
The old town is the equivalent of Manhattan, moved to the Middle Ages (or earlier). I don't know the new part of the city, but it probably is concrete and tents/shanty towns, like all large cities in poorer countries.

http://data.un.org/CountryProfile.aspx?crName=Yemen gives a gross income per capita for Yemen of around $1300. http://en.m.wikipedia.org/wiki/Economy_of_Yemen has a more optimistic $2200. Sana'a may be richer, but I guess the poor will be significantly below that.

I don't find it strange that they will not be able to pay for the infrastructure and the additional costs of desalination and of pumping the water to the city (over 2 km up)

Also, looking at http://files.transparency.org/content/download/700/3007/file..., Yemen is perceived to be extremely corrupt. That means that its population may not trust their government with that amount of money, even if they could afford to pay it.
> Enter it once on a compromised system and it's game over.

It's the same issue with PGP. Instead of capturing the password it captures the decrypted private key.
I don't know anything about you, I'm just telling you how your comment came off. Personally I have no skin in the game because I've never played an RPG, so you should put your defensive accusations of insecurity on hold for a second and consider whether there really was something about your comment that made it come off the way I interpreted it. Hint: it wasn't simply agreeing that table top gamers tend to be nerdy.
If you liked this excellent overview, and you're not too tired of me going on about the new Mill CPU architecture already, you may like that Mill loads specify their retire cycle and represent memory at retire time rather than issue time. The Mill is therefore immune to aliasing races. And this works between cores too!
May be someone just put some screenshots.
I would guess that it is part of Yahoo's strategy to keep everybody within the same "walled garden".
> He didn’t find a way of dividing programming sheep from non-programming goats

Obviously http://blog.codinghorror.com/separating-programming-sheep-fr...

> My physician put me on the then-standard treatment for
depression, an SSRI.

2014 is much better. http://www.nice.org.uk/guidance/CG90

> [...] asked some statistician colleagues if they could help us recover more information from his data.

It's a shame more organisations don't have access to statistician helpers to ensure that they are being accurate and honest when seeking, interpreting, and presenting data. Perhaps this is something else that is a result of the dominance of Excel - people have collections of numbers and you can pummel them into a spreadsheet and produce some nice charts and graphs but that leads to people over-interpreting the data.

> After a lot of work, the answers were, by and large, that we couldn’t see any such differences in our data.

This is surprising to me. I remember reading the blogs around the time and it seemed like a sensible claim. I can't remember anyone digging into the data and pointing out flaws. Did they?

I think I believed it because I feel "unteachable".

EDIT: I freaking love this paper because of its discussion of a mistake made during a phase of mental ill health, and the recovery journey afterwards.
Yours uses symmetric keys while miniLock is public-key crypto (crypto_box in NaCl terms).
If you're looking for a substantial tutorial where you build a decently large web application, check out http://www.angularcourse.com.

As a bonus, I'm available to help if you have any random questions at all.
Do you guys use anything to manage your encrypted DMGs (like knox https://agilebits.com/knox)?
How To Successfully Integrate Social Media With Your Daily E-Commerce Activities
Hashing a credit card number for use as a fingerprint
http://drupalladder.org/lesson/aea671eb-897d-46ef-a48e-aba31...
This interactive infographic from the BBC gives you a global overview of average wages in different countries. You can type in your monthly salary to see how near or far you are to the average wage in your country.

It obviously comes with lots of caveats and tells you nothing about the quality of life in a particular country. It's still quite eye-opening though.

Where are you on the global pay scale? (March 2012) http://www.bbc.co.uk/news/magazine-17543356
For those who haven't implemented A* before it can be quite an enlightening experience, and actually isn't too difficult once you dive in. It's a good introduction to priority queues too if you haven't played with them before.

I threw together an implentation of A* as a library in Go [1] for a game I've been doing, it has automated tests which mock up a game world and check the length of paths with visual output.

[1] https://github.com/beefsack/go-astar
That's not music, that's mathematical sound generation.
On a GIF, you can right click and "save as". So a first step would be to have all browser makers allow this for video files too.
Quick Dessert Nutella Smores Recipe Video
It crashes my browser.
That's a great explanation. Thanks for that. Now I'm curious about why it's so locked down at Matasano... what are the main threats to need full-disk encryption and then multiple encrypted containers per project?

I should have explained my reasoning for originally choosing ecryptfs. I find it really convenient doing a backup of ecryptfs' cipher-text. Since it's simple files, an rsync will do. If I wanted to backup virtual encrypted disks, I would first have to mount source and destination to do an rsync, or painstakingly do an entire dd without the mount... maybe I'm just doing it wrong?
18 most active deep learning repos on GitHub
The 18 repos are manually selected from "100 Best GitHub: Deep Learning" http://meta-guide.com/software-meta-guide/100-best-github-de...

Each project is visualized with a project card for easy browsing
>but ultimately I couldn't make it run fast enough on iOS for our max level size which was about 100x100.

100x100? That sounds trivial to make fast enough. What was the programming language used?
If a problem is debated and the problem has 3 solutions, a, b and c; and a representative sees that a is supported by 23.8% of people he/she represents, b is supported by 3% and c is supported by the rest he/she would be stupid to pick b, so he would definetely pick c.

But then again, if the representative is just a messenger, he could be replaced by a device.
How many MBA's does it take to change a light-bulb? It depends, how many engineers are on their payroll ..
Amazing work. The most complex path-tracing shaders I've seen in WebGL so far.

My project, https://Clara.io, also features interactive ray-tracing but we do it server side using V-Ray. Example here:

https://clara.io/view/a82f8a80-8a5e-4e61-8faf-3de9eb4313c2/r...
File systems are databases of some sort: there's a way of storing and retrieving data. Using the FS won't necessarily be simpler or less resource-intensive than using sqlite or something similar, because you _will_ store and retrieve data, and the helper layers you build on top of the FS will probably be less optimized than existing lightweight databases.
>I'm curious on the performance issues.

Whether you can put your return value in a register, or whether you need to housekeep the stack. That's a performance difference.
5 Surprising Things You Didn’t Know About You
Have a look at 4chan - once the thread is done, it's gone, no need for db for that and the community is still there.
20 Best Fashion WordPress Themes
That's not true, you buy and sell limited time span land use grants:
http://en.wikipedia.org/wiki/Chinese_property_law

E.g. the government gets it back after some period like 70-90 years. You don't own the land you just buy and sell use of it for time periods.
Ballistic Missile Basics
Germany: “NSA in da house” illuminates U.S. embassy spying
Java beginer
No Experience is a bad experience
you can write it to disk

you can also hold all the data in memory but when the memory is full you have to get rid of the old threads, but if your server app restarts you lose all threads

you could also use a message queue, something like firebase
My thoughts exactly, although to be fair, the human body can't survive on ketones alone. Some cells cannot metabolise ketones and rely on glucose produced by the liver to function.
There's 21st Century C from O'Reilly:

http://shop.oreilly.com/product/0636920025108.do

It has mixed reviews - my impression from reading it was that if you agree with the author's choice of tools, it's a good read. There's supposedly a new edition coming out in September.

There's also Learn C the Hard Way:

http://c.learncodethehardway.org/book/

I've struggled to find any other modern books on C programming.
Show HN: BusyFlag
Several people have made use of a lightweight webserver like Lighttpd in combination with PHP/SQLite in order to set up boards or wordpress installations on Raspberry Pis. Would that be something for you?
Use the tuple (email,passphrase).
Still easy to remember and the email functions as a salt, and will prevent any rainbow attacks
The games Putin plays
Sure. HN itself has no database, only the filesystem (or rather the filesystem is the DB).
What post length captures the most attention on average: 7 minutes
Nobody is banking on that being true later either, though it is the law of the land now. What is the gov going to do at the 90 year mark, confiscate everyone's home whose ancestors bought 90 years ago? Tricky....