Lightning Network: Scalable, Instant Bitcoin/Blockchain Transactions - <AUTHOR> http://lightning.network/ <comment><USER3> For the HN crowd passing by, here's why this stuff could be interesting to you.

It's not possible to do extremely small micropayments on bitcoin directly as people use it today. Bitcoin's made a lot of promises around micropayments, but doing it in an economical way has tradeoffs, especially if you're talking about millions to billions of transactions per second. In fact it's not possible to extremely small micropayments on ANY platform. Try sending $0.001 to someone once. It's not possible. The closest you're probably going to get is sending someone an item on Steam (and there's no easy way to price the items). The reason for this is underwriting costs, it's too expensive for Visa to process it since they're assuming some liability. Even Paypal, who ostensibly should be doing this, charges $0.30 for payments for goods and services.

Lightning allows for micropayments to actually happen because custody is still pushed to the edges, so you don't have the same kinds of underwriting risk.

This means that something as simple as paying someone $0.001 over the internet one time will become viable this year. The amount of possible business models and use cases could dramatically shift. Users may not know they're using Bitcoin (your application could hide it and abstract it away), but people are getting paid in a way they could not before (even centralized systems did not exist, let alone decentralized ones). Pay-per-click webpages, massive decentralized CDNs, creating API services without a username/password to make onboarding seamless (you paid? you're done!).

We're working on code here: [http://github.com/lightningnetwork/lnd](http://github.com/lightningnetwork/lnd) It's MIT licenced and will soon have some pretty simple APIs to use. Of course, since this stuff will be in testing for a little while, make sure you only use small amounts/micropayments initially when it's released.

<comment><USER4> The site talks about billions of transactions per second. So presumably multiple tx/sec/person on earth. Can you give me some examples of how this is useful? For instance, why would a CDN want to handle and record a financial transaction for e.g. every HTTP load or something?

I'm also suspicious of pay-per-whatever extending to end-users. People hate that kind of billing, even when it's cheaper (I learned this the hard way). And between companies, again, what's the benefit of having thousands of transactions when a couple would do?

<comment><USER5> >Can you give me some examples of how this is useful?

Marketing.

<comment><USER6> Machine to Machine payments. Payable endpoints 402 payments? They're tech guys not marketing. I'm not sure if the LN guys even have marketing people?

</comment></comment></comment></comment><comment><USER7> I'm still not sure how I feel about implementing a layer over the Bitcoin network like this instead of just fixing the inherent flaws with the protocol. Especially when said network is being pushed by the company Blockstream which is known for shady practices.

<comment><USER8> >instead of just fixing the inherent flaws with the protocol

What are the "inherent flaws"? Seems like the bitcoin blockchain has done its job better than any other blockchain for longer. Also, it's open source.. You can submit a proposal yourself if you want to fix it..

<comment><USER9> "You can submit a proposal yourself if you want to fix it"

Not really. The vast majority of the bitcoin community has been trying to do just that. But a few devs have unilaterally been able to block the changes. The Devs have a lot of "soft power" to do stuff like that.

<comment><USER10> > The vast majority of the bitcoin community has been trying to do just that.

Thats a common claim made on easily sockpuppeted forums, but when put to cryptographic votes, we find pretty much the opposite response: [http://bitcoinocracy.com/arguments/if-non-core-hard-fork- win...](http://bitcoinocracy.com/arguments/if-non-core-hard-fork-wins-major- holders-will-sell-btc-driving-price-into-the-ground)

Similarly, I've found in person meetings to also yield similar results.

> But a few devs

Really, almost the _entire_ technical community; with the exception of a few high profile companies and their consultants.

> have unilaterally been able to block the changes

That isn't how Bitcoin works.

<comment><USER11> why can't you face up to the fact that Blockstream is the de-facto governance body for Bitcoin? It claims it is, and you spend countless hours on the Internet trying to show the opposite. "Cryptographic votes" \- duh, that's what the Bitcoin consensus should be for. I can't fathom that somehow so deeply engaged in the project doesn't understand this most obvious fact.

</comment></comment></comment></comment></comment><comment><USER12> -Blockstream Playbook-

Step 1: Buy off all of the top developers of open-source project. Check.

Step 2: Refuse to support/fix basic network operations so that transactions stop confirming just as the network needs to grow. Check.

Step 3: Create a 2nd-layer solution for growth that allows the company to siphon Billions of dollars over many years. Check.

Step 4: Censor any forum where people alert others about secret get-rich playbook. Check.

<comment><USER10> > Step 1: Buy off

We founded the company.

> all of the top developers

A couple people out of a community of around 50-200 depending on the phase of the moon.

> Step 2: Refuse to support/fix basic network operations

Uh. You know that Bitcoin is a decenteralized system that no one controls; right? We do a lot of fixes, but we're not your personal code monkies. There is a LOT going on in Bitcoin, and it's working pretty darn well at the moment.

> Step 4: Censor any forum

Via our magical mind control rays, I suppose? Blockstream doesn't control or influence any forums.

Wheres your playbook? Which step does "Create throwaway accounts on hacker news to slander people" fit? Is it before "profit" or "suppression of inconvenient technology"?

<comment><USER13> Again, these are lies from Gregory Maxwell (Blockstream CTO).

Please provide details on funding. Specifically, how much AXA paid?

"A couple people out of a community of around 50-200 depending on the phase of the moon."

Again a lie. The top Core devs are Blockstream employees.

Blockstream has created a toxic environment and a huge ivory tower.

"Uh. You know that Bitcoin is a decenteralized system that no one controls; right? We do a lot of fixes, but we're not your personal code monkies. There is a LOT going on in Bitcoin, and it's working pretty darn well at the moment."

Meanwhile 80%+ of the hasrate is concentrated in a single country and in the hands of a handful of entities.

Ironically, Blockstream goes graet lengths to exploit this (HK roundtable farce).

"Via our magical mind control rays, I suppose? Blockstream doesn't control or influence any forums."

People associated with BlockstreamCore support censored and manipulated forums, interestingly owned by a single individual (theymos)

Gregory, you are the most pathetic individual in the Bitcoin space.

<comment><USER10> > Please provide details on funding. Specifically, how much AXA paid?

Dunno, not enough to be broken out on the reports I have. They're not an investor that I've ever met with-- we have a lot of investors. Though it's a cute technique that y'all have been using where you try asking something that would be confidential, to try to inhibit a response on the long list of leading questions that follows.

>> "A couple people out of a community of around 50-200 depending on the phase of the moon."

> Again a lie. The top Core devs are Blockstream employees.

I gave a breakout in another post; if you want to go by top you end up with three out of the top 10, all of whom were founders of the company. wooo.

> Blockstream has created a toxic environment and a huge ivory tower.

What does that even mean? or another way, how could someone falsify that claim?

> Meanwhile 80%+ of the hasrate is concentrated in a single country and in the > hands of a handful of entities

Unfortunately, the block size limit was set too large and this created outsized returns for large consolidations. More recent improvements have caught things up a bit but it will take a while for the damage to equalize out.

> People associated with BlockstreamCore support censored and manipulated > forums,

What the @#$@ are you talking about? Citations? Or are you just saying that anyone of the vast majority of people who are supportive of our work is "associated"?

<comment><USER14> >Unfortunately, the block size limit was set too large and this created outsized returns for large consolidations.

Can you clarify this statement?

</comment></comment></comment></comment></comment><comment><USER15> This is from the same company that has seized control of the development of the main Bitcoin codebase and has been making changes to cause problems that their Lightning Network claims to solve.

<comment><USER16> Your comment seems like a cheap poke at Blockstream, who have nothing to do with the lightning paper authors.

(I work for Blockstream, and I am also trying to implement and standardize lightning. But we certainly didn't invent it, and this isn't our page)

<comment><USER12> You are implementing Lightning, paid by Blockstream but Blockstream has nothing to do with it?

Maybe you're just really funny and they are paying you for your incredible sense of humor.

<comment><USER17> Supposing this is really Rusty Russell [0], I would encourage some hesitation before you imply that they are involved in advocating for less than savory things.

Rusty Russell has done a lot of great work on Linux (the TCP stack in particular) and you've probably used some of his work. For all I know, Russell might be deluded and Blockstream might be an evil brain-washing machine, but if Russell was in it for the money he could or would just as easily have done that 10 years ago rather than today.

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

<comment><USER12> I was pointing out the obvious logical flaw in what he said, that's all.

I'm sure he is a nice guy and maybe he's even funny.

Blockstream does need to recoup the 70 million in funding they've received though and it's a fact that they have most of BitcoinCore's top contributing developers on their payroll, with exception to Wladimir.

Clearly I'm not the only one concerned about a conflict of interest and I'm sure it's hard to see conflicts of interest if you're the one at the center of it.

One last edit, aside from a grammar correction: authority deserves scrutiny.

<comment><USER10> Hi, ptokb3, you seem to have created this account to make these posts but you see fit to go on about scrutiny. Seems odd to me.

Blockstream does support Bitcoin infrastructure development-- something much of the Bitcoin industry has failed to do, perhaps a company you work for and are concealing through your anonymous posts?-- but that is a far cry from a "majority" by any definition. E.g. in the last 3 months 58 people have made contributions to Bitcoin Core, 7 work for Blockstream. Sorted by commits in the last year, among the top ten, 3 work for blockstream (all founders of the company). -- just as we've done for the last 5+ years (the same group has been in the top 10 contributors pretty much the whole time).

Whats your actual allegation beyond pointing out that we spend some resources supporting the public infrastructure we all depend on?

<comment><USER12> Hey nullc,

I'm a software consultant for my own developing firm. I don't have a conflict of interest. As I've said before, this is a new account and my only account here. I've read HN for some 5-7 years now as a morning news source and have not gotten involved in the conversation until this point.

To the issue:

MIT would probably be happy to support more Core developers and that would definitely lessen the current conflict of interest.

Is it hard to see that one company paying most of the top developers in the accepted codebase is something that makes people uneasy? It does and the considerable pushback from modest on-chain scaling (which needs to happen eventually anyway) has people worried that you're (Blockstream) is trying to control or limit Bitcoin due to your funding from AXA.

<comment><USER10> > MIT would probably be happy to support more

MIT doesn't support _any_ developers. MIT DCI pays MIT and is funded by undisclosed parties, but you never even care to ask about that. (And not that MIT is magically benevolent, in any case...)

We've tried for _years_ to get sustainable funding for development; but the Bitcoin 'industry' is just not interested.

> paying most of the top developers

Why do you keep repeating this misinformation? As I pointed out, e.g. three of the top ten by commit activity work for blockstream (and all of us were founders of the company). This is not most.

> has people worried

Has pseudonomyous sock accounts on the Internet who appear to own not much (to zero) Bitcoins; worried, at least.

> modest on-chain scaling (which needs to happen eventually anyway)

I think all the engineers at blockstream that work on Bitcoin supported segwit which roughly doubles block transaction capacity. (in a backwards compatible while improving scalability, to keep the operating costs low).

> due to your funding from AXA

Pretty perplexing, AXA isn't even to be broken out in the reports I have (we have many investors). I've never even had a conversation with anyone from AXA myself.

<comment><USER12> It was my understanding that Gavin and Wladimir were part of the MIT Media Lab payroll.

> you never even care to ask about that

Honestly, I don't know where that would be public information to know to ask about it.

> to own not much (to zero) Bitcoins;

That is not the case. Most people who have been very vocal pushing for larger blocks have significant Bitcoin investments.

> segwit which roughly doubles block transaction capacity

This only happens if all wallets adopt it, which makes them write/fix their wallet software upstream. That takes time. It's not a quick enough solution for an urgent problem.

Last, if you're taking money from someone there is a conflict of interest there.

"It's hard to get a man to understand something if his job depends on him not understanding it" \- Upton Sinclair

Large investors usually want something back for their investments. Maybe you don't know what that is right now, but it's legitimate for regular users to be weary of it.

<comment><USER18> > It was my understanding that Gavin and Wladimir were part of the MIT Media > Lab payroll.

They aren't. The Digital Currency Inititive (DCI) != MIT. Rather, it's a separate entity that's effectively paying MIT for use of the MIT name and administrative infrastructure; we do not know who is actually funding DCI.

<comment><USER19> [https://medium.com/mit-media-lab-digital-currency- initiative...](https://medium.com/mit-media-lab-digital-currency- initiative/announcing-a-900-000-bitcoin-developer- fund-6e8b7e8b0861#.eychwbpd5)

"Together, we've raised $900,000. Donors include companies (BitFury, Bitmain, Chain, Circle and Nasdaq) and individuals (Jim Breyer, Jim Pallotta, Jeff Tarrant, Reid Hoffman and Fred Wilson)...while the funds will be limited to support Bitcoin protocol development, the donors do not have any influence over the developers."

<comment><USER18> Ah good, they finally published part of the list (I was discussing that with them in early march in person at MIT).

That said, I believe that list is incomplete.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> At it's most basic, the Lightning network is just a way of implementing pre payment cards for Bitcoin.

Its over engineered and over complex. Which is demonstrated by the comments here trying to explain how it works.

No one has yet been able to explain how they will prevent one central hub from developing which by economies of scale will offer the lowest cost path through the network as it will have channels setup with everyone.

Ask yourself who will operate this hub and you'll understand why people want to implement this.

</comment><comment><USER13> The lightning network is a pathetic scheme to suppress the liberties the original vision of Bitcoin provides.

Blockstream is a corrupt company which does not refrain from spreading lies and propaganda to further their agenda.

Everyone is free to look up what entities own them.

</comment><comment><USER21> lower fees, but still no return of free transactions? core recently removed support for free transactions even though satoshi stated [1] clearly that free transactions should always be allowed.

[1] [https://bitcointalk.org/index.php?topic=994.msg12168#msg1216...](https://bitcointalk.org/index.php?topic=994.msg12168#msg12168)

<comment><USER22> >core recently removed support for free transactions even though satoshi stated clearly that free transactions should always be allowed.

Free transactions right now have essentially zero chance of going through, so it makes sense that they're removing it, since it would prevent users from creating transactions that will never confirm. I'm not disputing satoshi's point, but given the current network conditions, the change makes sense.

</comment></comment><comment><USER23> Is there any news here?

<comment><USER3> Not sure why it's posted again, but we might have some announcements soon :D

</comment></comment><comment><USER24> Nothing special / news here. I would also like to have limited free transactions per block allowed.

</comment><comment><USER25> Similar work is going on in the Ethereum space, both with microtransactions and more generalized state channels for arbitrary computation and data distribution (see Raiden/Truebit/Swarm). But the problem remains the same: finding protocols that have the right (or even adjustable) centralisation/efficiency/privacy/risk/cost tradeoff. Another question is whether these systems will become purely financially incentivised or implement some form of social routing. While the trust conferred to the intermediaries can be quite low, some cooperation is still necessary and even in an initially free market, economies of scale could result in some actors having control over the entire system. Routing still requires consensus, but this time it's local.

<comment><USER10> Whats the challenge for ethereum? If the smart contracts don't work out like you hoped, you just get the people running it to adjust the ledger for you.

(Or do they only do that when they personally lose out?)

<comment><USER25> The DAO debacle showed that regardless of the system - even Blockchains - there is no cloud, there are only other people's computers. All systems are inherently influenced by the people behind it, even if they try to ignore or abstract that fact away. There is no perfect neutrality, in fact, Blockchains with economic consensus (PoW/PoS) set a price for it.

In addition to what I described above, there are more open questions, ranging from the best network topology to the different patterns of interactions and how they can be optimized. I'm becoming convinced that the best approach would not only allow for one paradigm, but for a range of protocols with different properties (e.g. that work in offline environments) - <USER2> decentralisation. Any kind of maximalism for a single currency and network instance isn't applicable to this.</comment></comment></comment>


Iran to Launch State-Backed Cryptocurrency to Counter SWIFT and US Regulations - <AUTHOR> https://www.btcwires.com/c-buzz/iran-to-launch-state-backed-cryptocurrency-to-counter-swift-and-us-regulations/ <comment><USER2> This article seems to be just speculations without any reliable source. Using cryptocurrencies for any meaningful amount of money is impractical for sanctioned countries because of difficulties in exchange with fiat currencies. Currently the Iran government forces very restrictive policies on cryptocurrency use by people. Even if there is a CBDC project under development, a small project done as an experiment does not show what a country is trying to do.

(I am CTO of a local cryptocurrency exchange market in Iran)

<comment><USER3> I can think of ways for them to essentially use crypto as a negotiable bond (high rates due to uncertainty about politics and stability, although Iran itself is a good long-term growth bet in ways other than politics). Issue the CBDC in a way which essentially promises appreciation, do cross-chain atomic swaps for other currencies for overseas purchasing.

Might not be more efficient than, say, shipping tankers full of oil to countries who don't do the sanctions, or other goods, but it's an option. I think if there were essentially a way to anonymously buy 30% interest rate Iranian bonds at a retail level for crypto, you'd see people do it. They could also go after the stablecoin market by earmarking oil/other commodities/physical USD/etc. as backing.

<comment><USER4> Iran can easily issue BTC- or ETH-denominated bonds.

Why would a free market buy bonds denominated in some newly created currency? Smells like the issuer just wants to be able to devalue this currency in order to pay the interest.

In the end, the reason reasonable investors won't buy 30% BTC-denominated Iranian govt. bonds is that Iran will have to exchange the ETH/BTC earned from selling the bond (because whoever Iran wants to pay don't accept ETH/BTC), which exposes the investment to a huge exchange rate risk.

</comment></comment></comment><comment><USER5> I find it funny how some countries want to use crypto to avoid some regulations they don't like.

However they are not using existing cryptos: instead they try to bootstrap their own crypto to still milk the seignorage cow they like, and to keep the ability to rewrite the rules later that they also like.

My trust in these countries monetary policy is less than the trust I have in say Grin.

</comment><comment><USER6> If Iran was serious, then they would use Ethereum or Bitcoin. They would make an exchange in their country to get local currency in/out Ethereum. The exchange could allow local banks to transfer in/out (ACH-like) to the exchange to get in/out between Ethereum and their local currency. Then all cross-border controls are gone by Ethereum senders and receivers crossing borders.

The only reason not to is:

1) They don't want local currency holders expropriating their capital

2) It could result in their local currency having high inflation or even possible collapse down the road

But... if cross-border flow was really their goal, then they would use Ethereum.

<comment><USER7> The only problem with this aproach is that the local exchange needs to do an initial purchase of Ethereum from foreign markets, which is a traceable transaction.

Once they've traced the original ETH all transactions flowing out of it can be blocked by the other exchanges.

Their options are to either use a privacy coin (Monero) or make the initial purchase underground and somehow hope it doesn't get discovered.

</comment></comment><comment><USER8> Sound great, but it's an insanely steep wall to climb.

* Their main goal, and problem, is to exchange to & from other currencies. They'll be subject to their coin being a poison pill that causes any bank or exchange dealing with it to be sanctioned, risking their own access to SWIFT, etc. How will they attract miners when miners will face the same exchange difficulties?

* Trust will be minimal, since it not only starts out as just another sh _tcoin among thousands, but unless they are VERY transparent and do no pre-mining or take other excess rights /value available to coin-makers, who else would trust it? E.g., that Venezuelan coin, supposedly backed by oil barrels, has it done anything good?

_ Even if they do get people to trust it, and get ways to exchange it, they'll certainly be target of state-level cyber-attacks if the currency gains any traction, and either a massive corrupting hack or a 51% attack could be even more devastating than having never started in the first place.

I'm buying popcorn.

</comment><comment><USER9> What are these things exactly (this and Venezuela's "petro")?

Tokens on the eth blockchain? Something else?

<comment><USER10> I'm pretty sure the Petro was just a centralized database that the Maduro administration controlled and called a blockchain. Not too dissimilar from their government..

</comment></comment><comment><USER3> If there are zero trust atomic swaps to some more broadly used currency, and this one has privacy-protecting features, it would actually have a chance.

<comment><USER11> Sorry, but this is an absolute non-starter, it has _zero_ chance. Nobody trusts Iran on anything "atomic" anymore, and even zero-trust isn't enough - we've been deep in negative territory for quite some time. This is just too radioactive.

</comment></comment><comment><USER12> I am a sanctions guy at a local financial institution. I only speak for myself.

I read through this and lack of any detail is telling ( not unlike with EU SPV and Venezuela's own crypto attempt ). Personally, I think that crypto will face the same fate as potcoin, but even when we assume it works, it will work well locally.

If there is one thing we learned by now, it is that the whole point of sanctions like these is to limit sanctioned country's access to the international markets. Few exchanges will touch it and if they do, they will likely be sanctioned.

So there is that, useful article to add to my linkedin feed.. but that is it..

edit: added missing 'they'

<comment><USER13> if you're an authority on the matter and consider the news pure noise, why share it anywhere?

<comment><USER14> Identifying noise is a valuable service for interested parties.

</comment></comment></comment><comment><USER15> For a sanctioned country to create its own crypto currency makes little sense. The west will just ban any use of that currency and they will be in the same boat as before except now they will have a bunch of useless digital tokens. If they want to be able to move money and the potential to purchase goods and services with it, they should use an existing, established crypto.

Using something such as Monero/Zcash (pick your flavor of the month) makes far more sense as there is already a widespread supply allowing them to optimally 'wash' their funds. They will likely not be able to convert their crypto currencies into dollars and use those dollars in any meaningful way but they could use the crypto currency to purchase needed goods and services and allow the vendors to worry about fiat conversion.

Creating an Iranian cryptocurrency for use anywhere outside of Iran is doa. I don't really understand the point of using it inside Iran either as they have fiat for that.

<comment><USER16> > For a sanctioned country to create its own crypto currency makes little > sense. The west will just ban any use of that currency

Crypto advocates often make a big deal out of the idea that states cannot in practice effectively prevent or regulate use of crypto currency.

<comment><USER17> This. You can't prevent the use of crypto because you can't attack any single point of failure.

<comment><USER15> I see the scenario playing out like this. Majority of nations declare the new Iranian crypto illegal, thus anyone mining it is guilty of sanction violations. They then crack down on all people mining it. They should be able to locate the majority of those computers relatively quickly. Most countries would quickly follow suit as they don't want the US to accuse them of sanction violations. Then the only people mining and maintaining the block chain reside in Iran. The new crypto currency is effectively dead at that point.

</comment></comment></comment></comment><comment><USER7> Honestly, Iranian banks have a better chance of wiring money abroad if they use Monero, but obviously it's not a solution the government will accept, because well, no control.

If they decide to fork any existing cryptocurrency or create some kind of token, it's likely to be banned on exchanges. I don't see how they could pull this off.

<comment><USER18> The big problem for any existing system is volume: Iran has enough money that they'd dominate the real currency exchanges and once that happens the risks go up for everyone involved. Even the most ideologically committed cryptocurrency proponents are going to think twice about going to jail on behalf of a foreign power without compensation.

<comment><USER19> A measured approach would allow for this growth in a way that doesn't spook the non-sanctioned markets.

Monero used to traded for around 45 cents ($0.45) for about 2 years, it trades for $45 right now, your argument would have worked A LOT better then. Why is Monero $45 right now? For the obligatory devil's advocate response who will you blame: dark net markets, sanctioned countries, better user experience? All we have are correlations and these networks are working as intended, and have gotten a lot more hardened and resilient. So let it trade for $4,500 just because Iran has some money to move.

<comment><USER18> The question is how much real money is entering or leaving the system, since that's what would matter here — if someone is trying to launder $1B it's probably going to be a big problem if the system is only exchanging $1M/day into stable currencies and the rest of the volume is speculation. Similarly, since there isn't much base demand there simply might not be a sufficient volume of buyers on the other side of those transactions.

Then you get to the bigger problem: being involved in these activities has significant risks in any country which follows the sanctions. The authorities are going to want you to prove that you aren't involved in the illegal activity if you don't want to be charged with money laundering.

<comment><USER19> > The authorities are going to want you to prove that you aren't involved in > the illegal activity if you don't want to be charged with money laundering.

The onus is on the government to determine an illicit origin for their charge of money laundering to stick. This is related to the US federal crime of Money Laundering, and not any other variation.

In the Monero system, receivers do not know the address of the sender. So, that's convenient.

<comment><USER18> US requires currency exchanges to make a strong identification for the customer in every transaction. Using Monero does not remove that requirement any more than using a suitcase of cash which just happened to show up in your office would.

That alone would be a federal crime and it almost certainly would be enough to get search warrants, etc. which would likely turn up evidence for other charges for anyone who is running an exchange while badly misinformed about the law. Anyone trying to be legit is going to steer clear of those hypothetical Iranian transactions, especially since the odds of being compromised in some other way are high even in the unlikely case that Monero can withstand a nation-state level adversary. For any significant volume – such as what we're talking about – traffic analysis is going to get a lot of info and since it involves Iran you'd be betting that none of numerous highly- capable intelligence agencies have compromised another party who has a trace pointing at you.

<comment><USER19> Yes but this would be a DIFFERENT crime which I made it extremely clear we aren't talking about

Nation states aside, the point you seem to be missing is that many people people are able to acquire goods and services directly with Monero without using an exchange. Merchants are not subject to the regulations that national currency exchanges are subject to and there is no framework to create this kind of prohibition right now.

<comment><USER18> > Nation states aside, the point you seem to be missing is that many people > people are able to acquire goods and services directly with Monero

Which is true for sufficiently small definitions of "many" but not what this thread was about. If you're going to handwave about how being charged under financial reporting rules designed to prevent money laundering is a completely different crime then you have to acknowledge that there are reasons why a system which is adequate for a few people making occasional purchases will have big problems scaling up to the level of a nation laundering money to get around sanctions.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> Link to original article:

[https://www.aljazeera.com/news/2019/01/iran-inches-closer- un...](https://www.aljazeera.com/news/2019/01/iran-inches-closer-unveiling- state-backed-cryptocurrency-190127060320571.html)

</comment><comment><USER21> The US response should be interesting. Not sure how they could/would technically enforce sanctions.

Edit: Yes, I understand the banking tie in. I was thinking more of mining, and trading other cryptocurrency (monero maybe) for "bit-rials".

<comment><USER18> They'll use the same techniques they are now: monitoring and blocking cash flows, getting partners not to use it, etc. This is the same way that drug dealers get caught even if they try using a variety of currencies, collectibles, real estate, etc. — at some point you need real currency to spend and the in/out-flows are monitored.

All a cryptocurrency adds is a public record making that task easier and the hokum used to sell it may make the NSA's job easier if people believe it's anonymous. Setting up a separate one also means there's less benign traffic to hide behind.

<comment><USER22> Not all cryptocurrencies add public record. Examples: ZCash, Grin.

</comment></comment></comment><comment><USER23> The Iranian government routinely makes grand announcements about new technology developments, but seldom actually gets much deployed. This is probably more of the same propaganda.

</comment><comment><USER24> Despite what the US government might think, the fact that such an article exists (reliably sourced or not) is absolutely a validation of the technology behind cryptocurrency.

</comment><comment><USER25> Seems like going with an existing established crypto currency would would make converting into any other currency much easier and much more difficult to regulate.</comment>


All about Direct Listings - <AUTHOR> https://a16z.com/2019/07/02/direct-listings/ <comment><USER2> I think this is a fantastic trend for capital markets. Hopefully as cost and complexity of these issuances comes down it will make the public markets somewhat more accessible as well.

</comment><comment><USER3> was surprised to see no mention of iHeartMedia (maybe news was too recent) which has an imminent Nasdaq direct listing on July 18th. Should be an interesting twist after Slack and Spotify given the stark difference in business types and growth numbers.

<comment><USER4> This is a little different because it's really Clear Channel, a 47-year-old radio company.

</comment></comment><comment><USER5> I've always wondered what a minimum viable public company would look like. If the books were open enough, could your shares trade OTC on day one? They talk about onerous reporting requirements.

</comment><comment><USER6> Somehow cutting out the middle man in this case has unexpected side effects. Article does not talk about the service and technical insurance an underwriter brings</comment>


I'm a millionaire who creates zero jobs. Why do I pay less tax than you? - <AUTHOR> https://www.theguardian.com/commentisfree/2018/apr/17/millionaire-zero-jobs-taxes <comment><USER2> I mean, there's several answers to this.

The most fundamental one is this: capital is mobile, people are not.

If you increase taxes on capital, it will flow to a lower-tax jurisdiction relatively quickly. A decent legal system and financial infrastructure is necessary, but the hurdles aren't as great.

But if you increase taxes on salaries, people will be hesistant to leave for personal reasons (e.g. friends, family), cultural reasons, security reasons etc.

As such, tax competition between jurisdictions on capital is much more fierce than it is on labour. This is typically why you see lower taxes on capital.

The other reason is that labour tends to be viewed by part of the voter base as a normal tax, and capital as a double tax. i.e., if you earn $100k a year and save much of it after taxes, you now have capital to invest. And getting that capital taxed again is sometimes viewed as even less popular, a sort of tax ontop of tax, particularly as these wealthy people are more mobile and can more easily choose a lower tax jurisdiction.

As for the notion that his capital doesn't create jobs, I don't know if that is true. Fact is that if people like him withdrew their capital from the market, rather than invest it, you'd see many financially-constricted companies that would bin their expansion plans, cancel their investments in R&D, withdraw from new products and markets etc, and on the whole, generate far fewer jobs. It's essentially what the credit crisis looked like. The notion investments like his aren't creating jobs seems erroneous.

That doesn't mean I'm a fan of low capital taxes, by the way. But tax reform is incredibly complex because it requires essentially all countries around the world to work together, to give up some control over an important component of sovereignty (taxation), to restrict tax competition somewhat. There's been a lot of decent work in that regard already by the way in the past few years, with the worst aggressive tax planning and tax havens being dealt with (e.g. BEPS), which allows countries to implement more sensible taxes on capital without worry of their tax base shifting abroad.

<comment><USER3> You have to invest that money somewhere and the place with the best infrastructure to get what you need built matters more than the taxes you may pay on the profit.

<comment><USER4> While your logic seems sound, I feel like the last 10-20 years have involved simply not investing it.

I have no particular explanation nor suggestion based off of that, but I know I've read a lot of articles about companies simply sitting in large bankrolls.

</comment></comment></comment><comment><USER5> In 2010 in Denmark there was an initiative done for people wanting to pay more in taxes - people who claimed in the public debate, that they really wanted to pay more.

The tax department opened up a bank account, that people could pay in extra taxes for, if they wanted. If you felt like you should pay more, you could.

Two years later, the initiative was shut down - having accumulated about 15000USD (fifteen THOUSAND) - in a country with 5.5M inhabitants.

A lot of people want OTHERS to pay more in taxes and some people SAY they should pay more in taxes to score some cheap karma-points. Almost nobody ACTUALLY want to pay more in taxes.

<comment><USER6> I don't believe I am able to pay enough to make a difference.

I believe that if all people of my income paid more, we could make a difference.

I support all people of my income, including me, paying more taxes and opposed me alone paying more taxes.

The evidence you've provided does not provide significant support to your conclusion.

Here's what WOULD support your conclusion: If given the choice between someone who would increase taxes for people of my income or keeping them the same/lower (ceteris paribus), I voted for the latter. If I'm voting for the former, that straight up contradicts your position.

Guess how I vote. Guess how the author votes.

<comment><USER7> I think your point support theirs, actually.

You don't want to pay more in taxes -- you don't believe it would make a difference, despite knowing how numbers work, and knowing that it literally would. I suspect you mean that the marginal difference for the government doesn't justify the loss for you.

That's fair, but it's exactly GP's point: you don't want to pay more taxes, because you don't care when there's no reward for you personally; instead, you want millions of people to pay more taxes for your benefit.

<comment><USER8> If I alone pay more taxes, I do not see enough benefit to justify the cost.

If all people pay more taxes, a large majority of us will see a net benefit that outweighs our own cost.

I support raising taxes for everyone, including myself. This should not be a difficult concept to understand.

<comment><USER9> It's actually very difficult to understand because it seems nonsensical on the face of it. If people paying more taxes is a net good, then certainly any amount of additional taxes collected would be a net good.

Are you suggesting that there's a magic threshold that needs to be crossed where individual contributions amount to more than the sum of their parts? If so, what is it, and why does it exist? And why does that threshold always seem to be conveniently too high for people who claim they want to contribute more?

<comment><USER10> Since we're on HN, I'll give you an example of a pretty successful startup built on those "magic thresholds": Kickstarter.

Yes, of course having more money scales the ROI superlinearly. Lots of projects can't be done at all without a minimum investment. Others just have economies of scale (e.g. dilution of fixed overhead).

And considering that the government usually does stuff on very large scales, it's not strange that a single taxpayer's contribution is too small to be meaningful. Just creating a government program probably takes more than what I pay yearly.

<comment><USER11> The government is not in the position of a "kickstarter". It has tons of revenue already, so your point doesn't make sense.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> > Take it from me: I am an investor. I have not actually worked in years. I > let my money make me money. Over the past year, do you know how many jobs > I've created? Zero. The only thing that does create jobs is consumer demand > for products and services that people can make and provide, not my > investment dollars.

Investing does great jobs because businesses need capital to grow, and growth leads to more employment. Not employing people directly does not mean the money didn't lead to some job creation. It's just harder to quantify.

</comment><comment><USER13> > The only thing that does create jobs is consumer demand for products and > services that people can make and provide, not my investment dollars.

And what is being "demanded"? Products and services that are the result of investments made earlier in time. Consumer demand is the inherent PAYOFF of successful investment. Consumers demand more, faster, cheaper, better. None of that comes without investment first.

This guy sees investment as leeching off the productive economy. Probably because he has only ever been on the "money-shuffling" side of things, rather than standing in the shoes of a business owner who needs to raise capital to create something new.

That capital comes from either loans or equity, both of which require 1) substantial sums of latent savings in the economy, and 2) money-shufflers to find allocation opportunities (capital does not yet, alas, allocate itself).

Investment is the LAST thing we should tax. Consumption (especially of positional and rivalrous goods) is the first.

<comment><USER14> That's one way of looking at it. Here's another way.

Consumption is what drives the economy, not investment. You can invest all you want in a giant rubber duck factory, if nobody wants to buy giant rubber ducks your investment will be worthless. Investors either gamble where demand will occur or create it artificially through marketing, but in neither of those circumstances is consumption the direct result of investment.

The last thing you should tax is consumption, since it is the fuel for all other economic activity. Less consumption, less everything else. Also, taxing consumption tends to be a regressive tax policy in practice, which leads to economic inequality and reduced quality of life.

IMHO what should be taxed is income in all forms, whether out of labor or out of investment, since that's the most fair. Consumption should not be taxed. Additionally tax rates should be progressive since there are many engines of inequality in the economy and we need a bit of counterbalance to that.

<comment><USER15> > Consumption is what drives the economy, not investment.

That's true, but it's missing the point. Investment allows people to fund projects that drive up consumption. It may not be "as important" as labor, but it still helps the economy. If the capital gains tax is too high, rent seekers will just find a safer alternative to way to park their money that is even less economically productive, like renting out real estate.

<comment><USER14> I'm not convinced investment ever drives up consumption, except for the investment in marketing. I see investment tailing consumption mostly, with investors preferring safe bets on goods and services that already have a market. Anyway, it's just two ways of looking at the same economic relationship. In practice it's more a sort of ouroboros.

I've also never been convinced by the "big money will flee if we tax it more" argument. Nobody has ever tried leaving no ground to flee to by leveling the taxation system so there's no loopholes. The only way to flee would be to leave the country entirely, but as long as it remains profitable to stay (taxes do not exceed profits) it would be foolish to do so.

</comment></comment></comment></comment><comment><USER16> Dear Mr. Millionaire,

As someone with a significant amount of wealth, you have the option to spend it entirely on yourself. For example, you could have consumed all of it already, enjoying non-stop parties, expensive toys, buying the temporary, albeit intense, adoration of an entourage etc. Thank you for not doing those things.

Instead, you have invested this capital. You have put it into a variety of investments, each with their own risk-reward profile. I am hopeful that as you grow wealthier, you will become more charitable, both by donating more wealth to help others, and also by accepting a lower rate of private return (or higher private risk) for investments that have a bigger social return (e.g. biotech investments, space exploration, etc). Even there, I hope you exercise some prudence and a portfolio approach, since it doesn't help anyone ex post if you lose all your money developing an invention that doesn't work.

In the meantime, we (society) are grateful for your concern, but would probably rather that you did not dump more money into our tax coffers. If you want to give money to the people, give money to the people, Give Directly style.

And if you still feel that the government is necessary to solve some of the problems that are bothering you, spend it instead to incentivize better government, or to design and build a government that allocates each tax dollar more efficiently as the years go by.

Thank you.

<comment><USER17> Both parties and failed research result in jobs and markups going to externalities, bar tenders, servers (people), researchers, fabrication materials, whiskey distillers, etc.

</comment></comment><comment><USER18> The central premise of the article, that preferencing capital gains doesn't create jobs, is hotly debated. Even some pretty liberal economists agree that capital gains should be taxed lower than ordinary income: [https://slate.com/business/2012/09/mitt-romney-s- effective-t...](https://slate.com/business/2012/09/mitt-romney-s-effective- tax-rate-is-very-low-most-economists-think-it-should-be.html)

Lower capital gains rates are also not an American invention. It's a feature of almost every Western European tax code. Sweden's capital gains tax rate is half of the top ordinary income rate.

<comment><USER17> The tax code could have been rewritten last year to eliminate the corporate income tax, but require full income taxes on capital gains (potentially with some discounts or taxes on long term / short term)

Corporate taxes + lower capital gains taxes are double taxation on the same earnings; but also serve to very much politically obfuscate who pays the taxes, consumers, businesses, or the profiteers - which, while fungible - could drastically simplify the tax code.

</comment></comment><comment><USER19> The problem is that every normal person is just a temporarily embarrassed millionaire, so they don't want to raise taxes on themselves in the future. This is not more evident elsewhere than here on HN, where everyone is a possible startup billionaire.

<comment><USER20> I'm sick and tired of hearing this refrain. It assumes people have no internal values and just vote for things based on how it will personally benefit them, which is not true.

People can and _do_ vote for things that give no benefits to them if it aligns with their concept of fairness. In this case, if you believe a person deserves to keep as much of their income as possible, you will vote for lower taxes, because it _feels right_.

</comment></comment><comment><USER21> The author almost certainly pays way more tax than I do. He probably pays a much lower tax rate (I'll assume 20% long-term capital gains), but because he's a millionaire and I'm a middle-class wage-earner, his 20% is vastly more than my 40%. And while he may not create jobs directly, he almost certainly spends a lot more than I do, and is thus responsible for indirectly creating far more jobs than I, and that's without even accounting for the jobs created indirectly by his investments.

<comment><USER22> > ... the jobs created indirectly by his investments.

but i think this is one of the key issues of the article. the author claims that investment does not create jobs.

also, in absolute dollar terms the author may spend more than you, but in percentage-of-income terms he's spending less. and I think maybe that percentage difference is another key point the author makes, given how much wealth is tied up in the hands of the rich.

I mean, I think the author believes that wealthy people pouring almost all of their money into various investments -- as opposed to middle class and poor people spending all or almost all of their money on goods and services -- is not a very strong way to create domestic jobs.

IMHO, this is not a complete accounting of the situation. I mean, US people are spending -- we're spending big time. but where are all the jobs? the US has this giant trade deficit. a helluva a lot of jobs are in overseas manufacturing. so, we can force billionaires to spend all of their income every year on goods and services -- but how many domestic jobs is that going to create if what they buy is expensive Euromade yachts and New Zealand real estate?

it's almost like we need more than just tax policy, it's like we need some kind of domestic _industrial_ policy

</comment></comment><comment><USER23> I think there is a role for government, but the last thing I want is to give the federal government more money. They have enough in tax receipts to take care of infrastructure, feeding people, providing health care to those who can't afford it etc.

Why would anyone suggest giving the federal government _more_ money? The states in general do more in general to actually help everyday Americans.

<comment><USER22> > Why would anyone suggest giving the federal government more money?

so government can directly employ people who don't currently have jobs. this will create a money multiplier effect as those workers go out and spend their new paychecks, which puts more cash in the hands of other workers in the economy, who then spend some of it, and so on and so on. in this way, GDP grows.

that's an answer. i'm not sure it's a great answer, but it's an answer i've heard an awful lot.

another answer is so the federal government can build large infrastructure projects (like an interstate highway system or Hoover dam), the theory being that this will pay off richly for society and the economy later on.

<comment><USER23> Again, the government has more than enough money to invest in infrastructure. How much money does the federal government spend on the military that doesn't go into helping the people who actually serve/have served and lines the pocket of the private military industrial complex? How much is it spending on being "tough on crime" and the "war on drugs"?

Why shouldn't we make it easier for private industry to compete -for instance by not making the US the only industrialized country where your insurance is tied to your company?

Why not increase the earned income tax credit and make it easier to be distributed during the year. That would encourage work and it was something that was historically supported by both Republican and Democratic administrations.

The way things are going lately, I have a lot more trust in private industry than the federal government.

</comment></comment></comment><comment><USER24> The idea the governments spend money productively is mind bending and against everything I see every day in the United States. Go figure, maybe it's different in Europe, but I can't imagine that people who can't make it in the private sector—and that's really all government is, people who otherwise can't make it in a competitive market environment—would somehow be efficient and productive in the public sector.

[http://historymatters.gmu.edu/d/5030/](http://historymatters.gmu.edu/d/5030/)

Personally I'd rather the rich hoard wealth than pay taxes and thereby justify the idea that planned command economies lead to anything good.

<comment><USER25> I think peter thiel tends to see this in quite an open minded way. It might have worked before but it really doesnt work well Now. ([https://youtu.be/FDkhfm6CYjE](https://youtu.be/FDkhfm6CYjE))

<comment><USER24> See what? (Thanks for the link)

</comment></comment></comment><comment><USER26> If this millionaire is not creating jobs, are they not free to pay more taxes than the government sets as minimum to pay?

Go ahead, donate it, make it more useful. Don't let the minimum stop you. I suppose they prefer the government decide where it should be spent. Why not donate to the gov program they prefer themselves? Or Donate to the efficient programs, or donate to the one with ornery staff, if you like. No one will stop them.

<comment><USER27> This particular straw man argument comes up every time taxes are discussed.

Obviously the marginal effect of one person paying more in taxes is close to zero. There's no hypocrisy in advocating the group pay more collectively without unilaterally taking it upon oneself first.

<comment><USER28> There absolutely is. The individual is not advocating that the group pay more collectively. He is advocating that others be forced to pay more.

There is a clear distinction.

If this individual was advocating for people in his position to pay more, he could simply start a campaign for like-minded millionaires to pay more, and perhaps build some infrastructure to support this voluntary donation to the government.

<comment><USER29> > build some infrastructure to support this voluntary donation to the > government.

He is not asking for infrastructure to support voluntary donation tobthe government. That would be stupid and ineffective. He is asking for the government to change its tax structure to tax people like him more.

<comment><USER28> I'm glad you can tell that's not what he's asking for. I agree with you - he's not asking for that.

How do you know if it would be stupid and ineffective? Perhaps he's representative of rich people who want to pay more tax.

<comment><USER29> > How do you know if it would be stupid and ineffective?

Because you can already pay more taxes than required in many places, and (almost) nobody does so.

> Perhaps he's representative of rich people who want to pay more tax.

He is representative — he doesn't pay more than is required. He is proposing that the government require people like him to pay more taxes, which would mean that low income people pay less.

<comment><USER28> > Because you can already pay more taxes than required, and nobody does so.

There are lots of things people can do but don't until a social movement encourages them to do so. Charities for example don't receive donations until someone makes a case for why they should.

Also, I'm not sure why you think that raising taxes on one group automatically results in other groups being taxed less. That isn't typically how it works.

<comment><USER29> > Also, I'm not sure why you think that raising taxes on one group > automatically results in other groups being taxed less. That isn't typically > how it works.

That is exactly how it works. The state has the same expenses and must fund them somehow. Reducing taxes for one group doesn't magically make those expenses go away. When one group pays less, other groups pay more. Similarly, when one group pays more, others pay less. The state doesn't magically have more expenses.

<comment><USER28> Nope. I recommend you spend some time researching this. Tax has never worked the way you describe.

When states take in more tax than their expenses, they run a surplus. When they take in less, they run a deficit. Usually when they run a surplus, they find ways to spend it after not too long.

Raising taxes on any particular group or activity has no direct effect on the other tax rates.

<comment><USER29> > When states take in more tax than their expenses, they run a surplus. When > they take in less, they run a deficit. Usually when they run a surplus, they > find ways to spend it after not too long.

Those ways to spend it typically help the poor, so taxing the rich more helps the poor. The money doesn't magically disappear.

<comment><USER28> So you agree that what you said before about how taxes work was just plain wrong.

<comment><USER29> It was absolutely correct. The state can increase its expenses, but it doesn't happen automatically when the tax code changes. The main point is that when one group pays more, other groups benefit more.

<comment><USER28> You said this:

"Similarly, when one group pays more, others pay less. The state doesn't magically have more expenses."

And that is absolutely false.

Also, there is certainly no relationship between raising taxes and the poor benefiting. The money can be wasted or spent on the military, etc.

<comment><USER29> What I said is absolutely correct. When the money is wasted on the military, the poor still benefit more than if the money hadn't been taken from the rich and spent on the military.

You are also still confusing taxes with spending.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER30> The central point is that investment income is treated differently tax-wise than working-at-a-job income. If you have a large enough kitty you can live off investment income.

I wonder how a higher tax rate for investment income would change the pools of money available to startups? Would more of it flow to other asset classes, like tax-free but lower returning municipal bonds? Would it make no difference?

</comment><comment><USER31> _Right now, millionaires and billionaires are building luxury bomb shelters and private islands, high end sanctuaries for the end of days._

Ouch.

<comment><USER22> I'm not a millionaire or pro-millionaire, but, um, building luxury bomb shelters is, technically, one way of creating jobs.

</comment></comment><comment><USER32> "…not only is the corporate tax rate on overseas profits just half the normal rate (10.5% versus 21%)"

Never mind that the US is one of what two? countries that tries to tax their companies sales (and citizen income) based on activity abroad?

Say what you will about more progressive income tax policy, capital gains, or tech companies dodging due to the nature of software, but the US has had the highest effective corporate tax rates in the world and was definitely driving offshoring.

A corporate tax rate of 0% is very much an increasingly non-fringe goal as opposed to raising revenue through other means. It's a testament to the US laws and business health it has as many companies remaining despite the tax disadvantage.

</comment><comment><USER33> What's with the old articles?

<comment><USER34> Ordinarily, reposts of older articles are pretty welcome, but this one would have been marginal (for HN) even on the day it first ran.

</comment></comment><comment><USER35> This article is mostly correct as applied to _service_ based businesses. The "old men" in U.S. power today made their money building tangible things, so those are the jobs they understand and want to bring back through tariffs.

Companies outsourcing IT functions just happen to be outside the purview of taxes and tariffs. But that's no guarantee long-term.

</comment><comment><USER36> I'm not really sure why job creation is the appropriate moral metric. At the end of the day people who get wealthy generally are 'leveraging' (to be polite) the work of others. i.e. They are taking the profit from the work of others. If you can do something which is directly wealth creating without employing anyone then arguably you are more entitled to the money you earn. Ceteris paribus.

Not an argument that can be settled here, but the moral argument for job creators has to be that it is not a near zero sum game (i.e. it is not the case that if you don't create jobs then someone else will) and that they are systemically important. That is if we remove (magically/without shock) some of the current crop of job creators we would end up with an economic depression and as such they are an important societal good.

</comment><comment><USER37> What are some arguments against chaneling all forms of taxes into sales tax? To me that seems the simplest way to ensure everyone is contributing, regardles of how or where the money is made.

<comment><USER38> The primary argument against consumption taxes is that they're regressive on a percentage-of-income basis, as your spending as a percentage of total income tends to drop as your income increases (it's worth noting, though, that payroll taxes are already functionally regressive, as the percentage of income from non-payroll sources rises with total income). The other is that you generally tax things you want to disincentivize, and since aggregate demand is the primary driver of economic growth, you want to be careful to not dent it too badly. You could make it progressive by refunding a baseline amount annually, but people have to effectively carry the outlay until tax time.

The primary argument for them is that the wealthy have a higher marginal propensity to consume, so it acts as a functional wealth tax, and can't be easily evaded through income restructuring. It would be strictly progressive on an absolute basis, and may marginally incentivize investment over consumption.</comment></comment>


Show HN: Build modern apis with Python3, Docker, and Django 2.0 - <AUTHOR> https://github.com/agconti/cookiecutter-django-rest <comment><AUTHOR> Hey ya'll,

I'm the creator of cookiecutter-django-rest. I'm super happy to share this release with you. This is a big one.

What api frameworks do you use?

What kind of enhancements are you looking for?

<comment><USER2> Cool! I like to see the cookie-cutter stuff. I used pydanny's cookie-cutter back in the day.

However, as I've become more comfortable in the Django and python ecosystem, I have been cutting closer and closer to the stock install.

I think the cookie-cutter stuff is great for when you have a highly- opinionated way to do things (specific test frameworks, databases, patterns, etc).

Some feedback:

Authentication:

I looked at your way of authentication, and I kindly ask you take a look at djoser [1]. They have a nice authentication system for DRF with a password reset flow.

Or also maybe an integration with Auth0?

Storage:

If you replace boto3 with Apache's libcloud [2], then you make this project a little more platform agnostic. I say this as someone who works across multiple platforms. I see that django-storages even plays nicely with it also [3].

And to be honest I'm not so thrilled with Heroku as the deployment target. Maybe just beef up the README with instructions on getting started just on my laptop with pip, cookie-cutter, and docker-compose?

All in all, nice job. I'll add my star to your project and consider it next time the use case arises.

[1] - [https://github.com/sunscrapers/djoser](https://github.com/sunscrapers/djoser)

[2] - [https://libcloud.apache.org/](https://libcloud.apache.org/)

[3] - [https://django- storages.readthedocs.io/en/latest/backends/ap...](https://django- storages.readthedocs.io/en/latest/backends/apache_libcloud.html)

<comment><AUTHOR> Hey sheraz — thanks for the feedback!

Your recommendations look great, especially libclould.

What do you think can be beefed up in getting started docs? Getting setup on your laptop should be as simple as cookiecutting your app and running `docker- compose up`. Is there something missing that you'd like to see documentation about?

I agree with feedback about Heroku. Professionally, I use Kubernetes and I'm looking forward to when amazon's managed kubernetes service is out of developer preview so this project can use it. I've kept with Heroku because its such a nice platform to get an app started on. It allows you to rapidly develop your app from 0 to 1 without being over encumbered by infrastructure concerns before you need to be. I've also kept it in because the integration is just pushing to a docker repository. Just changing the repository destination gives you continuous deployment to anywhere. I like that its flexible and doesn't lock you into a vendor.

Would you rather have continuous deployment to Heroku removed then included?

<comment><USER2> Glad to help!

Regarding the getting started, probably just a a section on the steps to install cookie cutter, then the sample shell commands to bring it up with docker.

And I agree with heroku offering a good value to get started. However, do you think your audience is at that level? Furthermore what happens to my app if/when I graduate to my own server at digital ocean or kube cluster?

Which brings me to another question: who do you think this is for? Beginners or maybe more advanced devs who are needing to prototype ideas or have a greenfield project in front of them?

Myself, I am a capable dev with existing infrastructure at hand (laptop and docker swarm clusters on azure, for example).

Maybe rather than seeing a CI pipeline to heroku you could offer alternatives to push work from local docker to a kube cluster or swarm? I do that with all my projects through bitbucket pipelines CI.</comment></comment></comment></comment>


Academic transitions are one-way only: Reflecting on my first Reddit AMA - <AUTHOR> http://johnhammersley.com/?p=381 <comment><USER2> I agree with his advice, and it feels like I'm giving that advice on a weekly basis to first and second year PhD students that think they can go to industry for 3-5 years and then get a professorship. Some students have told me it works that way in China, but it definitely isn't true in the United States. Unless you can publish prolifically at your company (Microsoft Research, FAIR, Google Research, etc.) or work at a government laboratory, your CV will quickly lose its competitive edge after you leave the university.

As an aside, just managing to be competitive for professorships after one's PhD or postdoc is an enormous challenge due to the scarcity of positions and the qualifications of competitors. Based on some limited analysis I did previously, the number of publications required to get an interview is often in the range of 10-30 [1,2].

[1] [http://www.chriskanan.com/statistics-on-ucsds-computer- scien...](http://www.chriskanan.com/statistics-on-ucsds-computer-science- faculty-candidates/)

[2] [http://www.chriskanan.com/planning-for-life-after-your- phd/](http://www.chriskanan.com/planning-for-life-after-your-phd/)

<comment><USER3> That's 1000% correct. As someone who came from industry (Google) back to academia 3 years ago, and who has been involved in faculty hiring for the past 2 years, the odds are totally against traditional industry applicants unless they've been in a publication-oriented lab such as MSR for computer science (or unless they've won some really notable international award).

[Edit: also, the longer it's been since your Ph.D., the higher the bar implicitly is for you. so if you haven't published much since finishing your Ph.D., with each year you wait, there will be a new crop of fresh Ph.D. graduates who look more competitive on the market.]

<comment><USER4> Why does the World need to be like this?

That edit there is soul destroying stuff.

</comment></comment></comment><comment><USER5> caveat: it's hard to get back into academia _and get paid_. if you are sufficiently motivated you can join a research group gratis and just pitch in and do research - most PIs i've met don't mind other people generating results for them. it really is a gig though, maybe something you do when you don't need cash.

<comment><USER3> That sounds good in theory but is unlikely to yield satisfactory results since you're not on their _critical path_. PIs are busy people; they will turn most of their attention on grant-funded critical-path projects. It's a similar instance of this problem: [http://pgbovine.net/fellowship- warnings.htm](http://pgbovine.net/fellowship-warnings.htm)

</comment></comment><comment><USER6> Suppose you go to industry with a Masters rather than a PhD, and then come back to get a PhD. Will you be on an even footing with other new PhDs for an academic career, or will that break after your Masters cause problems?

<comment><AUTHOR> The problem some friends (who did this) found with this route is that by the time you've finished your PhD after working in industry, you have other commitments (usually family), which makes the relocation & relatively low pay of post-doc positions difficult to cope with. It's not impossible to continue in academia this way, but it is harder than when going straight to PhD from masters, and my friends who went this route ended up back in industry after their PhDs.

</comment></comment><comment><USER7> Would this also be true for a Master's program?Would it be harder to get back to academia after having spent 4 years in the industry which was more product oriented than research oriented?

<comment><USER2> If your question is, "can I get into a PhD program after I do my MS and then work in industry a few years?" Then the answer is that's fine. But pay will be really low. We are talking about going from $90k+ in computer science to $20-30k for 4-7 years. For many people a MS doesn't help them graduate with their PhD faster for a variety of reasons (this was the situation I was in).</comment></comment>


Rooted Nook Touch Fast Refresh Playing Video - <AUTHOR> http://youtu.be/R92qSBU_WzA

<comment><USER2> "The 'video' actually is an animated gif because the NST can't decode video files."</comment>


The endless loop of terror victims: Lazy journalism lets ISIS run the newsroom - <AUTHOR> http://www.poynter.org/2017/the-endless-loop-of-terror-victims-lazy-journalism-that-lets-isis-run-the-newsroom/461020/ <comment><USER2> Discussion of a similar article is over here:

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

 _That article is not the same_ \- but it has a similar message.

<comment><AUTHOR> Ah I hadn't seen that one. Yours seems to be flagged now though, not sure why.</comment></comment>


RFC Reader - <AUTHOR> http://www.rfcreader.com/ <comment><USER2> Something's weird about the links. I can't middle-click them to open in a new window.

Edit: In fact, there's a lot about this site that seems to use JS to replace basic functionality of the Web, incompletely, without providing the same UX.

I expected I'd be able to search through titles on the current page using ctrl+F, for example, but that doesn't work because of the "infinite scroll" thing it's trying to do. Why do that? Infinite scroll on top of pagination seems completely redundant, and the list of all RFC titles is a finite and relatively small chunk of data anyway.

<comment><USER3> Can you give an example? It all seems to work fantastically for me in Firefox 34.0.5 on Windows 7. I'm not usually a fan of single page applications, but after digging through this for a while, it seems _very_ nice.

<comment><USER4> > Can you give an example?

Get to any list of RFCs.

Right click, middle click, ctrl+click, or do anything other than left click on the "link" to the RFC you want to read. They are not real links. They can not be opened in new windows.

<comment><USER3> Oh, yep, you're right. I could have sworn I tried that, but apparently I did not.

</comment></comment></comment></comment><comment><USER5> It would be good to get somehow the latest RFC easily. When I search for SMTP I had to jump through several obsolete RFCs to find the latest one.

</comment><comment><USER6> It's a good idea with several issues so far.

\---

Sample: RFC 7381 - Enterprise IPv6 Deployment Guidelines

Searching 'ipv6', 'ipv6 enterprise' and 'enterprise ipv6' don't show the result. Searching the number does.

\---

I can't use page down/page up to navigate the results.

</comment><comment><USER7> This looks awesome. I've always wanted something like this.

</comment><comment><USER8> Very Cool! Serious question, I don't meant to sound rude, but what are the advantages of signing up?

<comment><USER9> Tags, Commenting, Bookmarking and Sharing menu items all require being signed in.

</comment></comment><comment><USER10> It doesn't seem to be up to date. For example, RFC 7230 (current version of HTTP/1.1) is missing from the index.

</comment><comment><USER11> qrfcview

<comment><USER12> <shameless plug> I made it look nicer on OSX a few years ago: [https://github.com/saghul/qrfcview-osx](https://github.com/saghul/qrfcview- osx)

Which reminds me I should bring it up to date... </plug></comment></comment>


I Miss Lisp - <AUTHOR> http://drupal.technicat.com/writing/lisp.html#It%27s+Really+Lisp <comment><USER2> From the late 80s through the early 2000s Lisp was my language of choice. The post author went through many of its advantages -- mostly true. I even went so far as to write an entire compiler and environment (a several man-year endeavor) to design two different runtime oriented dialects called GOOL and GOAL used in 8 Naughty Dog Crash Bandicoot and Jak & Daxter games. All 30-60 FPS action games -- 40 million copies sold. All written in Lisp! (more or less)

Eventually, it was Ruby that got me off Lisp. It does most of what made Lisp great, and the support factor is huge. There are clean standard libraries for everything, the garbage collector is good (the one in ACL is was so awful and dated -- I last used it in '07 -- you pretty much had to turn it off.

I miss the S expressions and the macros. But you can do most macro like things with a good block expression in Ruby, and you can even do auto-generated macro like functions with strings. It just isn't as elegant as Lisp.

The Ruby class system is a bit baroque, but it's actually better in many ways than CLOS, which suffers from being too dated. In Ruby you can do a lot of very cool things with extend and include. It's just a slightly different way of thinking.

The implementation isn't the fastest, but it's good. The Lisp implementations were all clunky and felt like 80s codebases. Oh wait, they are.

Support. The rate of change in Ruby is 1000x that of Lisp. Some new website has an API -- someone writes a Gem immediately. In Lisp you don't even have a really standard networking library!

<comment><USER3> The ironic thing is that you were doing it during the 90s, which is possibly the worst time to be a Lisp programmer ever and Lisp's "lost decade." Everything that came out of Symbolics got thrown away (RMS turned out to have been 100% right about that), no one was doing free software libraries except for Haible and Steingold (ok, huge exaggeration), and aside from CL-HTTP everyone completely dropped the ball on the whole web thing (AllegroServe only came out in 2000!).

What are you doing right now with Ruby? I remember a couple of years ago at a CRACL meeting the conversation turned to Naughty Dog, and someone (I think it was Chris Baker) was like "Oh yeah, Andy lives in LA. He's writing books now."

<comment><USER2> The only programming I'm doing at the exact moment are little hacking projects. But I did a whole bunch of backend "cloud" programming in 2006-2008, and I used Ruby for most of it. This included 90% of the backend for Flektor.com (now deceased -- but successful in that it was cool and we sold it to Fox) and all the backend stuff for Monkey Gods (monkeygods.com). At Flektor I actually started the backend in Lisp. At first ACL. Then they wanted thousands per server -- haha. Then we ported to CMUCL. But there were no libraries, and those we had were buggy. Even the MySql integration was buggy. The last thing you want is a flakey database library.

We switched to Ruby. Sure ActiveRecord was buggy too, but in a totally different way. The bugs didn't crash it, or put weird data into the tables -- they merely generated sloppy or incorrect queries (this was 2006). I could spot these and work around. And there were libraries for a LOT of stuff. Fixing bugs in the libraries was easy too.

Ruby also seems to have been designed as a practical language. There is a bit of distain in the Lisp world (or used to be) for I/O, as if it's dirty. Look at Scheme, it doesn't even have I/O in the spec (or didn't last time I looked). I/O is inherently a side effect, which to the functional thinker is BAD! Well I have news. Writing real programs is all about I/O.

</comment></comment></comment><comment><USER4> "I miss lisp" articles are almost as old as Lisp itself.

In fact, I miss the days when nostalgic pieces about Lisp where far more eloquent, and well argued. The pinnacle of Lisp yearning was reached when Dick Grabriel wrote A Critique of Common Lisp, and never since has anyone opined Lisp as rightly.

The decline of sentimental prose about Lisp is largely caused by the standardization of Common Lisp. Its specification at 1500 pages, people never had any time left to learn basic essay writing.

The Lisp community also shares the blame for this deterioration in the expression of melancholy. The comp.lang.lisp newsgroup and its brash, unwelcoming denizens haven't exactly helped people be more wistful for Lisp in their absence.

<comment><USER5> c.l.l. is the best newsgroup I've ever used.

<comment><USER3> _...and then some Norwegian guy would flame you so hard you would actually die!_

<comment><USER6> Only if you are stupid enough to flame him back.

And, sadly, he will not flame you anymore.

</comment></comment></comment></comment><comment><USER7> I couldn't find a date on this essay, but it must have been written around 10 years ago. The open source Common Lisp ecosystem, though still small, is much larger than it was then. (For instance, he doesn't mention SBCL or OpenMCL/Clozure CL in his list of open source implementations, and he claims there aren't any with multithreading, which hasn't been true for years.)

So if he still misses Lisp, he should come back. Common Lisp is still around, and in better shape than it was, and there's also Clojure.

<comment><USER3> Yes, I remember seeing this at least 6 years ago. People should really date their articles.

</comment></comment><comment><USER8> I think Clojure addresses much of the author's points. I have greatly enjoyed learning the "Lisp" way to solve problems, while still having the option to use Java's massive ecosystem.

It cannot, however, deal with the biggest (IMO) problem with Lisp: the fact that his list includes "Too Good" and "Too Smart" (and the elitist tone that accompanies them).

It is off-putting to try and read about this apparently amazing language, and have large portions of every (hyperbole) article saying effectively that if people were just { smarter || better || less sheep like } they would use Lisp. Luckily, the Clojure community appears to have avoided this attitude so far.

P.S. I mean no disrespect to the author, and I fully understand that language advocacy often takes a confrontational approach.

<comment><USER9> IMHO, the biggest reason why Lisp never won out over imperative programming languages is exactly this attitude. Advocates of imperative programming languages took critiques of those languages seriously, while Lisp advocates wouldn't.

Take the evolution of C, for example. First, you had ALGOL, but it had problems. So someone created CPL. But that had problems, so then we had BCPL. Then B. Then C. That's five separate languages! People on the imperative side of the language divide were willing to throw stuff out and start from scratch, over and over, until they got it right.

Lisp advocates were not.

Fortunately, the creation of Clojure suggests that a willingness to change is finally making its way into some areas of the greater Lisp community.

<comment><USER3> You seriously think that C is an improvement over Algol?

</comment></comment></comment><comment><USER10> I am not sure that Lisp not being mainstream is very much to do with Lisp at all, but much rather not being in the right place at the right time.

Would we really be having this conversation if Sun or Microsoft had promoted Lisp?

<comment><USER11> Yeah, if only Microsoft had promoted Lisp the way they had Xenix, or the Zune, then _everybody_ would be using Lisp! Or if Sun had picked up the cause, then Lisp would be used in all those set-top boxes the way Java is today. Oh, wait...

Microsoft actually did have a diversity approach for their language tools division in the 1980s -- ever heard of MuLISP? The problem was that Lisp on MS-DOS or Windows 3 was not really a good fit for most (any?) personal computer at that time. Certainly not when compared with the likes of Turbo Pascal, say.

It seems to me that programming languages get their moment in the sun if they offer some significant technical advantage for that particular time and market. Perl took off because it did seem better for some things at the time, for example, while the latest versions have seemed (to me, at least) as a desperate cry for attention when other dynamic languages have gotten most of the programmer love.

If there's anything the last dozen years of language adoption have shown us, it is that "promotion" is only part of the equation and it can manifest in either a top-down or bottom-up fashion. (See Python or Ruby for examples of the latter.)

<comment><USER12> Not trying to sound hostile here, but your comparisons seem a little disingenuous. You're equating Lisp with an ancient operating system and a music player? Lisp is a programming language. Microsoft has other products in the category of programming languages. The ones it has pushed — Visual Basic, C# and (to a lesser degree, since it's NIH) C++ — have all been tremendously successful. This is because Microsoft has a monopoly on Windows dev tools and APIs that it can exploit to get developers using things. This monopoly is less useful for pushing Zunes.

And to try and argue that Java is unsuccessful because it isn't used in set- top boxes? I don't even know what to say to that. The fact that Java's successes were in other domains than the one you hand-picked for your comparison does not somehow make them disappear. You may as well say that C was never very popular because no Ruby on Rails apps were ever written in it.

The fact is that Lisp has not had any major backers since the AI craze fizzled out. If a Lisp had received the same kind of support as Java, C#, Objective-C or JavaScript, the language landscape might very well look quite different.

<comment><USER11> Well, I'm willing to entertain data that contradicts my thesis, but I'm unconvinced by either attacking my motives or distorting what I wrote.

My point with the Microsoft language products of the 1980s was that they were willing to sell a variety of products if people were willing to buy them. They had Microsoft versions of Fortran, C, and Pascal as well. Xenix was their server solution back then, but that didn't really matter for that state of the market. The mention of the Zune was intended to highlight that the technical merits are dwarfed by right-place-and-time effects. I knew plenty of people who thought J++ was the wave of the future because, you know, that API lock-in is such a determinant for success.

As to Java, I never said that it was unsuccessful. But Sun kept trying to flog Java as an embedded systems solution and it was an exercise in futility, whether it was the original set-top boxes, JINI, or those incredibly useful Java personalization ID rings like the one I have somewhere in a desk drawer. Having a major player pitch still didn't make it popular in embedded markets.

Woulda-coulda-shoulda arguments about Lisp only lacking major backers are arguments based on a lack of data. If major backers are so key, then why were Python and Ruby so successful?

<comment><USER3> Jini is a set of distributed system building tools, it had nothing to do with embedded systems. For what it's worth the core ideas of Jini are actually really great and robust, the problem is that it's not J2EE. No one wants to rewrite their shit for Jini, they'd rather try to throw the mess at things like Terracotta or bigger servers (for what it's worth, I've never seen a Java application that wasn't a piece of shit, so I can't really blame anyone).

There was some research into applying the services model to mobile and wireless systems, which makes a lot of sense, but it was research as neither the market nor the underlying routing technology has yet to emerge.

Also, Java has been immensely successful in smart cards and cellphones. You are seriously wrong about Java not being used in embedded systems.

<comment><USER11> Jini has nothing to do with embedded systems? Really? Well, de facto, sure. But how did Sun originally pitch it? Let's do a little search and, oh, here's Bill Venners talking about the same topic in 2006: <[http://www.artima.com/weblogs/viewpost.jsp?thread=150666>...](http://www.artima.com/weblogs/viewpost.jsp?thread=150666>), the Summary starts with "Sun's original marketing message that positioned Jini as a technology for devices backfired in 1999..."

Perhaps we have different notions of embedded systems. I'm thinking of self- contained computers/microcontrollers that are part of a larger system/product with a significant incentive to keep hardware costs to a minimum. As in, use the cheapest processor and least amount of RAM as you can. Now that covers a large range, from 8-bit microcontrollers to high-end systems running real time OSs. The last time I was seriously following that field, however, the hands down favorite language was C. I would be greatly surprised if Java had even risen in usage to rival Forth in the embedded domain. If you have some contrasting data to provide, feel free.

I'll give you partial credit for thinking of J2ME in mobile phones. But there's still a significant difference between programming games in J2ME or Flash for a phone and using Jave to program the phones themselves (ie, the underlying embedded system). Why do you think Nokia's recommendation for application builds was either gcc or, for those building their own phone ROMs, the proprietary ARM compiler?

<comment><USER3> "Jini has nothing to do with embedded systems? Really? Well, de facto, sure. But how did Sun originally pitch it? Let's do a little search and, oh, here's Bill Venners talking about the same topic in 2006: <[http://www.artima.com/weblogs/viewpost.jsp?thread=150666>...](http://www.artima.com/weblogs/viewpost.jsp?thread=150666>...), the Summary starts with "Sun's original marketing message that positioned Jini as a technology for devices backfired in 1999...""

That link is giving me a Java stack trace, but let's put the quote in context from people who actually worked on promoting Jini:

"Probably the biggest misconception is that it is concerned primarily with devices. This was, unfortunately, the original marketing message used for Jini technology, so this misconception is to a large extent our own fault. It was one of those cases where an illustration of what Jini technology could do -- attach a device and it's found and used, detach the device and it disappears -- was mistakenly thought of as all that the technology could do."

[http://java.sun.com/developer/technicalArticles/Interviews/w...](http://java.sun.com/developer/technicalArticles/Interviews/waldo_qa.html)

"For an example of the power of a good story, consider the one developed for the Jini project. As described earlier, Jini technology is a thin layer built on top of Java that allows applications to be written as remote services that can be dynamically deployed and located over a network. The obvious story is that Jini is another middleware framework for distributed applications. But this story has a technology focus that would have severely limited the spread of the Jini message--indeed the term middleware causes even developers to yawn. Instead, the Jini marketing team built a story around what Jini technology would mean to users; that story generated lots of excitement in developers, the press, and the marketplace."

<http://www.dreamsongs.com/IHE/IHE-67.html>

I don't see how that's a message pitching it as an embedded systems solution. Something like network plug and play/Apple Bojour, sure.

"I'll give you partial credit for thinking of J2ME in mobile phones. But there's still a significant difference between programming games in J2ME or Flash for a phone and using Jave to program the phones themselves (ie, the underlying embedded system). Why do you think Nokia's recommendation for application builds was either gcc or, for those building their own phone ROMs, the proprietary ARM compiler?"

Thank you for completely ignoring my mention of smart cards. That's about as embedded as it gets, and Java Card is one of the leading technologies there.

The Nokia example is horrible. Symbian is dead despite having the largest market share - most apps running on Symbian are J2ME. The iPhone might be a better counter-example. But then you have Android, which is a de-facto JVM.

So you have the two biggest categories of consumer devices, cellphones and smart cards, and J2ME runs on over 80% of the former, and I don't know how many smart cards use Java Card, but it seems to be a very significant percentage.

Saying Java hasn't been successful in embedded systems is completely false.

<comment><USER11> OK, I'll grant you the smart card example. I have no experience with those guy; there are what, a half-dozen vendors? For obvious reasons they don't talk about the details of their software much.

The nub of our disagreement: the definition of an embedded system. Per Wikipedia, "An embedded system is a computer system _designed to perform one or a few dedicated functions_ often with real-time computing constraints."

So a cheap MP3 player counts as an embedded system, because playing audio is what its hardware and software is designed for. A personal computer, in whatever physical form, that runs a variety of applications, including audio players, is not an embedded system. And therefore, no, I don't count smart phone applications as embedded systems software. If you're writing device drivers that are burned into a smart phone's ROM, on the other hand, then I'd consider it embedded software.

When you find hardware running Android that's designed to be dedicated to a single task, such as, say, a climate control system, then you can count it as an embedded system. A tablet PC or an application running on it that sends commands to your existing climate control system, not so much.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> "There are free implementations of Common Lisp (GCL, CMU Common Lisp, CLISP), but they came late and incomplete. "

SBCL is open source and free and complete and performs incredibly well with multi-threading etc. I wonder how old this article is?

<comment><USER14> This is only true for SBCL on Linux, isn't it?

<comment><USER3> Besides Linux, SBCL supports multithreading on FreeBSD, Mac OS X, and Windows.

<comment><USER15> Last time I tried SBCL on FreeBSD, the binary package didn't have threads enabled, and when I compiled it from ports, the configuration dialog had me enable the threading manually and said it was "experimental".

</comment></comment></comment></comment><comment><USER16> Found the date: 2006. [http://web.archive.org/web/20061119052800/www.technicat.com/...](http://web.archive.org/web/20061119052800/www.technicat.com/writing/lisp.html)

</comment><comment><USER17> I think the author misses the biggest reason why lisp never caught on: too many developers are simply aversive to s-expressions. Maybe Clojure, with its slightly richer syntax, will solve this.

<comment><USER18> Other languages have absorbed just about all the other key lisp ideas. Garbage collection, first-order functions, dynamic typing etc are all uncontroversial now. I don't think it's an accident that s-exprs have been conspicuously unpopular in comparison.

I actually find the Clojure syntax harder to parse. Nested mixtures of }, ], and ) are very difficult to pick apart visually.

<comment><USER19> _"Nested mixtures of }, ], and ) are very difficult to pick apart visually."_

And nested ), ), and ) are easier to pick apart visually?

At least with }, ], and ) you know any given } matches a { and not a ( or a [. Whereas with all )'s, it's a lot harder (for me) to know which ( in a mountain of ('s it's going to match.

A good editor and proper indenting will, of course, mitigate some of the pain. But I'd MUCH rather have a mix of {'s, ['s, and ('s, than all ('s.

<comment><USER18> _And nested ), ), and ) are easier to pick apart visually?_

You don't have to pick them out in CL, just balance them. Much easier (IMO).

<comment><USER20> You don't have to pick them out or balance them in any lisp. That's what paredit is for.

</comment></comment></comment></comment></comment><comment><USER21> Also wanted to plug "Shen" here, an offshoot of the lisp-based Qi language. Shen is VM agnostic, so it will run on Python, Clojure, etc. Javascript is its first target.

Here is the appeal by its creator - Mark Tarver (and Carl Shapiro)

<http://www.lambdassociates.org/Shen/appeal.htm> or <http://news.ycombinator.com/item?id=1921347>

The qi syntax was previously posted on HN : <http://www.lambdassociates.org/Book/page000.htm>

</comment><comment><USER22> It absolutely needs to be admitted that it is easy to make a well intentioned unmaintainable mess in Lisp and other highly dynamic languages. Brilliant programmer A will add a lot of layers and abstractions that make sense in one context, which is great until brilliant programmer B does so in a different context. This all seems to break down somewhere when the number of programmers exceeds 1.

<comment><USER7> I've worked on several large Lisp systems, and have never had this problem.

You can make a mess in any language. I will grant that Lisp offers more ways to do that than most languages, but so does C++ (template metaprogramming, anyone?).

<comment><USER23> Template metaprogramming is awesome. All of the C++ messes I've seen are related to ridiculous OO crap.

<comment><USER7> Well, my point is that you _can_ make a mess using template metaprogramming. Maybe that doesn't actually happen too often, because anyone smart enough to use TMP at all is smart enough not to make a mess :)

But you're right, the actual messes I've seen in C++ have not involved TMP. Come to think of it, most of them have been around "const" misuse.

</comment></comment></comment></comment><comment><USER24> Exactly what I feel. I miss the integrated debugger and trace facilities the most. You can see exactly what your code is doing in lisp. What happened 10 years ago was the dot.com craze and the demand for Java programmers went through the roof. I am now trying to get back into Lisp maybe through Clojure too.

<comment><USER25> I wish they would fix this in SBCL. The stepper is such a pain to set up and use. Smalltalk has really spoilt me in this regard.</comment></comment>


Hints for Computer System Design (1983) - <AUTHOR> http://research.microsoft.com/en-us/um/people/blampson/33-Hints/WebPage.html <comment><USER2> Interesting to see the doc filled with relevant quotes. Makes the document look really polished. Which is a nice change, considering most articles these days seem to be written as if they are for the tabloids.

</comment><comment><USER3> IMHO, this is the most useful systems paper ever written. Rump kernels were designed on the listed principles. (if the implementation managed to follow the principles is of course another matter ...)

</comment><comment><USER4> "Cedar goes farther and does not keep track of which local variables contain pointers; instead, it assumes that they all do. This means that an integer that happens to contain the address of an object which is no longer referenced will keep that object from being freed. Measurements show that less than 1% of the storage is incorrectly retained [45]."

Might this explain/justify the GC bug that 32-bit Go once had[1]?

[1] [https://groups.google.com/forum/m/#!topic/golang- nuts/qxlxu5...](https://groups.google.com/forum/m/#!topic/golang- nuts/qxlxu5RZAl0)

<comment><USER5> Well, conservative GC is known for this kind of problems, but the overhead is supposed to be generally bounded. I'm not sure about pathological cases; Go may have hit one back then. It highly depends on the circumstances. For example, PLT Scheme used to use the (conservative) Boehm GC in the past, and they've since replaced it, but I don't recall any such problem while they were using it (aside from the somewhat larger but bounded memory usage).

</comment></comment><comment><USER6> [https://youtu.be/TRLJ6XdmgnA](https://youtu.be/TRLJ6XdmgnA)

</comment><comment><USER7> This is really well written. Obviously outdated in some areas but still high quality.

<comment><USER5> Just look at the author name. One of the Great Old Ones himself! We're not worthy.

</comment></comment><comment><USER5> > microsoft.com

Ehm, seriously?

> Butler W. Lampson

Oh, ok!

</comment><comment><USER8> I hear they based MS Bob off the principles outlined in this white paper</comment>