CloudFlare "Interview Questions" - <AUTHOR> https://blog.cloudflare.com/cloudflare-interview-questions/ <comment><USER2> I think TCP SYN segments have always been able to carry payloads; they're not delivered until the 3WH completes.

A fun set of trivia questions involves inconsistent retransmission: in out-of- order delivery, with some data buffered --- IP fragments or TCP segments --- what happens when the packet that allows reassembly to proceed (a) overlaps data already sent and (b) that overlapping data isn't the same as what was already buffered? (When we wrote the IDS paper, Vern Paxson told us he'd been observing this happening in the wild, which blows my mind).

Another fun set of interview questions pertains to how you'd design the fastest possible "traceroute" program. You can do better than parallelizing/pipelining. :)

I used to like asking people what the utility of discard, chargen, and echo were.

<comment><USER3> I'd think sending multiple packets (parallelism) with varying TTLs (1,2,3..n) without waiting for responses from each hops to increment the TTL, would probably give us faster traceroute. n being the number of hops you "expect" the destination subnet to be.

<comment><USER4> TTL's given by the Fibonacci sequence?

<comment><USER3> Not really. You'd want every routers in the path to reply to see all the hops in between. This would be unreliable though, since the ICMP TTL exceeded message might come in out-of-order to the sender, who is sending these probes(with varying TTLs) simultaneously. But assuming, you could somehow figure out the hop-order, this IMO is faster than current traceroute implementation.

</comment></comment></comment></comment><comment><USER5> Let's collaboratively collect the answers to these (trivia!) questions: [http://collabedit.com/rsjy8](http://collabedit.com/rsjy8)

<comment><USER5> (Saving current progress in case someone abuses the page again: [http://pastie.org/pastes/10182802/text](http://pastie.org/pastes/10182802/text) [16:08 Monday, May 11, 2015 UTC].)

<comment><USER6> And they did!

</comment></comment></comment><comment><USER7> Everybody is taking these questions too seriously. These are not interview questions, and these are quite fun actually - I know the answer to a few of them (not because I know RFCs by heart but because I had to deal with them in the past), and the others are just intriguing enough that I may actually go look for answers.

<comment><USER8> > These are not interview questions

These should become interview questions when somebody declares himself/herself an expert in TCP/IP.

<comment><USER2> If the purpose of an interview is to deflate claims people make about their expertise, sure. That's not a productive goal for an interview, though.

<comment><USER9> Is it not? Hypothetically, is it not worth knowing that someone has exaggerated or lied about their skills in something? That would seem to be useful information in an interview; i.e. can someone say "I don't know" or will they make up something instead.

<comment><USER2> It can be, but I think the idea that it _should_ be is probably the biggest misconception in hiring, and the biggest impediment most startups have to effectively hiring engineers.

Consider: there's a difference, perhaps subtle, between "deflating claimed expertise" and "assessing ability to perform a job".

<comment><USER9> Oh, I agree. It should not be the only thing you're looking for. I have, however, gained very valuable information from figuring out that someone likes to aggrandize their own capabilities in a particular topic and/or is unable to say "I don't know." We specifically look for people that are able to say that, since honesty and not being afraid to learn (usually the result of saying "I don't know") is important to us.

But it is /definitely/ not the only thing we look for.

<comment><USER2> My experience is that once I figured out how to reliably screen for ability to perform the job I was hiring for, I stopped caring about psychological tea- leaves like these almost entirely.

Being a raving asshole could get you evicted from the Matasano hiring pipeline, but otherwise, if you could knock out the challenges we gave candidates, you had a mortal lock on our attention.

I was responsible for candidates from first contact to offer letter, and in the last year and a half I ran the process, I looked at a total of zero resumes. Many, many hires. Guess how many didn't work out.

So I guess my subtext is, if you have the mental cycles to reason from signals like "do I disagree with this candidate about what the word 'expertise' implies", you probably don't have the job aptitude prediction stuff nailed yet.

<comment><USER9> I think that's going a bit far. I think we're saying the same thing but using different signals; the ability to say "I don't know" is actually an important gauge of aptitude in my opinion, because anyone that is unable to say it will possibly have too much hubris to take the time to learn something they don't know. It is not the only signal I rely on, and if they truly know the topic, there are other signals I rely on either way. But it is /a/ signal which I don't believe is invalid. I don't actually care if someone agrees with my definition of expertise, I just care about their ability to learn, which starts with admitting they don't know something.

Challenges are another great way to do that, and don't necessarily need to be time-limited; MicroCorruption is a great example. We will occasionally do similar "take home" style challenges. The only time we'll time limit them is specifically when we're looking for how /quickly/ someone can get up to speed on a topic they're unfamiliar with, which is also occasionally a valid question; i.e. do they need to become an expert to build something in it or can they get dangerous enough quickly. Not everyone can. In those cases, we provide plenty of resources, make ourselves fully available, and make the time limits a matter of days, not hours.

Edit: to clarify, it is far more important to me that someone have the ability to learn new things quickly than already contain an existing bit of knowledge in their head.

<comment><USER2> I think people think I'm talking about "how well people can learn new things" when I talk about this. That's potentially a part of it, but it's _not_ what I interviewed for. I interviewed for, literally, simply, "ability to do the job we had Matasano consultants perform".

Microcorruption and the Crypto Challenges were outreach for Matasano, but they were _not_ part of the hiring process. Our hiring challenges were slightly more boring, and explicitly tuned to generate the exact signal we wanted.

I don't know whether there's any valid signal to recover from candidate psychology. I don't have to reach that argument, because in my universe, there's a giant, very accurate signal available that makes looking at other signals a poor use of my time. The fact that the big signal also keeps me from using dubious signals and making bad decisions is just a knock-on benefit. :)

<comment><USER9> That's great that you had a very specific job req and set of things you were looking for. Not all of us are that lucky ;)

Startups sometimes look for generalists (i.e. people who can learn new things) specifically because nobody knows what the stack will look like, how the product will change, etc. a year from now.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> This is almost unrelated to the post, but the question on the MD5 checksum was the inspiration. It seems like we could have a DoS mitigation strategy with a protocol extension that required the packets to be checksummed with a key stretching algorithm (similar to bcrypt). The worse the DoS got, the higher the number of iterations that could be required. If routers at the network edge could verify the checksums somehow then the traffic would be dropped at distributed nodes rather than at a central node. Ideally you'd want something easy to verify but hard to calculate for the client. Of course, I know nothing about DoS attacks, so this is probably trivially wrong in some way.

</comment><comment><USER11> Here is how I did a TCP simultaneous open over the loopback interface. [http://stackoverflow.com/a/2263853/78720](http://stackoverflow.com/a/2263853/78720)

<comment><USER12> Wow, this is awesome. So it works!

</comment></comment><comment><USER13> So, for those interested in learning could we possibly have a quick short answer for each one of them?

K

<comment><USER14> This is what I was looking forward to but never saw a list of answers.

<comment><USER2> What specific questions are you finding hard to look up? (Some of them are easy to find, some aren't.)

<comment><USER14> Since this is essentially a list of trivia / interesting questions I was hoping for a list of answers just as easy to consume. I was able to look-up most of the ones I cheery-picked.

<comment><USER15> _cheery-picked_

That made me smile. Mental image: cherry-picking after a few pints.

</comment></comment></comment></comment></comment><comment><USER16> >13) Can a SYN packet have a payload? (hint: new RFC proposals)

Hint is ok but RFC 1379 and RFC 1644 predate your hint. I have personally seen this happen as I implemented it :-)

</comment><comment><USER17> I've always thought a job at CloudFlare would be awesome, so much so that I took their list of requirements for a SRE role and set them as goals to work towards. After reading this list of questions, however, maybe I should lower my expectations, I could barely answer 25%.

<comment><AUTHOR> You should apply.

<comment><USER17> Maybe one day...

</comment></comment></comment><comment><USER18> I start at CloudFlare in a week. I was fortunate in that I came via a recommendation.

Still, for whatever it's worth, I was genuinely impressed with everyone I spoke with throughout the chain.

</comment><comment><USER19> I love these questions. I wouldn't expect any interviewee to know all of them. But I'd expect them to be able to talk intelligently about some of them.

For a software candidate a simple question like "tell me what you know about TCP/IP" is a great start to just probe what they know about networking.

</comment><comment><USER20> Ah... this bring back memories! When I was doing dev ops I had to know a lot more about the nitty gritty details of networking. Still know a few of these, but most have been forgotten.

</comment><comment><USER21> I do CS (software mainly) graduating next year And I only know a couple of these .. Should I be worried ?

<comment><USER22> No. Even if you applied to a new job that related to all this it would generally be understood that as a new grad you're not going to know this stuff, and either A: the job would never have been posted in such a way as to lead you to apply or B: they understand there's going to be on-the-job training.

That said, if you're specifically applying to CloudFlare, you just got handed a great study sheet to differentiate yourself very handily from your peers. You'd think that "everyone" looks for this sort of thing, but given the ongoing streams of reports of "people who fail FizzBuzz", no, seriously, few people look at this sort of thing before interviews!

</comment></comment><comment><USER23> Nice blog post CloudFlare SEO team!

<comment><AUTHOR> Every single member of the CloudFlare team is part of our marketing effort.

</comment></comment><comment><USER24> Can't someone learn these in a couple of months.

Why does a candidate have to know all these already?

<comment><USER25> Days. The article pretty quickly diverts away from the subject of interview questions.

"The goal is to encourage our readers to review the dusty RFCs, get interested in the inner workings of the network stack and generally spread the knowledge about the protocols we rely on so much."

<comment><USER26> The subject was to mock interview questions in interviews, as depicted by the use of quotes around "interview questions". The article then goes on to peak the interest of the reader about TCP/IP quirks that cloudflare has faced over the past couple of months; i.e. real work challenges that potential employees should be able to research and answer.

</comment></comment></comment><comment><USER27> "For quite some time we've been grilling our candidates about dirty corners of TCP/IP stack. Every engineer here must prove his/her comprehensive understanding of the full network stack. For example: what are the differences in checksumming algorithms between IPv4 and IPv6 stacks?"

I read that and was blown away, uttering "Bloody hell." I would have never known that from the top of my head. Good joke, well played, sir.

<comment><USER28> What you really need to know the dirty little secrets of the various implementations of the stacks and the short cuts (or blatant ignoring of standards).

My Boss at BT could do this from a x.400 packet trace and point to the offending dword and say that is XXX's POS stack.

There is also the story of a guy (at BT Labs) who took the CCIE and only scored 98% he then wrote a personal letter to John Chambers explaining why he was right and Cisco was not.

...

Turns out he was one of the 3 inventors of Ethernet

<comment><USER29> Do you have some link where I can read more about it? I googled but nothing came up. The part about the CCIE.

<comment><USER28> It was told to me by coworker at BT

</comment></comment></comment></comment><comment><USER30> 2/3 top-level comments are confusion re. the title. Can we have a different title for HN in this case?

EDIT: Title as I write this: CloudFlare "Interview Questions"

<comment><USER31> It's etiquette to use the original title that you're linking to, unless it's a bit older (then you can include a year), or if the original title is too ambiguous. I think it's reasonable as it is right now.

<comment><USER30> [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

The guidelines allow for changing a misleading title, even if it was unintentionally misleading. From the comments here, clearly many were misled.

</comment></comment></comment><comment><USER32> I've mentioned it on the blogpost but: Do you have some metrics about the success of your candidates replying to those questions?

<comment><USER33> These are not actually interview questions.

<comment><USER32> Well, I know that there are "interview questions", but they are trying to show us the kind of knowledge that is needed to join a Company as Cloudfare so I am pretty sure that some of those are going to be questions in some point of their interview process.

I just wanted to know that in case that the questions are formulated that way, what's the ratio of people that can successfully answer those.

<comment><USER33> The article says:

"For quite some time we've been grilling our candidates about dirty corners of TCP/IP stack. Every engineer here must prove his/her comprehensive understanding of the full network stack. For example: what are the differences in checksumming algorithms between IPv4 and IPv6 stacks? I'm joking of course, but in the spirit of the old TCP/IP pub game I want to share some of the amusing TCP/IP quirks I've bumped into over the last few months while working on CloudFlare's automatic attack mitigation systems."

That is, these are not real interview questions. They are trivia questions.

I doubt most engineers even at Cloudflare can answer these without research.

</comment></comment></comment></comment><comment><USER34> Cloudflare needs people who understand this, since they're a man-in-the-middle security hole/backdoor. Note that they're _not_ asking questions about security. This shows their priorities.

<comment><AUTHOR> Oh, please.

<comment><USER34> Cloudflare reserves the right to add adware and spyware to your pages as they pass through Cloudflare's MITM center. ("CloudFlare may: ... Add script to your pages to, for example, add services, Apps, or perform additional performance tracking."[1])

[1] [https://www.cloudflare.com/terms](https://www.cloudflare.com/terms)

<comment><USER35> You should have continued:

 _CloudFlare will make it clear whenever a feature will modify your content and, whenever possible, provide you a mechanism to allow you to_ disable _the feature_. _

<comment><USER34> When privacy and security require an opt-out, you can be sure the vendor plans to violate them. Their "free HTTPS everywhere" plan has to be monetized somehow.</comment></comment></comment></comment></comment>


Become a Better Developer by Reading Source Code - <AUTHOR> https://www.stevejgordon.co.uk/become-a-better-developer-by-reading-source-code <comment><USER2> A big part of me wants Comparative Coding classes to be taught to college students. Even though I have a pretty sad cautionary tale about Comp Lit classes from a very good friend who went for an English degree.

Some of the earliest conversations I recall were about the trap of taking Comp Lit too seriously and not spending enough time on the craft. Eventually your inner critic creates fear that your work isn't good enough, and it becomes a self fulfilling prophecy.

I spent the next decade watching helplessly as the inner critic ate my friend's hopes and dreams one by one. In her head, she was going to be a great fiction writer. But the only thing of hers I ever remembered was her persuasive writing. She was passionate about her causes, but somehow also had it in her head that this wasn't 'real writing', and I didn't have the gravitas to convince her she was wrong.

And so the sad fact is that if you look at what I've written and shown to people, and what she's written and shown to people, it would be charitable to say she's done three times as much as I have, to an audience perhaps ten times as large. Me, who only briefly wanted to be a writer in grade school, whose only college-level English class was a technical writing class.

I am not a Writer, but I write. She is a Writer, and doesn't.

But even so, I've got body parts stuck in this same trap. I write a lot less code that some other people. But I also work hard to make sure that I'm on the right side of the Pareto principle. It's not the lines that count but how you use them, or so I reason. But I've started noticing the consequence of that choice, and trying to find a new balance between quantity and quality. Old habits die hard.

<comment><USER3> Writers write. Coders code.

To quote a famous parable of the pottery class

The ceramics teacher announced on opening day that he was dividing the class into two groups. All those on the left side of the studio, he said, would be graded solely on the quantity of work they produced, all those on the right solely on its quality. His procedure was simple: on the final day of class he would bring in his bathroom scales and weigh the work of the "quantity" group: fifty pounds of pots rated an "A", forty pounds a "B", and so on. Those being graded on "quality", however, needed to produce only one pot – albeit a perfect one – to get an "A". Well, came grading time and a curious fact emerged: the works of highest quality were all produced by the group being graded for quantity. It seems that while the "quantity" group was busily churning out piles of work – and learning from their mistakes – the "quality" group had sat theorizing about perfection, and in the end had little more to show for their efforts than grandiose theories and a pile of dead clay.

The best way to get better at creative pursuits is to _create_. Then get feedback. As much feedback as you can find.

<comment><USER4> I have heard this, but as cute as the story is, I can't find evidence it is true.

<comment><USER3> It's not a factual story, it's a parable.

<comment><USER4> After I typed that I worried it would be misinterpreted.

Not true as in a something that happened, but true as in the underlying concept.

Gladwell talks about hours of practice, but it has to be conscious practice.

But this parable has always been strange to me because if your target is quantity, it seems errors, in that context, are things that slow you down in production not quality issues.

You will learn to be fast, not good.

<comment><USER5> In Spain, around 1600 and the height of the Spanish empire, there were two particularly well known writers. One was Cervantes (Don Quixote); the other Lope de Vega ("the sheer volume of his literary output is unequalled, making him one of the most prolific authors in the history of literature" [0]).

It makes an interesting case study for this sort of thing. Both were prolific; but Don Quixote is clearly the greatest work in the Spanish corpus despite Lope having vastly more written. But to some degree both authors are remembered.

[0] [https://en.wikipedia.org/wiki/Lope_de_Vega](https://en.wikipedia.org/wiki/Lope_de_Vega)

</comment></comment></comment></comment></comment></comment><comment><USER6> Everyone should try and read busybox. It's a fairly complete implementation of a normal "unix" user space without the libc. Most commands are completely contained in files less than a few thousand lines long and can be read through and completely understood in an afternoon. I personally use it for most things because of that even if some utilities are a little incomplete, being able to double check the source easily makes me feel like I won't get surprised.

<comment><USER7> Had a quick look, found this little gem, a math evaluator with precedence.

[https://github.com/mirror/busybox/blob/master/shell/math.c](https://github.com/mirror/busybox/blob/master/shell/math.c)

Some funny comments like "Think about it. * It makes sense."

<comment><USER8> > The lower 5 bits are the precedence, and 3 high bits are an ID unique across > operators of that precedence.

This is so cool. Nobody would write code like this today

<comment><USER9> People wouldn't optimize a shell like that anymore, but people still do encode small pieces of information into integers using bitwise operations when compactness is an advantage. If you're dealing with a large data structure with tens of millions (or billions) of entries, compact encoding still trumps convenience, because memory bandwidth will often be the bottleneck. A data structure that would benefit from a compact encoding could be a compiler's intermediate representation, for example.

</comment></comment></comment></comment><comment><USER10> Yes, it is great to read source code. One of the great things about most things being on GitHub these days. Also great when you can use decompilers (Java and .NET especially) to determine exactly how the library code you use works.

One of my favorite exercises though is to port code from one language to another. Reading the code gets you to one level of understanding. Implementing it yourself while following along gets you to another level. But translating it really gets you a level of mastery of what the code is doing.

<comment><USER11> "Also great when you can use decompilers (Java and .NET especially) to determine exactly how the library code you use works."

Decompiling .NET and earlier reading leaked windows source code have given me the revelation that the people working on these systems are regular people like you and me. Somehow I thought MS or Apple code was something special but it really wasn't.

But I agree: reading source code is good for learning and also empathy. It's way too easy to look at a code base for five minutes and declare this needs to be totally rewritten because the previous devs wrote bad code

</comment></comment><comment><USER12> I run a newsletter[0] that has a section call "Code to read" for many language.

I tried to include small/interesting repos to do weird/cool things so people can learn about it. Eg, this code: [https://github.com/evilsocket/opensnitch](https://github.com/evilsocket/opensnitch) (UI in Python but the logic is Go)

\---

[0]: [https://betterdev.link](https://betterdev.link)

</comment><comment><USER13> Decades ago I became a much much better web developer by reading the source code of web pages. Unfortunately that is rarely possible to do anymore. I really feel the web is the worse for it.

<comment><USER14> I find it surprising how often you can see a web page you like, and then go and find the repo on GitHub that built it. Definitely for open source organisations, but also often for consultancies and government agencies.

</comment></comment><comment><USER15> 1

Some people here are mentioning code reviews for their teams and how they don't enjoy that.

I would say this article is missing a fair point. I've learned a lot by just browsing Github.

For example if I'm interested in solving a Caching problem I'll skip some of the open source libraries around caching and how it's implemented.

Often times you run into a very elegant and readable solution that someone has created. And the most interesting takeaway from that is that you can get inside the persons head around API design and implementation.

When I stumble upon an awesome elegant library I always either take a mental note about it or try a small sample implementation of my own. This has helped me synthesize great APIs designs over my career. You develop your own style over time by picking and choosing your elegant solutions, and eventually you also come up with your own bright ideas through language features or loopholes that come across as exceptionally elegant.

</comment><comment><USER16> As with any good habit, it's important to reduce resistance. If you want to eat healthy, have juicy apples at hand in the fridge.

I made a conscious decision to start installing all my dependencies into a folder within my project source-code so that I can painlessly jump to the dependency's source and read it. (E.g. in the Ruby world, this means installing to "./vendor" in your project).

The effect of doing this is that it's easier for me to read the source code of a library than it is for me to leave Vim and look up the docs online. Voilà, now I'm reading more source.

<comment><USER17> I write Python mostly, and whenever I want to quickly look at what a library is doing, I just right click and do Go To Definition (what it's called in VSCode, I believe it's something similar in IntelliJ/PyCharm) and it'll jump through the library folders in my virtualenv to get to wherever the function/class is.

Then I don't have to think about dependencies as much, albeit in Python there's always a struggle with that :P

</comment></comment><comment><USER18> I remember going through the original Doom source code after it was released as open source. Although it seemed way over my head, I learned a lot about how well C code can be made to work, even for a complex game (at least at that time). I also got to appreciate John Carmack's coding style/skill even more.

</comment><comment><USER19> I synthesized a very small amount of programming ability and skill from reading randomly chosen and scattered source files of an open source Quake clone's source code (Digital Paintball 2), even though its comprehension and understanding it was beyond my capabilities at the time, especially at such a young and immature age. That tiny amount was negligible, but it still functions today as a segment of my present and current programming knowledge infrastructure. So you can safely conclude that the activity of reading "seemingly" insignificant programming source code files is a future knowledge, capability, and understanding's becoming-vital infrastructure. For what power does not have a base or foundation to plant its feet upon?

</comment><comment><USER20> This is essentially what [https://www.goodreads.com/book/show/529511.Code_Reading](https://www.goodreads.com/book/show/529511.Code_Reading) and [https://www.goodreads.com/book/show/169414.Code_Quality](https://www.goodreads.com/book/show/169414.Code_Quality) are all about...

And about the "what if i don't understand it" bit, i would suggest one goes and reads [https://news.ycombinator.com/item?id=15903771](https://news.ycombinator.com/item?id=15903771) ;-)

<comment><USER21> the reviews for those two books are really bad - do you recommend them?

</comment></comment><comment><USER22> With the Elixir language, I find myself looking at the source code of my dependencies more often, since I can actually read and understand what's going on most of the time, despite barely coding in Elixir. When I do, I can look for inspiration in other people's code.

I rarely feel this way with Kotlin or Java libs, and I'm only slowly warming up to TypeScript code.

</comment><comment><USER23> I want to read some good C code. Can anyone recommend me a project that's not too big? I'm thinking of skimming some of these core linux libraries [0]

[0] [http://linuxfromscratch.org/lfs/view/stable- systemd/chapter0...](http://linuxfromscratch.org/lfs/view/stable- systemd/chapter03/packages.html)

<comment><USER24> Late to this, & am not really a C programmer (longtime bash & java/scala etc, and studying Rust now), but for exemplary C I think of OpenBSD core utilities first (ie, not ports & packages), given their ongoing auditing for security and correctness. The code can be browsed online, or installed as part of a basic system. I found it interesting to browse starting with some smaller utilities like echo and ls.

Resources:

[https://cvsweb.openbsd.org/src/bin/](https://cvsweb.openbsd.org/src/bin/)

[https://cvsweb.openbsd.org/](https://cvsweb.openbsd.org/)

[https://github.com/openbsd](https://github.com/openbsd)

[https://www.openbsd.org/anoncvs.html](https://www.openbsd.org/anoncvs.html)

[https://www.openbsd.org/](https://www.openbsd.org/) (where I got the above links, on the left side under "Getting Source")

<comment><USER24> (just to improve my previous accuracy where I mentioned scala & rust, though it's too late to edit: ...and C++ and many other things .)

</comment></comment></comment><comment><USER25> Seeing well architected code bases is how I went from total noob to "professional". You can't know what's good code if you've never seen good code before.

There really should be a list of "good" codebases for people to look at and study. If anyone has any good backend Node.js codebase recommendations, I'd love to take a look.

<comment><USER26> It's not exactly what you're asking for, but recently I started using Nest.js and it's been a godsend. It's a very opinionated framework, which means you can skip all the bootstrapping and go straight to building the actual application.

</comment></comment><comment><USER27> I already _have_ to read source code by doing my team's reviews, and I don't enjoy it.

Maybe it's because of the responsibility (why didn't you caught this bug in the review?), but it's really difficult.

<comment><USER28> I have found that the secret (for me) is to manufacture some reason to read the code. Code is difficult to read from top to bottom unless it's done in a literate style. Instead, it is much more pleasurable if you are jumping around reading code because you want to understand something.

I find that _editing_ the code makes a big difference. Find something to chage. Refactor something. Add a tiny (even meaningless) feature. This forces you to understand what the code is doing. That, in turn, forces you to explore the code and to read it. It also gives you a gauge to judge the code against. Why did they do it that way? What if I changed it? Oh, I see why the couldn't do it like that. Yes, their solution is quite nice. That kind of thing.

I very frequently refactor PRs at work and show my refactoring to nobody. Usually it's 6 of 1 half a dozen of the other. However, it gives me an idea about how flexible the code is. Or I might start to implement the next feature that's likely to touch that code. Not TDD. Just sketching some code and seeing how easy it is.

If you've never tried it, I highly recommend it.

</comment></comment><comment><USER29> Stating the obvious. Reading source code, no matter what quality it is will make you a better engineer. Reading software architecture focused material (books, blogs...) will make you a better architect.

<comment><USER30> Some suggestions for the resources in the architecture domain?

Actually, I wouldn't mind a comprehensive guide about it. It needs not to go in the details in all of them but at least should name them.

</comment></comment><comment><USER31> Read the source of the libraries you use and the functions you want to modify or fork.</comment>


Kill a Feature Every Week - <AUTHOR> http://www.flickr.com/photos/500hats/3979394199/ <comment><AUTHOR> Dave McClure featured this slide on its own. It's one of many from his FoWA talk from October:

[http://www.slideshare.net/dmc500hats/startup-metrics-for- pir...](http://www.slideshare.net/dmc500hats/startup-metrics-for-pirates-fowa- london-oct-2009)

</comment><comment><USER2> I knew that was a Dave slide just from the colors.</comment>


Jay Z, Charles Schwab-Backed Ethereum App Opens Doors to Public - <AUTHOR> https://www.bloomberg.com/news/articles/2020-08-11/jay-z-charles-schwab-backed-ethereum-app-opens-doors-to-public <comment><USER2> Congrats to the Alchemy team for the launch!! The team has been working on this for years and it's amazing to see how much progress they've made.

</comment><comment> blaser-waffle I stopped following the alt-coin thing years ago, so apologies for my ignorance... but what does Ethereum give me that BTC, Gold, or 7.62 NATO can't?

<comment><USER3> Bitcoin is essentially built with one goal in mind which is a digitalized P2P currency. Ethereum is a platform, not only a coin.

Ethereum is intended to facilitate immutable smart contracts which has has very broad implications and use cases. We've already seen companies like Amazon, IBM, and central banks experimenting with it.

<comment><USER4> Anything other than experiments and crypto kitties?

<comment><USER5> Oh, you've got some entertaining reading ahead of you:

[https://www.wired.com/2016/06/50-million-hack-just-showed- da...](https://www.wired.com/2016/06/50-million-hack-just-showed-dao-human/)

</comment></comment></comment></comment><comment><AUTHOR> Posted the Bloomberg article before realizing that it might be paywalled for some— alternate link: [https://decrypt.co/38255/jay-z-blockchain-alchemy- public-lau...](https://decrypt.co/38255/jay-z-blockchain-alchemy-public- launch)

Super excited to see Alchemy launch publicly. I was part of the early team before leaving in December to start a new startup. If anyone has questions, I can ping someone on the team!</comment>


A Field Guide to zkSNARKs Part I: A Primer on Computation - <AUTHOR> https://write.as/knowledgeprover/zero-knowledge-proof-systems-a-primer <comment><USER2> I wanted to read this blog post but it seems uncertain about its intended audience. It goes over a whole bunch of basics like turing machines, circuits, decidable languages, NP, etc. - but too briefly for people unfamiliar with those concepts to understand, and not briefly enough to keep the attention of everyone else. Then we jump to using something called the Hadamard component- wise product which is not defined. I'm sure there's a good post here but it could use trimming in some places and expansion in others.

<comment><USER3> > Then we jump to using something called the Hadamard component-wise product > which is not defined.

Aside from the 'Hadamard', which is just the name of a mathematician who used it, it's pretty self documenting, no? Multiply two vectors of the same size by multiplying corresponding components. (This can be viewed as an intermediate, coordinate-dependent step in the computation of the coordinate-independent dot product—although that doesn't seem to be how it's used here.)

</comment></comment><comment><USER4> Didn't read the entire post but I think the characterization of PCP's is a bit off - some SNARK constructions and STARKs both use PCP's - using a linear PCP vs a PCP doesn't impact transparency or proof size, that's more a function of the commitment scheme

<comment> Ar-Curunir Yeah, it's a relatively good high level post about SNARKs, but there's some confusion about the role of PCPs in SNARKs.

(all SNARKs have some probabilistic checking at the core; that's how you get succinctness)

<comment><AUTHOR> Author here, I did gloss over PCPs certainly, and agree that SNARKs also use PCPs and I might have made the terrible conclusion about proof sizes. Will push an update soon ! thanks for taking the time.</comment></comment></comment>


Verizon's great FiOS offer to me: Pay $50 extra for slower Internet - <AUTHOR> https://arstechnica.com/information-technology/2020/01/verizons-great-fios-offer-to-me-pay-50-extra-for-slower-internet/ <comment><USER2> Ajit Pai's FCC is among the worst possible outcomes for competition in telecommunications. This won't end until we have a president and FCC chairman who aren't literally trying to remove any semblances of fairness in the market.

My blood boils just thinking about the fucking word "unlimited"

There are folks who even defend it "YOU CANNOT USE A TERABYTE" oh bullshit, baby, I can destroy a terabyte. I bet everyone else does too but instead of labeling it "10TB of TV watching" they label it "cable package," and fuck you over more. It's like text messaging back in the day, it was literally _FREE_ for carriers to implement, and per message data rates were like 6000 times that of a normal 2G packet.

It'd be like your electricity company wanting a cut from the fucking appliance manufacturers you already paid in order to power them "well we have a lot of Frigidaire on our grid and that causes stress... when you add them up its 30% of our grid that seems like an undue burden" Oh, no shit? I paid for something (power) and you having to provide it produces an undue burden? The only undue burden is on me having to tolerate someone thinking I'm so fucking stupid as to believe your lies but! Unfortunately, for me, there are a huge bunch of people who are that stupid... and believe it.

<comment><USER3> > it was literally _FREE_ for carriers to implement, and per message data > rates were like 6000 times that of a normal 2G packet

Similar story to mobile data roaming. It's crazy expensive... until the EU says that's a joke and they must stop. Now you get free data roaming across EU without higher plan prices and somehow operators can still compete on those prices.

<comment><USER4> Because of the ridiculous handling of spectrum auctions. In Finland all auction profits are invested in a single shared network from which every telecom operator provides services from.

The rest of Europe has made the decision to leave the network up to the Telcos while using the funds of the auction as a tax income stream for government. This means a significant increased operating costs for every operator for which the end consumer pays the price. Both in higher subscription costs and less competition.

</comment></comment></comment><comment><USER5> Internet in many areas are either government sanctioned monopolies or duopolies. Furthermore these ISPs (and cable TV) companies have had legislation passed in many states limiting other internet alternatives like free wifi, even in areas they don't serve.

[https://broadbandnow.com/report/municipal-broadband- roadbloc...](https://broadbandnow.com/report/municipal-broadband-roadblocks/)

</comment><comment><USER6> That write-up sounds just like the games that Comcast have been playing for some time. Could it be they learned this from Comcast?

</comment><comment><USER7> Verizon doesn't give a fuck. They signed a contract to build out a fiber network in NYC, didn't do it, and then told the city to go fuck itself. When a corporation reaches a certain size there is virtually nothing that any individual person, business, city government, or even state government can do.

It's not just Verizon. Spectrum will offer 200mbps at $45/month for 24 months then crank it up to $80/month thereafter. And if you want the fastest speeds, their claimed 940mbps (lol), you must use their modem. And you'll be lucky to get 33% of the speed that you pay for in the best of circumstances.

And if you don't like Spectrum well how about you go fuck yourself? Even in Manhattan, one of the most densely populated areas in the world, there are huge areas where the internet option is Spectrum or DSL.

</comment><comment><USER8> Verizon is in the process of upgrading from BPON to GPON. Getting the base speed upgrade to 100 MB/s requires using the new network (same fibre, different ONT). I didn't get the upgrade until I moved.

At my previous residence I had Comcast, Verizon and RCN all available. Rotating through them kept my prices in check for many years. Now I have Verizon and Comcast available but I am not sure I can handle the stench of Comcast. I look forward to testing the unbundled pricing when they make it available to existing customers.

</comment><comment><USER9> Summary: Verizon offering better package to new customers only. Existing customers do not qualify.

</comment><comment><USER10> Nice.

This reminds me of when I decided to drop from 2 cars down to 1 and my insurance company was going to _raise_ my rates, which made zero sense (I lost the multi car discount).

I'm guessing this is another case of:

> Don't attribute to malice that which can be explained through incompetence.

Maybe someone intentionally made it harder for existing customers, but I'm guessing it was an accident.</comment>


Ad Blocking: A Primer - <AUTHOR> http://techcrunch.com/2016/01/16/ad-blocking-a-primer/ <comment><USER2> Couple of assertions made that I have trouble with:

      > There are only two methods to compensate content producers:
      > pay directly or get free content in exchange for ads.

Other than the assumption all content producers need financial compensation, there are evidently alternative methods out there.

The BBC and ABC (of the AU, not the US variety) are two examples. They are paid / subsidised by the respective populations. Users typically aren't subject to advertisements - low quality or otherwise, and which probably contributes to why the services are perceived as high value.

and:

      > Advertising is a great model, but what is fundamentally
      > wrong today is the implementation.

While the implementation is doubtless wrong, I'm unsure how we could demonstrate that 'advertising is a great model'.

<comment><AUTHOR> (author here)

So in terms of compensation I would argue that your example is just direct payment. Instead of attention-via-ads proxy, you're paying the publisher directly but in this case it's state owned. Even if it wasn't and was just funded by donations or taxes or whatever, it's still a direct transfer of currency from you as an end user to the content owner/producer.

The internet is a perfect demonstration of how advertising is a great model. It funds a lot of content and services (of tremendous value like Google, Facebook, etc) without costing the end user anything. Many people can only build the companies they do because advertising is viable, whether they're a media company or some other business.

It's also fast, anonymous, and egalitarian. Your wealth doesn't determine your access and there's no loss/refund issue if you consume content that you feel isn't valuable. I can't think of any other that model that comes close to that much freedom and flexibility.

<comment><USER3> > It's also fast, anonymous, and egalitarian

It's not egalitarian. People who are tech savvy enough to use ad blockers are subsidised by the less technology literate. Those people are also the ones most likely to fall for the malware adverts which make up a huge proportion of online ads. Just about every software download site is full of ads with fake download buttons. Google searches for software often return ads leading to malware as the top result. That's all very lucrative for the scammers and ad networks and sites, but it's not egalitarian. It's a tax on ignorance and inexperience.

A lot of the people enjoying 'free content' on the internet are doing so only because that content was indirectly paid for by a 70 year old with a computer full of malware.

<comment><AUTHOR> These are valid concerns but it's conflating the issues between advertising structure and the reality of the implementation as discussed.

The advertising _model_ is egalitarian. Everyone, regardless of who they are, can see the same content as it's indirectly subsidized by advertising.

However as you've described, there are certain real-life issues. Users who block ads are at fault for, well, blocking ads and not taking part in the value exchange, skewing the business economics. Ad networks that run bad scammy ads are at fault for a lack of standards. Advertisers who spread malware are at fault for being criminals who want to infect users. These are all issues we face and are similar to any other industry where the ideal mechanics are affected by bad actors.

I absolutely agree that this is mainly brought about by the lack of standards, regulation and enforcement that has led to such a consumer backlash. However I dont believe that this is the end of advertising but rather a very good opportunity to finally force the change that's been sorely overdue.

</comment></comment></comment></comment><comment><USER4> So let's see: we have Mani Gandham submitting an article to Hacker News that is an article he wrote on Techcrunch which is a bunch of fluff and throws in a link to his ad company instinctive at the end.

I would say this is a perfect example of the future of advertising...

<comment><AUTHOR> Yes, as a startup founder I couldn't resist. 2 sentences in 1700+ words isn't so bad is it?

Everything other than that paragraph is objective and educational... what part do you think is "fluff"? If you already knew all of it then that's understandable, but I do sincerely hope it helps clear up some of the information about ad blocking.

<comment><USER5> Wow, you are actually justifying this? HN should remove this story submission... I didn't realize people could even submit their own articles let alone their own ads here.

<comment><AUTHOR> I honestly don't understand what you think I'm justifying. I submitted it as a piece of valid content and it was voted up by the community like any other story. I don't see how the submitter has any bearing on the content itself.

As for the article itself, it's a well-written, factual, detailed piece on ad- blocking. My affiliation as a guest writer is at the top of the page in the byline. The 2 sentences can be seen as promotional perhaps but they have no effect on the rest of the text and are actually on-topic in the section they're in where I'm discussing better approaches to the current status quo.

I submitted this to TechCrunch and it passed all their reviews. I did bring up the fact that I included my company in the article but they had no objections and I defer to their judgement as the owning publication. Maybe the byline should be bigger but that's out of my control.

Regardless, thanks for the feedback. Can you let me know how it would've changed your perception if I didn't include those 2 lines?

EDIT: Judging by the downvotes I'm saddened by how many HN readers can't seem to let content stand on it's own merits.

</comment></comment></comment></comment><comment><USER6> The article hypothesizes that analytics services will probably move their tracking code from client-side JavaScript to the server-side, so that the publisher's server will forward the analytics data to the analytics server.

There is an interesting irony in this: By using client-side blocking more widely, we (the users) force evolution of analytics towards methods that are less introspectable and less blockable from our side.

<comment><USER7> > The article hypothesizes that analytics services will probably move their > tracking code from client-side JavaScript to the server-side,

From talking to several companies that specialize in this (via a friend privately, and by interviewing at some) that is already happening. Basically using all tricks you heard from [https://panopticlick.eff.org/](https://panopticlick.eff.org/) are used, fonts, canvas, webgl fingerprints -- everything.

<comment><AUTHOR> That would be more related to device fingerprinting rather than just server- side analytics. You would still need client-side javascript to accomplish most of that, but yes it's also on the rise due to the (in my view somewhat unfair) collapse of the 3rd party browser cookie.

</comment></comment></comment><comment><USER8>
        > Why would someone use an ad blocker?

Isn't this like asking why someone would fast-forward through commercials, or why they would use a spam filter?

The only reason I use an ad blocker is because I don't like being blasted with words and images designed to get me to do or buy shit that I don't want.

<comment><AUTHOR> There are several reasons that apply to different people and it doesn't hurt to be aware of them. It might seem basic or obvious to you but the article was meant to be a detailed introduction to ad blocking.

</comment></comment><comment><USER9> This is a good introduction to the subject but misses what I think is going to be the next big push against advertisers: network blockers.

You can see proof of concept projects like the Raspberry PiHole [1] now, but I think are going to explode in popularity with any organization that's already doing content filtering (government agencies, corporations and universities) as it's such a small technological step and the justification of "it will stop malware and save on bandwidth" is likely to carry the day.

While I think the HN crowd is generally in favor of ad blockers, it's interesting to note that the next thing being deeply affected is any kind of analytics service (even first party).

1 - [https://github.com/jacobsalmela/pi- hole](https://github.com/jacobsalmela/pi-hole)

<comment><AUTHOR> I covered this briefly when mentioning OS and router level blocking for the entire network, as well as carrier level blocking. There are only so many scenarios and technical details I can include in a single article for techcrunch.

I do think it'll get more filtered at the network level for security reasons at certain organizations but then there's the issue of encrypted traffic and embedded sponsored content.

<comment><USER10> You mention in the article that:

> Ads in native mobile and desktop apps are mostly immune as they have no > extensions

But using a "network blocker", be it a PiHole, Privoxy, or a simple HOSTS file, ads and tracking services are blocked at the network level and no native or desktop app is immune to this effect. I believe that's what michaelbuckbee is referring to. So the whole "Where ad blocking doesn't work" section is in need of more clarification, as there is almost no place where an ad blocking system won't work in one way or another.

<comment><AUTHOR> Yea you're right. As mentioned, just not enough space to cover all the details.

However embedded ad content will be hard to extricate if it comes pre-rendered by the server rather than using client requests.

<comment><USER10> I would say hard but not impossible. Privoxy can strip any part of html content at will with its filter files[1]. It works just like AdBlock Plus rules, but on network level.

[1] [http://www.privoxy.org/user-manual/filter- file.html](http://www.privoxy.org/user-manual/filter-file.html)

<comment><AUTHOR> Nothing is impossible...

But there are diminishing results. At this point, the people doing this are in the same bucket as those just using text-based browsers. This goes back to the filtering/censorship argument if it's deployed at a big enough scope (like a carrier) so it'll likely be individuals or small groups doing this on their private networks.

<comment><USER10> Let's take one step back to the first point: we have shown you above that the whole "Where ad blocking doesn't work" section does not make any sense, as you can kill any kind of ads on the network-wide level.

Now you are claiming that people using PiHole, Privoxy and the likes are merely "Lynx" users, as if that would discredit the original point, or maybe it will water-down the consequences.

You are also severely underestimating the power of individuals and small groups, see: the initial surge of Firefox install base, anti SOPA and PIPA protests, Ubuntu, and (ironically) the early days of TechCrunch.

There is nothing wrong with this article, as what you have written about is "Browser ad blockers". Hopefully you can write a second article and explain the fruitlessness of trying to play a cat and mouse game with network-wide ad blockers.

<comment><AUTHOR> I think there might be some misunderstanding here so I'll try to be more specific:

I did mention network level blocking in the article but just didn't have enough space to cover all the details regarding how it works in apps. This is why I used the word "mostly" for those apps. Even network blocks can be overcome though when using closed platform apps like Apple News which runs it's own iAds over the same secure backend. However, thanks for the feedback, I'll definitely strive to make things clearer in future content.

As far as network blocking, my comments were regarding 2 issues: how widespread this type of blocking is and how in-depth the blocking will occur.

I do agree that it will increase in usage but as soon as it gets to any major sized organization, the issues of net neutrality/censorship might come up which is why I think it will remain used by individuals with home networks and small businesses rather than large enterprises and network carriers. Considering the use of adblockers is almost perfectly correlated to the ease of installation, I just don't see widespread adoption here of router/network level blocking given the expertise and effort required. Even if the entire HN audience uses it, that's negligible part of the entire online audience.

In regards to the blocking depth, network blocking still works the same as most blocking does now, by using domain/dns block lists. This opens up the possibility for embedded advertising content to come through and while I understand that HTML can be parsed and edited, it's a far more challenging to implement and maintain that kind of filtering reliably. Domain block lists also remove the vast majority of ads so going further in page processing is what I meant as very diminishing returns for the amount of effort involved.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> > Mani Gandham is co-founder and CEO of Instinctive.

The entire post is a native ad.

<comment><AUTHOR> Not really, it's a contributed guest post that I've made as objective and informative as I could.

I see now that perhaps those 2 sentences out of the entire article might be out of place but I couldn't resist. I think the rest of the text stands on it's own and I hope it helps provide readers with more insight into the whole ad blocking situation.

<comment><USER12> >>Not really, it's a contributed guest post that I've made as objective and informative as I could.

There's no rule that says native ads can't be informational.

<comment><AUTHOR> Out of curiosity - if that paragraph wasn't there then would you still consider it a native ad?

</comment></comment></comment></comment><comment><USER13> I'm surprised that this also doesn't cover spoofing, which I'd expect to see grow more, but it's probably harder to detect if "real" (read: seen in the wild) browser settings are used, especially if done on the http implementation/network level.

<comment><AUTHOR> Do you mean browser/user-agent spoofing? I can understand how it might help to maintain some privacy but unsure how it blocks ads specifically?

For most ad networks this also starts to look more like fraudulent bot traffic which is another major problem in the industry. Several network security providers do have analysis techniques to figure out normal traffic patterns and http headers and determine if a user is spoofing/hiding.

<comment><USER13> Yes, but also canvas, accepted file types, etc. I was also thinking that blocking ads would also cover how content such ads are delivered as well since advertisers could still end up wasting a lot of money?

<comment><AUTHOR> I'm still unsure by what you mean. This is more along the lines of user tracking rather than ad blocking. Spoofing or preventing user tracking won't stop ads by itself, it'll just result in more generic ads that might not be relevant to you.

<comment><USER13> > _it 'll just result in more generic ads that might not be relevant to you._

I guess I'm just coming from the perspective that wasting peoples time with probably shitty ads is where we are now in advertising, and if we can do better in making the overall experience better while also not wasting time and resources, companies might perform better. At least from my experience with getting people to download apps and pay a subscription online (not through the app store) for access to more of the content they want.</comment></comment></comment></comment></comment>


Apple's New Map: Midwest and Western U.S. - <AUTHOR> https://www.justinobeirne.com/new-apple-maps-midwest-west <comment><USER2> As a long time rural:

They need to be smarter about how small of a road they show at a given zoom level, maybe based on density. If I've gotta zoom in to the point that I can't see the next town over before I can see the road that goes there your map is kinda useless.

</comment><comment><USER3> I really love these posts because it shows methods of critical thinking about things that aren't strictly lines of code -- and ways of mentally deconstructing things. The 1st and 2nd order steps in reverse engineering processes, comparisons at different levels, and so on must take dozens of hours per post and a huge archive of screenshots from select areas preselected months ago for later comparison.

I also found the general "greening" of the map at larger scales interesting -- something that seems to be a drop in detail -- while the green spaces at smaller scales seem to be more specifically defined (and the new maps seem to have more of them).

</comment><comment><USER4> Ask HN:

Do Apple Maps, Google Maps, Yelp, etc scrap local business listings? Local search still remains very frustrating. I'm baffled how stores, dr offices, public parks which I know exist don't appear in results. If I was doing the work, I imagine I'd start with every known address and every known business, try to pair them up, and then triage the remainder. Classic data quality efforts. No? I recall an OpenMaps presentation on measuring data quality maturity. Much like bug curves, where rate of changes is used to estimate completeness (coverage). Commercial map vendors do the same, right?

More selfishly, I'm always looking for places to run with my dog. I use a combo of Apple Maps, Google Maps, and AllTrails. I have no idea how local governments account for open spaces, but I imagine they're all in a GIS somewhere, and that Apple & Google have data feeds.

Also local data search (on mobile), if there's a way to geofence results, as in only show shit within my timezone, or even within driving distance, I haven't stumbled across that feature. Driving thru Phoenix, I don't want listings from Indiana, ffs.

<comment><USER5> Map licensing is very tricky. Typically "open" government mapping data is incompatible with both openstreetmap and free Google/apple maps.

Also, governments tend to be bad at mapping things they own. The guy who mows the grass knows where it is, so they don't spend money to make a map of it.

<comment><USER6> US states and counties often have extensive data that is available under what is basically a disclaimer. They don't really analyze or assert copyright. Google sucks that data up for sure. They buy data from some cities and counties too.

It's hard to push through imports in OpenStreetMap when all you have is a disclaimer, but the data licenses are probably mostly compatible (public records laws requiring the release and things like that).

</comment></comment></comment><comment><USER7> What happened with that chunk of land in Lake Michigan that appeared out of nowhere on the new map?

<comment><USER8> Insider here. Apple pulls in map data from all kinds of sources. Some of these sources exist in alternate timelines. Apple maps will be a lot more useful when the apple timegate finally launches in 2038.

<comment><USER9> This comment is too good for a mere upvote.

<comment><USER10> Don't worry, Titor will upvote on his next pass through.

</comment></comment></comment></comment><comment><USER11> How is that the Midwest without including MN, WI, IA, and MO?

<comment><USER12> The headline got this Nebraskan's hopes up. The term "Midwest" should be retired.

<comment><USER13> I'm from Michigan and I prefer "Great Lakes region" when talking about the area described in this post.

<comment><USER14> But the problem there is that the "Great Lakes region" typically includes Wisconsin, Minnesota, and Michigan's UP. And none of those were included in the update.

So it's not really any better than describing the area as "parts of the Midwest".

</comment></comment></comment></comment><comment><USER15> I'm not sure about the usefulness of their coloring scheme as there seems to be far too much green that isn't a park or public space. For example, I looked at my neighborhood and they have all the area around the on and off ramps of the local bypass colored green. Technically, yes, that area is all grass but I don't think coloring it green is useful.

</comment><comment><USER16> I'm curious how these maps are made. Are they done by hand with careful planning beforehand to get the "before" shots? Or is there some API that you can call?

</comment><comment><USER17> Looking at the changes around Midewin National Tall Grass Prairie... I don't think this is an improvement. AFACT the boundaries between federal, forest preserve district( which has different usage restrictions), and private land is now totally indecipherable.

<comment><USER18> Well, to be fair, that data was probably was only unintentionally there before (and maybe not actually labeled?).

</comment></comment><comment><USER19> Is there a normal browser website for Apple maps, or plans for one? I often use Google Maps website first, then "Send directions" to my phone. If there's no Apple maps website, then I can't do this.

<comment><USER20> You can access it through DuckDuckGo.

<comment><USER21> Link: [https://duckduckgo.com/?q=hn&iaxm=maps&ia=web](https://duckduckgo.com/?q=hn&iaxm=maps&ia=web)

</comment></comment></comment><comment><USER22> What is going on with Michigan's Upper Peninsula? Did anyone at Apple look up there and notice that they paved Lake Michigan?

<comment><USER23> Maybe there was ice cover during the relevant satellite passes? But I'm not sure why they wouldn't also have issues with Superior too then. (And I'd expect summer passes to be required for things like grass cover, so it's not like they don't look at that)

</comment></comment><comment><USER24> I've long had a mild streak of map-geekery in me. But I never really appreciated cartography, especially computer cartography, until a couple of years ago when I was put in charge of a mapping project.

Bottom line: _maps are hard!_

Especially when it comes to colors. And even more so when you apply those colors across a large and diverse geographic area.

Even harder than rendering digital maps, though, is searching digital maps.

I get frustrated with Google and Apple and all the other maps like everyone else. But I never appreciated how hard these things are until I had to wrap my own brain around it.

</comment><comment><USER25> I love these articles, really insightful into what goes into making a map.

<comment><USER26> This blog is a treasure of well-written, highly curated articles. The author is very details focused. I find myself reading all of it, while I haven't been a map enthusiast at all.

</comment></comment><comment><USER27> Very well written. It was odd how the article mentioned an improved rendering of Chicago's second largest building, and hyperlinked to the wiki page about the tallest buildings in chicago (spoiler: it's the trump tower). Why not just refer to it by its common and well known name?

<comment><USER28> Would anyone who doesn't live in Chicago know there was another Trump Tower there? I for one thought all but the NY one had their names changed because the licensees no longer wanted to be associated with such a toxic brand.

<comment><USER29> It's the 7th tallest building in the US. It's not an obscure building in the middle of nowhere.

</comment></comment></comment><comment><USER30> I find the animated images that constantly flip back and forth between "old" and "new" images distracting and make it very difficult to understand the changes.

If the author added a button to allow the user to toggle the two images I think users would be appreciative.

</comment><comment><USER31> Interesting that they speculated that it was an algorithm that was trained by comparing a manually drawn map with imagery. US cities are all fairly uniform as they are pretty much all based on a grid, but they vary in colour significantly from Oregon to Arizona. I wonder what level of granularity they would need to go to in Europe? Is London different enough from Paris that an algorithm trained on Paris would not work London? In Britain you would need to recognise different cultural structures that you wouldn't necessarily get in Paris, one example is many British parks have a raised up circular bandstand for a local brass band. So they probably need to recruit quite specific people for each locality.

<comment><USER32> Pray you never visit Boston.

</comment></comment><comment><USER33> Questions,

Do Apple now owns the Mapping Data, along with Live street views? Where previously Apple were just buying Mapping Data from multiple sources and glue them together.

<comment><USER34> I believe this is the case, yes. Apple still has a licensing deal with Yelp, but I'm not sure if that includes business locations.

Apple has put significant effort into gathering the data for this new map (4+ years).

I'm sure they still include data from other sources as well, that they may not fully own (like satellite imagery).

<comment><USER35> Also OpenStreetMap and actively improving OSM data around the world [https://github.com/osmlab/appledata/issues/154](https://github.com/osmlab/appledata/issues/154)

</comment></comment></comment><comment><USER36> Were stop signs and stoplights supposed to be part of this latest update? If so, how do you get the maps app to show them?

</comment><comment><USER37> I found it surprising that Hawaii was chosen for the first expansion. Maybe someone looking for an excuse to take a trip?

<comment><USER38> Until recently they were using old TomTom data for Hawaii. Really old crappy data c. 2006-2011. Hawaii was done early because they wanted their own data.

</comment></comment><comment><USER39> So, what's next? Central for land area or Southeast for population?

</comment><comment><USER40> Still fails the Malta to Minturn benchmark over Tennesse Pass along US HWY 24 in Colorado. Needs to have Mitchell, Pando, Red Cliff, Gilman visible at the same time at the right places also. Does not. Busted. Go home.

<comment><USER41> Report it! [https://support.apple.com/en- us/HT203080](https://support.apple.com/en-us/HT203080)

<comment><USER40> I don't live there, why should i? This one is now burnt as a benchmark, but i have others, more relevant to my location. I've only chosen this example because it was the one where i noticed how badly common online maps differ from what i'm used to from old paper maps, while following up some old railroad history in the Rockies. With the exception of Bing Maps they create some sort of virtual reality, where some places either don't even show up as separately named area, or the labels are wrong, up to some miles away. Not always, but often. This makes them unusable, or at least annoying to use. By that i mean a general overview of where is what related to its neighbours. As it is now, i get streets, POIs , Businesses, whatever else, for themselves, often missing the right name of the area, be it suburbs or other (sometimes historic) places like i'd explore some blank spots. Which defies the meaning of map, i think. Of course, if all you need is to get from point A to B via maybe C with total disregard for flyover country, industrial wasteland, monotonous suburbia while listening to some audiobook, then this is unimportant.

Edit: Warping spatial perception is what i mean!

<comment><USER41> Why should you correct the map if you don't live there? Because you seem to use the map and think it should be more accurate. I don't see why where you live is relevant.

<comment><USER40> Sorry, for being unclear. I wrote that i used this as a benchmark/test to derive the general quality of the map provider. Which means if i see that single example as wrong/insufficient, chances are the rest is too, because whatever process(es) produces the maps is somehow skewed. What is the benefit of correcting that single thing when the rest of the data remains skewed?</comment></comment></comment></comment></comment>


The Day My Daughter Discovered I'm White - <AUTHOR> https://medium.com/@cwinterbg/the-day-my-daughter-discovered-i-m-white-8c2e41f35b14

<comment><USER2> _" Racism isn't born, folks, it's taught."_

Not necessarily, a person can jump to wrong conclusions on his/her own, e.g. by watching a number of clips like this one: [http://www.youtube.com/watch?v=i_kF4zLNKio](http://www.youtube.com/watch?v=i_kF4zLNKio)

<comment><USER3> I think you're underestimating how much societal support is required for those jumps to conclusions to be made. I'm reminded of the xkcd comic "you suck at math"/"girls suck at math".</comment></comment>


Not Pixel Perfect Yet - <AUTHOR> http://milancermak.posterous.com/not-pixel-perfect-yet <comment><USER2> Interesting idea ... unfortunately their FB page is in Czech and I can't read their critiques of other designs.

<comment><USER3> Google Translate can give you at least basic idea. (Though it fails at quite interesting places.)

I don't know, FB page is a bad format for this -- it's flat and limited discussion, with artists making just few remarks about the overall design. And rating just a screenshot of the site… I guess that the idea is interesting, but the execution… isn't that great.

(Ah, I'm wrong as usual. Sorry. They are making much more elaborate critics at different pages and notes. That FB format is really bad.)

<comment><AUTHOR> It was built as a FB page because it was easy and fast to create. They know it is not the best solution, but does it works for now.</comment></comment></comment>


The ICO raising and fall in 4 minutes - <AUTHOR> https://www.youtube.com/watch?v=5-N1XG3Nslc <comment><AUTHOR> The Initial Coin Offering (ICO) was a tremendous event in Crypto and Finance world. This bar chart race show the raised money from the most successful ICO along the time.</comment>


Ask HN: What's stopping you from turning your idea/project into a business? - <AUTHOR> Curious to know some of the reasons preventing others from turning their ideas/projects into businesses. I'm not at a point where I'm trying to make an actual attempt (yet), but I think about it constantly, I know it's gonna happen one day - and that scare the $h!t out of me.
So I'll go first:
- I'm too broke - I'm too young - I'm not skilled enough to do it alone - I don't have a "network" to help - I don't even know anyone who's started a business - I'm a 'fraidy cat when it comes to spending my savings on what could potentially be a pipe dream - I'll probably fail <comment><USER2> Mental energy to work on it after 40-50 hours of work stress.</comment>


HTC Incredible vs. Nexus One - <AUTHOR> http://whalesalad.com/blog/incredible-vs-nexus-one/

<comment><USER2> I really liked this sentence: "It feels a lot like desktop Linux: unpolished, but covered in gloss."

<comment><USER3> When my friends try to get me to switch to Ubuntu I always have a hard time describing why I dont wanto. It's hard to pinpoint when looking at all the individual components of the Ubuntu desktop but this sentence really sums it up well.

On the flip side, I recently tested a full restart of 10.04 from Ubuntu desktop to Ubuntu desktop. took exactly 14 seconds. Incredible.

</comment></comment><comment><USER4> I'm definitely not a fan of HTC's Sense UI. I'd read glowing reviews about it (Engadget, Android Central) so when I went to try out the Incredible myself I was quite shocked at how much I was put off by Sense. Some of their changes are good - I like the phone button at the bottom of the home screen, but they've gone and messed with the UI of practically every program on the device - and I'm not a fan of their "improvements". From the dialer to the car panel to the clock - the Nexus One's UI is, IMHO, much better looking and functioning.

The frustrating thing is that I'm actually seriously considering getting the device, as Google decided to pull the Verizon Nexus One. But I just know that I won't be as happy with it as I would have been with the Nexus One.

<comment><USER5> I was under the impression that you could "turn off" Sense and run the native GUI.

<comment><USER4> It's possible to disable Sense on older HTC phones (like the Eris), but not on the Incredible. Apparently HTC even stripped out the files needed to support the stock UI from the ROM.

</comment></comment></comment><comment><USER6> Another factor that's important to me is that the Nexus One is virtually guaranteed to get Android updates as soon as they're released, while with the Incredible you'll be waiting on Verizon and HTC.

<comment><USER7> Yeah, that was huge for me in the list of deciding factors. In my last paragraph I discuss all of them, and that was definitely important. It took Verizon forever to get 2.1 on the Droid, and they left all their other devices out in the cold.

That's the sad thing about wireless companies... they just don't care. They're focused on gaining customers and do that with new devices, not updates to old ones.

Google is independent from all of that, and they actually seem to care about their users :)

</comment></comment><comment><USER8> It's funny, I had the exact opposite reaction. The Sense UI feels much more polished and mature than the default Android UI which feels utilitarian and raw.

Some elements of the Sense UI I prefer:

Keyboard

FriendStream

Weather widget

Favorites widget

Exchange Calendar (!)

</comment><comment><USER9> I have a nit to pick with the situation (not the article).

He likes the phone, but he doesn't like the Android "distro" on it. Why can't this be swapped?

That would be basically advantage #1 of open source, I can understand if HTC doesn't want to let everyone else use their Sense UI onto other phones if it is a proprietary advantage, but shouldn't you be allowed to run the vanilla Android on any Android phone? Or am I missing something here?

<comment><USER10> A good point that I'd be interested in hearing some advice about. It goes without saying that the OS on a phone is tailored to be small and compatible with the hardware present, but what about the UI? Anybody have experience hacking their mobile UIs?

</comment></comment><comment><USER11> Clearly HTC has once again completely screwed up the UX that the OS designers have worked hard to create. I'm glad they didn't decide to do it with the G1 that's been in my pocket for the last 18 months. I just wish the physical keyboard version of the Nexus One would come out so I could replace this very slow G1.

</comment><comment><USER12> Good review. I personally prefer the HTC keyboard. Whereas I couldn't stand typing on the Android 2.1 stock keyboard, the HTC_IME keyboard pictured is great.

</comment><comment><USER13> Interesting article. Has anybody switched from an iPhone to a HTC Incredible? What's the experience been like?

<comment><USER14> I switched to the Nexus One (the Incredible's brother) and it's been great. Like multitasking (which iPhone users now agree is a good thing), openness and flexibility aren't just throw-around buzzwords, they actually add a lot to the user-experience. Sharing pics from the camera, having your contacts automatically kept in-sync, having widgets on the homescreen, using Locale to automatically manage your settings etc etc.

Interestingly, there now seem to be almost as many android users at the office as there are iphone users, which is notable as almost everyone has has an iphone.</comment></comment>


Yokadi: CLI sqlite powered todo list - <AUTHOR> https://github.com/agateau/yokadi <comment><USER2> For quick, brief, simple todo lists in the CLI, I prefer devtodo.[1] It's uses a plain text file as its data store, and is as simple as you can possibly get.

For more complicated things I prefer taskwarrior[2] or org-mode.[3]

[1] - [http://swapoff.org/DevTodo](http://swapoff.org/DevTodo)

[2] - [http://taskwarrior.org](http://taskwarrior.org)

[3] - [http://www.orgmode.org](http://www.orgmode.org)

</comment><comment><USER3> Todo lists stored in a database seem like a bad idea because it becomes much more difficult to share and sync it between computers. I wrote a todo list manager in ruby ([https://github.com/minhajuddin/taskr)[1]](https://github.com/minhajuddin/taskr\)\[1\]) back in the day and used plain text files to store the data and timestamps for ids and Dropbox to sync it between computers. It works really nicely. Also, every person's workflow is different so getting your own todo list manager or tweaking an existing one seems like a good idea.

[1] [https://github.com/minhajuddin/taskr](https://github.com/minhajuddin/taskr)

<comment><USER4> This is a great point.

I do love sqlite, it really is awesome, but you had better _need_ what it provides, since you are taking a 50x performance hit versus simply dumping an object tree to a binary file.

If anyone is interested, I could try and dig up my notes from switching from sqlite to NSArchive.

<comment><USER5> I would be interested in those notes.

<comment><USER4> Sorry, I simply haven't been able to find them. However, the upshot was that in my FemCal app, loading several months of entered fertility cycles went from 100's-1000's of milliseconds to just a few 100's.

The overall speedup when loading was about 50x, when using NSArchive versus sqlite3. Neither implementation was or has been optimized, though I did try to write the sqlite3 code as efficiently as possible, since it was clearly a source of slowness from day 1.</comment></comment></comment></comment>


Yeoman at your service - A getting started guide - <AUTHOR> http://www.adobe.com/devnet/html5/articles/yeoman-at-your-service.html

<comment><USER2> I can't be the only person who hates install instructions like 'curl -L some.host|bash'. Not to mention that the yeoman install script happily installs homebrew using 'curl -k ... |ruby'. No thanks.

<comment><USER3> If you don't trust such methods of installation, you don't have to use them. Also, you can always look at the source of the script if you don't trust said method and choose for if you want to install by hand, use the script, or just don't use the tool at all. You really can't fault Yeoman because they want to make it easy and painless to install their tool.

For the people that want to check out the script:

<https://raw.github.com/yeoman/yeoman/master/setup/install.sh>

</comment></comment><comment><USER4> It's sort of a bummer that so many people re-write quickstart documentation like it's new or helpful.

<comment><USER5> Hey tborg...

I've been on the private beta and working on that article for over a month in conjunction with Addy and Paul from the Yeoman team. I contributed numerous tickets and issues to the repository and assisted in testing countless times. Just so you don't think I whipped it out really quickly.</comment></comment>


How we work – My team at JetBrains - <AUTHOR> http://hadihariri.com/2014/04/04/how-we-work/

<comment><USER2> Thanks for this. Today I was complimenting JetBrains while introducing a co- worker to dotPeek. I appreciate the insight into what makes your team tick.</comment>


Zoom allowed a sign-up without verifying their email - <AUTHOR> https://twitter.com/kentonvarda/status/1261386443940868096 <comment><USER2> Just trying to wear my skeptic hat here—how do we know this actually happened? The user didn't even provide a screenshot—not that a screenshot would necessarily be meaningful either.

Are there any other reports of this happening?

<comment><USER3> The user is me. Yes, it happened. In fact, it happens all the damned time. Lots and lots of web services don't bother verifying e-mail addresses because they figure they'll lose conversions. I complain on Twitter every time this happens to me, because it pisses me off -- read the thread for links to some other examples.

The goal of my complaining is not to pile on Zoom but rather to raise awareness that e-mail verification is not a thing that you can just skip. It's important and -- in my humble opinion -- every service should strictly verify all e-mails before letting users use their account in any way.

I don't know why I'd make this up. Why would I rant about a problem that didn't actually happen?

I also don't know why this was posted on HN. This is just some guy ranting on Twitter, not news.

<comment><AUTHOR> I posted this here solely to raise awareness. Definitely not to shame Zoom.

</comment></comment></comment><comment><USER4> There are tons of companies (apps) that let you do this. It is the tradeoff between "bothering" your customers with verification process of going to their emails and clicking another link vs. letting them use your app right away. It only hurts customers when they sign up using emails that they don't own (unless they make a typo) so why would the company care for what happens to their accounts.

<comment><USER3> Yes, that's the thought process.

Unfortunately, the reality is that people sign up for things with accidentally or intentionally wrong e-mail addresses all the time. And it doesn't just harm those people, but also the people who have e-mail addresses that, for whatever reason, are commonly used in error (that's me). In this case, I cannot use Zoom under my real e-mail address because someone erroneously claimed that address and Zoom won't let me disassociate it with that organization.

This is NOT a security vulnerability, it's just an annoying design flaw.

<comment><USER4> Since you have access to your own email, can't you access the account of people who used your email and delete it? Something like the guy in the post could potentially do since he was able to get the complete access.

<comment><USER3> I am the guy in the post. :)

I had control of the account, but Zoom wouldn't let me disassociate it with the organization it was stuck in (some school in Chile). I'm not gotta use my Zoom account if it's in some random org controlled by people I don't know.

It looks like either Zoom or the school has now removed me from the org, probably after I e-mailed both of them, though neither has actually replied to me...</comment></comment></comment></comment>


Doorbell Cameras Like Ring Give Early Warning of Police Searches, FBI Warned - <AUTHOR> https://theintercept.com/2020/08/31/blueleaks-amazon-ring-doorbell-cameras-police/ <comment><USER2> Mods: Maybe merge this with the other go post: [https://www.theverge.com/2020/8/31/21408861/fbi-doorbell- cam...](https://www.theverge.com/2020/8/31/21408861/fbi-doorbell-camera- police-search-surveillance-warning-document)

</comment><comment><USER2> TLDR: LE is worried about about ring doorbells recording them.

Warning from internal police bulletin: IOT Cameras... "If used during the execution of a search... LE personnel could have their images captured, thereby presenting a risk to their present and future safety."

I was under the impression that LE did not have any right to privacy while engaged in official activities, furthermore it's unclear what reasonable basis LE might have that images of them engaging in official business would represent a risk to their safety. Sorry, but part of being a member of LE is that you may be recorded while doing your job.

<comment><USER3> They fear officer identities will leak in case they shoot someones dog [https://aldf.org/project/dogs-shot-by-cops/](https://aldf.org/project/dogs- shot-by-cops/), or daughter [https://en.wikipedia.org/wiki/Shooting_of_Atatiana_Jefferson](https://en.wikipedia.org/wiki/Shooting_of_Atatiana_Jefferson) [https://en.wikipedia.org/wiki/Shooting_of_Breonna_Taylor](https://en.wikipedia.org/wiki/Shooting_of_Breonna_Taylor).</comment></comment>


Show HN: How Well You Know Me? - <AUTHOR> http://www.producthunt.com/posts/how-well-you-know-me

<comment><USER2> You should be linking directly to the product webpage for a Show HN.</comment>


Mentor startups in Gaza - <AUTHOR> http://mentor4gazaskygeeks.strikingly.com/ <comment><USER2> Sorry if I'm being rude, but this sounds like a really bad joke.

"This building is the new place for your new startup, the burocracy is atrocious and humiliating; not people neither prime matters can enter or go out freely from here, and the entire place is systematically ravaged and firebombed each two or three years killing your workers, otherwise is fine."

"Last year this nice new zone is flattened and 'cleaned' of people... 1000 or maybe 2000 people were killed, I don't remember... and now we want you (again) to give us your money and effort to clean our mess. We need reclaim the area rebuilding this new free space ASAP to secure the place. Thanks"

Just being as cold blooded and logic as I can... Can someone provide a reason to invest in such unstable place? Will you advise someone to create his/her new startup in a warzone? Why?

<comment><USER3> To support people of Gaza through something really helpful and not politically laden, I'd guess.

<comment><USER2> If we really want to help the people of Gaza we need first to put the people that killed children, women and innocent men of Gaza, in front of an international trial. And stop voting to them. Is as simple as that.

We need also to stop tolerating to be labelled as "anti-semitic behaviour" to _bona fide_ criticizing Israel for breaking repeatedly a _lot_ of international laws about human rights, each three years, and for treating palestinian people as human cockroaches.

In the last years USA and Europe were repeatedly urged to pay with trucks full of money the last "Gaza reconstruction". We paid for rebuilding exactly the same UN schools and hospitals that Israel bombed meticulously the last year, in some cases even with UN workers inside.

Is reasonable to asume that if we pay again, the new schools and hospitales will be bombed again in the next two or three years, with the silliest excuses.

There is also the problem that Israel controls the economy of Gaza, so there is not any guarantee that the money for palestinians will not be used instead in buying new bombs to replace that were dropped.

I'm aware that I'm being sour and harsh, but in my opinion, and is just an opinion, the sort of Warsaw Ghetto that became Gaza, need a little more that well-meant investors and little kisses at this moment.

<comment><USER4> I don't want to get into a political argument - but I will say that helping Gazans by directly improving their quality of life (like the OP proposed) is neither mutually exclusive with, nor dependent on, helping Gazans by promoting their cause politically.

It is a defeatist stance to take, in general, that you should abstain from treating a symptom just because it won't also cure the disease and in that sense I think you are working against the cause of Gaza and doing a disservice to Gazans by dissuading people from offering assistance.

>In the last years USA and Europe were repeatedly urged to pay with trucks full of money the last "Gaza reconstruction". We paid for rebuilding exactly the same UN schools and hospitals that Israel bombed meticulously the last year, in some cases even with UN workers inside. Is reasonable to asume that if we pay again, the new schools and hospitales will be bombed again in the next two or three years, with the silliest excuses.

You're unfortunately correct (about the bombing, not about the excuses), but the children of Gaza need to go to school and the infirm and injured of Gaza need hospitalisation, so not building those facilities is worse than building them and watching them be destroyed a few years later.

<comment><USER5> Not to mention, empowering moderate and scientifically minded Gazans is probably one of the more productive things one could do to contribute to eventual resolution of the conflict.

</comment></comment></comment></comment></comment><comment><USER6> i wonder whether there are student exchange or similar programs between Israel and Gaza. Specifically in this case - my understanding that Israel has pretty booming tech scene and one would expect that sharing the experience with Gazans would be a win/win for both sides.

<comment><USER7> As a developer from Israel, I'd like to participate in something like this — but I don't think that there's any opportunity for me to do this. From what I understand, even if someone tried to do something like that on the other side, they'd risk execution for "collaboration" if they did this.

<comment><USER8> Do you have anything to back that up? I'd be interested in reading about it.

Edit: I can see there's an article here that sounds like the root of this sort of statement but I can't read any details because I'm in a really remote place with very little internet. Over the last couple of days I've discovered that the wired world no longer cares for those with 7kbs connections :-)

[http://www.aljazeera.com/news/middleeast/2014/08/hamas- kills...](http://www.aljazeera.com/news/middleeast/2014/08/hamas- kills-11-suspected-informers-israel-201482285624490268.html)

<comment> tek-cyb-org I'm sorry but that article has nothing to do with the topic at hand. Every country on earth executes informants.

<comment><USER8> That's sort of the point I was making though (even though I couldn't see the article, that's the story that seemed to dominate when I searched in Google).

On paper, that's "collaborating" with Isreal leading to execution (GP: _" they'd risk execution for "collaboration" if they did this"_).

I suspect that there was a (horrible) case like this that was promoted within Israel to drive the sort of talk that I was responding to. An incident is taken out of context, rebranded and sold as normal behaviour by a demon state.

I'd like to see the articles about people in Gaza being killed for getting support from people in Israel.

<comment> tek-cyb-org Heres the problem. Most israeli don't care about palestinians. 87% of israelis supported the massacre of palestinians in gaza. [http://www.washingtonpost.com/world/middle_east/israelis- sup...](http://www.washingtonpost.com/world/middle_east/israelis-support- netanyahu-and-gaza-war-despite-rising-deaths-on-both- sides/2014/07/29/0d562c44-1748-11e4-9349-84d4a85be981_story.html)

</comment></comment></comment></comment></comment></comment><comment><USER9> Awkward domain name in this context.

</comment><comment><USER10> So, what are conditions like? Is there a talent pool? Is infrastructure working (Do they have brownouts, are there a lot of people with internet)? Is it easy for investors to get their money in and out?

<comment><AUTHOR> Lord - Conditions are no-doubt tough, but there is internet infrastructure, and there is most definitely talent. Brownouts do occur in the evenings. Gaza Sky Geeks also has a generator so that entrepreneurs in the co-working space can work late. Investing is not an issue. There's a new $9M fund that just formed to focus on Gaza.

Check out the Indiegogo page - [https://www.indiegogo.com/projects/save-gaza- s-only-startup-...](https://www.indiegogo.com/projects/save-gaza-s-only- startup-accelerator). It has a ton of info

</comment></comment><comment><USER11> they only thing i can see being a good opportunity in Gaza is something like capsule hotels.

they'd be impossible to hide rockets in and when they nearby buildings are destroyed they'd get new customers.

Israel could be guaranteed the neutrality of those buildings so as to never be targeted.</comment>


Unity CEO John Riccitiello Sexually Harassed Colleagues, Former Exec Claims - <AUTHOR> https://www.forbes.com/sites/mattperez/2019/06/10/unity-technologies-ceo-john-riccitiello-sexually-harassed-colleagues-former-exec-claims/ <comment><USER2> I feel like these sort of articles are somewhat doomed on social media sites, HN included. The general agreement is that these sorts of things should be deplored. There's not much to disagree on. This lack of back and fourth is going to make it hard to keep engagement on the issues of sexual harassment at the front of people's minds. They are, sadly, uninteresting, even though we know they represent bad behaviour.

There are two other related discussions to be had: 1) Corporate Culture and 2) Government inaction. Sadly, both of these are reactionary, and require enough mindspace of the population to do anything about. Unfortunately there has been more competition for mindspace, in the past decade.

Now that I think about it, it explains why Feminism is essentially run by those with greater personality extremes. That drama may be all that is keeping it alive. As frustrating as it is, maybe I shouldn't be so quick to ridicule the more outlandish assertions.

Because maybe that needs to be there so we can keep seeing these more insidious occurrences.

</comment><comment><USER3> > The suit also alleges an environment where the CEO's consensual relationship > with the head of human resources makes it hard for employees to complain > about problems without retaliation.

I don't know, CEO dating head of HR seems like a recipe for disaster.</comment>