skysight-inc/HackerNews huggingface dataset:
A different way of doing something similar, with no code at all:

Copy the following into your browser URL bar:
"data:text/html, <html contenteditable>"
(without quotation marks)
Google "define rapist"
Anecdotally, we see > 98% of browser clients using PFS cipher suites.

Sure it would be nice if it was mandatory, but 98% is _very_ good.
Yes, but telephone calls are covered because Congress passed a law making it so, not because of a Supreme Court ruling per se. Separate laws had to be passed to protect cell phone calls, beepers, etc.
Why would you ever care about leap seconds when calculating the number of days between timestamps? Leap seconds are necessary to calculate the exact number of seconds between two timestamps. But a day isn't exactly 86,400 seconds on leap second days, it's a little bit longer. So the simple algorithm for calculating the number of days between timestamps (floor((ts2-ts1)/86400) seems more correct than anything that takes leap seconds into account.
> decrypted form of your key (you're storing it encrypted by a passphrase, right?)

Haven't yet implemented the little de/encryption
command line program l described
so don't know just how I'd
store my private RSA key. The private key would likely be
just on my computer some place as just ordinary
data maybe with a comment that clearly describes the
data as my private key.

I'm not sure what you mean by a "passphrase",
but I can guess; with my guess, no, I wouldn't
do that because (1) it makes life harder for
me and (2) doesn't really make decrypting my data
much more difficult for an attacker.

> when you take your computer in for repair

Right, if I lose physical control of my
computer, then all or nearly all the data
I encrypted can now be decrypted by others.

So, right, for anyone who would lose physical
control of his computer for any reason, the
'approach to computer security' I outlined
would have a huge hole in it.

In my case, I would never take my computer
for repair since I built and repair my own
computer.
If your variable gets promoted to a union type, and all of the types respond to the methods you give them, then it will compile and run successfully (duck typing). Yes, it will have a small performance cost. If you then profile your app and find that the performance problem is that one, you go and fix it.

You can always have a static analyzer tool (that works, because Crystal is compiled) that can pin-point all the locations of union types. You can then put some type restrictions wherever you need them, to know where the union types come from.

The idea is that you can start prototyping something that works and is quite fast, and later you can always improve the performance without ever having to write C code.

Also, the union of an int and float will probably be just float so it won't have any performance overhead.
> it seems inevitable to me that in 3-5 years, the performance difference between the web & native mobile won't be distinguishable

If native stood still that would be true. The thing is that non-native is always a few layers above native. If non native gets fast native gets faster. If non native becomes energy efficient native becomes even more energy efficient. etc.
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold

You will learn everything from logic gates/transistors to software.
The fun you'd been having at the web services party was facilitated by denial. The software community has wasted the past several years focusing on flawed technologies, and has now built up a dependency on easy VC money (which only flows with the promise of creating new middlemen) and the glamor it brings.

The way to repent is by migrating to securable[0] technologies where possible, and deprecating insecure ones by treating them as prima facie compromised. Yes, this means giving up the unthinking conveniences you've probably become accustomed to. For instance, if you care about the security of "your data", you simply cannot have unfettered access on a contemporary mobile phone. For that capability to be created, we have to stop pretending that it already exists. Otherwise, the demand shifts towards MHz+eyecandy bumps instead of for phones that create security for their users.

[0] The primary thing for a secure technology is not to be assuredly secure, but for it to have a design goals that are compatible with security. For instance, OpenSSH may still have gaping holes in it. But when these are discovered, they are considered unambiguous bugs and they're patched to be closer to the platonic. A system that relies on storing plaintext or equivalents on someone else's server can never be patched to fix this.
The premise, the logic stands on its own. We coevolve with other organisms and bacteria, not in a vacuum. So wether there is hard evidence for this or that, regardless it’s an interesting field of study right now and many are looking into it. Sometimes before you have evidence, you need a hypothesis.
> And I say this as a Tor user who has not only donated to the project but also runs a relay.

Just curious, where do you run your relay? Is it under your home internet connection? Does it ever give you any trouble (authorities come knocking the door, etc)?
With the degree to which the US government threatens, coerces, or infiltrates tech businesses, I don't have any real trust for any VPN service, whatsoever. I pay for one (proxpn - it was the only one that didn't seem completely shady at the time) and use it, but I certainly don't trust it.

Additionally, finding one is the first part. Being able to pay for it, is another, apparently. (I was paid up for awhile ahead of time with my service before the credit card companies stated they'd no longer process transactions paid to VPN services outside the US).
Linode has "developed" nothing. Linode is using bcache as a tiered storage but there are problems such as certain IO patterns will bypass bcache and hammer the disks causing slower-than-disk-alone IO speed.
"The classic startup article fallacy."

Also classic medium.com type article or for that matter many things that end up on HN. Someone says something (many times you don't even know who they are) and then there is a comment frenzy of people feasting on said article.

One of my first thoughts was who is "Sangeet Paul Choudary" and why should I pay attention to anything he is saying? What is unique about his perspective vs. anyone elses?

"Without looking at the losers, you have no idea what characteristics of the "winning" startup was actually the most important. "

Agree 100%. Same as "Steve Jobs did X and that's why" w/o knowing all the people who did X that achieved squat. No control group. Or (as you pointed out with regards to "luck") being Steve Jobs in the right place at the right time.
The problem with "assume the maximum worst everything" case is that it places constraints on you that are essentially certain to be overly broad. Building a workable threat model & defending against it isn't practical (or necessary) if you assume worst case everything.

For example, have they recorded all IP traffic ever? It's possible, but absolutely overwhelmingly unlikely. But all IP traffic originating from $small_anti-US_country_x in the last year? That's a whole lot more plausible, and thus probably worthwhile to defend against.

Also, does that mean non-US CAs are trustworthy? Are non-US comms also subject to tapping, modernday Ivy Bells[1] style?

Also, you have no real idea of exactly if/how they're analysing their captured data in order to extract "threat metrics" or whatever. Posting in a reddit thread about kittens would seem utterly innocuous to virtually everyone; but suppose their steganography detection throws a false positive on your image and by random coincidence they also have hits from some IP once used by a 'terror organisation' in the same thread.

Should threats of that nature be considered, purely because they're possible? How do you clear your name? Why won't you give up the password to the bomb plans claimed to be embedded in your image file? Is it because you're protecting other commie mutants[2]?

How much paranoia is reasonable?

[1] https://en.wikipedia.org/wiki/Operation_Ivy_Bells

[2] https://en.wikipedia.org/wiki/Paranoia_%28role-playing_game%...
Games That Teach Programming: A Brief Overview
Sounds like a good case to ensure documenting of codebase is expected. Is bitrot a normal thing in firms such that somewhat large projects are abandoned because of poorly documented code?
It's not dying. It's just getting up from the desk and walking around.
Premature optimization is a bigger enemy than performance issues.

That being said, the DB server is what's optimized to do calculations.

The tradeoff is you have a second stack to maintain and performance tune now beyond being a datastore. A positive is you can independently write and run tests.

The question is, can you resist building the perfect empire on day 1? Move stored procs and functions into the DB as they are needed. Whatever you're working on (including who is working on it) isn't that important.
I guess I need to dig deeper with that case, but 20 symptomatic cases is probably linked to many others exposed and needing monitoring and prophylactic care[1]. So maybe not big, but not tiny either.

[1] for example, this case that happened in my old town had 3 symptomatic, but 175 or so others needing treatment: http://www.cdc.gov/mmwr/preview/mmwrhtml/mm5341a3.htm

And I totally get the skepticism of authorities thing. I only developed what trust in medical authorities I have after doing prepress work on a lot of medical textbooks and getting more familiar with the literature. Frankly most of us don't have a chance of keeping up with the state of the field when even professionals can barely keep up.
Use S3, and their website feature if youd like. If you expect moderate traffic use CloudFront. The CloudFront data transfer rates are cheaper than S3, IIRC.
If you are using numeric data (not floats) in the database, I would say do your calculations in the database. Different languages and tools have different arithmetic handling which can cause some very long and psychotic debugging sessions. A single point of calculation is a good thing.

[edit] I should explain a bit. If you use are in a multi-language environment[1] and are doing financial or weight / volume calculations, be extremely careful if you decide to not do all the calculation on the database. Having results calculate differently in two different places will drive you mad. I have noticed some serious problems with number handling in different languages and some mistakes in calculation will get you sued.

1) SQL counts as one of the languages
Why don't you give your source for said CIA "drive" the same level of distrust as the FDA and your doctors? Or are you a primary source?
I've written some pretty awesome SQL queries that give back exactly what the application wants with the application sometimes not even needing to do anything else afterwards.

I've usually always regretted those "awesome" queries.

I've known some very smart developers who've gotten lost in SQL queries, while show them the equivalent Ruby/Python/Javascript/C code that parses through the results and they can understand it less than a minute.
This is the kind of comment that sums up where I dislike Hacker News. "Android Browser" means not Chrome for Android, so it must be a bit behind.
We've been committed to privacy in the form of a VPN service for quite sometime. The founders of PIA (including myself) were actively involved in the beginnings of Bitcoin and many related services surrounding it, and have since devoted all of our time to the proliferation of privacy.

We have the most servers of all paid VPN service providers and are committed to privacy. We also support many non-profit organizations, including EFF, Gnome, FFTF amongst others. We are also the hosts of BitcoinTalk.org, BlockExplorer.com, and proud sponsors of MoDaCo.com and MIUI.us.

Please do take advantage of an offer we have right now going on until the end of the weekend:

http://slickdeals.net/permadeal/101860/private-internet-acce...

Additionally, please feel free to read this interview:
www.bestvpn.com/blog/7319/an-interview-with-private-internet-access-founder-andrew-lee/

Lastly, please feel free to checkout our blog for more:
https://www.privateinternetaccess.com/blog

edit: And we don't log. Period. No sessions. No IPs. Nothing. Zilch, zero, nada.
> To parse a million randomly generated dates on an iPhone 5 running iOS 7, NSDateFormatter took a whooping 106.27 seconds, while the SQLite version took just 7.02 seconds.

Yes, NSDateFormatter is slower than other methods including some C libraries out there or this novel approach for turning a string into a NSDate however in most instances it's plenty fast enough and has a bunch of useful functionality [1] the least interesting of which is easily turning a string to a NSDate.

If you are optimizing this aspect of you code first you are likely wasting your time and would suggest iOS/Mac developers get to know NSDateFormatter intimately especially if you are displaying date/time information to users anywhere in you apps.

http://goo.gl/7flGRI
> fact(1000)
Infinity
> fact(10000000)
RangeError: Maximum call stack size exceeded
In case you want to read papers but don't really know where to get started, here's my collection I've read over the years: http://dl.dropboxusercontent.com/u/315/articles/index.html ... feel free to browse through it and pick up anything that looks interesting. You'll probably want to scroll all the way to the bottom and work your way up the list.

Many of the classics are in there, such as the Plan9 paper and Paxos Made Practical.

If the images are distracting, here's the list without them: http://dl.dropboxusercontent.com/u/315/articles/index_no_ima...

Actually, looking over it, that list isn't very curated. Just Ctrl-F "unix" and that'll take you to some good papers.
While working fulltime, I find it hard to make time for free software projects and I would love to see something like this succeed. I have contributed to this project and encourage anyone who loves games to do so. We want free software games of all kinds to be out there!
If anybody is having trouble believing this, I highly recommend watching this documentary:

https://www.youtube.com/watch?v=SeeFrcvt3KA
Depends on what's you definition of best.

I use vpnmakers. Reasons:

* Servers in a dozen different countries. You can select which country's IP you want: http://vpnmakers.com/templates/vpnmakers/includes/hostnames....

* Cheap: $3.5-$4.85/month

* "No logs are kept. Only IP address which are deleted at the end of the week."

* 7 days money back, can try safely.

Go http://vpnmakers.com or http://vpnmakers.com/aff.php?aff=433 if you feel like saying thanks.
1. I would disagree (and I do not know what makes you say what we're here for, by the way), without this critiques he (and I, not a native speaker either) would never know that his/her english is broken, which is sort of a big deal if you're communicating your ideas on HN or any other platform that use english as their primary language (without even having to mention the recent debate over 'foreign accents').
How to Charge Your iPhone Faster
Thanks for pointing out. It is good to have the option with Linux. But except of this detail this laptop does not fit any of my requirements:

* It has no trackpoint - the biggest deal breaker. But even if it would have one (I used Dell Latitudes in the past) it should be at least as good as the Thinkpad Trackpoints.

* I cannot judge about the keyboard experience on this Dell because I did not try it out, but I looked up and I could not order it in Europe with a US Keyboard Layout + € sign. As well I think the media would have picked it up if it had an excellent keyboard experience.

* The screen ratio is not 4:3 - I know nobody has 4:3 anymore, but I consider exactly this to be an industrial fail.

I could go on, but these 3 points are the most important to me. Currently I have a Thinkpad X220 Tablet, that I can use as well in Tablet mode with integrated stylus - it cost me more than twice the price of the Dell you pointed me out, but this is not the problem. I am almost happy with this device. The main nitpick is that some of the plastic quality is not good enough - it broke twice already and I have plastic bits that are broken right now (luckily I have the warranty). I would prefer a bigger screen, 12.5" is too small for spending the whole day on it. And as well the screen ratio is stupid for developer or people working on text. And I had to pay for Windows.
From another parent of a child with autism, I have two things to say:

1) it's clear from the science that vaccines do not cause autism. Autism becomes noticeable about the same age as vaccination, but its causes are earlier.

2) refusing to vaccinate simply means that you put your autistic child and mine at risk of other diseases.

Get educated and stop doing the wrong thing.
Can I use this to plug into my cars usb and take over the touch screen display unit?
S3for.me is hosting at hetzner.de one of the largest german hosting companies. Unfortunately they have to provide a wiretapping API to police, secret service (BND / Bundesnachrichtendienst) and other govermental institutions. They are not allowed to talk about this or risk punishment.

Recent developments from Mr. Snowden show, that BND regularly sniffs and provides data to the NSA.

If you want to find out more about this, try to find a translation of the TKÜV (Telekommunikations-Überwachungsverordnung). It was established in 2002 http://www.heise.de/newsticker/meldung/BND-ueberwachungsschn...

Update:
http://www.bmwi.de/BMWi/Redaktion/PDF/Gesetz/TKUEV-deutsch-e...

The obligated party shall tolerate the
installation and operation of equipment of the
Federal Intelligence Service in its premises which
shall only be installed and serviced by Federal
Intelligence Service staff specially authorised and
shall meet the following requirements:…
You can download the video, and then you can extract the audio and listen to the mp3 wherever you are, as often as you want. At least, that's what I did.

I don't think the OP is in it for the certificates.
See your friends' digital devices when they're close by
This SDK lets you take Windows, Android or iOS devices and build an app to see when another is nearby, or create a trigger like IFFT when they see one another. They are at the Disrupt Hackathon today...
What did the police say? Did the teacher believe that the UK has thought-crime laws about uncommon political beliefs? Do they?
It's a double edged sword though. Outside the US you can be spied on, inside the US you can be served a warrant from a US court.
The problem for the HR is that there is no nice way to say "You are perfectly good for this job, but we think someone else is better, so they get first refusal".

That is why they didn't send anything - because there is no nice way to say that, it is better to say nothing, and hope the second choice candidate is still looking if the first accepts another offer (always a 50/50 chance).

Also, what if second choice candidate claims that 'oh, first choice candidate got the job because she's used MongoDB? Me too!'. Do you invite them in for interview again to test that? Or hire the first candidate anyway at risk of a lawsuit? Communication has let the process get out of control.

When I'm looking for a job, I don't tell my employer until I have the paperwork all signed off for the new one. When a employer is thinking about not hiring me, telling me so is just going to make me accept another offer, and then if they do need me, they are stuffed.
I was always curious how HUMINT would look if you were inside the organization as a worker-bee.

In my experience at a certain large SW company in the pacific northwest, I do know that core crypto code, the actual workhorse functionality, is typically walled off from the general developer population. The rationale given is that there are foreign nationals on staff who are not permitted to look at that stuff. That makes sense given the export laws in place.

All the security-like code I saw above that layer was good, to my non-security-trained eyes: Honest use of crypto algorithms, responsible bug fixes and regular and nitpicky reviews of protocols, file formats, APIs, and the code itself. For several shipping products I had confidence that the code we checked in was the actual code that shipped.

For the lower layers (an ideal place to introduce weaknesses):

- The general developer population never sees them

- Even if the sources are utterly honest, the build process might hide the introduction of weaknesses (a variant on "Reflections on Trusting Trust"), or the build machines might ship different bits, or weaknesses might be patched-in later (even after customers get machines) by the OS update infrastructure.

This is the kind of thing I'd HUMINT if I had a mind to.
He was also responsible for actively attacking free and open source software, which we recently learned may be the only way to go for any piece of software that we need to trust.

Like the others, they all have their good sides and bad sides. Nobody is perfect.
Of course not (in the dying sense). It is a common mistake to conflate 'change' with 'expiration.' The network experiences are changing, we're not quite in the 'post web' era but I can see where we will be here in the not too distant future.

The phrase "you can't go back home" captures this notion of change. Leonard Nimoy used it on a talk he gave about Star Trek (which was before the first film :-) Things change, moments in time are lost forever. Programmers are often acutely aware of this when they try to re-create a product from a few years ago and its impossible to get all of the pieces back to a consistent state from the origin time of creation.
The big advantages for doing things "on the DB" are centralizing business logic and eliminating serialization/transport/deserialization. Having a view or stored proc with business logic lets it be shared across different components of the same app or even across separate apps that share a database. An extreme (yet common) example of calls best done on the DB itself is a SUM of price X quantity or any other grouping operation. Rather than moving N rows to the client, the server can aggregate it all and just send back the result.

If CPU usage on your DB really is your bottleneck (and seriously it's probably not) then you should look into federating logic out to your app. Otherwise the centralization of app logic alone is worth it.
Or, in the words of The Clash[1]:

You have the right to free speech
As long as you're not
Dumb enough to actually try it

Considering how the school has reacted to his writings, I'd say that he is probably right.

[1] http://www.metrolyrics.com/know-your-rights-lyrics-the-clash...
Two things came to mind when I read this:

1) It doesn't often happen, but having the establishment individual confirm the blog's POV through word and deed is refreshing.

2) If you are from the University and read what this fool said to the newspapers / police, then you should be suspect of any individual whom he gave a recommendation.
Nothing to Purr About Cartoon
Thanks for responding. I had no idea about these features. Well heck you can say it is better. That would be alright.

I have been living in the open source world and just never had to deal with commercial DBs at this point.

So I agree with your point. A lot of these features are there but up coming developers might not know about it and will always pick open source choices.

I guess PostgreSQL is the direct competitor at the moment and I have only heard good things about, and Oracle is hated by large numbers of developers (for reasons not necessarily related to technical features).