Ask HN: Best way to sell a domain name? - <AUTHOR> What's the best way to sell a domain name? I have some domains that I've had for years (such as usethesource.com) that I'd like to dispose of. <comment><USER2> A domain like usethesource.com will not be easy to sell. The audience of possible buyers for a domain like that is quite limited. That being said, the best thing you can do to sell it is put it on sedo and godaddy with a low BIN price. You can also email site owners that could be interested in the subject of your domains. Though again, a brandable domain like the one you posted will most likely not be attractive for a person who has already established his business. If you have generic domains, the story is quite different. A good generic .com domain will give you great results in an auction. You can check with the adwords keyword tool to see hou many exact match searches are done for your domain keywords every month. If youre looking at anything below 10k searches, its not a good domain. My personal expectation, being a long time domainer, is to have more than 160k exact searches per month.

In my experience, the best results i´ve had have been through Sedo. I´ve sold 26k usd with just 6 domain sales. They were generics and I just put an "asking for" price and let offers come through. You have to be patient though.

<comment><USER3> I hope you someday want to start a business and find out the domain _you_ want is held hostage by a squatter.

<comment><USER4> Interesting choice of words - 'held hostage' - as if you have some prior right to it and it was taken from you. That's a pretty self centered world you're living in.

<comment><USER3> So you're a domain squatter then?

<comment><USER4> I made a living from buying/selling domain names. I don't have qualms about paying money for a better brand name for my businesses. I don't have a problem with buying low and selling high. I don't think the world owes me anything and I certainly don't believe other people are holding things hostage from me when I never owned them nor had any rightful claim to them.

Grow up.

<comment><USER3> _I made a living from buying/selling domain names._

Well that wasn't too hard to guess, huh? -Sad.

<comment><USER4> How I made my living has no relevance to the stupidity of your statement that you are somehow entitled to something you never owned or had any right to.

There are a lot of legitimate arguments but yours isn't one.

<comment><USER3> A legitimate argument? Do we really need to go through why domain squatting is bad? It's quite obvious, but alright then.

      - You have a business idea.
      - You come up with a great domain name for your company.
        One that's relevant to what you're doing, and clever too!
      - You go online hoping to buy that domain.
      - You find out it's been taken by someone..
      - .. but not for the purpose of actually *doing* something with it.

He's just _holding it from you_ , hoping he can make you pay _dearly_ for it.

Bottom line: the domain name that would be perfect for your new business _should_ cost you something like ten dollars. You'd buy it, and happily continue getting shit done.

But now that the squatter has it, it costs you _thousands of dollars_ , just because Fuck You.

That's Bad, mm'kay?

<comment><USER4> There is this nice empty plot of land without a house on it. I should be able to pay next to nothing for it because nobody is using it. Forget everyone else who might have been interested in the past. Forget the current owner who bought it legitimately. I deserve it because I want it and don't want to pay a fair market price for it.

<comment><USER3> Let's not forget that the actual market price for a domain is roughly 10 dollars. Whatever a scumbag squatter can _extract from a buyer in need_ is another matter.

The market price for a plot of land is something based on the location and area.

Will a land-owner accept the current market price for it, or will he demand.. say, _500 times_ the market price (or preferably 5000 times or 50000 times), just because Fuck You?

Is land so cheap that anyone can start just grabbing hundreds of plots all over the world, on the off chance that someone might someday need one of them, planning to then extract 5000 times the market price from the buyer if he happens to need it bad enough?

<comment><USER4> So you DO understand location/area and how they are correlated to value. Thus, you must recognize some names ARE better than others and are worth more. Therefore, the market price ISN'T $10, you are simply lying through your teeth to get what you want. The market price of UNCLAIMED land may be $10, and there are definitely unclaimed lots out there worth more. It's a whole business to go out and look for them. The market value of a CLAIMED piece is what someone is willing to pay for it and whether it meets the owners selling price. That is how markets work, there are at least two participants a buyer and a seller and the price is agreed upon by both parties.

Your wording is still silly, 'needs' as if you suddenly can't live without a domain name someone else registered before you because you 'had a great idea for it.' You and anyone else are welcome to buy as many domains as you like that nobody has registered. You can use them for whatever purpose you damn well please as long as you keep paying. If someone else wants them from you, they need to pay enough to convince you to sell it to them.

It's capitalism, if you can't handle it maybe you shouldn't be here.

<comment><USER3> _Thus, you must recognize some names ARE better than others and are worth more. Therefore, the market price ISN'T $10_

You're twisting the meaning of "market price" to suit _your_ view, while accusing me of doing the same.

There's a marketplace out there where anyone can go pick up a domain name for roughly 10 dollars. That _is_ a domain's market price, but someone may consider a specific domain name worth more based on his personal circumstances, such as being about to start a company that the domain would suit well, and that's exactly what you and other scumbags are counting on.

ICANN and the registrars don't price domains according to how desirable they think they are, and that's why they're all the same price.

But you do. You buy ones you think _other people would want_. They're worth more than ten dollars _only when someone else actually wants them_.

The domain you're "holding hostage" would _still_ be worth only ten dollars to almost anyone else besides the guy who wants it. It's not the same as a plot of land, because there's no general consensus on the market price.

There are lots of people who have thought of various good names for a product they're making, just to find out that they're all squatted. I'm one of them. You're a squatter. We're bound to not get along.

<comment><USER4> You are simply ignoring reality. It's not a matter of twisting anything.

"The price of a commodity when sold in a given market."

There are two markets. There is a primary (unregistered) and a secondary (registered) market. This is a fact.

The price of a domain in the primary market is ~$10 (we'll ignore the fact some registries DO charge based on name quality - see .tv for an example of this). The price in the secondary market is whatever is agreed upon by the buyer and seller. There is NO set price, it's a normal functioning capitalist market.

Nobody is holding anything hostage in the secondary market. It's simply supply and demand. The domains are worth what someone is willing to sell them for and what someone else is willing to pay. There is no morality involved, it's capitalism in its purest form. You aren't owed anything and you don't owe anyone anything. There is a near infinite supply in the primary market for you to invest in. By using the secondary market you're acknowledging the value someone else has recognized before you in the primary market.

As far as it would still be worth $10 argument, that's laughable. As someone who has owned over a thousand domains and made a living off it, I've had domains earning thousands of dollars per month just being parked. You think those are still worth $10? That's idiotic. As far as the "besides anyone else" portion of your argument. Also stupid. Of course you will see a downward sloping demand curve for ANYTHING. That doesn't mean its worth the lowest value on the curve. Supply AND Demand. There are two sides to this simple equation. The supply for domain names is unique in every circumstance. You can't get another uniquename.com. You can get something else, but there is only 1 uniquename.com. So the owner is more than able to try and go for the highest point on the demand curve. (S)He only has the opportunity to sell once.

You're upset because you didn't/don't get what you want for an irrationally low price. You probably think its unfair someone else did get it, and that their time, effort and investment aren't worth anything. Well, I think your product is stupid and a waste of time, effort and investment should I get the domain instead of you after you own it? Would that be fair?

We may not get along but your argument is nonsensical. I will probably never change that line of thinking because people who think things are always unfair are bound to constantly look for someone or something else to blame. People who get shit done simply recognize the rules of the game and play to the best of their abilities.

<comment><USER3> Oh you're still at it?

 _The price in the secondary market is whatever is agreed upon by the buyer and seller. There is NO set price, it's a normal functioning capitalist market._

Well, your "secondary market" consists of only _two people_ \- you and the guy who would actually use the domain you're hogging. It's not much of a Market, but of course you'd call it one in an attempt to scrape together some semblance of legitimacy for your point of view.

 _As someone who has owned over a thousand domains and made a living off it, I've had domains earning thousands of dollars per month just being parked. You think those are still worth $10? That's idiotic._

Cute. The market price for a domain itself _is_ , in fact, that $10. Whatever money you happen to manage to scrape off of unsuspecting (and likely idiotic) visitors to your sleazy malware/bullshit-laden parked domain pages is irrelevant.

 _that their time, effort and investment aren't worth anything_

Your time and effort is worth only as much as you manage to extract out of your victims. You're not "adding value" to anything - quite the contrary. You're a parasite.

I'm not going to waste any more time arguing with you. You claim you've done nothing wrong, but any non-scumbag would disagree.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> Here is how I sold a domain for >$4,000 -> If the domain has SEO potential (exact match to search term), what worked for me was to create a one-page static website explaining the domain name is for sale, and explaining the major benefit of the domain name. Important is to optimize the title and meta tages for SEO. Put the site up, wait a few months and see if anyone comes to you. If your site starts ranking in google you will get people's attention. What is key is to know if your domain has value, and if it does to know how to negotiate.

</comment><comment><USER6> 1\. Do a google search for any keywords in the URL. Or any related keywords. Find the advertisers. And send a pitch email to the advertisers. These are guys who have already shown that they will spend money behind particular keywords. Show them the SEO benefit and they'll pay more than folks on flippa, sedo etc.

2\. For domains like use the source, its hard to find advertisers. So hit the social networks and forums. Find someone who runs a Star Wars forum and ask them if they are interested in buying the domain.

3\. If that too doesn't work, then list the domain up on sedo, godaddy and all the other networks out there. But private sales will almost always lead to more money than a sale from a marketplace. So try private selling first.

</comment><comment><USER7> John, it's a real shame news.usethesource.com never took off. I liked (and still like) the idea of something similar to HN but just for programming news/commentary.

</comment><comment><USER8> It depends on if you already have a buyer.

I've sold a few domains through Sedo and it's a pretty painless process, however their fees are really high, especially if you list your domain in their marketplace.

You can save money by finding a buyer outside of Sedo and then using them purely for escrow.

Since most people are going to find your domain by typing it in or through Google, that might be the best approach.

</comment><comment><USER9> Full disclosure: I work downstairs from them.

Flippa.com

Online auctionplace, some significantly sized sales recently.

<comment><USER10> He will be crushed there. If the domain doesn't have a revenue stream (and isn't generic, EMD > ~3600/m) then maybe he will get $50 or maybe $100 tops. add $30 fee + 5%.

<comment><USER9> Good to know. In truth despite being close to them I don't know a great deal about their business model, beyond that they seem to be quite successful.

</comment></comment></comment><comment><USER11> Can anyone tell me how much would a domain 1337.us cost ? :) I own it for a month maybe and someone told me I could sell it for a bunch of money if I wanted ...

<comment><USER5> > "someone told me I could sell it for a bunch of money if I wanted" This > reminds me of a common scam in domain names: I once received an email saying > I had a very valuable domain. I got really hyped. Turns out the guy was > ready to buy it... but he needed a 3rd-party appraisal from a company I had > never heard of. Basically this appraisal company was scamming for $30 > appraisals. Just FYI.

</comment></comment><comment><USER12> Sedo. Given it's status as the largest marketplace for domains, it's a good bet.

Like any other asset, you'll get the most value by holding onto it for as long as possible.

</comment><comment><USER13> You may be able to sell through or to <http://www.namelayer.com/>

</comment><comment><USER14> Besides Sedo there's also flippa.com, although i'm not entirely sure if that's for domains-only...

</comment><comment><USER15> Flippa.com has good volume. Dedicated Exchange for domain names.

</comment><comment><USER16> Put them up for sale on sedo.com doesn't hurt for starters</comment>


Poll: Vast majority of Americans don't trust the news media - <AUTHOR> http://bigstory.ap.org/article/35c595900e0a4ffd99fbdc48a336a6d8/poll-vast-majority-americans-dont-trust-news-media <comment><USER2> People don't trust the news media because they don't put enough value on this trust. It's that simple. People want to be entertained more than they want to be informed. This pushes an entertainment aspect onto every single media producer regardless of content. This is very difficult to do for news without compromising integrity and so we get what we have today.

</comment><comment><USER3> is this a suprise</comment>


Knowledge-Sharing Architects as an Alternative to Coding Architects - <AUTHOR> http://ithare.com/knowledge-sharing-architects-as-an-alternative-to-coding-architects/ <comment><USER2> Let's start by defining architect. Where the business model is charging for hours(consultancy) or bureaucracy is the rule; the architect is like a ming dinasty china jar next in usefulness to the scrum master. He can't really apply the principles of software quality since attributes like conceptual integrity, reusability, modularity, loose coupling and maintainability are not aligned with "picking the fad framework that average joe can be productive with and charge the client for those 20 reports instead of a reporting engine that can be parameterized, lets then use unit tests and code reviews to cheat ourselves into believing we're making quality stuff". Its different when the team is developing a product that is also the business model where resources are never enough and there is no room for bullshit, then the architect is the guy that can sketch that reporting engine that will be nurtured and improved by the team, therefore he both codes and shares knowledge.

<comment> no-bugs To be clear: I was NOT speaking of the first one :-). As for the second one:

> the architect is the guy that can sketch that reporting engine that will be > nurtured and improved by the team,

Yes (in fact, I LOVE this definition ;-)).

> therefore he both codes and shares knowledge.

Not necessarily, and that's the whole point. Initial development (as noted in the article) is one of the exceptions - but "sketching a thing that will be improved" (which I agree with) is VERY different from "working day in and day out on improving it" (which I do NOT like). And this difference is the whole point of the article.

</comment></comment><comment><USER3> Most of the concerns in the article can be alleviated by embracing Domain- Driven Design. Express Domain Model in code, create and share Ubiquitous Language - common for business and development within a single Bounded Context. In such case an architect modeling abstractions does it already in code - less translations, less room for waste. Code is the ultimate representation of Domain, even when diagrams, etc. become out of date. Not to mention that knowledge-sharing through collaboration is a fundamental process in DDD, for which everyone is responsible.

<comment><USER4> Is this comment a sarcastic response ? I really couldn't tell.

<comment><USER3> It wasn't meant to be sarcastic. In my opinion coding vs knowledge architect is false dichotomy if you embrace DDD.

<comment><USER5> Yes and no.

Ubiquitous language depends on agreement between all the major stakeholders -- technology and business alike (That's why it's ubiquitous)

I'd shoot for that, and give DDD a pass. It's difficult, nary impossible, to get even medium-sized groups of people in alignment in regards to language. So do the analysis, keep working on that, and leave the code to the coders. That's a win.

But it ain't architecture. It's analysis.

Sidebar: does anybody _do_ analysis any more? I see either complete neglect of it, it being done as some sort of rote order-taking, or as the full-pass- through OOA/D/P in the GP.

<comment><USER6> In case studies with formal methods, specification languages like Z are used to make the requirements more clear. Such methods have shown to work pretty well with both programmers and laypersons learning it easily. This means a separate methodology or whatever might not be necessary if we just needed a less, ambiguous language. Of which there are many with some having tool support.

Example of one methodology that uses Z in safety-critical field with low defect results:

[http://www.sis.pitt.edu/jjoshi/Devsec/CorrectnessByConstruct...](http://www.sis.pitt.edu/jjoshi/Devsec/CorrectnessByConstruction.pdf)

<comment><USER5> I think perhaps you do not understand what I am saying.

Yes, there are quite a few such tools which allow laypeople and coders to come to an agreement. My point was about coming to and maintaining that agreement. Not how exactly you would go about doing that.

I could think of about half-a-dozen good ways to formalize a domain. But even if your process is nothing more than "come to this room and let's talk"? It's difficult to get many people with many other duties in such a situation as much as it would be required.

Don't forget -- and I'm sure you haven't -- that it's not just formalizing a language and grammar. It's the fact that these change over time as participants become more absorbed in the domain and see the same concepts from various viewpoints.

<comment><USER3> Which tools would you recommend for achieving agreement ? Any particular technique or framework ?

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Good read but it seems to me that the author escapes the difficulty of his side of the argument by creating a God-like super-architect. Hiring someone with the level of talent the author is describing would probably lead to great outcomes no matter what. If the team structure is broken that person would fix it. I'm not very familiar with the debate but I'd like to see a structure that works for the "average" architect since most people are probably closer to that.

<comment> no-bugs > by creating a God-like super-architect.

Interesting point of view, never thought along these lines. On the other hand, thinking a bit about it - I don't feel that this approach requires a super- architect; what it requires is a DECENT architect (which is a prerequisite for any successful project anyway).

In other words - sure, architect should be one of the best coders - but if he isn't, the project is doomed anyway (and having "the best of the bunch" is always possible - by definition).

</comment></comment><comment><USER8> Reading the code of others is no substitute for writing code yourself.

It's very easy when looking at the solution to a problem to say "I would've thought of that" and maybe you're right. But maybe not.

Having real experience of the consequences of your decisions, keeping skin in the game, is also important. Maybe not for every single decision, but a representative sample.

</comment><comment><USER9> Every other time I've seen architects used on the business end, you wind up with huge messes that take a long time to produce anything of business value while developers basically sit idle or flail around trying to build prototypes based upon very vague ideas. This isn't to say it's useless, but YAGNI principle is violated on the business side _very_ frequently and costs themselves significantly. You tend to get messes that define an entire lexicon of thought down to minutiae like DoDaF [https://en.wikipedia.org/wiki/Department_of_Defense_Architec...](https://en.wikipedia.org/wiki/Department_of_Defense_Architecture_Framework)

</comment><comment><USER10> I think this presents a false dilemma, ie it doesn't need to be coding vs non- coding. You can code and knowledge share also. Especially if you pair program or focus on collabitive coding techniques. It doesn't need to be one or the other.

<comment><USER11> Yeah exactly - frankly, I think some of it may be that many teams are micromanaged in their day-to-day, hour-to-hour tasks, and it's tough to be a knowledge sharing leader and still code.

</comment></comment><comment><USER12> An interesting read, but if you're going this route how do you ensure that there are viable career paths for senior people who prefer to focus on code over "knowledge-sharing" kind of activities?

I suspect that part of the answer might lie in recognising that a lot of software projects _don 't_ need a particularly scalable development approach.

<comment> no-bugs > how do you ensure that there are viable career paths for senior people who > prefer to focus on code over "knowledge-sharing" kind of activities?

From what I've seen, those Senior and Really Strong people who prefer to code, do NOT even want to become architects (and to move their career beyond Really Really Really Senior Developer - whatever the name this position carries). But this is a different problem (at least in part related to too much responsibility and "comfort zones"), and I don't know of any solution for it...

</comment></comment><comment> m-i-l I'd have thought that what the article refers to as "coding architect" would be a dev lead in many organisations, and the role of "knowledge-sharing architect" is the traditional software architect role, i.e. someone who comes from a coding background and understands code well but isn't one of the core developers (so doesn't risk getting lost in the details, becoming a bottleneck, etc.).

<comment><USER13> > I'd have thought that what the article refers to as "coding architect" would > be a dev lead in many organisations

I've seen it called "senior developer", although nowadays this is used a bit inflationary.</comment></comment>


Top 15 Web Design Trends for 2015 - <AUTHOR> http://blog.toolyo.com/web-design-trends-2015/ <comment><AUTHOR> I made a huge research before writing this article. But if you have any advise to improve it please let me know. Thank you!</comment>


Netscape [present day, present time] - <AUTHOR> http://isp.netscape.com/ <comment><USER2> Doesn't really look that different than Yahoo.com to me. Though Yahoo! started off more like that than Netscape for sure.

</comment><comment><USER3> Whoa... is this a real thing?

</comment><comment><USER4> sadly, it's identical to what you'll see at compuserve.com right now too.

i'm still sad about what happened to Netscape.</comment>


The fight to keep the internet free and open for everyone - <AUTHOR> https://www.bbc.com/future/article/20191025-the-fight-to-keep-the-internet-free-and-open-for-everyone <comment><USER2> > this "network of networks", the free and open online world envisioned by > early pioneers is under attack

This is a dire topic. But I think we have it backwards when we consider the "network of networks" as a high-level construct (social, economic, etc.) like for instance we refer to "factories" or "catering delivery".

I think we need to take a big step back to first principles and build up our model piece by piece based on the simplest facts.

The "network of networks", be it neutral, is a 'dumb medium', like air. It just _is_ , _does_ , period. It does not filter, think, it just transmits whatever. Like air conveys sound, like we breathe it, air is air and does what air does. You do not restrict the medium, it makes no sense (object does not implement that method!), rather you confine it, you limit its flow.

This is even before "the public thing", a Respublica, for we have no choice but to share the same air on this planet. For now, at least.

Enter the other component, physically a ground or "territory", in network terms "zones", for lack of a better term — a set of rule-defined network spaces, a 'country' in networkland.

Enter segregated spaces and filtering (in/out, gates and windows, gatekeeping, restricted areas, walls, etc). Essentially "buildings" from a physical standpoint. These things are 'private', removed from the 'public' space.

This is my LAN, this is Facebook, this is every "network" in the "network of _networkS_ ". When you 'enter' that private space, you are bound to the rules of the tenant. Just like you would at a friend's place, at Disneyland, at work and in the streets of your country. Rules, everywhere, that you are bound to follow if you roam the space they define. Cross some border — property, city, country — and other rules define another space.

Now we have arrived at the "high level" view of internet, from a solid model based on first principles. As we hit www.something.com or rather www. _someone_.com, we leave the neutral medium of air, we leave the public space of whatever country/city we're in, and we join a new space with _someone 's_ rules.

Now think about it: why do people go to Disneyland with their children? why do they watch Netflix Kids with them? Because they _like_ the rules in those places, they embrace the values of whoever rules over there, _enough_ to spend time and money —the only two resources at the end of the day.

And there is exactly where the debate about "what should platform X do" should take place: as we would regulate private spaces opened to the public.

A complex aspect of "social media" and the policing of speech online comes from the fact that most platforms are now serving two entirely different sectors in one: physically, we had the press — but that's one way, paper/radio/TV— and we had communication — landline or mobile phones, post letters, fax; but in the virtual world, we are now consuming information from the press (and countless other types) and communicating mostly in the same place. Thus you can't regulate Facebook exclusively as either the communication sector or the media/press sector; you need to consider it from _both angles_. It's a complex topic, likely to require dismantling old agencies and creating new ones more adequate, more fitting the problem space.</comment>


Rumor: Amazon Wants To Rent Netflix And Never Return It - <AUTHOR> http://www.techcrunch.com/2009/07/13/rumor-amazon-wants-to-rent-netflix-and-never-return-it/ <comment><USER2> This rumor has been going around for years. Is anything different this time?

<http://blogs.zdnet.com/BTL/?p=5302>

</comment><comment><USER3> A rumor of this variety, when it has substance, tends to produce more of a lift in the stock. This one came from weak sources, and has been oft repeated in the past.

</comment><comment><USER4> Amazon OWNS Lovefilm, the most popular DVD rental site in the UK.

I use Lovefilm, because it aggregates to about £1.25 per DVD over a month, and that's damn good.

<comment><USER5> Do you have evidence of that? Their site indicates they're privately owned and VC backed.

<comment><USER4> Here's one:

<http://www.theregister.co.uk/2008/02/05/amazon_lovefilm/>

I think it's a stake.</comment></comment></comment>


AOL's Alto mail client shutting down after 5(?) years - <AUTHOR> I don't seem to see any news or coverage of this. Just an email they sent to their users. <comment><AUTHOR> I guess it never got any traction, mindshare or interest. Looks like another empty HN post elsewhere: [https://news.ycombinator.com/item?id=15544970](https://news.ycombinator.com/item?id=15544970)</comment>


Show HN: Covid ICU Bed Tracking – In Production on 130 ICUs - <AUTHOR> https://github.com/icubam/icubam <comment><AUTHOR> Hi HN, for a bit of background, the initial prototype got built in 3 days (met the doctors on Sunday, rolled out wed. night). We've since built out a pretty autonomous piece of software that can allow doctors to add each other and easily build out coverage over a country. We've spread quickly to 130 ICU wards in France which covers >2000 COVID+ ICU beds, and are hoping ICUBAM can be potentially useful to other countries with an overstrained ICU system.

</comment><comment><USER2> this is very cool! good job on "getting out of the way" \+ making it easy to enter data.

How do you know who to text (who is on shift, that is, as shifts change)? Or do you just text everyone periodically?

<comment><AUTHOR> We just text all doctors 2x a day (but are ramping down to 1x a day now that things are a bit calmer).</comment></comment>


How to Startup (not being a programmer) - <AUTHOR> http://blog.stevepoland.com/how-to-startup-not-being-a-programmer/

<comment><USER2> Some additional thoughts:

Bounce it off a "normal" person, not a person who blogs, twitters, codes, or designs. Just regular Joe. Do the mom test w/ your idea. Do they like it? Understand it?

Get a prototype up and show it to all your friends. They have great ideas. It doesnt have to look pretty. It just has to essentially work.

Can you describe it to a layperson in 1 short sentence?

Eat your own dog food. Programmers (myself included) are notorious for just building stuff and throwing it over the wall. By using it day in and day out, you will find the pain points.

</comment><comment><USER3> It's best you learn either doing front end code and have friend do back end or vice versa!

No doubt will be a struggle find random developers to join you for your idea, unless you are already friends! If you got money you can always pay!

</comment><comment><USER4> Interesting !!</comment>


Facebook Just Made It Super Easy To Put Connect On Your Site  - <AUTHOR> http://www.techcrunch.com/2009/09/30/facebook-just-made-it-super-easy-to-put-facebook-connect-on-your-site/ <comment><USER2> Facebook connect is horrible. It effectively causes a page reload so once the page has loaded and you start to read; everything gets redrawn with a hovering banner at the bottom and you lose your place.

However, it's not as bad as that drag to twitter, facebook etc. thing techcrunch used.</comment>


Intel CEO Wants to Focus on Total Avail Market, Talks 10nm Problems, 7nm Roadmap - <AUTHOR> https://wccftech.com/intel-ceo-beyond-cpu-7nm-more/ <comment><AUTHOR> Excerpt on fab: "this is the first time that Intel has given a solid reason for why it is not able to meet capacity - namely that it decided to produce smartphone modems in-house which in return meant that they were not able to focus on the CPU side of things. It is also a fairly plausible explanation for why Intel cannot even meet the demand for 14nm anymore and instead has to resort to extending 22nm products."</comment>


Bobby Lee Returns with Ballet, a Crypto Hardware Wallet for the Masses - <AUTHOR> Yeha! <comment><USER2> Not again.

<comment><USER2> I think coindesk?

</comment></comment><comment><USER3> can I join!</comment>


C11 Support Added to MSVC's Roadmap - <AUTHOR> https://developercommunity.visualstudio.com/idea/387315/add-c11-support.html?childToView=1119539#comment-1119539 <comment><AUTHOR> Previously msvc's position was to not support newer C standards and instead focus on C++. This was stated publicly at least as far back as 2011 [https://herbsutter.com/2012/05/03/reader-qa-what-about-vc- an...](https://herbsutter.com/2012/05/03/reader-qa-what-about-vc-and-c99/)

So any movement on C11 is a welcome change.</comment>


A New Digital Archive of 2.2M Images from Photography's First 100 Years - <AUTHOR> http://www.openculture.com/2017/05/visit-a-new-digital-archive-of-2-2-million-images-from-the-first-hundred-years-of-photography.html <comment><USER2> Direct link to the archive: [http://www.europeana.eu/portal/en/collections/photography](http://www.europeana.eu/portal/en/collections/photography)

</comment><comment><USER3> Europeana is a fantastic project, but it has this weird UX/UI bug: your search terms are added as "tags" in the search bar, but when you delete all of them to start a new search it triggers a search of the whole archive, which can be quite slow if you don't have any other filter.

</comment><comment><USER4> Google photos should be partnering with projects like these to use heir fantastic image recognition system on the library. It would make sorting and querying so much more interesting.

<comment><USER5> > It would make sorting and querying so much more interesting.

Google said the same thing of Usenet when they purchased Deja News, but looking at how hilariously broken Google Groups' advanced search has been for the past several years tells me that the service you wish for would only be functional for a relatively brief period of time.

</comment></comment><comment><USER6> Some of the metadata links to a site called "semium" which now appears to be a domain squatter advert.</comment>


Ask HN: iOS command line app - <AUTHOR>

Hello there, I am currently doing a startup which is an online app builder. I noticed there are a couple app builders out there but they either don't include dynamic content, or are really slow, or are really limited, so I'm trying to make one of my own. I'm currently using AngularJS as my main programming language for this. My question would be the following: Say I make some .swift classes and a .storyboard source code. What other classes do I need to make a fully working project and also how do I commence to building that project from the command line (for starters obtaining a .ipa). tl;dr Building an app buider, need to know what files I need to make manually for it and how to build the project <comment><USER2> I'd start by seeing how phonegap does it.</comment>


Useful Unix commands for data science - <AUTHOR> http://www.gregreda.com/2013/07/15/unix-commands-for-data-science/ <comment><USER3> Everyone forgets the brilliant and sometimes crazy BSD ones:

      - Column: Create columns / tables from input data
      - tr: substitute / delete chars
      - join: like a database join, but for text files
      - comm: like diff, but you can use it programmatically to choose if a       line is in one file, or another, or both.
      - paste: put file lines side-by-side
      - rs: reshape arrays
      - jot: generate random or sequence data
      - expand: replace tabs / spaces

<comment><USER4> Looks like 6 of those 8 are in GNU coreutils as well (and therefore can be assumed present on just about any modern Unix). 'rs' and 'jot' are the two missing from most default Linux installs. On Debian you can install them via the packages 'rs' and 'athena-jot'.

<comment><USER5> 'jot' is pretty sweet, especially for creating ranges for iteration and random numerical data for testing arguments and such.

Check out the man page for a few snippets: [http://www.unix.com/man- page/FreeBSD/1/jot/](http://www.unix.com/man-page/FreeBSD/1/jot/)

It is the older, more flexible uncle of gnu's 'seq' command: [http://administratosphere.wordpress.com/2009/01/23/using- bsd...](http://administratosphere.wordpress.com/2009/01/23/using-bsd-jot/)

<comment><USER6> And you can't mention jot and rs without lam: [http://www.unix.com/man- page/FreeBSD/1/lam/](http://www.unix.com/man-page/FreeBSD/1/lam/)

</comment></comment></comment></comment><comment><USER7> > cat data.csv | awk -F "|" '{ sum += $4 } END { printf "%.2f\n", sum }'

"Don't pipe a cat".

My test doesn't show a speed improvement, but there are less processes running, and less memory consumed.

      bch:~ bch$ jot 999999999 2 99 > data.dat

      bch:~ bch$ time cat data.dat  | awk '{sum +=$1} END {printf "sum: %d\n", sum}'
      sum: 50499999412

      real 6m21.111s
      user 6m15.506s
      sys  0m5.711s

      PID    COMMAND      %CPU  TIME     #TH   #WQ  #PORTS #MREGS RPRVT  RSHRD  RSIZE  VPRVT  VSIZE  PGRP  PPID  STATE    UID  FAULTS    COW      MSGSENT     MSGRECV
      22342  awk          100.7 05:11.84 1/1   0    17     21     52K    212K   340K   17M    2378M  22341 22306 running  501  311       49       73          36
      22341  cat          1.1   00:03.94 1/1   0    17     21     272K   212K   548K   17M    2378M  22341 22306 running  501  268       51       73          36

</comment><comment></comment><comment>==

      bch:~ bch$ time awk '{sum +=$1} END {printf "sum: %d\n", sum}' ./data.dat
      sum: 50499999412

      real 6m24.023s
      user 6m13.828s
      sys  0m2.774s

      PID    COMMAND      %CPU  TIME     #TH   #WQ  #PORTS #MREGS RPRVT  RSHRD  RSIZE  VPRVT  VSIZE  PGRP  PPID  STATE    UID  FAULTS    COW      MSGSENT     MSGRECV
      22373  awk          100.0 00:30.16 1/1   0    17     21     276K   212K   624K   17M    2378M  22373 22306 running  501  256       46       73          36

<comment><USER8> Sometimes I like to start with cat so I can easily swap for zcat when changing to gripped input.

<comment><USER9> Agree. Or actually I start with a 'head -100' so I don't handle too much data in my pipeline until it's ready.

<comment><USER10> I'm old fashioned, so use "sed 100q" instead of the newer "head -100". It saves a keystroke, too.

There are enough variations in ways to do things on Unix that I've sometimes wondered about how easy it would be to identify a user by seeing how they accomplish a common task.

For instance, I noticed at one place I worked that even though everyone used the same set of options when doing a "cpio -p", everyone had their own order they wrote them. Seeing one "cpio -p" command was sufficient to tell which of the half dozen of us had done the command.

I think I'm the only one where I work who uses "sed Nq" instead of "head -N", so that would fingerprint me.

<comment><USER11> I sorta had this happen to me once. I have used "lsl" as an alias for long directory listings for longer than I can remember. And just out of habit it was almost always the first command I typed when logging into any box anywhere.

So one day I telnetted into a Solaris machine and immediately typed "lsl" before doing anything else. A short while later a colleague came to my cube. He had been snooping the hme1 interface and saw me login. He didn't need to trace the IP because he knew it was me when he saw 3 telnet packets with "l" "s" "l" in them.

</comment></comment></comment></comment></comment><comment><USER12> AWK is worth learning completely. It hits a real sweet spot in terms of minimizing the number of lines of code needed to write useful programs in the world of quasi-structured (not quite CSV but not completely free form) data. You can learn the whole language and become proficient in an afternoon.

I recommend "The AWK Programming Language" by Aho, Kernighan, and Weinberger, though it seems to be listed for a hilariously high price on Amazon at the moment. Maybe try to pick up a used copy.

<comment><USER13> I recall there was a pointer to an old great AWK tutorial some time ago - <USER2> along the lines 'how to approach awk language....' \- anyone kept the link?

<comment><USER14> This is the first hit for awk tutorial and it's all you need.

[http://www.grymoire.com/Unix/Awk.html](http://www.grymoire.com/Unix/Awk.html)

<comment><USER15> I think Steve's Awk academy is a nice supplement to Grymoire : [http://www.troubleshooters.com/codecorn/awk/](http://www.troubleshooters.com/codecorn/awk/)

By the way: what people need to understand is that in order to use Awk, efficently, you'll either use associative arrays, or structure your script like a sed script, otherwise it will be slow. The interesting thing about both of those, is the regex algorithm Thompson NFA, that is from what I hear around 7 times faster than PCRE that is used in Perl, PHP, Python and Ruby?

</comment></comment></comment></comment><comment><USER16> One of my favorite little tools that makes all these others better is pv -- PipeViewer.

Use it any place in a pipeline to see a progress meter on stderr. Very handy when grepping through a bunch of big log files looking for stuff. Here is a quick strawman example:

      pv /data/*.log.gz | zgrep -c 'hello world'
      241MiB 0:00:15 [15.8MiB/s] [==>       ]  2% ETA 0:12:12

<comment><USER17> BSD has a progress meter utility. It's called progress(1).

       progress -zf /data/*.log.gz grep -c 'hello world'

       progress -f /data/*.log.gz zgrep -c 'hello world'

The second form will show the progress of the decompression process.

You can also adjust buffer size, set the length for the time estimate (otherwise we have to fstat the input), and display progress to stderr instead of stdout.

<comment><USER18> Which BSD has that? I don't seem to find it in my FreeBSD installs.

<comment><USER17> It's actually in FreeBSD's base, but it's part of the ftp(1) program.

       http://svnweb.freebsd.org/base/vendor/tnftp/dist/src/progressbar.c

       http://ftp.netbsd.org/pub/NetBSD/NetBSD-release-6/src/usr.bin/{Makefile,progress.c}

Not sure if you prefer binary installs or whether you compile your installs yourself... but I'm sure you could get this to compile on FreeBSD with a little work.

</comment></comment></comment></comment><comment><USER19> Actually useful data science tips for unix users.

      Make all your commands 3x faster:
       export LC_ALL=C

      Actually use the 32 CPUs you paid for:
       sort --parallel=32 ...
       xargs -P32 ...

<comment><USER20> Could you expand on why

       export LC_ALL=C

would "make all your commands 3x faster"?

<comment><USER21> Actually, it was more like 2000X[1] -- and I believe that it still stands as Brendan Gregg's biggest performance win.

[1] [http://dtrace.org/blogs/brendan/2011/12/08/2000x-performance...](http://dtrace.org/blogs/brendan/2011/12/08/2000x-performance- win/)

<comment><USER20> According to the comments in that thread, this issue was fixed in GNU grep 2.7 (my system currently has grep 2.14 on it, so this must have been some time ago).

</comment></comment></comment></comment><comment><USER9> I like slicing and dicing with awk, grep and friends too.

One thing I find odd that you have to drop to a full language (awk, perl etc) to sum a column of numbers. Am I missing a utility?

      echo "1\n2\n3\n" | sum # should print 6 with hyphothetical sum command

I suppose more generally you could have a 'fold initial op' and:

      echo "1\n2\n3\n4\n" | fold 0 +   # should print 10
      echo "1\n2\n3\n4\n" | fold 1 \*  # should print 24

But I guess at that point you're close enough to using awk/perk/whatever anyway. Which probably answers my question.

<comment><USER22> Yeah I wrote my own sum utility in Python... the syntax is just sum 1 or sum 2 for the column, with a -d delimiter flag. In retrospect I guess it could have been a one line awk script. But yeah if you are doing this kind of data- processing, it makes sense to have a hg/git repo of aliases and tiny commands that you sync around from machine to machine. You shouldn't have to write the sum more than once.

Another useful one is "hist" which is sort | uniq -c | sort -n -r.

<comment><USER9> I've never aliased it, but yes I use your 'hist' a lot. Useful for things like "categorise log errors" etc.

Does everyone else edit command history, stacking up 'grep -v xxxx' in the pipeline to remove noise?

If I'm working on a new pipeline, my normal workflow is something like:

      head file     # See some representative lines
      head file | grep goodstuff
      head file | grep good stuff | grep -v badstuff
      head file | grep ... | grep ... | sed -e 's/cut out/bits/' -e 's/i dont/want/'
      head file | grep ... | grep ... | sed -e 's/cut out/bits/' -e 's/i dont/want/' | awk '{print $3}' # get a col
      head file | grep ... | grep ... | sed -e 's/cut out/bits/' -e 's/i dont/want/' | awk '{print $3}' | sort | uniq -c | sort -nr  # histogram as parent

Then I edit the 'head' into a 'cat' and handle the whole file. Basically all done with bash history editing (I'm a 'set -o vi' person for vi keybindings in bash, emacs is fine too :-)

<comment><USER23> > awk '{print $3}'

is the same as

> cut -f3 -d' '

cut is amazing for what it does. and most people know only the subset of awk that effectively _is_ cut anyway :D.

<comment><USER24> Not exactly, awk will consume all whitespace while cut will split on each individual space character, and not on newlines and tabs.

</comment></comment></comment></comment></comment><comment><USER20> I was hoping to see an article about some neat new utilities specifically tailored for doing advanced data analysis.

Instead this is a set of basic examples of bog-standard tools that every newbie *nix user should be already familiar with: cat, awk, head, tail, wc, grep, sed, sort, uniq

<comment><USER25> >"tools that every newbie _nix user should be already familiar with "

The key word is _should _... you might be surprised how many "not newbie" _nix users are not aware of those commands or how using them in this fashion. Specially awk.

<comment><USER26> I forgot all about wc, but thanks to this article I may remember it the next time I need it.

Thanks!

</comment></comment></comment><comment><USER27> A commenter on the article pointed out the "Useless use of cat".

What most users probably don't realize is that the redirection can be anywhere on the line, not just at the beginning. Putting an input redirection at the beginning of the command can make the data flow clearer: _from_ the input file, _through_ the command, _to_ stdout:

        < data.csv awk -F "|" '{ sum += $4 } END { printf "%.2f\n", sum }'

(This only works for simple commands; you can't do `< file if blah; then foo; else bar; fi`)

<comment><USER28> "Useless use of cat" is one of those boring pedantic comments that makes me cringe. Who cares? It's usually much more straightforward to build a pipeline from left to right, particularly for people who are just learning this stuff.

<comment><USER29> > It's usually much more straightforward to build a pipeline from left to > right, particularly for people who are just learning this stuff.

True, however, people pointing out UUOC are in fact pointing out that you should not be building a pipeline at all. If you want to apply an awk / sed / wc / whatever command to a file, then you should just do that instead of piping it through a extraneous command.

Sure, as people always mention, in your actual workflow you might have a cat or grep already, and are building a pipeline incrementally; there's no reason to remove previous stuff to be "pure" or whatever. But if you're giving a canonical example, there's no reason to add unneeded commands.

</comment></comment></comment><comment><USER30> Please be very careful doing math with bash and awk...

      cat data.csv | awk -F "|" '{ sum += $4 } END { printf "%.2f\n", sum }'

From that command, it's unclear whether the sum will be accurate, it depends on the inputs and on the precision of awk. See (D.3 Floating-Point Number Caveats): [http://www.delorie.com/gnu/docs/gawk/gawk_260.html](http://www.delorie.com/gnu/docs/gawk/gawk_260.html)

<comment><USER12> _Please be very careful doing math with bash and awk..._

I don't see how that's more true for awk than it is for any other programming language. Awk uses double precision floating point for all numeric values, which isn't a horrible choice for a catch-all numeric type.

</comment></comment><comment><USER31> Starts off with unnecessary use of cat, e.g., cat file | awk 'cmds'.

One can simply do awk 'cmds' file.

<comment><USER32> I know purists always complain about unnecessary cats, but I always find it useful to start with "head" or "tail" in the first position to figure out my pipeline, and then replace it with cat when it's all working.

And if the extra cat is actually making a measurable difference, maybe that's a good signal that it's time to rewrite it in C.

<comment><USER33> You can do with simple IO redirection. For example, the arbitrary pipeline

        $ cat data.txt | awk '{ print $2+$4,$0 }'|sort|sed '/^0/d'

can be written as

        $ <data.txt awk '{ print $2+$4,$0 }'|sort|sed '/^0/d'

<comment><USER34> Some people prefer the first, longer-winded way because it's more explicit. To some --- myself included --- it makes more sense because it explicitly breaks each function into a seperate steps; I'm explicitly telling the system to print the contents of data.txt rather than implictly doing so. I'll happily type those five extra characters for that additional clarity.

</comment></comment></comment></comment><comment><USER35> If you need them, Windows also has most of those tools somehow replicated in Powershell. For instance, the initial example can be replicated with:

Get-Content .\data.csv | %{[int]$total+=$_.Split('|')[3]; } ; Write-Host "$total"

<comment><USER36> Or you can actually use the Linux commands by installing Cygwin. Pretty much my first conscious action when I wake up stranded on a desert Windows system.

<comment><USER37> Why Cygwin instead of MinGW? (I can't remember why I prefer MinGW, but at some point I had a reason).

<comment><USER36> I could care less which you choose so long as you're getting a proper Linux toolset.

Powershell is a skill I don't have yet which carries over to ... precisely one declining technical dinosaur (with a penchant for expiring its skillsets).

The Linux toolbox is a set of skills I embarked on learning over a quarter- century ago, most of which goes back another decade or further (the 'k' in 'awk' comes from Brian Kernighan, one of Unix's creators). And while some old utilities are retired and new ones replace them (telnet / rsh for ssh, sccs/rcs for git), much of the core has remained surprisingly stable over time.

The main difference between MinGW and Cygwin appears to be how Windows-native they are considered, which for my own purposes has been an entirely irrelevant distinction, though if you're building applications based off of the tools might matter to you.

[http://www.mingw.org/node/21](http://www.mingw.org/node/21)

</comment></comment></comment></comment><comment><USER33> One trick I like to do is to feed two files into awk; /dev/stdin and some other file I'm interested in. Here's an example: lookup the subject names of a list of serial numbers in an openSSL index.txt

        #!/bin/sh

        printf %s\\n "$@" | awk -F'\t' '
            FILE == "/dev/stdin" {
                needle[$0] = 1
                next
            }

            needle[$4] {
                print $NF
            }
        ' /dev/stdin /etc/pki/CA/index.txt

I find myself using this idiom (feeding data from a file to awk and selecting it with data from standard input) again and again. It's a great way to scale shell scripts to take multiple arguments while avoiding opening the same file N times, or doing clunky things with awk's -v flag.

</comment><comment><USER38> Worth noting that:

        grep -A n -B n

is more easily written:

        grep -C n

If you think "C" for "context" this is easier to remember too.

</comment><comment><USER39> If you're interested in this general topic check out this Wikibook from John Rauser. He's a data scientist at Pinterest.

[http://en.wikibooks.org/wiki/Ad_Hoc_Data_Analysis_From_The_U...](http://en.wikibooks.org/wiki/Ad_Hoc_Data_Analysis_From_The_Unix_Command_Line)

</comment><comment><USER40> If this interests you, you should check out Joyents new Manta service which lets you do this type of thing on your data via their infrastructure. It's really cool.

[http://www.joyent.com/products/manta](http://www.joyent.com/products/manta)

<comment><USER41> If I needed to do this type of thing on 10 TB of data, it would probably take me longer to get the data to them than it would to just run it on my own hardware.

Apparently there's a need for it, though, or it wouldn't exist.

<comment><USER42> Disclaimer: I work at Joyent, on Manta.

This entire HN thread is a perfect example of why we built Manta. Lots of engineers/scientists/sysadmins/... already know how to (elegantly) process data using Unix and augmenting with scripts. Manta isn't about always needing to work on a 10TB dataset (you can), but about it being always available, and stored ready to go. I know we can't live without it for running our own systems -- _all_ logs in the entire Joyent fleet are rotated and archived in Manta, and we can perform both recurring/automated and ad-hoc analysis on the dataset, without worrying about storage shares, or ETL'ing from cold storage to compute, etc. And you can sample as little as much or as much as you want. At least to us (and I've run several large distributed systems in my career), that has tremendous value, and we believe it does for others as well. And that's just one use case (log processing).

Like I said, disclaimers/bias/etc.

m

<comment><USER43> I know manta, has default software packaged, but is it possible to install your own like ghci, or julia? Or is that something that needs to be brought in as an asset. This isn't necessarily a feature request, just trying to figure out how it works. [https://apidocs.joyent.com/manta/compute-instance- software.h...](https://apidocs.joyent.com/manta/compute-instance- software.html)

<comment><USER44> An asset is currently the way to do that.

</comment></comment></comment></comment></comment><comment><USER45> A short and nice read is Unix for Poets by Kenneth Ward Church: [http://www.stanford.edu/class/cs124/kwc-unix-for- poets.pdf](http://www.stanford.edu/class/cs124/kwc-unix-for-poets.pdf)

<comment><USER46> I actually was about to post this -- this guide is great. As an undergraduate, this was what was given to us to help demonstrate above-introductory command line tools/pipes.

</comment></comment><comment><USER47> Data science? Is that we're calling DBA work nowadays?

</comment><comment><USER48> I'm surprised there was no mention of cut -d. It's good for simple stuff where you don't need all of awk.

<comment><USER49> and paste - quick and simple for working with columns

</comment></comment><comment><USER50> Crush tools.

[https://code.google.com/p/crush-tools/](https://code.google.com/p/crush- tools/)

</comment><comment><USER51> The "Text Processing" category of this list of unix utilities is also helpful: [http://en.wikipedia.org/wiki/List_of_Unix_programs](http://en.wikipedia.org/wiki/List_of_Unix_programs)

BashReduce is a pretty cool application of many of these utilities.

</comment><comment><USER52> Nice overview. Some guys at my previous company used to show off stuff like this one line recommender (slide 6)

[http://www.slideshare.net/strands/strands-presentation-at- re...](http://www.slideshare.net/strands/strands-presentation-at-recked- presentation/6)

</comment><comment><USER53> Wow, I have to say I use _all_ these commands - these are also particularly useful while testing Hadoop streaming jobs since you can test locally on your shell using "cat | map | sort | reduce" (replace cat with head if you want) and then actually run it in Hadoop.

</comment><comment><USER54> This reminds me of page 213 (175 in the book's numbering) of the Unix Haters Handbook, found at [http://web.mit.edu/~simsong/www/ugh.pdf](http://web.mit.edu/~simsong/www/ugh.pdf)

</comment><comment><USER17> "Imagine you have a 4.2GB CSV file." "

All you need... is the sum of all values in one particular column."

In that case, if speed was paramount, I'd use Kona or kdb. Unquestionably, k is the best tool for that particular job.

<comment><USER55> Really? In a recent test of a whole bunch of languages, scripting, compiled and JVM (but not Kona or kdb), our awk test was beaten only by C. awk was so far ahead, its run time beat other's compile + run time.

<comment><USER17> Yes, really. Nothing I know of beats the speed of k for this column-oriented type of task. Kernighan himself tested it against awk many years ago and if I recall it was generally faster even in that set of tests.

Where can I see your experimental design? I'd like to try to replicate your results.

</comment></comment></comment><comment><USER56> I've been using Ubuntu for about a year now and although I feel comfortable doing a lot of things with the CL, I'm not sure if I really know enough about *nix. I wish there was a was a website with the 20-30 most useful unix commands and very clear language as to what they do with examples. Although, I've used all the tools in this post, I still enjoyed the use of example.

<comment><USER57> Software Carpentry provides a good overview with examples: [http://software- carpentry.org/4_0/shell/index.html](http://software- carpentry.org/4_0/shell/index.html)

<comment><USER56> Looks pretty solid but a bit on the simple side. Thanks for the link.

</comment></comment></comment><comment><USER58> >>Writing a script in python/ruby/perl/whatever would probably take a few minutes and then even more time for the script to actually complete.

Thankfully you can also write a Perl one liner. Which most of the times is far powerful than awk.

<comment><USER59> sum the 0th field: perl -lane '$a += $F[0]; END{ print $a; }'

</comment></comment><comment><USER60> In some cases, (command line) Perl will actually process piped text faster than awk or even sed. I'm not sure about arithmetic though.

</comment><comment><USER61> "data science"... seriously?</comment>


How to Build a Non-Volatile Memory DBMS - <AUTHOR> https://www.cs.cmu.edu/~jarulraj/pages/sigmod_2017_tutorial.html <comment><USER2> Eh. None of this is new, and we already anticipated this with LMDB back in 2009.

The fact that NVRAM is directly addressable (and thus can bypass the page cache) will eventually play out as irrelevant. It will always be a fact that slower mass-storage will exist, more cheaply than fast in-core storage, persistent or not. The page cache will still be needed even for NVRAM, and the "page" will still be the necessary atomic unit of memory interchange. (Direct access is of course a great thing, but it will be direct access to _virtual_ addresses. Virtual memory, and paging in/out between primary and secondary storage, is never going away. Every commodity system that has tried to do without PMMUs has failed, for numerous good reasons.)

The continual allusions to "frequent writes can destroy memory cells" seems to mainly relate to the extremely short lifetime of Intel's 3DXpoint memory, which is from every measure a total failure.

[http://semiaccurate.com/2017/03/10/intel-mislead-press- xpoin...](http://semiaccurate.com/2017/03/10/intel-mislead-press-xpoint-next- week/)

It would be best to ignore 3DXpoint and just focus on STT-MRAM, which is already at parity with DRAM for endurance. (But still lacking in density.)

Much of the other stuff in those slides is still off the mark. E.g., LMDB today has perfect crash reliability with zero recovery time. The "write behind logging" they propose still has logging overhead and non-zero crash recovery time - which equals wasted work. Anything that requires logging or any form of compaction or garbage collection is wasted work. It's completely unnecessary, and that has nothing to do with NVM. Treating NVM DB design as if it's an entirely new and different animal is frankly ignorant. The right design works in all scenarios - as LMDB does.

<comment><USER3> I'm not sure that using mmap(2) is enough. You're still writing pages, so you're writing more than you have to, so writes will not go as fast on NVM as they could.

LMDB does logging since it does copy-on-write -- it just reuses free pages as soon as possible, which means that over time the log disappears. (LMDB is not an append-only DB.)

I agree as to GCs. Having to GC is not just wasted work, it's a performance disaster, and any study that hand-waves about GC without actually measuring its impact on performance is fatally flawed. Assume petabytes of data, and assume performance between SSDs and DRAM: GC will still take enormous amounts of time and I/O that could have been used for something else. Write-behind logging is terrible if it means you need a GC. Why even bother with write- behind logging if a failure means that you must GC anyways.

Only write-ahead logging helps you avoid a GC. A write-ahead log could be optimized to log only (address, length) tuples for each transaction so as to minimize WAL writes.

However, the insights about smaller-than-page I/Os, particularly as to writes, seem likely to be correct. Though having anything like a b-tree on NVM with smaller-than-page writes seems to me to imply in-place writes, but I'm not ready to give up on COW.

<comment><USER4> > I'm not sure that using mmap(2) is enough. You're still writing pages, so > you're writing more than you have to, so writes will not go as fast on NVM > as they could.

If you're using the new fangled memory there's a few components in play.

First in Linux there's DAX. DAX lets you mmap in the devices pages directly without going through the page cache. And the processor can handle this like a memory mmaped device (without interactions from the OS) including subpage read/writes.

Second, Intel chose to reuse previously existing operations that you would normally use for flushing cache lines (to main memory). Previously there were going to use additional pcommit operation. [https://software.intel.com/en- us/blogs/2016/09/12/deprecate-...](https://software.intel.com/en- us/blogs/2016/09/12/deprecate-pcommit-instruction)

<comment><USER3> I got that. My point is that merely using this is insufficient to make your DB go fast on NVM. As the presentation says, you need to consider changing the on-disk^W^W^Wpersistent storage format to be one that writes less (not so much because of write cycle limits, but because writes are slower, and to reduce the number of additional writes needed in, say, a COW format.

</comment></comment></comment></comment><comment><USER5> The presentation and the paper pretty much describe how LMDB works already.

[https://symas.com/lightning-memory-mapped- database/](https://symas.com/lightning-memory-mapped-database/)

Except, it allows only a single writer and it's not directly byte-addressable, unless you make a request to preallocate a chunk of fixed-size mmap'ed memory.

<comment><USER6> Yes but in byte-addressable mode you can trust the map is fixed, which doesn't seem to be the case here.

<comment><USER5> Not exactly. I'm not a user of this, but

[http://www.lmdb.tech/doc/group__mdb__env.html#ga492952277c48...](http://www.lmdb.tech/doc/group__mdb__env.html#ga492952277c481bc4a6fa08ef71c29487)

Ctrl+f through the doc for "MDB_FIXEDMAP" for more details.

So there is _some_ support, where you can expect to have the whole file at a fixed address. What is not handled is that your data may be moved within the file, and there's nothing you can do about it, short of keeping a long-lived read only transaction:

[http://www.lmdb.tech/doc/todo.html](http://www.lmdb.tech/doc/todo.html)

<comment><USER3> Note that the LMDB approach, and especially if you want MDB_FIXEDMAP, limits DB size to the largest mmap()ing you can get at a fixed location. That's not good in a world of 48-bit address spaces.

<comment><USER5> Practically it's even less than 47 bits. :) But sure, know your limits.

<comment><USER3> Yes, I know :)

</comment></comment></comment></comment></comment></comment><comment><USER7> I am currently thinking about stating graduate school and this dude "Andy Pavlo" is my hero, the amount of information he pumps (I don't know any other world) to his listeners is outlandish while staying fun and serious and practical at the same time. I watched most of his lectures. I have done some work in industrial reaseach lab with cuda. I did OS a lot and it was my first choice. But after watching his lectures i am seriously considering changing my field to DB. Specially i can do use my Operation Research knowledge in DB much more effective than OS.

<comment><USER2> You cannot write a good database without a solid understanding of operating systems and computer architecture.

</comment></comment><comment><USER8> "Non Volatile Memory" really means Intel's "3D X-point" memory-- estimated availability of this product for system memory is 2018-ish.

[http://www.tomshardware.com/news/intel-optane-cascade- lake-d...](http://www.tomshardware.com/news/intel-optane-cascade-lake- dimm,34471.html)

<comment><USER9> Optane is on sale now.

<comment><USER10> Optane's performance is hardly on par with SSDs, let alone DRAM.

XPoint is expected to have performance much higher than Optane.

<comment><USER6> Optane is the "marketing name" the technology behind Optane is 3D-XPoint.

<comment><USER11> The Optane available currently isn't in DIMM-format which is expected to give a further boost though.

<comment><USER6> This is true. Bypassing the page cache and VFS will be a net win. But all my storage needs can't be done in MMAPs

</comment></comment></comment></comment></comment></comment><comment><USER12> Video is available [https://www.youtube.com/watch?v=ljrpXVlkQ84](https://www.youtube.com/watch?v=ljrpXVlkQ84)

<comment><USER13> Seems to be missing first part of talk and also had no sound. Hopefully these will be fixed in future.

</comment></comment><comment><USER14> anyone knows if a preprint of the paper is available? both the "paper" and the "slides" link point to the same document, i.e. the slides.

<comment><USER12> There typically isn't a paper associated with tutorials. I'm guessing they just copied from a standard template that had apace for a paper.

</comment></comment><comment><USER15> Since machines can crash, possibly corrupting data, it seems like you still need replication? The network might be the new bottleneck.

<comment><USER16> Journal files. You can begin a transaction, crash, and lose the transaction. But the thing itself will be consistent.

Perhaps there's something funny about the failure modes of non-volatile memory that's different than a disk. Replication can improve things, sure. there's always a chance of a cosmic ray doing something weird to your stuff. That's (so far) a lot less common than a regular old crash.

<comment><USER15> I was thinking along the lines of the machine being on the wrong side of a network partition and then disappearing entirely. Cloud services are supposed to survive the loss of any single machine.

<comment><USER16> Ah, i think you're right, but that's a different problem. The Jepsen talks are enlightening, as so many errors get highlighted. Ultimately, if your algorithm is right, the hardware won't matter at all. Each node could be a person with pencil and paper, and the messages are lossy paper airplanes.

The NVM stuff (i think) just changes parameters to cache size, journal log size, stuff like that. I mean, it's cool tech, and it'll probably make stuff faster. But the reliability comes from the architecture and faithful implementation.

</comment></comment></comment></comment><comment><USER17> >Assistant Professor of _Databaseology_

Oh, I didn't know that's a thing.

<comment><USER11> Sounds like Indiana Jones. Data mining ancient databases.</comment></comment>


A school in Berlin is teaching refugees how to code - <AUTHOR> http://techrung.blogspot.com/2016/03/a-school-in-berlin-is-teaching-refugees.html <comment><USER2> obvious troll comment is obvious:

They took our jobs!</comment>


AutoMan - <AUTHOR> http://m.imdb.com/title/tt0084978/ <comment><AUTHOR> i seriously thought this was a figment of my childhood imagination.

and there it was.

the 1 show that got me hooked on technology.

~\\_(ツ)_/¯</comment>


Google Wallet Goes Live - <AUTHOR> http://techcrunch.com/2011/09/19/google-wallet-sprint/ <comment><USER2> I appreciate what Google is doing, but it really makes my latent tinfoil hat itch. Google already knows more about my online habits than I do, I'm not sure I trust them enough to give them that much more data.

When you're not paying for a service, _you_ are the merchandise and all that.</comment>


Jeff Bezos would need to spend $28M a day to avoid getting richer - <AUTHOR> https://www.marketwatch.com/story/amazons-jeff-bezos-has-to-spend-28-million-a-day-just-to-keep-from-getting-richer-2018-08-01 <comment><USER2> And no one cares. I read a similar piece this morning when Google popped it up in my news they are both garbage.

"Jeff has a lot of money, he underpays his employees, boo hoo, Jeff is evil, everyone hate Jeff!". Amazon warehouse workers in Indy start at 13$ an hour, 1.79x minimum wage for unskilled labor.

Cool, the guy is filthy rich. He deserves it, he earned it. He started a company and successfully grew it over the course of decades and made a lot of smart acquisitions over the years. He gets tons of applicants for his jobs so clearly people are willing to do the work, he takes advantage of any tax situation he can to fuel profits (that isn't evil, he's using legal avenues to reduce the company's tax obligation, have a problem with it? Vote to change your local laws...) like any rational person would do.

I say this as someone that makes a whopping 32k a year after 12 years and change on the job and only needs 0.0005% of his net worth to retire and be incredibly happy.</comment>


Ancient Roman coins found buried under ruins of Japanese castle - <AUTHOR> http://www.independent.co.uk/news/science/archaeology/roman-coins-discovery-castle-japan-okinawa-buried-ancient-currency-a7332901.html <comment><USER2> One of the coins has a classic hole punched through it. I've seen these as punched circular holes, but this one seems to have been done with a blade. You can almost see the outline of a one-sided blade. This screams to me that the coin was once worn as jewellery, an image of the emperor worn around the neck on a strip of cloth. So this may have been brought by a traveller, even a tourist far from home. Coin collectors might dismiss it as damaged, but to me it's far more interesting because of this possible backstory.

[http://www.japantimes.co.jp/wp- content/uploads/2016/09/n-old...](http://www.japantimes.co.jp/wp- content/uploads/2016/09/n-oldcoin-a-20160927.jpg)

edit: after looking at the pic and how small the hole is, could the strip of cloth have been anything other than silk? That means the hole was punched in the east, not in the west where silk would be too expensive for such utility.

<comment><USER3> AKA cash: [https://en.wikipedia.org/wiki/Cash_(Chinese_coin)](https://en.wikipedia.org/wiki/Cash_\(Chinese_coin\))

Like Wampum, Chinese cash was kept on strings.

</comment></comment><comment><USER4> I'm guessing coming via trade with China?

[https://en.wikipedia.org/wiki/Sino- Roman_relations#Roman_and...](https://en.wikipedia.org/wiki/Sino- Roman_relations#Roman_and_Byzantine_currency_discovered_in_China)

<comment><USER5> Right. No need for any direct connection between Rome and Japan. Coins were traded at their bullion value.

I suspect the "baffled" part came from the journalist, not the actual archaeologists.

Even today there are coins that are used that way, for example:

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

This coin has been minted and circulated continuously since 1741 in parts of the world far removed from its point of origin (indeed, the very government that originally minted it is long, long gone).

<comment><USER6> Except they were copper coins, not silver coins.

<comment><USER7> Why does the metallic composition of the coins matter? It doesn't effect the point at all, so your use of "except" is confusing to me.

Only point I can see is that copper is not a traditional bullion metal. I'd argue that that's up to the trade partners to decide, not us centuries and an industrial revolution later. For instance, aluminum was considered a precious metal until the late 1800's when new smelting processes drastically increased supply.

<comment><USER2> That holds for coins used as currency, but not necessarily for coins used for bullion. Krugerands, the definitive bullion coin, don't have denominations printed. Their value is based only on their metal. With ancient coins there is a very fine line between a valuable piece of currency, and an attractive lump of silver. I suspect that by the time this coin is in Japan, it is worth more than its weight suggests. But does that intrinsic value appear because it is currency or simply novelty? I think the latter. This is a bullion coin worth more purely by circumstance.

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

<comment><USER8> My personal impression is that coinage is complicated.

I suspect they started out as weights for measuring out a certain value of grain or similar.

Then you stamp the weights with the mark of the sovereign that validates them.

Then at some point it becomes just as easy to just swap weights around as bring out the scales.

<comment><USER2> There were more primitive systems of currency before authorities started endorsing coins. Hoards of bronze-age axeheads, few of which show signs of use, some that couldn't ever be, point to them as a means of moving wealth via standardized units. A standardized shape of metal used in trade... sounds like coinage to me.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> While a stimulating find at first, these were likely brought over when they were already ancient with the 17th century Turkish coins. Katsuren was built around 1300, so that leaves the fact someone buried the coins there. Probably in the 17-18th century for safekeeping.

<comment><USER10> Yeah, the fact that they were Constantine coins reinforces that theory.

</comment></comment><comment><USER11> This is an interesting find, but not at all surprising.

At the time the coins were buried, Ryukyu (now called Okinawa) was not a part of Japan. Until the 19th century Ryukyu was a tributary of China, and at one time it was a regional trade hub, so one would expect coins from distant lands to find their way there.

<comment><USER12> It's more complicated than that: Ryukyu was a tributary of both Japan _and_ China, and de facto a vassal state of Satsuma from 1609 onwards.

[https://en.wikipedia.org/wiki/History_of_the_Ryukyu_Islands#...](https://en.wikipedia.org/wiki/History_of_the_Ryukyu_Islands#Ryukyu_Kingdom)

</comment></comment><comment><USER13> _Katsuren Castle was known to have been the focal point of trading partnerships with China and other Asian countries_

There is loads of evidence for early trade... the _Periplus_ [0] is a well known period navigational text showing knowledge of India and China. Roman coins have been found in Cambodia[1] and Vietnam[2]. Coins from East Africa have even been found in Australia.[3] Essentially we know that seaborne travel was very much going on in prehistory but we have no way to track a lot of it... most of the evidence is gone. In the case of Japan, however, they probably obtained coins by land trade through the Silk Road[4]... much like they did Buddhism.[5]

[0] [https://depts.washington.edu/silkroad/texts/periplus/periplu...](https://depts.washington.edu/silkroad/texts/periplus/periplus.html) [1] [https://en.wikipedia.org/wiki/Funan_(Southeast_Asia)](https://en.wikipedia.org/wiki/Funan_\(Southeast_Asia\)) [2] [https://en.wikipedia.org/wiki/%C3%93c_Eo](https://en.wikipedia.org/wiki/%C3%93c_Eo) [3] [http://www.smh.com.au/national/out-of- africa-20130908-2tes7....](http://www.smh.com.au/national/out-of- africa-20130908-2tes7.html) [4] [https://en.wikipedia.org/wiki/Silk_Road#Chinese_exploration_...](https://en.wikipedia.org/wiki/Silk_Road#Chinese_exploration_of_Central_Asia) [5] [https://en.wikipedia.org/wiki/Nanto_Rokush%C5%AB](https://en.wikipedia.org/wiki/Nanto_Rokush%C5%AB)

</comment><comment><USER14> Last week there was also some news report regarding skeletons of chinese origin having been found from Roman cemetary. These were dated to 200-400 AD.

[http://www.dailymail.co.uk/sciencetech/article-3803648/A-mee...](http://www.dailymail.co.uk/sciencetech/article-3803648/A-meeting- two-ancient-empires-Chinese-skeletons-Roman-cemetery-promise-rewrite- history.html)

<comment><USER15> Relations between the Roman Empire and China are reasonably well documented. ([https://en.wikipedia.org/wiki/Chronology_of_European_explora...](https://en.wikipedia.org/wiki/Chronology_of_European_exploration_of_Asia))

Explaining these coins' presence as "trade" leaves a lot of questions open. These had to have arrived after they were minted in the 4th century. The Turkish coins are late 17th century, but Wikipedia puts the last use of Katsuren as early 17th century. That all leaves a lot of intriguing possibilities: Roman trade with China followed by either trade with Okinawa or a "gift" of intriguing artifacts, Portuguese trade directly with Okinawa (which would make sense with the Turkish coins), or something else.

If the two sets of coins are related, who after the late 17th century is toting around 4th century coins? And why bury them in an unused castle? If they aren't related, how do they get in proximity?

Some of these are probably answered by the archaeology, but even so these things are going to be damned weird, "trade" notwithstanding.

</comment></comment><comment><USER16> A gold coin would be melted down and re-struck again and again as it traveled or as kings died or were usurped.

A copper coin, however, would not be worth the bother. This coin had plenty of time to travel

<comment><USER17> More frequently, gold and silver coins were melted down and re-struck _to add tin_ and make one coin into two. The most frequent tool found in old buildings are coin molds and strikes - hidden away (because illegal) they got left when the building was abandoned.

</comment></comment><comment><USER17> Confused: what was the date of the ruins? Can't find any date in the article. Without that info there's no mystery. You can buy Roman coins via Ebay.

</comment><comment><USER18> Please stop with the autoplaying audio links, or at least post a warning in the headline.

</comment><comment><USER19> plausible explanation to clickbait title leave HN readers baffled.

</comment><comment><USER20> > We don't think that there is a direct link between the Roman Empire and > Katsuren Castle

Well I'm glad that's cleared up!</comment>


28M Mail-In Ballots Went Missing in Last Four Elections - <AUTHOR> https://www.realclearpolitics.com/articles/2020/04/24/28_million_mail-in_ballots_went_missing_in_last_four_elections_143033.html <comment><USER2> I'm skeptical of any and all articles like this that link to 404 pages as their proof. Maybe an innocent error. Maybe a sham. Given the way the article is written, and its broken links, I really doubt this is anything more than propaganda. One would expect the information to be available elsewhere.

It's also important to note that they also have an article rebutting the one posted here. [https://www.realclearpolitics.com/articles/2020/05/06/there_...](https://www.realclearpolitics.com/articles/2020/05/06/there_were_not_28_million_missing_mail- in_ballots_143123.html)

Their definition of "real clear" doesn't really match mine, but at least the second article is clear about why the first one is untrue. There is clearly a demographic that will ignore their self-rebuttal and believe the first one as gospel.

<comment><AUTHOR> Looks like the link is broken in the article, but looks like it is this one: [https://publicinterestlegal.org/files/Mail- Voting-2012_2018-...](https://publicinterestlegal.org/files/Mail- Voting-2012_2018-1P.pdf)

That's quite a jump from 'broken link' => 'must be propaganda'.

Rebuttals should be analyzed just like the target of the rebuttal. Just as you say the original article should not be taken as gospel, the rebuttal should not be taken as gospel either. The author's accounting of the 28M votes breaks down into 2 categories:

1\. 12M voluntarily not cast from the 3 states that auto-send to every registered voter. The author arrives at this calculation by taking an average vote percentage of those states, and applying it to the mail ballots. You can't just apply general vote rate to the mail ballots, then further assume the EVERY SINGLE ONE of the 12M remaining vote was due to people just not bothering to vote. Baked into the author's calculation is that none of the mail ballots in those 3 states could have been involved in fraud...

2\. 16M (building on the previous flawed calculation) the author just assumes were people who manually requested the mail ballot, but just decided not to send it in. Why? because there were a total 120M mail ballots sent and 16M / 120M amounts to 13% not voting, which is way lower than general population 50% not voting. This is an assertion with no evidence, and we would expect the percentage of people who do not vote when they MANUALLY request a mail ballot to be much lower anyways. Even a fraction of 16M should raise eyebrows.

So as I understand it, the author's calculations are very hand-wavy and unjustified. But you say this is a 'clear' rebuttal. Can you share how you interpreted the article?</comment></comment>


Ask HN: New to HN's and have some questions - <AUTHOR>

First is there a FAQ somewhere?
This may be answered in such a FAQ; if so I apologize in advance.
I've been a member of this fine community now for a couple of weeks. In my reading of comments I've noticed some remarks talking about down voting. How does one do this? I only see an up-vote arrow, nothing seems obvious to me on how to down-vote an article, that doesn't seem to mesh with Hackers News culture.
Thanks. Stephen Toronto <comment><USER2> FAQ: <http://ycombinator.com/newsfaq.html>

On down voting: (From FAQ)

Q: Why don't I see down arrows?

A: There are no down arrows on submissions. They only appear on comments after users reach a certain karma threshold.

<comment><AUTHOR> Thanks! What is the threshold?

<comment><USER3> Currently 500:

<http://news.ycombinator.com/item?id=1853529>

</comment></comment></comment><comment><USER3> The following are of relevance:

<http://ycombinator.com/newswelcome.html>

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

<http://ycombinator.com/newsfaq.html>

The last of these has the answer to your question on down-voting.

</comment><comment><USER4> Also, when you're asking a question like this, you should prefix it by "Ask HN:"

<comment><AUTHOR> OIC Wasn't sure if the software appended that or not. Will do in the future!

<comment><USER3> You have time, you can still edit the title.

<comment><AUTHOR> Done 8>)</comment></comment></comment></comment>


Skype for Linux Drops AMD CPU Support - <AUTHOR> https://winaero.com/blog/skype-linux-drops-amd-cpu-support/ <comment><USER2> I'd suggest changing the headline to, for example,

Skype for Linux now requires SSSE3

Newer AMD processors support SSSE3 and can run Skype for Linux (new means less than ~5 years).

Also, it would be interesting to know what percentage of users of the old version did not have a processor that supports SSSE3.

</comment><comment><USER3> Skype has never been a fantastically 'first class' app on Mac (or Linux, from what I've heard), BUT it mostly worked, and was pretty clear cut in functionality.

It has been _the_ chat/call/video tool for remote business users.

Then they decided to a) try to mimic Snapchat of all fucking things, and b) make their desktop apps Electron based.

I honestly dont know what the alternative is. For now I'm using FaceTime audio when possible, and another client has a Slack channel we use, but that's definitely not something I want to be tied to long term either.

<comment><USER4> Try discord. Right now its the best voice (and lately video) app second to none.

<comment><USER3> That came up in a previous discussion like this. I don't remember exactly what the wording was, but apparently their terms of use aren't particularly business friendly, because they're aimed at gamers basically.

I'll see if I can find the comment

Edit: here's the previous Ask HN about it: [https://news.ycombinator.com/item?id=14935895#14936033](https://news.ycombinator.com/item?id=14935895#14936033)

Also, its worth mentioning that Discord is _also_ Electron.</comment></comment></comment>


Investors and their incentives - <AUTHOR> http://www.aaronkharris.com/investors-and-their-incentives <comment><USER2> I don't have a whole lot to say about investor incentives because I've been a bootstrapper for ~13 years now, but this (useful!) piece is missing one bit of incentive that my experience suggests is pretty important.

For corporate investment, either direct or through investor arms, an important incentive some companies might have is to constrain your M&A options down the road. Between information rights, potential board control, investment terms themselves, or simple signaling, taking investment dollars from a giant company might make it difficult to do deals with that company's competitors. I feel like that's something that happened to a pretty big startup I worked for before.

<comment><USER3> I understand the concept you're presenting, but are there any well-documented cases of this happening that people might be familiar with?

<comment><USER4> I doubt it would become or be able to become public information.

</comment></comment></comment><comment><USER5> (disclosure: I work for AngelList)

Much-needed article. Worth adding some color on AngelList syndicate incentives:

Syndicate leads are compensated by earning carried interest on the additional capital that follows them. [1] [2] [3]

Carry creates leverage for syndicate leads. Which is cool because syndicate leads have a bigger stake in a company's success, and often want to help the company more.

This also means a lead may want to invite as many investors as possible in order to get more $ into their syndicate and create more leverage. If left unchecked, this would create conflicts with a founder's interest in privacy.

Part of AngelList's job is to ensure lead behavior doesn't conflict with a founder's interests. Here's some of what we do:

* 80% of syndicate deals in the last 4 months were private (invite-only).

* AngelList has tools to block specific users / competitors from seeing information about a deal.

* Probably the most interesting tidbit: AngelList is undergoing a professionalization of capital. Most syndicate deals have fewer than 20 investors participating, and much of the capital is institutional. These investors are vetted by AngelList and act more like LPs in in a VC fund (for example, most institutional investors on AngelList have signed confidentiality agreements)

If you've got ideas or questions about syndicates, feel free to ask below or email me at firstname.lastname@example.com

-

[1] Some syndicates (both on and off AngelList) do charge 0% carry, but they're uncommon.

[2] Leads earn carry deal-by-deal vs. on a portfolio basis, where gains net out losses. This creates a different set of incentives, but IMO doesn't impact founders much. ([http://avc.com/2016/02/fund-level-vs-deal-by-deal- carry/](http://avc.com/2016/02/fund-level-vs-deal-by-deal-carry/))

[3] Currently no management fees on AngelList.

</comment><comment><USER6> You might want to add the best kind of "investor" to the mix: a really large, patient and interested customer. They might understand they are underwriting 1.0 with a large check and work with you closely on tailoring the system.

Their incentive is to get the service to themselves as quickly as possible hitting all their required features.

The downside is that they may insist on over-fitting the solution to their particular needs.

<comment><USER7> That's a pretty big downside, especially when you need to go counter to their wishes in order to serve a broader market, or pivot to something different entirely that won't serve them at all.

<comment><USER8> > That's a pretty big downside

Or it might give you a huge upside.

I worked in one such situation where a small group at megacorp did pilot our alpha product and drove a lot of feature requirements. I was main point of contact for pilot. It was lot of work and some frustration but after a year of this pilot work, referral from this little group resulted in over $20M in revenue for the product from other groups within Megacorp. Over $100M of revenue from other customers in next few years was easily attributable to referral from this small group at megacorp.

</comment></comment></comment><comment><USER9> One piece that should be be included is the time horizons of these investors - I.e. Hedge funds with <3yr holding periods (probably less than that) at one end of the spectrum and sovereign wealth funds and endowments at the other with essentially 20+ year time horizons...

<comment><USER10> That's an important point. Time horizons can substantially alter how investors view their investments. For the most part, though, early stage companies are raising from investors who should be planning on long holding periods.

</comment></comment><comment><USER11> Fantastic list!

I would also add "yourself / your own saving" as a source of investment.

Pros:

\- Non-dilutive

\- No loss of control

\- Quick to close the deal

\- Putting in one's own money sends a _strong_ signal to your investors and employees that you are committed to the company

\- The investor's incentive is perfectly aligned with the entrepreneur :)

Cons:

\- Risky

</comment><comment><USER12> It might be worth adding something about traditional private equity investors given the difference in the methods that may be used to create returns and the way this [mis]aligns with the startup model.

<comment><USER13> I agree this since private equity investments and buyouts seem to be accelerating and it is important to understand their motivations.

I thought this post covered the differences versus VCs, angels, etc well: [https://medium.com/lightspeed-venture-partners/what- happens-...](https://medium.com/lightspeed-venture-partners/what-happens-when- private-equity-buys-your-competitor-6095cb3c43#.qdshh68qp)

</comment></comment><comment><USER14> This is an amazing list.

I get that this might fall under the crowd-funding category, but you also might want to add debt vehicles, including crowd-based advanced ordering platforms like kickstarter.

There's no equity exchange, but then again that's true of the government grants as well.

<comment><USER10> Thanks.

That's an increasingly important group, but I don't think of people who pre- order as investors. Even though those people provide the capital to build your business, they are customers, not investors, and should be thought about differently.

</comment></comment><comment><USER15> So which one is YC? A seed investor, an accelerator or a VC firm?

> Notably absent in this year's list are Y Combinator and RockHealth–both > programs now classify themselves as seed funds rather than accelerators, and > asked us to respect their evolution into a new model.

[https://techcrunch.com/2015/03/17/these-are-the-top-20-us- ac...](https://techcrunch.com/2015/03/17/these-are-the-top-20-us- accelerators/)

</comment><comment><USER16> Government grants usually have pretty direct and explicit incentives that really have no connection with 'helping the government'. With many of the SBIR grants (NSF, NIH, etc.) the incentive is to either 'create jobs' or 'spur innovation' (read: produce patents).

</comment><comment><USER17> This seems to miss a very important incentive, which is to change the world in a specific way.

For example there is a growing informal network of angels and VCs associated with the SENS Research Foundation / Methuselah Foundation community and the so-far handful of companies that are emerging from the past years of research funding into treating aging by repairing its root causes. The goal here is as much to produce specific new capabilities in medical science and get them to the clinic as it is to make money. In many cases these investors have the view that the only use for making money is to funnel it back into growing this research and development community.

There are analogous groups in other spaces.

This is an important motivation because it lets you look further than just for-profit funding. If I were launching a fund today, I'd try to set it up as 90% for-profit, 10% non-profit investment, with the latter going to nudge promising research across the line into startup viability. With the right connections in the research community, a group that is split between scientists, advocates, and funding sources can be meaningful minority owners in the creation of an entire new field by shepherding the research and seed funding the startups. Modern day early stage life science research, and proving mouse studies, are so cheap in comparison to later development for the clinic that this is a great investment model.

One reason most people don't do this is that they don't understand how to understand the spaces they invest in at the level of research and seeding new companies, and finding things that are a year or two away from viability, and could be pushed across the line with a little money and coordination, and the people who do understand that typically have little interest in investment. It is very hard to gather the necessary knowledge and will in one room.

</comment><comment><USER18> People investing other people's money aren't angels. They are VCs.

</comment><comment><USER19> I'd like to get people's opinions on how Baqqer can integrate some traditional funding / sponsorship / support on the resources we're getting to makers, inventors, and developers.

We already have crowdfunding options for both individuals and projects, pre- orders for products, but are now considering how to offer even more through larger funding options for people and startups -- specifically thinking about how we can merge these two models that makes sense for the community.</comment>