Ask HN: opensource projects for space industry? - <AUTHOR>

Today's Falcon9 launch [1] was extremely exciting, and it got me thinking - except for working for SpaceX or a space agency (NASA/ESA/Roskosmos/...), how can a programmer do something for the space industry?<p>Does anyone know any opensource projects that SpaceX or NASA use? Maybe some of their own projects accept help from the outside?<p>[1]: http://news.ycombinator.com/item?id=4006519 <comment><USER2> I used to work for a bunch of astronomers. Here's some of the software I remember them using a lot. Not sure about the licenses though most of them provide sourcecode:

* <http://root.cern.ch/drupal/>

* <http://geant4.web.cern.ch/geant4/>

* <http://www.sron.nl/~richardh/SciaDC/index.html>

* <http://www.hdfgroup.org/HDF5/>

* <http://hea-www.harvard.edu/RD/ds9/>

* <http://www.spacetelescope.org/projects/fits_liberator/>

And of course: FTOOLS:

* [http://heasarc.gsfc.nasa.gov/docs/software/ftools/ftools_men...](http://heasarc.gsfc.nasa.gov/docs/software/ftools/ftools_menu.html)

Here's one method to contribute: packaging and testing them on different distros.

Have fun storming the castle!

<comment><AUTHOR> Seems it's mostly C++, data and image processing.

Thanks for the links!

</comment></comment><comment><USER3> I recently read Jim Lovell's book _Lost Moon_ about the problematic flight of Apollo 13. It paints a reasonably detailed picture of the 1960's systems that put men on the moon.

I would say that the software problems are relatively simple compared to the hardware issues of space flight. Software isn't going to offer much improvement to the ballistic facts, nor is it going to make much difference in overall reliability of the in-flight systems - fault tolerance and fail safety have been understood for a long time. I suspect that most of the impact of software would be on the manufacturing side of the project.

To put it another way, once the rocket is lit, the computer is pretty much going where the rocket is pointed regardless of what software is running.

On the other hand, the idea of open source space hardware is pretty interesting and might have a significant chance of impacting the fortunes of people living in the developing world.

<comment><AUTHOR> While I agree that the balance of soft/hardware in a rocket is shifted more to hardware side, I don't think their software is trivial. For instance, some of the delays to this last SpaceX launch due to software validation problems [1].

And then, yes, there's always manufacturing and planning - CAD programs, flight planning (maths/astronomy). Robotic rovers are also part of the industry - that's AI, control systems, computer vision and image recognition etc.

[1]: [http://www.nasaspaceflight.com/2012/05/spacexs-dragon- debut-...](http://www.nasaspaceflight.com/2012/05/spacexs-dragon-debut-passes- software-validation-process/)

</comment></comment><comment><USER4> Its a tangent and a bit more down to earth but there's some NASA research mentioned in Airborne Wind Energy thing at [https://github.com/giving/giving.github.com/issues?state=ope...](https://github.com/giving/giving.github.com/issues?state=open)

Or maybe something else on giving.github.com takes your fancy?

<comment><AUTHOR> It's indeed a tangent, but an awesome one, thanks!

And they link to RHoK, which is also great.</comment></comment>


Ask YC: Does interviewing developers leave you depressed? - <AUTHOR> I'm hiring a senior developer right now. Our first interview has a 4-question screen, where I ask them to implement a simple function, implement a recursive function, write a simple SQL select (join across two tables), and create a simple object model (how would you represent a car as an object).<p>~70% of the "senior developer" applicants fail<p>We're extremely happy with our process--this is only step 1--and it's been amazing at yielding a great set of candidates for each hire, but two weeks of administering the tech screen to applicants leaves me a bit depressed. (sigh) <comment><USER2> Just out of personal curiosity, you should try to find out if any of these failed candidates are actually skilled developers but there's something about the questions or interview that's messing them up?

For example I consider myself a reasonable programmer, I can certainly do any project put in front of me. But I failed a YouTube phone interview because they asked me to "say" a function for finding the longest common subsequence of a set of strings.

I learned the following issues completely stop me from being able to program:

1\. Someone waiting on an immediate answer.

2\. Someone watching/listening to my though process.

3\. Not being able to experiment with the code on a computer.

That didn't cut it for them because apparently at YouTube a lot of your programming is done over the phone (sarcasm).

I guess my point is, try to think of the exact tasks this hire would be doing, and ask them to do that. Will they really be writing recursive functions often? Also if possible give them a take home project, so they can work in a more natural environment.

<comment><USER3> I agree. When I first meet someone over the phone or in person I'm in a social mood and prefer to talk rather than do a code dance for them.

Once I'm alone at my desk though it's easy to get down to business.

Think it would be cool if companies just said show up to work, and you work for free for the first week. After that both parties can decide if they want to continue.

<comment><USER4> Maybe it's just me, but I tend to immediately discount any advice or proposals that suggest I work for free.

<comment><USER5> I would actually enjoy a one week type engagement to get a good fit for a company.

It works both ways. You are selling your time. They are selling their environment.

The problem is that the employer is accepting a lot more risk than the employee. Do you like paying for something you can't return and you can't get your money back for if it is crap? This is the situation a lot of companies are in. They hire someone, they pay them to write the code or build the project and it turns out it's all a lot of garbage and the company is out the money.

This problem is really tainting our industry. I think a lot of people who call themselves programmers are really just some kids off the street who grabbed an open source package and started hacking away. They can build a website with some graphics and stuff, but they have no vision, no experience with large systems that are actually going to be used for any significant period of time.

It is quite depressing actually.

<comment><USER4> _I would actually enjoy a one week type engagement to get a good fit for a company_

So would I. But since I'm _WORKING_ for that one week, I expect to be paid for it. I really don't think anyone should be surprised by that!

<comment><USER5> Hmm... I see your point. Perhaps we disagree on the word "work." When I think of "work" I think of moving a company in a desired direction.

A lot of people think of work as "sitting in a cube."

The question is, "How do we determine if the candidate's definition of work matches the employer's definition of work?"

Maybe what you think you are doing when you are working is actually causing more problems and moving the company backwards because they are going to have to undo all the crappy code you wrote. I'm not meaning to attack you, I'm just trying to illustrate a point. Know what I mean?

Maybe such an engagement could work out where, "If we hire you, we pay you for the week. If we fire you, we keep the money and you are out."

This reduces the risk for the employer while also giving the employee a chance to examine the company and be paid if the work is satisfactory.

<comment><USER6> What are you going to do in one week at a place? It could easily take that long and much longer to ramp up and even understand a part of the existing code base.

<comment><USER5> I've gone into a company with software systems that were a complete rat's nest, learned the enviroment, accessed files and utilities needed to make changes, and implemented a significant change in 2 days. A lasting and flexible change that will enable the company to operate more cheaply and be more agile in the future.

Many information systems can be implemented in a week. You could set up email, an e-commerce site, a CRM, SCM, or even substantial portions, if not an entire ERP system depending on the size of the company.

A week is a long time if you know what you are doing.

<comment><USER6> Ah, the area where we disagree is on the size of the company in question. I was thinking medium to large, while it looks like you are thinking more start- up. I agree that a week is much more viable to assess someone in a startup. In a large corporation, they'll be lucky to have a computer by then!

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Senior Developer does not always mean coder. It means, in my view, senior- level experience and senior-level judgment.

What are the job requirements?

I was a manager for 10 years and didn't code except to fix bugs. When I coded, I used C/C++. As a senior manager, I oversaw the JavaEE application strategy at Sun.

At any rate, today, I am a Senior Developer at a start up that uses LAMP. I would have no problem answering your questions today but it took me a full month to get back up to speed.

It may be that you are focusing on the wrong questions, it may be that your job description is attracting the wrong candidates, or it may be that you are not promoting the job in the right channels.

Good luck.

</comment><comment><USER8> Not depressing at all, completely representative of the job pool.

The technique you're using isn't common - a lot of traditional companies don't interview on skill and technique (like Google do).

Backing up your 70% of failures, we recently hired a fashion designer at our startup (we're in an interesting market!) I decided we should use the same kind of interview we would for a developer.

Everyone we interviewed was completely baffled, but it really sorted out the wheat from the chaff. At least 80% of the people we interviewed couldn't do what they said.

Thankfully though, we've ended up with someone who is really incredible. In fact, I think she has the 10x higher productivity that us developer types talk about, and her old employer is trying to hire her back.

tl;dr - looks like you've got a normal pool of applicants!

<comment><USER9> what is an objective interview for a fashion designer like?

<comment><USER8> Difficult. IANAFD so this may be slightly technically inaccurate:

We got them to actually draw something (called a flat) from a half-drawn garment, draw a full flat from scratch, identify trends from a series of photos, pick textile colours from photos, identify designers from "signature" garments, have them debug a spec. to see if a garment was reasonable (say the spec called for a notion like a chunky zip on an unsuitable fabric), and a few other things.

</comment></comment></comment><comment><USER10> I would be careful with your questions. There's a lot of bias that you can create without being aware of it.

I once had an interviewer ask me for the five rules of database normalization. Beat the heck out of me at the time -- I was just drawing a blank. I could do the work all day long, but I couldn't remember the stupid names he was looking for.

Similarly, I had a guy ask me to name the seven categories of this course he was interested in that I had taught years ago. Same deal -- just couldn't recall it, although I was very familiar with the material and had no problem teaching it.

The problem with memory questions is that they bias against people who don't currently have the answer in working memory. Simply because somebody has done something recently is no indicator of performance. The best interviews warm up on general questions about the material before diving deep. That gives a candidate time to "change gears"

I also very interested in "why" questions over "how" questions. Classrooms and cram-lessons are really good at "how" questions -- it takes some degree of actual work to understand the "whys" of something.

I've interviewed a lot of developers over the years. 99% of them really aren't anywhere near as good as they think they are. That's sad, but it's also an opportunity for developers who care about their work to get ahead. It doesn't take much ongoing effort to be truly outstanding.

</comment><comment><USER11> Good developers get hired and removed from the pool. Bad developers go to the next interview.

<http://lesswrong.com/lw/gy/you_are_not_hiring_the_top_1/>

<comment><USER12> That doesn't imply the top 1% isn't there; just that they are more likely to be under-represented. Also, programmers are prone to move to new areas that are more interesting, especially the top/best, so that can skew it back in favor of the upper echelons. It always seems that the mid range to bottom developers are more likely to find somewhere and stay, as they have so much trouble finding a new place to go to. They are the ones that have 'stickyness'.

What is the biggest factor, from what I can tell, is that the best don't send out their resumes but get poached by other companies or use their networking to land a job.

</comment></comment><comment><USER13> do you screen them over the phone? seems to me like it would be much easier and less depressing if you just gave them the work, gave them an hour, and told them to email the results back to you. stuff that is nontrivially difficult such that they can't just search and find answers. they have to know.

edit: i think i'd prefer having to do this myself, as well, because i'm a shy person in person and i find myself floundering when i'm on the phone and have to "explain my thought process" to someone as i'm working through it. i'd much rather write down an explanation.

<comment><USER14> I think "quiz" type of questions are pretty ineffective at filtering out candidates. You do filter out the bad candidates, but great ones could also be left behind. Who knows, the person could be an brilliant developer who got nervous during the interview and had a blank. Or the phone call is breaking up. Or the person is in a non-ideal location. Etc... I would not filter out a potential hire just because the person couldn't remember the SQL syntax on the spot...

For me, a senior developer is someone who is able to work in a TEAM, be dependable (i.e.: The guy who you can call at the 3am with an urgent matter), mentor others and be able to contribute and implement new processes and practices. The technical stuff is important but should not be the main filter IMO.

It also seems to me that you want to apply a certain logic or algorithm to the process. Personally I prefer to call up and just have a conversation with the person (trying to find out the aspects I listed above). Unless I am Google and I am getting a gazillion applications, that's different...

<comment><USER13> i can agree with this. i don't like quiz types of questions either. if i were to hire someone, i'd rather hire someone who i know i can rely upon to get a job done, regardless of their knowledge. someone who knows how to teach themselves, who is able to learn and learn quickly.

but, i still think that a longer-form, more essay-like quiz is better than grilling someone over the phone and expecting them to continuously talk to you while they're working through something.

<comment><USER15> I agree. I used to make the mistake of screening on language trivia and simple functional ability (like they're doing here). HUGE mistake.

Now I screen on much bigger topics that tend to be more philosophical in nature. The role of design patterns, benefits of one language over the other (particularly functional languages), value of unit tests...

They submit their answers via e-mail, and within a minute or two I already know if there is any value in at least talking to them in a more formal interview setting. I've found that folks who understand development at this much higher level _always_ handle the basics well.

</comment></comment></comment></comment><comment><USER16> Are you depressed because your filter has proven very effective? It seems you should be happy. ;-)

The thing to worry about with a very discriminating filter is, like tocomments post, whether you are filtering for something different from what you really want...

</comment><comment><USER17> Yes, it is depressing.

That said, I've had success with doing the pre-screen in a Campfire room and asking them to Pastie/Gist their code into the room. That way, you eliminate some of the weirdness associated with coding over the phone, but you maintain much of the immediacy.

<comment><AUTHOR> That's exactly what I do. The first interview is over the phone and they type out their answers over a WebEx link.

</comment></comment><comment><USER18> For my current job (for an entry level position), I took a one hour test asking to do pretty basic coding prior to interviewing with anyone. It asked to find errors/poor practices in a code snippet, some quick logic/binary operations, and a larger question involving linked lists that required a few minutes of planning before I began writing code out.

This was a comfortable setting for me. Though in previous interviews, I would completely freeze when someone wanted a technical explanation, simply because I need a moment to collect my thoughts, and it's difficult to do so when someone in front of you is looking for an immediate answer.

</comment><comment><USER19> The only ones that somewhat depress me is a particular class of bad developer: Fresh out of college, these people have their curriculum _nailed_... and know _absolutely nothing else_.

One example that really struck me was an interviewee that I asked to write a simple pre-order traversal on a seven-node tree that we print out for our interviews. Instead I got a moderately lengthy and correct description of how to search for a value in a sorted binary tree. Correct, except for A: it wasn't the question I asked and B: immediate visual examination of the tree we were looking would reveal it was clearly not sorted. Other things in this interview led me to the conclusion that I got that answer because this person had studied that topic, but almost couldn't even hear, couldn't perceive a question that wasn't essentially right off an exam.

These are the ones who depress me a little, because they have clearly done everything everyone told them to do (study hard, do well on tests, etc) and must have some significant raw intelligence to be able to do this well on a challenging curriculum... yet, for all that, they have walked away with so very little useful knowledge or skills. I also feel some anger at the system that they have learned too well to navigate... but by the time they get to me, it's too late to change anything.

I comfort myself in the near-sure knowledge they will find a job somewhere. Some percentage of them will even adapt to the real world and perhaps they will become great programmers. I don't know. I can't know. That's life.

But I can't in good conscience give a thumbs up for them. We are willing to train solid developers and we have a track record of hiring people that don't even know the language they will be working in (since they have demonstrated the ability to learn languages in the past), but you can only take that so far.

On the other hand, those who sat in college for four+ years and know neither the curriculum, nor any other skills, just barely squeaking by with the necessary grades and forgetting everything as soon as the class is over, well, they had every chance to realize they were in trouble and didn't take it. I don't feel depressed about them at all. That such people exist is just a fact of life.

</comment><comment><USER20> I'm not sure why that's depressing. You've managed to filter out the majority of people you'd not want to hire with just a simple set of tests.

Perhaps a way to screen out many of these people without spending the time administering the screen is to have a simple coding test that these people complete before you'll even have them in for an interview. A couple places I've interviewed with did this, and they both expressed high satisfaction with the reduction in interviews of hopeless candidates that resulted.

</comment><comment><USER21> Part of it may be your questions, and part may be HOW you're asking (e.g. over the phone, or putting someone on the spot).

2) Not a lot of people write SQL by hand anymore. I used MySQL for years, long ago, and never wrote a join. Then ORMs came along and handle joins automatically, so I've still never written one. So not being able to do it without looking it up doesn't really tell you anything. I've written far, far more complex things than an SQL join statement. A more pertinent issue I'd be checking for is whether user input is properly escaped to prevent SQL injection -- again, not an issue with ORMs, but an issue when building SQL query strings by hand.

1) A lot of people use languages where recursion is unusual (i.e. NOT Lisp). Even a senior developer (especially of something like PHP) might not recall this, not having actually written a recursive function for years.

3) Representing a car as an object: A lot of software people don't know hardware, so the confounding part might be recalling various attributes of cars and how they relate to each other.

Also keep in mind that many introverted people get very uncomfortable when someone is waiting on them. This can make it difficult to concentrate at all. Being asked to perform on demand is normal for a musician but foreign to most programmers. On top of that, it's usually in an unfamiliar environment, such as verbally or on a whiteboard -- imagine asking a violinist to play on some lines you drew on a piece of paper.

PG, RTM, and TLB would probably fail your test -- they don't use SQL, they use flat files.

<comment><USER22> "I used MySQL for years, long ago, and never wrote a join."

Scary! I wonder about your definition of "used", if you used an RDBMS in a non trivial app "for years" _and_ never wrote a join! The database design must be very ... unusual :-).

And this was in the days before ORMs :-D.

" Then ORMs came along and handle joins automatically, so I've still never written one. "

I've never yet seen a non trivial RDBMS based app where the existence of an ORM absolved developers from having a good grasp of SQL when they needed to drop below the abstraction layer provided by the ORM.

"So not being able to do it without looking it up doesn't really tell you anything."

It does, really! ;-).

"PG, RTM, and TLB would probably fail your test -- they don't use SQL, they use flat files."

The interesting thing about this statement is that it shows one way out of potentially being asked to code on a whiteboard/over the phone. If you have a PhD' from MIT and/or have a strong track record of writing Open Source software, creating and selling a startup, build robots (and electric unicylces ) for fun etc, in other words, if you can _show_ , well before the interview, that you are as good or better than the job demands, you are very unlikely to face the "find the longest subsequence in a string" or "write a join" type questions. But then if you could do all that why would you look for a job?

In my case, after writing some open source software, (and posting an url as the first thing in my cv) I've found that these kind of elementary questiong simply drop away. When a few thousand people use your code everyday, people _know_ you are good.

The OP's post is about when all you have is a cv that looks like the last 100 cvs you reviewed, and people who can't answer simple questions about how to write a join (hence his depression).

<comment><USER23> "I used MySQL for years, long ago, and never wrote a join."

Wow.

Note to self: start asking candidates to write SQL in interviews.

It had just never occurred to me that people who spend their entire lives talking to databases wouldn't know how to talk to them directly.

And really, you can get pretty much any piece of information out of a database using just _four keywords_. It's the least memorization of any language in history. SELECT, FROM, WHERE, and for extra credit, LIKE. That's it. That'll get you any non-aggregate dataset you could want, joined or otherwise.

Learn IN and GROUP BY and you've got everything else you'll ever need for reporting. It's just the simplest language ever.

<comment><USER21> > It had just never occurred to me that people who spend their entire lives > talking to databases wouldn't know how to talk to them directly.

You're begging the question. Most people who use databases don't "spend their entire lives" talking to them.

Of course I've talked to databases "directly", tuned them, "alter"ed them, indexed them, replicated them, and so forth, but just happened to use logic at the application level instead of the SQL level for JOIN functionality.

<comment><USER24> Ok so hopefully the places where you used to work hired someone that wouldn't write horribly inefficient client-side code to join two tables together when its a SQL RDBMS, and sped up those applications|sites considerably.

</comment></comment></comment></comment></comment><comment><USER25> Flemlord, a lot of responses seem based on hypotheses about what a good answer would have been. Could you follow up and give examples of what you'd have considered correct?

My hobby-programming experience suggests...

simple - int add(int a, int b){int result; result = a + b; return result}

recursive - um, I like fibonacci sequences: void fib(int term){if term = 1 return 0; if term = 2 return 1, else return fib(term - 1) + fib (term - 2)}

SQL join: no idea, I haven't used SQL for years. I assume you mean something like for(i = 0; i < table1.length; i++) do {newTable.fullname[i] = oldtable.firstname[i] + anothertable.lastname[i]}

Car as an object: well I guess I'd have a struct with variables for size, weight, power, turning circle and so on, and methods for accelerating, setting direction [steering heading, speed (forward and reverse, or multipliers for forward gearing)] and braking...then I'd have create multiple instances of that object using a table of values...do you make racing games?

I'm not looking for a job, but I'm interested in knowing what sort of answers you were after. The above seems super-simplistic to me, I'd feel nervous they were trick questions of some sort and the obvious answers are actually the failing ones.

<comment><USER26> Your fibonacci algorithm is crap. You're tree-recursively calculating the exact same values over and over and over and over again. Just try running it sometime on a large n if you want to test your computer's ability to stall and ramp up the cooling fans.

"do you make racing games?"

That's a question to ask first, not second. Maybe he's making a "Pimp My Ride" style game where the actual driving part is less important but you need detailed modeling of the seats and the ability to add a bunch of random shit to the interior of the car. Maybe he's making a CAD tool for people to do body design, so you need to be able to do computational fluid dynamics on it and test weight balances, but also be able to visualize it in high resolution to see if it looks cool and to print mockups for focus groups to say "this looks like a kickass car".

<comment><USER25> Agreed, but this is the very question I'm getting at - does Flemlord want to know the quality of algorithms someone naturally comes up with, or is this just to screen out the total BS artists?

Hence my mention above of how it feels like a trick question. I really don't know whether the interviewer wants the autistic-but-informative answer or the quick of-course-I-know answer. Trying to guess what sort of answer you are seeking induces mild panic in me: I don't know you, but if your response in an interview was 'what a crap algorithm' I'd be thinking 'this guy is a bit Machiavellian...'.

I mean, I can think of a much faster way (than this) to get a given term in the fibonacci series using a loop, but this one recurses, which was _what was requested_ \- I had to quickly choose a problem domain in which to demonstrate it. Towers of Hanoi would have been more impressive, but I don't know if I could just rattle that off correctly, verbally. See what I mean?

<comment><USER26> If I was interviewing you (I've never interviewed anyone) and you gave that fibonacci algorithm, I would probably say, "Hmm, and how does that algorithm perform? Can you think of a better one?" If you said "its performance is crap, storing the previous two results and using iteration is better", I'd be happy. If you said "exponential" and "linear" instead of "crap" and "better" you'd get bonus points. Volunteering that information at the outset would get more bonus points because it shows that you really care and that you don't even feel comfortable writing down an exponential-time algorithm without loudly warning everybody they shouldn't use it.

The standard interview question is "write a function to solve this problem which has an elegant recursive solution", not "think of a recursive function". But if you do want to think of a recursive function, try factorial.

        int fctl(int n){ return ( (n = 1) ? n : n * fctl(n)); }

(Don't use that code in an interview. It's questionable style for C, and the ternary operator is scary to people.)

I was asked to write a fibonacci function once, and I actually said, "you can do this recursively but the performance is awful" and wrote an iterative solution.

The point of an interview is for you to show off. If you start going on and on and on and on about unnecessary details the interviewer might stop you, but if you launch into a talk about the space and time properties of recursion vs. iteration and show some judgment for how to use recursion and how not to use recursion, then I know how knowledgeable you are.

<comment><USER26> Dammit, I made a syntax error. The factorial function in C should be

        int fctl(int n){ return ( (n == 1) ? n : n * fctl(n)); }

<comment><USER26> (n-1) for the recursive call. God, I'm failing this interview.

<comment><AUTHOR> Heh. Our actual interview question is similar but we ask them to add instead of multiply. We ask them to add up all positive whole numbers equal to or less than x. Good developers (who make it to the next round) bang out the answer in literally 30 seconds. Ok developers (who still make it to the next round) usually struggle for a while, maybe implementing it non-recursively first. The other 70% just type nonsense until I cut them off after 15 minutes.

If somebody makes a mistake I tell them and give them hints until they fix it. Well... it depends on the magnitude of the mistake I suppose. If they're not even in the right ballpark I keep my mouth shut.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Steve Yegge's post on this is apt and may help those who haven't read it.

[http://steve-yegge.blogspot.com/2008/06/done-and-gets- things...](http://steve-yegge.blogspot.com/2008/06/done-and-gets-things- smart.html)

</comment><comment><USER27> I have kids, and whenever I do interviewing, I get worried about their future. I think the secret is to get them to feel passionate about something; as long as they have the motivation, they'll want to learn. But how to do that? And what if I fail? I shudder to think they'd have to stay in some of the crappy jobs I've been able to leave.

</comment><comment><USER28> Outsource Step 1 with an on line programming screen. There are many companies that do this. Sure you'll have to pay for each one, but they will weed out the bottom 90% pretty quickly.

</comment><comment><USER29> Yes. I used to do the chatty bit first before subjecting interviewees to the "technical evaluation"; it seemed polite to engage people first.

That was depressing. At least I found out the technical evaluation was worth giving. An astonishing proportion of people that came off well in less technical conversation would utterly flunk the test.

I'm not talking minor errors caused by interview pressure. I mean people with "5 years of C++ experience" writing void reverse_string(char* in) { char b[] = new char; b = in; ... }

</comment><comment><USER30> I think the best solution is to ask the questions in as many possible ways you can think of.

Some people are great at coding, but suck at whiteboard, others aren't comfortable talking about their thought process.

So why not give them numerous ways to show their stuff? Have them find bugs, have them code on whiteboard, have them write code in a compiler, etc etc.

Your goal is to find a good programmer, not a programmer who is good at white board.

</comment><comment><USER31> Speaking of someone who's basically right out of school, I can tell you that I probably wouldn't hire most of my classmates. It _was_ depressing.

<comment><USER18> In reference to the post I made directly above yours, a classmate of mine got an interview with my employer about 3 months after I started. The HR guy approached me after his interview, and told me he left the entire linked list question blank.. no pseudo code.. nothing. I was embarrassed.

</comment></comment><comment><USER32> Interviewing leaves me depressed. I just spent most of an hour proving I can't verify whether a tree is binary. Mostly, we didn't focus on anything relating directly to the position or talk about my experience in any way. We proved that there are holes in my education pertaining to basic CS, that I never encounter on a daily basis as a web developer. I guess the rest of the stuff was taken for granted.

I understand that these tests can be important, but I can't help but feel that I will fail to qualify for any position that requires me to hold a host of basic CS algorithms in my head, but that I could still do a good job in the position - because I'm very good at learn as you go, and have learned lots of higher level stuff while building elegant, complex systems - without knowing how to verify a tree's binary nature.

</comment><comment><USER33> I've been working for 3 years as a front-end developer and somehow have managed to pick up all of those skills minus the join (just started learning SQL last week). Maybe your pool of samples is tainted. Where do most of your applicants come from?

</comment><comment><USER34> 70% sadly sounds about right. end depression by making the screening process as quick as possible.

</comment><comment><USER35> Heck, I can do all of that and I'm nowhere near a "senior developer"

</comment><comment><USER36> How will the interviewee know that interviewer is smarter than him?

</comment><comment><USER37> My experience has been identical to yours. Ask simple questions, get constant failures. In bad times, the signal to noise ratio is completely out of wack. A recession is the worst time to hire people.

</comment><comment><USER38> If you're going to put someone in the coding hot seat like that, at least give them the decency of having 30 minutes alone with a computer.</comment>


Former Amazon employees bake Bezos principles into their startups - <AUTHOR> https://www.seattletimes.com/business/amazon/two-pizza-teams-and-more-former-amazon-employees-bake-jeff-bezos-principles-into-their-startups/ <comment><USER2> What I hear from Amazonians in Seattle is that the culture is markedly different today than it was 5-10 years ago.

That shouldn't be surprising. Things are slower now and layered. VPs report to VPs who report to VPs. More politics. More focus on competitors. Less belief in the upside.

Using Jeff's words: We are well into Day 2. As a result, great people are leaving in droves.

Satya managed an incredible cultural and business turnaround of Microsoft after it stagnated. Who will do this at Amazon?

<comment><USER3> Amazon doesn't need a turnaround. Entire industries are afraid of its relentless march to perfect execution at the lowest possible price. It's only accelerating in new developments and innovation and is far from its peak.

<comment><USER4> > to perfect execution

Their retail business is pretty far from perfect. Just a few days ago I got my first obviously fake product that was "sold by Amazon".

<comment><USER3> I'm talking about operating as a business. Nobody executes better than Amazon right now.

As for as the store experience, their selection, price, speed and convenience has led to their wild success. The fakes from 3rd-party sellers are not as big of a problem as HN makes it seem, and they could drop them overnight if they really wanted to in case any liability arises.

<comment><USER4> > Even with occasional 3rd-party product issues

The problem with Amazon is anything can be "3rd-party" and you'll never know until you have a problem with it. Maybe the fraudulent product was the result of a sketchy 3rd-party dealer but also I don't really care -- I bought it from "Amazon" and they sent me tainted inventory.

Target and Walmart are catching up with their online operations and at least with them I don't have to worry about being shipped fake products.

<comment><USER3> > " _Target and Walmart are catching up_ "

Exactly. Amazon is still well in the lead. They have likely analyzed this entire problem with news and features scheduled over the next 2 years to resolve it as soon as their competitors gain any real ground.

<comment><USER4> That's still not anything close to "perfect execution".

<comment><USER3> You seem to be looking at this as a consumer who got a fake item (from a 3rd- party seller). Store experience is not the same as business execution.

The company is operating optimally, making the most revenue with the most growth while controlling costs and taking market share from all of its rivals. Nothing's perfect, but this is as close as you can get with a trillion dollar company that remains in the lead and is pulling even further ahead.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> I'm guessing that business processes in a company as big and successful as Amazon are well beyond the point of turning into a religious cult. And now we see adepts of such cults, sometimes familiar with only a _single_ cult, without much understanding why this cult was there, reproducing that cult to build new companies.

And funny thing, it sometimes is a success.

<comment><USER6> > I'm guessing that business processes in a company as big and successful as > Amazon are well beyond the point of turning into a religious cult. And now > we see adepts of such cults, sometimes familiar with only a single cult, > without much understanding why this cult was there, reproducing that cult to > build new companies.

I don't think I've ever read a better summary of the habits of alumni from management consulting firms.

</comment></comment><comment><USER7> I was just reading here on HN how Amazon recently quietly replicated and replaced UPS and FedEx with their own fleet. These companies are $82.92 billion and $65.45 billion companies respectively so I was pretty impressed.

<comment> m-ee I think you'd be a lot less impressed if you'd received any packages through their fulfillment services. Literally every single driver I've had has lied about attempting a delivery, usually multiple times, then flat out lied and said the package was delivered. The package will then show up 2-3 days later, defeating the purpose of paying for prime or faster shipping.

Customer support for these issues is kafkaesque.

"Hi I have not received my package which says it was delivered at a time when I was home"

"Let me check the tracking, sir it shows that you have received the package"

"I have not, no delivery was attempted"

"Yes you are right you will receive your package shortly"

<comment><USER8> I now get photos of my package when it was delivered.

<comment><USER9> A local Amazon delivery driver was just found to have been taking the photos then swiping the package. The only reason he was caught was someones Ring doorbell. If anything the package photos are to help Amazon refute claims.

I don't know the pay structure for Amazon drivers, but I would not be surprised that we are giving up "trustworthy" drivers for the cheapest option Amazon can provide at scale. I've heard working at UPS as a driver is a great job long-term for some people perhaps leading to more integrity, but I'm just speculating. Maybe I'm wrong but I trust UPS or FedEx with my packages more than Amazon or their flex drivers.

<comment><USER10> Right. UPS drivers are union (Teamsters), Fedex are not.

</comment></comment></comment></comment></comment><comment><USER11> How do you beat Amazon.com?

How do you beat AWS?

How do you survive if Jeff Bezos has his eyes on your market?

Could an antitrust case break them up?

<comment><USER12> > How do you beat Amazon.com?

Trustworthy product reviews, higher quality products, fewer/zero counterfeits, reliable shipping (based on arrival), and/or secure and convenient pickup at more accessible locations.

Subscription services (StitchFix, BarkBox, etc) and manufacturer direct (Drop.com, there are others) seem to be doing fine without 2day shipping on every product in existence. Probably because their customers are getting good products delivered reliably.

</comment></comment><comment><USER13> > _Amazon's hard-driving company culture has come in for its share of > criticism..._

Byran Cantrill famously put Amazon on a pedestal for its _Leadership Principles_ [0] but when I read his own startup's _Values_ , they strike me an awful lot like Amazon's [1]?

> _Other Bezos directives — among the most famous, teams should be small > enough to be fed with two pizzas — have shaped Amazon's corporate structure. > Former employees say it functions as a collection of startups, each with the > resources and support of a mega corporation... They inform business plans, > product ideas, hiring decisions, promotions and compensation... key > attributes of Amazon's culture, such as its emphasis on data-driven > decision-making... At the corporate level, Amazon is composed of many small > teams, each limited by the two-pizza rule, part of Bezos' strategy to stay > nimble and grow quickly._

AWS re:Invent this year had numerous presentations [2][3][4][5][6][7][8][9] on exactly this.

> _Some implementations can actually be quite toxic if you focus so deeply on > one without some of the counterbalance._

This remains a problem for a section of employees. Outpouring of that emotion on _Blind_ come year-end review is significant and sometimes there're folks complaining about it on news.yc, too [10].

\--

[0] [https://www.youtube-nocookie.com/embed/9QMGAtxUlAc](https://www.youtube- nocookie.com/embed/9QMGAtxUlAc)

[1] [https://oxide.computer/principles/](https://oxide.computer/principles/)

[2] Marc Brooker, Amazon's approach to building resilient services, [https://www.youtube-nocookie.com/embed/KLxwhsJuZ44](https://www.youtube- nocookie.com/embed/KLxwhsJuZ44)

[3] Peter Ramensky, Amazon's approach to high-availability deployment, [https://www.youtube-nocookie.com/embed/bCgD2bX1LI4](https://www.youtube- nocookie.com/embed/bCgD2bX1LI4)

[4] Andy Troutman, Amazon's approach to running service-oriented teams, [https://www.youtube-nocookie.com/embed/n1d20Yok000](https://www.youtube- nocookie.com/embed/n1d20Yok000)

[5] Colm MacCarthaigh, Amazon's approach to security during development, [https://www.youtube-nocookie.com/embed/NeR7FhHqDGQ](https://www.youtube- nocookie.com/embed/NeR7FhHqDGQ)

[6] Becky Weiss, Amazon's approach to failing successfully, [https://www.youtube-nocookie.com/embed/yQiRli2ZPxU](https://www.youtube- nocookie.com/embed/yQiRli2ZPxU)

[7] Thomas Blood, Amazon's culture of innovation, [https://www.youtube- nocookie.com/embed/2ZQKPUD7vKE](https://www.youtube- nocookie.com/embed/2ZQKPUD7vKE)

[8] Andy Warfield and Seth Markle, Lessons from Amazon S3's culture of durability, [https://www.youtube- nocookie.com/embed/DzRyrvUF-C0](https://www.youtube- nocookie.com/embed/DzRyrvUF-C0)

[9] Colm MacCarthaigh, Lessons from Amazon's highest available data-planes, [https://www.youtube-nocookie.com/embed/2L1S0zfnIzo](https://www.youtube- nocookie.com/embed/2L1S0zfnIzo)

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

<comment><USER14> My criticism of Amazon's values are (1) they are (generally) not values and (2) they can be used to justify essentially any action. We tried to be mindful of that with Oxide's values which are very much values (and not management bromides or all-hands claptrap) and we are explicit about the fact that (as values) they can come into tension: we explicitly ask applicants to describe a time when two of our values have come into tension for them and how they've resolved it.[1] (The answers have honestly been incredible: many are deeply thoughtful, insightful and inspiring!)

So you may believe that we missed the mark, but Oxide's values are in contrast to Amazon's -- aligned only in the belief that a company's values should be articulated clearly and referred to frequently.

[1] [https://docs.google.com/document/u/5/d/1Xtofg- fMQfZoq8Y3oSAK...](https://docs.google.com/document/u/5/d/1Xtofg- fMQfZoq8Y3oSAKjEgDQCRHx-GMSmPcxdEea4A)

<comment><USER15> Out of curiosity, what kind of research went into articulating Oxide's culture?

<comment><USER14> Honestly, we just sat down and figured out the values that _really_ bonded us: values that we deeply shared, not merely aspired to. There are some values in there that are subtler than they look -- but that the three of us hold very deeply...

<comment><USER15> Thank you. Another follow-up if you don't mind: have you and the others considering ranking Oxide's values separately, and then coming together to determine their hierarchy? It would help a candidate to know which values are more deeply shared, equally shared, or less shared by their own leaders.

Gitlab describes this concept here: [https://about.gitlab.com/handbook/values/#hierarchy](https://about.gitlab.com/handbook/values/#hierarchy)

<comment><USER14> That's a great question, but honestly, we deeply share all of them -- so much so that it's very hard to rank them. And not because each is unequivocally good! Indeed, each of these values can be taken to excess and must be held on tension by the others. So it's hard to imagine any of them taken away -- or valued to the exclusion of the others. (With my apologies for the profoundly unhelpful answer!)

</comment></comment></comment></comment></comment></comment><comment><USER16> I can appreciate the sentiment behind not saying that something "isn't my job." But that's also a quick road to people shaming and guilting one another into doing work they think needs to be done, regardless of what the hierarchy thinks should be done. Simple answers usually aren't the right ones.

</comment><comment><USER17> Yup, and it's filling out every other company in Seattle with people conditioned to be assholes - this isn't a leadership principle but it is how you act over time after being ranked according to the leadership principles.

<comment><USER18> Throwaway account because I don't want my primary account to be associated with my career in any way.

I'm a strong advocate of the leadership principles. My organization knows when to cut the noise and get down the business but we have a fairly diverse workplace where opinions are valued but being rude, insulting coworkers, arrogance, etc are not tolerated. Creating an environment where people don't feel safe means that place won't be around very long.

Given the number of people Amazon employs, I'm sure some people aren't the most flattering, but to say we're conditioning anyone to be assholes isn't based on reality at all.

Usually people who scream the loudest about others being assholes are the ones who can't get along.

<comment><USER19> > Usually people who scream the loudest about others being assholes are the > ones who can't get along.

I was nodding along until this line. The fact that you would phrase it this way makes it hard for me to trust whatever you said earlier.

<comment><USER15> A throwaway proclaims, without evidence, that their employer is a paragon of virtue and its victims are liars, miscreants, criminals etc.

A predictable pattern.

<comment><USER20> This would be a cynical baseless insult, if not for the fact that Amazon has engaged in exactly such underhanded whitewashing behavior:

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

</comment></comment></comment></comment></comment><comment><USER21> Asshole managers who copy Jeff Bezos are just this tech generation's version of asshole managers who copied Steve Jobs that we had to deal with 20 years ago.

<comment><USER22> Was it cool to copy Jobs 20 years ago, after NeXT but before OS X, iPod, and iPhone? I don't think so.

Was it cool to copy his asshole traits before he was kicked out the first time? I would have been too young to know. I am not sure how widely they were publicized.

Anyway, I am not the biggest Amazon fan, but if what they are imitating are things like "customer focus" as claimed in the article and it's not a euphemism or lip service then that sounds good. Seems like they could do that without being jerks too.

<comment><USER21> I would say if there was any lull in Jobs' popularity it would have been between when he was fired in '85 to the early '90s, by '96 Pixar had released Toy Story and Jobs had been Acqui-hired back by Apple. OS X, iPod, and iPhone are far from his first successes.

Through this time he worked with thousands of people and was an asshole the whole time, so when people saw his trajectory in the 90s after his fall in the 80s they were even more convinced that Scully was wrong and Jobs had been right all along.

One of the things they mention in the article is the "bar raiser" concept and I've seen that concept used politically at Amazon offshoots. They don't mention in the article the morale-crushing public blame games in the name of "accountability" that Bezos acolytes can't resist doing, that's well documented in many other Amazon introspectives. Same shit, different decade.

<comment><USER22> I think some of this view of Jobs needs to be anchored to the subsequent successes. Imagine if he had rejoined in '96 [when Apple seemed doomed] but then didn't churn out a bunch of successful projects ... In 1999 the outcome wasn't clear yet.

I totally believe you on terms like "bar raiser" and "accountability". (Never worked at Amazon but did have a stint in Seattle). These are tingling my "corporate bullshit" senses strongly. But I'll still say a term like "customer focus", if it's correctly applied, is very important.

</comment></comment></comment></comment><comment><USER23> As someone who left Amazon, I'd never want to deal with that garbage culture ever again in any form or permutation.

It gives me a headache that founders who previously worked at Amazon would want to promote the "culture" dissonance of Amazon at their own companies.

<comment><USER24> Rather than just denouncing something without explaining it, it would be better if you described what your experience was and how you arrived at these conclusions. That would gratify curiosity more.

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


To the proud owner of a Golang script scraping the hell out of PyPI - <AUTHOR> https://twitter.com/di_codes/status/1298754797529694209 <comment><USER2> At least it didn't take over three weeks to notice this 6x increase...

</comment><comment><USER3> Well, thats a paddlin.

Wonder if someone just forgot to rate limit their side project</comment>


Blonde we like wins Downhill (Last name rhymes with "Bonn") - <AUTHOR> http://www.uvexsports.com/2010/02/blonde-we-like-wins-downhill-last-name.html

<comment><USER2> This virtually demands a reprise of that Guardian piece:

Objections we cannot relate from IP holders we cannot detail prevent us from announcing congratulations to the downhill skier whose name we cannot utter. At the completion of the run we cannot describe she took off the helmet we cannot hawk and and spoke words we cannot repeat. This made us feel emotions we cannot get into, particularly not in front of our wives.

Rock on, anonymous downhill skier.

<comment><USER3> What was the original article? I can't seem to hunt it down.

</comment></comment><comment><USER4> _"During the Olympics", she said with a sneer "your site can't use an Olympian's name even if they use your gear."_

Something makes me think that wouldn't hold up in court. You can't copyright a fact.

<comment><USER5> You're right that you can't copyright facts, and at any rate you can't copyright short phrases like names.

But this is a trademark or right of publicity question, not a copyright question. Copyright deals with rights in written works. Trademark is about rights to brand names and marks on products. Rights of publicity are about using famous people's names and likenesses without authorization.

I don't know much about right of publicity, but as far as trademark goes at least, there is this exception known as "nominative use," which basically allows you to use a trademark to refer to a product, so long as it doesn't look like you are using the name to market your own products. This is what allows you to use a trademarked product name in a review, for example.

My guess is that, in this case, the company could have pushed back a bit on the IOC's blanket warning. Nominative use (which, incidentally, is backed by the First Amendment) would at least protect the right to report newsworthy events about Olympians. But if the company's reports start to look more like product endorsements or marketing pitches, it would become a different question.

<comment><USER4> Endorsements are another issue entirely, but there's something very wrong with the legal system if there are any limitations on accurately stating that $athlete used $product during $event.

</comment></comment></comment><comment><USER6> Now, that's how you do PR!

</comment><comment><USER7> For those not following the Olympics, it's Lindsey Vonn: <http://en.wikipedia.org/wiki/Lindsey_Vonn>

</comment><comment><USER8> silly things like this make me want to be mischievous and create a site that lists all the gold medalists winners + brands they were wearing.

</comment><comment><USER9> The IOC needs to be dismantled.

<comment><USER10> No, I just think there needs to be a better way of funding it... Corporate sponsorship always comes with strings, and when you mix large multi-nationals into the mix, things can get complex real fast.

</comment></comment><comment><USER11> This is, in many ways, very similar to what's happening with the CBC here in Canada. CTV outbid the CBC for broadcast rights, and their contract is so strict that the CBC can't even use the Olympic footage for news segments until at least 24 hours has passed. It's complete and total nonsense, because in nearly any other context, fair-use provisions would apply. Somehow, because it's the Olympics, all rationality goes completely away.

</comment><comment><USER12> I find it odd that the biggest display of corporate advertising in the events themselves are the skis and snowboards.

No other piece of equipment gets to pimp their name and logos as much. Why?

<comment><USER13> Because skiing and snowboarding are the most important pieces of gear in the big events that are also accessible to the general public? Skates are probably the exception but don't tend to generate that same cool factor in general use.

<comment><USER14> That, and the fact that they have a big, otherwise unused upper surface. Where would you put a big honking logo on a skaters shoe?

<comment><USER15> It would also be nearly impossible for the IOC to say 'cover that logo on the base' as you would be changing the sliding characteristics of the ski or snowboard.</comment></comment></comment></comment>


Show HN: PHPUnit doesn't sign its PHAR - <AUTHOR> https://github.com/sebastianbergmann/phpunit/issues/1334

<comment><AUTHOR> Okay, I just _have_ to share this with HN.

I think Test-Driven Development is a neat idea. Truly. But it's depressing to think that all of the developers who sing its praises, nobody has ever thought, "Hey, before blindly running a .phar on my machine (that probably has incredibly valuable proprietary source code for Company X), I should verify the integrity of the package."

You know, because nobody has ever thought to hack the endpoint and modify the file on the server before?

<comment><USER2> I wish I knew more about .phar security in general...</comment></comment>


Running a D game in the browser - <AUTHOR> http://code.alaiwan.org/wp/?p=103 <comment><USER2> >At the moment, I'm only targetting a tiny subset of the D programming language. The language comes with a runtime, featuring a garbage collector. It's my first journey to the land of D-asm.js, and there's no way I'm bringing the D runtime with me – especially if I need to port it to Javascript first.

This is basically why D is not a good systems programming language. Theoretical GC performance aside, barring a miracle, they will never have the resources to develop a high quality GC and even less chance to maintain high quality ports across relevant platforms (heck they couldn't even compile on mobile platforms until recently).

<comment><USER3> That's more a question of entanglement between the runtime and the language, than a question of GC performance. Most of our projects, at work, are in D, and we never wished for a "higher quality GC" (except at the very start, when we started to use D, and were lured into thinking that "now that we have a GC, we don't need to be cautious with our allocations anymore").

Bare-metal in C and C++ is relatively easy, because the compiler doesn't insert runtime-dependent code to implement language constructions.

Avoiding this in D is a lot more subtle, as you have to know which language features require the runtime. For example, array copy (dest[0 .. 8] = src[0 .. 8]) will generate a call to the runtime. Almost every operation on associative arrays will also generate such calls. Class declaration will also generate references to the runtime (for dynamic type information).

However, there are lots of non-runtime things already making D a better C, like array slices and CTFE.

Which means that D is a good systems language, you just have to use it as a better C, and restrict yourself to language features not requiring the runtime.

</comment></comment><comment><USER4> Excellent work, perseverance proves!

D is a very good language, avoiding most of the pitfalls of C++. I have wondered why D isn't picking up. Even Facebook has abandoned Warp [1]. Other than the lack of corporate backup,

The complexity of the language gets out of hold as we move forward.

DMD is the official compiler, but it doesn't optimize as much as LDC/GDC does. LDC/GDC is not available on the Enterprise platforms on which C++ is used (at least on the servers with RHEL/CentOS).

There are 3 different compilers and the resource is not concentrated on improving just one. I agree that competition is good for health, but when things are not picking up why not focus the efforts on making the better the best (probably GDC/LDC)?

Albeit few community members are very helpful and humble, personal attacks are a common thing in the forum.

The forum gives some hints [2], [3]

[1] [https://github.com/facebookarchive/warp](https://github.com/facebookarchive/warp)

[2] [http://email@example.com...](http://email@example.com)

[3] [http://email@example.com...](http://firstname.lastname@example.com)

<comment><USER5> D killed itself with the Digital Mars/Phobos confusion years ago. That it uses a GC doesn't help matters.

<comment><USER6> D does not seem to be the HN darling these days. There have been several cycles of hype and counter-hype on Internet forums about it, much like a sinusoid waveform. What matters is that it delivers in practice and the number of users is growing regardless on the field.

</comment></comment></comment><comment><USER7> Great work. 3D with WebGL is necessary for this, and I don't think you'll run into any issue.

<comment><USER3> Indeed! I already use WebGL for the two C++ tiny web games I mention in my post. Using WebGL from D instead of C++ shouldn't bring many new issues.

</comment></comment><comment><USER8> >An obvious enhancement would be to use the WebAssembly backend of the upstream LLVM, and then using Emscripten+Binaryen to convert the generated WebAssembly to asm.js.

why would you convert WebAssembly to asm.js?

<comment><USER9> For browsers not yet supporting WebAssembly?

<comment><USER8> All the browsers supporting WebAssembly are evergreen browsers. I don't think asm.js is worth supporting once WebAssembly format stabilises(i.e. by the end of this year).

</comment></comment></comment><comment><USER6> Awesome!

</comment><comment><USER10> I must read too much manga, I was expecting this to be about Darwin's Game, rather than a game translated from D to LLVM to C to ASMJS.</comment>


How Airbnb Makes It Hard to Sue for Discrimination - <AUTHOR> http://www.newyorker.com/business/currency/how-airbnb-makes-it-hard-to-sue-for-discrimination <comment><USER2> 'On Wednesday, when I e-mailed Papas about criticism of arbitration, he replied, "Our policies are similar to most companies and we've found that arbitration is an effective way to resolve many issues." Then Papas made another striking point: that "guests also retain the ability to take action against hosts." In other words, Airbnb's customers can sue homeowners for discrimination, even while they're barred from suing Airbnb itself.'

Surprised by that encouragement from Airbnb, this a scary prospect for homeowners using the platform. Even untrue allegations would sink you in legal costs, with Airbnb washing their hands of all of it.

<comment><USER3> Agreed. I actually don't even understand what ground a discriminated guest would have. A host is not a business, as far as I know everybody can decide who enters their house. That being said I'm not a lawyer.

<comment><USER4> In the United States, if you're using your property to derive revenues, you are almost certainly a "business" by the legal definitions of the term that'd put you under the purview of the Civil Rights Act of 1964.

<comment><USER5> Discrimination is permitted if you're not renting your entire home.

Key takeaway: "Who you bring in to your private home is a very personal decision that the state has no business regulating. This is the part of the opinion that convinced me."

[https://blog.splitwise.com/2012/02/07/court-allows- discrimin...](https://blog.splitwise.com/2012/02/07/court-allows- discrimination-in-roommate-selection/)

The court opinion: [http://cdn.ca9.uscourts.gov/datastore/opinions/2012/02/02/09...](http://cdn.ca9.uscourts.gov/datastore/opinions/2012/02/02/09-55272.pdf)

<comment><USER6> And your private home is a very personal place that has no _business_ involving in regulatable commerce.

Is your house a "private" house or a public hotel? AirBnBers want it both ways.

I spend more time at my office than at home, why is my home more personal?

<comment><USER5> This may be how you feel, which I can appreciate. I'm simply pointing out that case law has been established that its allowed. If you have a roommate in your home, AirBnB or not, the law lets you discriminate.

</comment></comment></comment></comment></comment></comment><comment><USER7> AirBNB is interesting.

Before I even stayed at an AirBnB, I paid for a AirBnB, and then was kicked off of their system, because after they "searched public records," they discovered that they didn't want me as a customer.

Interestingly enough, at the time I was a contractor for a three-letter agency, so my background was pretty-damn clean.

They didn't follow FDCPA, no adverse notice telling me what their "source" of information was (so that I could correct it), and no appeal. It took me another week to get my $$ back from AirBnB.

The irony of this is that they still send me emails telling me of terms of service and marketing emails, even after telling me that they don't want me as a customer.

Oh well.

<comment><USER8> AirBNB can easily fix this issue by disallowing the hosts to reject the booking request if place is available. If host rejects the booking request, AirBNB can block them from renting out to other people for that time period. They can run analytics and find out who is rejecting to black sounding names and renting out afterward.

What are they doing?

<comment><USER9> That won't work. The ability to discriminate is a big selling point to hosts. And there's nothing wrong with certain forms of discrimination. Hosts have limited recourse to deal with bad guests. My parents rent out a spare building on their property and they're very conscientious about reviewing each guest. When a guest leaves too large of a mess, they get lower than 5 stars. And since their property is rented most nights, they refuse to rent to guests that have more than a few negative reviews. Since people are renting out their homes, this type of discrimination is necessary to make them feel comfortable.

Where discrimination becomes wrong is when it's based off race or some other protected class. I've said it before, but the way to fix this isn't to deny hosts the ability to discriminate at all, but to withhold the information that hosts need to discriminate unfairly until after the booking has been made. If a host is forced to choose to accept or deny a booking without seeing a picture or knowing the name of the guest and only being able to look at reviews, time on AirBnb and such, then you retain the ability to discriminate against people who have a history of being bad guests without giving hosts the ability to use race or some other unfair characteristic of the guest to determine whether to accept the booking.

But, as others have mentioned in response, AirBnB wants to give the appearance that it cares about unfair discrimination without actually dealing with it. Too many of its hosts want to discriminate in that fashion. AirBnB will do the minimum necessary to address the bad PR and do whatever it can to make it seem like they care about those guests affected, but really doesn't want to do anything about the issue.

<comment><USER10> > Where discrimination becomes wrong is when it's based off race or some other > protected class.

Really now?

If a 50-year-old doesn't want to live with a 20-year-old, that's wrong to you?

If a theist doesn't want to live with an atheist, that's wrong to you?

If a woman doesn't want to live with a man (or woman for that matter), that's wrong to you?

If an Israeli doesn't want to live with a Palestinian, that's wrong to you?

If a pacifist doesn't want to live with a veteran, that's wrong to you?

If an American Indian doesn't want to live with a British, that's wrong to you?

You think people who want to rent out a mere room or two of their home should be _forced_ to disregard the "protected class" of the tenant? That genuinely makes sense to you?

Like seriously... discrimination is not black and white. It shows complete ignorance when you say discrimination based on a protected class is somehow automatically wrong. The context (in this case, whether you're living with them) matters -- a _lot_.

<comment><USER9> > You think people who want to rent out a mere room or two of their home

No, I don't. I think the majority of AirBnB rentals are the whole apartment/home, and it would be very simple to apply the rules I mentioned to just that type of listing. In NYC, where I'd imagine the percentage of shared/private rooms would be higher than other areas, 2/3 of rentals [1] are of the entire home variety. Discrimination based on protected classes is wrong in these instances. It's illegal for a landlord and it's illegal for a hotelier. Why shouldn't it be illegal for a short-term rental just because it uses the same platform that others use to rent out a room in their home?

So, does your diatribe still apply in the majority case or were you just talking about those less frequent rentals?

> It shows complete ignorance when you say discrimination based on a protected > class is somehow automatically wrong.

And it shows complete ignorance on your part that you ignore the circumstances that constitute the majority of AirBnB rentals.

[1] [https://skift.com/2014/02/13/airbnb-in-nyc-the-real- numbers-...](https://skift.com/2014/02/13/airbnb-in-nyc-the-real-numbers- behind-the-sharing-story/)

</comment></comment></comment></comment></comment><comment><USER11> What a bizarre article. It has nothing to do with Airbnb, and everything to do with arbitration.

If your interest is Airbnb or discrimination then skip this article.

Try buying a car without agreeing to arbitration - you can't.

It's a problem. But Airbnb is not the right company to use to talk about it.

<comment><USER12> AirBnB is the perfect company to use to talk about it. In general, racial discrimination in rentals is a historic problem. If AirBnB wants to be the platform for "rentals of the future" they are going to have to be responsible for the degree to which they enable discrimination.

<comment><USER13> It's a one to one transaction and very hard to prove.

Race isnt specified and many user profiles obscure the face. Instabook books automatically without host approval.

<comment><USER14> And then after the host finds out who it is, magically that date is "unavailable".

<comment><USER13> You get dinged HARD for canceling as a host.

</comment></comment></comment></comment></comment><comment><USER15> I always wonder how to handle this. I myself was recently rejected for an Airbnb listing and while I felt angry and wanted revenge, I also felt glad that I didn't accidentally stay with someone that wouldn't like/hated me.

<comment><USER13> There are alot of reasons I turn people down on airbnb. Usually related to money.

<comment><USER15> I understand it can be for more than race, but what do you mean by money?

<comment><USER13> Other things include asking if you can smoke malboro reds inside my place or trying to cram 6 people into my place or just being creepy or weird with your request or trying to haggle on price.

From talking to other host, appearing like your there to party(live 20 minutes away, under 25, bring a huge group for party) is a giant red flag.

Race is pretty far down the list of 'don't accept'.

Honestly, I haven't seen any sketch people on airbnb yet...broke sketch people tend to view it with the same suspicion others view them('won't you be robbed!!!' ).

Women are the biggest pita since they tend to grade harder or their men folk show up to cause issues in my life as a host or they're friends arent cool with airbnb then freak out to find a male stranger lives in the place.

Women bringing guys or alone are pretty chill.... Groups are nightmares.

</comment></comment></comment></comment><comment><USER16> Arbitration clauses are pretty egregious.

Should it come to a real court, though, I imagine AirBnB would say something like "we're basically a common carrier, so we're not on the hook, and you can't compel people to house everybody in their own domicile, so even if they are racists there's nothing you can do about it". Rather like Uber trying to have their cake and eat it too.

<comment><USER17> Should newspapers also be held liable if the owners of the houses being advertised on classified ads discriminated?

Uber is a service that abstracts the drivers. AirBnB is a marketplace where the seller is clearly identified, sets their own prices and policies, has their own reputation, etc. They are very much not alike.

(This is not a endorsement of their arbitration policies, mind you)

<comment><USER18> Newspapers classifieds sections don't help set prices nor are they involved in the transaction for rental/purchase (Airbnb takes a %).

I don't think they can claim common carrier if they're involved to this level, can they?

<comment><USER17> Legally, I have no idea, especially since AirBnB operates in many jurisdictions.

But I don't see why giving price suggestions means they are suddenly responsible for the policies of their users.

<comment><USER6> AirBnB mediates the whole transaction. Their business proposition is entirely that they are the middle-layer between host and guest. In advertising, the advertising medium has no involvement in the services being offered or fulfilled.

<comment><USER17> That's a fair point. On the other hand, should I be able to sue the travel agency through which I bought my tickets if the airline company is found to be discriminatory?

</comment></comment></comment></comment></comment></comment><comment><USER19> The laws are complex and varied, but it's typically legal to discriminate when renting individual rooms. Entire houses are a different story, though.

</comment><comment><USER20> These mandatory arbitration clauses buried inside EULAs should be illegal.

<comment><USER21> What makes you forced to agree to them in the first place? If a service has a terrible EULA - do not use it and do not accept their end user agreement.

(By the way, I'm basically telling you to "discriminate based on EULAs".)

<comment><USER20> That's really not an acceptable solution. Especially in an age where "We can alter this contract however we want, whenever we want" is apparently valid.

<comment><USER21> It's not valid, if you have not entered such an agreement. Hence my previous comment.

<comment><USER20> Well then we're pretty much left with the option of go live in the woods.

</comment></comment></comment></comment></comment><comment><USER22> Allowing to sue someone for discrimination for a service you are not owed in the first place is another brain dead idea of leftists. Capitalism is color blind. Someone else will offer the service if one discriminates.

<comment><USER23> That is literally the opposite of what has happened historically and is exactly why we have e.g. civil rights laws. In a fantasy land where every tiny decision any business makes which is non profit maximizing results in the destruction of that business, sure. We won't have weekends, benefits, a cordial employer/employee relationship, a living wage for anyone, or discrimination. What a wonderful capitalist paradise. I hope you don't live in a part of the world where racism is culturally common and businesses that serve all races are discriminated AGAINST by the majority culture, because those businesses would cease to exist as well.

Fortunately for all of us, the market is just not that efficient. Nobody is ever punished by the market for discrimination, only by laws.

</comment></comment><comment><USER22> Why should anyone be allowed to sue for discrimination when the service is not owed in the first place?

</comment><comment><USER24> Kind of funny to see this in contrast to their rolling out the "Community Commitment" ("you agree you won't discriminated based on ...") they recently rolled out and required of users:

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

</comment><comment><USER25> I think arbitration clauses are wrong. It's the ultimate __* off to your customers and an utterly first class way to say that you don 't stand behind your work.

</comment><comment><USER26> tldr: arbitration clauses

<comment><USER27> To me it sounds weird that something like the right to sue would not be a fundamental right similar to free speech but something you can legally give up. It's even worse when combined with shrink-wrap agreements such as terms of use which is kind of analogous to "by entering this establishment you agree to the following terms of service".

<comment><USER28> The First Amendment only applies against the governments; if some non- government person tells you to 'shut up', it is not a First Amendment issue.</comment></comment></comment>


Is there an online multiuser environment for coding/interacting with widgets? - <AUTHOR>

People log in (to a web page), everyone sees these persistent composable widgets running javascript code, anyone can click on a widget and edit the code (if they have rights to that object).
Everyone viewing a room sees any movement or interaction that other people do on one of the widgets. Also, it would be nice if the widgets could generate other widgets (with code) so people could do dataflow programming and other interesting things just by composing and configuring widgets.
It would also be nice if you could export a set of widgets for inclusion in web pages. Since I'm mentioning things that would be nice, it would be nice if there was a convenient contextual socially intelligent autocomplete system for inserting the highest ranking (most insertions) widget matching your context (type of widget you are in?) and whatever you have entered so far.
I know if anyone responds to this they will probably just be explaining why they think its stupid, but I just wanted to check because I think about having this sort of thing all the time. <comment><USER2> I am working on a startup that will be able to do what you are asking. Feel free to mail me if you want to discuss this topic. my yc name @ gmail.

<comment><AUTHOR> OK, I sent you an email a few days ago.. you didn't reply.. what gives?

</comment></comment><comment><AUTHOR> Sun's Lively has a lot of features along these lines, but doesn't seem to have things like multiuser collaboration and persistence etc.</comment>


Breakthrough: solid-state alkaline batteries a viable alternative to lithium-ion - <AUTHOR> https://www.nytimes.com/2017/08/01/technology/alkaline-batteries-replace-lithium-ion.html <comment><USER2> >Ionic can help us get lithium-ion past cobalt and completely eliminate it with alkaline

There are already lithium-ion chemistries that don't use cobalt, eg. lithium iron phosphate[0]. This has lower energy density than lithium cobalt oxide, but it's safer and survives more charge cycles. It's already commercially available. Solid-state alkaline might be able to beat it on cost, but it's a long way from commercial availability and lithium ion technologies keep improving, so that's far from certain.

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

<comment><USER3> You kinda had me sold on more charge cycle.

And as for commercially available, it seems all the good "professional/industrial" work tools (drills, etc) use LiFePO, even though it's bulkier and heavier (and probably explains why Milwaukee is so goddamned expensive).

<comment><USER4> Do power tools really use LiFePO? Based on everything I have seen they all use the common Li-ion chemistry cells. For example a common cell in power tools is the Samsung INR18650 25R, which is not LiFePO I think.

<comment><USER5> DeWalt used LiFePO for years, but now seems to be using generic lithium-ion batteries.

LiFePO has the nice "doesn't blow up and catch fire" feature. Boosted Skateboards first generation used LiFePO, and worked great, but was expensive. So they switched to generic lithium-ion for the second generation. Their battery recall followed shortly thereafter.[1]

[1] [https://www.cpsc.gov/Recalls/2017/boosted-recalls- electric-s...](https://www.cpsc.gov/Recalls/2017/boosted-recalls-electric- skateboards)

</comment></comment></comment></comment><comment><USER6> Really curious about self discharge. We make super low power wireless systems and one of the best parts of alkaline is that they are effectively shelf- stable unlike most lithium chemistries that loose a lot to leakage. For phones, tablets, computers etc, this is fine since the charge/discharge cycle is frequent, but for applications were devices are either sleeping most of their life or are off most of their life, low self discharge is huge. Hoping for the holy grail for this application in this but not holding my breath as it always seems that breakthroughs are never in the market...

<comment><USER7> Well, primary lithium cells are among the highest shelf life commercial batteries. If shelf life is important, why are you running on rechargeable?

<comment><USER6> I'm not - we ship our stuff with alkalines. but regardless of what current chemistries are best at today, one time use blows. Lets say we get 1 year on our alkalines and would get 1.8 years on lithium, after just a couple years, I will have one or two sets of battery waste even though we are specc'ing our hardware for at least 6 years (when we expect a decent number of units flash memory to start dying. There aren't yet good reusable batteries with good shelf life but there are plenty of applications where that would substantially prevent waste and generally make things simpler. I'm agnostic/indifferent to chemistry (assuming their externalities are similar, which they're not btw), but having a few AAAs for my whole life would be fantastic and probably reduce the environmental consequences of society quite dramatically.

<comment><USER8> _There aren 't yet good reusable batteries with good shelf life but there are plenty of applications where that would substantially prevent waste and generally make things simpler_

I wonder if Eneloop NiMH rechargeables would be a good fit? Their self- discharge characteristics are pretty decent. 6 years is probably pushing it, I guess.

<comment><USER6> Yeah these aren't bad. Only complaint on these is the discharge curve. For some reason they run a little low for their middle voltage range making them work for devices designed/spec'd to run at that lower voltage point. Out of curiosity, anyone know any good sources for ultra low power consumption battery performance charts? Does anyone publish these?

</comment></comment></comment></comment></comment><comment><USER9> > So far, the company, which is backed by William Joy, a pioneering Silicon > Valley computer designer, has demonstrated up to 400 recharge cycles for its > prototypes.

Skepticism is certainly warranted, but Bill Joy is no fool. Here's hoping this comes to something.

<comment><USER10> Bill Joy??! I hope you don't have to switch the batteries into "insert mode" to charge them.

<comment><USER11> At the least it will turn on instantly.

</comment></comment></comment><comment><USER12> I wish there was a series not - on breakthroughs and tech-pr releases, but really on the obsticles that keeps those inventions and advances from becoming every day reality. Sort of like a progress blog, which updates the timeline with every new obsticle.

</comment><comment><USER13> >that can be recharged hundreds of times

In the world of rechargeable batteries, "hundreds" of charges isn't very many. You could use that up in six months if you're a heavy user. In cars you want thousands of cycles, so the battery outlives the car (charging every day for 15 years = 5478 cycles), which prevents very costly replacements.

So, it's cool, but by itself, not the breakthrough we're looking for.

<comment><USER14> Big battery cars like the Bolt and Tesla do not need to fully cycle every day.

<comment><USER15> Exactly right.

5478 cycles at 200 miles per is greater than 1,000,000 miles. Few people will put that many miles on a car.

OTOH, given how there are fewer moving parts in EVs, there's certainly a better chance for an EV to make it the distance than for an IC car.

<comment><USER16> Batteries don't maintain their maximum charge cycle to cycle. High cycle count batteries hold a fraction of the charge of new batteries. You may get 200 per cycle at the beginning but after a few hundred cycles that could drop down to 150. Depending on your daily commute, the car may become unusable long before the battery is completely exhausted.

<comment><USER17> Usually the "cycle life" of a battery is when the capacity drops to 80% of new when fully discharged and recharged.

You can extend the life of most lithium batteries dramatically by not charging all the way and not discharging all the way. Use the middle 50% of the battery's capacity for the vast majority of the cycles, and your battery may last 4 times as many cycles.

<comment><USER16> But that means your 200 mile battery is now a 100 mile battery from day one. If your daily commute is 150 miles, that means you need to carry the weight of a 300 mile battery. With all the extra expense of moving the additional weight plus the extra initial cost of the larger battery, are you really further ahead?

<comment><USER18> If your daily commute is 150 miles perhaps you are living or working in the wrong place. :-)

Of course if you have access to electricity at your workplace you only need 75 miles anyway. A Hyundai Ioniq charging from a normal 230V 16A circuit charges fully in about 8 hours giving you about 150 miles. But 75 miles to get there means it will be only half empty when you arrive so it will only take 4 hours.

The real challenges with electric cars now for the near and medium future are infrastructure not range. There is a project starting, in the UK I think, to turn lamp posts in to charging stations. One could imagine a scenario where companies used the availability of charging stations in company car parks as incentives to work there.

<comment><USER17> Range helps address infrastructure by not needing as many charging stations. Since EV owners typically charge every night, that means only trips that last over 200 miles need any kind of public charging infrastructure at all.

Also, if evenly spaced over an area, you need only a quarter as many charging stations as you do with 100 mile range (besides the above effect of having to do fewer trips that require charging stations to begin with). And with a larger battery, the vehicle can accept a much higher rate of charge. That's partly why 75-100kWh Teslas can do 120kW Supercharging and 30kWh Nissan Leafs can only do 44kW DC fast charging at most.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> Agreed with Aphextron. This is old, stale news. Until someone gets one of these "promising technologies" into production, I'm not going to read about "new batteries." Information, like this, has been circulating for a decade. I've still yet to see any of the nanotech in a battery.... yawn.

</comment><comment><USER20> iGo Green's rechargable alkaline batteries from 2011 ([http://www.zdnet.com/article/igo-green-rechargeable- alkaline...](http://www.zdnet.com/article/igo-green-rechargeable-alkaline- batteries/))

In my experience "any" battery is rechargable if you are willing to wait long enough but recharging _rate_ has always been a killer for alkalines.

<comment><USER17> I have a battery charger that, in addition to typical NiMH batteries, is designed to recharge regular disposable alkaline batteries. It doesn't work every time, and you don't get the same capacity as the original, but you definitely can get a few more uses out of most disposable alkalines.</comment></comment>


Compressive Imaging: A New Single-Pixel Camera - <AUTHOR> http://dsp.rice.edu/cs/cscamera

<comment><USER2> General overview of this type of stuff:

[http://terrytao.wordpress.com/2007/04/13/compressed- sensing-...](http://terrytao.wordpress.com/2007/04/13/compressed-sensing-and- single-pixel-cameras/)

</comment><comment><USER3> Not a bad idea. If they could get this down in size and up in quality it would make really super small cameras in everything possible.

</comment><comment><USER4> Besides MRI research, has any useful applications come out of this?

<comment><USER5> It's potentially huge, because of the potential for sub-nyquist signal reconstruction. Imagine if the only extant photo of a historical event was a shitty jpeg or comparatively low-resolution picture. Compressed sensing yields techniques for reconstructing a higher quality version of the image than the original hardware or codec was capable of recording.

It's frustrating to me as I work a lot with audio and video but the math is much harder than anything else I've encountered in DSP. I feel stupid every time I dig into it.

<comment><USER4> Yeah ... but what type of real world data is sparse?

<comment><USER5> Many, many kinds. A typical photo is quite sparse. Oh sure, there is a lot of variation in the individual pixels etc., but it's usually a picture of something with shape and fairly strongly defined visual characteristics (which is what made it interesting enough to record in the first place). Random chroma noise, by contrast, is not sparse at all. In that sense, it has a much higher information content than a picture.

That Terry Tao blog linked above is by far the best entry point I've found into the subject but I'm really not qualified to explain or simplify it well, I'm afraid.</comment></comment></comment></comment>


Ecofriendly Conversion of Methane into Useful Gases Using Light Instead of Heat - <AUTHOR> https://scitechdaily.com/ecofriendly-conversion-of-methane-into-useful-gases-using-light-instead-of-heat/ <comment><USER2> Is methane not already useful? I know that methane ("natural gas") is already used for heating and in vehicle engines. This article fails to explain the benefits of conversion to syngas.</comment>


The Results of the 188.8.131.52 Public DNS Resolver Privacy Examination - <AUTHOR> https://blog.cloudflare.com/announcing-the-results-of-the-1-1-1-1-public-dns-resolver-privacy-examination/ <comment><USER2> So APNIC essentially gets an "anonymized" firehose of DNS requests sent through 220.127.116.11? What is their retention policy?

From [https://www.cloudflare.com/resources/assets/slt3lc6tev37/5xl...](https://www.cloudflare.com/resources/assets/slt3lc6tev37/5xlHCvvNBrvrIoWbuk1vTy/e1058b0d366adf4e983aef99a6ed2a1f/Cloudflare_220.127.116.11_Public_Resolver_Report_-_03302020__2_.pdf):

"A log of the DNS request, with truncated source IP address, is routed from Cloudflare's edge data centers to Cloudflare's main data center. The data first enters a stream processing platform that translates the truncated source IP address into the autonomous system number ("ASN") of its originating network, and deletes the data within 25 hours of ingestion. Moving from the stream processing platform, the data flows into a database table, where the DNS data record is stored with the ASN instead of the truncated source IP. The DNS data records in this database table are deleted within 25 hours...

Cloudflare has an agreement with Asia-Pacific Network Information Centre ("APNIC") that allows Cloudflare the use of the 22.214.171.124 IP address. In exchange, APNIC has access to the anonymized logs stored in the Public Resolver table in Cloudflare's data center for research purposes. APNIC has access to this data through the use of a unique, authorized API key."

</comment><comment><USER3> > A public resolver user's IP address (referred to as the client or source IP > address) will not be stored in non-volatile storage. Cloudflare will > anonymize source IP addresses via IP truncation methods (last octet for IPv4 > and last 80 bits for IPv6). Cloudflare will delete the truncated IP address > within 25 hours.

IMO, truncating only last octet of IPv4 address is not anonimized enough.

<comment><AUTHOR> We drop the last octet at the edge. Then we keep the truncated IPs for 25 hours to deal with attacks. Then we delete it completely.</comment></comment>


What is the use of Url shortners? - <AUTHOR>

I want to understand the significance of Url shortning websites and short url besides their use in micro-blogging sites and advertising/campaigning. <comment><USER2> When services like Twitter limit your messages to 140 characters, you don't want to waste 50 characters on a long URL (e.g. <http://news.ycombinator.com/item?id=2547123>) when instead you could create a short(er) 10 character URL instead using a service like bit.ly, etc.

</comment><comment><USER3> The biggest benefit is that you can track how many people clicked on a link. That way users know which share links were popular. And for URL shortening sites themselves they get even better analytics where they get in real time all the popular shared links.

</comment><comment><USER4> 1\. Allow companies to scan content and verify it is safe.

2\. Allow companies/people to "brand" links (I guess this is advertising, to an extent).

<comment><AUTHOR> You may be right. But I'm not quite getting you. How bit.ly or <http://bit.ly/dfMsd> will allow companies to scan content or brand links

<comment><USER5> Just add the + at the end to see stats: <http://bit.ly/dfMsd+>

</comment></comment></comment><comment><USER6> url shortener are useful for any time you need to send a link in text form. Most sites are terrible at making good urls, and tend to make them huge and complicated. URL shortener help with that. url shorteners are also fairly bad for the web and should be avoided in all cases where you have another option.

</comment><comment><USER7> The use I am familiar with: If you post a very long URL in an email and send it to a group, it often will not work for the receivers because it is broken up onto two lines. Lots of people aren't web-savvy enough copy and paste both pieces and for those who are that savvy it's a hug nuisance. So a URL shortener makes it much more likely that people will go read whatever you posted by removing those issues. I shared a URL shortening service with someone who routinely posted articles to a list we both belonged to and she was thrilled to pieces and has used it consistently ever since.

</comment><comment><USER8> goatse</comment>


The first TV show about competitive video gaming - <AUTHOR> http://www.latimes.com/business/technology/la-fi-la-tech-20160213-story.html <comment> J-dawg Ok, I know it's not exactly the same thing but anyone who was a nerdy kid in the UK in the 90s will remember Gamesmaster.

What an awesome show! Thanks for the nostalgia.

[https://en.m.wikipedia.org/wiki/GamesMaster](https://en.m.wikipedia.org/wiki/GamesMaster)</comment>