skysight-inc/HackerNews huggingface dataset:
There are some interesting hurdles, and you've done a great job of thinking of a few of them! I can see three likely async solutions: SMS style message based (explicitly not real time), real-time message based, or real-time chat.

SMS Style Messaging: In my customer-facing experience with the concept I don't think SMS is suited to the challenge. Instead a full fledged chat application would need to be used. As far as queuing goes, related to this and my experience with Simple most of my interactions a) aren't real-time and that expectation is set when I create a message, and b) if they go on for a period of time they're handled by different CSRs. I've never had a poor experience because of that.

> With a voice call, the representative is on the line with you until your problem is resolved.

Additionally, related to this, there are a lot of times where that's not the case, or there's research to be done and if I were allowed I could do that research and come back with a response. That's discouraged/forbidden in call centers because there's the assumption you won't perform without pressure but that's almost certainly a staffing issue (or if there are too many basic/uninteresting research requests then it may be a systemic problem).

Real-Time Messaging: If we're looking for a more real-time message based solution (i.e. not chat), a single CSR could handle a few requests, but if they get a particularly detailed one there could be an expiration that hands it off to another rep, but that could get messy fast, even with a "So-and-So is busy at the moment, my name is..." (though with more elegant verbage).

Real-Time Chat: As I do everything in my power to avoid calling people, I will use chat if available as an alternative. Now, I can't say I've asked every person I've spoken to, but I know a couple of cases where I can confirm I was their sole interaction. It took a bit longer, but I was doing other stuff while I waited and I had the expectation when I started the interaction.

tl;dr Set expectations of delayed responses to messaging based support, don't bother with real-time messaging as it doesn't make logistic sense, and treat all real-time support the same (one active interaction).
> Like sequoia, I've noticed that controversial topics brings out the most incredible responses from both sides, and often with very little definitive evidence. To me, this is a sign of how deeply felt this topic is, and how much it is just under the surface of our thoughts, ready to explode when an appropriate trigger occurs.

I'm not sure if you were framing this as a net negative or positive, but I actually do appreciate when these controversial debates occur. I like to see all the contrasting world-views brought out into the open and into conflict with each other. I agree that civility is a problem, though.

Anyway, I mention this because I worry sometimes that HN's "flamewar detector" (or is it purely flagging?) seems to kill these kinds of threads, ones with a high comment-to-upvote ratio (though some notable recent threads have seemed to escape this). I often wonder if this mechanism is worth the trouble. I suppose if heated debate leads to polarization of opinion, that's an issue, but I don't know if that's necessarily the case.
> Please excuse me my theatricality. I'm not assaulting the author. I'm rather agravated that this post has this level of visibility and the potential damage it can do.

I thought it was a good post and provides a good overview of different methods along with a discussion why you should or shouldn't do some of these things.

I'm pretty certain that in the Linux kernel you can find each and every one of these methods used more than once and for a good reason.

Maybe in a normal user space app you have the luxury of being able to malloc/free everything and have nice high level containers, etc available but when writing C code, the assumption of normal user space apps is not necessarily true.

All of these methods - and when not to use them - is very useful knowledge.
Or you can just walk into a parked one and fly away with it, like that fellow in Africa ten years ago.
To answer your first question, like people said already, pull a log from your servers with the IP's. If it is a lot of different IP addresses then that is a good sign of a DDOS attack of some kind. If it is a lot of requests from the same IP address or only a few IP addresses it probably is a search engine or something like which is causing the problem. You can also look up the IP addresses by simply Googling them to see who owns the IP.

To fight off the attack immediately I would recommend switching your DNS over to CloudFlare's Pro or Business plan (that depends a lot though on your site's current configuration, the size of your budget, etc.) with certain settings, then configuring Sucuri CloudProxy with CloudFlare, and lastly implementing some additional security for your server on Single Hop.

In terms of preventing future ones, you basically want to be proactive as possible in terms of preventing them, but that won't stop everything. The configuration I recommended above should be pretty good for most sites, but you might want to consider other DDOS mitigation companies as well and you could need something completely different depending on your business etc. Then you want to have a plan and several other things in place in case it was to get past the infrastructure you implemented to prevent it, so you can minimize the downtime you have etc.

It is hard to tell whether that is a possible issue just based on the information you gave in terms of the sleeping MySQL connections.

Lastly, depending on what the issue exactly is, it probably would be a good idea to make your site as static as possible, but that is difficult to do since your site is down right now. Once you get the site back up though and stable, you might consider doing this for a little bit. Lastly, having a separate site that you can deploy in the event of an attack is a good idea as well.

If you want more help, shoot me an email at caleb.lane4@gmail.com. I hope that helped and you get this solved quickly.
Any organization with enough money can pay MS to continue to keep the patch train going, and many do. Whether or not the government will or will instead choose to upgrade or to remain vulnerable is an open question.
I called it when the story first broke with a simple question any reporter should've asked themselves:

> There's one thing that doesn't add up: why would such a privacy conscious man use his real name on a project he thought might be illegal? If he was so serious about his privacy, he would not have used his real name in public.

Source: https://news.ycombinator.com/item?id=7353429

The entire situation is a total fuck up.
This is expected. Here in the UK, the National Health Service is rapidly moving away from it. When I say rapidly, a friend of mine who is an HP reseller is deploying 750 workstations a week at the moment with Windows 7 on.

The big chunk of pain though is really windows 2003 server which is EOL July 2015. People seem to have missed that one coming!
Manual de radiaciones y telefonos móviles GEOBIOLOGIA 4ª Parte de 6
> the network guys aren't in until the morning

That's not a very good ISP. You should consider switching away from them as soon as you can.
I propose to show our sympathy towards the nice people at github by just forgetting this non-story ever existed. Or, it existed, but it was a whole different story, that had nothing to do with sexism and more to do with another woman being in a position of power and maybe using that for a non obvious purpose.

...witch hunts are cool and all, and they are even cooler when they are done "to save"/"for the rights of" women/children/etc., but you're only giving more power to the "troll" that started this in the first place, either her or someone using her, for god knows what agenda (I bet it's just part of power fight inside the company, and somebody tries to redirect some discrimination related anger collected from the interwebs against his/her opponent ...we really shouldn't let ourselves manipulated into joining this fight we know nothing about).
The problem with an organization that finds it difficult to upgrade away from a 12 year old operating system is decidedly not an abundance of technical talent, and even more so not an abundance of kernel hacking talent.
NVDate – Make NSDate manipulation goes easier
Hogwash. Companies always say they will open an investigation. In the least, it buys a little time for the story to die down and the next big stories to hit the media cycle.
This validates a lot of things without explicitly doing so. Why put the engineer in question on leave, and the wife and the founder and mentioning it in this apology? Makes no sense unless it was because of what happened. That isn't to say that what Julie said happened did, but there is an ounce of credibility there. Depending on how this resolves, I may (likely) take my business elsewhere.
I would think nuclear submarines can just pop up anywhere in the ocean.
Einstein-Rosen Bridge transported it to ancient Prylaxo Civilization on Sa03-P5 of Sector 401B.
> 1) How do we confirm if the site is under attack?

It could be some kind of attack, but it's so weak it barely qualifies. 50-100 requests is so low it's probably a search engine spider or a log-spamming bot. If request rates like these bring your site down, you have a serious software problem. You really should be able to handle at least a few hundred requests per second, especially if they're bogus requests going to non-existent URLs.

> 2) If the site is under attack, how can we ward off the attack and prevent future ones?

If this was a real attack, you'd be dealing with thousands of requests per second and a real spike in data volume.

As a basic protection against things like these, get behind a reverse proxy right now. Cloudflare offers a good free plan, but it doesn't include SSL. I've had a good experience with X4B as a DDoS-protection reverse proxy recently. Their plans start at a few bucks per month, check them out.

> 3) We seem to have a ton of sleeping MySQL connections that continue to crop up even after we try killing them. Is this symptomatic of a botnet attack?

This question can't be meaningfully answered without knowing more about your setup. Generally, sleeping connections are fine - most web servers create a persistent connection pool. What's "a ton" in this case?

I think the only really valuable advice to give here is: hire someone to review your setup, your software, to make some changes, and above all to give you a meaningful briefing. Contacting your provider isn't going to help.
Yup. This, to me, is a partial admission of guilt. Why else would they take such harsh, immediate action to throw him under the bus?
Personalize Holi Message
play holi. Happy Holi folks!!!
> Well in this particular case it was pretty much all politics.

I had assumed as much. Sun seemed to be very political except for a very few areas; I avoided it for that exact reason.

It's always a hard lesson for a junior person to realize that politics exists. I had my introduction to that at a very big company in a very hard way.
> begun to look into fossil again, despite what people here say

Huh? I haven't read any negative comments about Fossil here.

And yes, Fossil deserves to become more mainstream, it's pretty good (though my use is simple).
This is an incredibly important problem that Ioannidis is working on. Not only could it increase our confidence in scientific results, it can help institutionalize a bunch of practices (reproducibility, publishing negative results, post-publication review) that we know to be good ideas.

But it might be worth it to take a step back and recognize what a brilliant process science is. After all, even with such waste, such bias, and such low rates of reproduction, science still gives us amazing insights into the world, enriches our understanding of the universe and our place in it, and of course births incredible technology. Through fraud exists, though scientists are flawed humans, though funding agencies can be so conservative or wrong-headed—still, science chugs along. It's so robust, so powerful, and yet so simple!

It's truly amazing to live in our world.
Can you perhaps explain how he can get these $28,000 in physical dollars?

That's not even getting into an irony of throwing Bitcoins at a person whose life has been just severely discomforted by the very same subject.
Wow, pip bundled by default. Very interesting.
The version numbers don't indicated complete and utter uncommonality of the code base, they just indicate points of major revisions. XP and Vista/7/8 do still share a lot of common sub-systems, code, and designs, many vulnerabilities that will be discovered and patched in currently supported versions of windows will definitely apply to XP.
As with the "two fake passports" discussion, my rational follow up is "what are the priors?"

If one picks a random similar flight, what's the probability of having people flying with fake IDs/of having a pilot who runs a flight simulator at home?
Fair enough, that does seem extremely comprehensive.
They said the same thing about 98SE when its support period ended.

I used it for several years after that, and never got infected. Ditto for my XP installation, which is approaching 8 years old.

If 98SE was any indication (Google "kernelex"), with XP's popularity and persistence being much greater, I think once again a whole "cottage industry" will form and continue to provide various bugfixes/patches and enhancements to XP for another decade or more...
"Just for sake of argument, here's a possible conversation that could be twisted into fitting the above description:"

Your example cannot be twisted into a reasonable description of "very inappropriate".

Overall your comment reads like you don't want this story to be true and are trying to minimise every part of it. Which you are free to do, but you could have just said "I don't want this story to be true".
Look at the image I linked and say that again.

And it's not like this is particularly hard to test on your own. If you encode the same video at low enough bitrate X in 480p/720p/1080p, the higher resolution versions can have more definition at times but the 480p version will generally end up having the highest overall quality and is usually the most consistent in its quality as well. I've done this kind of comparing a couple times myself and the results are exactly that.
I'm surprised I haven't heard it mentioned yet, but Varnish can ward off an awful lot of request floods. If these pages aren't changing frequently (particularly if they are outdated or shouldn't be accessible), then Varnish should be able to cache and respond with them trivially. This will take a tremendous amount of load off of your actual app servers.

Additionally, Varnish has ACLs which make it possible to reject requests based on whatever patterns you choose (source IP, request structure, etc). While it puts you into an arms race, if you can identify a pattern in the bad traffic, you can short-circuit it before it ever becomes an actual problem. Black-holing poorly-behaved clients is very easy, and can let you absorb very high request concurrency with extremely little effort.

Varnish also makes it very easy to locate URLs and IPs being used in these sorts of things, via varnishtop and varnishlog. For example, `varnishlog -i RxURL` gets you a constantly-updated list of the URLs being hit most frequently, or `varnishlog -i SessionOpen` will get you a list of the most common client IPs. With that kind of information, doing reactive filtering becomes very easy.
> Point is a $100 spot device could be added (powered by Li AA's) as a backup system

Li AAs... without a means of isolating them from the circuitry?

How many aircraft are you prepared to lose through in-flight fires for this 'benefit'? Reference: Ethiopian Airlines 787 fire at Heathrow originating from lithium cells in the ELT.

Who is going to check the battery status at regular intervals?

Who is going to certify and sign-off those checks?

Who is going to be qualified to change those cells?

What interfaces will there be with the aircraft avionics to relay data such as call sign and flight code? How do we protect those connections from overload? There's a reason every single electrical circuit on an airliner can be isolated.

$100 is, frankly, a laughable estimate.
If you want to practice your radio comms skills or just want some soothing radio chatter to calm your mind, you can get live air traffic control feeds from here:

http://www.liveatc.net/

Indeed, informal greetings like the one mentioned in the article are not at all rare. Real life ATC communication is not the robot-like mechanical talking you might be used to from video games or movies.
In an ideal world, this should really be a no-brainer. Gender-background abuse should be an abhorred practice, the way we normally abhor, say, killing people.

It is telling that the topic of sexism in tech and the workplace is controversial at all.
I don't think we are talking about the same thing. Depending on who you read, Github is a $750m company. What's the payout going to be - $2m? $5m? This isn't going to bankrupt them.

San Diego Sea World and the killer whale or Blackberry & Palm mobile devices are examples of irreparable brand damage.

What's the going price for a Microsoft Zune player?
Most of these techniques are extremely commonplace in embedded C programs where you might have a combination of the following: no malloc/free, no operating system or threading library (everything sits in a void main() { while (1) {} } loop, you have limited memory and you need to fix the size of your data structures, you need to reason about the correctness of your code for safety/security purposes and not doing any dynamic allocation makes this a lot easier.

I've had to code on embedded devices (where RAM is anything from 4kb to 512kb) where all the above have been true at some point.
> I note that the word "because" doesn't appear once in your post.

Sorry, my rant was a fairly long to begin with :D

To clarify my position, I'm maintaining and developing as my day job a few MLOC CAD application that is two decades old which has core written partly in C. This is one of the most painfull antipatterns plaguing that codebase.

It's seldom OK to use static variables even with accessor functions. Because:

1) Understandability. Suddenly it's non obvious what the state actually is that your code modifies. Functions are not functions that get input and process output, but become detached nodes in a non-obvious call graph. Yes, it's embedded in the stack, and, yes, you can figure out ways to figure out what is actually happening but it's not obvious from the code. There are quite a few non-obvious things affecting a real world production code. It does not help to add a few non-obvious patterns which are not necessary. I.e. this pattern creates unnecessary accidental complexity that hinders all velocity.

2) Suddenly it's impossible to structure the code to parallellize it. The explanation is fairly long but if it's non obvious I can return to this point.
Are you suggesting that hiring less qualified women for the sake of diversity would help to dispel the notion that women are less qualified, and hired for the sake of diversity?
In consoles games, often the following is found - big double-stack - predefined buffer, that takes most of the memory. Memory is allocated by bumping a pointer, for example data for levels loaded increases left -> right (up->down), and temporary data (characters, temp scene, etc.) right->left (down->up). When level unloads (or several of it's associated files), memory is put back before (left or right).

But there are always other heaps (that might or might not work like the stack above, or have say dmalloc's mspace api used there for other uses), and some space should be left to CRT itself, nowadays even more with lambda's in C++11 and for other library functions.

For Tools I started to not care, simply because it does not matter that much. Just make sure _NO_DEBUG_HEAP=1 is set when you run through the Visual Studio debugger :)
Github Puts Co-Founder On Leave, Begins Investigation Into Discrimination
It's quite likely that the people in charge of military surveillance will prefer, and succeed, in getting continuous coverage of the entire Earth. Really want to avoid a "Sorry, Mr. President, we don't have coverage there" situation. And anyway, it's State-funded; cost is rarely a key constraint for these systems.
Social stigma they face for remaining unmarried
Kickstarter campaigns do have to be submitted for approval, so theoretically there is a human reviewer. I'd assume step 1 would be "Google the names of the project founders".
Combining work and marriage structures is fraught with all sorts of problematic outcomes. Consider even the differing processes to enter each institution. Or the differing standards for being successful at each.
So, how about using WhatsApp or WeChat or Line? These apps are as convenient and cheap as SMS for many people, but don't suffer from the same ease of spoofing.
> So much for the 24/7 support they claim

Step 1: Get a new provider.
I think a more appropriate analogy is "abortion". Some see it as killing people, others see it as having control over their own lives. Same here - some see it as sexual discrimination, others see it as problems many people have to face at their workplace.
That would be interesting. And the cliff from Outer Interpreter to Compiler (instead of Inner Interpreter) would be even steeper.
The guy collecting the BTC donations has said that he will convert the BTC into actual money then deliver them using commonly accepted methods for payment in the United States. Delivering $X0,000 is not a particularly novel problem in the US economy. There exist many very straightforward ways of solving it.
Companies do this even if they don't publicize it. You say you're deaf, and then they don't have any choice.

After failing to get through on their various numbers, I cancelled my eFax account via e-mail this way (as they don't/didn't allow online cancellations) and it went smoothly.
Chris took over the role as GitHub's CEO from Tom at the end of January. Given the timeline in the TechCrunch article, these events unfolded under the previous CEO's tenure so it would be appropriate to reinvestigate the claims independently of any previous findings.
How do you create an address that includes specific text?
could google corp have any interest in a buy back, if the exiting stock costs them nothing cause they pay no dividend?
It's amazing how much you can achieve without malloc and free if you're just careful to pass in the right output space and buffers as part of your function call. You rarely really need them for most functional code. (Non-trivial data structures may be different...)

And the OP is right - globals, especially if not encapsulated within a single code module, are a prime cause of opaque spaghetti code.
> If request rates like these bring your site down, you have a serious software problem.

This true only if the requests that are being sent to them aren't malicious. A competent attacker without a botnet can try to find weak points in your application (clearing caches, writing data) and hit those places with just a few network connections.
Andreas M. Antonopoulos, apparently someone respected in the Bitcoin community, stated that he will convert any donations to that address into USD a the end of March and get it to Dorian.

http://redd.it/1ztjmg
The spaghetti is part nethack's identity, it is accretion not architecture. Part of what's fun about it is that it works at all, despite the code being so awful.

Even beyond the code, there's plenty wrong with nethack as a game: arduous inventory management, it gives the impression of being a sandbox game but it isn't really (hunger clock, inflexible ascension goal).

Rather than reform that, it'd be more straightforward to just create a new roguelike. Brogue is an example of this.