A Sensible Fix For TSA Security Lines - <AUTHOR> http://www.askthepilot.com/tsa-summer-meltdown/ <comment><USER2> The sensible fix for long TSA lines is to eliminate the TSA and stop engaging in this silly security theater. It is demonstrably the case that the TSA security procedures are so porous that they can't stop regular people from _accidentally_ bringing weapons on board that they forgot about. The idea that they have prevented any terrorist attacks is ludicrous, yet they have imposed an enormous cost on air travel.

Eliminate the TSA and replace them with nothing. Cockpit doors are now reinforced, so the worst thing someone could do is blow up a plane, and if all you want to do is blow up a hundred people or so, you don't need to be on a plane to do it.

<comment><USER3> >so the worst thing someone could do is blow up a plane, and if all you want to do is blow up a hundred people or so, you don't need to be on a plane to do it.

There is a reason we had security on airplanes before 9/11\. We aren't willing to accept this risk.

Plus airplanes are a carnage and terror multiplier. A bomb that could take down a plane would do less damage on the ground. And people are irrationally fearful of flying. One 737 blown up every 3 months would still make flying less risky than driving, but it would send the airline industry into a tailspin and TSA would come back stronger than ever.

<comment><USER4> So, I was definitely once one of those people arguing for lax airline security on the basis that fear of terrorism is irrational and resources would be better spent on _actual_ , mundane, every-day threats (like automobile safety).

But I think you're actually right about this; my original argument ignored human psychology to an extent that makes it nonsensical. _Actual_ threats are important, but so are _perceived_ threats. It's not entirely irrational to protect against the things we fear the most, even if those aren't actually the most likely things to kill us.

This also comes up a lot in arguments about city living. I know a lot of people for whom urban living is frightening to an extent that is not supportable by crime statistics. But so what? If they were to move to the city, they'd be constantly afraid. _That matters._ Rational or not, their perception greatly impacts their quality of life. And if you want those people to move back from the suburbs, then you need to address their concerns.

There is a _reason_ , after all, that airplanes are such an attractive target for those who'd like to cause _terror_.

<comment><USER2> This represents a pretty fundamental reasoning error, I think that a lot of people make - and your argument about city living is the perfect manifestation of it.

While some people do stop living in cities out of fear, obviously most people do not, because otherwise they would not be cities. You could argue that the government needs to come in in a very heavy-handed way and say in order to assuage the fear of the minority, we must pat down everyone that lives in the city hourly and check for weapons. But we don't do that, because it is irrational and unnecessary, and people will take the amount of risk that they feel is comfortable. We trust people to figure that out for themselves.

With airplanes, before the doors were reinforced, the planes could be used as a weapon against people who weren't even flying. That represents an externality. That is a place for the government to come in and say "this is too dangerous to _others_ who cannot protect themselves against this weapon by voting with their wallet". The people who are on the plane, however, can choose to pay a premium to fly on an airline with more stringent security procedures. If people care enough, they will do that. If they don't, they won't, and they should be allowed to make that determination for themselves.

If I don't see terrorism on my flights as a risk, I shouldn't have to socialize those who do. And alternatively, if I _do_ see terrorism as a risk, I damn sure want better security procedures than what the TSA has on offer, and if there were a private market for better secured planes, I don't doubt for a second that it would be substantially safer than what the TSA is able to provide.

<comment><USER4> Great comment. One thing in regard to this (that's getting off topic, so ignore if you're not interested):

 _" You could argue that the government needs to come in in a very heavy- handed way and say in order to assuage the fear of the minority, we must pat down everyone that lives in the city hourly and check for weapons. But we don't do that, because it is irrational and unnecessary, and people will take the amount of risk that they feel is comfortable. We trust people to figure that out for themselves."_

The reality in most large metros in the U.S. is that the core city competes with its suburbs for resources, the largest of which is people. The region I live in has 2.8 million people, only 300k of which live in the (widely- abandoned) anchor city that gives the region its name. Yes, people are figuring it out for themselves, to the benefit of some interests and the detriment of others. "Let the people figure it out" isn't very useful advice to the losers in that battle.

</comment></comment></comment></comment></comment><comment><USER5> > I'd advocate that certain travelers, at TSA spotters' discretion, be exempt > from screening altogether. Personnel could be trained to choose certain > passengers deemed lowest-threat, pull them out of line and allow them to > pass.

Bruce Schneier's proposal is essentially do 0 profiling and do entirely random enhanced screening to minimize the potential for exploiting profiling.

[https://www.samharris.org/blog/item/the-trouble-with- profili...](https://www.samharris.org/blog/item/the-trouble-with-profiling)

[https://www.schneier.com/essays/archives/2012/05/to_profile_...](https://www.schneier.com/essays/archives/2012/05/to_profile_or_not_to.html)

<comment><USER6> Bonus: Probably much cheaper to do.

Concern: Real randomness gives you streaks, which may cause unanticipated clogs and delays in the process. On the other hand, an "smoothed" system means attackers would try to slip in right after a "random" check occurs for an innocent.

<comment><USER7> > Real randomness gives you streaks

True, but you could just tweak the odds down a bit once a streak hits a certain number if you've demonstrably slowed the line down (and turn them back up once the clog has been cleared).

<comment><USER6> True, but attackers could time their approach to occur in the safe-period after a major clog.

The devil's really in the details, particularly around how queues/buffers for travelers are handled and the basis used for doing the randomness. For example, randomly choosing check/don't-check per passenger is different than randomly choosing a passenger from the line whenever a searcher is free.

<comment><USER7> I'm not suggesting to turn the odds to zero, though. Simply lowering the odds until the clog is cleared would not appreciably improve an attackers chances of getting through. You could still get streaks at the lower odds, thus making the clog worse. Nevertheless, I think the average wait times would be vastly improved from what they are currently.

</comment></comment></comment></comment></comment><comment><USER8> > Take a percentage of screeners now working at airport checkpoints and re- > train them to work away from public view

When I was in London, I met a woman whose job was basically to hang around at Heathrow Airport and make note of "suspicious-looking individuals". She would make small talk and ask them if they needed help or directions.

She also told me they catch a surprising number of North Korean spies.

<comment><USER9> That's interesting, how does she go from making small talk with a Korean person to determining that they're a spy?

<comment><USER10> Any person who was allowed by North Korean government to leave the country expecting them to come back are a spy.

</comment></comment></comment><comment><USER11> The things that the TSA forbids can, in many cases, be picked up after the security check in various shops/restaurants in the airport. I used to make it a point to walk around, identifying things lying around in the open (like silverware in restaurants) that was forbidden just a few feet earlier. But it just became too frustrating.

<comment><USER12> Do you remember more examples? I'm curious, because I did something similar years ago and didn't really find much that would have been stopped – other than liquids, which don't count for obvious reasons.

I don't eat in airport restaurants that often, and when I do, it's just a public one, not an exclusive lounge. But I haven't seen a sharp metal knife in the airport for since 2001. I've seen plastic knives and rounded metal butter knives, but those should also be allowed through security.

<comment><USER13> Glass bottles? Heck, you could probably make some sort of explosive from the items you could buy in the shopping area post-security.

In my part of the world, their idea of "security" for the glass bottles you can buy at the airport shops is to seal them in a "security" bag made of...clear plastic. The only thing that clear-plastic (zip-locked even) bag would stop is spillage.

<comment><USER14> There was an article awhile back about this: [http://terminalcornucopia.com/](http://terminalcornucopia.com/)

</comment></comment></comment></comment><comment><USER15> And we should set our expectations much higher. It should be possible for TSA throughput to be as good as Starbucks. They both have trained people do a complex operation involving special-purpose machines, and the revenue per customer is similar (Starbucks around $4, TSA gets $5.60 per passenger-leg), and the queue is rarely more than a few minutes at Starbucks.

If you look at the incentive structures, the results aren't surprising though:

Starbucks: longer lines => people go elsewhere => less revenue (daily)

TSA: longer lines => traveler complaints => more funding (yearly)

<comment><USER16> I'm not sure about where you are, but the Starbucks's I've been to go through lines a lot slower than TSA checkpoints - the lines are just much shorter because fewer people are going there than through a big airport.

<comment><USER15> Yes, Starbucks parallelizes, as should the TSA. It doesn't matter whether it's in one building or many.

</comment></comment></comment><comment><USER17> Along these lines, I wonder if anyone has pointed out why the TSA is storing whay they view as "potentially explosive and life-threatening liquids" in the middle of a high-traffic area?

Also, if all those bottles of liquid are worth being confiscated because they contain harmful chemicals, they are also to be disposed of by personel in hazmat with proper EPA considerations, namely audit, analysis and documentation. It would be fun to see a lawsuit along those lines.

<comment><USER18> It's a bit of a paradox. The purpose of screening isn't really to confiscate dangerous materials, but to prevent people from ever bringing it. If you have a ban on liquids, then an attacker isn't going to bother bringing a liquid bomb. All liquids you encounter will be benign. Yet that doesn't mean that the ban is useless: if someone wants to bring a liquid bomb, then if you remove the liquid ban they will bring it.

I think the liquid ban is pretty silly, but that's because the whole idea of a liquid bomb seems to be unworkable, and there are better ways to handle this stuff. The fact that confiscated liquids are handled so casually is not actually an argument against the ban.

<comment><USER19> I think the whole ban, gave the terrorists the bright idea of bringing liquid bombs in the first place.

<comment><USER20> The ban was put in place as a result of a real terrorist plot uncovered in 2006:

[https://en.wikipedia.org/wiki/2006_transatlantic_aircraft_pl...](https://en.wikipedia.org/wiki/2006_transatlantic_aircraft_plot?wprov=sfla1)

</comment></comment></comment></comment><comment><USER21> "— I'd advocate that certain travelers, at TSA spotters' discretion, be exempt from screening altogether. Personnel could be trained to choose certain passengers deemed lowest-threat, pull them out of line and allow them to pass."

I really can't imagine this going well at all. Isn't this basically telling your employees that they should discriminate based on some nebulous thing?

<comment><USER22> If the criteria they use become known, you're also creating a loophole for terrorists to target.

I can't remember the name of it, but some years back there a was a film (or possibly a TV drama) about a Chechen-American jihadi -- pale-skinned, blue- eyed and red-haired.

</comment></comment><comment><USER23> I think most people agree here that the TSA should be ended altogether and we should return to metal detectors if anything.

How do the american people make this a reality? What steps can be taken to motivate our political leaders to support such a change?

As of right now, it seems like political suicide for anyone to politically support such a thing, as they would surely be painted as a terrorist sympathizer or some such.

<comment><USER24> This is about as possible as ending the war on drugs was in the 80's. Just because something is reasonable and makes sense doesn't mean it is possible to implement politically. In fact, I'd say an inverse relationship exists between common sense and what's implementable politically in the US. You simply face too much fear and stupidity.

<comment><USER25> I think "fear and stupidity" is overly simplistic. People overestimate how worthwhile it is to address low-probability, high-consequence threats. Everyone. I know plenty of rational people that rail about terrorism being a low-probability event who would freak out if they saw a pregnant woman have a glass of wine. Or saw a kid playing unattended at a playground. Or someone feeding a kid formula. Or GMOs. Or whatever--almost all of the highly educated people I know have one or more things that they believe to be risky that is not supportable based on hard evidence. It's universal.

Right now the wife and I are in the market for a new toddler-hauler. I want to buy two-years used, and ideally American, but I cannot get over the fact that only a handful of recent models, none American, get a "good" rating in the new IIHS small-offset crash tests. I know that a Ford made in 2015 is perfectly safe, but I'm going to spend a bunch more money on a new 2016 Honda because I'm irrational.

<comment><USER24> If you didn't have irrational fear, the TSA would not have its current powers. If you didn't have so much stupidity, the TSA might manage more than a 5% success rate. Yes, there are other elements like hate which also come into play here, but there certainly is no element of rational thought that goes into these types of laws. Yes, people have their biases and individual quirks, but it's certainly possibly to come up with and implement a system that doesn't simply pander to people's fears and plays on their stupidity. There's just no interest in such a system from either the people who are in control or the scared masses who are afraid of terrorism or other scaremongering tactics practiced by the former set of people.

</comment></comment></comment></comment><comment><USER26> Security Theatre was Job #1 behind the invention of the TSA.

A close second job was building a behemoth Government Agency to funnel money, direct contracts (to supporters), and lastly supply jobs for those people who were probably otherwise more difficult to employ.

Now I don't know about you, but I would call that a win-win situation.

</comment><comment><USER27> The fastest way to fix TSA security lines would be to have a few suicide bombers blow themselves up while standing in line. The lineups would disappear overnight if that happened.

... not that I'm suggesting this as a solution; rather, it illustrates the lack of security created by the current system.

</comment><comment><USER28> Even simpler: Completely separate the cockpit from the passenger cabin.

Without the possibility to use the hijacked plane to take hostages to a friendly destination, or to use the plane as a missle, it's no more attractive as a target than any other public space.

<comment><USER29> This is already essentially in place, as [https://en.wikipedia.org/wiki/Germanwings_Flight_9525](https://en.wikipedia.org/wiki/Germanwings_Flight_9525) demonstrated in an unfortunate manner.

</comment></comment><comment><USER30> Does anyone remember the TSA backscatter machines? (Blue ones) they rolled out and then promptly removed a few years later? Those cost the tsa north of 300m, wasted government pork spending as those are now all mothballed as it turns out they ARE bad for you, despite what the TSA said at the time. So when the TSA speaks, all I hear is pork, lies and federal union fear mongering to increase OT + pay at the expense of the taxpayer...all because....terrorism </gasp>

</comment><comment><USER31> Given an establishment, the _method_ of change is as important as the change itself. It's not enough to have a good idea, you need a way to make it happen. Arguments about the inefficiency, cost or ineffectiveness of the current TSA will not matter in the least unless the people in charge can actually be swayed by such arguments.

Right now, the TSA is kept alive by a large group of people who benefit from beefy government contracts. These powerful people are quite capable of trotting out one bogeyman after another to challenge any TSA rollback proposal. They will twist the opinion of everyone that _matters_ until one of two things happens: either nothing, or a new program that requires handing even more money to their select businesses. They are clearly not interested in actually making things better.

People love to focus on one thing, the presidency, while ignoring the fact that there are many positions of power in the world. It matters what kind of people we have in _all_ of those positions. You can't dismantle something like the TSA until enough people are in enough positions of power to make it happen.

</comment><comment><USER32> Are some of the long lines caused by people carrying on more luggage than in the past (due to airline fees for checked bags + perception that checked bags are mishandled, lost, or slow down your travel time)?

I wonder if flipping the economics (fee for carry-on, checked bags are free) might help without any changes to the actual security procedures.

<comment><USER33> That claim is made but, speaking anecdotally as someone who has been traveling for a long time, I don't think so.

Families going on vacation usually have checked luggage anyway (because they have a lot more stuff than they could possibly carry on) while business travelers, who would typically expense any fees, hate to check luggage because of the extra time.

>perception that checked bags are mishandled, lost, or slow down your travel time

All accurate perceptions, especially the latter two. I'd add that having luggage checked also makes it much harder to do re-routings or flight changes when there are problems.

[EDIT: I'd also add that many (most?) business travelers already have fee waivers on checked luggage for various reasons, but they still rarely check luggage.]

What I do wish able-bodied travelers would dispense with is roll-aboards which IMO are responsible for a lot of overhead space issues.

</comment></comment><comment><USER34> Put air marshals on every flight to deal with any situation aboard the plane. That leaves only one vector of attack, which is explosives. We have lots of ways to detect IEDs that are quick and reasonably cheap.

This leaves open the possibility of people carrying drugs or something aboard planes. But that's not really a threat to passengers.

</comment><comment><USER35> The problem has a lot to do with acceptable risk. Not of the passengers.. I mean of the politicians. As a politician, if anyone argued for lowered screening at airports, we all know what would happen when eventually a hijacking or airplane bombing occurred. That politicians career would essentially be over. It would not have mattered if the hijackers or bombers could have gotten through anyway.

</comment><comment><USER36> It appears that we have reached a tipping point on this issue: [https://www.google.com/trends/explore#q=tsa%20precheck](https://www.google.com/trends/explore#q=tsa%20precheck)

</comment><comment><USER37> Ironically, the screening was originally done by the airport/airlines. Then came the calls to "federalize" it, and the TSA was the result.

</comment><comment><USER38> What an awful clickbait title.

</comment><comment><USER39> In Las Vegas this weekend, coming back we did not have to remove our shoes or laptops, just toss metal items in our bags and walk through the metal detector.

I was through security in less than a minute.

I suppose a bunch of hungover people aren't a convincing security threat.

</comment><comment><USER40> I realise this sounds crazy, but Bin Laden was apparently worried about climate change, and his acts have probably acted as a brake on the growth of air travel. Coincidence? Probably.

<comment><USER41> Contrails also have a net cooling effect on climate: [https://www.researchgate.net/publication/11218772_Climatolog...](https://www.researchgate.net/publication/11218772_Climatology_Contrails_reduce_daily_temperature_range) such that global dimming counteracts the effects of global warming. Less planes, less contrails accelerated global warming.

<comment><USER42> Micro vs. macro effects, I think. CO2 from the planes doesn't dissipate rapidly.</comment></comment></comment>


How Bad Can 1 GB Pages Be? - <AUTHOR> http://www.pvk.ca/Blog/2014/02/18/how-bad-can-1gb-pages-be/ <comment><USER2> The whole article is based around the idea the machine is dedicated to one large process, and that the working set fits in RAM. If that is the case, great turn on boot time 1GB page preallocation and have don't look back.

If either of those two assumptions are false, then the TLB miss times are swamped by the page in time. Paging a 1GB page in is _NOT_ a fast operation, especially when only a tiny percentage of the data is going to be touched, or its promptly going to be paged out again. If he has a machine with 32GB of ram he should retest with a 64GB working set.

<comment><USER3> You seem to be one of those people who thinks whether you have 1G, 2G, 4G, 8G, 16G, 32G, 64G, or 128G... of RAM, you'll still page out to disk eventually.

How much exactly do you consider to be the minimum 'enough' RAM where you won't need to page out to disk? 128 exabytes?

<comment><USER2> Paging to/from disk is currently a fundamental portion of all the major OS's, and significantly increases ram efficiency (even for executable pages). I still see a fair number of server applications oversubscribing RAM. Particularly in DB, or VM'ed environments.

I'm not saying 4K pages are good and 1G ones are bad, but there are a fair number of applications that probably benefit from something in between. 1GB is probably on the extreme side of things.

If you have a 50TB database you cannot put it in ram on anything common. The largest machine I've seen for sale takes 16TB of ram [http://www-03.ibm.com/systems/power/hardware/795/specs.html](http://www-03.ibm.com/systems/power/hardware/795/specs.html).

That doesn't mean you need 50TB of RAM, because 99% of the records could be inactive. Instead you let the hardware page things in, and the portions of the database that are regularly used will stay in RAM, while the rest remains on SSD. The arches with more page selection choices can actually be a big selling point for non x86 servers in certain cases.

In the end, retained data is still growing, and a fair number of applications don't fit into mapreduce or other partitioning schemes. So, I would say paging is going to remain useful for some portion of the servers in existence for at least a few more years.

BTW: I recently worked on an application which would pretty much eat as much RAM (enormous hash table) as it was given and still ask for more. In the end shipping a fairly normal machine (32G-64G) with a 4TB PCIe based SSD provided sufficient performance that we didn't need to spend 100x on a machine that could take 4TB of RAM. So there are economic arguments as well.

<comment><USER4> Can you share any more about your use case here? Intrigued, as a colleague and I have recently been working on highly space-efficient hash maps for a bioinformatics application that it strikes me could be relevant (similar problem -- huge reference set that needs to be accessible with very low access times).

Email is in my profile. Thx!

</comment></comment></comment></comment><comment><USER5> Site's down? I thought it was making a point by making the page 1 GB to download.

</comment><comment><USER6> Site seems down. Here's the cached version [http://webcache.googleusercontent.com/search?q=cache:Frz8Fde...](http://webcache.googleusercontent.com/search?q=cache:Frz8FdesJfwJ:www.pvk.ca/Blog/2014/02/18/how- bad-can-1gb-pages-be/+&cd=1&hl=en&ct=clnk&gl=us)

<comment><USER7> The cache does no work for me either...

Ok, from the comments, it's advocating for 1GB pages at the main memory. Not cache, not disk, not network. Main memory.

For me it looks too big - entire servers will have about 32 pages, swapping will take ages at 400MB/s disks. Current PCs use a too small page, but 4MB seems a much more realistic number.

<comment><USER8> The available page sizes are set by the hardware. On x86-64, your current options are 4kB (4-level page tables), 2MB (3-level page tables) and 1GB (2-level page tables).

</comment></comment></comment><comment><USER9> I think it is much simpler. 4 KB pages are small today, and 1 GB is still very large for most processes. 2 MB sounds about right (gut check, how much memory does the average process allocate, and for those small processes, is 2 MB that much overhead really?). Unless the number of TLB entries drops as page size increases, then larger pages make sense. It's simple: 1 GB risks wasting memory when the process doesn't need that much. 2 MB is good in 2014.

<comment><USER10> I think it's a bummer that there aren't some option in between. I could see 64 meg pages being really nice.

Ultimately it would be handy to be able to tune page size for the loads that you see. I could see page sizes jumping by 4x or 16x (2 bits or 4 bits) each time being reasonable.

The real issue the author is talking about isn't "how much memory does a process allocate" but rather "how many total pages does the OS have to keep track of and what percentage of those fit in the TLB at any one time?"

<comment><USER9> If the real issue is simply to minimize the number of pages to track (and thereby maximize TLB hits) then its very simple: go to 1 GB (or higher!) pages.

This hints that there is a tradeoff happening here. At the highest level, the tradeoff is between having efficient use of memory and TLB hits. Big pages give TLB hits, small pages make efficient use of memory.

Since the TLB is in hardware, it is more difficult to have the fine-grain tuning you desire.

</comment></comment></comment><comment><USER11> Interesting, if one ever needs to boost a memcache/Redis instance, this might actually work.

But what about virtualization? Can I use 1GB pages in a guest OS, or will the host OS still handle everything with 4k pages, nullifying any advantages?

<comment><USER9> Hardware support for virtualization is actually one of the main things driving huge pages. For a TLB miss in a guest, you end up doing a nested page table walk. This is much more expensive with 4 KB pages (i.e. as opposed to 2 MB).

Short answer: huge pages are a big win for virtualization.

<comment><USER11> Thanks, but do I have to enable them on the host or the guest OS? Or both? Sorry, I'm not familiar with the details of HW virtualization.

<comment><USER9> Both would be best, but they are actually independent.

</comment></comment></comment></comment><comment><USER12> The day I fully understand this entire blog post is the day I will consider myself in the leet category.

<comment><USER13> Given a background in programming, you can ramp up on this in an afternoon. Here's an intro "crib sheet"

Your application believes that it has all the RAM to itself. This is a lie that the operating system and hardware tell your application to decouple the physical RAM addresses and the ones your application uses (virtual RAM addresses). Learn more about virtual memory here: [http://en.wikipedia.org/wiki/Virtual_memory](http://en.wikipedia.org/wiki/Virtual_memory)

In order to keep this mirage working, the computer needs to map from virtual address to physical address. Instead of tracking every single address, it tracks spans of addresses. So, the address your application sees as 0 to 4096 will map to physical address 5000 to 9096. Keeping this map using fixed-size spans keeps the size of the mapping down and the performance fast.

This article is about using bigger spans (0 to about 1 billion) instead of the standard 4kb. The advantage of this is that the mapping from virtual to physical is stored in memory as a tree and bigger spans mean you need fewer nodes in the tree. Fewer nodes means you have less traversals/indirection to find the node you are looking for. Less work means faster performance.

The details about the caching and the counts of TLB in the processor has to do with how much dedicated space is in different parts of the CPU for this mapping information.

The details about offsets and changing how the memory was accessed in order get positive / negative performance in the tradeoff of 4kb vs 1gb have to do with wether the mapping information was in the cache or not. it is similar to alignment: [http://en.wikipedia.org/wiki/Data_structure_alignment](http://en.wikipedia.org/wiki/Data_structure_alignment)

A lot of the obscure parts of the code are just how the author is calculating addresses to read using pointer arithmatic [http://en.wikipedia.org/wiki/Pointer_(computer_programming)#...](http://en.wikipedia.org/wiki/Pointer_\(computer_programming\)#C_and_C.2B.2B) and bit-shifting [http://en.wikipedia.org/wiki/Bitwise_operation](http://en.wikipedia.org/wiki/Bitwise_operation)

Finally, in order to use these 1gb maps instead of 4kb maps, the programmer has to leverage special way of allocating memory from the operating system called mmap [http://en.wikipedia.org/wiki/Mmap](http://en.wikipedia.org/wiki/Mmap)

</comment></comment><comment><USER14> Supporting benchmarks that might be interesting alongside the OP:

[https://github.com/johnj/llds#wall-timings-in- seconds](https://github.com/johnj/llds#wall-timings-in-seconds)

Same concept applies, reducing translations for page lookups reduces latency.

</comment><comment><USER15> I was wondering if they meant pages as in websites. I was thinking "That's a lot of superfluous javascript rubbish to load...".

The site is loading as if the page was 1GB though.

</comment><comment><USER16> I admit I was a bit afraid to click this link on mobile...

</comment><comment><USER17> 1GB pages are great if you don't mind waiting 10 minutes for page being flushed to swapfile.

</comment><comment><USER18> Answer: Bad. Baffled by the 25 upvotes on the article (?)

<comment><USER19> Analyzing points outside typical (or even desired) use can be informative.

</comment></comment><comment><USER20> Not too bad, actually. For a moment I was thinking about how it might be useful to embed large datasets directly in the page, but it wouldn't be even remotely worth the sacrifice in usability. Just make one extra HTTP request and give the user a nice spinny icon.

<comment><USER21> This article is not about web pages.

<comment><USER20> Oh, then it just loaded extremely slowly for some other reason... Obviously I didn't actually read the article before commenting. :P</comment></comment></comment>


Let's Create a Speech Synthesizer in C++17 [video] - <AUTHOR> https://www.youtube.com/watch?v=Jcymn3RGkF4 <comment><USER2> Bisqwit makes some awesome content. Glad to see him on HN.

<comment><AUTHOR> Agreed. My favourite programming YouTuber by a long stretch.

If anyone is unfamiliar with him and wants to watch some of the "classics" I'd recommend these:

His "cracking videogame passwords" series: [https://www.youtube.com/watch?v=0eQyYrSQPew&list=PLzLzYGEbdY...](https://www.youtube.com/watch?v=0eQyYrSQPew&list=PLzLzYGEbdY5nEFQsxzFanSDv_38Hz0w7B)

Creating a Doom-style 3D engine in C: [https://www.youtube.com/watch?v=HQYsFshbkYw](https://www.youtube.com/watch?v=HQYsFshbkYw)

Creating a Rogue-like game in C++11: [https://www.youtube.com/watch?v=h37xb8YkMJ4](https://www.youtube.com/watch?v=h37xb8YkMJ4)

Creating a PIC16 emulator and NES music player: [https://www.youtube.com/watch?v=P82Zf31joPk](https://www.youtube.com/watch?v=P82Zf31joPk)

Creating a NES emulator: [https://www.youtube.com/watch?v=y71lli8MS8s](https://www.youtube.com/watch?v=y71lli8MS8s)

Creating a DOS VGA raytracer: [https://www.youtube.com/watch?v=N8elxpSu9pw](https://www.youtube.com/watch?v=N8elxpSu9pw)

</comment></comment><comment><USER3> "Praat" = speak (in Dutch)</comment>


Googling stuff can cause us to overestimate our own knowledge - <AUTHOR> http://digest.bps.org.uk/2015/10/googling-stuff-can-cause-us-to.html <comment><USER2> As a web dev (and not a very good one) I spend a lot of time googling coding problems which normally turn out to either have simple solutions or to be based on stupid mistakes I have made. Either way, googling quickly gives me the feeling that I know A LOT less than others do...

Of course reading youtube comments has the opposite effect on me.

<comment><USER3> This is also why interviews are a joke when they expect candidates to have full recall without Internet assistance, documentation, syntax checking, or compiler feedback.

<comment><USER4> I was once given an online assessment test that was supposed to be for language "X". The recruiter accidently gave me the wrong one. At 3 mintues per question I was google racing and compiler testing like mad to answer each question. I passed.

After the mistake she then gave me the "real" test with the correct language. I did not search google (except for one question) or test with a compiler. I failed.

</comment></comment></comment><comment><USER5> The authors of _Google Effects on Memory: Cognitive Consequences of Having Information at Our Fingertips_ 2011 [0] suggest a mechanism. Basically rather than retaining knowledge we retain, essentially, the relevant search parameters. A more compact representation!

The human brain is scary adaptable.

[0][http://scholar.harvard.edu/files/dwegner/files/sparrow_et_al...](http://scholar.harvard.edu/files/dwegner/files/sparrow_et_al._2011.pdf)

<comment><USER6> Essentially we are cyborgs (humans augmented by technology) if you count technology not mounted too or in the body itself, because we augment our knowledge and memory using online access to information particularly through tools like Google provides.

Some might argue against this and only count technology on or in the person, because we could also count books and libraries in the same sense - but I don't think counting the written word generally as a technology we use to enhance ourselves is invalid. It is as valid as counting the contact lenses and eyeglasses people wear to improve their vision IMO.

<comment><USER7> > Some might argue against this and only count technology on or in the person, > because we could also count books and libraries in the same sense.

This is somewhat true but if I want to know the height of mount everest or the most common human blood group I can get that answer in under 3s with google which I couldn't do in a library, not to mention I carry everything indexable by google around in a little 5in across piece of glass and plastic.

<comment><USER6> True. Carrying the device my be enough to constitute being "on the person", where people argue that is the line to be drawn.

<comment><USER7> I just want an in-eye hud overlay with beyond human resolution, it's not a lot to ask ;)

</comment></comment></comment></comment></comment><comment><USER8> "When wikipedia has a server down, my apparent IQ drops by about 30 points"

[https://xkcd.com/903/](https://xkcd.com/903/)

</comment><comment><USER9> Original Paper _Searching for Explanations: How the Internet Inflates Estimates of Internal Knowledge_

[https://www.apa.org/pubs/journals/releases/xge-0000070.pdf](https://www.apa.org/pubs/journals/releases/xge-0000070.pdf)

</comment><comment><USER4> One of the smartest people I ever worked for, told me I should only learn to look things up, and not worry with memorizing volumes of books. He was the head IT guy at a Telco/ISP. On his desk was a nameplate that read "Think".

</comment><comment><USER10> I agree somewhat with the headline; however, what is the definition of knowledge? I think knowing how to search for the right things is part of knowledge. Knowing how to search for what you need to know extends your knowledge almost infinitely, and I don't think this is a bad thing. When I introduce others to web development, I prompt them to look things up and help them learn how to search. I think this is a critical skill, or maybe it's because I'm constantly googling while devving haha...

</comment><comment><USER11> Psychology used to study the behaviour and cognition of undergrad students. Now it studies that of Mechanical Turk workers. Progress!

</comment><comment><USER12> I don't rely on people's knowledge for the final authority. I rely on people being able to get the right information.

People' intelligence on finding the right information is more valuable than knowledge.

I have a high IQ and a 4.0 college degree (Well 3.956 but that last project till my degree was sabotaged by the professor :) ) I don't trust my "knowledge" and always validate it.

</comment><comment><USER13> Url changed from [http://mashable.com/2015/11/03/google-search- study/?utm_cid=...](http://mashable.com/2015/11/03/google-search- study/?utm_cid=mash-com-fb-tech-link#i.BKYdahDkqa), which points to this.</comment>


Reflections on trusting SGX - <AUTHOR> https://www.sigarch.org/reflections-on-trusting-sgx/ <comment><USER2> I wonder what effect does it have on Signal's Contact Discovery [0] (is this in production yet?).

[0]: [https://signal.org/blog/private-contact- discovery/](https://signal.org/blog/private-contact-discovery/)</comment>


Ask HN: Why is war news so ridiculously biased? - <AUTHOR> It's hard to believe. A month or so ago, a dam in US was overflowing a little, and it was a world news.
A few days ago US bombs the biggest dam in Syria, disabling it's control rooms and starting a countdown to a catastrophe and nobody gives a damn. Also the manager of the dam + his team were reportedly given 4 hours to go inspect the damage, only to be murdered by the US drone during that window.
Also, the bombs hit just meters from the dam's wall. Error, or a failure might have perhaps killed hundreds of thousands of people. <comment><USER2> If people aren't reminded of the war, they won't protest against it. Multinational corporations own most media, and multinational corporations profit most from war- and post-war contracts. It's that simple.

</comment><comment><USER3> It's a combination of both the American people's deeply racist cultural heritage and the common Western stereotype of Muslims being inherently violent people. So in many Americans' minds, if they're fighting each other, that's just the kind of people they are, always fighting, and it's all fine and good because there's far too many of them anyway. If you think this kind of thinking has died out, then you have a very naive view of Americans.</comment>


Show HN: Predictobot, predictive modeling made easy - <AUTHOR>

Predictobot lets you build a predictive model without any programming.  You upload a spreadsheet of data, specify the column you want to predict, and it automatically builds a predictive model for a regression or classification problem based on the other columns. You download a new spreadsheet, with the model right in the Excel formulas. That lets you make predictions going forward.
Other services like this are really aiming at helping programmers to build models.  I wanted to make something that a regular non-programmer could use, to get insight into their data.
It is open for registration now with no invite needed (unless I get a big rush), so register now and have a play.
There are some examples on the site at https://www.predictobot.com/examples/ with little explainer videos.  You can play with the results directly, see https://www.predictobot.com/examples/3/ for instance. Click on the little squares and you can interact with the model.
Your first 5 models are free during beta. Your first model will be free after the beta. Upload size is limited to 75MB (since it is for doing spreadsheet scale data, not big data.)
I'd love to hear your comments, good or bad. <comment><AUTHOR> Clickable links:

Main site: [https://www.predictobot.com](https://www.predictobot.com)

Examples page: [https://www.predictobot.com/examples/](https://www.predictobot.com/examples/)

Interact with an example: [https://www.predictobot.com/examples/3/](https://www.predictobot.com/examples/3/) (Hover and click on the little squares).

</comment><comment><USER2> How do you guard against over-fitting?

<comment><AUTHOR> The regression models are regularized. The classification models are simple enough that they shouldn't be very overfit. All the performance results are cross validated, so there is an out of sample estimate.</comment></comment>


We Analyzed 1M Google Search Results. Here's What We Learned About SEO - <AUTHOR> http://backlinko.com/search-engine-ranking <comment><USER2> Is it possible to access the data?</comment>


Ask HN: Who is working on/knows of WebRTC based projects - <AUTHOR>

WebRTC is supposed to be revolutionary and I know there have been a few projects and even startups using it. Of course the biggest challenge is getting all browsers  supporting it and IE does not support yet ? What are some projects/startups using webRTC and what problems are being solved ? Do you guys see a brighter future ahead ? <comment><USER2> [http://talky.io](http://talky.io)

[http://vmux.co/](http://vmux.co/)

[http://vline.com](http://vline.com)

[http://thisisdrum.com/](http://thisisdrum.com/)

[http://www.frisb.com/](http://www.frisb.com/)

Companies like Twilio, Voxeo, TokBox are already starting to make use of webRTC in their APIs and SDKs, where it works along the native and Flash-based solutions.

One thing that has held back webRTC is mobile support. It has landed in Chrome for Android recently; I believe we'll see major uptake as soon as it is available in most smartphones off the shelf.

</comment><comment><USER3> This webcam library has a nice flash fallback for IE and uses webRTC for everyone else. [https://github.com/addyosmani/getUserMedia.js](https://github.com/addyosmani/getUserMedia.js)

</comment><comment><USER4> [http://appear.in](http://appear.in)</comment>


Smalltalk on the JVM - <AUTHOR> http://www.redline.st/ <comment><USER3> Hi There, I'm the creator and maintainer of Redline.st This project has stalled right now because of other commitments. However, should there be renewed interested I would continue its development. \- James.

<comment><USER4> When you are ready again, I expect my t-shirt. Will pay again :)

</comment></comment><comment><USER5> This is really interesting as HotSpot (OpenJDK, Oracle Java) has its origin in a Smalltalk VM (Strong Talk), while Eclipse started its life as a Smalltalk IDE. Glad to see this come full circle.

<comment><USER6> Ah Visual Age, how I loved/hated you.

</comment></comment><comment><USER7> Smalltalk and Racket are two languages I recomend to anyone wanting to learn a new language just for self-education sake. Now running Smalltalk on JVM I can't think why I would go down that road.

<comment><USER8> Why do you recommend Racket over one of the other lisps?

<comment><USER7> Racket has a few big things going for it.

1) It was designed to teach and the "How to Design Programs 2md Edition" is the best book I have ever gone through for programming. (Also the most dense).

2) Racket is usable. I am now using Racket as a first choice. It is a joy to use. I can make my program and make it an executable in one line of code. So simple and its strongest reason to use the language.

3) The mind trust. It has the who's who of the academic Scheme and Lisp world. It is also the most practical. Racket is special because it is so well thought out.

4) It is plain old fun. It reminded me of when I first learned Python but with so much easier ways to share your program.

<comment><USER9> > I can make my program and make it an executable in one line of code.

Many Lisp implementations do that - even native.

Personally I think the Racket IDE sucks. Big. It's slow and buggy. On my Mac it is barely usable. The interactive response is extremely poor.

<comment><USER10> Lots of people who hack on and hack with Racket (including me) use Greg Hendershott's racket-mode [0] in Emacs. It's good. Greg also wrote a blog post about it recently [1] which might be of interest.

[0] [https://github.com/greghendershott/racket- mode](https://github.com/greghendershott/racket-mode)

[1] [https://www.greghendershott.com/2018/10/racket- mode.html](https://www.greghendershott.com/2018/10/racket-mode.html)

<comment><USER9> But when you want to write applications with a GUI, then you either need to use their toolkit or provide an GNU Emacs interface.

Neither is attractive, especially since both UIs suck.

<comment><USER10> Weren't you talking about the IDE? I feel like this is shifting the goal posts. Which IDE one uses is at most weakly connected to the toolkit one uses for GUI work.

<comment><USER9> The Racket IDE uses Racket's UI toolkit. As such the IDE an example how bad the UI toolkit is. Given that I'd write UI code on a Mac using a Mac-based IDE - both suck. The IDE look&feel is directly influenced by the UI toolkit.

<comment><USER10> I'd be delighted to discover new (as in new-to-me), high-quality IDEs and GUI toolkits, especially those drawing on Smalltalk or CLIM heritage, if you have any recommendations. Which Lisp IDEs do you enjoy using?

<comment><USER9> I've started many years ago with programming on the Mac using MacScheme - <USER2> was cool. Then Macintosh Common Lisp, which was really really great and later developed and sold by Apple for a few years - that was used for a lot of UI stuff. The later kind-of successor Clozure CL is more limited - it gets some basics right, but the IDE is limited. Nowadays I'm using LispWorks - which is commercial&expensive - but which has useful IDE and it gets many things right. It has also some CLIM influence in its CAPI UI toolkit.

For example this in Racket 7 in the listener:

      (define (foo i) (if (zero? i) i (begin (write i) (foo (- i 1)))))
      (foo 10000)

Takes around 20 seconds on my Macbook.

This in the LispWorks 7.1.1 listener on the same Macbook:

       (compile (defun foo (i) (if (zerop i) i (progn (write i) (foo (- i 1))))))
       (foo 10000)

it runs in less than 1 second.

<comment><USER10> Thanks for the pointers. Is LispWorks the only currently-available IDE you'd recommend?

The example you've given runs very quickly in Racket; it completes in some vanishingly small fraction of a second. Perhaps you were running it in DrRacket? If you're interested in any kind of performance in Racket, use the console REPL rather than DrRacket. The IDE instruments the code quite heavily, slowing it down rather a lot.

[ETA: For me, on a Linux machine, it takes 13ms in a terminal, and 227ms in DrRacket. I wonder why you were seeing the code run 100x slower than that? Perhaps it's a DrRacket-on-OSX thing.]

[ETA 2: There's clearly some buffering going on. Display of the text is the slowest part in DrRacket, and 227ms isn't enough time to plausibly include the text-rendering, so measuring this stuff is basically just hard. The terminal, unsurprisingly, is better at printing text quickly :-) ]

<comment><USER9> > Is LispWorks the only currently-available IDE you'd recommend?

For some stuff Clozure CL is useful enough. An interesting Lisp IDE for music composition was developed with it:

[https://opusmodus.com](https://opusmodus.com)

Allegro CL would be a good option on Windows/Linux - on Mac it is not native. But it's also commercial and expensive.

> Perhaps you were running it in DrRacket

yes, and when you resize the window the program stops while resizing...

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Aren't those icons from BeOS?

<comment><USER12> Yes they are.</comment></comment>


The Moment You Realize That People Like You, But They Don't Like Your Startup - <AUTHOR> http://robbieabed.com/the-moment-you-realize-that-people-like-you-but-they-dont-like-your-startup/

<comment><USER2> This reminded me of the formation of "The Rotters" band:

Instead of saying: "We are forming a band and looking for a drummer." they changed it to: "We have a band and need a drummer."

The second approach worked for them, while the first failed.

At the risk of being obnoxious: The client(s) sounds like a bunch of airheads. They were too dumb to see they are getting the same product with slightly different packaging. They remind me of my idiot relatives and their retail buying habits. But, at least you are making more money to put with garbage like that.</comment>


Ask YC : Anyone experienced an online CS degree? - <AUTHOR>

I am 30 and I have a familly to support. To be able to plan  my time as I want and still get a salary to feed my familly, I am wondering if an online CS degree can be a good solution. Did anyone try this? Any recomendation? <comment><USER2> buy a grad student for 20-30$/hr and work on your own project in your spare time. leverage quickly (i would estimate 6-10 months to get on the bottom rung) to get a job in CS. rinse and repeat.

</comment><comment><USER3> I worked with a team that had a few Indians that migrated over and did online master courses to compensate for their Indian bachelor degrees. One did CSU Boulder's online course work, one did Phoenix Online, another did something else that I forgot.

All in all they still have trouble keeping up with the kids that came out of an American undergraduate college. They spent quite a penny for it too and spoke highly of it but now they make the same money as the rest of us despite none of us (I don't even have a bachelors) have advanced degrees.

From what I heard experiences Phoenix Online is wholly dependent on who you get as an instructor. Will it greatly impact your salary in the future? I don't think as much as good experience and good projects on your resume would.</comment>


Hey HN: I started writing Venture Pimp to promote all our startups - <AUTHOR>

I'm running a new blog/Twitter feed called Venture Pimp. Every Monday, Wednesday, and Friday, I write about a new up-and-coming startup.
The blog has two purposes:
1. It lets interested folks find out about fun new things as soon as possible. 2. It can help promote new startups.
I've been interested in hearing about new startups for ages, but it was only once I moved towards making my own startups that I started getting interested in promoting them.
Anyway, it's sometimes hard to find out about things when they're brand new, so I thought I'd openly ask for submissions. Check it out at http://venturepimp.com, and if you've got a new startup, I'd love to hear about it -- just send a message to @venturepimp on Twitter. <comment><USER2> I definitely think there is a market, as TC has diversified into more of a tech/business blog that includes some start-up stuff.

I think the ability to comment on start-ups would be great, and maybe get more editorial with your writing style.

Take a look at some of the start-up entries on TC and see which ones have more comments, and maybe the writing style will tip you off on what is drawing people in.

Also, take a look at Killerstartups.com. Your site seems more similar to them at the moment. Their visits are huge, I suspect due to good seo, but personally, I'm not drawn to their site. I don't find the quality of the content very good.

<comment><AUTHOR> Agree, Killer Startups seems to be just carpetbombing with absolutely every new startup. I want VP to be the really interesting stuff; if I don't want to use a site, and can't imagine anyone I know using it, I'm not interested in writing about it.

</comment></comment><comment><AUTHOR> Clickable links: <http://venturepimp.com/> <http://twitter.com/venturepimp>

<comment><USER3> When you review a startup, do you get in touch with the founders? I think a neat feature would be to link to the founders own blogs too. Often I find that for interesting startups, the founder's blog is even more so.

<comment><AUTHOR> Although VP is a blog, I feel like the main show is the Twitter feed. So, with that perspective on things, I always try to find their Twitter account and link to it, so people can start following them and see what they're talking about.

I'll start keeping an eye out for interesting blogs in the future, though. It's a good idea.

</comment></comment></comment><comment><USER4> Nice :) I would personally prefer quality rather than quantity with respect to the no. of startups you cover. All the best.

</comment><comment><USER5> Good luck with this, Mark :)</comment>


Greg Chaitin on the Berry Paradox - <AUTHOR> http://www.umcs.maine.edu/~chaitin/unm2.html

<comment><USER2> Here's a shorter version of the same thing:

<http://www.flownet.com/ron/chaitin.html>

</comment><comment><USER3> Nice paper!</comment>


Ask HN: Which company do you wish had a developer API? - <AUTHOR> There is an abundance of data that could be useful to developers, but that is not available yet. Which company do you wish had an API? <comment><USER3> Not too many. If they don't I just use Dapper, and then Yahoo Pipes if needed.

Amazing "hack" about Yahoo Pipes... they block usage based on an IP accessing a pipe. Yet, you can make that pipe access the "singleton" version of itself many times. So let's say you want to pull up Delicious tags of 10,000 URLs (something I did to generate very nice marketing data), you could access Delicious yourself 10,000 times (and get blocked very soon) or you can access a pipe (which accesses Delicious) 10,000 times... or you can access a pipe 100 times, each time sending it 100 URLs, and that pipe will just loop through and do it (Yahoo will count 1 access against you rather than 100). Since there are loads of pipes servers, and it's a semi-trusted source (in this case very trusted, since Yahoo owns Delicious), not all the Yahoo pipes servers will get blocked by Delicious. Actually, at the rate I was pinging them, some of them did actually get blocked :)

Another interesting experiment: Make a Dapper App which contacts Yahoo Pipes for an RSS. Make that Yahoo Pipe access the same Dapper App. Fun!

<comment><USER4> If you like Pipes you should play with YQL (<http://developer.yahoo.com/yql>) it's much more like an API than Pipes given it's SQL-likeness.

While it's actually my job to promote stuff for Y! YQL is one of my all time favourite things we have done and it really very much worth taking a look at. Especially given we just released "open tables" so now you can map any service to it, not just RSS, XML, CSV, etc feeds

Disclaimer: I work for the Yahoo! Developer Network

<comment><USER3> Yahoo! continually comes up with some amazing stuff. XPATH selection of a URL via a SQL like query (<http://tinyurl.com/c5jrot>)... so awesome! Tell your coworkers that they've impressed me.

And now, I test querying the page for itself. If your servers crash, it was all me.

<comment><USER3> This has proven to be impossible

</comment></comment></comment></comment><comment><USER5> Most gyms make you swipe a card to get in, so they have a pretty good idea of how many people are in the gym at a given time. If they anonymized that data and made it public, I could go when I know it's not going to be crowded.

<comment><USER6> Wouldn't others go at the same time because they realize it's not crowded, hence making it crowded. Catch-22.

<comment><USER7> I doubt few people would be so anal to hook up to the gym's API and analyze the data to figure that out. In that sense, someone who does spend the time to do that will reap the reward for their ingenuity :)

(That said, when it comes to gyms it's pretty easy to figure out anyway. People don't tend to generally go during or immediately after mealtimes, there are fewer women during school-run times, etc.)

<comment><USER8> They would not have to use the API directly. Someone would make a website or facebook/iPhone application.

<comment><USER7> True, but I still think the percentage of average gym users who would go to those lengths would still be pretty small (though larger than those who'd use the API ;-)). Normal people rarely care about this level of efficiency (which I find sad, but hey).

</comment></comment></comment></comment></comment><comment><USER9> Most public services ought to have them. Not just APIs, but even simple stuff like an RSS or ical export for garbage/recycling days so I can throw it in my calendar. It's about usable data formats too.

Great question, by the way :)

</comment><comment><USER10> My doctor. Or my hospital. Or pretty much anyone in healthcare.

<comment><USER11> Heh...Good Luck with that.

I work in a facility that provides mental health care to clients. I am in charge of the computers and all the technology. Unfortunately, our primary customer is the county government and they simply will not budge on anything.

I'll give you an example of what I mean. I recently made a very simple proposal which was that we assign clients a confidential number (given to them in person) and have them generate their own password. They could then view their records online using that number and password. But...and this was the important part... no identifying information (such as name, SSN, etc...) would ever be transmitted over the web. None.

The number would be transmitted to us, matched up internally, and then treatment data would be sent back without any identifying pieces of info. No name, SSN, etc... would ever leave our firewall. In addition we'd still use secure connections through SSL, valid certificates, etc...

As you can probably guess I was shot down cold by the county. Transmitting data over the internet to private clients is not secure under any circumstances according to HIPAA (so they said, I don't agree).

These kinds of policies are why every medical professional fears transmitting data in any way. I mean, if the government says it's insecure than you're just opening yourself up for a lawsuit if you ever try to give access.

Privacy is important and I'm not against err-ing on the side of caution to a certain extent. But when fear of lawyers and fear of the Government over power common sense it's a tragedy and that is exactly where we are now.

<comment><USER12> Screw privacy, I'd rather the whole world know what's wrong with me... maybe they can fix it! Make it searchable and put my email address at the bottom.

<comment><USER13> > maybe they can fix it!

Millions of newbie programmers have this exact thought. This is why you see countless forum posts with chunks of code and a note like "Something's wrong, can you guys fix it?"

No programmer with experience is going to waste their time. Similarly, no doctor is going to waste time doing pro bono work to fix your medical problems.

<comment><USER14> I find people on forums are usually amazingly helpful and giving of time.

</comment></comment></comment></comment></comment><comment><USER15> Google analytics, it'd be really nice to have access to all that data.

<comment><USER16> There is their "Data Export API" currently in private beta. See the bottom of this post:

[http://analytics.blogspot.com/2008/10/more-enterprise- class-...](http://analytics.blogspot.com/2008/10/more-enterprise-class- features-added-to.html)

</comment></comment><comment><USER17> Academic Application Suites like Blackboard and the University IT system - <USER2> that's mostly for allowing better interoperability between organizations on campus.

My wireless telephone service provider. I would especially like to be able to query and download my voicemails.

Better ODB (On-Board Diagnostics) API. Every new car should include a webserver and either an ethernet or wireless NIC (and an easy way for the owner to explicitly enable/disable it).

Actually, every high end household item should have an API (which I suppose is what Java was initially going to do).

</comment><comment><USER18> Rail, bus and airline companies. It would be useful to query not only the timetable, but also any delays or changes, and of course booking via an API would be awesome.

<comment><USER19> not to mention geolocation, right? :-)

<comment><USER18> Sure. I want to call the APIs from my iPhone. :-)

</comment></comment></comment><comment><USER20> Hacker news doesn't have an API yet...

</comment><comment><USER21> Elevator. I want my iPhone to tell it when I enter the building, and that I'm going to the 6th floor. Ditto for when I'm going back.

</comment><comment><USER22> traffic lights system

<comment><AUTHOR> I am hoping this would be "read-only".

</comment></comment><comment><USER7> eBuyer.com - they're like the NewEgg of the UK. They have some great bargains from time to time but you always have to visit their site to dig around for them.. they have no Twitter feed, no blog, no API for their products, no affiliate program.. it sucks because otherwise they're the best place to buy computer parts/gadgets/techie gear here.

A more general answer is.. ALL e-commerce sites. Preferably with a standardish API so that you can do stuff like put together comparison engines easily without scraping HTML.

</comment><comment><USER23> My municipal government.

</comment><comment><USER24> My employer, The Denver Post. My bank. My library.

<comment><USER5> Wesabe has an API, so if it supports your bank, then you already have an indirect API for it.

<https://www.wesabe.com/page/api/examples>

</comment></comment><comment><USER25> Craigslist

</comment><comment><USER26> The UK government. There's so much information held in their records that would be great to get at through an API.

Can I include all the bodies funded by the government, like the Royal Mail (for their postcode db), Ordnance Survey (for their map data) to name a couple. They're funded by our taxes, so why not allow free access to it?

</comment><comment><USER27> Power grid data would be nice, maybe then devices could start knowing when it best to power down or charge.

</comment><comment><USER28> Albert Heijn, or any other supermarket.

</comment><comment><USER29> Ad networks should have a standard way for me to query what my CPM was for yesterday, so that I can make an intelligent decision about which ads to show tomorrow. Of course that might not be wise for them to provide...

</comment><comment><USER30> Gas stations, supermakets

</comment><comment><USER31> I really wish gmail had an API!

<comment><USER32> They do. It's called IMAP

</comment></comment><comment><USER33> interface Energy { getUsage(); setPowerState(outletID, powerState); ... }

I wonder if we could create a developer community oriented around defining interface standards we'd like to consume.

</comment><comment><USER19> My Bank. Actually any bank outside USA at all!!

</comment><comment><USER34> Congress

</comment><comment><AUTHOR> InfoUSA.

</comment><comment><USER35> imdb

<comment><USER33> <http://www.imdb.com/interfaces>

<comment><USER36> Unfortunately these are by no means the modern web APIs as we know and very limited in uses due to their nature. A RESTful API to the imdb online database would be hugely popular.

<comment><USER33> the netflix apis offer pretty rich catalog detail APIs that are RESTful: <http://developer.netflix.com/>

</comment></comment></comment></comment><comment><USER37> dropbox

<comment><USER38> why? You have the files, which is pretty much the best API you could want, isn't it?

</comment></comment><comment><USER39> Paypal could use one.</comment>


Ayn Rand Institute approved for PPP loan - <AUTHOR> https://www.reuters.com/article/us-health-coronavirus-ppp-ayn-rand-idUSKBN248026 <comment><USER2> [https://ppp-loan.info/](https://ppp-loan.info/) Shows all the businesses that were approved for more than $150K Loan (SBA PPP Loan). Filter by company name, city, state, loan amount

</comment><comment><USER3> Didn't Rand herself live off government handouts while she wrote her "books"?

</comment><comment><USER4> It doesn't get more ironic than this.

<comment><USER5> It's not ironic; it's consistent with a "me first" attitude.

<comment><USER4> Yeah, that's why I didn't say it is unexpected :-)

</comment></comment></comment><comment><USER6> [shrug]

</comment><comment><USER7> Can't get more Ayn Rand than this. She lived on social security and medicare in the later part of her life after all

</comment><comment><USER8> I have been guilty of calling behavior like this "hypocrisy" in the past but actually have changed on this recently.

You don't need to live in a way totally consistent with your ideal society if your current society is not ideal. Why? Partly because it's impossible or at least extremely difficult.

Ayn rand couldn't live without driving on roads paid for by the government, patronising businesses that received govt assistance, or relying on state police and firefighters to protect her property.

On top of that, her whole thing is radical selfishness, so if taking govt assistence helps you get ahead you should do it, right?

* I do want to note that I haven't actually read any of Rand's writings and am basing this off of what I know about her general philosophy on what the world should look like. If she's ever said things like "you shouldn't take any government assistance" then yeah she's a total hypocrite.

</comment><comment><USER9> Ayn Rand posited that taking government help is moral, as it was already paid by taxes many times over.

<comment><USER10> It's a bit like Warren Buffet complaining that he has a lower effective tax rate than his secretary, because long-term effective capital gains taxes are too low: He thinks it's wrong, but he still takes advantage of it. You can say, "These rules are unfair, they should be changed" while still playing the rules of the game the way they're written.

That said, there does seem to be something that smacks of hypocrisy in the case of the Ayn Rand case, more than in the Warren Buffet case. I think in particular, it's the idea that society would somehow be better without such safety nets: If you're using the safety nets, that's kind of proof that they're a good thing, isn't it?

<comment><USER9> "North Koreans wouldn't survive without government's daily handouts of rice. That's kind of proof that North Korean central planning system is a good thing, isn't it?"

<comment><USER10> Close, but not quite.

In your hypothetical scenario, North Koreans would certainly be able to sort themselves out without the daily handouts if they weren't being oppressed by the NK government.

Is it the case that the Ayn Rand Institute would have been perfectly capable of supporting themselves in this crisis if everyone had just been paying lower taxes and had fewer regulations? Perhaps people at the Institute think so, but I'm pretty skeptical.</comment></comment></comment></comment>


Show HN: Math Worksheets for Kids - <AUTHOR> http://worksheets.guru/ <comment><USER2> Interesting :) I've made [http://math.softover.com/](http://math.softover.com/) almost 6 years ago - practically the same

<comment><USER2> Not sure about kids, but my father actively used it for a post-stroke recovery

</comment></comment><comment><USER3> There are a lot of repeating questions on there. Also, would hope that this didn't require printing, which is expensive.

<comment><AUTHOR> @tar11 thanks for the comment. The repeating questions are by design since I found out my kids get really motivated by starting with a few easy ones, ones they got the worksheet started, it's harder for them to stop. As the worksheets get harder, duplication becomes less common.

I'll look later today into adding a tablet version that will allow them do draw over to avoid printing them. Give it another try tomorrow.

<comment><AUTHOR> You can now draw on phones and tablets by clicking on the worksheet, quite useful while on the go with kids or to save some paper.

<comment><USER4> Well done!

Is there a trick to getting back to the grid once you've gone into a sheet? Short of a refresh, that is, which erases the work.

<comment><AUTHOR> I was thinking of locking the UI to keep kids focused on finishing the worksheet before they ask for help to get a new one. But I agree it's currently hard to get back to get grid, I'll add support for navigating back to the grid to using the back button.</comment></comment></comment></comment></comment>


GoCardless (YC S11) Launches PayLinks, A Bitly For Payments - <AUTHOR> http://techcrunch.com/2012/05/31/yc-backed-gocardless-launches-paylinks-a-bitly-for-payments/

<comment><USER2> Looks a lot like <https://gumroad.com> to me, but without the need to have a credit card.

</comment><comment><USER3> We are using this and it's brilliant. The only thing missing (which I'm told is coming) is a user-definable Thank-You url. Without it we can't finish our goal funnel tracking.

But the integration is crazy simple - took us 1 minute to get set up.

<comment><AUTHOR> That is coming very very soon!

</comment></comment><comment><USER4> Great idea, but the implementation seems to lack UX thought. So many clicks to sign up and know what you're actually signing up to.

A quick user feedback session could help fix this. I assume this is a rival feature to Gumroad's approach in the States?

<comment><USER5> You are %100 correct. I was going to use Dwolla as my app's payment processor but their signup processes is horrible. So I opted for stripe.

<comment><USER4> Are Dwolla and Stripe really comparable? One reduces the cost of payments and the other is a pretty UI just for card based transactions.

</comment></comment></comment><comment><USER6> This looks fantastic - hope to try it out soon.

Worldwide expansion of a simple service like this would be amazing.

</comment><comment><USER7> Nice to see Groupay coming back to its roots with this. Good work guys.</comment>


Lincoln's Great Depression (2005) - <AUTHOR> http://www.theatlantic.com/magazine/archive/2005/10/lincolns-great-depression/304247/?single_page=true <comment><USER2> It is by no means clear that Lincoln had the illness that today carries the name "depression." My 2008 book, _The Physical Lincoln_ discusses why, and offers an alternate diagnosis that is holistically far superior to the piecemeal mental and physical diagnoses that others have bestowed on him.

In brief, there is abundant evidence that Lincoln, his mother, and three of his sons had a genetic disease called MEN2B that made them all tall, thin, and unusual looking (exception: Willie Lincoln was not so unusual looking). Features of MEN2B can mimic Marfan syndrome and depression, and this is what happened in Lincoln and his mother: Owing to variant neuromuscular function associated with MEN2B, they were physically constituted to look sad, because their muscles (body and face) had low muscle tone as a result of MEN2B.

I don't think there is a chance in the world that Lincoln was depressed as President, but Sheik's work has persuaded many people. I tackle all of Shenk's points (and others) in the book. If you're interested enough to debate the topic here, please read The Physical Lincoln first, and then write me -- so I don't have to repeat myself. :-)

Please see:

[http://www.physical-lincoln.com](http://www.physical-lincoln.com)

[http://www.ncbi.nlm.nih.gov/pubmed/22504423](http://www.ncbi.nlm.nih.gov/pubmed/22504423)

[http://www.ncbi.nlm.nih.gov/pubmed/19841386](http://www.ncbi.nlm.nih.gov/pubmed/19841386) [peripheral]

<comment><USER3> Thanks for your response, Dr. Sotos, and welcome to HN!

Without diving into the book - it certainly seems from the Atlantic article that Lincoln, on multiple occasions, exhibited suicidal tendencies. A primary source is quoted as saying, "Still when by himself, [Lincoln] told me that he was so overcome with mental depression, that he never dare carry a knife in his pocket." Do you believe that the article is exaggerating these reports, or otherwise putting them out of context? Regardless of whether Lincoln had MEN2B, these quotes certainly indicate to me (as someone without medical training, to be fair) that there remains a possibility that Lincoln separately suffered from depression, and therefore give me pause when you say as a medical professional that you "don't think there is a chance in the world that Lincoln was depressed as President."

(For others interested in this research, [http://www.nature.com/news/2007/071130/full/news.2007.226.ht...](http://www.nature.com/news/2007/071130/full/news.2007.226.html) goes into a bit more detail without requiring a full read of the book, which is not available in electronic format.)

<comment><USER2> Robert Wilson's knife quote did not describe Lincoln in the White House, but in the 1830s, when Lincoln was in his 20s and trying to deal with debt, career uncertainties, courting, deaths, and malaria. It was a hard hard decade for him.

One clarification. Mr. Shenk is interested in idiopathic depression. It is interesting that malaria was well-known among frontier dwellers to cause terrible depression of spirits afterwards -- i.e. a secondary depression caused by malaria itself. Lincoln was indeed low during his malarious period, but this has no bearing on the question of whether he had idiopathic depression, except that peri-malaria depression cannot be used as evidence for idiopathic depression.</comment></comment></comment>


The Long Now Foundation – Fostering Long-Term Thinking - <AUTHOR> http://longnow.org/ <comment><USER2> Long Now deserves your support through donations and patronage. They do great projects and run a program with fascinating speakers.I can attest that they run an amazing bar, _The Interval_ ,[https://theinterval.org/](https://theinterval.org/), located in Fort Mason in San Francisco which serves as their headquarters. If memory serves, food trucks congregate in front on Friday afternoon/evening.</comment>


A Startup is Not a Smaller Version of a Large Company - <AUTHOR> http://steveblank.com/2010/01/14/a-startup-is-not-a-smaller-version-of-a-large-company/ <comment><USER2> Aside from the dearth of available literature, what does this mean for founders? Does anyone here think that a founder should behave exactly like the CEO of a mature company?

<comment><USER3> _Does anyone here think that a founder should behave exactly like the CEO of a mature company?_

Probably not here, but during the bubbles you'd hear about small, early stage startups that had VPs of sales, marketing, HR, etc. as if they were trying to be a big company from day one. AFAIK it usually didn't turn out well.

</comment></comment><comment><USER4> My guess is the hardest place for the founder is step 2, the transition phase where the role of the founder has to change from startup to small company mentality..</comment>


Storing Health Records on Your Phone: Can Apple Live Up to Its Privacy Values? - <AUTHOR> https://www.npr.org/2019/02/27/697026827/storing-health-records-on-your-phone-can-apple-live-up-to-its-privacy-values <comment><USER2> It is amazing PR from Apple that they can get journalists and customers (and even a lot of HN readers) to believe that they are an actual advocate for privacy rights. Apple would sell your soul the second they thought it to be the best thing financially.

Ask yourself this:

If the US made laws that forced Apple to allow three letter agencies full access to Apple devices one way or the other, would Apple move everything out of US reach? If they are an actual advocate for privacy rights they would do so. Do you think they would?

</comment><comment><AUTHOR> I'm pretty torn on this as an American living in Europe (Estonia) where there is a robust government system for health record storage. Whenever I go to a doctor my health record is updated online and I can log in anytime to see it or to see who accessed it (only very specific people have access like my doc). I think it's hugely useful, just an example, I recently had to travel urgently to Africa for work but had no idea where my vaccine records were from the U.S. since I have lived in half a dozen cities with even more doctors with my records spread across them in no central database so I could enter Kenya. In Estonia that problem wouldn't have ever happened, I can log into my console and print the doc. The fact that a private company needs to build this infrastructure out is a shame but if it's going to be any major tech company, I guess I'm glad it's Apple</comment>


EC2 High Memory Cluster Eight Extra Large Instance (244 GiB RAM) - <AUTHOR> http://aws.typepad.com/aws/2013/01/ec2-for-in-memory-computing-the-high-memory-cluster-eight-extra-large.html

<comment><USER2> Almost all the big EC2 outages have been due to EBS, and you have to pay extra for it as well. Netflix steers clear of it [1].

Does anyone know why Cluster Compute and Cluster GPU Instances [2] (including this new one) make using EBS mandatory?

[1] [http://techblog.netflix.com/2011/04/lessons-netflix- learned-...](http://techblog.netflix.com/2011/04/lessons-netflix-learned-from- aws-outage.html) [2] [http://aws.amazon.com/ec2/faqs/#Does_use_of_Cluster_Compute_...](http://aws.amazon.com/ec2/faqs/#Does_use_of_Cluster_Compute_Instances_differ_from_other_Amazon_EC2_instance_types)

<comment><USER3> Two reasons come to mind:

* the failure rate of an EBS volume (assuming a bug-free EBS software stack!) _should_ be less than any one spinning disk

* these machines don't have disk space set aside for copying the root volumes to them from S3 to boot. (There's a 10GB limit, and to allow for this to be somewhere, you'd have to have another SSD, or partition the existing ones.)

There's a good blog post about it on Rightscale: [http://blog.rightscale.com/2012/11/02/new-ec2-instance- types...](http://blog.rightscale.com/2012/11/02/new-ec2-instance-types-and- coordinated-failures-in-the-cloud/)

esh's "You Should Use EBS Boot Instances" also lays out a number of good reasons to use EBS for boot: <http://alestic.com/2012/01/ec2-ebs-boot- recommended>

You at least have two 120GB ephemeral SSDs to play with when you're running - a luxury you don't have on the new M3 classes.

<comment><USER4> It's not really the rate that's the issue here, it's correlation between failures. The chance of losing a third or more of your machines at once is enormously higher with EBS.

Partitioning a disk should take seconds; I don't see why it would be an impediment. As it is, someone can do it themselves but now it'll be a custom job and less reliable.

</comment></comment></comment><comment><USER5> One way to scale Firebird Database is to put it on memory virtual disk or ramfs

On linux i can mount a partition in memory (Install ubuntu/debian)

sudo mkdir /mnt/ram sudo mount -t ramfs -o size=200G ramfs /mnt/ram mount to show you the partitions mounted

and then move your database into the ram partition

cp -rp /var/lib/firebird/2.5/data /mnt/ram

That large instance could help you with the Firebird cache settings also the extra SSD could do wonders

Inspired by the stack overflow big fat server architecture

[http://highscalability.com/blog/2009/8/5/stack-overflow- arch...](http://highscalability.com/blog/2009/8/5/stack-overflow- architecture.html)

<comment><USER6> Well, two things with that. Three really.

First, does AWS allow ramdisks? It's been a few years since I tried to mount a ram disk on Xen, but it was not possible at the time.

Second, most databases are smart enough to shuffle stuff into RAM for you, starting with indexes and commonly-accessed tables.

Third, the "D" in ACID stands for "Durable". If you want an in-memory store, use an in-memory store. RDBMSes do sorta kinda rely on the assumption that stuff written to disk is _actually written to a disk_.

<comment><USER5> Yes it AWS allows ramdisks , here is the output from a machine

root@ip-amazon-ip:/home/ubuntu# mkdir /mnt/ram mount -t ramfs -o size=2G ramfs /mnt/ram mount ramfs on /mnt/ram type ramfs (rw,size=2G)

There are the cache and memory settings Fore Firebird but is better to put the main full database on the fastest storage and that is RAM for the moment

In Firebird we have a nifty feature called Shadow that creates a life snapshots of the active database (Think of it as Replication in real time) so you can activate it and keep a safe database on the SSD/HDD

<http://ibexpert.net/ibe/index.php?n=Doc.DatabaseShadow>

</comment></comment></comment><comment><USER7> Recently, antirez pointed out that redis was essentially memtest86; consequently, he has had to spend a lot of time chasing down phantom bugs due to memory modules with stuck/flipped bits. At that time, I think HN was left wondering whether Amazon uses ECC memory in its EC2 machines. Do we know whether that's the case now?

<comment><USER8> All Xeons and Opterons (in other words, all EC2) use ECC.

</comment></comment><comment><USER9> Colin Percival (cperciva) already has FreeBSD 9.1-RELEASE running on these!

<http://pastebin.com/SCMUJNDt>

</comment><comment><USER10> This instance was announced at RE:invent 2 months ago, and is now available. You can try one out for $0.34 / hour with spot instances.

<comment><USER11> It does not seem to be possible to launch a spot instance of one of these... the web interface wont allow it, anyway... Still, about $3 per hour to play with a machine of that size should be interesting...

<comment><USER12> You might have to use the ec2-api-tools cli package to launch spot requests for this instance type right now. The AWS Console doesn't always seem to be updated at exactly the same time as new instance releases.

</comment></comment></comment><comment><USER13> RAM isn't a cure all for big data applications and presents its own set of challenges. The largest issue is with traversal and data access latencies simply because of the virtual memory management overhead that is required.

I've run into this problem with our btree search indexes on bare metal (~96GB), some more reading:

<https://github.com/johnj/llds>

</comment><comment><USER14> Some time ago (mid 2011), I was trying to use an AWS 64 GB machine for some largish work and discovered that I couldn't actually allocate anywhere near all of the 64 GB of RAM I was supposed to have access to. As I recall, writing a simple C program to do binary search to pinpoint exactly what the max amount of memory I could malloc was, it failed somewhere around 34 GB – so just over half of the memory I was supposed to have access to. Makes me wonder how much of this 244 GiB you can actually use when you spin up one of these machines.

</comment><comment><USER15> I'd like to see a machine with an SSD from Amazon that wasn't so big and expensive.

<comment><USER16> I don't think that's possible. Big|Fast|Cheap, Choose two. (or one, under some circumstances).

<comment><USER4> I think you misread the parent. jahewson asked for a machine that is Fast and Cheap and Not Big.

More specifically they want to upgrade a weaker machine with an SSD instead of getting a high end machine with an SSD.</comment></comment></comment>


Work on gevent during Google Summer of Code - <AUTHOR> http://blog.gevent.org/2010/03/16/google-summer-of-code/

<comment><USER2> I am wondering why we cannot just merge stackless python in cpython along with gevent in standard library...</comment>


Announcing Intel Concurrent Collections for Haskell  - <AUTHOR> http://software.intel.com/en-us/blogs/2010/05/27/announcing-intel-concurrent-collections-for-haskell-01/

<comment><USER2> This is so cool! Another reason for me to dive into Haskell.</comment>


Lambda@Edge – Preview - <AUTHOR> https://aws.amazon.com/blogs/aws/coming-soon-lambda-at-the-edge/ <comment><USER3> So we're getting C# and a new Node.js runtime for Lambda. Jeff, surely you're reading this - when are we getting Python 3 support as an additional runtime?

I've been waiting for _months_ for re:invent in the hope that it would be announced today, only to be disappointed. I'm not the only one in this situation: stuck on Python 2.7, hitting issues left and right because of an ancient runtime that we no longer would care about were it not for Lambda.

Just _today_ I hit another issue in production which impacted our webhook system. Wouldn't you know it, `json.dumps()` produces illegal json in Python 2.7 when you give it an IntEnum:

        >>> from enum import IntEnum; from json import dumps, loads
        >>> class E(IntEnum):
        ...  A = 1
        >>> dumps(E.A)
        'E.A'
        >>> loads(dumps(E.A))
        Traceback (most recent call last):
        ...
        ValueError: No JSON object could be decoded

Please. Do something about this. It's wasting so much time :(

<comment><USER4> Was really expecting a lot more out of the announcements today as well. Python3, GPUs, custom containers, larger packages.. the list goes on..

That being said, re: Python 3, you should keep a close eye on Zappa ([https://github.com/Miserlou/Zappa](https://github.com/Miserlou/Zappa)) - <USER2> we've got a surprise in store that may delight you!

<comment><USER5> So this looks very cool. Great job... but...

It would be pretty simple to wrap this up and automate it easily using a Terraform file. All it requires is an S3 resource for the ZIP, a Lambda resource using the S3 resource for the code, and finally an API Gateway resource to tie it all together.

Thoughts?

<comment><USER4> ...but why?

We already use CloudFormation under the hood for the API Gateway, though to be honest I'm seriously considering moving away from it because it's so fickle.

There are also some security disadvantages and other problems from using CloudFormation for maintaining Lambda functions, plus you lose out on all the extensive functionality we provide. We're pretty damn well battle tested to avoid that stuff now.

<comment><USER5> Well, by using Terraform you're opening up the door to using other Lambda offerings as they pop up from other venders (and become supported by Terraform, of course.) CloudFormation is nice, and in your case it makes perfect sense given you're offering a Lambda specific service, but in the grand scheme of things I don't believe it's the best solution "all round."

What you're offering is awesome, for the record. I think it's a good idea, I think it's powerful, I think it's fast. It's a good idea and you should keep working on it.

However, it's a single, small Terraform file worth of work from my perspective.

</comment></comment></comment></comment></comment><comment><USER6> This is very, very cool. It allows you to deploy application logic extremely close to the user (in terms of latency), and Cloudfront has an order of magnitude more edge locations than the other AWS services like EC2 and S3.

In fact, if the promised ability to read/write the request/response bodies does appear, it might be possible to deploy your entire website or app as a single Lambda@Edge function. (Not every app would fit within the size, memory, and CPU constraints, of course.)

The main limitation would probably be the fact that for each incoming HTTP request, your choices are limited to either making zero origin requests (i.e. the function generates the response directly) or one origin request. It's not clear how this could work if you wanted to make two origin requests and combine them to render a single response.

I'm totally going to sign up for the preview and play around with it! Especially if, like the regular node.js Lambda functions, you can include arbitrary Linux binaries with the function code. Compiled request-processing code would easily meet the 128MB/50ms criteria.

</comment><comment><USER7> For what it's worth, here is the original thread:

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

This should definitely meet our needs in both cases: serving prerendered content when necessary, and also adding the security headers to the front end. And it's definitely a 10x better solution than having an extra EC2 instance with your private certs on it, just to run an nginx proxy with twenty lines of code.

<comment><USER8> Wait, by "original thread" are you implying this feature was thrown together in the past week and a half since you asked that question?

<comment><USER9> Yes, the HN thread is prominent in the article.

<comment><USER8> Ah, OK: the answer is "no" (as the question did not lead to the feature), not "yes" ;P; and also "I am dumb" (FWIW, I actually got to this thread by searching for it after already knowing about @Edge, so I didn't even click the article link: I saw the @Edge stuff today in the ECS FAQ, searched for it on Google and saw it had been announced 15 minutes earlier, and then came to HN to read comments about it).

</comment></comment></comment></comment><comment><USER8> While having minimal access to the request to do things like add headers is of course quite useful, the people I've known who most want code execution at the edge are either already using or looking at using ESI (Edge-Side Includes, as provided by Akamai and Varnish), in order to express things like "use the cached content for almost the entire page but add some per-user information to the response via a secondary virtual request (the content for which might also be cached at the edge!) for people who are logged on; they say that at some point they will allow access to and potentially modification of the body, but it isn't clear to me that this will be as potent as (even if it eventually becomes technically as powerful as) ESI.

</comment><comment><USER10> > Because your JavaScript code will be part of the request/response path, it > must be lean, mean, and self-contained. It cannot make calls to other web > services and it cannot access other AWS resources. It must run within 128 MB > of memory, and complete within 50 ms.

I'm having a hard time conceptualizing what kind of logic you _would_ run on these edge functions?

You have access to headers, so also things like client cookies, so could you use that to potentially personalize/templatize the body (once they have body mutation abilities)?

Or is it really just about static content routing? Detect google bot user agent and send them to resource A versus B etc...

<comment><USER11> Couldn't you have your apps primary routing handling in this?

<comment><USER12> The linked post uses CloudFront as an example, which is commonly used simply as a CDN in front of static content on S3. This allows you to take that model and add some dynamic content to it.

I just recently used this model to host a JS widget used on external websites, now I could for example add some basic logic to disallow certain domains (by checking referrer headers) from using the widget.

</comment></comment></comment><comment><USER13> For anyone needing a minimal effort prerendering solution (server side render for most JS frameworks), i.e. the use case described by Jeff - I made [https://www.prerender.cloud/](https://www.prerender.cloud/)

(you could use the prerendercloud npm middleware from the lambda edge)

</comment><comment><USER14> Interesting... looks like something we might want to use to do URL rewriting for an S3-hosted SPA test environment, so that deep links resolve to the base of the SPA without having to use a more "dynamic" host like an EC2 instance running nginx. [edit] ah, nevermind, you have to be using CloudFront too.

<comment><USER15> This so much! Cloudfront/lambda/s3 combo is missing this piece for which you have to use unnecessarily complex api gateway or ec2 varnish/nginx setup. Thanks Jeff!

</comment></comment><comment><USER16> I somewhat wonder if this will be used by malicious websites for cloaking. For those who are unaware of the term, cloaking is used by malicious websites/ads to render different content to search engines and bots than for real users to avoid detection by those automated agents.

</comment><comment><USER17> This seems it might be a way to check if a user is logged-in or not and provide the appropriate page. I'm thinking if the user details are in a jwt or cookie, you could render the correct page on insecure routes.

</comment><comment><USER18> you can use this to serve dynamic websites out of CDN, for example github pages, which we talk about as a static site but underneath it is a slow moving database (your git repo)</comment>


Investigating 65c816 Interrupts - <AUTHOR> http://6502.org/tutorials/65c816interrupts.html <comment><USER2> Something that really shines about the 65xx CPUs is their excellent interrupt responsiveness.

<comment><USER3> In what way do they differ from other CPUs wrt interrupts that makes them more responsive?

<comment><USER4> The interrupt sequence saves very little CPU state, leaving that to the IRQ handler, and the CPU doesn't appear to generate IRQ ACK signals. A linked page ([http://wilsonminesco.com/6502interrupts/index.html](http://wilsonminesco.com/6502interrupts/index.html)) has a table (at the bottom) that lists various CPUs and IRQ latency.

<comment><USER5> funny illustrations

</comment></comment></comment></comment><comment><USER5> interrupts in out-of-order processors were the topic of last's week coursera comparch course [https://www.coursera.org/learn/comparch](https://www.coursera.org/learn/comparch) \- nice to see the discussion for a smaller machine</comment>