Why Bitcoin is a significant breakthrough, but perhaps not as a currency - <AUTHOR> http://dpk.io/blockchain <comment><USER2> I am convinced that many problems with Bitcoin would be solved if we could come up with a way to tie mining difficulty to the currency's demand instead of only to the mining computing power. Instead of ensuring a predictable generation rate, this could ensure a predictable _value_. When demand wanes, the currency is harder to mine and becomes more scarce, and when demand surges, the currency becomes easier to mine and more available. This would stop some of the volatility in BTC prices. You could plan the rough change in value over time, and build it into the algorithm, perhaps making gains unlimited at first, then making it very deflationary for several years, and gradually easing gains to something like 0-2% deflation per year. A currency with a known long term future value is obviously very useful, and a stable value is also more useful.

I can't think of a decentralized way to measure demand, though, so maybe this is not possible.

<comment><USER3> I proposed a way of tying the difficulty level to the quantity theory of money a while ago on economics and alt currency forums of bitcoin talk.

I think if you're going to be successful, you'll have to find a different set of early adopters. Bitcoin is as much ideological as anything, and while some people don't want to see another alt currency because of their level of investment, others just generally don't believe there's anything wrong with the system today.

Anyways, i'd love to actually develop the idea... but I didn't want to spend time on "just another altcoin" unless I had faith it might get some adoption.

<comment><USER2> I did toss out a less thought-out version of the idea on bitcointalk and /r/bitcoin a while back, and you're right, they were not interested. Those communities seemed to think that a non-predetermined amount of coins meant the same thing as a fiat currency. But maybe if something like this is actually built, people that believe in more mainstream economic ideas would get attracted to it and start to use it?

<comment><USER4> Once you acknowledge mainstream economic thought (or at least mainstream academic economic thought) might actually be a useful field of study, you've pretty much defeated the point of running Bitcoin with a non-central bank model.

Bitcoin appeals to people who have decided it's outrageous they have to invest their money in productive enterprise to get more of it, and it specifically appeals to greed which says "get in early and get rich easily!"

<comment><USER5> > Once you acknowledge mainstream economic thought (or at least mainstream > academic economic thought) might actually be a useful field of study, you've > pretty much defeated the point of running Bitcoin with a non-central bank > model.

Perhaps the _specific_ non-central bank model used by Bitcoin, but there could be alternatives to a traditional central bank that might be used in an alternative currency that wouldn't have the same problem, so I wouldn't rush to say that that acknowledgement rules out non-central bank models _generally_.

</comment></comment></comment></comment></comment><comment><USER6> I think we almost all agree that cryptocurrency is a revolutionary thing. It's difficult to see _how_ revolutionary, because we are only beginning to understand what can be made possible by it.

I often see it compared to the advent of the early Internet in the 1980s, when nobody really knew how big it would get, just that it was "revolutionary" and would become huge.

This may be an overestimation caused in part by bitcoin stakeholders trying to promote the idea. But a very similar thing happened in the 90s when everyone was buying tech stocks.

<comment><USER7> The difference between the 1980s and now is that people now can use the Internet to learn about Bitcoin for themselves, from the source, instead of basing all they know on hype. It's a shame that so many people seem to love to talk more than they learn.

<comment><USER6> Yeah, that difference definitely exists now, and accelerates the learning process quite a bit.

I think most people don't generally go to the source when learning about something, though, even today when it's easily possible. Usually what people do is learn what is fed to them from whatever outlets they prefer (TV, news websites, reddit, etc.) and hear about stuff in passing.

<comment><USER7> Well, while we're on the subject, for anybody who _is_ interested in going to the Bitcoin source: www.bitcoin.org/bitcoin.pdf

</comment></comment></comment></comment><comment><USER8> > This realization raises interesting questions about the political > motivations of Satoshi Nakamoto in presenting their creation as a digital > currency when they must have known that they had solved this far more > important general problem.

He was well aware: he posted a short essay to bitcoin.org explaining how Bitcoin is a general solution to the Byzantine Generals problem, and if you read his early cryptography/p2presearch ML threads, he specifically says that digital money is but the earliest and most obvious application, and that far more could be built on top of it, and he hoped there would be, and included the dangerously-complex scripting language specifically to support more complex functionality than simply a global ledger.

It's not his fault if everyone else was more interested in applying Bitcoin to financial transactions than exploring approaches like Namecoin.

</comment><comment> aaron-lebo I think this article is on to something really important. It is way too easy currently to get caught up in the frenzy over the specuation surrounding Bitcoin.

This idea of the Bitcoin protocol as a decentralized, secure, and transparent storage system has all kinds of applications, whether Namecoin, smart property or something else.

I played around with using Namecoin as a more consumer-friendly form of drm.

[https://github.com/aaron-lebo/dissent](https://github.com/aaron-lebo/dissent)

<comment><USER9> Check out this article on software licenses as securities: [http://jordanpollack.com/softwaremarket/](http://jordanpollack.com/softwaremarket/)

Ultimately I think this level of efficiency would probably destroy most developers who used it (especially games).

</comment></comment><comment><USER10> I don't think the author realizes how uninteresting a decentralized transaction store is without the currency element.

The trick was to line up economic incentives so that securing the network and accepting transaction fees are the same thing.

The fact that bitcoin serves as a centralized document store is one of the biggest defects in bitcoin as it stands now, and when bitcoin does fall, it will fall to a system that treats the transfer of currency units as a first- class citizen rather than a side effect of a script.

<comment><USER6> The currency aspect _has_ to remain, because mining would not exist without it. The devs know this, so they'll do their best to preserve this aspect. However, having the protocol support documents as well is pretty amazing:

Suppose it's 15 years from now. Many cars can drive themselves.

Suppose someone designs a mechanism that allows you to control your vehicle (remotely) only if you own a specific "ownership item" (colored coin, whatever people are calling it) on the bitcoin network. You prove this to the vehicle, and it goes to wherever you tell it to. The item on the bitcoin network means you "own" the vehicle.

Now you can tell your vehicle to go to a public place where someone might inspect it with the intent of purchasing it. That person tells you "OK, I'll buy it for 0.1BTC" and you perform an exchange of your ownership document for 0.1BTC over the bitcoin network.

You don't have to trust anyone with anything. The exchange happens _atomically_. You don't even have to go anywhere to perform the exchange.

<comment><USER11> The buyer has to trust that the mechanism is sufficiently tamper proof.

(and once you have that, escrow service anyway becomes cheap)

</comment></comment></comment><comment><USER12> This article misses the true breakthrough which bitcoin represents which is a _trustless_ , decentralised store and exchange of value.

<comment><USER13> On that note, I want to point people to Protoshares and the concept of DACs (Decentralized Autonomous Corporations):

[http://protoshares.com/](http://protoshares.com/)

[http://letstalkbitcoin.com/bitcoin-and-the-three-laws-of- rob...](http://letstalkbitcoin.com/bitcoin-and-the-three-laws-of-robotics/)

[http://letstalkbitcoin.com/dacs-that-spawn- dacs/](http://letstalkbitcoin.com/dacs-that-spawn-dacs/)

The use of the word "corporation" is kind of wonky to me and the whole concept took me a little time to wrap my head around it, but these are the types of things we can expect to see with blockchain technology and hopefully IMO eventually the abolition of states worldwide.

<comment><USER6> > hopefully IMO eventually the abolition of states worldwide.

These kinds of comments do nothing to help promote bitcoin as a legitimate technology and only increase the risk that cryptocurrencies become generally illegal to use. I'm really disappointed with the anti-government garbage spouted by so many people in the community.

<comment><USER13> Bitcoin is inherently libertarian: [http://rudd-o.com/archives/bitcoin- without-the-politics](http://rudd-o.com/archives/bitcoin-without-the-politics)

If all the libertarians who are into bitcoin suddenly cut down the rhetoric, you think that this will "make bitcoin legitimate technology"? What does that even mean? You mean that governments are going to suddenly be more friendly to bitcoin users? That seems like an incredibly naive belief, sorry.

In general, it is disappointing that people still hold to backwards and primitive beliefs such as democracy and state worship. Statism is institutionalized violence and injustice writ large. I totally understand how your perspective on this can be different, but please understand that what you are calling garbage I see as a call for justice.

<comment><USER4> Yeah people having a say in their government - how silly. We should simply let the free market determine policy. See the richest and strongest will decide what our social, economic and foreign policies are and it will be a golden age of serfdom!

<comment><USER13> I don't want to play a role in an ongoing crime... but I think that is naive to believe you even have a say in your government. You have a greater chance of dying in a car wreck on the way to the polling station than your single vote swinging an election. Democracy really doesn't work unless you have the option to opt out and it is at a very small scale where you are actually able to judge the character of the people to choose from.

What you are advocating is what you then go on and complain about; it's total akrasia. You are suffering from Stockhom syndrome in believing freedom from your serfdom would be serfdom. Democracy is a very persuasive idea because it seems like you have choice, but then in reality the political elite rule. 2/3rds of Americans oppose the Iraq war; would you say this is an example of having a say in policy?

Governments are, across the board, a failure and a drain on society. Every service, including things like providing a "social safety net" can be better provided through market processes.

<comment><USER14> You really need to review U.S. history before you write stuff like this. The past 100 years is full of examples of citizen action overpowering moneyed interests, including huge movements like labor, environmentalism, and civil rights. Each of these movements grew public support until it was large enough to leverage government power to achieve their goals.

You're right that each person's vote, by itself, is only a tiny drop in the bucket. That's not a flaw; that's the whole point of a democracy: it biases the government toward action that will please the most number of citizens. The lone whims of one person should not carry the day in a democracy.

For example: the Iraq war was very popular when it was started. Then, when it became obvious what a mess it was, and become unpopular, the American people voted for a change in government. Now we're not at war in Iraq anymore.

<comment><USER13> I know history bud, want to get into some detail? For every one big name movement like you are talking about I can name 10 (probably 100+ if I had to) examples of the US government beginning to encroach on new areas to interfere with.

The fact that you mention labor as some sort of success shows that you buy into the common narrative and haven't really looked at the situation. The 2002 study by Vedder and Galloway put the damage to the economy over the previous 50 years at $50 trillion dollars by unionism. Unions increase wages where they can restrict entry or have special privilege to intimidate employers but help to reduce wages overall.

Libertarians aren't actually opposed to unions if all a union is doing is organizing to protect rights of workers, but that isn't in truth how they operate. You can find more details on the study I mention and many more reasons why unionism is destructive here: [http://mises.org/daily/1685](http://mises.org/daily/1685)

The US government is also the worst polluter on Earth, yet somehow you believe it has accomplished some triumph of environmentalism?: [http://ivn.us/2012/04/18/the-number-one-worst-polluter-on- ea...](http://ivn.us/2012/04/18/the-number-one-worst-polluter-on-earth-is-the- u-s-federal-government/)

The government fails in its own task of enforcement in notable cases like the BP oil spill. There was legislation before this spill limiting liability for accidents like this. I think this was then sidestepped because of the severity of this spill, but it is an example of legislation actually protecting corporate interests and aiding their ability to pollute. When companies pollute, more often they end up paying a fine to the government rather than compensating victims. The common law mechanism whereby people can sell off their claim to a tort, no matter how minor, has been destroyed in modern, authoritarian systems.

The US government makes illegitimate claims to large areas of land and then takes money for leases on mineral/timber/other rights. This temporary ownership creates an incentive problem. When a company has no long-term stake, the tendency is to strip mine or clear cut a forest. Where instead a system of ownership is upheld, you see a tendency to have more sustainable treatment of land because there is a stake in the long term value of the property.

The same sort of structural incentive problem exists for democracy in general vis a vis systems like feudal monarchies (which, note, I do not advocate still either). When a king permanently "owns" his territory, there will often be some restraint in over-taxation or overly aggressive military adventures because the king is interested in passing on the kingdom to his heirs. In a democracy, temporary rulers have the incentive to make use of their power and "get in while the gettin's good".

The Iraq War may have been popular when Bush started the new salvo but this was based on false information crafted by this administration in order to plunge them into war. It's a problem that the system you advocate even puts a person in the position to manufacture terror like this. Public sentiment was at 2/3rds+ since at least 2006 against the Iraq War and the pullout could have happened swiftly long ago. The idea that these politicians are basing military policy on public opinion is ludicrous. You are clearly totally blinded by your worship of democracy. BTW, there are still at least 20-25K military and contractors in Iraq.

Look at the history of opinion on Afghanistan: [http://www.gallup.com/poll/116233/afghanistan.aspx](http://www.gallup.com/poll/116233/afghanistan.aspx)

That's 65-82% opposed every year except the dip to 54% in '05\. I guess in your world of doublethink, this would be an example of democracy accomplishing the "pleasing of the most number of citizens".

Elections are mere popularity contests. These politicians do not represent you in the same way I would represent you if you handed me $5 and sent me to the store to get something specific. At times, politicians will react to public opinion or there are very slow movements towards ending their criminal policies like the Drug War. If pot was legalized at the federal level, would you add this to your list of great accomplishments? I'd list it as a failure due to the years of unjust policy previously, the millions of captives kept for victimless crimes now, the families and neighborhoods which would still be destroyed by the prohibition on other drugs.

Your statist ideology is outmoded. Information now flows more freely and the crimes of states will be laid bare. Once the "great western democracies" fully implode, people will question these types of systems and look for new solutions. That is what we are building now with things like blockchain-based tech, libertarian legal scholarship, etc.

<comment><USER14> I didn't say unions, I said labor, which encompasses laws that are still popular today like child labor laws, breaks to go to the bathroom and eat lunch, overtime pay, fire exits and sprinkler systems, workplace safety, minimum wage, etc.

The poll numbers you cite on Afghanistan are public opinion of the country itself. If you will look at the next chart down you will see that even in 2013 a majority of Americans do not believe it was a mistake to go to war there after the September 11 attacks.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> A bit reason I think Bitcoin is a fundamental innovation is that nobody quite seems to know what it is. It's clear to me that it is not a currency in the classical sense in that it does things that no classical currency does, but it's also not just a payment mechanism or a wire service or anything else simple and easy to define.

<comment><USER16> I agree; the narratives surrounding Bitcoin examine small facets and magnify their importance. It is like the "blind men and the elephant" parable.

</comment></comment><comment> emin-gun-sirer Let me use this opportunity to point out [http://virtual- notary.org](http://virtual-notary.org), an online witness to facts that can be checked online, where these facts are recorded in the Bitcoin blockchain. These go beyond the types of document proof of existence cited in the article, and can cover facts such as exchange rates, DNS address ownership, WHOIS info, weather conditions, housing prices, employment status, etc.

This article describes the usage scenarios in detail: [http://hackingdistributed.com/2013/06/20/virtual-notary- intr...](http://hackingdistributed.com/2013/06/20/virtual-notary-intro/)

</comment><comment><USER17> Anyone interested should study the script system and Namecoin.

"Restricting transactions to such a simple form would restrict Bitcoin to exactly the possibilities traditional currencies had (though decentralized). However, Satoshi saw the potential to allow it to do more, and introduced a script system. He wasn't around anymore to bring it to practice, but Mike Hearn wrote down some of the things Satoshi had in mind on the Contracts page of the Bitcoin wiki."

</comment><comment><USER18> >This realization raises interesting questions about the political motivations of Satoshi Nakamoto in presenting their creation as a digital currency when they must have known that they had solved this far more important general problem.

Why oh why must every mention of Nakamoto imbue him/them with certain politics? We're led to believe Nakamoto is a subversive anarcho-capitalist libertarian who wants to overthrow governments.

There are certainly hackers driven by ideals and politics (e.g. rms), but there are plenty more who solve a problem _just because they can_. The Morris worm wasn't published in order to promote anarchy. Quicksort wasn't invented as a metaphor for classism. [http://dl.acm.org/citation.cfm?id=358561](http://dl.acm.org/citation.cfm?id=358561)

It seems far more likely that Nakamoto saw an existing problem, solved it in a clever fashion, and published the result.

<comment><USER19> Pretty sure Satoshi had political motivations:

[https://en.bitcoin.it/wiki/Genesis_block](https://en.bitcoin.it/wiki/Genesis_block)

<comment><USER18> Perhaps, but that's kind of thin:

>This was probably intended as proof that the block was created on or after January 3rd, 2009, as well as a comment on the instability caused by fractional-reserve banking.

</comment></comment></comment><comment><USER20> So, BTC might fail as a currency, but succeed as -- say -- a basis for the kind of persistent URN scheme that the W3C & others have been mumbling about for a couple of decades. An interesting thought.

</comment><comment><USER21> One of the biggest problems with bitcoin as a currency that i see, is that everyone still deals in usd amounts and comparison when offering products, when webhosting is a flat btc price regardless of market fluctuations and when people buy and sell items based on their btc price without first translating it into a fiat currency equivalent, that is when bitcoin will truly be mainstream.

</comment><comment><USER22> Sorry to be a bit off-topic, but is anyone else's browser having difficulty rendering the text on this page? [http://i.snag.gy/SK7NX.jpg](http://i.snag.gy/SK7NX.jpg)

I've noticed this on a few sites, and I'm wondering if the problem is on my end, or if it's a problem with the website.

<comment><USER23> You're probably on chrome for windows, which does a really poor job of rendering webfonts.

[https://code.google.com/p/chromium/issues/detail?id=137692](https://code.google.com/p/chromium/issues/detail?id=137692)

<comment><USER24> Do people not test their sites on the most popular browsers?

(I have the same problem with Opera 12.16.)

<comment><USER23> I think the issue is that most front-end developers test on chrome for Mac first, and then assume that it works the same on windows.

</comment></comment></comment></comment><comment> T-A Naive question from total outsider to both contexts, popped up while reading this: has there been any speculation that Aaron Swartz = Satoshi Nakamoto, or are there good reasons to exclude it?

<comment><USER25> It's not a theory I have ever heard, and I think there's sufficient reason to rule it out. Swartz never really professed an interest in currency or monetary policy, etc. that I am aware of. He was an extremely prolific individual who worked on many very public projects. Transparency was clearly one of his core values, and never exhibited more than passing general nerd interest in cryptography, anonymity, or the technolibertarian ideal that seems to have been a driving force for Satoshi. Also, he was already pretty damned busy in 2008-2009. I doubt he would have had time to do the huge amount of design work that went into Bitcoin without somebody noticing what he was working on.

So, Aaron was a brilliant dude, who did a lot of cool stuff. I just don't think the personality matches up, at all, with whoever created Bitcoin. If Swartz created a cryptocurrency, which I don't think he would have, I doubt it would look like Bitcoin. (There's also several people much higher on the list of "might be Satoshi".)

<comment><USER17> Who are on your list?

Nick Szabo. Mike Hearn. Hal Finney. Wei Dai.

<comment><USER26> Nick Szabo and Wei Dai appear to be mythical creatures just as much as Satoshi Nakamoto and therefore saying that, say, Szabo is Nakamoto provides no information. The other two appear to be real people.

<comment><USER27> I believe these are both meatspace identities.

Nick Szabo is a "former law school professor at George Washington University" according to Wikipedia.

Wei Dai has attended SIAI/MIRI workshops in person:

[http://lesswrong.com/lw/ig9/outside_views_and_miris_fai_endg...](http://lesswrong.com/lw/ig9/outside_views_and_miris_fai_endgame/9noj)

("Wei Dai" could be a pseudonym but if so I haven't seen him mention that on Less Wrong.)</comment></comment></comment></comment></comment>


Neutrino: The Lighter Side of Lightning - <AUTHOR> https://blog.lightning.engineering/posts/2018/10/17/neutrino.html <comment><USER2> Here is the github, where the first paragraph of the README.md had everything I ever cared to know without the blog:

[https://github.com/lightninglabs/neutrino](https://github.com/lightninglabs/neutrino)

> Neutrino is an experimental Bitcoin light client written in Go and designed > with mobile Lightning Network clients in mind. It uses a new proposal for > compact block filters to minimize bandwidth and storage use on the client > side, while attempting to preserve privacy and minimize processor load on > full nodes serving light clients.

</comment><comment><USER3> As a physicist who works with neutrinos, I don't appreciate the name clash :)

<comment><USER4> Exactly, I actually thought this would be about neutrino EAS induced lightning strikes or something.

<comment><USER3> I'm sure you know this, but lightning can make neutrinos!

</comment></comment></comment><comment><USER5> This is not about lightning or neutrinos!</comment>


How do people protect their startup ideas if you can't afford a patent? (Facebook vs ConnectU) - <AUTHOR>

<comment><USER2> First and foremost, trade secrets and trust. Don't tell anyone you don't trust. I know that sounds lame, but it is true if you are serious about protecting a secret. It is better to prevent the action in the first place than having to deal with litigation. Trade secrets are enforceable in court, though you basically have to be trying to keep them secret, prove it was secret, etc.

So that effectively means beyond just keeping it secret, it's all about contracts. NDAs, non-competes, etc. You can sign your rights away to almost anything in a contract, though non-competes are notoriously weak in California.

</comment><comment><USER3> Patents only allow you to sue people later. The main barrier to entry for most folks is attention span. If you're really worried about it, you should get the contracts, etc. mentioned by others.

We've used contracts once in the past 2 years. And that was only because we were recently went open kimono on the technology side for a potential acquirer.

</comment><comment><AUTHOR> Do you use special confidentiality clauses? Some example I can see? If so, do you need to specify you ideas thoroughly?

If you where in ConnectU's position, how could you had avoided Mark copying the idea?

Can you really avoid it?</comment>


Should Colleges Require Coding Tests for Admission? - <AUTHOR> http://madebyknight.com/coding-tests-admission/

<comment><USER2> Not a chance; they would be done about as well as any other kind of test. Anyway, coding is like writing a grammatical sentence--not representative of the logical thinking that, say, a term paper might represent. Hey, there's the thing we really need: a logical thinking test!</comment>


Ask HN: is lean startup applicable to B2B? - <AUTHOR>

I'm looking for some feedback from entrepreneurs who launched B2B companies to understand what parts of lean startup methodology are relevant or not. Typically: experimenting might be tricky when your users have to perform a business process which is (supposedly) stable.
any additional tip is welcome.
thanks! <comment><USER2> Yep, my startup business Powered Now is pure B2B. The same methodologies apply regardless of the market, however I take your point about stable processes. I think (and would love a discussion on it) the idea of a "stable process" comes with scale, the larger the orginisation the less likely they are to consider adapting or trying new things, although that might be a sweeping generalisation.

Regardless of the size of the business there are always people on the cutting edge, the early adopters you need to find and involve.

Best of luck, I'll watch this thread with interest.

<comment><AUTHOR> I agree with you. But i think that beyond scale and state of mind, one key factor in B2B is the tolerance of the organisation (not only the leader) to change and experiments.

It takes a great deal of leadership to bring everyone on board and convince the naysayers. In my case, on of my customer has ~100 users. the problem is not my stakeholder, but a slice of the 99 other users, who have to deal with the change. Some request additional training, some complain...

With all the good will of the leader, i just fear that he eventually grows tired of fighting for each change, regardless the value brought by such change.

So the question about experiment is maybe more a question of overcoming user resistance (and, in a company, the associated cost).

The reactions to UI changes in Facebook are probably a good indicator that it's a tough battle :)</comment></comment>


Die, PR, die, or raise your game and learn about asynchronicity (Technology Editor of the Guardian) - <AUTHOR> http://www.charlesarthur.com/blog/?p=899 <comment><USER2> great read when you compare this to the nyt attempt at tech ( <http://allthingsd.com/> ) & this post on Wall St. Journal's new tech-news site ~ <http://news.ycombinator.com/comments?id=26581>

I can't help notice the differences in background in the Guardian tech editor ( <http://www.charlesarthur.com/cv.php> ) & wsj eds ( <http://allthingsd.com/about/> )</comment>


Microsoft to invest in Cyanogen - <AUTHOR> http://arstechnica.com/gadgets/2015/01/microsoft-to-invest-in-cyanogen-hopes-to-take-android-away-from-google/ <comment><USER2> I've been a fan of CyanogenMod for years. My brother and I ported ICS [1] and Jelly Bean [2] versions of CM back to the original HTC G1. I've run it on every phone I've ever owned, and even had my parents running it for a time.

But it's hard to reconcile some of the public blunders that Cyanogen has made since becoming a company. Their OEM relationships with Oppo, OnePlus and Micromax seem haphazard and volatile, and it's not clear they present any real advantages to the consumer. As far as I know, the Oppo N1 isn't supported anymore, and while the OnePlus One is theoretically still supported at least in some markets, Jelly Bean is nowhere to be found, and OnePlus is off doing their own ROMs now.

Distractions like Nextbit's "Baton"[3] (a risky bet on an idea that doesn't appear to work with the majority of apps) leave me wondering what Cyanogen's real value proposition is.

It will be interesting to see where this is headed, and I hope CM remains faithful to their core community and support the maintainers that keep bringing to CM to the masses.

[1] [http://www.theverge.com/2011/11/24/2584340/android-4-0-aosp-...](http://www.theverge.com/2011/11/24/2584340/android-4-0-aosp- ported-to-the-htc-g1-in-alpha-form) [2] [http://www.theverge.com/2012/8/9/3229163/android-4-1-ported-...](http://www.theverge.com/2012/8/9/3229163/android-4-1-ported- to-the-venerable-htc-g1) [3] [https://nextbit.com/about/](https://nextbit.com/about/)

<comment><USER3> Well put.

Stock android is actually much more stable than the CM that ships with OnePlus. At least imho.

A friend is already selling his, after about 6 months with the phone. I haven't had it much longer but long enough to clearly see that stock android up to 4 offered much better usability.

The bugs I endure in the OnePlus just because I am sick of switching phones every year are borderline insufferable.

<comment><USER4> I'm actually planning on buying one and now you make me worried. What are the bugs you're encountering?

<comment><USER3> Ok get ready for a rant about 1st world problems.

It seems confused about sound. I had to uninstall Google Play completely so my official JBL OnePlus headset wouldn't start playing music in Google Play instead of Spotify.

These issues continued when I made my first audio recording. I was at the doctors and recorded the meeting, after that every time I try to play music from my headset it starts that audio recording. Even though the audio recording program is closed several reboots ago. Workaround is to open the phone, start spotify playing, pause, then I can use the headset as normal.

The worst bugs in a phone are bugs in the actual phone feature, imo. And in my case CM seems confused about the screen when I'm in a conversation. It's supposed to darken when I move the screen to my ear but it never lights up again when I move the phone away from my ear. Often I have to unlock the phone to end a call. The headset also seems unable to end calls, only answer them.

Waking up it's very sluggish, sometimes unresponsive. It has this "knock knock" feature where it wakes up if you tap the screen twice. This feature worked for a day or two when it was new, then stopped working for several weeks until I tried installing a stock android image on it and failed, reverted to CM and then the knock-knock worked again.

Even though the knocking works to wake it up, it often will not accept input for those first few taps after it wakes up so you end up having to erase your unlock code and start over a lot.

And speaking of stock android. Since none of my friends with stock android phones, nor me with my Nexus 7 at home, seemed to suffer these issues I decided to try the official stock android images from OnePlus.

I ended up in a reboot loop issue that has been reported on the bug tracker and on the forums. The problem is that I can't have my sim lock on if I want to install the android image because then it keeps rebooting the phone as soon as I unlock it. So I had to revert back to CM because I didn't feel like disabling the sim lock was a good option.

I could probably go on if you give me some time to think about it, there are definitely more bugs that I have experienced in my short time with this phone.

On a personal note, I was intrigued by CM because I am a FOSS junkie and know that it's a fork of android. I've had phones like the N900, ZTE Firefox OS and Jolla in the past. I love ideas like Replicant. So you understand why I bought the OnePlus. But in retrospect I should have just gotten an Xperia or an HTC since they have both provided models with unlocked boot loaders and Sony have even opened up their Android source code.

<comment><USER5> I haven't had any of these problems myself. I get what you mean with "wakeup is somewhat sluggish", but I believe that is because of an option that prevents the screen from accidentally turning on when it is your pocket, and that can be disabled.

The only bug I've had is that it refused to automatically connect to a particular wifi network. I fixed that by removing the network and adding it again.

<comment> saiya-jin I have couple more (definitely having an issue at the end of call having screen locked)

\- sometimes it starts playing my Shuffle player out of blue, while being in pocket (but for last months it didn't happen)

\- sometimes my Sygic car navigation fails to catch up in plain open terrain for very long time (though this might not be related to OS at all)

\- if phone is not on cable, I can be 1 hour next to known wifi and it will still use my limited 3g connection. Once i turn on screen, in 2-3 secs it's in. Same goes for some messaging apps (ie whatsapp)

overall OK phone for the price (especially when seeing colleague's Moto X being bricked/losing all data few times from google's updates), but far from bugless.

<comment><USER3> >\- if phone is not on cable, I can be 1 hour next to known wifi and it will still use my limited 3g connection. Once i turn on screen, in 2-3 secs it's in. Same goes for some messaging apps (ie whatsapp)

I just remembered this happens to me too.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> I'm an Open Source Engineer, working for Microsoft, _living_ in Cyanogen Inc's former hq/office.

I don't know anything about this deal, but I adore how small Silicon Valley sometimes is.

<comment><USER7> I'm curious, what's does your job entail? This question partially stems from the obsolete understanding of Microsoft's relationship to open source, but also wondering how it compares to other open source business models that provide support for open source packages.

<comment><USER6> Happy to explain a bit! I work with developers out there, putting code on GitHub, contributing to other projects or making our own stuff work better with open source projects. I also "hack" on our new and upcoming products (we have a bunch of hardware announced and already out there where SDKs haven't been released yet), trying to see how well they play with "the open source world". I also visit dev conferences around the world, talking about the code we wrote and the lessons we learned.

My job is kind of awesome - I'm basically at a full-time hackathon, juggling my MacBook, Windows Notebook, a bunch Cloud solutions, some IoT devices and whatever our hardware teams come up with.

The team is brand new - and we're still hiring. Hit me up (felixrieseberg.com / @felixrieseberg) if you're interested!

<comment><USER8> Hey Felix, I will be joining Microsoft this summer ( Visual Studio Team ). Any Idea how one can move to working on Open Source stuff like you are doing.

<comment><USER9> I work at MSFT too, and have been involved with open sourcing a major project, called Bond[1]. I'm happy to chat about this offline, if you like. Email is in the profile.

The short answer is that there are divisions in the company with a direct imperative to open source things, so if your manager is willing to encourage this (easy enough to figure out), the answer is often yes. Like almost every company, we tend to open source tools but not products (e.g., yes to Orleans, but no to the game it supports, Halo), so from there it's a matter of finding a group that has such tools, or is open to developing them.

Felix (who works for my old boss -- hi Felix!) is a special case. He works for a team called strategic engagements, whose job (I hope he'll correct me if I'm wrong) is specifically to engage with the public, usually on their own terms, which often involves non-MSFT tech. _That_ is an uncommon job, but if you want to talk to people in the group, just ping me when you get here and I'll put you in touch with the dev manager for the group.

[1] [https://github.com/Microsoft/bond](https://github.com/Microsoft/bond)

</comment></comment></comment></comment></comment><comment><USER10> I scrolled through the comments looking for the obligatory hell freezing over snark remark.

Cyanogen is arguably the only creditable opposition to the Google Android hegemony. It's nice to see MS recognize that and support it. Too bad MS shut down the Nokia Android fork in its nascency.

It would be interesting to see if they can get more windows and windows phone compatibility into Android.

<comment><USER11> no you clearly do not understand AOSP..

Cyanogen follows Google AOSP rules and thus doe snot oppose Google in anyway shape or form..

and despite MS actions Nokia, the other part MS did not buy is going ahead with an android fork.

<comment><USER12> > despite MS actions Nokia, the other part MS did not buy is going ahead with > an android fork.

Can you provide a source for this please? I remember reading about the new Nokia N1 tablet but it was built and designed by foxconn and just branded by Nokia so I am not aware of any Android fork there...

<comment><USER13> Hi I'm a Nokia PM on this project. It's not an Android fork. Z Launcher is running on top of vanilla Android on the N1.

</comment></comment></comment></comment><comment><USER14> I look forward to seeing Android devices powered by Microsoft apps/services in the future just so Google has a wee bit of competition!

We (at SweetLabs) have been proponents of this "Windroid" concept for some time, and I think Cyanogen is a very smart way for Microsoft to move forward. Our "Windroid" thoughts were written up last year if anyone is interested: [http://venturebeat.com/2014/01/01/windroid-what-if- microsoft...](http://venturebeat.com/2014/01/01/windroid-what-if-microsoft- forked-android/)

</comment><comment><USER15> Maybe this is cynical, but this feels more like Microsoft trying to further disrupt Google's control over Android. MS knows that Cyanogen is ultimately bad for Google's Android progress. Cyanogen is an attempt to regain complete control over the devices we own, away from Google.

Google wants standardization and consistency, Cyanogen wants an "anything goes" environment. I'm not saying Cyanogen's goals are not admirable, but Google wants control over the Android ecosystem and they definitely don't want someone else with that control.

This would be like Microsoft funding companies that make it easier to jailbreak iOS.

<comment><USER16> As a user, Cyanogen is a great improvement over stock Android, no question. But there is zero hope of "regain[ing] complete control over the devices we own" without open-source radios and firmware. Just sayin'.

<comment><USER17> I agree about the lack of complete control. I am not sure putting your device under the control of another company (Cyanogen) instead of Google is a way of getting complete control either!

<comment><USER18> Until Replicant is usable, Cyanogen is the best we got.

</comment></comment></comment></comment><comment><USER19> At this point MS hates Google more than Linux/Android. This doesn't surprise me at all.

<comment><USER20> I'd throw Apple in there and call it a "hate triangle": MS hates Apple and Google, Apple hates MS and Google, while Google... I don't really know.

<comment><USER21> I don't think that MS and Apple hates each other (by MS and Apple I'm thinking about leadership and the general sentiment among engineers). But I'm pretty sure that MS and Apple hates everything Google.

<comment><USER20> I don't know, but they are competitors in one huge market: desktop computers (sort of) and operating systems. If there's one company that's successfully taking down Windows, that's Apple (with Mac OS X).

<comment><USER22> > I don't know, but they are competitors in one huge market: desktop computers > (sort of) and operating systems.

Kind of, but not really. Apple gives its operating system away for free, and sells hardware. Microsoft sells its operating system to OEMs and business customers. They aren't directly competing in the way that Coke and Pepsi are.

And Windows (of some version) still has >90% market share for desktop OSes, so OSX is not a credible threat to Microsoft in that space. Microsoft's biggest obstacle in the desktop OS space is Windows XP.

<comment><USER23> OS X is a credible threat to Microsoft in the high end desktop market, which is the only place where its OEMs can make money (and are not making money right now); the Windows ecosystem can't survive with 90% marketshare but only 40% profit share.

But Apple is more concerned these days in selling iPhones, which makes them a lot of money. And Microsoft wants in on that (disclosure: Microsoft employee, but speaking for myself).

<comment><USER24> No one in Silicon Valley gives a crap about desktops, all the growth is in mobile.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> If only they could get Nokia to make phones with cyanogenmod pre-installed...

<comment><USER26> i would later change that and install google rom and use the beautiful microsoft hardware

</comment></comment><comment><USER27> I'm surprised it took this long for a big phone player to pick up Cyanogen, but disappointed it's MS - I mean, obviously they could have use for Cyanogen, but it will never be part of their core business. Lenovo should have thought of it first.

<comment> k-mcgrady They aren't 'picking it up/buying it'. They're investing and according to the article will be a minority shareholder.

</comment></comment><comment><USER28> I think the new Microsoft is becoming really cool. Now there is one step more to do.

Windows, I would like to see something like the project Spartan, a Windows based on unix.

I'm a dreamer I know but at this point I will not be surprised.

<comment><USER29> I think that's their goal, is to be accepted again. Their late rash of investments seem to insinuate that.

Back in the 90's, it was cool to be a Microsoft fan. Not so much over the last decade. They're trying hard to change that.

<comment><USER30> Supporting BSD rump kernels compiled against the NT api could be a good alternative.

</comment></comment></comment><comment><USER31> For a brief shining moment, Microsoft sold an Android with a Nokia/Microsoft ecosystem behind it. It wasn't a bad idea. It could have sold better than Windows Phone handsets because it would have apps.

As Amazon knows, it's owning the ecosystem that matters.

<comment><USER32> Am I the only person who actually likes WP8 as a platform?

Seriously, my Lumia 520 is the best cheap phone I've ever bought.

<comment><USER33> No, you are not alone. I recently got a LG G3 with Lollipop. This is my first new Android phone in 2.5 years and I think it's going to be the last. It can't even compete performance wise with my older Lumia 920 in day to day tasks. Can't say the hardware is bad on the phone, but the software is underwhelming (typical Android laginess that makes it annoying to use)...

<comment><USER34> G3 has a high res screen and under powered GPU to run it.

<comment><USER35> I do remember reading something about this indeed!

</comment></comment></comment></comment></comment><comment><USER36> Hopefully this means that CyanogenMod will get more bug fixes and resources so that it feels like a truly native Android experience. I didn't even know there were two different types of headphone microphone jacks (CTIA vs. OMTP) until I hit this fun limitation on my new OnePlus: [https://jira.cyanogenmod.org/browse/BACON-133](https://jira.cyanogenmod.org/browse/BACON-133)

</comment><comment><USER37> Coincidentally, Microsoft released the final versions of Word, Excel and Powerpoint for Android tablets today: [http://www.cnet.com/news/microsoft- office-apps-for-android-t...](http://www.cnet.com/news/microsoft-office-apps- for-android-tablets-go-live-today/)

<comment><USER17> Thanks! I wonder if it'll make me switch from OfficeSuite Pro, that 25p app I bought and have used twice.

Does anyone do much work on tablets, out of interest?

My wife uses Google Sheets for a spreadsheet or two on her iPad but we're under no illusion that it'll replace a "proper" office package on the Mac/PC.

EDIT: Just noticed it'll need a subscription, so I am not their target market. Thanks for the info about the release though, I did not know about that.

</comment></comment><comment><USER38> The one thing I've read (don't remember where) that makes sense to me is...is it possible that MS is trying to figure out a mobile Docker system to allow Android apps on Windows Phone? With multi-core CPU's on phones and more memory, you could assume the capability is there.

But this would be more than Windows Phone...with Windows 10 merging into one store and Universal apps allowed, is it possible MS is telling everyone to build for Windows 10 and you'll get tablet and phone apps for free?

I'm a Windows Phone user (Lumia 1020) and really frustrated by the lack of a new flagship phone, but my feeling is MS is just waiting to leapfrog everyone else's hardware in 6 months. A lofty goal, but seeing the Surface Pro 3's success, maybe, just maybe they can do it.

But embedding Android inside Windows seems plausible to me.

</comment><comment><USER39> If Microsoft can stop themselves from another Sidekick episode, they might actually manage to make a phone for once. (Assuming they're trying for a phone) But having lived through the Ballmer years (WRT Linux/FOSS), I remain skeptical of any Microsoft participation in Android.

<comment><USER40> Did you know Microsoft sold over 50 million phones last quarter [1]? They know how to make phones...

[1] 10.5 million Lumia smartphones, 39.7 million Nokia-branded dumbphones -- [http://arstechnica.com/business/2015/01/hardware- surprisingl...](http://arstechnica.com/business/2015/01/hardware-surprisingly- strong-windows-weak-as-microsoft-posts-solid-q2/)

<comment> semi-extrinsic So you really mean that Microsoft sold 10 million phones last quarter? Nokia knows how to make dumbphones, nothing new there. That those appear on MS's balance sheet does not imply anything about the capabilities of MS.

<comment><USER41> They don't just show up on Microsoft's balance sheet, the part of Nokia that makes them is now part of Microsoft.

<comment><USER42> No true Microsoft fallacy? Ha

</comment></comment></comment></comment></comment><comment><USER43> This is a very minor investment, and won't give MS any sort of controlling stake. It's very likely that they want to use this to keep a better feel for the pulse of the direction the Android ecosystem is going in than any sort of power play or to adapt technologies.

<comment><USER44> If we won't see Microsoft apps and services start popping up in Cyanogen 6 months from now, then I'd agree with you, but I think that's exactly what's going to happen.

Microsoft may not get a "controlling stake", but it will probably have a huge influence in the development of Cyanogen from now on.

<comment><USER45> Microsoft already publishes heaps of android apps[1], but there's no way Cyanogen would _drop_ Google apps (leaving ASOP) to pre-install a suite of unrelated, relatively useless apps (drop Maps, gain Office Suite?)

[1] :[https://play.google.com/store/apps/developer?id=Microsoft+Co...](https://play.google.com/store/apps/developer?id=Microsoft+Corporation&hl=en)

<comment><USER46> Bing Maps was _very_ good the last time I used it.

</comment></comment></comment></comment><comment><USER47> Microsoft just bought part of a linux company. Wow, things are not as I remember them.

<comment><USER48> They've done it before, with Novell. (And, arguably, Nook.)

<comment><USER49> Microsoft released a version of Unix when Linus Torvalds was 11 years old.

[http://en.wikipedia.org/wiki/Xenix](http://en.wikipedia.org/wiki/Xenix)

<comment><USER48> Sure, but releasing a commercial Unix is different than investing in a Linux company. The former is less inconsistent with popular anti-Linux perception of Microsoft than the latter.

</comment></comment></comment></comment><comment><USER50> "The real challenge for the company will be convincing its hardcore Android user base to dump Google Play and use the Cyanogen app store."

Oh, so no Candy Crush Saga then? Well, that's OK. Better chance for everyone.

<comment><USER34> They "only" need to convince developers first. With Googles automatic banning from Play Store nowadays, that could even be doable.

</comment></comment><comment><USER51> This makes sense. I can see Microsoft offering Cyanogen and other OEM's a suite of Office apps as a way to sell more Office 365 subscriptions. It's really, really smart.

</comment><comment><USER52> I wish they would take the money they're investing in this and figure out how to bring more apps to Windows Phone.

<comment><USER53> How would they do this? Pay developers to create apps for their own brands? They could make their own versions, but that's not going to sit well with .. anyone.

Curious how such a small investment would make a dent in the seeming lack of apps for the Windows Phone platform.

<comment><USER54> I remember when blackberry had a promotion to get a PlayBook for free if you submitted an app. I'm sure they got loads of apps, if only to get the free PlayBook to sell.

I know that's what I did.

<comment><USER55> Sounds like a good way to get a bunch of terrible, unsupported apps into your ecosystem. Not sure that would help things.

<comment><USER56> Yep, it got them tons of pong games and stuff like that.

FWIW, Microsoft was giving out a lot of free developer devices, too.

<comment><USER57> For a while, Microsoft was flat-out giving developers $100 for every app they published:

[http://www.theverge.com/2013/3/19/4124548/microsoft- paying-d...](http://www.theverge.com/2013/3/19/4124548/microsoft-paying- developers-cash-for-windows-apps)

</comment></comment></comment></comment></comment></comment><comment><USER58> I can't help but think that between this and the Android Visual Studio integration, we might see Android app compatibility on Windows Phone, much like the Blackberry app play a couple years ago.

It would certainly put the jumper cables on Windows Phone.

<comment><USER59> Adding a compatibility layer for a large competitor means:

A) users will get the cool OS updates as soon as possible, but after the guys running the 'real' thing get them.

Guess what choice users will make?

B) developers who develop for your platform have to support the market leader, too; developers who develop for the market leader get your users for free.

Guess what choice developers will make?

This tactic killed native OS/2 apps and, subsequently, OS/2\. The Blackberry plot didn't end that well for Blackberry, either.

<comment><USER60> This is a good point. Few developers would care about Windows Phone if they can just build for Android and do a lazy port to WP (if they port at all). But what if Microsoft instead wants to make Windows apps work on Android? Microsoft is championing their "universal apps" now, where you build one Windows app and it runs on Windows 8/10, Windows Phone and soon Xbox One. Adding Android to that list would be big.

</comment></comment></comment><comment><USER61> If someone comes up with a version of Android with better privacy controls and a app store which has around same number of apps available. I will jump the ship. Google Apps are great but I am sure I can live without them.

</comment><comment><USER62> So, can someone address the Nexus 4 no call audio issue? Because right now I can't make emergency calls.

<comment><USER63> It was resolved for me when I moved to CM12. Zero problems in 2+ weeks, previously a daily issue.

<comment><USER62> Thanks for the suggestion, I'll have to consider it. That's definitely a workaround but I've had issues with instability on nightly builds in the past because... well... they're nightly builds. Could things be worse than having no phone functionality on my phone? Hmm....

</comment></comment></comment><comment><USER64> May be instead of investing they could stop shaking down Android manufacturers with patent trolling? That would be way more useful.

<comment><USER65> Their goal is to help themselves, not to help the greater phone-using community.

<comment><USER64> Except they don't hesitate used crooked means for their goal.

</comment></comment></comment><comment><USER66> This is classic embrace, extend, and extinguish.

</comment><comment><USER67> This article title is incorrect. The correction at the bottom of the article reads:

      Correction: This post originally said Microsoft would be investing $70 million in Cyanogen, but the company will be taking part in a $70 million investment round. It's unknown how much Microsoft is investing.

<comment><USER68> Thanks, we updated the title.

<comment><AUTHOR> Thanks!

</comment></comment></comment><comment><USER69> Android is heading in the wrong direction. Not much open source left in a couple of years. Too bad!

<comment><USER70> Because of Microsoft's investment? Microsoft has been open sourcing things in a pretty shocking manner (.net), supporting open source projects (embracing Node.js), and doing things in line with the open source community (repos on Github)

</comment></comment><comment><USER71> [http://en.m.wikipedia.org/wiki/Embrace,_extend_and_extinguis...](http://en.m.wikipedia.org/wiki/Embrace,_extend_and_extinguish)

<comment><USER72> It's 2015 Google is the new Microsoft

<comment><USER71> That's not true. If you make your case for it, I'll gladly explain where you're wrong. But FFS, stop spewing bullshit.

Android: Doesn't have the dominance that Windows has had for two decades, thus limiting the power of Google. Also, there is much less lockin for phones.

<comment><USER73> Android.

Google builds an AOSP environment, as soon as everyone uses it, they move all the libraries into the proprietary Google Services Framework, and then they appended their contracts so that every manufacturer that produces "Android with Google Play" devices can't sell pure AOSP devices anymore.

<comment><USER74> No libraries have ever moved from AOSP into Google Services Framework. The Google Services library is exclusively made of APIs that use Google services that were never in AOSP, such as a Map viewer, push messaging, advanced location services, and games services.

The vast, _VAST_ majority of APIs that developers use and depend on are in AOSP either as framework APIs or in the support libraries (which are open source in AOSP as well).

Second the contracts were always there. Hell, the contracts (Open Handset Alliance) came _before_ AOSP.

</comment></comment></comment></comment></comment><comment><USER44> This leaves a bad taste in my mouth. Yesterday, all sites reported it as Cyanogen wanting to take Android away from Google "to make it more open", as in Google has too much control over it.

And today we learn that it's actually Microsoft pulling the strings and "taking Android away from Google". That changes things quite a bit.

Microsoft will only keep it "open" as long as it benefits them (yes, kind of Google - which is precisely why I don't see any benefit in this for the user, just the major downside that will come with such a fork - _Fragmentation_ ).</comment>


Npm was down - <AUTHOR> http://www.npmjs.org <comment><USER2> Our sincere apologies for tonight's downtime. We're back up now after 30 incredibly frustrating minutes, but we're making changes to ensure this incident can't be repeated.

The root cause was a network failure at our CDN, Fastly. The incident was limited to a single Point of Presence (POP) in San Jose, so if you were in Europe or Asia you didn't see anything wrong, but obviously at this time of day most traffic is from the west coast.

While our uptime over the last few months has been pretty great, in the last week we've had two non-trivial incidents. That's unacceptable to our users, and to us, and we're not just sitting around hoping it doesn't happen again, but will be making fundamental architectural changes to eliminate the sources of failure we've seen.

<comment><USER3> I'm in Tokyo and it was definitely down for me and now it's down again.

<comment><USER4> I'm in Zurich and it was also down here.

<comment><USER2> Yes, we had another 20 minutes of downtime 4 hours later, caused by our CDN accidentally re-instating their broken datacenter. The second outage is documented here: [http://status.npmjs.org/incidents/jc65gc8tzk5v](http://status.npmjs.org/incidents/jc65gc8tzk5v)

</comment></comment></comment></comment><comment><USER5> Mirrors, anyone? CPAN has like 50,000,000 mirrors. NPM could get at least three.

</comment><comment><USER6> Has to be one of the more unreliable of the million package managers out there.

Good thing our devs all rely on this for successful app builds...

<comment><USER7> At least you know there's a whole bunch of venture money behind them....

</comment></comment><comment><USER8> Outage status pages:

NPM: [http://status.npmjs.org/incidents/nz0kw54kdvfq](http://status.npmjs.org/incidents/nz0kw54kdvfq)

Fastly: [http://status.fastly.com/incidents/381z6ydt7ddb](http://status.fastly.com/incidents/381z6ydt7ddb)

<comment><USER6> Thanks for the link thats very helpful. It would be nice if they had this in their error logs.

</comment></comment><comment><USER9> One reason where Go's lazy approach is wonderful. It doesn't need to depend to any centralized server.

</comment><comment><USER10> Use this: npm --registry [http://registry.npmjs.eu/](http://registry.npmjs.eu/)

<comment><USER11> Is it possible to point to a folder containing the packages instead?

I noticed every package installed is cached locally and since I'm usually reinstalling the same packages it would be great if I could point to a folder and let npm install packages and their dependencies from there. Extra points if it could fallback to the official registry if it fails to find a package in the local folder.

</comment></comment><comment><USER12> I'd be more surprised if you had posted that NPM was up.

</comment><comment><USER13> The reason for the comfort of Node is imho. NPM and the way it easily gives you fast access to a lot of functionality. That being said it is worrysome that NPM has the size of 80GB+ as far as I know and mirroring is not quite that appealing. I wonder what spoke against a repository-list instead URL of a single-repository URL with fallbacks when they first developed NPM.

</comment><comment><USER14> Does anyone have links where I could read about what I can read about possible workarounds? Like mirrors may be or setting up private repositories?

<comment><USER15> It's easy to setup a private cache to keep your builds going while npm is down: [http://eng.yammer.com/a-private-npm- cache/](http://eng.yammer.com/a-private-npm-cache/)

<comment><USER16> There should be a general backup NPM service somewhere though. Just like there are with Linux distro package systems. Maybe it could be a few hours behind in terms of replication, but generally that is good enough for nearly everyone.

</comment></comment></comment><comment><USER17> Just when I wanted to get some work done.

</comment><comment><USER18> Guru Meditation?!?

<comment><USER19> "Guru Meditation" is part of a default error message in Varnish, a caching HTTP proxy. Fastly (NPM's CDN) uses Varnish.

The Guru Meditation error originated with Amiga: [http://en.wikipedia.org/wiki/Guru_Meditation](http://en.wikipedia.org/wiki/Guru_Meditation)

</comment></comment><comment><USER20> npm_lazy to the rescue!</comment>


Harmful software, and less harmful alternatives - <AUTHOR> http://harmful.cat-v.org/software/ <comment><USER2> What makes these pieces of software "harmful"

<comment><USER3> Looks like "they aren't from the Plan 9 world".</comment></comment>


Launch HN: API Tracker (YC W20) – Track and manage the APIs you use - <AUTHOR> Hey HN!
We're Cameron, Trung and Matt from API Tracker (https://www.apitracker.com). We make tools to help with using third-party APIs in production.
When software teams integrate with APIs they often run into outages, network issues, interface changes or even bugs that cause unexpected behavior in the rest of their system. These problems are hard to predict and prepare for so most teams don't deal with them until there's a outage and have to do an emergency build to add logging and get to a root cause.
This is what happened to us. Trung and I are both software engineers and we spent a lot of time and energy trying to make our API integrations robust and reliable in production. We found ourselves instrumenting all our API calls so we could know how many calls we were making, how long they were taking and if they were failing. We set up alerts for errors and latency increases and integrated with PagerDuty. We wrote retry logic with exponential backoff. We wrote failover from one API provider to another. At the end of it all we built a lot of tooling that required maintenance and wasn't even applied uniformly across all of our integrations.
After building all this infrastructure we realized that many other teams are reinventing the same wheel.
To solve this problem we built an API proxy that takes requests and relays them to the API provider. By proxying this traffic we are able to instrument each call to measure latency, record status codes, headers and bodies, and add reliability features like automatic retry with exponential backoff. From there we can monitor and alert on issues and provide a searchable call log for debugging and auditability.
We knew that because we were asking teams to run their mission critical API calls through us that we had to build a highly available and scalable proxy architecture. We've done this by designing a proxy that can be distributed across multiple regions and clouds. We are currently running out of AWS. Global Accelerator allows us to use their private internet backbone to quickly get traffic to our proxies which run behind AWS Network Load Balancers. While this can help us ensure resilience against infrastructure outages, we also need to protect against self-inflicted wounds like bugs and bad deployments. Upon release we bring up a new set of proxy instances, deploy the code, and run our full test suite to make sure that each instance is able to proxy requests correctly. Once all instances are healthy they begin to go into the load balancer.
For companies with more stringent needs we support on-premise installations as well as a client-side SDK that can do instrumentation without the proxy.
Today we offer the service as a subscription. We hope to make it easy for teams to get visibility and control across all their integrations without having to build it themselves. This includes:
- Detailed logging on all of their third-party API calls
- Monitoring and alerting for increased latency and error rates
- Reliability features like automatic retry, circuit breaker and request queueing
- Rate limit and quota monitoring
We would love to hear from the community how you are managing your API integrations. Our story is a result of our experiences and how we dealt with them, but we know the HN community has seen it all. We would love to hear from you about problems you've had and how you dealt with them. Please leave a comment or send us an email to email@example.com. Looking forward to the discussion! <comment><USER2> We've been using API Tracker in production for few weeks now. The primary use case for us is to reliably handle webhooks from GitHub which our product relies heavily on (app installation, commit and pull request events).

Unfortunately, GitHub doesn't retry any failed webhooks and when our service goes down for a few seconds, thousands of webhooks fail and pile up. GitHub doesn't provide an API to query the failed webhooks and retry as well. We had to go through the painstaking task of visiting GitHub's app dashboard and click retry on each webhook, one by one.

With API tracker in place, we've updated our GitHub app's webhook delivery URL to send the webhooks to API tracker and they forward it to our services. In worst case when our service goes down for a while, API tracker gracefully retries all the failed webhooks.

Ref: [https://github.community/t5/GitHub-API-Development- and/Handl...](https://github.community/t5/GitHub-API-Development-and/Handling- GitHub-webhook-retry/td-p/25465)

<comment><USER3> Interesting use-case for it. Without prior knowledge of a solution like this I would have suggested you send the webhooks to a queue backed notification system (e.g. SNS backed by SQS) and subscribe to the event topic, but sounds must easier to configure and manage the way you instrumented it. Might be a good use-case for me to try out!

<comment><AUTHOR> This is something you can easily configure with our automatic retry function. We have an option to return a pre-configured response to the caller, and put the request in a queue to be retried until successful. This allows you to have a sustained outage while making sure all calls are eventually delivered.

<comment><USER4> > This allows you to have a sustained outage while making sure...

Re-driving queue backlogs at services recovering from sustained outages ends in tears almost always. Tread carefully. :)

<comment><USER5> Typically people use two pools for circuit breaking, with the limit set lower on retries: [https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overv...](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/circuit_breaking#arch- overview-circuit-break-cluster-maximum-connection-pools)

</comment></comment></comment></comment></comment><comment><USER6> There have been a number of players in this area throughout the years (Galileo [RIP], Runscope [semi-RIP], Newrelic just to mention a few) for the analytical part ... and countless more for the proxying part (Kong, Envoy, Tyk, etc)

Can you elaborate a little bit more where you place yourself in the market? Why should someone trust you over any of the bigger, older and more stable competitors? Thanks

<comment><AUTHOR> You're right that there are a number of proxy solutions out there, but most are focused on exposing an API for external consumption (i.e. API producers). We think that by focusing on outbound API calls we can go deep on features that make less sense in those products. The same is true for the analytics solutions (i.e. Newrelic). For example it wouldn't make sense for them to add automatic retry or request caching, but its still a common pain point with integrations and makes a lot of sense for us to build. Finally, some of the tools (i.e. Runscope) are meant for development debugging and don't solve the production pain point.

<comment><USER3> What you described in the first sentence is commonly referred to as an API gateway - protecting ingress traffic into a publicly accessible service/app (e.g. Kong, AWS API gateway, Ambassador, etc). Lately there's been a lot more generalized solutions in this category for inter-process communication via service meshes like Istio, Gloo, AWS AppMesh, and others - all of which seem to offer a solution that works for both internal traffic routing as well as external (when whitelisted).

Can you offer a description of your product that differentiates it from service mesh solutions? Did you build your own proxy software, or are you built on top of Envoy like many of the other available solutions?

<comment><AUTHOR> We are not built on top of Envoy and have built our own proxy.

Many of the service mesh solutions require you to deploy and manage them as an on-premise installation. Our primary offering is a hosted solution, but also offer a managed service for on-premise installations.

As you've correctly pointed out the service mesh solutions can allow routing of external traffic, but by focusing on the external calls there are features that make sense for us to build that wouldn't make sense in something like Istio/Gloo/AppMesh. For example, we can build an enhanced experience around third-party APIs to better understand the calls, errors, quotas, etc that are specific to that provider.

<comment><USER7> Why did you build your own proxy instead of using envoy? What short comings did envoy have?

<comment><AUTHOR> We wanted to architect a system that made it easy to deploy proxy nodes to multiple regions and clouds. We also wanted it to be easy to add functionality specific to our feature set. While we might have been able to achieve our goals by modifying an existing proxy, it made more sense to us to build our own. I have built proxies in previous companies and this was something I was very comfortable doing.

<comment><USER7> Can you expand on what specific part of envoy prohibited that?

Additionally, as other commenters mentioned, almost every company has rallied around Envoy and is spending considerable time/money making it better. If your solution isn't as performant as envoy, it seems like a poor architecture choice to roll your own, especially given the time/money constraints startups have.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> This is great, I can see the potential of something like this and am jealous I'm not the one working on it!

Don't take the pushback in the other comments too seriously. There is definitely an audience (myself included) who'd want a focus, specific tool

<comment><USER9> Ditto. I face the problem this solves every day and from time to time think about the fact someone must be trying to solve this problem.

</comment></comment><comment><USER10> We've had to build similar tools -- but one step further to make three different upstream services behave in a common way. We also added pre&post flight error checking for cases where the backend wouldn't behave nice.

Any plans to "commonize" some different-backends like Twilio / Plivo, or SendGrid, Mandrill, etc, etc?

Very nice work!

<comment><AUTHOR> Thanks for sharing your experience, we have heard similar things from other companies. We do have plans to create common interfaces for different services like SMS/email as you have suggested. This will allow us to seamlessly fail- over between providers to maintain uptime and performance without any action on the client part.

</comment></comment><comment><USER11> Congratulations on your launch! This is very interesting. I have a few questions. I apologize if your website answers these, but I couldn't find clear answers after a cursory glance:

Can you tell me more about how the on-premise installation works and/or is licensed?

Can it manage my authentication mechanisms for me? For example, can I configure it with my client side certificates or have it fetch and cache oauth tokens? We do this in our current solution and it is very nice being able to hide all these details from our applications.

Can it do request/response transformation at all? We have a lot of cases where we want to massage things a little here and there. I realize this might be out of the scope of what you are trying to do, but it would be a nice to have.

We currently do this sort of stuff with a cluster of IBM Datapower gateways. They perform very well but are expensive, difficult to configure, and somewhat opaque.

<comment><AUTHOR> The standard model for on-premise is an annually licensed managed service. We deploy, manage and monitor the platform on the customer's resources (usually AWS account).

Great questions on credential management and transformations. These are not in the offering today, but they are on our near-term roadmap and we are very excited about their potential. As you've alluded to, there's a lot we can do there.

<comment><USER11> Thank you for your response.

I'll be keeping an eye out for enhancements. We have to renew our Datapower licenses annually and are always on the look out for a replacement.

</comment></comment></comment><comment><USER12> It is a nice solution but I am weary of anything that proxies my traffic. Especially considering the legislative environment. I've been using Bearer [[https://www.bearer.sh](https://www.bearer.sh)] which does not use proxy but a library that hooks into the low level calls - It gives us a great view of what is going on with our third party API calls. You can filter out the calls that do not interest you and separate Production from Staging etc... I did not want to have to build the monitoring infra myself, not a core competency and for the money, it is cheaper to use an external service over 5 years vs. building in-house.

</comment><comment><USER13> Hi I have two questions:

1\. How can I be sure sensitive date sent via the APIs is secure / private etc?

2\. Is you reliability and availability 100%, because if I use you my app's availability is now only as good as yours. We've been bitten by cascading effects of outages of upstream cloud services, but something like this would knockout everything I guess if it was down.

</comment><comment><USER14> Have just signed up, was (yet again) looking for a solution like this for monitoring outbound API calls. Look forward to trying it

</comment><comment><USER15> [https://cloud.ibm.com/catalog/services/api- connect](https://cloud.ibm.com/catalog/services/api-connect) seems to do a lot of this for free. Probably could also use the community version of Mulesoft: [https://developer.mulesoft.com/mulesoft-products-and- licensi...](https://developer.mulesoft.com/mulesoft-products-and-licensing)

<comment><USER16> Two of the last companies I'd ever want to work with or rely on, other than that...

</comment></comment><comment><USER17> Congrats on the launch. I have a ton of 3rd party APIs I'm integrating with, so like you have been thinking about all the stuff I'll need to do to make it reliable in production.

What do you guys do for masking or encrypting sensitive data? I like the opportunity to log everything but a lot of what I'd want to log is PII or sensitive financial data.

<comment><AUTHOR> We have two approaches to securing this kind of data. Once you specify what fields you want secured we can simply mask it out, or we can hash the data in a way that allows you to search for it if you know the value you are looking for.

</comment></comment><comment><USER18> Started using apitracker a week or two ago; it's been great for logging requests and inspecting failed/slow ones. Haven't tried automated retrying yet, but excited to do that soon as well.

<comment><AUTHOR> Glad it's been able to help! Please let us know if there's anything else we can do.

</comment></comment><comment><USER19> Interesting service. Have built things like this a couple times. How is the on-premise version priced? Didn't see that on the site anywhere.

<comment><AUTHOR> Thanks! Our standard model for on-premise is an annual license and depends on some factors such as request volume and features.

</comment></comment><comment><USER20> Is this any different than Bearer.sh?

<comment><AUTHOR> Yes it is. Bearer relies on client side instrumentation. Today that is limited to just Node.js and Ruby applications. While we also support client side instrumentation, the proxy is an important element in our offering because it is language agnostic and enables a new class features that can only be implemented in the proxy (e.g. caching).

<comment><USER21> Hi, I'm the co-founder of Bearer.sh.

Indeed Bearer.sh works as a package (Gem, NPM) inside your application, and it automatically instruments your HTTP stack, meaning there are zero-code changes to do on your existing integrations to make it works instantly.

But more interestingly, since we're not a proxy at all, it means you don't have to trust us to deliver that very important API traffic of yours (who would?), offer a sub-millisecond impact on your performance and works with any public, private or crazy certificate or IP restricted APIs! APIs are a liability and dependence to your app, let's not add us to that list!

We're going to launch support for many other stacks soon, and also a whole new set of "active features" as you mentioned, by still beeing 100% NOT a proxy - stay tuned in the coming days :)

Feel free to try, we offer 1M API Call per month for free and you can quickly jump to 20M for $49 only.

We're super happy to see all of the interest around that space these days, let's change the API space altogether

<comment><USER12> You said it better than I did. That was one of the issues we ran into since we have third party APIs that require IP whitelisting, certs and VPNs, a proxy just won't work in that instance. Can't wait for the Python implementation...

</comment></comment></comment></comment><comment><USER4> Would it be right to say this is sentry.io meets envoy, grpc, and konghq? Super interesting. Congratulations.

How do I manage my API integrations, you ask?

Global Accelerator (GLA) is a key infrastructure piece for a HA service I'm building but for the data-plane. It is such a hassle-free but slightly expensive way to vend anycast IPs (no need to purchase ASNs and/or announce routes from colos across the globe) and have the traffic load-balanced to 25+ AWS regions, that I recommend it instantly to anyone architecting HA services. [https://fly.io](https://fly.io) and [https://stackpath.com/edge- computing](https://stackpath.com/edge-computing) are viable alternatives. Cloudflare announced MagicTransit which isn't as smooth as AWS GLA in terms of developer experience, whilst Azure and Google offer global-load-balancers, too, and may be even before AWS announced it in 2018? So, really, I think utilizing GLA is something folks should do if they run global HA services. The only issue with using NLB behind AWS GLA is the client-IP is not preserved. In our case, we needed it, so we had to get creative with sticky routing and port assignment (listeners) to do load-balancing / traffic-shaping.

Another HA trick I plan to employ is to use Cloudflare-Workers (200+ PoPs) to front https-traffic to our control-plane endpoints. It lacks observability, monitoring, and alerting unless you're on Cloudflare's enterprise plans. The rate-limiting option is expensive ($0.05 per 10k good requests). I'm sure there's no way to queue requests out-of-the-box, so I can very much see a need for what you've built, and where you guys fit in.

To be honest, I'd be surprised if firebase or API Gateway or KongHQ don't already do what you do, as well. Is that case? If so, keep at it. It is a real need. And as you point out, something that I've _had to_ build for every service and integration point.

A few questions (I went through your website and docs, but here I am):

\- How do you handle secrets that the clients might need to share with your service, like Apikeys or Access/SecretKeys?

\- Do you also push logs to the customers in addition to them pulling it from your endpoints / UI?

\- A bit curious about your logging, monitoring, and alerting infrastructure-- Is it ran on top of CloudWatch or Prometheus or Loggly or Elasticsearch or Lightstep or...?

\- Do you support proxying http/REST APIs only?

[https://autocode.stdlib.com/](https://autocode.stdlib.com/) which was discussed a few weeks ago here looks, to me, like a good addition to what you're building.

<comment><AUTHOR> Thanks for sharing your experience. We love GLA as well.

Great questions.

\- For sensitive fields that you do not want retained or searchable, we can mask them out.

\- We don't currently have integrations to push our logs to another service, but this is a good use case for us and it's on our near term roadmap.

\- We use Elasticsearch in the product, but we also use CloudWatch extensively for our own operations.

\- Right now we only support proxying HTTP requests, but are open to supporting other protocols.

<comment><USER4> Thanks a lot, Cameron. I'll watch this space [0] as you continue to add features and improve upon efficiency to pass on the cost savings to your customers :) All the best!

[0] I'd have opted for a newsletter, but I couldn't find any sign-ups forms for it.

</comment></comment></comment><comment><USER22> Is there an SLA roadmap?

</comment><comment><USER23> We at Moesif ([https://www.moesif.com/solutions/track-third-party- api](https://www.moesif.com/solutions/track-third-party-api)) released a similar tool in 2017 and found that many of our customers including Deloitte, UPS, Snap Kitchen, iFit, and Trung's previous company, Snap Kitchen were looking for a way to track APIs without the complexity of a full service mesh like Envoy. Especially if you're hosted in something that cannot run an on- prem service mesh or gateway.

We're a little different in that we also support agent-based rather than just proxy. Meaning we have an SDK that sits out-of-band.</comment>


Hypercapitalism: What you think about money is wrong* - <AUTHOR> http://www.hypercapital.info/news/2015/4/9/hypercapitalism-what-you-think-about-money-is-wrong

<comment><AUTHOR> I wrote the article and would love feedback.</comment>


Archivist Won't Call "Torture Report" a Permanent Record - <AUTHOR> https://fas.org/blogs/secrecy/2016/05/archivist-record/ <comment><USER2> Cached link: [http://webcache.googleusercontent.com/search?q=cache:Ith6HIW...](http://webcache.googleusercontent.com/search?q=cache:Ith6HIWTzgEJ:fas.org/blogs/secrecy/2016/05/archivist- record/+&cd=1&hl=en&ct=clnk&gl=us)

The ending is the clearest part:

Although the Archivist has independent legal authority to determine the status of federal records under the Presidential and Federal Records Act Amendments of 2014, he remains an executive branch official and he is not politically autonomous. In the face of FOIA litigation, which takes precedence as a practical matter, it actually is "routine" (or at least unsurprising) for the Archivist to defer to the Justice Department and to abstain from unilateral action.

If the ongoing FOIA litigation ultimately led to a determination that the Senate report is a "record" for purposes of FOIA, then it would be easy for the Archivist to concur. If not, then it would be more difficult, but not altogether impossible, for the Archivist to conclude that the report is nevertheless a federal record. "The determination of record status under the FRA and the Freedom of Information Act (FOIA), while not identical, is similar," the Archivist wrote.

In any event, while an immediate resolution of this dispute is foreclosed by the Archivist's refusal to intervene, the larger question of the status of the Senate report as a federal record remains open.

Legal technicalities aside, it would be astonishing if the full Senate Committee report were not preserved for posterity one way or another, and eventually published. Even if it is not the last word on post-9/11 detention and interrogation, and even if not every word of it turns out to be true and correct, the Committee report has already become central to public discourse on the subject. If it became possible to erase it from the historical record in some kind of Stalinesque act of suppression, then we would all have bigger problems to worry about.

<comment><USER3> > we would all have bigger problems to worry about.

What, like NSLs and defunding congressional watchdog committees?

Oh wait ...

<comment><USER4> Reference please!

<comment><USER5> If you're honestly interested, start with Google.

</comment></comment></comment></comment><comment><USER6> This is obviously pure politics on both sides of the issue since it is just a document and the whole thing is absurd.

In the era of the internet and "the cloud", the report is going to be available to everyone forever (if it was ever available in the first place).

However just like the lack of prosecution of bankers for the financial crisis, there is also no responsibility for torture on any level by this administration and likely the next.

Everyone from John Yoo to the people who actually did the hands-on are doing just fine and very well physically and financially.

And if Feinstein had not been pissed off by the CIA so much, she probably wouldn't even have a problem sweeping all this under-the-rug. She is quite the hawk and pretty much a Democrat in name only.

<comment><USER7> > _In the era of the internet and "the cloud", the report is going to be > available to everyone forever (if it was ever available in the first > place)._

Not forever. Only as long as there's enough people caring about it. Even if it won't disappear over the next years as companies shut down their cloud services and people don't move _all_ their data to new ones, it can and will effectively disappear when people lose "references" pointing to it. To find something on-line, you need an engine that indexes it, but more importantly, you need to be aware what to look for in the first place (and have a reason to). Link rot is a real thing too.

The cloud is one of the most fragile and short-term way of storing information humanity has ever invented.</comment></comment>


Why you should keep your goals to yourself. - <AUTHOR> http://www.wimp.com/goalsyourself/

<comment><USER2> Is it OK for wimp.com to be stealing video like this?</comment>


Ask HN Freelancers/Contractors: What rates do you have? - <AUTHOR>

This is mainly for freelancers, contractors, and, well, anyone who hires their services out to clients. What rates do you have, how do you differentiate, and do you charge more or less for different types of task?
And now for the background: I've been working with a Lawyer to get a standard contract and general terms written up for future client work, and the question about rates was asked.
"Normally," I said, "I will charge $X/hour for regular contracting work, and $Y/hour for very short notice or emergency work."
"All contacting work is worth the same amount?"
And that got me thinking: some stuff adds significantly more value for a client, and is much harder to do, where as other stuff isn't complex, doesn't add much value for the client, but needs to get done. Here's what I have been able to come up with so far for different rates:
* Standard Contracting rate.
* Emergency rate: Covers anything that would normally be done under the Standard Contracting rate, but which has been requested at very short notice. It will be higher than the SC rate to offset my own costs.
* System Architecture rate: Planning, designing, requirements discovery, and technical documents. This will be significantly higher than the SC rate because the value for the client is much higher for the time spent.
* Re-factoring rate: Cleaning out old code bases, removing old/legacy/un-used code, adding documentation, etc. This will be lower than the SC rate because it takes a long time, and is more of a "long term investment" type of job.
So what rates do you have, and do you charge more or less for them? <comment><USER2> When I worked at a consulting firm we liked a single rate. Don't paint yourself into a corner and waste your time by having a complicated set of rates especially if you are a one man/woman show. Take what you are considering as your highest rate, double it, (because if you are like 90pct of people I know your are probably under charging) and use that. (I'm only half kidding here)

The overhead to keep your complicated rate structure straight can be difficult for an organization and especially hard for an individual or one man show. More importantly it makes the sales process more complicated. You spend time laying out your complicated rate plan instead of getting them to agree to a proposal and SOW and giving you a nice chunk of money up front based on that estimate. If you are freelancing you absolutely should get a percent of the money up front especially for a new relationship. You can always offer people a _discount_ rate for larger commitments of work if you like - now you are doing them a favor. Set the expectation of availability early for short term emergency work and don't do an hourly rate at all for this if you can help it. Get good at estimating and give them a (high) project based price that reflects your costs for bumping them to the front of the line.

<comment><AUTHOR> So far the stuff that has qualified for the "Emergency rate" has been along the lines of "My server/website/software is down/badly misbehaving, and a simple re-start won't fix it. I'm bleeding money, please help." It's the type of thing where I don't (and they don't) know what it will take to fix it, but getting things running again (and fast) is important. I can't give a quote without being able to see the actual situation, so an hourly rate to just band-aid the problem makes sense. I'll usually follow up with "Here's what the cause was, this is what it will take to fix it _properly_, and I could fit it in next week. Would you like to get it fixed?", which has been a great success at gaining me more work and very happy clients.

In general, they are happy to pay the higher rate because when it gets to that situation, leaving it for longer will cost them more than paying a higher rate to get it running. Once it's done, then they're usually more than happy to talk about a longer term fix to ensure that it doesn't happen again.

</comment></comment><comment><USER3> I generally agree with sticking to a standard flat rate. I don't charge extra for off hours or anything else, but I also make sure the client understands what my availability is for after hours etc. In general, I try to set very clear boundaries with clients otherwise some will just abuse the hell out of you. I also do a minimum charge of 1 hour. So if you do call me in the evening I will charge you 1/hr regardless if it takes me 2 minutes or 58 minutes. Seems fair to me.

Also, I have started moving towards less hourly rates and more fixed cost bids if/when I can get good understanding of the task. In fact, I like to break it down in weekly blocks and charge for that deliverable. This way I am not playing hourly billing games, the client doesn't feel nickle and dimed and if I can finish in 20 hours, I have more time left to do other work. This makes my hourly rate much higher than what most smaller businesses would pay. They get shocked at an hourly rate, but when you give them a bill for delivering X functionality that they equate to Y revenue, it is a no brainer. This also lets you vary your rate as needed for whatever extra factors you might see.

</comment><comment><USER4> I charge a straight hourly rate for all, with it multiplied by 1.5 for off- hours and 3x for emergencies. The only type of work with a higher rate is knowledge transfer.

I don't get many off-hours or emergency requests, but when they happen they are almost always events which clearly require it. Overall, it has been a great structure.

</comment><comment><USER5> You can come up with different rates but at the end of the day, it depends on what the client thinks you are _worth_ and if they are willing to match it.

I am a one man consulting firm and the best I can do is to stick to my rate that I want from a client and let them decide whether they can match it or not. If you give too many options to clients, they will get confused. Keep it simple. If you really want to come up with different rates based on the situation, then _you_ decide it before telling the client. But always give one rate to the client.</comment>