Developers are blinded by the light - <AUTHOR> http://antoniocangiano.com/2008/12/30/developers-are-blinded-by-the-light/

<comment><USER2> Personally, I don't really do it for the money or making it big. I do it because it's fun, a learning experience and exciting. And I think a lot of other developers feel the same way as I.

And really, why settle with the mediocre? Aim for the stars and at some point switch direction for the closest moon if the journey becomes too long. Aiming for the closest moon might be a good strategy in some circumstances, but if one has the capacity to aim for the stars then why not do it?

<comment><USER3> I agree and I like your analogy.

However .. I feel compelled to point out that if you're anywhere on the way to a star, you'll find yourself in an interstellar micro-vacuum with no moons in sight.

If you manage to reach a moon from there, you might as well travel the (now) insignificant distance on to the nearest star.

(I'm very sorry, I just had to point this out. Really, it was a lovely analogy.. ).

<comment><USER4> Brown dwarfs might well have moons... unless you call them planets, I guess...

</comment></comment></comment><comment><USER3> This post is full of sweeping generalizations. Not all developers are working on a startup. There are also more startups out there that start without everyone being a (software) developer. Not all startups do software, for that matter.

With the dot-com rise and bust, the web-2.0 rise (and already, some say, bust) and the developers, salesdroids, business suits all blogging about this kind of work constantly - there is enough material out there to make an informed decision about the risk you're taking and the challenges and pitfalls you face as well as the potential fallout if it goes bust.

This post would have been better titled 'Some developers take risks without doing their homework'.

</comment><comment><USER5> What an informative read! I always thought it was: "wrapped up like a douche in the middle of the night." =]

<comment><USER6> That was the first thing I thought.

</comment></comment><comment><USER7> Not to pick on this author in particular, but I wish I had an easy way to filter out everything said about startups by people who haven't personally done it successfully.

<comment><USER8> This doesn't strike me as a good idea at all. You're deliberately inducing an enormous selection bias in your knowledge. Or put another way, if a successful founder says "doing X is a good idea and made a big difference", but there were ten other unsuccessful founders who also tried doing X and had it backfire, isn't the experience of those ten other founders useful information? Taleb discusses this phenomena in "Fooled by Randomness" in the context of the financial industry, and it's a good recipe for bandwagoning and cargo-cult thinking.

Now I agree that I would prefer to only hear advice about startups by people who have tried doing it at all.

<comment><USER7> As Putin said to Sarkozy, you have a point there :)

</comment></comment></comment><comment><USER9> Yeah, but some silicone sister (with a manager, mister) told me I got what it takes.

</comment><comment><USER10> Moral of the story: you can sell a fart application for the desktop, too, even if it isn't as glamorous as a fart application for the iphone.

</comment><comment><USER11> You know what, it sounds like the author just read Fooled By Randomness and watched DHH's talk at Startup School 07, and then did a Jeff Atwood.

This would've been interesting a year ago, somewhere closer to the height of excitement about web2.0, multimillion venture rounds and crazy valuations. Not now, a couple of months after the collapse of the capital markets.

</comment><comment><USER12> If loving a chance for success is wrong, I don't want to be right.

<comment><USER13> I think the point is not so much about whether one should take a chance or not, but more about how much risk you're willing to take when creating software.

</comment></comment><comment><USER14> That 'article' reads like a summary of 2008 of news.yc.

<comment><AUTHOR> I know you didn't intend what you said to come across as being nice, but I'll take it as a compliment. :)

</comment></comment><comment><USER15> Great article. It really surprises me how many people are building products that rely on the "get huge then make money from advertising" model. Personally I couldn't imagine investing years on a project without a reasonable expectation of getting paying customers.

Giving a (web) service away and having no reliable way to turn users into paying customers is a losing game.

A product that I think is great, but which confuses me is Weebly. They have some excellent technology and offer a really awesome service, but their numbers are terrible. 1Million users and 1% paying customers! What other industry has 1% of customers supporting 99% of the rest?

I would rather have 1000 paying customers than 1Million eyeballs that are just there for the ride.

<comment><USER16> You wouldn't have the 1,000 paying customers without the 1,000,000 eyeballs to get them with then. It's not like it costs Weebly much to run those websites, and they essentially act as free SEO for their pay service.

<comment><USER15> It depends which sector you target. If you make software for business users there is never an expectation that a service is free.

Small costs can quickly balloon when you reach figures of a million plus.

The SEO is certainly a plus, however this exposure still needs to turn into dollars in the bank if you want to keep the lights on.

</comment></comment></comment><comment><USER17> > The quiet successes by small teams who stand little if anything to gain by > sharing their numbers and telling about their success. Lest they attract > competitors or other unwanted interest.

This is the money quote from the linked David Hansson article. I personally know of five small companies that have minted multi-millionaires that have ZERO web presence for their products. I suspect discrete pursuit of an industry niche is actually the dominant path to riches, but you'd never know it if you only relied on the media and google.

</comment><comment><USER18> IIRC this is the second submission on HN that is a submarine SPAM article touting the Balsamiq software for developers.

<comment><USER19> I can assure you I had nothing to do with it, or any other one. In fact, I continue to be amazed at people showing me as an example...I'm just a little little company building a little little product!</comment></comment>


The history of American Football - <AUTHOR> http://www.radiolab.org/story/football/

<comment><AUTHOR> I found this super interesting, especially the stuff on the early evolution of the game and how various cheating ("trick") plays were used, such as hiding the ball under a player's jersey and running away with it, or suturing ball like patterns on the jerseys of players so it wasn't obvious who was carrying the ball.</comment>


Employers worried about schools not teaching critical-thinking skills - <AUTHOR> http://news.dice.com/2014/10/24/employers-worried-critical-thinking-skills/

<comment><USER2> This will probably sound like a troll comment, but it's a serious question:

Is it not the case that lacking critical thinking skills is a desirable trait for most jobs? (Cashier, dishwasher, pastor -- have to be smart enough to follow your tasks, but not smart enough to figure out how bad you're being screwed over by the system.)

Technical jobs, like Dice caters to, are obviously an exception. I mean in general.</comment>


Transforming the FB Ad Platform into a discovery tool for users  - <AUTHOR> http://monkeymace.com/post/24455596083/how-facebook-can-refocus-their-ad-platform-as-a-discover

<comment><USER2> These are a lot of really good ideas. Think about how much people like clever and funny TV adds released to Youtube. They upvote them, favourite them, and share them with their friends. (Old Spice, Superbowl ads, those old Rube Goldberg car commercials.)

If ads were treated like they were on Youtube - potentially entertaining or thought-provoking bits that people intentionally browse, upvote and share, Facebook would get much less flak for the way they've been trying to monetize their users. It would also promote creativity and thoughtfulness - which is something long term internet users respond to much more than the old blinking text and flash animations strategy.[citation needed]

</comment><comment><USER3> Does anyone think this revision of the Facebook Ad Platform is viable? Or would users be freaked out with too much a focus on ads?

<comment><USER4> I really do think that a StumbleUpon for ads would be great. People willingly tell SU what they like and don't like (which is what Facebook and Google are doing, but without explicit, up-front, opt-in consent). SU has millions of users, including me.

By telling them what content I want to see and what I don't want to see, I'm pretty happy knowing that I'm seeing exactly what I told them I wanted to see. Advertisers could do a lot in this space, and it sounds exactly like what you described.

<comment><USER3> How great would it be if Stumble Upon was pre-seeded with a ton of content automatically mined from your online behavior. Manually curating a relevant stream of content requires alot of energy and effort. Right now, Facebook is the easiest, lowest effort source of content. I imagine most Hacker News readers are pretty advanced when it comes to content discovery. But the average user is not as savy. By giving them a few tools, and a clear rules about how their behavior on facebook, (liking, sharing, reading, viewing, etc) contributes to the ads they are served, it could actually become a great resource that they pay attention to

<comment><USER5> The best forms of advertising don't give a user what he is already looking for, they give him what he doesn't know he needs. By manually curating what ads you like, chances are you'll miss stuff that is actually relevant. I'm a developer, but I have no desire to "learn javascript", because I know it already. Someone who is really into vintage cars will ignore car ads all the time; they have an existing network of sources and information and aren't as interested in changing that unless the story is very compelling.

Contrast that with the idea that FB knows about a 55-year old man that makes ~90k and has few hobbies, but has recently started reconnecting with all his buddies from high school; that type of person is now a profile for someone in whom an advertiser might create a NEW interest for vintage cars. The best part is you don't have to use forensic psychologists to create these profiles; simple statistics would be enough.</comment></comment></comment></comment>


Khashoggi children have received houses in Saudi Arabia and monthly payments - <AUTHOR> https://www.washingtonpost.com/world/national-security/khashoggi-children-have-received-houses-in-saudi-arabia-and-monthly-payments-as-compensation-for-killing-of-father/2019/04/01/c279ca3e-5485-11e9-8ef3-fbd41a2ce4d5_story.html <comment><USER2> Pretty cheap as far as PR schemes go. Letting his children leave and speak openly to the free media would be a PR disaster. Killing them would be a worse one. But keep them where they are and under threat of death while giving the appearance of comfortable, consensual living, and everybody wins, right? It at least offers sufficient plausible deniability for Pompeo to continue to ignore the SA government's historical and ongoing affronts to US sovereignty, which is all anyone with a real hand in the stakes cares about.

<comment><USER3> Totally agree. Although this is totally disgraceful, this is a very smart act from Saudi Arabia government I have to say!

</comment></comment><comment><USER4> TIL the arab version of Weregild (blood money) is called Diya:

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

[https://en.wikipedia.org/wiki/Diya_(Islam)](https://en.wikipedia.org/wiki/Diya_\(Islam\))

</comment><comment><USER5> All of this is funded by their oil wealth. _Everything_ about SA can be traced back to their oil wealth (including their relations with the US). If the oil runs out or the demand for oil drops low enough, we can expect to see an entire country return to the empty desert it came from. Unlike Norway and similarly to Canada their sovereign wealth fund isn't very healthy, and unlike Norway and Canada they don't have much else going for them.

<comment><USER6> | My grandfather rode a camel, my father rode a camel, I drive a Mercedes, my son drives a Land Rover, his son will drive a Land Rover, but his son will ride a camel

Rashid bin Saeed Al Maktoum

<comment><USER7> Hey, if Nigeria can become an up-and-coming tech hub, so can Saudi Arabia.

<comment><USER8> The UAE seems to be handling it all better.

</comment></comment></comment></comment><comment><USER7> Better than nothing. But it would have been a magnanimous gesture to give them the choice between houses in Saudi Arabia and, say, Switzerland.

</comment><comment><USER9> [https://outline.com/PPAFw4](https://outline.com/PPAFw4)

</comment><comment><USER10> Now now ... they are a big investor in Softbank ... who is going to fund the next WeWork scam ???.

</comment><comment><USER11> Terrifying. Why would the children even want to live there?

<comment><USER12> [https://www.businessinsider.com/khashoggis-children-are- repo...](https://www.businessinsider.com/khashoggis-children-are-reportedly- barred-from-leaving-saudi-arabia-2018-10)

</comment></comment><comment><USER13> Blood money. How about putting the killer who ordered the killing in prison.

</comment><comment><USER14> This article is from April.

</comment><comment><USER15> Well that's nice. Totally makes up for a theocratic dictator having their father chopped up.

I guess they have no choice but to just accept it, because of the same dictator.

Can't believe this shitty government is our "ally". Fuck the Saudi Government.

<comment><USER16> There's 195 countries on the planet. You want to go to war with every single one whose leaders have people arbitrarily killed...you'd need to go to war with most of them, including the United States itself.

<comment><USER17> You don't have to go to war with each of them, there are other options. And you definitely don't have to prop up said leaders with the worlds most advanced military hardware.

<comment><USER18> You need to think like the leader of a nation, not like the leader of an advocacy group. This is a playing field most people can't comprehend.

<comment><USER15> Right, what lobbying group paid their bribes this year.

Ah, military contractors are well up to date. Okay, lets toss them a few billion in Saudi weapons contracts.

How did I do?

<comment><USER19> Incredibly poorly.

Nation states aren't supposed to have egos.</comment></comment></comment></comment></comment></comment>


Bitcoin dropping after BTC China said it is closing - <AUTHOR> https://www.cnbc.com/2017/09/14/bitcoin-is-dropping-right-now-after-a-big-chinese-exchange-said-it-is-closing.html <comment><USER3> Every time bitcoin slips a little, the anti-bitcoin crowd claims victory and it's kinda hilarious. The summer of 2015 BTC was around $200, it's now over $3,000- so up 15X in a bit over 2 years. This is failure? Why is down $500 failure but up 15X in less than 30 months not success?

There are about 11 million millionaires in America. There are only ever going to be 21 million bitcoins total. That means, even just among American millionaires, they will never be able to all own two bitcoins. How many will try to put %5-%10 of their net worth into bitcoin when they become convinced of its reliability?

Bitcoin has been under various forms of attack, by state level actors and by hackers for the past 8 years and it has done quite well. I am unaware of any software project that has captured this much value with this little vulnerability.

The value of all the gold in the world is about $8T. Bitcoin as a store of value has a lot of advantages over gold:

\- Its terminal supply is absolutely fixed, unlike gold, and its rate of inflation is rapidly decreasing to below golds.

\- It's easy to store wealth in without being obvious to others.

\- It is easier to transport bitcoin than any significant amount of wealth

\- It is easier to protect bitcoin than gold. Gold has to be guarded, Bitcoin can be split in to an n-of-m key and encrypted and replicated, securing it from fire, theft, etc.

So given all that, what is the ultimate intrinsic value of bitcoin? Lets say it is half that of gold. Then what's the intrinsic value of a single bitcoin?

That's something we can calculate: $4T / 21,000,000 = $190,476

 _Bitcoin is better than gold at gold 's primary purpose._ Yet its current value is much less than that of gold. This makes sense given that bitcoin has not yet crossed the chasm-- but gold is also something very rare for people to hold. People have a negative net worth and not a lot of them hold gold.

Bitcoin is the very definition of a disruptive technology that will revolutionize society for the better and hackers are embracing it. You should too.

<comment><USER4> > The summer of 2015 BTC was around $200, it's now over $3,000- so up 15X in a > bit over 2 years. This is failure?

As a modern eTulip bubble, it's a "success" for anyone who has made money speculating.

As a replacement for fiat money, it's an absolute disaster as a currency. Volatility and high transaction fees have killed any opportunity Bitcoin may have had to gain traction as a way to pay for anything besides drugs, ransomware, and evading currency controls.

<comment><USER3> You can send several million dollars in under a day for about $0.50 right now. IS that "high fees"? Hell if you do it right you can do it in under an hour for under a dollar.

Any talk about it being a replacement for fiat money is evading my point. I made the point that it was a plausible good store of value, not currency.

Oh, and by the way, there's nothing wrong with using bitcoin to pay for drugs, and this argument is akin to saying that the US Dollar is evil because it is so widely used in the drug trade that every $20 bill tests positive for cocaine (so I've heard.)

As for evading currency controls, aka economic oppression- that's one of the great uses of Bitcoin that will help improve people's lives world wide.

Finally regarding tulips, you can't have it both ways- you can't say price going up is proof it's a mania and price going down is proof it's a mania. Tulips were not a revolutionary new technology.

<comment><USER5> If someone actually paid that small of a fee in BTC for several million USD, they would risk far more of their transaction being lost due to volatility during the multi-hour long transaction.

Anyone holding that much BTC, and facilitating that type of transaction will likely be subject to some form of regulatory scrutiny, sooner or later.

<comment><USER6> The size of the transaction grants it higher priority.

</comment></comment></comment></comment></comment><comment><AUTHOR> > The cryptocurrency traded at $3,601.40 at 7:58 a.m. in New York, far below > an all-time high of $5,013.91 set earlier this month.

That's a 28% drop from the high. For normal securities a price drop like that in less than a month would be considered a crash.

Does it count for BTC as well or are the elevated levels at the start of the month with too thin a volume to be considered legit?

<comment><USER7> In cryptocurrency world 10% daily change is considered normal. The markets were extremely volatile in the past and as years pass by they become more stable. We are not there yet but I believe in the future as the market cap increases and more people get involved the price will stabilize more and such changes will be considered a crash.

Also do not forget the people that had money in BTCC exchange. I suppose many of them sold their BTC in order to withdraw there money hence the crash that you see. This price drop in BTCC exchange created arbitrage opportunities and so people (and probably auto-trade bots) started buying cheap BTC in BTCC exchange and then sold to another exchange - resulting in the drop of price that we see right now. Of course panic selling is happening right now too...

Don't forget that 20% changes are not something extreme. Check TSLA price between 23th of June and 6th of July this year. The price went from $383 to $313 which is around 20% change.

<comment><USER8> Tesla is considered an infamously overvalued stock, and even Elon Musk has publicly questioned the price in the past. It has had the highest number of shorts for any stock. Despite making 1/100th as many cars as the big manufacturers, it has a market cap higher than Ford and GM.

That is not exactly a great comparison. A normal blue chip won't fluctuate more than ten percent in a month, let alone in a day.

But currencies are supposed to be more stable than stocks. EUR to USD over the past month has wildly swung from 1.17 EUR->USD to 1.19 EUR->USD.

<comment><USER9> I believe Tesla's value has everything to do with what people believe Tesla will be worth in the future, simply because confidence in Musk is so high. I think there's this unspoken expectation that Tesla enters the Pantheon of Large Auto Manufacturers.

<comment><USER8> From a value investing standpoint, it is overvalued, but obviously tech stocks play by different rules. However, even for a tech stock, TSLA is very high priced.

I wish them the best, and I truly hope they succeed, but it doesn't change the fact that the speculative value is super high compared to their asset value.

That explains why it can swing wildly in price while Ford generally won't.

</comment></comment></comment></comment></comment><comment><USER10> It would seem that _if_ China shuts down domestic Bitcoin exchanges that could have quite a big impact on the network as it could make the position of miners in china difficult.

Looking at articles like ([https://www.buybitcoinworldwide.com/mining/china/](https://www.buybitcoinworldwide.com/mining/china/)) ~70% of all mining power is handled by China based groups, so it'd be a big change for that to be removed...

<comment><USER11> So does that mean AMD is about to lose their number one customers? China has almost a monopoly on mining due to access to low to no cost electricity. The miners preferred AMD Graphic cards and make AMD cards hundreds of dollars more valuable on EBay.

[https://www.pcworld.com/article/3199257/components- graphics/...](https://www.pcworld.com/article/3199257/components-graphics/why- amds-radeon-graphics-cards-are-almost-impossible-to-buy-right-now.html)

<comment><USER12> GPU's are still used in mining. But the majority of large-scale miners use ASIC chips to mine coins. ASIC chips are just more efficient and powerful. They are designed only for mining.

</comment></comment></comment><comment><USER13> So it's lost half of its gains since early August.

Bitcoin almost defines volatility.

<comment><USER7> Market cap is the main reason in my opinion. The more people get involved the less volatile it is going to be. You should see how volatile BTC was in 2011-2012, what is happening right now is nothing in comparison.

<comment><USER8> The main reason for the volatility is that there is no actual use for them, and no entrenched demand via a tax system.

The price of bitcoin can literally fall to zero. With fiat currency, achieving that would require the government losing its power to enforce tax collection.

People losing interest in a fad seems to be a bigger risk than a governmental collapse.

<comment><USER14> > there is no actual use for them

There's a use for BTC, it's just illegal.

<comment><USER15> Cash can be used for illegal purposes too. Private, unencumbered, tax-free transactions have licit purposes as well.

<comment><USER16> So what? Their point is that cash has other uses as well besides the illegal ones. I would argue that bitcoin has some additional uses besides the illegal ones, but they're extremely niche.

<comment><USER15> Part of the reason why the US Dollar is so valuable is because of its extensive use in illicit operations. Even if a cryptocurrency is used for illegal purposes, that use increases its value for licit activities, as niche as they may be.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> Announcement made via twitter [https://twitter.com/YourBTCC/status/908285586368167936](https://twitter.com/YourBTCC/status/908285586368167936)

</comment><comment><USER18> There are 3 major exchanges in china: BTC China, Huobi and OkCoin. Only BTCC allow ICO trading and it's the only one closing. Maybe it's related to the ICO ban from last week and nothing to do with bitcoin

<comment><USER19> Bloomberg is saying China plans to ban trading of bitcoin on all domestic exchanges.

[https://www.bloomberg.com/news/articles/2017-09-14/bitcoin-t...](https://www.bloomberg.com/news/articles/2017-09-14/bitcoin- tumbles-as-chinese-exchange-says-it-will-halt-trading)

<comment><USER20> If that's how Chinese exchanges interpret it also, this will have a huge impact on some of the largest miners and mining hardware companies (lie BitMain).

</comment></comment></comment><comment><USER21> China not loving bitcoin and not being onboard isn't news. A communist government not agreeing with a decentralized currency shouldn't come as a surprise. Speculators who invest should understand that clearly, and not go into panic when China makes decisions that are very China-like. The good news is that it's a perfect time to buy more bitcoin and ether at a discounted price.

<comment><USER22> First of all, China is an authoritarian government, not a communist government. Second of all, China is doing this because they are suffering from [hidden] massive outflow, and need to clamp down on that. The Chinese economy is slowly collapsing from all the malinvestments, and the rich folks are trying to get their money out. Look at the richest man in China, Wang Jianlin, unable to leave China

[https://www.bloomberg.com/news/articles/2017-08-28/wanda- bon...](https://www.bloomberg.com/news/articles/2017-08-28/wanda-bonds-fall- on-reports-of-chairman-wang-stopped-at-airport)

<comment><USER23> "Wang Jianlin meets Hong Kong's ex-chief executive Tung, quashing talk he's barred from travelling"

[http://www.scmp.com/business/china- business/article/2110610/...](http://www.scmp.com/business/china- business/article/2110610/wang-jianlin-meets-hong-kongs-ex-chief-executive- tung)

</comment></comment></comment><comment><USER24> If other governments in the world follow suit, what would happen to bitcoin? I think it could be rather easily marginalised.

<comment><USER25> The price would drop for sure. But the network would still survice.

<comment><USER26> The network would survive with a vastly reduced number of miners. But at that point it would become feasible for a state actor to wage a 50% attack against it and kill it for good? It didn't happen before because bitcoin was just a geeky curiosity; now that it's been proved to move real money, it has become a possibility.

<comment><USER27> Well in a bit of an ironic twist, because ASICs that are used for Bitcoin are kind of worthless without it, Bitcoin _should_ continue to have enough value to run those miners at cost in some low electricity areas (assuming it doesn't entirely go under).

With a GPU mineable currency, if it crashes and becomes "unprofitable" to mine, people with GPUs can just use them for something else and the currency can die entirely.

So 50% attacks are still difficult because unless bitcoin becomes almost entirely worthless (at which point a 50% attack is kind of pointless), there is still just as much hashing power sitting around waiting to be turned on when it becomes profitable. Power that can't really be repurposed, so it's not really going anywhere.

</comment></comment></comment></comment><comment><USER28> Take note, high-risk investors: now is a good time to buy.

<comment><USER29> I remember the last time something China related happened in 2013 or something. I forgot the exact news but it sent BTC tumbling back to $200-300 in next couple of years before it came back up. If you believe in China's influence that much, then better wait it out. There should be much better price to be had.

<comment><USER20> > I remember the last time something China related happened in 2013 or > something.

Are you conveniently forgetting the first few weeks of this year? They changed their policies towards cryptocurrencies in a way that wasn't quite clear (rumors were that "China is banning cryptocurrencies!" and "Chinese exchanges are closing!"). The reality of the regulatory change was tiny in comparison to the rumors, and many people profited from the short term rumor noise.

</comment></comment></comment><comment><USER30> I find it odd that China banned all cryptocurrencies but Bitcoin 2 weeks ago and that now a Chinese Bitcoin exchange is closing. China's position is still unclear at the moment and it seems to be what's making or breaking the BTC market.

<comment><USER31> They didn't ban 'all cryptocurrencies'. They banned ICO's instead, and (afaik) it's a temporary ban until proper regulations are in place.

<comment><USER30> You're right. However, I doubt they'll add proper regulations for hundreds of cryptocurrencies. What makes you think they will?

<comment><USER31> If they ban it completely and the demand remains, it'll disappear underground, while if the government embraces it and puts AML/KYC (and most likely cash- limits) in place, they can control (and tax) it.

Local bitcoins is already out there and if those get blocked by the great firewall of China, alternatives will pop up soon enough.

Also the ICO environment is littered with complete utter garbage and I can see lots of people getting burned when jumping in uninformed, which seems to be happening on an accelerated pace these days.

</comment></comment></comment></comment><comment><USER32> What I don't understand is that bitcoin is always referenced in value to USD, but there isn't enough fluid USD in the exchanges to match what the bitcoin network is theoretically worth. How do they decide what Bitcoin is worth, if the money that it's worth isn't actually around?

Also what happens when a big holder of BTC decides to cash out? Wouldn't it become similar to a typical bank run, collapsing the exchanges (and thus the market)?

<comment><USER33> There is no actual "worth" of all Bitcoins as a whole, whether in regard to USD nor in regard to anything else. The only thing that exists is the last price at which a non-zero amount of Bitcoins - usually only a tiny, tiny fraction of all coins, today usually not even a whole coin - has changed hands. This price, taken for every exchange, is then usually averaged to get a "market value" of one Bitcoin.

The "market cap" is then just a number calculated by taking this average and multiplying it with all Bitcoins in existence. Of course, the value would collapse instantly, if just a fraction of these is put up for sale for current market price. Actually you can witness this happening right now (try www.cryptowat.ch and just pick a Bitcoin exchange and watch how the price moves...mostly downward right now...because there's so much selling going on).

In case of Bitcoin it is even more severe, as it is rather well-known that only a fraction of the 16.5 million coins in existence is even accessible and an even smaller fraction of that is actually circulating. There are multiple millions of coins buried on wallets to which the private keys have been long forgotten. Or at least "most likely", because there's no way to prove whether a particular wallet is just inactive, but someone still has the key, or whether the knowledge about the key has been lost forever, and with it any access to the coins on it. I heard about estimates of only 8 million coins being actually accessible and in some kind of regular or irregular circulation...

</comment></comment><comment><USER34> People buy everyday coins in iOS games and no one seems to care. but why do they care about bitcoin ? because it has real value, because people use it and furthermore , you have ATM machines with BTC. They will try to drop the price , not once but a million times, the same that they do with stocks. If you trade you care about it if you HODL and don't read news, you care 0.0%

</comment><comment><USER35> Well... it was said earlier in the month that the ICO ban could be taken to be referring to any and all exchange between crypto-currency and 'real' currency, or between two crypto-currencies.

Perhaps the party in China has decided enough is enough, and that they must regain control over capital flows which can potentially leave the country - just like they have with foreign property investments.

</comment><comment><USER36> Wow, check out all the related stories, etc. CNBC really don't like bitcoin do they?

<comment><USER29> I never understood this. How does one conclude that media doesn't like something? If you put yourself in media's shoes, their whole agenda is - <USER2> and advertisements.

It's no secret that BTC fans tend to take offense at even small insignificant stories criticizing BTC. They will flock to CNBC, register accounts to show who is the boss. So what do networks do? Fan the flame and write even more stories de-riding BTC. Because any publicity is good publicity. The BTC fan reaction at that point is a forgone conclusion.

<comment> wu-ikkyu >How does one conclude that media doesn't like something?

If an outlet shows a consistent pattern disparaging something.

>If you put yourself in media's shoes, their whole agenda is - news and advertisements.

Most big media outlets are part of larger corporate conglomerates. So it is in their interest to push a narrative that is helpful to the larger investment portfolio.

</comment></comment></comment><comment><USER37> Buy BTC on BitStamp >= 3150 today, stop loss 3087 Expires in 8 hours, after 8 hours move stop to breakeven Target >= 3600

</comment><comment><USER38> This is but a battle in the oncoming monetary revolution.

</comment><comment><USER39> I talked about this before, and most people instantly wrote this off.

The typical response was 'If X bans the cryptocurrency, we will just trade in another country. That's the whole point!'.

Can somebody explain what will happen if U.S starts to feel the pressure from Bitcoin and kills it at the point of exchange? Sure, you will still have your Bitcoins, but they will drop in value and become useless.

Furthermore, what will happen to the market if 1%'s attempt to convert a couple of billions to USD at the same time? Who will honor that transaction? The banks will not touch it.

This will end up just like the banking crisis sans a bailout. People can't get the 'money' out because the exchange rate is not going to be honored, and the value of their money will drop over night.

<comment><USER24> Yep, I'm fact I'm surprised the US government hasn't acted yet, but I suppose they don't yet view it as sognifixant enough to merit a response yet.

<comment><USER40> But the IRS has already declared Bitcoin a taxable as either income or as a capital asset. See [https://turbotax.intuit.com/tax-tools/tax- tips/Taxes-101/Tax...](https://turbotax.intuit.com/tax-tools/tax- tips/Taxes-101/Tax-Tips-for-Bitcoin-and-Virtual-Currency/INF29402.html)

This legitimizes Bitcoin and allows the US government to benefit from its ongoing use, just as with other assets.

</comment></comment></comment><comment><USER41> Hold on, I thought crypto-currencies were using encryption to ensure that no one can create more currencies like a fiat currency.

But we can just clone the currency, let's create bitcoin cash! Or let's agree to change the algorithm!

Hold on, I thought crypto-currencies were meant to be immune from government interference.

Wait, China cracking down on bitcoin makes its value plunge!

There is only one way to learn discipline when investing, the hard way, loosing one's own money. Hopefully people haven't bet too much on this.

<comment><USER3> Who is losing money? A year ago BTC was under $600. Today it's over $3,000. Surely a painful lesson for anyone holding for 12 months.

Yes, you can fork open source software, but as you see the value doesn't come from the code intrinsically. BCH is at $500, even after pumping and a year long campaign of misinformation. Other alts have to provide compelling value to get a good market price.

Nobody ever said cryptocurrencies were immune from government interference. They are immune from government corruption. You haven't shown anything to the contrary.

IT's funny how, whenever BTC slips a little you guys declare victory, but you're kinda ignoring we're up 10X in 18 months.... where are your declarations of defeat? (if that's your standard- price movement.)

How many years of knocking down the same straw men is it going to take?

<comment><USER35> > BCH is at $500

Yup, a sure sign that something is screwy - let's fork the currency and award ourselves 10-20% extra money overnight!</comment></comment></comment>


Ruby 1.9 lands NaCl support, can run in Chrome - <AUTHOR> http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?revision=35672&view=revision <comment><USER2> I see that some people wonder why this is useful. I wonder the same thing, and in general I don't like the concept of NaCl, which will be ActiveX all over again, even though it has a better security sandbox, as poor security wasn't the biggest problem of ActiveX ... seems to me like Google is trying really hard to be like Microsoft.

However, I can't help but notice that Ruby, as a programming language, is getting ported everywhere. It runs on all desktop operating systems, it runs on top of the JVM and on top of Android. For iOS there are 2 competing versions already. For .NET the interest was low, so IronRuby is kind of dying, but it's still decent for a .NET implementation. Ruby MRI evolved a lot from 1.8 to 1.9, being a decent VM for a scripting language. Rubinius is much like Smalltalk, having the standard library in Ruby itself, allowing you to access the internals of the VM. JRuby is awesome.

Then there are the specs. Amongst the scripting languages people use today, Ruby has some of the best specs. It started with RubySpec, which are test suites started by the people working on Rubinius and now used by everybody else. And now Ruby is becoming an ISO standard. This makes me happy because when it comes to equivalent dynamic languages, there is no spec other than the reference implementation, making third-party implementations an unfeasible task. Perl 5 is a really good example of this.

So does anybody else find this exciting? As a language, Ruby is really mature these days, while still being fun and productive. Much like Smalltalk was back in the day.

<comment><USER3> I would be _thrilled_ if somebody waved a magic wand and completely replaced Javascript with Ruby.

But since that's not going to happen, I instead lean heavily towards the path of least resistance when it comes to languages. I write iOS apps in Obj-C, CRUD apps in Rails, DSP code in C++, and web front end in JS. The cost of context switching is less than the cost of swimming upstream all the time.

<comment><USER2> I have the same approach, however that's the reason for why I haven't written a single line of code for iOS. Getting started with it is just too much work, and I'm not sure if it's worth it, compared to Android for which I am already familiar with the language and IDE and getting a Hello World on my own phone took only a couple of minutes.

I wouldn't recommend iOS apps written in Ruby either, but the learning curve is too great for Obj-C. Not only do you have to learn a complicated API, but you also have to learn a new language, that's C with features from Smalltalk, and then get familiar with a new IDE. For beginners wanting to get shit done, without much time on their hands, that can be death by a thousand cuts.

<comment><USER3> Obj-C is a very simple language. You can pick it up in a week or less if you have any experience with other languages.

Cocoa Touch is a different story though. Even an experienced UI programmer will probably need a few solid months of study to get up to speed.

In my limited experience it's easier to get going in Android but things get more fiddly as they get more complex. For example, gesture handling is a lot easier on iOS.

</comment></comment></comment></comment><comment><USER4> On a complete tangent: of all the language runtimes I'd expect to be converted to run in NaCl, I don't think Ruby's would top my list for "immediate practical uses." On the other hand, porting the Erlang BEAM VM--and thus allowing a web client to become a node in an Erlang process network, and have arbitrary code pushed to and executed on it by the network--would have tons of relevant applications. Anyone working on this? Should _I_ start working on this?

<comment><USER5> _allowing a web client to become a node in an Erlang process network, and have arbitrary code pushed to and executed on it by the network_

Does this sound scary to anyone else?

<comment><USER4> We already have arbitrary code pushed to us and executed in our browsers all the time--it's called Javascript (and with JSONP, we even have more Javascript being pushed to us in realtime in response to events and eval'ed live. Nothing new here.)

The difference in running Erlang here is simply that the browser would be joining a network of agents and spawning agents of its own, instead of joining a network of processes and spawning threads/web-workers of its own. This would allow a uniformity of process logic, such that an agent could be transparently running on a browser or on a server to complete a task, and messages could be being passed transparently across the network to facilitate this, without any of the code having to differentiate the cases.

NaCl ensures the browser sandbox environment remains in place--so, other than perhaps getting a bit hot, your computer won't be doing anything it wasn't already doing just running the Javascript the server served it.

</comment></comment></comment><comment><USER6> I always thought Ruby used Git (<https://github.com/ruby/ruby>), but this links to an SVN repo.

What's up with that?

<comment><USER7> I've talked with one of the core devs, who has said that the primary reason they haven't switched is of them use Windows.

<comment><USER8> Which is reasonably ironic considering Ruby's reputation for running on Windows (which has taken major third party efforts to get it to work in any sane way).

</comment></comment></comment><comment><USER9> Here is the same commit in GitHub: [https://github.com/ruby/ruby/commit/76bc2d1ed7f13fb329c33f48...](https://github.com/ruby/ruby/commit/76bc2d1ed7f13fb329c33f48756ea3c24c59a6ea)

</comment><comment><USER10> Has anyone built this and have a demo?

<comment><USER11> Here you go:

<http://yugui.jp/nacl/example.html>

Chrome/Chromium(?) 19+ required, I think.

</comment></comment><comment><USER12> NaCl == Google's ActiveX, no thanks.

<comment><USER13> No true. NaCl doesn't use proprietary APIs and is, in fact, a standard.

It is just that the other browsers haven't implemented it yet. Blame them, not Google (or blame users who don't use Chrome, without whom this would be a non- issue).

<comment><USER14> Sorry, but no way that NaCl is a standard. It's a huge, Chrome-specific open source library. The fact that you can get the source doesn't make it a standard, by far.

</comment></comment></comment><comment><USER15> This is neat.

It would be fantastic if someone did the same thing with the jvm. Then I could use Java or Clojure or whatever JVM-based language I wanted - and make use of tons of pre-existing libraries.

NaCL is the sandbox I want, not the craplet sandbox. With NaCL I can use C libs and access useful OS services without having to sign the app and ask the user for permission to delete their hard drive.

</comment><comment><USER16> Interesting. I wonder, though, what the advantages of executing sandboxed ruby in the browser are?

<comment><USER17> This would let you write Chrome extensions in Ruby (rather than JS).

<comment><USER18> You could already do that by compiling Ruby with Emscripten, there is nothing new here.

</comment></comment></comment><comment><USER19> What is significance of this? When can I write Ruby as easily as JS/PHP?

<comment><USER20> Probably never as easily as JS in the client. You should look at CoffeeScript if you don't like JS syntax.

<comment><USER21> You can compile other languages than CoffeeScript to JS. C++, Java, C#, for example. Also, you can run Ruby in the browser right now by compiling its runtime (in a standards-compliant way without NaCl),

<http://repl.it/#:languages>

</comment></comment></comment><comment><USER22> While NaCL is exciting tech I wonder how user-friendly (load times, performance etc) and how easy to develop on top of it, it will be in reality.

<comment><USER23> Stupid nitpick: The 'l' should be uncapitalised as chlorine's chemical symbol is 'Cl'.

</comment></comment><comment><USER24> Does anyone know if future versions of chrome will come bundled with ruby runtime? Or is it going to be a plugin download.

<comment><USER25> The whole point of NaCl is to stop bundling runtimes with the browser. You can develop in whatever language you like as long as it can compile to NaCl byte- code.

That said there could be a Chrome app that is a Ruby interpreter running on NaCl.

<comment><USER14> _The whole point of NaCl is to stop bundling runtimes with the browser_

Ironically enough that's exactly what NaCl itself is.

<comment><USER26> I think that's stretching the definition; NaCl is part of the runtime environment, but only as a sandbox which programs won't notice unless they go off the rails. Unless you meant Pepper, which does provide enough platform support for a port of the flash plugin. But Pepper is an API, and the functionality it gives access to would be part of Chrome anyway.

</comment></comment></comment></comment><comment><USER27> On the one hand I get why people are excited about this and why people like coffeescript, especially when source maps start working in inspector/firebug. You can write web apps in the language you love and know. Cool!

On the other hand, this really sucks. Javascript is just maturing to where it is really awesome! And there is a ton of collaboration among app developers because javascript was the only game in town for so long.

Of course people will continue to collaborate but not, I fear, at the same level. 3rd party libraries will continue to be available, but not as many will fit in so neatly with people coding in other languages.

This has already come up a few times with coffeescript and in a couple years when it is truly easy for people to work in other languages, we'll have a tower of babel effect.

JS is really good. It isn't that hard to learn if you already know other languages. It has warts but it is also very powerful so often it is worth it (check out the lines of code and speed vs other languages):

<http://shootout.alioth.debian.org/u32/javascript.php>

<comment><USER13> How much JS have you actually written?

It is a crap language designed in an afternoon and nowhere near good enough to solve the problems we currently use it for.

Just a few things of my head: 'this', 'var', no integers, semicolons, no block scope.

<comment><USER28> "var" and "no block scope" are horrible.

"No integers" is bad.

"this" can swing either ways. It provides some cool possibilities.

"semicolons" however (either the presence or the removal of) is a totally inconsequential and trivial syntactic thing.

Removing semicolons doesn't even buy you what a small amount of syntactic sugar buys you. You saved a few keystrokes. Big fucking deal.

<comment><USER29> I'ver never understood how the "this" thing actually brings possibilities. If anything, it introduces unnecessary confusion about scoping/binding. Python and Ruby don't have "this" and do just fine.

<comment><USER28> Well, Python has "self", that you have to explicitly pass. Not the best example.

<comment><USER30> But Python's methods already have self curried in. Class.foo(self, x) takes two arguments, but instance.foo(x) already has self bound, and only takes on argument.

This lets you do bar = instance.foo; bar(x) and it'll still work. Much more consistent.</comment></comment></comment></comment></comment></comment>


Toyota's Recall Crisis: What Have We Learned? - <AUTHOR> http://blogs.hbr.org/cs/2011/02/toyotas_recall_crisis_full_of.html

<comment><USER2> > Toyota's Recall Crisis: What Have We Learned?

How completely unreliable our media can be when it comes to anything not having to do with Jersey Shore or American Idol?

Forgive the snark, but the idea that a company lost all that money, sustained such damage to their brand and image built over so many years _simply_ because of a media that failed to do their jobs makes my blood boil.

<comment><USER3> And to think we scoffed at the Japanese conspiracy of an American media hit job against Toyota.

<comment><USER4> I would hesitate to call it a conspiracy, which ascribes some true malice to the media. I think it's probably more of institutional bias towards the sensational and a catering to people's beliefs out of desire for more viewers.

</comment></comment></comment><comment><USER5> >> So who won in this debacle?

The author does not mention the advantages that would come to GM as a result of this recall. Since the gov is an owner of GM, you could argue there was a potential conflict of interest here.

See this ->>>

"GM isn't wasting any time taking advantage of Toyota's weakened position after its massive recall and sales stoppage. The General has just announced new incentives for current Toyota customers.

In a phone call to Inside Line, a GM official said the new offer consists of zero percent financing for 60 months on most Chevrolet, Buick, GMC and Cadillac models. Cash buyers get $1,000 toward a down payment and lease customers can get a waiver of three payments up to $1,000.

To qualify for the incentives, customers must show proof that they own or lease a Toyota.

This is starting to get interesting. "

[http://blogs.insideline.com/straightline/2010/01/toyota- reca...](http://blogs.insideline.com/straightline/2010/01/toyota-recall- update-2-gm-goes-on-the-attack.html)

<comment><USER6> I remember also reading a piece in Stratfor about how the American leadership was disappointed with Japanese diplomacy. This sort of boring stuff is actually important in real-world policy enforcement.

[http://webcache.googleusercontent.com/search?q=cache:JziQfDN...](http://webcache.googleusercontent.com/search?q=cache:JziQfDNP0AkJ:www.stratfor.com/analysis/20091109_us_japan_managing_alliance+obama+japan+site:stratfor.com&cd=3&hl=en&ct=clnk&gl=us&source=www.google.com)

[http://webcache.googleusercontent.com/search?q=cache:t5XDNqP...](http://webcache.googleusercontent.com/search?q=cache:t5XDNqPU0PUJ:www.stratfor.com/analysis/20091105_japan_us_new_stage_relations+site:stratfor.com+obama+Hatoyama&cd=6&hl=en&ct=clnk&gl=us&source=www.google.com)

</comment></comment><comment><USER7> I'm sure that this is a common phrase, but one of my friends gave this advice to me:

"Their perception is your reality."

He was talking about management, and maintaining a good image to your employees, but the phrase applies to everything.

People's _perception_ was that Toyota had some terrible electrical problems, and the news media, being a for-profit endeavor, ran with it.

So Toyota's perceived problems became reality, and we needed to devote 10 months of the brightest engineering minds in the world to change that.

Unfortunately, that's how things work.

<comment><USER8> "So Toyota's perceived problems became reality, and we needed to devote 10 months of the brightest engineering minds in the world to change that."

Sadly, that's not how it works. People will forever remember that Toyota had horrible safety problems, and not that they were actually exonerated in the end.

<comment><USER9> Indeed. I still won't touch an Audi even decades after the 60 Minutes episode, even though it turned out to be false. Logically I know but logic only goes so far.

<comment><USER10> So the moral is: don't read/watch the mainstream press at all.

</comment></comment></comment></comment><comment><USER11> My biggest gripe with this is that when the truth finally comes out, it gets no attention. The perceptions that changed rapidly from "toyota = safety" to "toyota = death" will be slow to switch back. It will take years, although Toyota has done a good job marketing themselves since the incident.

</comment><comment><USER12> The interesting part of this is that NASA did a study. I used to work for NASA as a contractor. I never met anyone with automotive engineering experience. Not that there weren't any, but wouldn't it make more sense to hire an automotive engineering consulting company to do a study? Come to think of it, I wonder who NASA hired to do the study. I bet dollars to donuts it wasn't government (NASA) employees.

But people (and therefore politicians) see NASA and think smart. It just shows you how political this whole mess was.

<comment><USER13> I think some of the people working on all those rovers keep up with automotive technology. Also, when it comes to the specific systems involved they know more about sensors, robotics, and real time systems than just about any organization on the planet.

PS: _NASA engineers were contracted to conduct research into whether electronic systems or electromagnetic interference played a role in incidents of unintended acceleration._ [http://en.wikipedia.org/wiki/NHTSA- NASA_Study_of_Unintended_...](http://en.wikipedia.org/wiki/NHTSA- NASA_Study_of_Unintended_Acceleration_in_Toyota_Vehicles)

<comment><USER12> Well, those rovers don't have engines. But the interference makes a lot of sense. Radiation/interference is a major issue for space electronics.

Interesting side note: The Hubble Space Telescope used a basically stock (totally stock?) intel 486 in its computer - mainly, I'm told, because they came out of the box with remarkable radiation resistance. I was a mechanical guy, however, so don't quote me on that.

</comment></comment></comment><comment><AUTHOR> The events that led Toyota to recall 10 million vehicles may go down in industrial history as the biggest mountain of a crisis ever made out of the smallest molehill of a technical glitch. We now have verifiable facts, rather than conclusions drawn by the media based on assumptions, innuendo and fear.

<comment><AUTHOR> Here's a list of relevant articles: \+ The Washington Post editorial - "NHTSA Report Clears up Mystery - and Hysteria - on Toyota Cars" \+ Harvard Business Review - "Toyota's Recall Crisis: What Have We Learned?" \+ Bloomberg BusinessWeek - "Toyota: The Media Owe You an Apology" \+ Automotive News "One Year Later: Let's Get Beyond Toyota Speed Scare" \+ Fortune "The Safety Police Go after Toyota Again"

</comment></comment><comment><USER14> So, from the executive summary, it appears that NASA looked at the throttle system and was unable to find a systematic explanation for it being stuck open. A stuck throttle, by itself, is quite awkward but if you have a working brake override system, an awkward lurch will be as bad as it gets.

But regardless of what NASA did or did not find, there were real accidents involving throttles which were stuck open for minutes at a time with the engine completely overpowering the brakes. Recall that in the 100mph LA crash which set off the investigation the brakes were completely destroyed.

That is a real design flaw, an error of commission by Toyota. Other cars, for example VWs, have a brake override and the drivers manual documents an accelerator "double-tap" protocol for giving the accelerator priority, say when starting on a steep hill.

Furthermore, in the week after the recall, the president of Toyota announced that Toyota throttle systems would henceforth include a brake override. Here's their official press release making good on that promise:

[http://pressroom.toyota.com/pr/tms/toyota-extends-brake- over...](http://pressroom.toyota.com/pr/tms/toyota-extends-brake- override-154194.aspx)

So I can't develop too much sympathy for Toyota. They made a basic design mistake in a safety critical system, and then refused to acknowledge the problem. That mistake and their mishandling of it cost them a ton of money and that is exactly as it should be.

</comment><comment><USER15> Yeah, but 18 months is a long time to wait to see if you need to do a recall on a potentially deadly product.

</comment><comment><USER16> Still getting caught up on all of this, but there was a problem with sticky gas pedals?

</comment><comment><USER17> Also from NASA this week: No evidence your neighbor is a Communist.</comment>


A Conversation with Gerald - <AUTHOR> http://blog.embed.ly/a-conversation-with-gerald

<comment><USER2> If anyone else clicked on this link to find out who this mysterious 'Gerald' is and why we're supposed to know by him by his first name through some sort of Voodoo, i recommend instead to go listen to a far more interesting Guy called Gerald:

<http://www.youtube.com/watch?v=ivr57dcs9-E></comment>


The Tragedy of the Common Lisp: Why Large Languages Explode - <AUTHOR> https://medium.com/@erights/the-tragedy-of-the-common-lisp-why-large-languages-explode-4e83096239b9 <comment><USER2> After programming for 20 years, I've noticed that programmers are aware of the potential benefits of any abstraction that they have internalized, and blithely unaware of the costs. Because, having climbed that learning curve, it is now free to them.

The result is that programmers introduce complexity lightly, and when they walk into a new language/organization/etc are inclined to add random abstractions that they are used to from past experience.

And yes, I am not immune.

<comment><USER3> Your criticism of abstractions is very much in the abstract.

What abstractions?

What costs of these? In human comprehension, in runtime, in reliability, in mem/cpu?

Can you give examples which I can usefully learn so as to avoid?

TIA

<comment><USER2> Any and all abstractions. The cost is usually in all of the above.

Examples that I commonly encounter include OO, closures, dependency injection frameworks, complex configuration systems, various code generation systems, and on and on and on.

In general the tradeoff is this. For those who have internalized the abstraction, they can think about more complex things. Those who have not internalized the abstraction find it hard to figure out how the system works at all until they internalize it. So when you work on code that has a lot of abstractions under the hood it becomes either a black box (that occasionally you dig into) or (very often) a requirement that you understand X before you can even start to work on the code.

A rule of thumb that I use is how long the stack backtrace is. If every bug creates a stack backtrace that is dozens of frames, there are a lot of abstraction layers in place. And when all of the layers are actively being worked on, it adds up - quickly.

Deciding whether given abstractions are worthwhile for a given problem involves a judgment call. Unfortunately the people who are in the best position to make those calls tend to be the most senior, and tend to be the least aware of the costs of the abstractions that they add.

<comment><USER3> A nice reply, upvoted.

I would note that if you start your list with OO then you're including abstractions that almost all professional programmers would consider not abstractions but basic tools. It's impossible to work without such abstractions, except by working in purely procedural code, and even then...

I would add that if "a requirement that you understand X before you can even start to work on the code" is the case then your abstraction has - arguably, I may be wrong! - failed. My DOM iterator abstraction would take some effort of understanding to _maintain_ , which was my concern, but it was a very simple black box to use.

<comment><USER2> A simple example of an abstraction for which this is not true is the MVC design. If you don't understand how it works, you don't know where to begin looking to make a change to the system.

And yes, some abstractions truly are basic tools. And the more experience you have, the more basic they seem, and the more such tools you have.

I am not arguing against abstraction per se. What I am arguing is that abstractions bring a cost, and that cost adds up. A project needs to find an appropriate balance, and there is a tendency for experienced programmers to draw that balance at a point that may or may not be appropriate for the people who have to maintain the system after them.

</comment></comment></comment></comment></comment><comment><USER4> _The Algol, Smalltalk, Pascal, and early Scheme languages were prized for being small and beautiful._

Those languages are also not very popular at all today. Perhaps "small and beautiful" are not the right metrics to optimize programming languages for.

In many ways, keeping the core JavaScript language small has led to the JavaScript ecosystem being too large and sprawling. For example, look at module importing, something which is a fairly normal part of most programming languages. It still works in a completely different way in Node.js and in browsers. I think if there had been a standard way to handle JavaScript imports years ago, the practical experience of working in JavaScript would be simpler today.

<comment><USER5> > Those languages are also not very popular at all today.

But yet, C (arguably 'current algol') and Python (arguably 'current scheme' _) are..

_ yes: python is verry loosely like scheme, this is meant in the sense of a 'dynamic loosely typed language you can interact with in a repl'

<comment><USER6> Lua is a far better counter-example as a successful small and (conceptually) beautiful language.

<comment><USER5> yes, probably so. was going for 'popularity' here

</comment></comment></comment></comment><comment><USER7> > Once a language gets beyond a certain complexity — say LaTeX, Common Lisp, > C++, PL/1, modern Java — the experience of programming in it is more like > carving out a subset of features for one's personal use out of what seems > like an infinite sea of features, most of which we become resigned to never > learning.

This is how I felt about Racket, and I felt I had to do an opinionated pruning before I could use it for teaching, but the problem is that the docs don't have such a boundary for learners so you feel tempted to rewrite the docs.

<comment><USER8> Last I checked, Racket literally has sublanguages defined for teaching and learning: "Beginning Student", "Beginning Student with List Abbreviations", etc.

[https://docs.racket-lang.org/htdp-langs/index.html](https://docs.racket- lang.org/htdp-langs/index.html)

<comment><USER7> I wouldn't call those sub-languages, I think they're rightly different languages (of eerie similarity) born from specific pedagogical or academic vision. So the upkeep in dealing with the mismatch between proper Racket and these student languages wasn't something I was interested in. Students should be able to consult general Racket resources.

<comment><USER9> Exactly, I think that the Racket teaching languages were started to support teaching young/new students (and not necessarily people who are or will be CS majors) a particular way of approaching program design problems.

Racket itself arose from building a cross-platform toolset to support building those programming tools. It also became a toolset and testbed for PL research.

I appreciate what you're saying about Racket having a big library. I was recently talking about how to to teach Racket to _experienced_ programmers. I'd put them down in front of a full `#lang racket/base`, but start with teaching them only a specific subset of R7RS, and incrementally introduce a few more concepts and exercises to try for a day or more (things you can practice while writing your own real code, even if it briefly seems harder than something we told you that you could use before). If instead I just dumped the full Guide and Reference on experienced people, they'd become productive pretty quickly, albeit colored heavily by what they previously knew, and they might have a much longer path to becoming strong in some unfamiliar fundamentals.

BTW, another educational thing that Rackets `#lang` does is support students working through SICP use DrRacket. It emulates the particular older Scheme variant used in SICP, gives an IDE maybe a bit easier for new students, and runs on the student's own modern computer.

</comment></comment></comment></comment><comment><USER10> I feel like this is the real success of Python: the "one and preferably only one obvious way to do it" idea means that new ways of doing something are rarely added, and when new they _are_ added, old ones are likely deprecated. Complain all you want about the 2 to 3 transition, but it's resulted in a simpler, easier-to-use language. If the community really feels a different way is better, they add it in libraries. My only criticism of Python in this respect is that they didn't take it far enough: Do we need higher-order functions AND loops? Do we need classes AND first-class closures?

Common Lisp isn't even close to the most complicated language out there. Every

<comment><USER11> > Complain all you want about the 2 to 3 transition

Okay.

> it's resulted in a simpler, easier-to-use language.

Does `print(len("ẅ"))`[0] still produce a value (2) that is neither the number of characters (1) nor the number of bytes (3)?

0: "print\x28len\x28\x22\x77\xCC\x88\x22\x29\x29"

<comment><USER10> It took me a bit to understand what you were trying to do. Here's a paste of my Python 3 shell session, showing that Python 3 does indeed return the number of characters.

        ~$ python3
        Python 3.7.3 (default, Mar 27 2019, 09:23:15)
        [Clang 10.0.1 (clang-1001.0.46.3)] on darwin
        Type "help", "copyright", "credits" or "license" for more information.
        >>> len("ẅ")
        1

Python 3 uses UTF 32 internally, so the byte representation you placed below your post is not how Python 3 represents it. Instead, it looks like this:

        >>> "ẅ".encode('utf32')
        b'\xff\xfe\x00\x00\x85\x1e\x00\x00'

This has disadvantages (memory usage) but for most cases where Python is used, it's an advantage (faster random access, more intuitive for situations like the one you've proposed).

<comment><USER12> So, I see:

        Python 3.7.3 (default, Mar 27 2019, 09:23:32)
        [Clang 9.0.0 (clang-900.0.39.2)] on darwin
        Type "help", "copyright", "credits" or "license" for more information.
        >>> len("ẅ")
        2

I wonder why this is? Is the Clang version relevant here?

EDIT: Your "ẅ" doesn't seem to be the same as the OP's "ẅ", although they look the same at first glance.

        >>> "ẅ".encode('utf-8')
        b'w\xcc\x88'
        >>> "ẅ".encode('utf-8')
        b'\xe1\xba\x85'

EDIT 2. More info:

        >>> import unicodedata
        >>> w1 = "ẅ"
        >>> w2 = "ẅ"
        >>> unicodedata.name(w1)
        'LATIN SMALL LETTER W WITH DIAERESIS'
        >>> unicodedata.name(w2)
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        TypeError: name() argument 1 must be a unicode character, not str
        >>> unicodedata.name(w2[0])
        'LATIN SMALL LETTER W'
        >>> unicodedata.name(w2[1])
        'COMBINING DIAERESIS'

So the second version (w2) _does_ seem to consist of two separate "characters", LATIN SMALL LETTER W and COMBINING DIAERESIS, which is apparently not the same as the single-character LATIN SMALL LETTER W WITH DIAERESIS. I guess these are actually Unicode code points and not so much "characters" to a human reader, but as another poster pointed out, what the number of characters should be in a string isn't always clear-cut.

<comment><USER11> Correct, w2 is one character (latin small w with umlaut) represented by two unicode code points. I didn't realize there was a NFC code point for that character; try "\x66\xCC\x88" (f̈) or "\x77\xCC\xBB" (w̻) instead.

> the number of characters should be in a string isn't always clear-cut.

This is why I use examples from latin-with-diacritics, where there is no ambiguity in character segmentation.

<comment><USER10> Interesting, I learned a bit about Unicode here. It looks like copy/pasting combined the two code points into one when I ran my code.

Still, to the original point, I think this is more of a criticism of Unicode than of Python. It seems to me that the answer is to not use combining diacritics, and that Unicode shouldn't include those.

<comment><USER11> > this is more of a criticism of Unicode than of Python

True, although it's more specifically a criticism of Python _for using Unicode_ , where these kinds of warts are pervasive. See also "\xC7\xB1" (U+01F1 "DZ") which is two bytes, one code point, and _two_ characters with no correspondence to those bytes.

> the answer is to not use combining diacritics

This doesn't actually work, sadly, because you can't represent eg "f̈"[0] without some means of composing arbitrary base characters with arbitrary diacritics.

0: If unicode has a added a specific NFC code point for that particular character, then that's bad example but the general point still stands.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> [hyperbolic] Common Lisp deserves more love. People are just too much jealous to admit that CL is one of the best language of the world. How someone can think that JavaScript, PHP, Java and other stuff alike are at least non- miserable in comparison with something so powerful as Common Lisp? [/hyperbolic]

Keeping the humor-ish stuff aside, actually taking CL here as example it's someway ignorant. That's doesn't make any sense to me. Seems that all that opinion are based in nothing more that nothing when it concerns about Common Lisp literature experience and personal experience with the language.

Some languages are popular, but they being popular doesn't proofs that they are good languages. This is a fact based on the type of problems most of the people are trying to solve.

CL being big it's some way comparable to C++, but for big problems, sometimes we need complex tools. CL is not for kids, neither C++. Common Lisp it's a language for hackers.

<comment><USER14> my neck aches from nods in agreement. i know i've written at leeaasst one #'TRAMADOL-SIMULATOR but i'll likely just lambda the notion, slightly faster &or funner than grepping my filesystem for "\\.l*sp$".

</comment></comment><comment><USER15> I kind of wish there was a lisp with the "recompile on error and continue" feature of Common Lisp but without a massive standard library. A standalone SBCL program seems to be around 40MB at minimum. It feels like it would be doable if only CL wasn't designed with the kitchen sink included. Recently I've gotten into Janet[0] and really like the language, although I do miss CL's recompilation magic at times. It feels like a Lisp dialect with similar style to Lua: tables, coroutines, small language core, embeddable as a single C file, etc.

[0] [https://www.janet-lang.org](https://www.janet-lang.org)

<comment><USER16> SBCL's programs are 40MB because they contain all dev tools and the code is native code, which is also large.

There are a bunch of Common Lisp implementations which are smaller (CLISP), can create small applications (Lispworks), can be embedded (ECL) or can compile to smallish C code (mocl).

<comment><USER17> Also, Common Lisp's standard library cannot compare to Python, Java etc. They have a lot of _language manipulation_ tools but not actually anything that will help you ship quickly if you are building generic CRUD style applications. CL tends to shine when it comes to extremely domain specific niche stuff where you practically have to write your own tooling from scratch.

<comment><USER18> Roswell comes to mind for application building and distro management. Add in ningle for web app building and woo for the server (the benchmarks are really good), and you're basically good to go.

I think the main problem is there's too many implementations of the same thing in CL, so devs basically have to agree on a very specific subset of tools for every project, which adds a fair bit of overhead.

[https://roswell.github.io/](https://roswell.github.io/) [https://github.com/fukamachi/woo](https://github.com/fukamachi/woo) [https://github.com/fukamachi/ningle](https://github.com/fukamachi/ningle)

p.s. Not the author, but a big fan.

<comment><USER17> Last I tried it's not reliable. E.g. generating binaries through VM images is coin toss.

</comment></comment></comment></comment></comment><comment><USER19> I get that the article used Common Lisp to create the punny title and much of its contents are broadly about why its important to keep languages relatively small, but I'm sort of disappointed most of the language-specific talk was about JS. I'm in the middle of learning CL at the moment (I have a mostly Java, Python, C++ background, in that order of experience) and would be interested to hear from experienced Lispers on why some other Lisp would be a better choice at a language level (so not based on convenience, tooling, popularity, etc... okay, maybe tooling).

<comment><USER20> Racket seems to be favoured individuals who are using it to create a DSL or accomplish very specific tasks, but CL is definitely the most used Lisp (well, maybe apart from Clojure) to create 'big' applications.

</comment></comment><comment><USER21> This comparison is inappropriate. When Common Lisp was standardized, the goal was to unify several different Lisp dialects, not to make the language "small." Furthermore, there was no standard library for Common Lisp. The language itself is its standard library. If anything, the language by itself is too small for a lot of modern applications. (The situation is different now; there are hundreds of libraries to fill in the missing pieces of Common Lisp. But they're not standardized like the core language is.)

<comment><USER16> > the goal was to unify several different Lisp dialects

the goal was to unify several similar Lisp dialects as a Maclisp successor

</comment></comment><comment><USER22> As an aside, I recently tried Common Lisp, and it's actually pretty good, you'd be surprised.

</comment><comment><USER23> Isn't c++ a large language? And yet it's still used.

<comment><USER24> Sure. But there are a lot of areas where you just shrug and say "here be dragons" and move on.

For example, consider the new for loop syntax

      for (auto item: a().b().c()) ...

Does this make you nervous? It should. In the above, suppose a(), b(), and c() are all returning objects. Which of these objects remains valid until the end of the for loop? And this is a dragon in one of the most helpful parts of new C++.

<comment><USER23> Yeah, I'm not a big fan of the language, I'm only saying it's used a lot. Seems that in this case there was not a lot of portable fast alternatives for system / device / high performance programming.

</comment></comment></comment><comment><USER25> Related from 2015: [https://news.ycombinator.com/item?id=9738866](https://news.ycombinator.com/item?id=9738866)

</comment><comment><USER22> I think the word Large is pretty ambiguous. In my opinion, it is more about incoherent, inconsistent, complected, and with no clear way to learn more about things you do not understand. A language which has everything I would need already available and ready to use, in a simple and straightforward way is pretty great otherwise.

</comment><comment><USER26> The same happens to CPU instruction sets. Old stuff should get deprecated once better features are added (letting you write more concise and efficient code) but you can't deprecate that as it would break too much legacy code people rely on.

</comment><comment><USER27> Awesome to see Mark S. Miller on the front page. One of my favorite computer nerd jokes: Ted Nelson points out that Mark Miller's name is his vocation. :D Get it? He's a symbol grinder, a mark miller. I love it.

</comment><comment><USER28> What exactly is the link with the tragedy of the commons?

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

<comment><USER2> The word "Common" is a reference to the language Common Lisp: [https://en.wikipedia.org/wiki/Common_Lisp](https://en.wikipedia.org/wiki/Common_Lisp).

No explicit link with the tragedy of the commons was implied. Implicitly, of course, it applies - there are many participants, each of which is aware of their own gain and unaware of how their actions cost everyone else. The result is that when they all get their changes in, the result is terrible for everyone.

For another example, C++ is a terrible language, but it contains many good ones.

<comment><USER28> > No explicit link with the tragedy of the commons was implied.

Okay, but the article says:

> Adapted from a 2015 es-discuss thread. "Common Lisp" is not the topic. It > serves only as one of many illustrative counter-examples.

So if "Common Lisp" is not the topic, and the tragedy of the commons is not the topic, then it seems the title is not very well chosen.

</comment></comment></comment><comment><USER29> Lisp isn't a large language, it's a small language with a large library.

<comment><USER30> I think comp.lang.lisp had this discussion 10 years ago and the "core language" semantics of Common Lisp is something like 25-30 functions/operators. Rest of the language could be a separated into libraries.

But even with the all those 'libraries' COMMON-LISP package has just 978 external symbols.

<comment><USER31> In TXR Lisp, I seem to have nearly double that in the analogous public library package called _usr_ :

      1> (len (keep-if [orf boundp mboundp fboundp] (package-symbols 'usr)))
      1713

That's just a one-man project coming up to ten years two months hence.

That doesn't count any structure types or their slot names, FFI types, and local macros involved in syntaxes like _awk_ and such.

I would say that Common Lisp shows amazing restraint, given its scope and number of people involved.

</comment></comment></comment><comment><USER32> _> The Algol, Smalltalk, Pascal, and early Scheme languages were prized for being small and beautiful. _

But they did not achieve widespread adoption.

Widely used languages need to apply to a wide range of use cases. For example the fat arrow(=>) class syntax that binds this.

        class Foo {
          bar = (baz) => {
            // do something
          }
        }

For entry level JavaScript developers working in React, this made one of the most common hangups go away for them due to the automatic binding of `this`. But for a some other situations, that might end up an anti-pattern.

That's always the issue with small, clean implementations. They work when they only apply to one domain. Once they need to be used for different things, they then need to add new features. It is no different for software, blenders, bicycles etc. Once something is used for multiple domains, it now needs to become larger and more complex. Its basically a rule of nature.

<comment><USER33> > > The Algol, Smalltalk, Pascal, and early Scheme languages were prized for > being small and beautiful.

> But they did not achieve widespread adoption.

> Widely used languages need to apply to a wide range of use cases.

A long time ago, an old-timer, even more old-time than me (and I did CS home works on punch cards in PL/I...) was a C fanatic, and was dragging his mainframe colleagues into Unix, said it best: "C does not get in your way."

He (and I) came from an era when eventually pretty much every language eventually "got in your way" and you had to learn the assembly language calling and linking conventions and implement a few nuts & bolts to get your job done. C was the first popular language that didn't eventually knee-cap you like that. That is why C won and Pascal was an intense but passing fad.

To me, that is the essential message for language designers, more important than "keeping it small". Stay out of the programmer's way. Of course, there are different ways of staying out of the way.... Python's "duck typing" is a way of keeping the type checker out of your way. Rust's "unsafe" is a way of keeping the borrow checker out of your way when you really, really, need to carve with your sharpest knife.

So I would argue that "applies to a wide variety of use cases" simplifies to: does not get in your way no matter what your application is.

As an aside: The old timer was a role model to me in one important aspect: Learning to recognize progress when you see it. He not only lived through the transition from core to solid state memory, he lived through the transition from transistor logic to integrated circuits. But he was evangelizing C and Unix when many his age thought the list of interesting programming languages had len()==3: FORTRAN, COBOL, assembly. I took that lesson to heart, and try very hard to answer the question: "Is this progress, or is this just different?".

<comment><USER34> Go does this really, really well. I'm not a huge fan of Go-the-language (largely because I enjoy having a little more abstractive power), but I have to admit that one of its huge strengths is that it's a language designed to take the focus off the language and onto the program you're writing. It avoided several of the pitfalls of more "advanced" languages (eg. Common Lisp, Haskell, even Rust and Python 3.5+) in the process, which is perhaps why it's seen more mainstream adoption.

Kotlin's another language that looked at say Scala (which is an immensely powerful language, but easily lets you get lost in abstractions), decided "We don't need that feature unless it actively helps remove friction when writing programs", and ended up with a lot more real-world programs written in it.</comment></comment></comment>


Julia Language for Raspberry Pi - <AUTHOR> https://www.raspberrypi.org/blog/julia-language-raspberry-pi/ <comment><USER2> There's just something magical about blinking LEDs in programming. I fondly remember hooking up rows and rows of LEDs to the GPIO of an AVR when I was a kid (maybe I should find that board and hook up the LLVM AVR backend to julia ;), but the RPi does make that kind of thing a whole lot easier. I'm glad this collaboration worked out.</comment>


BASH: Lingua Non Grata - <AUTHOR> https://erkanerol.github.io/bash-lingua-non-grata <comment><USER2> While "This presentation is not ... Extremely Advanced Supersonic BASH Guide", it is quite useful to me--thanks for creating & sharing.</comment>


Evernote Accelerator - <AUTHOR> http://blog.evernote.com/blog/2013/04/16/announcing-the-evernote-accelerator/

<comment><USER2> One of my startup's products (<http://cookiewords.com/en/>) won us a hackathon in Korea that was hosted by Evernote, who flew us to Evernote HQ in Silicon Valley this past February.

We weren't part of an accelerator per se, but during our week-long stay we got to meet with anyone we wanted, including CEO Phil Libin and COO Ken Gullicksen, their developers, designers, etc.

In fact, they were the ones who originally encouraged us to apply to YC's Summer 2013 class, and we were able to get recommendations from COO Ken Gullicksen and former-CNET-journalist-turned-evangelist Rafe Needleman (author of the blog post above). Unfortunately we got a rejection email this morning, but we got more help from Evernote than we could have ever expected.

The fact that they don't take any equity in their new accelerator program shows just how awesome a company Evernote is, and I'd highly recommend anyone in the "memory/productivity enhancement" space to give it a shot.</comment>


Ask HN: Is This the End of the System? - <AUTHOR> Western exonomies are about to collapse, it is becoming apparent that food is still being produced, we are fed, sheltered and community spirit is high. We are going to survive and the government are going to pump billions into each of our economies.
Given that society is so advanced that our food is ordered through the internet and our total abundance underlined. Will a new system prevail, will we realise that the current insanely inflated asset system is over.
Interesting times. <comment><USER2> We've been near a post-scarcity economy in the West for some time now and it always seems at the tipping point of being for everyone or for just a consolidated few. I haven't seen a lot of people posting things like, "It's your fault you work in a job that is shut down and can't pay for groceries. Pick yourself up your bootstraps." Nice not seeing that and perhaps anecdotally it says something more positive about society than previously assumed.

</comment><comment><USER3> Isn't war usually involved in these changes? Economic analysis isn't enough. We must also appreciate the military might buttressing the current paradigm.</comment>


Microsoft And Nokia Now Expect Their Massive $7.2B Deal To Close In April - <AUTHOR> http://techcrunch.com/2014/03/23/microsoft-and-nokia-now-expect-their-massive-7-2b-deal-to-close-in-april/

<comment><USER2> Amazing

Nokia = hardware /software/factories/ lots of employees (jobs) / history ...= 7.2B

Whatsapp = ? = 19 B

In 5 years time, ideas alone might be worth billions!

<comment><USER3> Which would essentially be a price on the collapse of the current economic paradigm, if AI emerged as super efficient idea generator. ( Even before it finds it's legs, as it were ).

I would therefore suggest that to be untenable.</comment></comment>


Treasury Issues Proposed Regulations on New 20% Deduction for Pass-Throughs - <AUTHOR> https://home.treasury.gov/news/press-releases/sm456 <comment><AUTHOR> The recommendations are still being reviewed and digested, but the definition of qualified business looks promising for owners of product-based tech businesses above the crucial $157k/$315k income point. Everyone qualifies up until that point, but not after if you have a consulting business.

Between this and the changes that discourage stock-based compensation, I wouldn't be surprised to see a lot more tech jobs being posted as consulting jobs.</comment>


Fewer Americans Need TVs, But Only Because More Need Flat Screen TVs - <AUTHOR> http://techcrunch.com/2010/08/20/americans-need-tv/

<comment><AUTHOR> What caught my eye was how high Landline phones are. Cellphones don't have perfect reception, but I barely use landlines anymore. It's also interesting how low cable and satellite TV are, don't think that would be as low if it weren't for Hulu and online streaming.

<comment><USER2> There are still businesses that require landlines, sommetimes loans. Even a job I applied to required a landline to reach me on (a summer job before I graduated from college). Granted it's getting rarer, but it still happens. Landlines are sort of a proof of address.</comment></comment>


Show HN: Instantly run commands in the cloud using Docker - <AUTHOR> https://orchardup.com/blog/docker-in-the-cloud

<comment><USER2> very cool! But I think the globally unique app names will feel inconvenient as you get more users. You could silently add the Orchard user id to give it a namespace.

</comment><comment><USER3> Signed up for the free credit to check it out. Works as advertised. Cool.

</comment><comment><USER4> Somewhat offtopic but does anyone remember the name of the temporary VM service that I think was on HN many months ago?

<comment><USER5> [http://instantserver.io/](http://instantserver.io/) ?

<comment><USER4> Thanks so much.</comment></comment></comment>