Why I am always on the lookout for a PayPal alternative - <AUTHOR> http://www.yash.info/blog/index.php/uconomix/this-is-why-i-am-always-on-the-lookout-for-a-paypal-alternative <comment><USER2> Can't really see how this is Paypal's fault directly - this is just Paypal bowing to regulations - and if they didn't, they'd be in serious trouble. Chargebacks are a requirement by law. No keeping money out of a bank in India is Indian law. The two of these terrible laws fit together to create an awful experience, I agree, but the solution is to fix the laws. Any competitor to Paypal would be forced to do the exact same thing in India.

<comment><USER3> >>No keeping money out of a bank in India is Indian law.

And for a very good reason.

Tax evasion is very common in India. In fact the most generally know thing is, if taxes are not deducted at the source of the transaction they won't be paid ever. Big money people are a little different, they are small in number to monitor and their transactions can be traced out easily.

But small to medium scale traders and business hardly pay taxes. Some even pride in doing so. The best case I've seen among these guys is paying some thing like paying 5% of the taxes they are supposed to pay. I've asked a few people why they don't pay, and the answer comes simple. If they pay the right taxes once, given the business growth they have to pay a little more next year. So they use every trick in the book to pay as little or nothing at all.

Now if they are allowed to freely park money in places where it can't be traced easily(like these) they will have a field day.

May be if citizens show a little responsibility and do what they are honestly supposed they will get laws that trust each other. Until then if the government has policies to curb fraud you shouldn't look too surprised. After all, laws are optimized for the common case.

<comment><USER4> Just to be clear, paying little or no taxes is only government fail to collect them. It has nothing to do with responsibilities. There is no law in the world that forces anyone to maximize tax that it has to pay, so everyone has a right to pay as little tax as legally allowed.

<comment><USER5> The difference in your arguments is that the OP is saying they are paying 5% of the tax they are legally required (not allowed) to pay. It is just by using deceitfulness that they do not have to pay the full tax owed.

There is a big difference between minimizing your tax burden and pretending you dont have assets/revenue so you straight up dont have to pay taxes on them.

</comment></comment></comment></comment><comment><USER6> not exactly a paypal alternative but if more devs outside the US could use reasonable companies like stripe, braintree etc for CC processing we would.

until good CC processing companies go worldwide, what are the choices? just an idea, but I wonder if it is legally possible for an american company to provide the services of a payment collector on behalf of non-US devs. people could integrate stripe's API to pay to this company and they could handle wiring money worldwide for a small reasonable fee.

Even in countries like Australia CC processing is expensive and potentially restrictive to small startups and devs. Some kind of company in the US that takes payment on your behalf and wires it worldwide with reasonable charges would be a boon to countless devs and startups all over the world. That or bitcoin takes off and everyone just starts using it. Until then, Paypal is your payment buddy albeit a dodgy one that rips you off every chance it gets. Thus their immense power.

EDIT: Also worth pointing out that the guy above is being given a hard time by his country's laws and it's banking system - not just Paypal.

</comment><comment><USER7> I work in currency conversion, and honestly the conversion rates here do not look bad for an ad-hoc, small value transaction. The spread between buy and sell rates is how traders make profits. If there was no spread, or the spread was small, traders would need to take a proportion of the conversion as a fee. Some banks and third parties do this - they offer a really wide spread, and then take a proportion over and above that. Also, Paypal may not itself be interfacing with the currency markets, but may rather be using a third party intermediary to perform the actual currency trades.

<comment><AUTHOR> I have $200 of yours with me. I initiate the process of giving the $200 to you, like I take out my wallet. Then I stop before I actually give the money to you, I put my wallet back and then I tell you "Hey you know what now I owe you only $180!"

This is what it looks like - <http://i.imgur.com/GIaP5O2.png>

Does that look right?

<comment><USER7> Paypal has $200 of mine with them. According to the rules governing financial institutions in the country in which I reside and from which I have registered for their services, ther are required (by law, as a condition of their continued right to offer a payment service in that country) to pay that $200 into my account by close of business today.

My account is for Rupees, not USD. Because of the way the Banking system works, that currency must be exchanged so that it can reflect in my account. This exchange is performed at the current market rate, plus some surcharge of fees levied by Paypal's liquidity provider to perform the currency conversion, and by Paypal in order to cover the SWIFT interbank charges plus any backoffice administration they need to do to verify my identity. There are additional verifications they need to perform on the US side; for e.g. that my bank account is not on a Interpol, NSA, FBI, CIA or INS watch list.

That money is then sent, likely via the SWIFT interbank network, which levies a charge.

Those funds arrive at my bank, where my bank levies a charge. The money reflects in my account, and I see that 'Paypal' have given me a terrible exchange rate.

They haven't. They've likely given me a reasonable rate, because it is not in their interests to charge punitive exchange rates as it will drive customers to competitors.

My point is that there is a whole different level of processing and infrastructure hidden behind Paypal's facade that you are not privy to; all of it has people performing tasks to move the currency from a US account to a Indian account, and all of that requires a modicum of human oversight because of incredibly strict financial fraud controls.

Trust me when I say that the small markup Paypal is charging you is nothing compared to the level of bureaucracy you would run into were you to try to perform the above exchange manually.

<comment><AUTHOR> That would hold true if the transfer had been completed. PayPal is able to stop the process and credit my account back means that money has not actually left their system. I agree the underlying mechanisms are much more complex but I also understand that what we see in that screenshot is just entries in a database and no real transfer or conversion of money has taken place as yet. If it had happened a day later then I would accept the fact that the process was well underway and some money had changed some accounts.

The point is PayPal decides right at the time of beginning with the withdrawal how much in Rupees it is going to pay me. So if it decides for some reason it doesn't want to pay me, it should again give me back the same USD.

<comment><USER8> I'm not entirely sure I follow everything that's happening here, but it seems to me that what you're requesting would, if nothing else, allow a currency trader to use PayPal to conditionally do conversion only if they were making a profit. PayPal is doing the conversion at the time at which it is responsible for the conversion rate, which seems like the "right" thing to do. Admittedly, this results in subpar outcomes for people in India, but I'm not sure they can do anything different.

</comment></comment></comment></comment></comment><comment><USER9> In case anyone is wondering where the numbers come from, PayPal charges a 4% overhead to convert money to rupees on demand as part of an immediate transaction (such as a withdrawal). When the money was returned, he was given the more lenient "convert balance between currencies" conversion rate of 2.5%. I point this out, as the author of this article seems to equate them as PayPal's "pathetic conversion rate".

The chargeback, of course, is a cost of doing business: if anything, PayPal's chargeback rates are actually quite low (as they have such an extensive system for handling disputes internally) and as a seller of pure digital goods I've been amazed that I often win true chargebacks that are marked "unauthorized charge" (which really shouldn't happen: its really just buyer fraud) as PayPal argues the case on my behalf and can demonstrate "the user really paid for this".

What sucks, of course, is that the user got double-whammied on the currency conversion, but I really hesitate to blame PayPal for this... if anything, I blame the Indian banking system, which has decided to put in place the laws that state you aren't allowed to hold balances with your credit card processor; the result of this is that your balance in India has to be forced out of your PayPal account every day, even though that money could be charged- back at any time.

As for the money being credited back the first time and not the second, that's quite common: he didn't realize that fee existed the first time, so the customer support people there "let him slide" and credited everything back; however, the second time he really should have known that was going to happen... no one, to be clear, is forcing him to use PayPal; in fact, his country really doesn't want him to be using PayPal, and he's doing so anyway. If he were in a country that didn't have laws making it difficult to use PayPal, he wouldn't be having such a difficult time doing so.

Thankfully, this person does seem to understand that RBI is at least somewhat of a problem here: he even wrote an even angrier message about RBI making it nearly impossible for him to buy things from people online using PayPal.

[http://www.yash.info/blog/index.php/entrepreneurship/reserve...](http://www.yash.info/blog/index.php/entrepreneurship/reserve- bank-of-india-and-its-senseless-policies)

What I find ironic about this other article is that in this piece on PayPal he's angry that he can't just let his Indian bank handle things for him, but in his other article he's slamming the Indian banks and wishing he could use PayPal.

> Every time I spend $$ for something where I could have used my PayPal > balance I have to give a cut to some worthless Indian bank for using the > credit card!

To be clear: if he were in some other country, he'd be allowed to store a balance at PayPal in relation to his outstanding chargeback risk. Additionally, he'd be able to store his balances in his native currency. If he wanted to convert the currencies back/forth, he'd be able to do so on his own schedule and be able to do it to his outstanding balance (as opposed to while immediately moving funds), giving the flexibility to get the 2.5% rate (which really isn't that bad) for all conversions. In fact, he'd probably not have to do the conversions at all, as he could sell the software in his native currency and have the buyers do the conversion from whatever currency they have, rather than doing it from dollars on his end.

PayPal really does go to great lengths to make this stuff work and generally work well, but everyone is being screwed here by RBI's policies (which, to be clear, might have some underlying good reason I just don't understand because I'm not privy to India's political requirements): I mean, let's put it this way... he's still using PayPal, and yet he hates it that much? PayPal's not doing that badly here...

<comment><AUTHOR> I am the author and yes RBI and PayPal both are to be blamed here. I would like to hold balance in My PayPal account only because of a possibility of a chargeback or a dispute. I lament RBI for not allowing me to do that.

I lament PayPal because when they take $200 from me, they should return me $200 and NOT $180. I have not said anything about the chargeback charges. I did not pay anything for chargeback because I refunded the transaction. I DO understand that chargebacks are a part of business.

My grouse is with the ridiculous pretense under which PayPal duped me out of $24.99 (over two cancellations) in the name of currency conversion charges.

Take a look at this - <http://i.imgur.com/GIaP5O2.png>

Does it look like a fair deal from any angle?

//he's still using PayPal, and yet he hates it that much?//

Yes because I don't have any other options - at least for now. Indian Payment gateways won't allow me to charge in USD, and I can't use Stripe/Dwolla or any half decent system because I am not in the US or Europe.

<comment><USER3> No way is the RBI ever going to allow parking funds in a non-banking institution in a country where tax evasions are so high.

By the way they are not be blamed here, the fraud prevention policy is in place because fraud happens.

<comment><AUTHOR> Right, so they'd rather have companies incorporating in other countries for the sole purpose of being able to collect money from their customers! Seems legit.

For instance - [http://blog.freshdesk.com/how-to-incorporate-a-us- corporatio...](http://blog.freshdesk.com/how-to-incorporate-a-us-corporation- from-outs/#.UJjX-oYkrmJ)

That's an even better way to save taxes. Delaware has 8% tax. India has 30%. People won't even bring the money in India.

RBI is treating PayPal as some swiss bank account. Keeping all the USD balance in PayPal doesn't make sense. I have to bring the money in India because I need to pay the bills and salary and all. And the PayPal balance doesn't earn any interest. But when I have to pay the hosting charges or domain registration charges which are in USD why should I not be able to use some money from my PayPal account which is already in USD? RBI insists that money first come to an Indian bank and then used for paying abroad. Again costing me conversion fees every time the money crosses the border.

<comment><USER10> Its not just the black money, its consumer protection that the Government is keen on.

India Government just wants Paypal to behave like a bank if they are going to hold consumer;s money. If Paypal follows the regulation, they will end up paying interest on the money they hold. And they will forced to insure the amount.

And paypal works around this issue by pushing the money to consumers bank when it reaches the legal limit.

You can't blame the Government for this mess. Its Paypal that is working around the system.

<comment><USER11> Paypal is not working around the system: they are simply not a bank. They are a payment processor. Just think about what would happen to the fees that he already complains about if they had to insure the deposits.

<comment><USER10> And a payment processor should not hold the customer's money for a longer duration. That is what the Government is trying to push them into complying. Just like any other payment processors operating in the country, Paypal can also keep the money with them for just enough duration that is required to process the payment. After that they need to TRANSFER the amount and not hold it with them.

If the India Govt relaxes it for Paypal, multitude of such payment processors would start operating and one day you would see them disappear with people's money. Then again you will blame the Govt.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Why does PayPal have such enormous power? What's stopping other initiatives from getting enough traction?

<comment><USER13> > Why does PayPal have such enormous power? What's stopping other initiatives > from getting enough traction?

They have a huge amount of inertia because the average guy of the street has heard of them and can trust them to some degree.

Trying to get people to sign up with a new, unknown payment processor during checkout will have a strong negative effect on your conversion rates.

<comment><USER12> Sounds like a trust-issue. Perhaps that's it? Startups often fee they don't have do spend money on marketing. But a trust-issue is a good problem to have, branding can take care of that. First thing to do is convert 'trust -> faith & confidence'.

" _...there is also growing evidence that increasing numbers of people today are unwilling to engage in social or economic contracts based on trust. Globalization has arguably contributed to a loss of social connectedness in many developed and undeveloped nations by disrupting traditional employment patterns, and people who have seen their social networks disrupted may be reluctant to trust others.

Meanwhile the traditional family has been under assault by other social changes, and young people may find it difficult to even learn to trust. For many people, relationships based on faith or confidence may feel more comfortable than those based on trust._ Source (2005): <http://www.brandchannel.com/features_effect.asp?pf_id=263>

</comment></comment></comment><comment><USER14> Perhaps offer a variety of payment options to your customers and add a small fee to the methods that give you problems (like PayPal).

This will give feed-back to the customers about the convenience of these payment options and will give them an incentive to use a different method. (people love discounts)

</comment><comment><USER15> We used PayPay for our product <http://justmigrate.com>

It is a night mare if someone asks for refund after auto withdrawal and never change PAN details unless you are okay with 7 days downtime.

You missed another important point, we also got few users from India and thanks to RBI regulations using paypal we cannot accept payments from another Indian. Well just offered them free migration.

Also if you are targeting consumers in US they are little more confident paying with PayPal vs asking for credit card details. This is an important point, always keep PayPal as an alternate when accepting payments from US market.

</comment><comment><USER16> Today I received an email to dispute my authority by sending in them a proof of my indentity, address and statement of my bank or credit card.

What I found rather obnoxious was that they had records of my credit cards which I had deleted from their system years ago. The email clearly listed all the last four digits of all credit cards I had ever had on them, even though I currently have no more than one linked to my account.

Top of that my account is linked to a profile of some Chinese personel, even though I'm Finnish, leaves me without words to say.

</comment><comment><USER17> Does anyone have a good background on why PayPal is not subject to the same regulations as banks? Is it because they don't lend?

<comment><USER18> In the EU they are regulated as a (Luxembourg) bank. I assume you're talking about in the US?

</comment></comment><comment><USER19> It's this kind of bullshit from paypal and the banks generally that is providing wind beneath the wings of alternative payment systems which charge the true (much lower) cost of international money transfer... Great! Bring on a bitcoin future.

</comment><comment><USER20> Enough with this nonsense. Take the plunge and start using Bitcoin. Whatever risks and uncertainty Bitcoin may have for vendors is miniscule compared to the daily fleecing handed down by the likes of Paypal.

</comment><comment><USER21> Does anyone know a good alternative to PayPal?

<comment><USER22> Depends on which market you target. In Russia and some of the other former soviet countries there is WebMoney which has low fees (0.8% for transactions, unknown for withdrawals from WebMoney) and as far as I know does not screw over its customers as much. In Sweden there is Klarna for letting ordinary people pay with invoice. In many countries there are options where you can use your internet bank to pay.

And if it is credit card payments you wish to receive it is worth looking into a getting an account at a payment processor.

</comment></comment><comment><USER23> So, I'm an asshole if I purchase your product and decide later to do a chargeback (you don't even have a chargeback policy or a policy at all).

Apparently, you are not the nicest person to deal with on earth, and you are complaining about PayPal because _your_ country laws are complicated?

Also, exchange rates are indicative. There is always a middle men when you are exchaging currencies, and he makes money by charging that rate.

<comment><USER24> I wonder if you're confusing refund for chargeback. Chargebacks are often used by people who a) use the product for a while, b) decide they want their money back, c) know the vendor won't return their money as there's no real reason to so d) call up their credit card company instead, dispute the charge, get their money back and see the vendor lose that sale + get hit with a $25 chargeback fee.

<comment><USER25> That's a bit one-sided, don't you think? They're also often used when companies fail to provide the product/service that was paid for, or when the charge was unauthorized. That's what it's there for. The author doesn't say why the chargeback was made so I'm not sure why we're assuming it was fraudulent. The software site promises a lot of features and it's entirely possible that the buyer required one that didn't work as advertised. It's also possible that the credit card used was stolen, which would make the original buyer, not the person doing the chargeback, the "asshole".

</comment></comment></comment><comment><USER26> @yashg FYI your blog prevents zooming on tablets and small devices; could not read.

<comment><AUTHOR> Yeah, need to change the theme...

<comment><USER26> Just remove the < meta name="viewport" ... > line.

</comment></comment></comment><comment><USER27> Easier solution:

Have a US based paypal account.

Yes it works way better, it is not a safe haven from chargeback but the service and US laws are more stable.

More stable = the laws does not change so much as the non-english countries. Maybe it is the common law, I do not know. But there is a reason the whole bank system power is in common law powers.

<comment><USER28> Wouldn't you need a US bank account & US taxpayer ID to make that happen? Good luck getting those from India in the wake of the Patriot Act, etc.

<comment><AUTHOR> Not that difficult. People are already doing it and I too am seriously considering it. [http://blog.freshdesk.com/how-to-incorporate-a-us- corporatio...](http://blog.freshdesk.com/how-to-incorporate-a-us-corporation- from-outs/#.UYjmScqT7cO)

</comment></comment></comment><comment><USER24> What would you do if PayPal wasn't in India?

<comment><USER29> I imagine he'd have to use a domestic merchant account, and post his prices in INR instead of USD. He'd lose customers who don't understand non-USD prices or think it looks scammy.

<comment><AUTHOR> Yes. When I say the price is $29, people expect to see $29 on their credit card statement. $28.xxx will make them suspicious.

There's a reason why Apple rounds prices on App store to nearest .99 in local currencies so people pay exactly what they see.

</comment></comment></comment><comment><USER30> Venmo.com

that is all

<comment><USER31> Venmo is doing what PayPal started off doing: mobile payments between users.

PayPal, in this lament, however, is acting as a payment processor for someone selling something. Venmo doesn't seem to do that.

</comment></comment><comment><USER32> dont use it ... end

</comment><comment><USER33> Whats the complaining about for fucks sake! Our company had 7000 euro frozen for 6 months while those skullheads were deciding whether to give us our money and not telling us why they are doing this Then they proceeded to close my personal account simply because I was the company director

Thats for a 6-7 year old or so hosting company that has always been in profit

Maybe more Indians like the above guy start using bitcoin, the world would be a fucking better place without Paypal

<comment><USER34> I guess you won't complain when I cut off one of your arms, since some other guy lost all four limbs in a car accident...

Unfortunately, even if he accepted bitcoin, probably less than a tenth of a percent of customers would pay with bitcoin. I agree though, that would be better.</comment></comment>


Show HN: My project Se.cret.ly --one-use short links for secret resources - <AUTHOR> http://se.cret.ly My first "real" web app! I appreciate any comments/suggestions.<p>Also I am available for hire. Contact me at www.sambolgert.com <comment><USER2> For all we know, you could be secretly storing this data as it passes through. How can a user trust that you aren't?

<comment><AUTHOR> I never thought of it like that I guess I consider myself a trustworthy person. Deleting data right away is in my best interest at this point because it keeps my hosting down. Less datase usage and less AWS usage. I could put up a privacy policy but I doubt that would convince everybody.

</comment></comment><comment><AUTHOR> I appreciate any comments or suggestions. Thanks HN!

<comment><USER3> I hate to say it, but I'd try to find a new domain if possible. With domain hacks like this, They feel a bit dated, but worse, I never remember where the splits are.

Sec.ret.ly? Se.cret.ly? S.ecret.ly?

Also, how big is the use case? I don't think one load URLs are something I'd ever really want. What if they accidentily closed it?

And it doesn't prevent sharing, since they could just save it and re-upload.. Basically, either I trust them, or I don't. I don't see where a one-use URL helps.

<comment><AUTHOR> I think the best use-case is when you're chatting with someone and want to quickly send them something you wouldn't want to send unencrypted. A password or some image of a prototype. Instead of posting it to a public site and just waiting to delete the image, or text.

As for the domain, my goal was to keep it as short as possible. The root domain cret.ly works as well so I could just downplay the "se." to prevent confusion.

</comment></comment></comment><comment><USER4> "immeadiately" should be immediately.

<comment><USER4> The red (such as in "Send a private...") is hard to see. Needs more contrast. Same with the footer text. Use this to check for compliance: <http://snook.ca/technical/colour_contrast/colour.html>

<comment><AUTHOR> Nice catch on the typo. Thanks for the color help. On my monitor it there's more contrast but I just tried it on some friends computers and I see what you mean.</comment></comment></comment>


Twitter got hacked? It looks like a very big one. - <AUTHOR> https://twitter.com/search?q=twitter%20hacked&src=typd&f=realtime All my followers got direct messages. <comment><USER2> It's just a new spambot. So far, none of the "high profile" accounts have been having trouble.</comment>


Machine Learning to Identify Environmentally At-Risk Communities in the U.S - <AUTHOR> http://arcg.is/2j5jEIS <comment><USER2> It's useful, but very laggy. And the raw(?) data in the popups don't have any units or any comparison values/indicators. "DieselPM 97.57" \- could be awesome, average or awful, e.g. lowest/worst percentile would be good.

</comment><comment><USER3> For anyone interested in the paper outlining the ML methodology used to create the visualization:

(pdf) [http://cs229.stanford.edu/proj2016/report/ShenWilson- WhereCa...](http://cs229.stanford.edu/proj2016/report/ShenWilson- WhereCanCleanTechnologyHelp-report.pdf)

</comment><comment><USER4> I was confused when I first visited: the initial view (tried Chrome and Firefox) makes it look like the only hazardous areas of the US are around Los Angeles and... Idaho/Montana?? If you zoom in a lot of other hazard-blobs start rendering.</comment>


CockroachDB Passes TPC-C at 100k Warehouses, 100 times more scalable than Aurora - <AUTHOR> https://www.cockroachlabs.com/blog/tpcc-100k <comment><USER2> Looks like some good work. I always thought of Aurora as a read optimized architecture due to its strategy of scaling via replication in comparison to cockroachDB which looks like a cluster where data is actually partitioned into different nodes with some configurable level of replication. I wonder if amazon has any equivalent database cluster designs in the works.</comment>


GapList – A Lightning-Fast List Implementation - <AUTHOR> http://java.dzone.com/articles/gaplist-lightning-fast-list <comment><USER2> This is often how text buffers are implemented in editors. Since most text edits are contiguous, the gap means you don't keep shuffling memory around with each insertion and therefore it's extremely fast. I think it dates back to a pretty early version of emacs, maybe even before.

For anyone interested in a C version, I wrote this a while ago, YMMV: [https://github.com/jaimz/core_ds/blob/master/MxStringBuffer....](https://github.com/jaimz/core_ds/blob/master/MxStringBuffer.h)

<comment><USER3> Some stylistic remarks:

\- _MxStringBuffer need not be defined in the header, a forward declaration would be sufficient (a.k.a. encapsulation).

\- the two #defines can be removed form the header, too.

\- I wouldn't try to typedef away a pointer (as in typedef struct _MxStringBuffer * MxStringBufferRef) but either use the pointer (MxStringBuffer* ) or create a handle: struct MxHandleStringBuffer { _MxStringBuffer * impl; };

<comment><USER4> Pretty jerk response to someone sharing something for free.

It's on github. Post a pull request or keep it to yourself. Especially as your comments are stylistic.

<comment><USER5> Why is it a jerk response? He took the time to look at the code and offer suggestions. That hardly seems like a negative thing.

<comment><USER4> If I was sharing code and the response I got was "you should dot your i's and cross your t's" instead of "thanks for providing functional code for free" it would make me reconsider sharing more in the future.

<comment><USER2> Meh. I'm sure his comment was well-intentioned: If you spend most of your time communicating with computers then your communication with humans can sometimes tend toward the 'abrupt', after this long in the industry I'm pretty used to it.

<comment><USER3> > Meh. I'm sure his comment was well-intentioned

I'm surprised about the possibility of misunderstanding.

BTW, the code is 'open source' and copyrighted: I have found no license to use it freely.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> This appears to me to be an implementation of a gap buffer:

<http://en.wikipedia.org/wiki/Gap_buffer>

I actually just implemented one in Python on top of the array module, planning to use it in a text editor:

<https://github.com/jasontbradshaw/gapbuffer>

</comment><comment><USER7> I wonder how the GapList performance compares to unrolled linked lists.

<http://en.wikipedia.org/wiki/Unrolled_linked_list>

</comment><comment><USER8> I find it odd that "get" is faster on a GapList than an ArrayList. Surely "get" on an ArrayList should be unbeatable.

<comment> Tuna-Fish from GapList.java:get // A note about the inlining capabilities of the Java HotSpot Performance Engine // ([http://java.sun.com/developer/technicalArticles/Networking/H...](http://java.sun.com/developer/technicalArticles/Networking/HotSpot/inlining.html)) // The JVM seems not able to inline the methods called within // this method, irrespective whether they are "private final" or not. // Also -XX:+AggressiveOpts seems not to help. // We therefore do inlining manually.

GapList.get inlines everything, including the rangechecks. ArrayList has two calls to functions.

<comment><USER9> Out of curiosity, how do you go about finding out if your code is inlined or not?</comment></comment></comment>


The Real Story: First Wave at Omaha Beach (1960) - <AUTHOR> http://www.theatlantic.com/doc/196011/omaha

<comment><USER2> Here's a relevant piece from the (incredible) story:

Inland from Vierville about five hundred yards lies the Château de Vaumicel, imposing in its rock-walled massiveness, its hedgerow-bordered fields all entrenched and interconnected with artilleryproof tunnels. To every man but Taylor the target looks prohibitive. Still, they follow him. Fire stops them one hundred yards short of the château. The Germans are behind a hedgerow at mid-distance. Still feeling their way, Taylor's men flatten, open fire with rifles, and toss a few grenades, though the distance seems too great. By sheer chance, one grenade glances off the helmet of a German squatting in a foxhole. He jumps up, shouting: "Kamerad! Kamerad!" Thereupon twenty-four of the enemy walk from behind the hedgerow with their hands in the air. Taylor pares off one of his riflemen to march the prisoners back to the beach. The brief fight costs him three wounded. Within the château, he takes two more prisoners, a German doctor and his first-aid man. Taylor puts them on a "kind of a parole," leaving his three wounded in their keeping while moving his platoon to the first crossroads beyond the château.

The chateau looked untakeable, and perhaps it was. But they tried anyway, got lucky and escaped largely unscathed. Had they not tried, they would never have gotten lucky.

</comment><comment><USER3> This is an engaging read, but the text doesn't square with the introduction. Marshall starts by saying that "disproportionate attention was paid to the little element of courageous success in a situation which was largely characterized by tragic failure."

Perhaps at the time (this was written in 1960) the account contradicted the common view, but the second half of the piece seems to me an example exactly what Marshall criticizes in the introduction.

<comment><USER4> 31 paragraphs detail the men who tried and died, while the last 13 paragraphs are more positive, detailing a group of men who tried and lived. I'm not clear how you feel that he is paying disproportionate attention to courageous success. That he wanted to end the article on a positive note meets my approval if not yours. Frankly, I needed a little uplift after those first 31 paragraphs.

<comment><USER3> I thought it was a great article, I just found the introduction a bit incongruous. The title of the piece is "First Wave at Omaha Beach," but all discussion of the first wave is concluded by 40% of the way through.

By the conclusion, which should be wrapping up the thesis of the article, the first wave seems forgotten and those final 13 paragraphs could have been lifted straight from the writings that are critiqued in the introduction.

That's my perspective today. In 1960 this might have been much more of a break from the established narrative, and even fairly shocking.

</comment></comment></comment><comment><USER5> I still don't understand how anybody could survive on the beach. Where did they hide?</comment>


MonetDB – Column-store database - <AUTHOR> https://www.monetdb.org/Home <comment><USER2> If you're interested in reading more about the general design of column stores, I can recommend [0] as a great place to start. It also compares design decisions made in MonetDB to other column stores.

If you want to look at simple code after the reading, I'm slowly implementing a naive column store over at [1] in golang. The overall structure isn't flexible but the individual columns are quite portable. It has a number of tests and benchmarks using a few months of MTG price data I had sitting around.

[0] [http://db.csail.mit.edu/pubs/abadi-column- stores.pdf](http://db.csail.mit.edu/pubs/abadi-column-stores.pdf)

[1] [https://github.com/Everlag/naive- columstore](https://github.com/Everlag/naive-columstore)

<comment><USER3> Is there anything special about the 'store' part of column stores? As in, is their store better in some way than for example splitting your PgSQL tables into key-value tables?

And with regards to the constructing of SQL queries over the column stores as MonetDB/SQL does, is it more performant than what I described on PgSQL and doing the query with a bunch of JOINs between the various attribute tables?

I know there's a lot been written about column stores and there's some very interesting stuff out there (I particularly like MonetDB/XQuery, but sadly it was discontinued), perhaps a short answer to those questions might inspire some more interest in them.

<comment><USER4> The store part: A columnstore enables some pretty awesome compression to be put in place, especially in data warehousing workloads. For large, low- cardinality fields, a dictionary encoding can give great compression. Another common data pattern is large runs of repeated values (thousands of entries on the same date), which can be compressed with run-length-encoding very well.

These are two methods utilized in Microsoft's Vertipaq engine (behind SQL Server columnstore indices and SSAS Tabular models). I call it out specifically, because this is the technology I am familiar with, but I expect similarities elsewhere.

Decreasing the memory footprint decreases the hardware requirements and decreases the amount of time required to process the data, which is a boon when many of your queries are typified by a full table scan.

Typically we see 7x-10x compression of Vertipaq data compared to uncompressed SQL tables.

The use case where columnstore engines shine is not OLTP, so a lot of traditional RDBMS use cases don't see a lot of benefit.

I'll repeat one item - if you can describe your access patterns as consisting mostly of table scans (or at least large index scans), rather than seeks, you will likely be able to find benefit from a columnstore engine. This is not to say that there is no other use case.

Edit: I think Everlag summarized it better in a sibling post, but also sparked another thought about differences between row-based and column-based storage.

Adding columns to a logical SELECT statement in a columnstore imposes a much higher load than in a row-based table. In a traditional RDBMS, once you've gotten to the row's page on disk/in memory, it is essentially free to get 1 or N fields in your resultset. I.e. Accessing N fields is O(1).

Since a columnstore does not necessarily store each field contiguously on disk/in memory, it is closer to O(N) in the size of the field list in the resultset.

I wouldn't quote me on the algorithmic complexity of the two, but it's enough for intuition.

<comment><USER5> >>if you can describe your access patterns as consisting mostly of table scans (or at least large index scans), rather than seeks, you will likely be able to find benefit from a columnstore engine.

I think this is very accurate for first generation column stores, but some of the newer research systems are addressing this issue with technologies like behind-the-scenes indexing.

<comment><USER4> This is interesting to me. What is the indexing strategy that is utilized?

To me the challenge is that the values making up a row are stored non- contiguously. The best case scenario is that a row of N fields requires N data accesses. This is assuming that you can index directly into an array or similar structure with constant access time.

Row-based storage means that you get all fields for "free"when accessing a single row, since the DB engine accesses a page at a time.

This is my understanding of the problem - I am very interested to learn what I'm missing if you have any good articles to share.

<comment><USER6> HBase + Phoenix is the closest I know of. Though, the cost of covered indexes is duplication. Phoenix also provides local/global indexes, giving an optimization choice b/w read heavy vs write heavy patterns

<comment><USER4> Interesting. Do you have any articles to point to explaining the strategy? If not, I can go digging myself now with direction.

Thanks!

</comment></comment></comment></comment></comment></comment></comment><comment><AUTHOR> I think one of the most interesting parts of this project is that the query language is actually Monet Assembly Language, and their SQL implementation just compiles down to that. There's enough documentation to write your own query language for it—including other paradigms like K and Datalog.

</comment><comment><USER7> We used this in production at my previous role and it was fantastic. There are a few rough edges but it became markedly more reliable over the 2 years or so we used it. It handled huge (well over 100KB) queries generated by SQLAlchemy with ease and was lightening fast.

We were using it as part of a custom BI tool for portfolio risk analysis. The data was mastered in postgresql and loaded into MonetDB for OLAP stuff.

The developers are pretty responsive to questions and bug reports.

<comment><USER4> Do you know if it's possible to expose an MDX or similar interface to MonetDB for a BI purpose?

I see many references to being able to define your own language, so I wonder if this has been done. I don't see anything explicit when looking through the site.

I ask because many popular visualization and reporting tools can natively generate MDX queries.

<comment><USER8> It can be done through Mondrian OLAP. See mondrian-rest [0] for an example implementation.

[0] [https://github.com/jazzido/mondrian-rest- demo](https://github.com/jazzido/mondrian-rest-demo)

<comment><USER4> Cool! Thanks.

I had heard of Mondrian, but didn't think to check from that end if it could use MonetDB as a back end.

</comment></comment></comment></comment><comment><USER9> If anybody else has been searching for the license, it's Mozilla Public License 2.0. See [http://dev.monetdb.org/hg/MonetDB/file/tip/license.txt](http://dev.monetdb.org/hg/MonetDB/file/tip/license.txt)

</comment><comment><USER10> I tried doing a proof of concept with this and some production data a couple years ago. Reading in a CSV file gave error after error after error. I eventually gave up.

<comment><USER11> Sorry to hear that! We have recently overhauled the CSV importer and added a "BEST EFFORT" flag to it. Perhaps its time to try again?

</comment></comment><comment><USER12> I tried it a couple of years ago. They were some rough edges, but something I was really eager to see working was their sub projects Datacell ( you can see a pretty cool demo of it there [https://www.youtube.com/watch?v=Z36ftaItX1c](https://www.youtube.com/watch?v=Z36ftaItX1c) ). Unfortunately it was not at all ready and this sub project was abandoned. A distributed version of MonetDB with Datacell working would be an absolute killer in the OLAP oriented databases.

</comment><comment><USER13> Also checkout Actian vector, a super fast analytics database built by a team under Peter Boncz

</comment><comment><USER14> I got drawn to it due to integration with R, but that area is still fairly lacking and buggy. Installation was unsuccessful. Would be nice to see improvements on this.

<comment><USER11> Could you be more specific? What went wrong?

<comment><USER14> I was drawn specifically to the integration. It's been a while, but I tried to get db integration with some files I was loading. Really didn't pan out as the tutorials showed. Will look into my code at work to see if I have examples.

</comment></comment></comment><comment><USER15> I used this as part of an Analytics BI project years ago. The biggest problem for me was dealing with the optimistic concurrency model.

We ran into enough issues with partial writes during rollbacks due to failed transactions that we eventually had to abandon it in favor of Infobright. Having said that queries were ridiculously fast for OLAP workflows involving millions of records.

<comment><USER16> Normally for OLAP workflows you want your updates to either be idempotent or be tagged with an id that identifies the ETL job they generated then (very helpful for auditing and related functions), or have a kind of "build and swap" model to ensure availability. That, and performance concerns, mean a lot of OLAP servers consequently often have very limited support for transactions.

</comment></comment><comment><USER17> "column store technology as pioneered in MonetDB" ???

wtf? MonetDB pioneered column store technology? what else have they pioneered?

<comment><USER18> Are you disputing their claims?

<comment><USER19> Setting all the details aside, there are about 30 years between the first column-oriented database and MonetDB. Databases are a really well and early researched area of computer science and many ideas existed at least in the academic area for decades before they saw widespread adoption. Another example is what we now label NoSQL databases, they also already existed in the 1960s.

 _MonetDB in its current form was first created in 2002 by doctoral student Peter Alexander Boncz and professor Martin L. Kersten as part of the 1990s ' MAGNUM research project at University of Amsterdam._ [1]

 _TAXIR was the first application of a column-oriented database storage system with focus on information-retrieval in biology in 1969._ [2]

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

[2] [https://en.wikipedia.org/wiki/Column- oriented_DBMS](https://en.wikipedia.org/wiki/Column-oriented_DBMS)</comment></comment></comment>


Ask HN: Resources for checking if writing sounds contemporary - <AUTHOR> I have a mentee whose native tongue is French, and for whom English is a bit of a challenge (although it's passable). We're both in the U.S.
He's in the process of applying for graduate academic programs.
I've offered to go over his application materials to offer suggestions for improving them.
His application letters are full of very flowery English. I'm not sure if this is because he's translating from French to English in his mind, or whether he's using something like Google Translate. I haven't yet asked him.
I want to nudge him towards some resources online where he can check his writing sentence by sentence to see if it sounds contemporary.
A website that was recommended on HN a while back was: Hemingwayapp.com . I've never tried it myself but it seems like something along the lines of what I'm looking for.
My Ask: I'd like your suggestions for other similar resources that could help this person. <comment><USER2> Grammarly is a fairly good resource.</comment>


New Remote-First Formula and Updated Salary Calculator - <AUTHOR> https://open.buffer.com/salary-formula <comment><USER2> Wow, this is really terrible. This looks like a PR explanation for why they're slashing everyone's salaries. A cursory glance shows everyone either staying the same or dropping.

> One of the toughest decisions we made with the new formula was to remove the > annual 3% loyalty increase given to teammates for each anniversary from > their start date.

> We looked at a lot of options and in the end decided to remove it as it > created an unsustainable, compounding affect on pay.

3% is at or just above inflation. If you can't afford to give these raises, you will see severe wage stagnation and, hopefully, a mass exodus of employees elsewhere.

<comment><USER3> This is delusional. How does someone have the nerve to put a paragraph like this in a blogpost about how they're giving almost every employee a paycut?

      The question on everyone's mind was "Can we afford this?" and "is this sustainable?" When we sought input and advice from those outside of Buffer we also were asked, "Why would you pay your team members with more generosity than you need to?" As it turns out, our answers are: Yes, Yes and because we believe it's the right thing to do.

<comment><USER4> except the CEO and the director of people. their salaries magically stayed exactly the same

</comment></comment></comment><comment><USER5> I know this is cynical, but this really just reinforces my suspicion: the open salary thing is actually an attempt to underpay through a formula that's presented as objectively fair. Over time, it ends up gravitating your workforce towards average or below-average performers. There's no room for top talent here, because there's no subjectivity in this formula.

If you're a fantastic dev (or whatever), why would you work here when other companies will pay you a lot more?

<comment><USER6> As worker in Eastern-Europe, their salaries look totally awesome to me. You'd be surprised for this money how many good people you could find.

<comment><USER5> Let me be clear: from one perspective, I get paid a _ridiculous_ amount of money for what I do. I push buttons and think for a living. I spend a few hours per day doing it, I really enjoy it, and I can do it anywhere in the world from my laptop.

It's _crazy_ that someone is willing to pay me $100k / year, and I'm super grateful for that. Really.

However, that doesn't mean that $100k / year (or whatever the minimum I'd be excited about) is the market rate. If ten other companies would pay me $300k, then I should go work there, right?

There's no speed limit. Just because someone is willing to pay you way more than you ever dreamed doesn't mean you should shun any more than that. Do your best and go to where you're valued the most.

<comment><USER6> I get that, my point is that with their "lower" salary I could get the best of both worlds like staying in my current city (Budapest) and earning as much as a good CEO here.

I get offers from companies, but if the job/product is boring, a higher salary does not justify the switch for me.

I don't disagree with you, I tend to gravitate towards a high pay :) We will soon have a salary formula refactor too, but I think the raise might be a rounding error compared to remote pays.

</comment></comment></comment></comment><comment><USER7> Initially when I saw this open salary approach and especially the calculator I was intrigued. But you cannot make salaries into a formula and get 100% good results.

The approach Basecamp (37signals) has with picking a location, then paying people based on 95% percentile (top 5%) market rate regardless of where they live is just much easier to explain to employees than some arbitrary multiplier thing that just leads to endless discussions.

[https://m.signalvnoise.com/how-we-pay-people-at- basecamp-f1d...](https://m.signalvnoise.com/how-we-pay-people-at- basecamp-f1d04f4f194b)

<comment><USER8> I think a multiplier is fine as long as it's for where the person actually lives, and is based on the actual overall COL as opposed to "well this isn't SF or NYC we we're automatically chopping 15-25% off your salary lolol"

<comment><USER7> i find cross country comparisons that lead to multipliers very hard and often arbitrary, because of differences in taxes, social security, health insurance and of course the exchange rate.

</comment></comment></comment><comment><USER9> Why do companies continue to pay out higher salaries to devs in high cost of living areas? In this case, their payscale pays out 30-50K more in high cost living areas vs low cost areas.

Rather than blow revenue rewarding bad life choices, offer to move them to an area with lower costs of living. Do that for only 10 employees and you have 300-500K EVERY SINGLE YEAR to re-invest into your company. In practically any other industry, this kind of saving would be obvious.

<comment><USER10> Because if you do that, they'll find another employer that doesn't force them to move.

Living in a high cost area is not a "bad life choice".

<comment><USER11> I moved out of a high CoL area to somewhere I actually enjoy living. And brought the salary band with me.

No chance I'd work at Buffer, given they'd halve my salary because of my zip code. Other remote jobs don't. No brainier.

<comment><USER12> They state they pay 85% for Average CoL area and 75% for Low CoL area. So they wouldn't halve a developer's salary who moved from San Francisco to somewhere else. Working in San Francisco gets 100%. Now I don't know how their SF salaries compare to other companies though.

<comment><USER8> @imsofuture said they'd halve _their_ salary, which is likely true. Every remote salary calculator I've ever used, even being generous with my qualifications and the vague dropdowns like "below average or above average experience" gives me a rate 15-40% below what I'm making now, even for the next level up.

</comment></comment></comment></comment></comment><comment><USER13> Another company that does open salary calculations is Gitlab:

[https://about.gitlab.com/jobs/developer/#compensation](https://about.gitlab.com/jobs/developer/#compensation) (this is a random developer job, you can check out other positions @ [https://about.gitlab.com/jobs/](https://about.gitlab.com/jobs/))

Here's the feature ticket: [https://gitlab.com/gitlab-com/www-gitlab- com/issues/831](https://gitlab.com/gitlab-com/www-gitlab-com/issues/831)

Disclaimer: I don't work for Gitlab, but I am a pretty biased rabid fan.

<comment><USER14> This is ~30% under market.

<comment><USER15> Yes, that's what I get also. The calculator is way off. I can't imagine them holding employees for more than a few months or year.

</comment></comment></comment><comment><USER16> There is a lot of typical HN negative analysis in this discussion. Let's step back and applaud the fact that this is open. Who else does that? People don't do it because they are afraid of this type of negative analysis. This is a very cool comparison for those who don't have concrete numbers to take into HR. Thanks for sharing Buffer!

<comment><USER5> Maybe they _should_ be afraid of this negative analysis. You don't get a pass on bad decisions just because you're making them openly.

From my cursory glance, I have a bunch of problems here:

1) Most egregiously, it looks like they're slashing a bunch of salaries. Not the CEO, of course, but a lot of others seem to be going down. I would be immediately headed for the door in that scenario. Talk about a way to keep only the poor performers who can't get another job.

2) Related to the above, what signal does this send to future hires? "We'll pay you $X based on this fancy formula...until we decide to change the formula and slash your salary by 20%."

3) Large COL adjustments make no sense to me. So I work for a remote company and choose to live somewhere cheaper and they think that the value I'm providing is less? The end result of this is that remote devs get screwed on average, while the best remote devs avoid companies like this, rightfully so.

4) I didn't look very carefully, but they definitely seem to be underpaying in general. An advanced engineering manager (mobile) in a HCOL area gets $145k? I'm a senior mobile developer and I'm pretty confident I could significantly outearn the CEO if I lived in SF or NYC.

<comment><USER17> > 3) Large COL adjustments make no sense to me. So I work for a remote company > and choose to live somewhere cheaper and they think that the value I'm > providing is less? The end result of this is that remote devs get screwed on > average, while the best remote devs avoid companies like this, rightfully > so.

Ya I don't get this logic. High COL areas are high because there are _lots_ of perks living there. It is much more desirable to live in SF than to live in East BF Mississippi. You are basically rewarding someone by living in a high COL.

When selecting remote jobs, I'm looking for compensation for the value I bring. The dollars I earn from my value should be up to me how to spend them: living in SF with all of the glorious food and such or living somewhere cheaper and saving money to retire earlier but having to pick between Applebees or Fridays ( _vomits_ ).

<comment><USER18> > living in SF with all of the glorious food and such or living somewhere > cheaper and saving money to retire earlier but having to pick between > Applebees or Fridays (vomits)

Come to Dallas. You get to enjoy low COL (while it lasts) and have your pick of Sichuan, Thai, Indian, Vietnamese, Mexican, barbecue, etc. restaurants.

</comment></comment></comment></comment><comment><USER19> This is interesting. One implication is that if I was in the dating market, I'd be worried my date would google me, find that I work for buffer, and instantly know how much I make. While that information isn't exactly super important or secretive, I just think I'd rather reveal that kind of info on my own terms.

<comment><USER20> They could just check Glassdoor. You should assume average salary for your position is public info.

</comment></comment><comment><USER21> I'm not sure I agree with some of these figures. Vancouver and Nashville are somehow considered to have similar cost of living.

[https://www.numbeo.com/cost-of- living/compare_cities.jsp?cou...](https://www.numbeo.com/cost-of- living/compare_cities.jsp?country1=Canada&city1=Vancouver&country2=United+States&city2=Nashville%2C+TN)

</comment><comment><USER22> Why??? Openess in work culture is great! Telling the whole world about how much each individual earn is a slap on their privacy... Just because you can, you shouldn't. Be ready to welcome attrition.... Let me post the link of this page on each employee's linkedin fb accounts...lol.. anything in the name of innovation.

</comment><comment><USER23> I strongly disagree with cost-of-living-adjustments when employees have the choice of where to live. People shouldn't be punished for living in less expensive places.

If your company is willing to pay you more for living somewhere else even if they don't gain anything from it, it means they're underpaying you right now.

<comment> duncan-donuts That's not really realistic though. How could I convince someone to pay me $250k in Minneapolis when the market is supporting 115-150k?

<comment><USER9> In a world where remote is an option, there really shouldn't be large differences in salary. In negotiations, the party who can most afford to walk away has the advantage. If there were a real dev shortage, devs would be in that position, but they aren't.

SV (and other markets) basically refuse to hire remote (and often refuse to relocate employees). This splits the market up into mini-markets where the slight oversaturation of devs allows the local market to dictate prices (under-saturation would boost salaries even in a small market). This is born out with the fact that those who do work remotely seem to have higher salaries for a given experience level (their market is much bigger and more diverse).

The obvious answer is unions. Joint negotiations would yield immediate effects. No large company could survive even a day or two of IT strikes without extreme losses. Unlike other jobs, you can't simply replace your staff because most of a company's software IP is held in the heads of its employees and is far too complex to decypher before the losses occur.

</comment></comment></comment><comment><USER24> Recently there was a discussion about salaries in SF. And the numbers there were much bigger. What gives?

<comment><USER25> If you're talking about the triplebyte data ([https://triplebyte.com/software- engineer-salary](https://triplebyte.com/software-engineer-salary)), Buffer's SF salaries seem comparable.

<comment><USER26> That only reports base salary, making it worse than useless.

<comment><USER25> If you're applying to non-public companies where the stock isn't liquid, it's very hard to compare different packages across companies.

Benefits are another story, and I'd love to see triplebyte release some data about those.

<comment><USER27> Not to mention all the public companies that don't Grant stock or significant bonuses.

</comment></comment></comment></comment></comment><comment><USER28> If I worked somewhere that tried to rationalize why they were cutting all of the employees salaries but leaving the executive salaries in-tact, I would leave immediately.

</comment><comment><USER29> I like the idea of transparent salaries, but does a "transparent" formula ever become so convoluted, and open to gaming, that the company may as well just not bother?

It can be argued that not disclosing salaries is a way to suppress wages; an asymmetry of information. Is open salary information where "everyone at the same level gets the same salary, but there's some gotchas" another way to do the same thing?

<comment><USER30> It certainly goes hand in hand with a good culture, which is also one of the strong point of Buffer.

Their transparent webapp thing[1] is really nice to play with btw, it feels like a no bullshit vibe for newcomers as well as current employees.

It makes me think that these "formulas" will probably not age well with time. They're already at their version 3, which would probably not be a good formula at the early days of the start up and will probably not be a good formula in 3-5 years.

Somehow related, I remember having something like these to rank posts on one of my boards (similar to the weight ranking of HN). I had:

* time influence negatively

* number of upvotes and downvotes in the comments influence positively

* number of heavy posters influence positively

* number of upvotes for the post influencing positively

It was really tricky to tweak, in the end with the website scaling up I was constantly tweaking the formula. I don't think there is a "always work" formula.

[1]: [https://buffer.com/salary](https://buffer.com/salary)

<comment><USER29> That helps, thanks.

</comment></comment></comment><comment><USER31> Whoa $121k in Spain that's a superstar salary for a programmer there.

Average for programmer according to glassdoor is 35,000 euro = ~42,000 usd.

<comment><USER8> It seems odd that places in very low COL areas, particularly internationally, are getting 3-4x median salary for the same role, while places in rural/suburban US will be at or just slightly above median for that geo area.

<comment><USER32> I can't talk for Spain in particular but keep in mind that employer's social contributions can be pretty hefty in Europe. And working remote for an american company is opening a bag of hurt regarding taxes and banking.

For instance that guy making $128k in Montpellier in France, that's €108k right now. Assuming he works 45 weeks that's a daily rate of 480€. Not crazy for an experienced developer.

</comment></comment></comment><comment><USER33> What's an advocate in this context? It's their biggest department, bigger than marketing?

<comment><USER10> Pretty sure that's their customer support team.

</comment></comment><comment><USER34> I am a fan of open salary models _inside_ the organisation, but don't see the value in sharing it publicly. It's something we implemented at the non-profit I co-founded and it has increased the sense of ownership and buy-in from everyone on the team. One reason for not sharing the actual amounts is that non profits generally pay less than for profit companies and I don't want our team to be pegged to their non profit salary when they decide to move on.

</comment><comment><USER35> Salary transparency leading to lower salaries... I had been led to believe to expect the opposite.

</comment><comment><USER36> The transparency is great.

Here's a question: why doesn't Buffer pay the "low CoL" developers more? It doesn't seem right that "low CoL" workers get paid so little compared to their peers.

<comment><USER37> I agree. The first step to fixing or avoiding a problem is knowing it's there.

It's great to be able to have a little more understanding of what companies are thinking when they try to judge an employees value based on location rather than... value provided to the company.

I think the dynamics are pretty interesting. Forgive me if this seems like a not so humble brag, but I'm remote and paid way more than anyone at buffer. I also have a pretty decent network of remote friends at my company and at other good companies.

With that in mind I can tell you that the practical effect of Buffer's policies is that they have decided to self-select for developers who are currently underpaid and historically have not had their pick of good jobs. Because otherwise they'd be taking a pretty big paycut to work at buffer and, while possible, it seems unlikely that social media management is a dream job for many developers.

So the entire open policy, no matter it's surface intent, is basically a policy to grab sub-par talent. Especially insecure talent who is willing to buy into "radical transparency".

Meanwhile, my base is pretty close to their CEO's compensation, but I live in a low COL area. It turns out that the marketplace is competitive enough right now that it's a viable bargaining technique to say "pay me X, where X < Value provided" and some companies will, without arguing (as if the argument made any sense at all) that many people in your zip code make < X.

I guess that was a really long winded way of saying that buffer has implemented policies that self-screen out the best developers, which is fine. You probably don't need the best developers to send tweets on a schedule.

</comment></comment><comment><USER38> So if I'm worth 500k a year to Buffer they will not be able to pay that to me. So stupid.

<comment><USER28> So if I'm worth 100 million a year to Google they will not be able to pay that to me. So stupid.

Spoiler alert: There's a very large chance that you're not worth $500k to Buffer.</comment></comment>


Steve Jobs on how The Beatles influenced his approach to business (2003) [video] - <AUTHOR> https://twitter.com/JonErlichman/status/1190769795047854082 <comment><USER2> I think saying it influenced his approach is overstatement. He's just using them as an analogy for something he already believed.

<comment><USER3> It didn't looked that way to me. I think his advice is right on the dot if you were doing startup and finding co-founder. The best co-founder you might find is the one who _multiplies_ your capabilities as opposed to merely _adds_ to yours (or in worst case subtracts from yours). For example, Wozniak alone couldn't have taken Apple to where it is and same goes for Jobs. Without each other, they would be at best some "10x engineer/salesman" in some company and forgotten. It is important to find partner who fills in the gaps (and vice versa) such that entire puzzle unlocks.

<comment><USER4> > _It is important to find partner who fills in the gaps (and vice versa) such > that entire puzzle unlocks._

Yes, it is important.

It is also generic Silicon Valley advice, of which there is no evidence that anyone can actually do it successfully ahead of starting a business, nor do we know how valuable it actually is.

Are the SV darlings flailing because the founders were unable to "find good partners", or did the businesses suck?

<comment><USER5> Finding good partner is as impossible as finding your passion. You may find it or you may not. I don't think there ever was how-to. Keep searching.

<comment><USER6> Shouldn't this be: Keep looking?

Because searching is looking for something in an algorithmic way?

</comment></comment></comment></comment></comment><comment><USER7> I've also read that Steve admired how the Beatles were willing to experiment and change styles to keep up or even stay ahead of the competition. They refused to settle. Despite rocketing on the charts via "hold-hands" teenage dating tunes, they were also early experimenters in psychedelic rock, perhaps even helping to shape it to what it became. They also pivoted to a more heavy blues-ish style later in the decade as the bass-driven "heavy metal" sound grew in strength.

And I do agree with Job's statement that the Beatles "kept each other in check". Paul was a bit to sun-shiney at times, and John too sarcastic or wondering. When they intermixed and made sure they each glued or included these together in the right amount, their music was better. It was a yin-and- yang balance.

Jobs also admired Bob Dylan's bravery for moving from acoustic to electric guitar despite many fans grumbling, calling him a "sellout". Job's allegedly had a recording of fans booing Dylan's new electric guitar during a performance, and responding to the angry fans by yelling at a stage worker to "turn it up!" on the amplifier. Intentionally ticking off fans is a big risk in a music career. (Jobs didn't attend the concert, but collected bootleg tapes as a hobby.)

That definitely sounds like a Job's-style move, being he was known to remove features on devices that he felt would soon be obsolete despite market ubiquity. Whether those music artist incidences influenced Jobs or merely cemented his tendencies is hard to say. It seems he made an effort to learn from the masters, though. The fast-changing music industry mirrors many aspects of rapid technology change.

</comment><comment><USER8> "The total was greater than the sum of the parts" -Steve Jobs on The Beatles

</comment><comment><USER9> Does anyone have a non-Twitter link? I choose to avoid that platform for ethical and mental health reasons. Thanks.

</comment><comment><USER10> That's where he stole the company name from.

<comment><USER11> I knew about the Apple Corp and the trademark issues with Apple, but somehow I didn't know The Beatles owned Apple Corp ([https://en.wikipedia.org/wiki/Apple_Corps](https://en.wikipedia.org/wiki/Apple_Corps)).

I heard a rumor the other day that the company name "Apple" comes from Alan Turing's method of suicide. Appropriating it from The Beatles seems more likely now.

<comment><USER12> Alan Turing lived in an era where being murdered was arguably more probable for him than suicide (hard to know what happened). The name Apple being derived from the death of Turing is unlikely nonetheless.

</comment></comment></comment><comment><USER13> I bet that if you ask Tim Cook he'd say Genesis. Great when led by Peter Gabriel but even better when led by Phil Collins.

</comment><comment><USER14> This guy was just a person.

<comment><USER15> Every famous/great man was/is just a person. What's your point?

<comment><USER16> I remember when Jobs died every single post on the front page of HN was about him. Yet a week later when Dennis Ritchie died it was hardly mentioned.

Perhaps he is over venerated.

<comment><USER17> Dennis Ritchies death was not "hardly mentioned" — there were sizeable obits even in the mainstream press and it goes without saying HN discussed his legacy too across multiple days and weeks:

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

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

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

[https://hn.algolia.com/?q=dennis+ritchie](https://hn.algolia.com/?q=dennis+ritchie)

[https://www.theguardian.com/technology/2011/oct/13/dennis- ri...](https://www.theguardian.com/technology/2011/oct/13/dennis-ritchie)

[https://www.nytimes.com/2011/10/14/technology/dennis- ritchie...](https://www.nytimes.com/2011/10/14/technology/dennis-ritchie- programming-trailblazer-dies-at-70.html)

<comment><USER18> [https://news.ycombinator.com/front?day=2011-10-13](https://news.ycombinator.com/front?day=2011-10-13) this link probably works better</comment></comment></comment></comment></comment>


Divorce and Occupation - <AUTHOR> http://flowingdata.com/2017/07/25/divorce-and-occupation/ <comment><USER2> > But as you know, correlation isn't causation. If someone who is already a > physician, quits and takes a job as a bartender or telemarketer, it doesn't > mean their chances of divorce changes.

Eh. I'd be willing to bet a considerable amount that this would in fact mean their individual chance of divorce changes.</comment>


GiveMeTap (YC W15): Free Water And Footfall Data For Stores, and It Helps Africa - <AUTHOR> http://techcrunch.com/2015/03/20/yc-graduate-givemetap-offers-free-water-footfall-data-for-stores-and-helps-africa/

<comment><USER2> > San Francisco has now banned plastic water bottles at public events and > spaces,

Wait, is this a joke? SF doesn't permit me to carry a plastic water in public?

Of course it's a joke (well, bad reporting from TechCrunch - I am shocked, just shocked, to discover that) -- the actual restriction is that you can't SELL new single-use single-serving plastic water bottles (below 21oz) _on city property_. I wouldn't be surprised if this just 'gentrifies' bottled water sellers in food trucks into only selling the 1L bottles for $5+ instead of having more readily available smaller bottles.

<comment><USER3> Nope, it results in events like cirque du soliel selling cheap aluminum reusable water bottles for $6 (with what is likely an insane margin) and offering a fill-it-yourself water fountain.

Unless you brought your own it costs twice as much as a normal plastic water bottle likely would, and you have to wait in TWO abysmally long and slow lines to get your beverage vs one.

</comment></comment><comment><USER4> A small piece of trivia: Pubs (an abbreviated form of 'Public House') in the UK are required by law to serve the public, including non-customers, fresh running water, as well as, allowing use of bathrooms, for free.

<comment><USER5> Most coffeshops in the US will gladly fill a water bottle with water. I've done this too many time to remember. I've never been turned down. It's not shopping and asking It's simply walking in and politely asking to have the bottle filled.

This outfit makes it easier to get water from other kinds of merchants I guess -the kind ho also have drinking water available.

</comment></comment><comment><USER6> This reads like satire on how basic human interactions are repackaged for an 'increased consumer and retail value proposition'.

I can't wait for the app that "connects lost consumers with local geographic knowledge in a sharing-economy-marketplace of ideas" aka asking for directions.

</comment><comment><USER7> "Despite the growth in reusable water bottles, keeping them refilled is tough. Ironically, consumers either end up buying a plastic bottle of water, are forced to use a toilet to refill, or feel obliged to buy something from a store before asking for a refill of water."

What?

<comment><USER8> Sounds like incredibly bad phrasing. Being charitable, we can assume they meant filling in a bathroom sink, not a toilet itself.

<comment><USER9> in the English speaking world outside the US, the "toilet" refers to the entire bathroom, not the piece of porcelain. This also explains why "use the toilet" is considered crude in the US but not outside. In the US it refers to the physical act of defacating, but elsewhere it is equivalent to "go to the bathroom"

</comment></comment></comment><comment><USER10> For those who, like me, have no idea WTF that means, here is the full headline from the story: YC Graduate GiveMeTap Offers Free Water And Footfall Data For Stores, And It Helps Africa.

That exceeds HN headline limits, so the submitter had to try his hand at headline writing.

<comment><USER10> Note: the title has been changed to be more descriptive. I'd delete my above remark to reduce clutter, but it is too late.

It would be a cool feature to be able to mark a comment when you write it to auto self delete if the title or link is changed or if the submission is killed.

</comment></comment><comment><USER11> Now, a replacement for water fountains that requires a smartphone, an Internet connection, and payments.

<comment><USER12> The app helps you find the fountains. It's not required to use them.

</comment></comment><comment><USER13> hmmm, interesting..</comment>


Looking for how to create an app to improve your customer relationships? - <AUTHOR> https://mobsted.com/app-maker <comment><AUTHOR> We offer an app maker, even a whole platform, that is easy to use and you can create an app with account info and settings, provide customer service, accept payments, receive and fulfil orders/requests & more. Try at our site

</comment><comment><USER2> What do you offer?</comment>


Show HN: Value My Funnel – Figure out the value of a visitor, lead and customer - <AUTHOR> https://www.valuemyfunnel.com <comment><USER2> Quick take feedback - I click a link for "Value My Funnel" @ valuemyfunnel.com. Instead, I'm redirected to rightmessage.com, instantly feels scammy. Next I expect some simple funnel calc tool followed by a pitch for some service. Instead, I'm greeted with a ton of text that I don't want to read and has nothing to do with valuing my funnel. I immediately close the window. Then I felt generous to a show hn post so I decided to click through once and see what happens. I get an obvious lead gen form that has nothing to do with valuing my funnel. Now I'm done with rightmessage forever.

Trying to disguise bad faith marketing hacks like this as show hn type content hurts your business.

<comment><AUTHOR> Thank you for your feedback, I can understand and appreciate your perspective. Truly, it's fair.

To your first point: We built this on top of our app so we could use the data to superimpose conversion metrics. Using a direct URL is much easier to communicate than a subdomain or URL with slug. Your point is noted though. We don't want that to be the initial reaction.

We'll relook at the copy and see if we can minimize anything that's unnecessary. No need to add friction.

We built this tool to be free to use, without any requirement of signing in or submitting your email. We haven't gated the results, only added additional value if interested.

I'm sorry for it leaving you with a bad impression. We are a for-profit business, but that shouldn't minimize the value that the tool delivers — for free.

<comment><USER3> I'll add to his feedback, I don't have a clue how your service works. Sure, your landing page tells me you'll customize my landing pages. How? Not set up crap in your visual editor. How does it decide which version to send to whom? Comes across as snake oil to me.

<comment><USER4> We're constantly reworking our marketing site, but to make it more technical for the HN crowd (our audience is mostly marketers), it's an "if-this-then- that" engine for your website.

\- If referred by foo.com OR came over with particular UTM params OR landed on /foo THEN change out testimonials to be able foo (using similar underlying tech that Optimizely, et al use)

or

\- If visitor, who has opted in previously, has the "Customer" tag in the ESP/CRM that our customer has linked their site to, then ditch the signup form on the homepage and put a training video (or something)

It's basically a rules engine that looks at on-site behavior (pages viewed, referring domain, query string params, cookie data, etc) and allows you to combine that with ESP/CRM backend data (tags, custom fields, subscriber vs anonymous), and make content changes (replace text, hide an element, swap out an image, etc) as a result of a visitor belonging to a particular segment you've defined.

</comment></comment></comment></comment><comment><USER5> Looks really smart!

One thing I'd like is a way to share the final link where I see the projection and ideas

<comment><AUTHOR> Thanks for the feedback. To clarify, do you mean you'd like a way to share your results socially or via email to others?

<comment><USER6> Out of curiosity, does it matter _how_ someone wants to share a link in order to be able to share it?

Presumably, a person's mode of sharing should have zero impact on having a link to share.

<comment><USER4> Correct. We're leveraging localStorage to save answers across "pages" (using Vue). We could probably serialize / base64 encode the object we've saved and then let someone share it.

<comment><USER6> Ah, yeah. In that case, there is definitely a little hurdle to jump to make links to the results work, for sure.

</comment></comment></comment></comment></comment><comment><AUTHOR> Just launched a simple tool that helps you understand the worth of your marketing funnel, down to a single site visitor. Would love any comments or feedback.

Full disclosure: we launched on ProductHunt today as well.

<comment><USER7> Your optimization ideas are a vertical scrollbar, which hides them off of the screen to maintain tile size. I would attempt to allude to the fact there are more pieces of hidden data if possible, or ideally refactor the design paradigm completely, hiding data is usually a pattern worth avoiding, especially when it's so valuable as yours. Well done on the aesthetic overall quite well done!

<comment><USER4> Thanks! Yeah, frankly we sort of just threw in that scrolling list of ideas... and didn't put nearly enough thought into the display of them.</comment></comment></comment>


Show HN: Check if a Domain is common or sketchy - <AUTHOR> PS C:\> Invoke-Sqlcmd -Query "sp_select_from_domains_where_domain_starts_with 'amIevil';" -ServerInstance " infosecrockstars.eastus2.cloudapp.azure.com ,443" -username "readonlyuser" -password "twitter"
rank, domain
---- <comment>
28193044, amievil-graphicnovel.com
2611848, amievil.com
37416981, amievil.myblog.de
143664338, amievillegas716.joomla.com
160676189, amievilmovie.com
196148720, amievilt.com
PS C:\> Invoke-Sqlcmd -Query "sp_select_from_domains_where_domain_equals 'cnn.com';" -ServerInstance "infosecrockstars.eastus2.cloud app.azure.com,443" -username "readonlyuser" -password "twitter"
rank, domain
---- </comment><comment>
66,   cnn.com
These 2 stored procedures query a table with a Billion domains in it. </comment><comment><AUTHOR> This is the original data source.

harmonic centrality / pagerank

[https://commoncrawl.org/connect/blog/](https://commoncrawl.org/connect/blog/)

12.16 GB

cc-main-2020-feb-mar-may-host-ranks.txt.gz</comment>


Check validity of credit card number (Luhn's algorithm) - <AUTHOR> http://7labs.heypub.com/tips-tricks/check-validity-of-credit-card-number.html <comment><USER2> During the mid-90s, a high school math teacher gave me extra credit for presenting my class a slight variation of this CC verification algorithm, thus providing a real-world application showing modulo math to be relevant.

</comment><comment><USER3> anyone able to confirm - is this going to work with all major credit cards?

<comment><USER4> Yes, this is how it works with all major credit cards as well as many gift cards. You can also find ISO/IEC 7813, the track data standard, on Wikipedia. However, if you're thinking of programming some kind of payment engine, I urge you to carefully research the security and liability issues you are likely to encounter.

<comment><USER3> thanks, no - no interest just figure this looks simple enough to add as a extra layer of validation before sending card data over the wire...

This example, looks pretty straight forward: [https://sites.google.com/site/abapexamples/javascript/luhn-v...](https://sites.google.com/site/abapexamples/javascript/luhn- validation)</comment></comment></comment>


Release Flow: How We Do Branching on the VSTS Team (2018) - <AUTHOR> https://blogs.msdn.microsoft.com/devops/2018/04/19/release-flow-how-we-do-branching-on-the-vsts-team <comment><AUTHOR> Hint: It's not in TFS

3-week releases sounds crazy, but it's still interesting to see how different types of tech companies deal with source control + release cycles.</comment>