Don't Terminate People's Internet Connections - <AUTHOR> https://labs.ripe.net/Members/job_snijders/dont-terminate-peoples-internet-connections <comment><USER2> Here in Australia, a few responsible providers like Aussie Broadband have already announced unmetered data usage and temporarily stopping all service suspensions.

[https://www.aussiebroadband.com.au/blog/aussie-broadband- ann...](https://www.aussiebroadband.com.au/blog/aussie-broadband-announced- covid-19-response/)

Edit: The real test though will be the bandwidth of our gov-sponsored, substandard, widely FTTN (instead of full FTTP).

<comment><USER3> As a kiwi it blows my mind how bad your broadband is over there. My cousin recently moved to some rural Aussie town and will be getting 25 megabit, tops. Here in NZ we're rolling out 4 gigabit connections nationwide over the next 6 months.

EDIT: props for getting rid of limits and disconnects though. NZ providers are just saying we'll be able to cope with everyone working from home because we have a fancy network.

<comment><USER4> At least some of that could be due to the fact that Australia is way larger geographically though, right? It's a lot more cable to run.

<comment><USER5> Not at all. NZ is even less urbanised than Australia. The long-distance transit cables between cities in Australia all mostly already existed before the NBN even started.

You could cover more than 80% of our population just cabling up (literally) about half a dozen reasonably dense cities.

The actual reason is political. One side of politics privatised the state owned monopoly telco, creating a single huge, anti-competitive behemoth. That made progress with the internet stagnate for a decade. Then the other side got in, tried to work with the telco but they wouldn't budge, and then surprised everybody by deciding to just build a provider-neutral network that was FTTP to 90-93% of the population. This was going fine - a few months behind schedule but on budget (projected at AU$44.1bn) after a few years.

But the opposition managed to convince a bunch of people in the media that it was hugely over-budget (despite the fact it wasn't, _and_ that all their financials were on the public record) and that a sensible solution was to stop that, and instead buy the old copper networks off the incumbent provider and spend a few billion to do a bit of an upgrade. They were "absolutely confident 25 megs is enough for anyone" and said this would cost max $29bn. They won Government, turned the network on its head and it's just been one problem after another with huge widespread service quality issues, massive cost overruns, delays etc.

So now the cost of their "more sensible, cheaper, and quicker to build" network is nearing $60bn and finishing two years later than the original FTTP schedule (before they won Government, the party that wrecked the project promised to have it done by the end of 2016!)

So it's just a big mess. Nobody really knows why they chose to do what they did when pretty much all the experts said to just continue with FTTP (they paid some consultants with links to their party to say their idea was great to get around that). Some say it was business links between party members and the incumbent telco, or the cable TV network they own half of. Others say it was because they had a deal with Murdoch (the leader of the opposition actually happened to have lunch with him the day before they announced their policy) because he owns the other half of the cable TV network. Perhaps it was just because they couldn't accept that it was a good idea the way it was...

</comment></comment></comment></comment><comment><USER6> If the current strategy of making telecommuting the default takes hold post corvid-19 the governments of the industrialized world is going to be forced to treat internet the same way it treats other core infrastructure like roads or railways which means that nationalization will happen if the industry fail to deliver high speed and low prices to the undeserved rural areas.

<comment><USER7> I'm not an expert, but my local MUD board has made basically no improvements since the invention of plumbing. I happen to know how their systems work and they are designed to be the deadest-simple things that will work reliably forever. There's no such thing as a "high performance sewage system" unless you count a really big one as high performance. This attitude generalizes to civil engineers in general who prefer safety over experimentation.

Now, let's compare this to my state and local governments. They're slow, hate change, they're very careful about who to give money to because their main problem is avoiding corruption. A prominent local politician campaigned and won by promising to vote no on or veto everything. Every slow-down comes from a totally legitimate anti-corruption rule and you aren't going to speed the process up without creating Tammany Hall. My local politicians have only one way to make the news, and that's by messing something up. There is no carrot, only a stick.

Those two pictures align perfectly! As a result, my water service has never been interrupted, and I have never gone to the polls with a negative idea about anyone on the MUD board. It's a great system for everyone involved.

Now, my question is, how in the world does this work with internet service, an area in which there are changes at a rate greater than once per century?

<comment><USER6> Plumbing or Highway constructions were/are highly complex high-tech when the government decided the private industry was unable to maintain it to the standards society needed 50+ years ago.

You might also be mistaking the fad driven high margin web for the rather stable internet sitting underneath it, especially if you go all the way down to the cable duct where a lot of rural houses are still using copper put down in the 30ies.

The problem here is that laying down cable ducts requires both "right of way"(often exclusively held by whoever laid down telephone cables in the 30ies) expensive survey work and real physical labor(someone have to an actual trench), all of which requires capital and if you already own the copper cable for no significant increase in revenue.

Things can be done with radio signals and i suspect whenever 6G mobile arrives it might be municipal, but radio will likely never match the bandwidth potential of even the first optical cables ever laid down.

</comment></comment></comment><comment><USER8> In this time and age I think an internet connection is a human right. There should be free internet access, although limited bandwidth, for those who cannot afford it.

<comment><USER9> In first world countries it is. In Poland since 2009: [http://www.prepaid- wireless-internet-access.com/page/Poland+...](http://www.prepaid-wireless- internet-access.com/page/Poland+-+Aero2+%28Free+Internet%29)

<comment><USER10> Not universally. In Germany, there is only a federal decree guaranteeing 56kbit/s modem speed, and this is not a human right but merely an obligation to the state telco.

<comment><USER11> In Poland Aero won its licence on preferential terms with obligation to provide free mobile internet for everyone who wants it.

It is limited and many people will rather choose commercial providers (faster, more flexible plans) but it is working and is free.

PS. Germany has toll-free highways, Polish are quite expensive..

</comment></comment></comment></comment><comment><USER12> Smart message, hopefully it is received at the cell phone companies. I noticed TMobile is going to give everyone unlimited internet for a couple months whether you have that plan or not - but they didn't say if they were going to avoid shutoff's for no pay.

<comment><USER13> For cell phone companies physics is an actual limit, you can have multiple cables laid to improve bandwidth but radio spectrum is only one. You can of course keep making cells of the wireless network smaller and smaller but if you go so small that say each house/apartment has personal one you have invented wi-fi basically.

</comment></comment><comment><USER14> to all those who are blackhat , this is not the time to commit crimes and give people reason to want to dissconnect services, if you are a criminal at least realize that you are overtaxing your bread and butter. give it a break for a while until the system can handle the load of light and dark together

<comment><USER15> Sadly, I think the people who are irresponsible enough to commit crimes in normal times are also going to be irresponsible enough to commit crimes in a crisis situation, and even to look for ways they can exploit a crisis to their own benefit.

<comment><USER16> For example, there have been COVID-19 phishing and malware scams already. Yes, people are using this pandemic to scam other people!

</comment></comment></comment><comment><USER17> Internet should be viewed as a utility.

<comment><USER18> Most other utilities charge based on how much you consume.

<comment><USER19> Most other utilities have cost structures that scale with actual consumption rather than capacity.

If you use more water, even if there is plenty of delivery capacity, they could literally run out of it. There is only so much in the reservoir.

If you use more electricity, even if there is plenty of transmission capacity, they have to burn more fuel to generate it.

Transferring more bits doesn't risk depleting the supply of bits and doesn't require burning more fuel. The worst it can do is consume all of the available transmission capacity. But the amortized cost of a bit is very low -- if you charged true cost then it wouldn't meaningfully deter usage, so you'd still need about the same total amount of transmission capacity. At which point charging for usage serves no legitimate purpose.

<comment><USER18> ISPs have cost structures that scale with actual usage. Cables and routers have a fixed maximum capacity. Within that capacity each marginal bit is virtually free, but as traffic increases they eventually they have to pay for hardware upgrades. Cisco doesn't give routers away for free.

Legitimacy or lack thereof is irrelevant when setting prices.

<comment><USER19> > ISPs have cost structures that scale with actual usage. Cables and routers > have a fixed maximum capacity.

In other words, they don't scale with actual usage, they scale with maximum capacity.

When you take your monthly cable bill and divide it by what it pays for, almost all of it is going to things that don't scale with capacity. Having routers that are ten times faster doesn't require you to have ten times as many staff. They don't use ten times more electricity. They don't require ten times more office buildings or utility poles.

If you take the cost of the capacity upgrade and amortize it over total usage during peak hours, it adds a couple of bucks to the bill for the people who use the most. But that's not enough to deter usage by so much that you don't need the capacity upgrade. You need the capacity upgrade whether you charge per bit or not. At which point the upgrade is a sunk cost and charging for usage is inefficiently discouraging use of a resource that is being paid for either way.

</comment></comment></comment></comment></comment><comment><USER20> message needed in this time. Please don't think about money in times like this. we need each other and we are all in this together. stay safe and let other's be safe too.

</comment><comment><USER21> >We'll mop up society's collective bills at a later point in time

Very much doubt faceless corporations with automated billing cycles will take such an altruistic view on this but perhaps I'll be surprised.

Most will do the exact opposite I believe. The last financial crash caused massive cashflow issues for the big corps.

</comment><comment><USER22> > To illustrate, in the Netherlands we are in lockdown, because of the > COVID-19 hazard: you are expected to _only_ leave your house if it is > absolutely critical, such as to pick up food from the food distribution > centers, to get meds, to go work in a hospital, etc.

You have food distribution centers?

I'm jealous.

<comment><USER23> I'm from the Netherlands, I think what he means is supermarket. Because distribution centers deliver food to the super market itself instead of the customers. Otherwise I'm not sure what he/she is talking about.

We have a full lockdown, yet everyone is outside and it's really crowded. There aren't people that give a (...) About the situation, especially in this city, because most of the people are higher educated.

<comment><USER24> We don't have a full lockdown. We have "work from home if you at all can, try not to socialise, etc." It's certainly not "you may only go out if you're going to the supermarket, pharmacy, hospital or you risk fines." Many shops are still open, for example.

This said, I also wouldn't say it's really crowded, I took the tram in to the office this morning to pick some stuff up (last day that'll be possible for a few weeks) and it was very quiet.

</comment></comment></comment><comment><USER25> Funny language issue - as terminating a connection also means providing an endpoint. Perhaps "Don't disconnect people's internet".

</comment><comment><USER26> Here in italy Fastweb pledged set up a 1-million gigabytes traffc pool from which all subscribers draw automatically. Once the million is over, traffic will be drawn from the account (granted, Fastweb offers ~50 GB/month for 9.90/month).

This is for now, i wouldn't be surprised if they extend it later on.

The thing is, Fastweb is big in residential internet connection but pretty minor as mobile provider.

No word from major providers (Vodafone, Tim, Iliad)

<comment><USER27> Currently for me 4G is the only option to work remotely (the only alternative would be going with a wimax provider, or sat). I don't normally incur in the data size caps, but I will soon in the current situation, even when trying to be conservative.

It also doesn't seem worthwhile to switch at the moment, since other solutions require a 1-2 year contract which I do not need (not to mention, it would also take 2-3 weeks to get a connection with those anyway).

</comment></comment><comment><USER28> About a month ago my Hong Kong mobile service provider offered subscribers a free local data package. Not unlimited, but a nice gesture.

<comment> yjftsjthsd-h What's "local" mean here?

<comment><USER28> I believe this is their speak to make it clear you cannot use that data while roaming.

There are not enough resources hosted within the region to make the distinction pointed out by donavanm worthwhile, unlike e.g. China or Russia. The local data from my plan gets used up predictably while I access resources in any part of the Internet.

<comment><USER29> Could it be that they're including the rest of China in local? Are peering arrangements between HK and the rest of China such that this would make sense?

<comment><USER28> No, China and Macao both mean roaming data (not included in "local data" quota on regular plans), though the rates are good.

</comment></comment></comment></comment></comment><comment><USER30> Overall, maybe a good sentiment and maybe a good idea. In many areas I think this is being done.

However, I don't at all like the argument that if your neighbor can't pay her bill, it might not just impact her, but two of her neighbors, one of which is some kind of network engineer who fixes BGP thingies. And neither of the leaching neighbors who have some kind of critical need of _her_ internet can help pay for it???

If you can fix BGP thingies, you ought to have your own WiFi, or be able to do better than leaching it.

<comment><USER31> On the internet this sentiment is called virtue signalling: it costs you nothing, but people around you think you are a good guy.

<comment><USER32> Except this "sentiment" will genuinely help people who lose their jobs due to corona and won't be able to pay bills. That extra money from not paying a bill can really help out.

<comment><USER30> AND... I didn't say it was a bad thing.

But it is bad that you have two people leaching off some hypothetical other person's WiFi, neither of which is willing to pay for their own or help her. And you aren't "fixing BGP thingies" for free or if you are out of work.

Why isn't the mooching neighbor helping pay?

I'm ALL for the ISP's relieving bandwidth caps and not cutting service due to emergency related financial difficulties - for their subscribers.

</comment></comment></comment></comment><comment><USER33> Knowing how evil telcos can be, I'm legitimely surprised they didn't exploited this crisis and their virtual monopolies to squeeze more money from customers.

<comment><USER34> At a certain level of evil, during a crisis, they risk causing enough trouble to receive congressional attention. The last thing they want is new laws and regulation that impact their future ability to be evil.

</comment></comment><comment><USER35> If you live in a condo, what about sharing your internet on the guest WIFI network? Does it make sense? Will people misuse it? (It probably violates TOS, I guess.)

<comment><USER36> Not sure about any TOS but I've been sharing my WiFi for more than 10 years now. I live in an appartment block in an Eastern European capital.

<comment> gray_-_wolf I guess it depends. At least in my contract for connectivity is a clause then I cannot share the connection with people not living in the same household. I would imagine it is fairly common.

<comment><USER37> Does that mean you cannot have guests using your connectivity? I'm assuming they still can. What if they stay outside your apartment? What about staying outside apartment for one week? So many questions

<comment> gray_-_wolf It excludes people even temporary present in the apartment. So guests are supposed to be fine. If they are outside and their phone auto-connects, it is technically a breach, yes.

I asked about it and have in writing that the intention is to prevent sharing with neighbors. But I mean, there is no way to enforce it either way so ¯\\_(ツ)_/¯

</comment></comment></comment></comment></comment><comment><USER38> Where I live, it is illegal for utility companies to cut power during winters, for obvious reasons. Same should be for internet.

In fact, I'd go as far aa saying thar internet today is an absolute necessity, on par with water and electricity.

</comment><comment><USER39> I'm wondering what people's thoughts are on net neutrality in light of this new work from home situation. Would it make sense to offer a free tier with limited access?

<comment><USER7> Anyone working from home doesn't need a free tier, right? What is a working professional going to do with an internet connection that only goes to Facebook and Wikipedia?

</comment></comment><comment><USER40> The message does not really make much sense to me. Both service payments and pay dispute handling is overwhelmingly done online, so it is not affected by coronavirus and lockdowns.

We do not really know how long it will take. Emergency state and lockdowns may be the new normal. Everything that could work as usual should work as usual to not cause additional disruption.

<comment><USER41> >Both service payments and pay dispute handling is overwhelmingly done online,

You could be in hospital or you always pay cache not online, many people pay everything with money in hand in shops(that have such payment points) here in Romania, also if you have a smartphone I imagine attempting to setup accounts and try to pay online from the phone is a pain.

</comment></comment><comment><USER42> Eh.. there won't be. But it's not because of some altruistic motivations, it's bad PR and the sheer numbers of lost customers would out weight the benefit of terminating for non-pay.

<comment><USER43> At least in the US, the few the major residential ISP's have a virtual monopoly so wont loose many customers and have proven in the past not to give a $#@ about bad PR.

<comment><USER44> Actually, Comcast has been a hero of late. The have advertised that they will give away basic internet for free, and bumped up the speed of existing subscribers in addition to bumping up their data caps.

Asking university students to leave campus is hard. Switching from on-prem to online teaching overnight is harder yet. But teaching across the connectivity divide, where students don't have access at home and the state just shuttered all the businesses providing "free" Wifi, is impossible.

I have been wronged many times by Comcast over the last 24 years; at least from my POV, this offer—provided they abide by it—erases most if not all my ill-will towards them.

Well done

</comment></comment></comment><comment><USER45> Here in the US the vendors are not doing this.

<comment><USER46> AT&T has dropped all data caps, waived any late payment fees, will not terminate service and has opened their WiFi hotspots to everyone.

Charter is waiving late fees, not terminating service, offering free service to households with students which don't already have service and opening their WiFi hotspots to everyone.

Verizon is waiving late fees and will not terminate service.

Cox is waiving late fees, not terminating service, opening WiFi hotspots to all and upgrading speeds on connections in their programs for low income customers to 50Mbs.

Comcast is eliminating data caps, waiving late fees, not terminating service, opening WiFi hotspots to all and offering 2 months of free service to those eligible for but not enrolled in their $9.95 per month program for low-income families. They are also increasing data rates for their low-income program connections.

Many other providers have also pledged to not terminate service.

</comment></comment><comment><USER47> I'll play the devil's advocate. Bandwidth is a finite resource, and it could be in critically short supply. In those circumstances, I wouldn't expect everyone to get _more_ bandwidth, I'd expect it to be rationed.

<comment><USER48> The problem is how do you establish effective rationing with no preparation? It's nigh impossible.

Even with preparation, It would be a very difficult and impossibly contentious process.

<comment><USER47> For the downvoters, I'm just pointing out that removing all caps and limits doesn't automatically create abundance.

As far as establishing effective policy: ISPs have a lot of practice rationing bandwidth, I'm sure there's a way that's fair enough. Putting a price on it is a good start.

<comment><USER49> _For the downvoters, I 'm just pointing out that removing all caps and limits doesn't automatically create abundance._

True, and if they can provide reliable service without the data caps, then it makes the public (and in a perfect world, government regulators) question why they need the data caps at all -- if their network runs fine for months without any data caps, then why do they need those caps at all?</comment></comment></comment></comment>


Ask HN: What is your favourite technical interview question? - <AUTHOR>

I ask this question after reading this post http://news.ycombinator.com/item?id=1840774 [My Favorite Engineering Interview Question(skife.org)]
I didn't find any similar question in HN after a quick search in google, so please give your favourite interview question. <comment><USER2> I "stole" this question from a friend, who may not have invented it either but cultural/language barriers aside [1] I'll often ask something like:

* Larry Wall wrote "We will encourage you to develop the three great virtues of a programmer: laziness, impatience, and hubris." Pick one of these three "virtues" and tell me about a time you exhibited it.

[1] - Some less-than-perfectly-fluent English speakers are unfairly thrown by this question, it has a lot of relatively obscure vocabulary, and then layers irony on top. BTW, even among native English speakers the single most common response is "what is hubris"?

Also, a standard although not necessarily favorite general interview question I use (technical or not) is something like:

* Suppose we brought you on board at Firm X and found that you were doing an excellent job. What kinds of things could we do to reward you?

followed by:

* No job lasts forever. What sorts of things do you think would make you want to leave Firm X eventually?

<comment><AUTHOR> For the hubris definition, here <http://www.thefreedictionary.com/hubris> :)

Very interesting questions the last two, I am wondering what are the answers that you get and how do you evaluate them.

<comment><USER2> For the record, I know what "hubris" means, it's the candidates that don't. This may say something sad about the level of liberal arts education among developers.

Now that I think about it, this also may say something about the candidates ability to think on their feet and/or the degree to which their curiosity exceeds their reluctance to appear ignorant, since the way the question is structured it is fairly obvious you don't need know what hubris means to answer the question. You can just pick another "virtue". I'm pretty sure that's what I'd do in that scenario, but maybe I'm less candid than others in interviews.

A couple of interesting things about that first question:

* My friend who introduced me to this question said he once had a candidate pick "impatience" and then proceeded to tell the story of how and why he threw a chair through a glass window during a meeting. That guy did not get the job. There probably would have been other red flags with that candidate, but it is interesting to note how few questions would likely lead to the candidate volunteering that anecdote. Throwing a chair through a window in a business setting is very bad. Not having the sense to keep that story to yourself during a job interview is the icing on the cake.

* I'm surprised how often candidates will miss or choose to ignore the "pick _one_ " aspect of the question and proceed to give one example for each. This doesn't necessarily strike me a positive or negative (actually, maybe a little positive), but it happens probably 60% of the time.

* For the some candidates this can be a good "employer branding" question in the sense that it suggests the hiring manager is at least a little bit clueful and appreciative of "hacker" culture. (And vice versa. Most answers to this question are acceptable, but language/culture issues aside I'm always a little troubled by candidates that don't understand how one could possibly consider those virtues. More to the point I don't see how a good developer could not recognize the importance of a little bit of laziness, impatience or hubris to their craft.)

Regrading the latter two questions:

Clearly the intent of the questions are to get a sense of what motivates the potential employee (both positively and negatively).

I didn't know it when I first started using them, but it turns out these questions are most valuable after the candidate has been hired, as they provides significant insight into how to manage and motivate the employee. It's nearly essential to understand how to motivate an employee, and this turns out to be an easy way to get at that information. You could (and I have) ask this question after the candidate is hired, but in my experience people are candid about different things before and after being hired, sometimes it's useful to plan for that.

I've come to realize that there isn't really a bad answer to this question. (Well, maybe if the candidate couldn't come up with _any_ reward or cause for leaving, but that's never happened.)

Answers I frequently hear for the first question include "give me more money", "give me a promotion", "give me more time off" or "give me more freedom/flexibility/autonomy". There's nothing really negative about any of these answers, in fact I think each of them are pretty respectable, but more importantly they say something about what the candidate values.

At some cash-strapped places I've worked the "more money" answer was a little problematic, not for anything it says about the candidate as much as it suggests they won't be happy in the environment that we could provide them. At one firm I worked at "work/life balance" was non-existent, so "give me time off" suggested a poor culture fit.

For most environments I've worked in a good answer to the first question is something like "Once I've proven my competence I'd appreciate the opportunity to take on new or broader responsibilities, or to work on more interesting, more important or higher visibility projects." A good answer to the second question is something like "If I wasn't learning anything new". (An very valuable answer to the second question is something like "if my job became X" or "if I no longer had the opportunity to do Y".)

Generally I'd prefer to work with people that are motivated by doing new and interesting things well, people who are willing to take on new challenges. I guess this answer also demonstrates a bit of ambition, which is a good thing in moderation. It also may show a degree of political savvy, in the sense that "pay me more", while honest, is probably not something most potential employers want to hear (at least for many job categories; on Wall Street or for a sales job I guess that might be just the answer you're looking for, but those folks are usually compensated on a commission basis to begin with).

</comment></comment></comment><comment><USER3> For windows based web development: How would you create a web page that said "Hello World"?

It the answer is not _start notepad (I'll accept Notepad+), type in Hello World and save it as .htm or .html and put it on a webserver_ then for most of the places I have done interviewing for over the years they have missed the first requirement, get it done as easily and quickly as you can.

I fully appreciate that this varies massively by company, and I would want to know that the person can answer certain levels of technical questions but finding people who don't overcomplicate problems is hard, finding people who learnt recursion at university or as another commentator mentioned, can define polymorphism is actually not that hard.

<comment><USER4> Interesting. Even though I fully subscribe to the minimalist notion, I would have opened notepad and at least entered valid HTML:

      <!DOCTYPE html>
      <title>Hello page</title>

Hello world

Thanks for sharing that viewpoint. I never thought of it that way. (Perhaps freelancing has made me forget good habits.)

</comment></comment><comment><USER5> programming: "how would you take a word list and partition it into sets of anagrams?". touches on some very basic data structures and algorithms, shows that the candidate is at least familiar with arrays and hashes and knows when to use which. it's amazing how many people don't get it, even when given an hour to do it on an actual computer.

design (with the aid of a whiteboard): how would you go about writing a call- graph explorer? start with the high level pieces and go into more detail as asked.

algorithms: "there are data structures that make tradeoffs between various operations (give examples). can you design one that has O(1) insert and O(1) extract-minimum, with everything else running in as much time as you like?"

if you're asking about my favourite question i've been asked, it was "given a set of numbers from 0 to 2^n-1, with one missing, how would you find the missing number in one pass through the set and using at most n bits of extra storage" (took me embarrassingly many tries to get it, but it was a satisfying question to solve)

</comment><comment><USER6> A technical question, or a question in a tech job interview?

Non-technical: What are you passionate about? (This can tell you a lot about someone.)

Technical: How would you solve problem x? (Where x is an actual problem we have had to solve working on our application. Relevancy is important and cuts through the 99 common interview questions fluff).

</comment><comment><USER7> My favorite programming question to ask is: Write a function that given an integer n returns the number 1 to n in random order

I find this is a good mix of not too trivial but not overwhelming, I don't expect people to come up with the fastest possible algorithm on the spot. If they code the naive solution, that's OK if it makes sense and they can describe the performance characteristics. Then we'll talk over the algorithm and I lead them to something better and see how the conversation develops.

</comment><comment><USER8> If I interview Java programmers I always start with letting them write a method to reverse a String on the whiteboard. ~30% fail, for the others it's an easy warmup. I then ask how much memory this method consumes and if they could think of a better way to do it if this were C and not Java. This leads to the concept of immutability of Strings and you now can have a discussion on why the Java folks chose to make String immutable in the first place...

</comment><comment><USER9> Well... the answer to that question really depends upon what set of technologies the applicant is approaching the position with. One question, however, that seems to always tell a lot about the person being interviewed is: "You are asked to mentor a new developer, fresh out of school. What habits/best-practices, language-specific and general, have you learned through your years of working that you feel should be offered to the new hire?"

</comment><comment><USER10> Not my favorite, but interesting:

You are given two eggs and a hundred story building. You need to tell me, using as few drops as possible, what the highest floor you can drop an egg from and it won't break.

<comment><USER2> Is the answer you're looking for a binary search algorithm, or do you have some lateral thinking solution in mind?

<comment><USER11> Because you only have 2 eggs I don't think you can use a binary search algorithm (assuming I understood the question correctly). I think you'd have to start at floor 2, if that passed then jump to floor 4, etc. until you have an egg break (lets call this floor n). Then, you go to the floor below the one that broke the egg to see if an egg survives that drop. You'll then know, using only 2 eggs the highest floor you could drop from without breaking an egg (either n, n-1, or n-2).

<comment><USER2> Spot on. I missed the _2_ part, which makes this question much more interesting. By the way, I think I do could it in one drop; drop one from floor 1. If it breaks the answer is 0, else 1 because I don't think many eggs could survive a two story drop.

</comment></comment></comment></comment><comment><USER12> I understand they are trying to get an idea that i have a very basic knowledge of programming, but, this has been a pretty good gauge on the quality of a company.

"Define polymorphism."

<comment><USER13> Maybe it's just me, and maybe I'm wrong or over-thinking it, but this question bugs me. I think this is a trick question, because there is no single right answer unless the question is prefaced with "in [language X], define polymorphism." I've lost track of the number of times I've been interviewed and had that awful question tossed at me.

Without fail, every single interviewer in my experience was looking for an answer strictly in terms of whatever language(s) they're using at the company, or whatever language the interviewer is most familiar with. If you stray outside of what they know and what they're looking for, they have no idea what you're talking about.

Polymorphism in Java is slightly different than for Ruby than for C than for Haskell than for yadda, yadda. No matter what, it's always going to be somewhat arbitrary and tied to some kind of language dependent implementation or feature. If your language doesn't even have classes, the answer is different, if your language doesn't have functions, it's different, etc, etc.

I suppose the closest thing to a right answer would be to define it in pure mathematical terms using Turing machine notation, so as to make it universal. However I have no idea if such an answer even exists. If anyone has seen such a thing, please do share it.

A better version I would ask would be: define polymorphism using x86 AT&T assembly. or: define what polymorphism _represents_

</comment></comment><comment><AUTHOR> <http://news.ycombinator.com/item?id=1840774>

</comment><comment><USER14> What browser would you take with you on an isolated island?

<comment><USER15> One that doesn't auto-upgrade itself (in case they send a broken upgrade, then I'll have no browser.)

</comment></comment><comment><USER11> When can you start?</comment>


The Apple Maps Non-Controversy - <AUTHOR> http://one37.net/26/9/2012/the-apple-maps-non-controversy <comment><USER2> "Experimentally developing Apple"

This requires the first release is complete and usable. Unfortunately in Apple Maps' case, in most cases the app gives simply incorrect results, which is totally not acceptable.</comment>


Show HN: I Need [Insert Here] and I'll Pay [Dollar Amount] - <AUTHOR> https://www.sparesquare.com

<comment><USER2> The examples are pretty insulting to people who work professionally: "I need a logo, and I'll pay $15." "I need a website, and I'll pay $250". Cool, you're getting a logo designed by a robot and an off-the-shelf Wordpress theme.

Maybe that's not the target market?

<comment><AUTHOR> Good point on the target market...I think I'm looking for the people that either want the convenience and ease (and perhaps are even willing to pay more for that), or for those that are looking for your pretty basic stuff. I feel like, if you are a ....say, dog walker, a $15 logo will suffice. Same with the website, nothing is necessarily wrong with a template, per se, so long as it does the basics. In the end, it's about empowering people with their budget. If a user doesn't want a WP theme, perhaps they can say "I want a custom website (no WP theme) with 10 pages for $1,500.

</comment></comment><comment><USER3> Where are you sourcing your contractors from? From the examples, I'm wondering if you're acting as a middleman between elance/getafreelancer and the end buyer.

What happens when a customer isn't satisfied with the deliverable?

<comment><AUTHOR> We are essentially a middle man, and I don't want to try to hide that. The value we are providing is removing the headache from selecting the right contractor. So, for PROJECT X, you may be able to look really hard on Odesk and get it done for $200. Maybe you pay $350 or $300 with us...but all you had to do was submit it and wait for the results. No selecting contractors, filtering. AND, I think it's important that we assume that "not satisfied" risk. It's part of why people may pay a premium.</comment></comment>


Geolocation: An App For "Proud Masturbators And Public Sex Act Aficionados"  - <AUTHOR> http://www.techcrunch.com/2009/12/15/fapmapper-masturbation-app/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Techcrunch+%28TechCrunch%29&utm_content=Google+Reader <comment><USER2> This begs for a mashup with the sex-offender locator.

</comment><comment><USER3> This sounds funny, and well, let's face it, the idea of it is pretty funny, but then I think of the stories female friends used to tell me back in college of creepy old guys that would drive by real slow, fapping away, while they were walking to class, work, home, etc.</comment>


Apple Stock Reacts After Tim Cook Email Praises China Sales - <AUTHOR> http://www.nytimes.com/2015/08/25/technology/tim-cook-of-apple-seeks-to-quell-china-fears-in-email-to-jim-cramer.html?smid=fb-nytimes&smtyp=cur

<comment><AUTHOR> I am curious how this is legal - is giving this information directly to a stock trader not illegal inside information? I'm assuming Cook has done his homework, but as NYTimes seems to wrap up, it seems borderline...</comment>


PostgreSQL Exercises adds DML exercises - <AUTHOR> https://pgexercises.com/questions/updates/ <comment><AUTHOR> Author here: hope people find this useful. I've been very quiet on the site lately due to a serious of (mostly good) life upheavals. This update lays the technical groundwork for a bunch of future exercises, so I hope to have a little bit more steady progress in future.</comment>


Opposition to and problems with neckties - <AUTHOR> http://en.wikipedia.org/wiki/Necktie#Opposition_to_and_problems_with_neckties

<comment><USER2> I wear neckties whenever the mood strikes me, and I'm a Java developer. I was well into clothing before I became a programmer. I like neckties for aesthetic reasons, and the same goes for suits and sport jackets. Yes, I've been harassed for this, but I just ignore the snide remarks. If you're a developer who has always been into elegance and grooming, then check out these blogs: <http://englishcut.com/> and <http://asuitablewardrobe.dynend.com/>.

<comment><USER3> English cut is fantastic, I'd love a suit from Thomas. The London Lounge is also good for information and discussions: <http://thelondonlounge.net/>

</comment></comment><comment><USER4> I wonder if Bill Cattey (my first boss at MIT) still has his debugging tie. The idea was that software bugs hide when programmers are near, but you use the tie to fool them into thinking someone important is using the software. Then they come out.

Here's bill when he's not debugging: [http://ourdoings.com/brlewis/photo.html?th=9f/6t/g5hn.jpg...](http://ourdoings.com/brlewis/photo.html?th=9f/6t/g5hn.jpg&d=2008-11-20#p)

</comment><comment><USER5> Neckties have always struck me as anachronistic, even sexist. What item of women's clothing has been around for 100 years and is still regularly worn without modification? Especially one that serves no functional purpose? Why are men still expected to wear fashion designed literally centuries ago?

I feel the same applies to suits, but people who (unlike me) actually wear suits assure me the designs change frequently in ways that are apparently non- obvious. All I know is those guys on 50s newsreels appear to be wearing the same thing the guys downtown are wearing today, and that's not true of basically any other popular item of clothing I can think of (hats? maybe?).

<comment><USER6> >Neckties have always struck me as anachronistic, even sexist. What item of women's clothing has been around for 100 years and is still regularly worn without modification? Especially one that serves no functional purpose?

High heels strike me as much worse than ties.

<comment><USER7> If a necktie did for my head (or pects) what heels do for the calves, I'd occasionally wear one.

</comment></comment></comment><comment><USER8> I've never worn a tie to work, nor worked anywhere with any sort of dress code. Living in northern california, the whole concept seems a bit foreign to me. Bankers and doctors don't even wear ties. If you're wearing a suit and tie you're probably a used car salesman or 2nd rate real estate broker.

However, I've worn suits and ties to things like new year's eve parties and art gallery openings and I felt like it helped me pick up women, if only because I looked different than the hordes of shaggy guys with their ill- fitting hipster gear. Note to dudes: if you weigh more than 150 lbs you don't look good in a tight t-shirt and skinny pants.

<comment><USER9> Note to dudes: If you weigh less than 150 lbs and are not short, you probably have no idea what your pant waist size is. Most of you think it's 32 inches. That's wrong, and your pants look baggy.

</comment></comment><comment><USER10> I have needed to wear neckties and suits with varying regularity across various jobs that I have had (I've been a web developer of some kind for most of my professional career).

What gets me the most about suits and neckties is that even in countries such as mine, where the weather gets very warm for a large portion of the year, many people are still expected to wear neckties and suits year round. It reminds me of a saying that my mother (who grew up in the Philipines) is quite fond of, that I gather is paraphrased from an old song: "Only mad dogs and Englishmen go out in the midday sun". What she meant to convey when she used this saying was to comment on the propensity of western cultures to continue the use of their own cultural norms, behaviours and clothing styles even when the environment in the places they colonised and began living in made no sense for them to do so.

I also see footage of "salary men" in Japan walking to work in their suits and ties for example, and I think it's kind of sad that most everyone seems to have conformed to the western suit and tie style regardless of whether it makes sense to do so for their country's climate or cultural heritage.

</comment><comment><USER11> For those of you (us?) that wear ties, what knot do you use?

<comment><USER2> For suits, I wear shirts with a variety of spread collars to match the formality of the suit. (Yes, suits vary in formality depending on colour, pattern, weave, and fineness of the fabric.) And with those shirts, I like the Windsor and the half-Windsor knots.

For sport jackets and button-down collared shirts, I tie the less formal four- in-hand. I have used the half-Windsor with Oxford-cloth button-downs (OCBDs) too.

I have also used the Pratt knott for OCBDs if the tie is too long for me. (I'm only 5'5" tall.)

</comment></comment><comment><USER12> Neckties always struck me as phallic symbols. A long article of clothing worn only by men that starts at the base of the head and points at the crotch.

<comment><USER9> Hence the tiebar, which intend purpose is to allow you to pop out your tie. The further, the more phallic (and dandy).

</comment></comment><comment><AUTHOR> It's hard to see neckties as anything more than a way to discourage independent thought and creativity.

<comment><USER2> I don't see that at all. I don't see how a knotted piece of silk that completes a certain sartorial ensemble; and that comes in a variety of colours, patterns, and textures; discourages independent thought and creativity... especially creativity. Maybe you're associating it with stuffy "suits"...? It's like saying, "all Asians are good at math," "all white men can't dance," and "all Italians are in the Mafia."

<comment><AUTHOR> A necktie serves no practical purpose. And forcing people to wear one who couldn't care less about fashion is simply a method of encouraging conformity (e.g., to get employees to do as they are told without question).

<comment><USER2> Actually, it does serve a practical purpose: to bring attention to one's face. Unfortunately, you don't see/get that. And that's OK because not everyone gets aesthetics, design, colour harmony, lines, etc. It's just like not everyone is cut out for programming, or not everyone is naturally good at dancing.

Also, there's a difference between fashion and style. Fashion is what's available; style is what you choose. The current fashion is t-shirt, jeans, and sneakers. I'm not fashionable--I don't wear that ensemble. Starting very young, I cultivated a different taste.

"...simply a method of encouraging conformity and respect for authority." Hmmm... Man, you must really hate ties... so much that you can't see from other perspectives. This kind of thinking reminds me of hatred towards other races, people of a different sexual orientation, etc.

I'm all for freedom. "Freedom" is such a powerful word. Hey, you can/may wear whatever you want. I'm going to go to work in suits, sport jackets, pressed trousers, etc. I love the freedom of choice, and I hope others feel the same way. Here's to freedom!

<comment><USER13> I wear sport coats with jeans, so eguanlao would probably fight me, but at least I know the difference between a sport coat and a suit coat, so we'd be boxing instead of using katanas. p.s. styleforum represent.</comment></comment></comment></comment></comment>


Animated GIFs Illustrating the Art of Japanese Wood Joinery - <AUTHOR> http://www.spoon-tamago.com/2016/10/04/animated-gifs-illustrating-the-art-of-japanese-wood-joinery/ <comment><USER2> One thing I've always noticed about Japanese Wood Joinery is that the results are very pretty (the beams look like they grew together), but not very strong (at least not relative to the strength of the original board - a strength that _can_ be achieved with some glue).

For example look at some of the examples where the original board is cut down to less than 1/6 of its original size. Or where the design creates a large stress concentration point (in certain types of loading).

Is it mainly used in places where they can afford to overbuild it with very large pieces of wood?

<comment><USER3> What I always heard was: These techniques became a thing in japan because they don't have many forests compared to Europe, so they had to build structures that could be torn down and re-assembled. Especially temples, as monks would get prosecuted in one region, then have to move to another. Additionally, they don't many good minerals to use for nails and such.

I don't know if that is true though.

<comment><USER4> > as monks would get prosecuted in one region, then have to move to another

I guess lawyers have always been a problem.

</comment></comment></comment><comment><USER5> This is tailor-made for Reddit's /r/oddlysatisfying.

I've never really had any desire or reason to have anything 3D-printed, but I would absolutely print a collection of these to have on my desk as conversation pieces and fidget-toys. The "lock" pieces could be printed a bit longer than the original designs call for to facilitate removal.

<comment><USER6> Search for "burr puzzles"; they are mostly made of wood and fit together similarly but have many solution combinations.

</comment></comment><comment><USER7> Watching those GIFs actually has something soothing/relaxing about it. It is actually quite a beautiful technique.

For those who've missed it, his twitter account (which has more gifs): [https://twitter.com/thejoinery_jp](https://twitter.com/thejoinery_jp)

</comment><comment><USER8> wouldn't these be great for multi-part 3d prints?

<comment><USER9> TFA;

Wood joinery is a dying art but the man behind these animations has hope. "3D printing and woodworking machinery has enabled us to create complicated forms fairly easily" he says, indicating that wood joinery techniques have plenty of applications for digital processing and manufacturing as well.

</comment></comment><comment><USER10> Does he offer the CAD files for download?

</comment><comment><USER11> Is there a place that has the animations in GIF format where they can be downloaded?

</comment><comment><USER12> if you could teach a toddler to put one those together imagine how smart it could be in later life (if that's even how smarts work)

<comment><USER2> That's pretty much the opposite of smarts. That's rote based learning, (which is very important in certain fields), but does not increase smarts (train smarts really, since it can't be increased, only fully employed).

Now if instead of teaching your toddler how to put them together you let him figure it out for himself, now you are getting somewhere.

</comment></comment><comment><USER13> hey try this app. [https://itunes.apple.com/us/app/wood- joints/id837964581?mt=8](https://itunes.apple.com/us/app/wood- joints/id837964581?mt=8)

<comment><USER14> Did you made this app? Does it have at least one preview video? The static image look interesting, but not as interesting as a video can be for this type of demonstrations.</comment></comment>


How to delete cookies, cache and history in all major browsers - <AUTHOR> http://catonmat.net/blog/clear-privacy-ie-firefox-opera-chrome-safari

<comment><USER2> This also doesn't get rid of Flash Cookies / LSO's. The wiping of LSO's badly needs to be part of standard browser functionality. When I click "Clear All History & Cookies" it should actually clear ALL history and cookies... not all local cookies while leaving all the flash stuff tracking me.

<comment><AUTHOR> Oh snap, I totally forgot about these. Writing a script to clear those and updating the blog post. Thanks!

</comment></comment><comment><USER3> Good post but two things I would change.

Firstly I would use sdelete from Microsoft (formally Winternals). It is a free command line secure delete utility. Just replace

del /q /s /f in the Firefox example with sdelete -p 2 -s and it will securly delete the files with 2 passes (although 1 should be fine for everyone to be honest).

Secondly there is no need to compile the OPs regdelete app as you can use the built in reg.exe to do this

Just do

reg delete "HKCU\Software\Microsoft\Internet Explorer\TypedURLs" /f

And the same job is done :)

<comment><AUTHOR> I couldn't get that reg working for some reason. But awesome tip on sdelete!

</comment></comment><comment><USER4> Depending on how thorough you want to be, don't forget evercookies

[http://www.schneier.com/blog/archives/2010/09/evercookies.ht...](http://www.schneier.com/blog/archives/2010/09/evercookies.html)

[http://arstechnica.com/security/news/2010/10/it-is- possible-...](http://arstechnica.com/security/news/2010/10/it-is-possible-to- kill-the-evercookie.ars)

</comment><comment><USER5> I feel like it's important to note that this is actually obliterating the entire user profile. Bookmarks, saved passwords, and extensions included. Unless I'm mistaken, which is certainly possible.

</comment><comment><USER6> Also, for Windows, CCleaner.

<http://www.filehippo.com/download_ccleaner>

</comment><comment><USER7> Doesn't this delete bookmarks, too? I have a file called "bookmarks" in the directory that is deleted by the script.

<comment><USER8> Which browser are you using?

<comment><USER7> Sorry, Chrome.</comment></comment></comment>


Ask HN: What AIM alternative do you/will you use? - <AUTHOR> What do you currently use or plan to use instead of AIM? <comment><USER2> For now, Matrix[0] with the Riot IM app[1]. Also the Wire app[2] for people who wish to use something simpler. I also want to explore Tox[3] sometime soon. All of these support encrypted communication.

Running your own Matrix server isn't so hard. Federated identities allow you to message other users across other Matrix servers. Riot IM is probably the most widespread GUI for Matrix. Works well on both my Android and from Google Chrome. Encrypted voice calls included. Bridges exist to connect it to external services, like IRC. Purism also is working on using Matrix as the basis for secure communication in their upcoming Librem 5 phone.

Wire has no bridges and is more self-contained. It works primarily as a mobile app & has the ability to use your phone's contacts to discover other people who have also set it up. Like Matrix, encrypted voice calls are a feature. Wire is currently centralized, but decentralization is on their road map. The software is noteworthy because it is written in both Rust and Haskell.

Tox I just discovered today - it is used by at least one developer of MenuetOS. It's a P2P chat app that affords privacy, confidentiality, and anonymity.

Cool thread. I hope some interesting answers come up here.

[0] [https://matrix.org/](https://matrix.org/) [1] [https://riot.im/](https://riot.im/) [2] [https://wire.com/en/](https://wire.com/en/) [3] [https://tox.chat/](https://tox.chat/)

</comment><comment><USER3> How many people still use AIM even semi regularly? I know there was the article on oil people or something using it. I know a few internet marketers still use it, but they all also have Skype or telegram so it won't change anything.

I don't think anything will really change much with AIM going away.

</comment><comment><USER4> Email. Same as always.

Messages don't need to be "instant", except in the most extreme case. I'm not going to install software on my computer that allows anybody in the world to interrupt me any time they feel like it. Why would you do that to yourself?

It's the same reason I have notifications turned off completely on my phone. If you send me a message, I'll read it on my time and get back to you when it's convenient.

The only exceptions are house-on-fire, kids-in-the-hospital emergencies, for which the people who would need to get ahold of me know how to do so. And Drinkin' Nights where it's handy to be able to arrange meeting points via text. That's the short span when you'll find SMS notifications on on my phone. But if you text me at that time for anything else, you'll get a response the next day.

</comment><comment><USER5> Slack, iMessage, texts or email. Never actually used AIM.

</comment><comment><USER6> Jabber</comment>


The Science of Crawl, Part 2: Content Freshness - <AUTHOR> http://blog.urx.com/urx-blog/2014/10/23/the-science-of-crawl-part-2-content-freshness

<comment><USER2> Nice post.

I only skimmed the post, but I believe you are assuming the utility of all pages to be equal. By "utility" I mean the value of information contained on the page relative to what your business is trying to achieve (not the organization's utility as you define it in the blog post). However, in practice, aren't information certain pages of much greater value to the business than others? For example, finding a new front page article on the NYT website could be more valuable than detecting 50 new Hacker News submissions. However, the NYT page would exhibit less divergence than the HN page.</comment>


Ask HN: any alternative to MS word as a word processor? - <AUTHOR>

I just don't like it and I don't think I'm the only one. <comment><USER2> <http://www.openoffice.org/> \- OpenOffice, pretty much the gold-standard in open-source office suites. Very similar to LibreOffice, since they are both descended from the same original Star Office code.

</comment><comment><USER3> For the Mac, the free Bean word processor (<http://www.bean-osx.com/>) works for me!

</comment><comment><USER4> <http://www.libreoffice.org/> \- full, open source office suite

<comment><USER5> Seconded.</comment></comment>


Angry iPhone Owners Twitition for Lower 3G S Upgrade Prices - <AUTHOR> http://mashable.com/2009/06/09/iphone-twitter-petitions/ <comment><USER2> A) Online petitions are generally worthless

B) Twitter and twit-[foo] words are becoming beyond fucking annoying

C) This is no different than when Palm Treo's were hot and people who bought Treo 600's were upset that they had to pay to get a Treo 650 if they weren't eligible for an upgrade. In the US, most mobile phones are subsidized and there is a pretty basic understanding that you either pay a huge upfront fee, or signup for a two-year (or sometimes split the different with a 1-year) contract to lower the price.

</comment><comment><USER3> It'd be nice to sign another two year contract for the subsidized price. I am interested to see the new componets and actual processor speed of the new device. I also want Nike+ so I may be willing to put down the additional money but I definitley don't want too.</comment>


There's a mathematician in your compiler - <AUTHOR> https://humanreadablemag.com/issues/2/articles/theres-a-mathematician-in-your-compiler <comment><USER2> > If we can start from an assumption and perform a series of logical > deductions and reach True, then we know our original assumption is True, > that it is provable

is this a difference between mathematical and natural language?

my understanding is if you deduce something true from an assumption it means nothing.

you need to deduce something false and thus the negation of your assumption is true.

<comment><USER3> > my understanding is if you deduce something true from an assumption it means > nothing.

Your understanding is not complete.

If you start from a set of assumptions and perform a series of logical deductions to reach a conclusion, you have proven that given the assumptions are true, the conclusion is true. You have a proof of correctness under the assumptions.

If you can go on to demonstrate your conclusion is false (say, with a single counterexample) then it will prove that at least one of your original assumptions is false. You now have some provably reliable knowledge .

<comment><USER4> >> my understanding is if you deduce _something true_ from an assumption it means nothing.

> Your understanding is not complete.

> If you start from a set of assumptions and perform a series of logical > deductions to reach a conclusion, you have proven that given the assumptions > are true, the conclusion is true. You have a proof of correctness under the > assumptions.

04091948 is completely correct here.

If you assume P and prove Q, then you've proven that P implies Q.

If you assume P and prove True, then you've proven that P implies True. This is the same thing as proving nothing, since everything implies True.

</comment></comment></comment><comment><USER5> Super impressed that you can develop type inequality in Scala. Haskell, the logical darling, can't do it in the general case.

<comment><USER6> Can you ELI5 type inequality?

<comment><USER5> Haskell lets you express that types unify: `a ~ b` says that `a` unifies with `b`, and similarly `Int ~ b` or `Bool ~ Char` (though the last one is clearly false).

But there's no equivalent for non-unification - `a /~ b`. You can _sort of_ hack it by asking the compiler "do these types unify _right now_ ", and then negating the response you get, but that doesn't work for types which _eventually_ unify, but just fail to at the moment.

A good example is with non-injective type functions. To show `Maybe a ~ Maybe b`, you can exploit the fact that `Maybe` is an injective type constructor to simplify the problem to deciding if `a ~ b`. But if you have an ad-hoc type function which is _not_ injective, say `Foo`, then it's possible that `Foo a ~ Foo b` even if `a /~ b`. It's worse if you have two different type functions - `Foo a ~ Bar b`. Those types fail to unify immediately because `Foo` is definitely different to `Bar` - but depending on the final values of `a` and `b`, the types they result in may unify.

<comment><USER7> You can achieve a certain amount of type disequality in Haskell. It isn't necessarily easy or sufficient for all purposes. There is a type family that returns a type level Bool for equality here. [https://hackage.haskell.org/package/base-22.214.171.124/docs/Data-...](https://hackage.haskell.org/package/base-18.104.22.168/docs/Data- Type-Equality.html)

There are some older techniques here [http://okmij.org/ftp/Haskell/typeEQ.html](http://okmij.org/ftp/Haskell/typeEQ.html)

</comment></comment></comment></comment><comment><USER8> this is a very interesting read.</comment>


The Toxins That Threaten Our Brains (2014) - <AUTHOR> http://www.theatlantic.com/health/archive/2014/03/the-toxins-that-threaten-our-brains/284466/?single_page=true <comment><USER2> Submission of same article 490 days ago, with more than 100 comments in discussion thread:

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

Each time I reread this article from _The Atlantic_ (I have read it before, and it has been submitted to Hacker News on other occasions), I am astounded that the author seems never to have heard about actual data on IQ score trends, which are upward for countries all over the world. The phenomenon, which surprised psychologists when it was discovered, is called the Flynn Effect by most psychologists these days, because James R. Flynn (NOT a psychologist, which is why he was open to discovering the phenomenon) has done the most to document and report on the worldwide trend of rising IQ scores throughout the last century.[1] Anyway, the article kindly submitted here shows altogether too much concern about speculative harms by an author who ought to know that there are better statistics on these issues than those he cites.[2]

[1] James R. Flynn, "Why Our IQ Levels Are Higher Than Our Grandparents'"

[https://www.ted.com/talks/james_flynn_why_our_iq_levels_are_...](https://www.ted.com/talks/james_flynn_why_our_iq_levels_are_higher_than_our_grandparents)

The Psychometrics Centre at the University of Cambridge "Beyond the Flynn Effect"

[http://www.psychometrics.cam.ac.uk/about- us/directory/beyond...](http://www.psychometrics.cam.ac.uk/about- us/directory/beyond-the-flynn-effect)

[2] David Gorski, "The Food Babe's war on 'chemicals' heats up again"

[https://www.sciencebasedmedicine.org/the-food-babes-war- on-c...](https://www.sciencebasedmedicine.org/the-food-babes-war-on-chemicals- heats-up-again/)

<comment><USER3> I don't know why you would think that an upward trend in IQ scores necessarily contradicts a claim that we are adding neurotoxins to our environment. We've been doing that for many decades; it's entirely possible that we're doing less of it now, and yet the amount we're still adding is still having significant effects.

As for why a downward trend in IQ wasn't noted in the first half of the 20th century, when we were ramping up our production of neurotoxins, that can easily be put down to improvements in nutrition.

It's not inconsistent to note that, even though things are getting better, they're still not as good as they could be.</comment></comment>


Two New Samsung Galaxy SII Ads Released - <AUTHOR> http://www.reastech.org/new-samsung-galaxy-sii-ads-released/ <comment><USER2> Maybe you should check your title....</comment>


Harvards tips to founders on how to delegate more effectively. - <AUTHOR> http://foundread.com/2007/09/18/harvards-tips-to-founders-on-how-to-delegate-more-effectively/ <comment><USER2> Dear Found+Read:

Cool URIs don't change. <http://www.w3.org/Provider/Style/URI></comment>


Ask HN: Why doesn't Y Combinator have a SSL certificate? - <AUTHOR> With google deciding to go all out on websites without the SSL certificate, why is YC still behind?<p>I am sort of amused by Neil Patel's claim of no importance of a SSL certificate. Help? <comment><USER2> Both [https://www.ycombinator.com/](https://www.ycombinator.com/) and [https://news.ycombinator.com/](https://news.ycombinator.com/) have valid SSL certs. What domain are you referring to?

EDIT: Hmmm, [https://ycombinator.com/](https://ycombinator.com/) redirects to [http://www.ycombinator.com/](http://www.ycombinator.com/), which is lame.

<comment><AUTHOR> I was thinking the same. Thanks :)</comment></comment>


Lockitron Admits Failure - <AUTHOR> http://ipvm.com/updates/2839 <comment><USER2> One of the most shocking aspects of this is that Lockitron still has not shipped all the units pre-purchased in the original campaign. They tweeted "We shipped up to backer #11,000, close to the original campaign."

There are people who paid money for one product, but just found out they will receive another one... maybe?</comment>


Introducing a new Java framework for web development: Micro - <AUTHOR>

Micro, for short: (μ) or Mu, is a modular Model View Controller framework (MVC Pull) for web development, and it was designed with simplicity in mind. Compared with other Java web frameworks, Micro doesn't force you to use the Java language for creating dynamic content, nor does it pigment your code with Java syntactic metadata or anything like that. With Micro you can start developing your web application right away even if the only content your site has is plain text or Markdown documents; you don't need Java for that. Micro uses Java under the hood, providing you the support that is specific to the web development: localization, template languages, scripting support for more advanced use, and a modular way to extend your dynamic content with controllers written in Java or using scripting, such as: Beanshell, server side Javascript(Rhino), JRuby and more. Micro is distributed under the Apache 2 license and it is available as a Github repository: https://github.com/florinpatrascu/micro
Documentation: http://micro-docs.simplegames.ca, a Micro web application using Markdown for formatting the content; work in progress and available as an open source project too.
While still in beta, we believe you will find Micro interesting to work with and you are more than welcome to try it out and send us your feedback.
Thank you! <comment><USER2> Very interesting. I've been playing around with Spark a little as of recently (Sinatra inspired minimalistic Java web framework). I think Mu may allow for some out-of-the-box functionality that Spark lacks.

At the end of the day, though, I'd be happy working in a Java framework wherein the experience didn't feel like I was forcing myself to write Java code. It's just such an uphill battle when the dev experience of (rails/node/django/webapp/web.py) is radically different from just about everything Java has to offer. The lack of a sane package manager, for one, is a major downer.

<comment><USER3> You may not _like_ it, and it has its warts, but I have trouble not calling Maven "sane".

<comment><USER2> Perhaps I'm judging it according to an unfair standard, and I certainly don't have the intention of getting into a language war. However, I personally view Maven (including but not limited to its config files) as quite _in_ sane.

When compared to, for instance, NPM or Ruby Gems, I can't honestly say I've found much to like about the Java ecosystem. Part of the problem, of course, is that unlike in the case of the aforementioned two, build & dependency management in Java-land is quite fragmented (ant, maven, gradle, etc.).

</comment></comment></comment><comment><USER4> Interesting. Will check it out.

How is this different from the recently released Play framework. And can you give us more details as to why it should be used over SpringMVC or frameworks like Play?

<comment><USER5> I really hope someone picks up Play 1.2.x and maintains it. The Play 2.x alleges to be bi-lingual, Java and Scala, but it's pretty much an Scala version of Play.

<comment><USER6> I've tried asking people about adding new features to the Play 1.2.x code, but the developers have firmly said that they would no longer add features to the 1.x line :(

<comment><USER5> Play is begging to be forked, specially as the developers' vision diverges from that of Play 1.2.x users. We have a big ERP app built on Play 1.2 and have no interest in moving to Scala and 2.0. Our version of Play is, for all intents and purposes, a fork.

</comment></comment></comment></comment><comment><USER7> This looks like an interesting project, I'll be checking it out for sure. I realise it's early days but I want to encourage you to take a look at the excellent docs that sinatra provides in <http://www.sinatrarb.com/intro>. One of the recurring problems with docs for java projects is that they spend a lot of time talking about how the framework works. The great thing about those sinatra docs is that they're focused on telling you how to do things. As a user of the framework this is great as generally I'm trying to build something and just want to know how to do it as quickly as possible. Having great docs means that more people are going to use your project so it's an area where your efforts will really pay off. It looks like a great project and I look forward to using it.

<comment><AUTHOR> thank you for feedback. The µ docs site is trying to satisfy the Designer and the Developer, two very important roles in my framework design strategy. You are very right about Sinatra and I will definitely add more examples. Counting on the community to improve the docs as soon as µ gets more traction, this is why the docs site is open source too :)

</comment></comment><comment><USER8> I come to think that the main issue with doing web with Java is the inability to do auto reload. There is somewhat way to do this in case of using remote debugging, but it works only on method level. And even when this works, most of the Java tooling actually sits in the way of this. For instance web servers/applications, frameworks and build systems.

However having the framework in Java and actual web app logic in some dynamic language works very smoothly - I've done something similar with JS (Rhino) where the server actually takes care of auto reload and module system. Not really finished but: <http://code.google.com/p/sodejs-java> (wow maybe I should move it to github finally).

<comment><AUTHOR> I truly understand your point, and this is why Micro is offering a flexible scripting support. You can quickly prototype your business logic without needing to restart the app, which BTW, it only takes a few seconds. Using Beanshell, for example, allows you to develop and test the business logic and then transfer the code to Java if need be.

However, I am currently working on integrating the JCL (<https://github.com/kamranzafar/JCL>) library, recently released under a dual license by its author; it used to be LGPL only. This way I hope I can offer the class loading support at runtime, like Play is doing it, for example.

</comment></comment><comment><USER9> This looks cool. Will give it a try soon. One comment I have is regarding the jars in the github repo, would you not benefit by using some kind of repository to pull down the jars when compiling (eg. sonar, maven central, clojars etc.) and remove all those deps from there and allow users to use their modified versions if needed. that will also reduce the size of your repo.

Also have you looked at dropwizard (<http://dropwizard.codahale.com/>) it's really simple to use. Would like to know your thoughts on that and also how your framework compares to theirs.

<comment><AUTHOR> dropwizard looks very cool.

I believe more and more that Micro is talking to a specific audience, where the non-Java users have an important role too in the development of the site; Designers, Content managers, etc. With Micro they can prototype quickly before even calling for dev support. I am glad that when I compare Micro with similar frameworks, I realize how small Micro is:) And I truly like it this way. Sure Micro is lacking the persistence support for now (many other features too, probably) and it will be hard to compare it with other frameworks from this perspective. However, Micro is modular and can be expanded easily! (I am searching for a light ORM that I could add as an optional extension; activejdbc, maybe?)

Honestly, I see all the other similar frameworks as options, not as competitors. Let the users compare and choose based on what they want to accomplish. Maybe they'll use ... I don't know ... Play, to randomly pick one, for building an awesome e-comm web site, but would they use it for developing a .. blog, or a fast REST service front-end layer let's say?! The Ruby world is full with good examples where devs/designers are swinging between the fat Rails and the slimmer Sinatra/etc., shouldn't we be glad we can start doing the same in Java?

;)

<comment><USER9> Thanks for your reply and your thoughts on the different frameworks.

Totally agree about giving better options to dev quickly in java too. There are so many times when I just end up using python to dev quickly and make a proof of concept web api and then when I have to interface with JVM systems, I end up writing thrift interfaces to keep my original python code around and to allow me to do quick changes to the api.

I tried dropwizard and it really makes it easy to write a webapi and is really fast. With that said, I will play with Micro very soon and let you know how it went.

</comment></comment></comment><comment><USER10> Awesome! PS : The favicon looks like the uTorrent icon. :P

<comment><AUTHOR> Thank you. I hope the uTorrent guys don't mind the resemblance of the two favicons. The Greek letter μ is universal. I'll change the colours if need be :)

Thank you for pointing it out.

</comment></comment><comment><USER11> looks good, I like the option to select different template engines. On the other hand, your i18n approach is not correct, since you are using only the language and not the country code: en_GB is different than en_US in lots of aspects, i.e. currencies. Internationalization is the first thing I tend to look at a framework and many fail on it.

<comment><AUTHOR> Lack of examples, sorry. Country and Language are both supported. You can create the following properties file: messages_en_GB.properties, and you have a language _and_ country based translation!

I will clarify this aspect in the docs, many thanks for catching that!

</comment></comment><comment><USER12> I have one question: How is security being handled? E.g. Setting basic auth for a REST service or form-based login on a webapp?

<comment><AUTHOR> I will add an example. My goal is to leave the framework as lean as possible and add functionality by using various extensions. I can see the security functionality added as a µ Extension enabling a set of filters and specific web pages; ala Devise. The Extensions allow you to create a completely independent "mini-site" and inject its functions into the main app. With extensions you can add your own filters, routes, controllers and specialized dynamic _content_ /web-UI. Please have a look at: [https://github.com/florinpatrascu/micro- extensions/tree/mast...](https://github.com/florinpatrascu/micro- extensions/tree/master/cache_admin), as an example implementation of the aspects mentioned above. I see something like Devise being built this way.

<comment><USER12> Thanks for clearing it out!</comment></comment></comment>


Apple's 2016 MacBook Pro (and the Winter of Our Discontent) - <AUTHOR> https://www.perpetual-beta.org/weblog/apples-2016-macbook-pro.html <comment><USER2> > Another thing, remember those frayed Apple power cables we "enjoyed" in the > past… no problem now, just replace the USB Type C cable, there's no need to > buy a whole new PSU.

Had Apple not chosen to hard-wire the PSU end of that power cable and instead made it pluggable into the PSU, you also would not have needed a whole new PSU due to a frayed cable.

</comment><comment><USER3> Companies go to Apple and spend the mac tax because of the superior support. There are generally mac stores in areas where there are a lot of tech companies clustered so if you have a problem generally you can walk to an Apple store to talk to a human. They get away with selling inferior configurations because macosx is still less resource hungry than windows10. That being said its smarter to standardize on chromeos for a startup because its cheap and easy to setup a team on cloud9 and all share the same instances, and save tons in hardware costs per employee.</comment>


Create Side Products, not Side Projects - <AUTHOR> http://artofshipping.com/post/24821203985/create-side-products-not-side-projects

<comment><USER2> Semantics on words here. No one ever said projects == non-money making things. At least I don't view it so black and white. If anything, I view the word "products" as limited as it is different from "services", etc...</comment>


HBO Is Targeting Game of Thrones Pirates: What Does This Mean for You? - <AUTHOR> http://thoughtforyourpenny.com/2015/04/22/hbo-is-targeting-game-of-thrones-pirates-what-does-this-mean-for-you/

<comment><USER2> We used to pirate GoT two seasons ago, then last season we paid for it "just for this season" since we wanted to watch it live. We never did wind up cancelling HBO even after GoT finished that season, we keep it for the movies, HBO Go (which is actually quite a good even with Netflix and Amazon Digital), and since then John Oliver has a show which we want to DVR.

I absolutely understand why people abroad are pirating and put that at the feet of HBO. Wire cutters now have an option with HBO Now if they wish, and those who don't wish to pay, fair enough, but HBO's product is actually surprisingly good.

Ideally HBO should have seen a large drop in piracy this season due to HBO Now, however unfortunately with this four episode leak people are so paranoid about spoilers that a lot of people feel "forced" to pirate it even if they legitimately pay for either HBO Go or HBO Now.

Keep in mind that a GoT season is 10 episodes. So a four episode leak is almost 1/2 of an entire season.

</comment><comment><USER3> I don't understand the film companies. I'd like to watch GoT season 5 and some of the other seasons too.

I want to watch them in English and I live in Germany. Do I have any options apart from a cable subscription for a bunch of other bullshit I don't want. No of course not.

I could wait until the DVDs cone out in a years time, bit the fuckers will more than likely split the season into two releases to make you buy two separate box sets for double the money.

I could watch online but that would be illegal and I don't want to go there. I just don't watch. I'd pay a couple of Euros to watch each episode in the format I want (DNLAed off my Synology) it appears that they don't want my cold hard cash. It has been like that for years and I'm slowly tuning off from media completely. I wonder how many others are like me- abstainers?

</comment><comment><USER4> Piracy is completely unethical.

He argues that somehow piracy caused innovation in the music industry, and thus the piracy of hollywood will somehow usher in a new era of innovation in streaming video. In some respects its true that Napster brought about innovation in digital music... BUT IT HASN"T STOPPED PIRACY!

There is a ton of more streaming options today, which is great for lawful netizens, we do have a lot of great options. But that doesn't excuse pirates from ethical obligations.

You don't have a right to someone's property just because you think you should.

Maybe I should just take refuge in your fancy-house just because I think it would be morally just because you have a nicer house than I do.

Thats essentailly the argument pirates make, and it doesn't hold water.

<comment><USER5> > I should just take refuge in your fancy-house

To further your analogy, it costs me approximately $0 to make an exact copy of fancy-house, it travels over the internet to you, and what you do with your copy doesn't affect me in the slightest.

I am very willing to give you a copy of my fancy-house under such a scheme, and you are completely welcome to do with it whatever you want.

<comment><USER4> You are living in this entitled fantasy world. How do you believe this doesn't effect film studios? Everyone who pirates a film is someone who could have been a paying customer. Instead they choose to break the law. An alternative option is to not watch the illegal films!

Either don't pirate, or pay for your media. People shouldn't steal.

Maybe they should be patient and wait until the films come into the public domain if they're too cheap to pay.

<comment><USER6> then maybe copyright should be limited to 5 yrs instead of life + 129 yrs.

</comment></comment></comment></comment><comment><USER7> Never spent a penny on anything byte related, from the time I was 12 years old.

The irony is now I want people to pay me to write software ?

Maybe I am just an unproductive scum on earth, mooching off other people's work. But I was homeless for a month this year so not like I have had much options.

I do not feel at least bit sorry about stealing.

<comment><USER8> > But I was homeless for a month this year so not like I have had much options

You have the choice not to consume any content or to consume free content. You are entitled.

Maybe that if people paid for things that are on the web, you wouldn't have so much problem getting paid for software work. Maybe that would've kept you from the street.

<comment><USER9> > You have the choice not to consume any content or to consume free content.

Over the years that I've watched this discussion, I've come to notice that people who advocate for paying for stuff seem (though it might just be my perception) to use expressions like "consume content" more often than those who don't.

It's rather uninspiring, and I suspect it's counter-productive. No one wants to "consume content". They want to watch a film, or listen to a song, or read a book, or just be entertained. I doubt anyone ever invited a date round "to consume beverages and content".

<comment><USER10> Are you producing content by watching a television show? No, that's absurd, you're consuming the content that others have produced. It's really not that far from consuming a beverage. People would say drink, or in this case, watch, but the truth is that those are just two verbs that describe the type of consumption you're doing.

Why would you say it's counter productive to label it consumption? The truth is, if you're sucking up entertainment without providing anything or incentivizing production, you're a net loss in the system.

I say this as someone who has pirated things -- pretending you're not a burden on the production system if you're just pirating things is delusional. The argument that people make towards pirating and paying for content which they liked is much more consistent. Rather than pay people off for marketing/hype and support bad content in the future, you can fund solely content that you think is worthwhile. But again, this is just changing the way in which you're consuming material.

<comment><USER11> I have to disagree.

If you consume something you are making it impossible for someone else to consume that same thing. You can consume a beverage (no one can drink it after you did) but you can't consume digital content. Here[1] it is explained by someone more knowledgable than me. (incidentally, the FSF also suggests to avoid the word 'piracy' to describe illegal file sharing)

Also, when saying pirating is a net loss to the system, maybe you can say it about piracy as a whole, but for the individual I would not be so sure. Suppose I wouldn't have bought the content anyway (that is, my alternatives would have been pirating it or not seeing it). How am I causing a loss in this conditions?

[1] [https://www.gnu.org/philosophy/words-to- avoid.html#Consume](https://www.gnu.org/philosophy/words-to- avoid.html#Consume)

<comment><USER12> Piracy doesn't cause any losses on the whole because it raises the brand image. I wouldn't know anything about Game of Thrones if not for piracy, and it increases my affection for HBO and media as a whole. if not for torrents, i would play outside, not buy GoT.</comment></comment></comment></comment></comment></comment>


The Ferengi Rules Of Acquisition - <AUTHOR> http://blogspot.fluidnewmedia.com/2010/05/ferengi-rules-of-aquisition/

<comment><USER2> Rather than going to someone's blog where they add nothing, go directly to Memory Alpha, of which this blog entry is pretty nearly a complete copy, adding nothing of interest.

<http://memory-alpha.org/wiki/Rules_of_Acquisition>

Hint: If you're going to rip off someone else's content, try adding something relevant to it. From the Hacker News guidelines:

        Please submit the original source. If a blog post
        reports on something they found on another site,
        submit the latter.

<http://ycombinator.com/newsguidelines.html></comment>


How the E-Book Will Change the Way We Read and Write - <AUTHOR> http://online.wsj.com/article/SB123980920727621353.html#

<comment><USER2> Ohh yes and in 2100 we will have flying cars to replace our current ones.

The book is not dead, it never was, nor was it brushed to a side. The book has a niche on information. On a website you are able to find good articles on many things, but what characterises these articles is that due to their space they lack the depth and width that a book is able to provide.

I don;t know what kindle is like, but if it is to compared to e-books that you are able to read online I much prefer a hard copy which I may take to the park or lay in bed with. Its flexibility is its attraction for me and perhaps its niche.

And finally _transform the solitary act of reading into something far more social_ I don't see how reading can ever be social unless you consider a bunch of guys sitting down and reading each on its own be a social activity, or of course unless someone is reading it aloud to the others.

Nice article though, but I did skip most of it :P</comment>


Semiconductor Consolidation's Aftermath - <AUTHOR> http://semiengineering.com/consolidations-aftermath/ <comment><USER2> Earlier article on semiconductor consolidation discusses rising costs & the difficulty of shrinking features are changing the dynamics of who buys IP, tools and chips

[http://semiengineering.com/the-impact-of- consolidation/](http://semiengineering.com/the-impact-of-consolidation/)

<comment><AUTHOR> It's interesting how the article you linked mentions cheap capital has enabled consolidation. I was always under the impression that cheap capital would spawn a plethora of startups and new differentiation. I guess this system has two stable states...

Also, now more than ever, startups can enter the fabless market since TSMC and other foundries are open to even small customers. I think we may just be seeing a slowdown on new entries because the engineering cost, not just tool or IP cost, is monstrous for new chips (i.e. innovative features, not just coupling IP cores). Now I want to go research what portions of IC designs require the most time now. My hunches: formal requirements definition and analog design.

</comment></comment><comment><USER3> Why are Dell and EMC considered part of the semiconductor industry?</comment>


Laws of Source Code and Software Development - <AUTHOR> http://www.juixe.com/techknow/index.php/2009/05/07/laws-of-source-code-and-software-development/

<comment><USER2> _Moore's Law states that technology doubles every 18 months, you should keep up._

This one makes me doubt the rest.

</comment><comment><USER3> "Code outlives it's intention".

oops</comment>


Office dogs - <AUTHOR> https://medium.com/@calvinspill/office-dogs-bf54227ebb3a <comment><USER2> We have one in our office. Great for the first day. Not so much after that.</comment>


PostgreSQL 9.3 beta: Federated databases and more - <AUTHOR> http://lwn.net/SubscriberLink/550418/0e518fa2972b21c5/ <comment><USER2> I am pretty excited to see this. I was just discussing with my partner a situation where we have a lot of data in separate DBs, and would like to keep it that way, but are unable to JOIN across the DBs. We also are considering moving a geocoder DB to another server but were concerned about the implications of that when it comes to accessing that data at the same time as other.

</comment><comment><USER3> Nit, geography lesson needed:

>>Of course, if you're in the southern hemisphere, it's not spring for you. _Nor if you live in the north Midwest of the US or central Canada._ Sorry about that; we just track the weather with PostgreSQL, we don't control it.

I live in the north Midwest (Wisconsin) and it is currently 72F (should hit 80 today) and sunny, with birds chirping outside- I'm pretty sure it is spring- which started Wednesday, March 20 regardless of it being cold as hell here at the time.

I think some native Californians have trouble with the idea it can be under -15F in February and over 100F in August in some places.

<comment><USER4> My birthday is in May, it snowed on it this year (Twin Cities Minnesota). A little over a week later after a 40F(4C) day, it was over 90F(32C) the next day.

We have weird weather but May is definitely spring, I think the coastal people have a weird perception of what the midwest/north is actually like. Once May starts we're basically a few weeks from god awful summer heat like anywhere else.

<comment><USER3> >>We have weird weather but May is definitely spring

Yeah, it snowed here for a moment on Saturday, but Tuesday it hit 89F. :)

>>Once May starts we're basically a few weeks from god awful summer heat like anywhere else.

With exceptions of course, like last year where the snow was gone by mid March and I went camping on St. Patties day- in shorts and a T-shirt... :) and was bit my mosquitoes :(

</comment></comment></comment><comment><USER5> Another feature I'm really looking forward to in 9.3 is native operators to query inside stored JSON documents. It works well in the dev build and will be a great addition to the NoSQL functionality in Postgres.

</comment><comment><USER6> Can anyone give a quick explanation of what FDW offers beyond the existing dblink functionality? I haven't used either, but it seems like it'd be helpful to many to spell out the difference.

<comment><USER7> There are a lot of conceptual differences, but I'll give a couple very important examples:

* With FDWs, you can push down predicates to the remote end. So, if you do: "SELECT * FROM myRemoteTable WHERE id = 2345", then it can just use the index on the remote side rather than pulling all the data to the local side and filtering.

* You can (as of 9.3) insert, update, and delete on the local side and it will pass through to the remote side.

</comment></comment><comment><USER8> ...and still no REPLACE, INSERT IGNORE or MERGE statements.

<comment><USER9> From what I've read, at least part of the problem is that the SQL standards are very murky and/or contradictory on the definiton of UPSERT-like functionality. And since Pg likes to be standards compliant they have focused on other areas of functionality.

</comment></comment><comment><USER10> We've been using the FDW functionality quite heavily and it works great. Joins and "transactions" between Postgres & MongoDB have been an amazing feature. I can't wait for 9.3 for write functionality, although I'm not looking forward to another database upgrade.

</comment><comment><USER11> Now, just give us a way to apply exclusion constraints across federated partitions.

<comment><USER7> Do you have an idea how that might be done?

<comment><USER11> Wow, sorry. I misspoke.

I meant to say constraint exclusion. Exclusion constraints would be pretty hard to implement in a distributed system.

That said - constraint exclusion wouldn't be all that rough, would it? The eventual goal I am thinking of is more effective query plans for UNION views over a bunch of federated partitions.

<comment><USER7> "Exclusion constraints would be pretty hard to implement in a distributed system."

It would be cool, though ;-)

"constraint exclusion wouldn't be all that rough, would it"

There are two interpretations of that:

* Passing a predicate down to the remote side so that the remote server can use it to exclude partitions. I believe this already works.

* Using CHECK constraints on the local side so that foreign tables can be excluded on the local side. This is a little trickier because it's hard to know that there are really no tuples on the remote side that violate the constraint. It's debatable how important that is, but it does need to be handled sanely somehow if the situation arises.

<comment><USER11> I intended the second one. I assumed it would be necessary for writable federated views.

</comment></comment></comment></comment></comment><comment><USER12> Sadly, no cassandra support yet..</comment>