HNHacker News
TopNewBestAskShowJobs

79d697i6fdif

192 karma · joined December 22, 2016

submissionscomments
79d697i6fdif··on A Story of a Fraudulent Coder
If you're in the US ur gettin ripped off. I live in a really low cost of living area and make around 70. Most of my friends with 3+ years make around 90
79d697i6fdif··on H-1B Visas: U.S. Lawmaker Re-Introduces Bill to Tighten Rules
The root of the problem with H1B is that despite a bunch of laws meant to make sure that these workers are paid and treated the same as US citizens, that isn't happening at a lot of companies. This is creating a huge demand for visa workers as a kind of indentured servitude. This isn't a good situation for US citizens or visa workers.

If the laws are fixed by, for instance, making it far easier to switch jobs on a visa, H1B workers will be treated a lot better. Demand for visa workers will probably drop somewhat but it will be more in line with what the visa program was made for: to hire talent not slaves.

79d697i6fdif··on Building a Billion User Load Balancer [video]
not all of it. IVPS runs between layer 2 and 3 if using direct server return. It does bypass quite a bit though...
79d697i6fdif··on Building a Billion User Load Balancer [video]
It's mostly because the point of DPDK and similar is to go around a lot of the processing in kernel, and IPVS does exactly this. I'm surprised IPVS isn't more popular, it's built into the kernel and extremely fast.

HTTP proxy type load balancers are slugs in comparison

Scaling app servers to nearly unlimited size is easy to explain but really hard in practice. It basically amounts to this:

1) Balance requests using DNS anycast so you can spread load before it hits your servers

2) Setup "Head End" machines with as large pipes as possible (40Gbps?) and load balance at the lowest layer you can. Balance at IP level using IPVS and direct server return. A single reasonable machine can handle a 40Gbps pipe. I guess you could setup a bunch of these but I doubt many people are over 40Gpbs. Oh, and don't use cloud services for these. The virtualization overhead is high on the network plane and even with SR-IOV you don't get access to all hardware NIC queues. Also, I don't know of any cloud provider thats compatible with direct server return since they typically virtualize your "private cloud" at layer 3, whereas IPVS actually touches layer 2 a little. Do yourself a favor and get yourself a few colo's for your load balancers.

3) Setup a ton of HTTP-proxy type load balancers. This includes Nginx, Varnish, Haproxy etc... One of these machines can probably handle 1-5 Gbps of traffic so expect 20 or so behind each layer 3 balancer. These NEED to be hardened substantially because most attacks will be layer 4 and up once an adversary realizes they can't just flood you out(due to powerful IPVS balancers above). SYN cookies are extremely important here since you're dealing with TCP... just try to set everything up to avoid storing TCP state at all costs. This also means no NAT. You might want to keep these in the colo with your L3 load balancers.

4) Now for your app servers. Depending on if you're using a dog slow language or not, you'll want between 3 and 300 app servers behind each HTTP proxy. You don't really need to harden these as much since the traffic is lower and any traffic that reaches here is clean HTTP. Go ahead and throw these on the cloud if want

79d697i6fdif··on Bitpacking and Compression of Sparse Datasets
+1 to this. OP is using the wrong flavor of compression for the task at hand. OP, look up sparse bitmaps.
79d697i6fdif··on Faster Images using HTTP2 and Progressive JPEGs
nah JPEG 2000 isn't quite as nice because some browsers can't natively parse it :) . WebP support literally already exists in all mainstream browsers, it's just a single frame of VP8. And it's still around half the size of regular JPEG

Not sure why we're downvoted here, either of these are clearly better options for increasing image download speed

79d697i6fdif··on PHPMailer Exploit – Remote Code Execution
Why is it possible to do command execution in a mailer at all??? Any reasonable language would have abstracted this into an SMTP library where such things are impossible instead of relying on sendmail.
79d697i6fdif··on Tesla footage of braking before crash ahead [video]
The biggest thing I noticed was just how easily SUV's flip over. This has been a problem forever I'm just surprised that regulators don't take more notice of it. Rollovers are far more likely to result in injury or death.

Most cars just don't flip, all the traction their tires have is simply not enough to do it on flat ground. Yeah anything could flip over once you go off the road but the SUV in this looks like a rolling death machine.

79d697i6fdif··on Intel Kaby Lake Potentially an Overclocker's Dream, Seen Breaking 7GHz with LN2
In my experience at least, the olde fears about shortening the life of the chip are non-issue in practice.

I've run overclocked PC's exclusively for about 17 years and never had a single failure, even though I've been running folding@home for most of those. By the time the chip is 4 yrs old it's time for a replacement for practical reasons.

My current system is a cheap Biostar board running a gen-1 i5 750 that I got second hand. The board dates back to 2009 I think. It's overclocked to around 3.6 ghz with turbo still enabled. About time for a replacement but until a year ago it benchmarked at the same level as $200 chips.

Overclocking is definitely still worth it if you want a fast pc for cheap

79d697i6fdif··on Faster Images using HTTP2 and Progressive JPEGs
I think at this point a better solution is to use a polyfill for Webp.

The polyfill is pretty light because the underlying image format is just a single frame of VP8. Shouldn't get much performance hit since it will just render as a single frame of video on polyfilled browsers

79d697i6fdif··on OpenJDK now available for Windows
I would say Java is more comparable to C++. Language-wise the syntax of the two is similar, they came from around the same generation of languages, and they both have a prolific community and ginormous codebases. Also similar to C++, there are MANY different implementations and flavors, even entire languages built on the Java VM. By this measure no languages come close to C++ and Java.

While some new languages have prettier syntax and interesting constructs, Java remains a viable platform despite it's warts. I would guess more production code today (even new) is still written in Java or c++ than anything else.

Java gets a lot of flak around here but its really not so bad when you use modern versions (JDK 8) with modern libraries (Apache Commons or Guava). Even Eclipse is surprisingly good now, defying my expectations years ago that it would remain buggy and hard to use forever. I learned Java in the last year and it's now my favorite language besides c#.

79d697i6fdif··on Some Thoughts on Hiring at a New Startup
We made a big deal of making candidates feel wanted, but not necessarily congratulatory. Same goal of raising the mental value of an offer but a different way. I get what you're saying, something perceived as difficult to get usually has a higher value placed on it. However, I disagree that this helps in a (pre-funding) startup :). The "we only hire the best" moniker has been beaten to death by silicon valley and people that have worked at startups before know this just isn't true. Candidates know that getting an offer from google etc.. is a big deal. If you try to sell them hard on your value they'll either think you're a bunch of used car salesmen or delusional.

Our approach is to meticulously research anyone we're serious about and bring these things up during their interview. In my own interview experience it's extremely rare for someone to take any interest in your personal projects and achievements, or even in your "story". We lived in the same state? You came from a place I'de like to visit? We both know some obscure language? Worked at the same company? Interesting/crazy projects on github? I'll star you. The end goal is to make it hard to say no, and making as much of a personal connection as possible has worked wonders for us. Make sure not to go too far and lie... if you can't find anything that interests you about a candidate why consider them in the first place?

Whenever I've been looking for a job a quick turnaround is a sign of competence. These guys are on top of their game type thing, as in they know I'm good and want to hire me right away. I just don't see waiting being a positive especially in a startup when you're supposed to be doing everything fast and efficently.

It's me btw, can't remember my throwaway pw :).

← PreviousPage 2 of 2