SCP – Familiar, Simple, Insecure, and Slow - <AUTHOR> https://gravitational.com/blog/scp-familiar-simple-insecure-slow/ <comment><USER2> "SCP – Familiar, Simple, Insecure, and Slow" \- slightly sensationalized title. All you need to know - if you scp with an evil machine, bad things can happen. That's all.

<comment><USER3> Is there a way in which you can connect to an evil machine and protect yourself from the possibility of it sending you evil bytes? What protocol is able to detect bytes as being evil without knowing at the outset what the file should look like?

This doesn't even seem like a valid security concern. But I'm open to hearing about some ways that SCP would be vulnerable in ways that SFTP would not. I am by no means an expert in this subject.

<comment><USER4> As long as the evil bits [1] are set correctly, you can filter by that.

[1] [https://tools.ietf.org/html/rfc3514](https://tools.ietf.org/html/rfc3514)

<comment><USER5> That RFC is a work of art. Are there more like it?

<comment><USER6> Oh yes.

My favorite:

A Standard for the Transmission of IP Datagrams on Avian Carriers

[https://tools.ietf.org/html/rfc1149](https://tools.ietf.org/html/rfc1149)

Check the dates.

<comment><USER7> And what good is a standard without an implementation: [https://en.wikipedia.org/wiki/IP_over_Avian_Carriers](https://en.wikipedia.org/wiki/IP_over_Avian_Carriers)

</comment></comment></comment></comment></comment></comment><comment><USER7> I've gotten into a habit of setting `alias scp=rsync` (with compression, partial, progress, etc args usually) on every system I use. In the once-in-a- lifetime cases where rsync is _not_ pre-installed, I just call /usr/bin/scp directly (or wherever it happens to be. `type -a scp` will tell you.)

The amount of time I've saved when I've _forgotten_ that I've done this and it just runs faster is well into the tens of hours. The amount of time I've lost when I forgot and rsync doesn't exist remotely is about 10 seconds total - enough time to read the error message -> `type -a scp` -> "oh yeah" -> use /usr/bin/scp instead.

Highly highly highly recommended.

<comment><USER8> Hint: you can type `\scp` to bypass the alias

<comment><USER9> Which itself is defeated by:

place rogue SCP in /some/rogue/scp

export PATH=/some/rogue:$PATH

<comment> yjftsjthsd-h Yeah, but we're not talking malice here, we're just talking about what to do when your _own_ alias doesn't work. (Although the general note is still valid)

<comment><USER9> Yup, I understand. Just leaving the note by so others don't put two and two together on something else in a bad way :).

</comment></comment></comment></comment></comment><comment><USER10> It turns out that rsync is slower than scp, unless the files are already present. It adds a lot of overhead that's not needed most of the time.

I often need to transfer very large binary files. When stuck with standard Linux tools, the fastest process is first transfer via scp. If the scp gets interrupted, resume it using rsync with the —-append-verify option.

<comment><USER11> nc is much faster if you don't need encryption

<comment><USER12> Well, nc +tar +compression is likely faster. If you compress your SSH connections, scp or piping over SSH is likely much faster for files that aren't tiny, I would imagine.

You aren't necessarily wrong, but there's a whole world of distinction you're glossing over. Netcat is part of a set of tools you can use to construct a somewhat equivalent tool to scp without encryption, but nc by itself without tar and gzip (or whatever) match only the simplest possibly use case of scp, which is copying one file, without compression, and ignoring all permissions and ownership info.

This is also ignoring that you might not even have an open port on one side that the other can reach to have netcat listen on.

</comment></comment></comment><comment><USER13> We all use rsync but rsync itself has massive risks and is equally prone to stupid buffering consequences. (I worked on a write up of an exploit to hose an rsync server in rpki and the lack of channel protect in rsync is a problem. Rsync over SSH is less risky but not risk free to either side. What is sent and what is asked for do not have to align well) rsync over SSH needs tuning to be buffer efficient.

Tar may well be better if you know you need all the files and don't need the block checks per file to detect change and minimise data sent.

Rsync can hose the file buffer cache and slow a server down. If you want speed mbuffer is good but lacks channel security too (ZFS send over mbuffer is awesomely fast)

<comment><USER12> > but rsync itself has massive risks

Err, what risks? If you run a server? Sure, but as a replacement for scp, where it's assumed you have an account on the remote system, an rsync server is not the equivalent solution, running rsync across an ssh connection is.

> Rsync over SSH is less risky but not risk free to either side. What is sent > and what is asked for do not have to align well)

Glossing over that no system is "risk free", can you explain in a bit more detail here, or reference what you wrote up or some other thing? That's the kind of thing I would really want to know about, and an unsubstantiated throw- away aside does not do justice to the problem if accurate.

<comment><USER13> [https://datatracker.ietf.org/meeting/89/materials/slides-89-...](https://datatracker.ietf.org/meeting/89/materials/slides-89-sidr-6)

<comment><USER13> The principle point is that if the server is compromised, the ssh tunnel just becomes a mechanism to propagate things. If you say --size-only or --no-delete or whatever, it doesn't acually constrain what happens over the rsync protocol. It just says what you want the other side to know: if the other side is a bad actor, it can send you whatever it likes, and that can include filepaths outside the local constraint you think you scoped it to (the target can be ../../.. specified)

<comment><USER12> Yeah, I was just reading, thanks for sending the link. What I'm at so far, which is that you were able to successfully get a client to write outside of it's expected root location using a 119 line python script as the server, is pretty problematic in itself if not yet fixed/mitigated in some way. :/

Did you event submit these finding as a bug? I would be interested in tracking this if it was accepted. It looks like this note from 3.1.2's release[1] is it, but I'm not sure:

 _File-list validation in 3.1.2 December 21st, 2015

If you're using a version of rsync older than 3.1.2 as a client and receiving files from an rsync server that you might not fully trust, this version adds extra checking to the file list to prevent the sender from tweaking the paths and/or the transfer requests in a way that could cause a file to be received outside the transfer destination. _

1: [https://rsync.samba.org/security.html#s3_1_3](https://rsync.samba.org/security.html#s3_1_3)

</comment></comment></comment></comment></comment><comment><USER14> Is there a tool that mimics the interface of SCP but uses SFTP under the hood? Then I could alias `scp` to that and forget about the SCP protocol forever. (rsync is not good enough: it requires rsync to be installed on the target server and seems to be slower than SCP in some cases.)

The proprietary ssh.com implementation of SSH apparently has one called "scp2", but I don't see any open source version.

Well, except for this, but it's tagged "[MAINTAINER WANTED]" and written in JavaScript:

[https://github.com/spmjs/node-scp2](https://github.com/spmjs/node-scp2)

<comment><USER15> pscp might be what you want [https://the.earth.li/~sgtatham/putty/0.73/htmldoc/Chapter5.h...](https://the.earth.li/~sgtatham/putty/0.73/htmldoc/Chapter5.html#pscp)

<comment><USER14> Interesting. That does seem to match the description, so thanks for mentioning it. On the other hand, PuTTY doesn't seem to support loading OpenSSH's configuration, only its own format – so my private keys, host aliases in ~/.ssh/config, and known_hosts would have to be duplicated. And they would quickly get out of sync unless I switched to PuTTY for all SSH use.

Seems like a lot of effort when, In Theory, this would be a pretty straightforward wrapper to build on top of libssh, which can load OpenSSH's configuration files, or perhaps on top of OpenSSH's ssh/sftp binaries directly. But I'm too lazy to write one myself, so I was hoping someone already had :)

</comment></comment></comment><comment><USER16> I feel like this article tries a little too hard to make the SCP protocol sound weird. It's just using SSH as a transport layer, which is not really unusual at all. Perhaps there are some security issues but IIRC Git for example does basically the same exact thing to use SSH as a transport layer, calling git-receive-pack on the remote. I'd be surprised if Rsync wasn't the same.

<comment><USER17> I've ported ssh before and I think the whole system is a little hacky.

I think what is lacking is a precise split between file transfer and remote command execution.

If the split were well defined, we could simply and securely split out file transfer as a "thing".

it would allow:

\- write-only no-account-required file uploads

\- read-only no-account-required file downloads

\- an account-required incoming dropbox

\- an account-required file store

\- full blown remote filesystems (filestore + file protocol goodies)

and a number of other services that involve files and NOT command execution, environment variables, shells, a login or even a user account.

<comment><USER15> Doesn't the sftp subsystem allow that in principle? You might have to configure the server fairly heavily to make it sftp only, though...

<comment><USER17> It's been many years, but I vaguely recall there were some things preventing that, but I don't remember if they were protocol or implementation dependent.

</comment></comment></comment></comment><comment><USER18> I always assumed that sftp was the hacky command and scp was the preferred one.

Guess I maybe learned that wrong.

</comment><comment><USER19> Compared to other file transfer protocols (I'm looking at you SMB), SCP is pretty fast in my experience.

</comment><comment><USER20> For a long time I have just piped tar over ssh. For lots of small files, it's faster than an rsync to an empty directory. It can also sync anything that the tar on both sides can handle. I wrote a script for doing this for my coworkers who identify with [https://xkcd.com/1168/](https://xkcd.com/1168/)

<comment><USER21> One thing I like about this solution is fine-grained control over the compression. I've used xz on a slow connection to the other side of the world, I've used no compression on super fast connections. You get whatever you want.

<comment><USER20> Indeed! Unless it's a wired LAN connection, zstd will not make things slower on lower settings, and can make it faster</comment></comment></comment>


Early Windows Phone 7 numbers show Android outselling 15:1 - <AUTHOR> http://www.electronista.com/articles/10/11/29/uk.retailer.says.android.outsells.wp7.15.to.one/

<comment><USER2> "Just two people lined up at Orange's London flagship store on October 21, creating an embarrassment for both the store and for Microsoft as the amount of press outnumbered the actual line."

Well at least nobody got hurt!</comment>


The Awful Truth About Jogging - <AUTHOR> https://medium.com/having-it-some/66b45bb2f2ca

<comment><USER2> To greatly simplify things, I think there are basically two types of people: Those who enjoy running, and those who don't. I am in the former group. (Now, obviously, there is a spectrum between the two ends but that's besides the point)

For me, and the runners I train with, it's not so much about the races but rather the experience of running itself. When I run, I am in one of two states: Either intense concentration (if it's a hard workout) or in a nice flow where my mind wanders and is occupied by interesting thoughts. I don't think I've ever had the cliched "Runner's High", but perhaps this is it. I always end up feeling less stressed and more relaxed. So this is probably why I run.

Those that don't enjoy running probably don't get this out of the act. It's probably mind-numbingly boring, which is why many people are forced to listen to music. The few times I've been injured and forced to use indoor cardiac equipment (like an elliptical), I've experience this sort of boredom.

Now, as to why the author was not informed of such delicate topics and "runners' trot", I can only chalk it up to runners not wanting to bore "normal" people with details of their personal activities. I can tell you that among runners, we're more than candid about such topics, and most runners can remember fairly exacting details of races they've run. They probably choose not to share such details with outsiders so that they don't bore or annoy them to death with something they might not be interested in. (As the author pointed out in the second paragraph - how they "hate people who are constantly posting about running over on Facebook")

As for preventing it, nothing's foolproof. Know when you usually have to "go", and structure you runs accordingly. Try to keep a log of what you've eaten and draw inferences from that. Oh, and good luck - keep up the running - if it's something you enjoy!</comment>


My $1/day Adwords Account - <AUTHOR> http://agtb.wordpress.com/2010/01/06/my-1day-adwords-account/

<comment><USER2> If Google wants its employees to experience the point of view of its customers, it should stake them with meaningful amounts of Google monopoly money, have them actually attempt to achieve business goals with it, and put half of their salary on the line based on their CPC performance.

Every so often, something should go wrong -- subtly or otherwise -- and then the employee should have to go through seven redirects on the AdWords interface to locate the form to send a message to a representative. The message should, with 30% probability, never be read by anyone. If it is read, it will be read by someone in a call center in India, who does not know the customer is a Google employee, and has only a cursory knowledge of Google's own policies and none of the algorithms. Escalation should be nearly impossible to achieve, but if it happens, it should go to someone in Mountain View who is as unhelpful as possible to avoid giving the customer any incentive to ever call back.

For the fully authentic experience, if the employee doesn't like this state of affairs, they should be encouraged to either a) blog about it and pray that it ends up in Matt Cutt's feedreader or b) make a lateral move to Microsoft, for an instantaneous 90% reduction in salary.

Google employees who did this for a few weeks would have a much better sense of where AdWords advertisers are coming from than somebody who is playing with a toy account. (The Google employee experiences < 1% CTR and one click a day? Good, you may succeed in identifying where the buttons are in the AdWords interface. You have _no idea_ what the actual use of the platform is like.)

<comment><USER3> This is not an exaggeration (even though it's funny).

I have had Google reps literally run out on me. IE, stop answering emails, supplying phone numbers that go nowhere etc. When I finally did get someone back on the phone to talk to, they acknowledged that they had stuffed up with their suggested "campaign optimisation" & that they must restore the old campaign. They promised to call back within 20 minutes once a person with more authority was located. I haven't heard back since, had to try & restore things myself.

Even with this terrible service, this account still sent almost $1m to Google this year. In fact, we haven't even been able to get reasonable payment methods from Google & they still follow their hide, acknowledge then disappear CRM. This comes up a lot since credit cards don't always work well when you try to charge $2k every 5 hours. Adwords has all sorts of bugs that appear when the banks get suspicious about these.

<comment><USER2> A bit of context for folks who don't know the back story: Netcan is (or works for) a fairly significant AdWords spender. (He has a few comments about AdWords on HN which are worth reading.) I spent about $6k on them in 2009, and they're directly responsible for about 40% of my revenue and 1/3 of my profits.

My comment above which on second reading appears to be sarcastic and exaggerated is a _literally accurate account_ of what I went through last August.

See generally <http://news.ycombinator.com/item?id=790800> or <http://news.ycombinator.com/item?id=791003> and the blog post linked from the second comment.

Full disclosure: I am a case study for how effective AdWords is. [http://www.google.com/adwords/conversionoptimizer/bingocard....](http://www.google.com/adwords/conversionoptimizer/bingocard.html)

(And I'll say this: despite having worse customer service than the Japanese immigration authorities -- whose three part mission statement includes the words "Forcibly expelling undesirable foreigners from our nation" -- AdWords was and is the best advertising option that has ever been invented for small businesses.)

Edit to add: On review of the posts I remembered, I realized that I appear to have mentally conflated netcan with a HN member named netsp. My apologies for my memory being dyslexic.

<comment><USER3> Netcan & netsp are the same person (me) so it does apply. (sorry about that, I updated my profile to show this)

You make an important point. This poor quality of service from Google hasn't affected their revenue from this advertiser(s) at all. Actually, several times a year the ads go down for a few hours due to a failed payment, CC issue or some payment related adwords bug while I drop everything & try to get a rep on the phone. I suppose that ads up to a few grand per year. But.. these are highly competitive areas. If we aren't on the page someone else is for a marginally lower CPC.

BTW, your case study link doesn't work

<comment><USER2> _BTW, your case study link doesn't work_

I fixed it. My apologies for the typo.

<comment><USER3> "We are literally the case study for adwords effectiveness." Awesome.

Does conversion optimizer really work that well for you?

<comment><USER2> _Does conversion optimizer really work that well for you?_

I speak three languages and still don't have words sufficient to praise Conversion Optimizer. Are you in a mood to tolerate rabid, missionary zeal at the moment? Because if you are I can talk CO all day.

<comment><USER4> Please, please write a big long post on kalzameus for the world to see! Taking 20 min to read one of your articles is better than taking 20 hours scouring the internet reading conflicting sources none of which I entirely trust. Please!

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> The guy who cuts my hair owns the salon. A 1/4 page ad in the Cleveland-area Yellow pages could be negotiated down to $500/month by a knowledgeable business owner. To justify these prices, the phone company offered to provide a special phone number just for the ad upon which it would keep statistics. He ended up paying a company to send out a fancy, wedding-like invitation for salon services to new homeowners in affluent areas around his business -- $6/pop. Then, he used his $15K salon software to track lifetime customer value so he could figure out if spending $700/month was worth it.

Perhaps Google ought to link Google Voice accounts with adwords to provide better end-to-end conversion statistics. Perhaps the business owner could be provided with a speech-to-text transcription of these calls so he could somehow link his ad spend to eventual conversion.

I don't know much about conversion tracking across advertising methods. It would be cool to build a system for, say, a pizza shop owner (85-ish % of pizzas are sold w/ a coupon) to track conversions across phone, walk-in, and net-based ordering. When a small business like that spends a couple thousand a month (if not more) on advertising, it doesn't take a very big improvement in efficiency to justify a $100/mo SaaS fee.

<comment><USER6> _Perhaps Google ought to link Google Voice accounts with adwords_

This is a brilliant idea, and I would be shocked if Google doesn't have plans to do so.

<comment><USER7> <http://www.reachlocal.com.au/> use AdWords campaigns and customised phone numbers to track referrals by phone. Client of mine use them. Not quite as "all in one" and affordable as AdWords+Voice would be, but the same sort of thing is being done by a third party.

</comment></comment></comment><comment><USER8> In other words, not only has advertising on Google has become much more expensive over the past several years (the market at work), it's become so complex that a typical small business owner can't be expected to manage their own campaign without relying on outside consultants.

<comment><USER6> _it's become so complex that a typical small business owner can't be expected to manage their own campaign without relying on outside consultants_

Absolutely. I can't say AdWords has ever been user friendly, but the average business owner has little chance of turning a profit with AdWords (without training/consultation). Its not rocket science, but there is a definite learning curve.

<comment><USER9> That's why Google is rolling out flat rate click pricing in many local verticals. They take the conversion data from advertisers using website optimizer and use it to help less sophisticated businesses compete against them.

</comment></comment></comment><comment><USER10> Send the google ad link to a page with an alt phone # or alt email. You can track the calls or emails per impression that way.

( or ask new customers how they found you )</comment>


Ask HN: Review my Recruitment App and intro video. - <AUTHOR>

Hi HN,
My Recruitment Application is called Vouched ( http://getvouched.com ).
Vouched is a web-based application that aids in recruiting by matching jobs to the best applicants using keyword specific recommendations. Unlike LinkedIn and Monster, Vouched does not rely on Search to find jobs or candidates, instead it uses the knowledge of the social network.
With Vouched, recruiters get a ranked list of job seekers which have been vouched for by people they trust to meet the specific needs of each job posting. Job seekers can see which jobs they are best qualified for compared to other applicants and possible applicants before applying.
Vouched makes it easy for its users by automatically extracting skills out of job postings and resumes (so end users do not have to change their behavior).
Vouching is a easy as clicking a button, instead of racking your brains thinking of something to say on Linked In. Vouched is even valuable to non-users by allowing vouches to anyone by their work or personal email, and their facebook, twitter or linked in account.
Thanks, Max ---
I'm an part-time unfunded one man wolf-pack so don't expect Spielberg, but I put together a video over the weekend trying to explain how it works.  I used videohive.net, $30 for template + music, if you are like me and can't afford $10k for a http://grumomedia.com video. <comment><USER2> I like the idea of building professional reputation and applying for jobs. I have some questions (probably dumb?) about the idea.

\- How is getting vouched from your colleagues/friends different from Linkedin recommend feature

\- Your rank will define how fit you are fit for any job posting. Correct me if I'm wrong, your rank will depend on the number of vouches(?) that you get. So, ultimately the person who is more active on the site will have a better rank and I feel this will destroy the whole purpose of legitimate reputation building

\- "Vouched does not rely on Search to find jobs or candidates, instead it uses the knowledge of the social network" - It will be good if you can take leverage of any of the social graphs that the user already has (Facebook, Twitter, Linkedin?)

<comment><AUTHOR> >> How is getting vouched from your colleagues/friends different from Linkedin recommend feature

A linked in recommendation is a general recommendation. You are either recommended or not. Vouched is based on specific skills. You may be a great C# developer, but your javascript sucks.

>> your rank will depend on the number of vouches(?) that you get.

No. The algorithm is two sided. The first part is pretty much Aggregated PageRank. So a single recommendation from a heavily recommended user can be more valuable than 50 recommendations from sparsely recommended users. Aggregated by all skills in the Job. The second part is a multiplier based on the length of the chain of trust to the recruiter. I trust the vouches people I vouched for made, more than the vouches people they vouched for made.

Me -> Alex -> Tom = Tom gets 80% of aggregate rank points.

Me -> Alex -> Tom -> Jerry = Jerry gets 64% of of aggregate rank points.

>> leverage of any of the social graphs that the user already has

You can import all of your contacts from the 3 major social networks + the 3 major email providers + github.

</comment></comment><comment><AUTHOR> Link => <http://getvouched.com></comment>


Ask HN: The next step in Remote Work? - <AUTHOR> So, if everyone can work remotely, do you see people renting offices with friends they enjoy spending time with?
there are some productivity benefits, and it's the best of both worlds. You spend time with people you enjoy spending time with, and you don't jeopardize your friendship by going in business together
What am I missing? <comment><USER2> I assume that by "work remotely", you mean working for an employer, not working for yourself.

What if one of your friends got a new job and now they're working for your employer's competitor? Your employer might not want you to share a workspace with them anymore. Depending on the kind of things your employer was developing, they might not want anyone being able to look over your shoulder who wasn't a co-worker.

I think that a more likely scenario would be companies renting lots of small, local blocks of office space in different neighborhoods where their employees lived, which would be limited to their own employees.

Also: Are you prepared to pay the cost of renting this office space out of your own pocket? Your employer gets a really good deal if you work remotely out of your own home, since they don't have to pay for the space. But if you're going to be asking for a reimbursement for office space that you rented, they'd be much less happy. If they agreed to pay for it at all, you'd probably have to provide a careful accounting of how much you, personally, paid and what kinds of services are included in the rent (maybe your employer doesn't want to reimburse you for free beer). Again, it would be much simpler if the employer rented space for their employees, since they'd have control over what kind of space, furnishings and services they were paying for.

</comment><comment><USER3> > What am I missing?

the dangers. some people can well behave when others need to focus, some aren't able to. that's immensely dangerous, if you committed to paying part of the rent and suddenly you don't feel it's working for you.

the next step i see is the market pushing for high-speed internet connection even in currently underserved areas (ftth anyone?).

following that, i hope will happen is that a number of currently underpopulated zones will re-bloom.

the big if is whether remote working will stay or not.</comment>


Ask HN:Any Recommended Resources on Business Development for Technical Founders? - <AUTHOR>

<comment><USER2> What part? Marketing? Business planning? Bookkeeping? Or are you talking about business development as in acquiring new business?

If you're just looking for general info, Inc. Magazine is a good place to start, especially Norm Brodsky's columns.

<comment><AUTHOR> Hey thanks.

I was thinking in general as well as things like partnerships and what not.</comment></comment>


Kurzweil Claims That the Singularity Will Happen by 2029 - <AUTHOR> https://futurism.com/kkurzweil-claims-that-the-singularity-will-happen-by-2029/ <comment><USER2> Here is an algorithm for making predictions that is as accurate as Kurzweil:

1) Choose a recent 5-year trend, preferably one increasing geometrically.

2) Extrapolate out this trend n years.

3) Your prediction is either the number from (2) above, or, for bonus points, some directly dependent result (e.g., in 2000, connection speeds were increasing, instead of predicting "connections will be X mbps", the prediction is something like "we will be able to watch HD video in real time." This sounds more impressive.)

4) Good predictions need a timeframe, so choose 2n to give yourself some buffer for being wrong.

5) You will be a highly sought after futurist at this point, so please send 1/2 your book royalties and speaking fees to my address. (PM for details)

<comment><USER3> But we can stream HD video in real time, obviously. Many people have connections that can download HD video at 10-100x real time, depending on bitrate; gigabit has been slower to penetrate than I'd like but it is penetrating, continuing the trend of exponential growth up to the present (albeit maybe more slowly than you would project from 2000? I couldn't easily find a graph on Google). If the point is to show the vacuousness of Kurzweil's extrapolation method, I'm not sure Internet speed is the best example...

<comment><USER2> Maybe not, but in 2000 downloading JPGs of naked ladies required great patience, and now I can stream 4K video.

Look at his predictions from the 1989 timeframe and count up how many were just extrapolating Moore's law and coming up with different implications.

My point was that making unsurprising, long-term predictions (10-20 years) is both easy and useless. But for some reason we call people who do this, "futurists".

Now there's another name for people who can make surprising, short-term predictions (< 10 years). We call them "rich".

</comment></comment></comment><comment><USER4> I have nothing against Kurzweil and I would love to see that happen as he is predicting but, after seeing about 5 documentaries about him in particular I tend to believe he desperately wants that to happen. I mean, the man takes about 150 pills a day to make sure he will live to see these predictions happen, nothing against that by all means but I'm not the one to put too much weight on his predictions.

<comment><USER5> He doesn't take 150 pills a day. He just writes that he does, which is worse.

Source: eaten with him, carried his luggage.

<comment><USER6> But did you take his pills?

<comment><USER5> I was trying to point out - he didn't have any with him :)

</comment></comment></comment></comment><comment><USER7> Didn't Kurzweil originally say that Singularity could/would happen around 2010?

The cynic in me says that 2029 is still within bounds where Kurzweil can still participate. He would be 81 then.

The guy is a brilliant polymath but I get the impression he thinks he can cheat the big sleep.

<comment><USER8> No. Here are his predictions: [https://en.wikipedia.org/wiki/Predictions_made_by_Ray_Kurzwe...](https://en.wikipedia.org/wiki/Predictions_made_by_Ray_Kurzweil#The_Age_of_Intelligent_Machines_.281990.29)

Frankly, it perturbs me when people dump on others who have the courage to make predictions or misrepresent them. Don't get me wrong, I despise people who are consistently wrong with their predictions and have the audacity to pawn themselves off as a visionary.

Rather than dump on somebody else's predictions, I'd encourage other people to make their own and stake something on it. Put some skin in the same. Where do you think we'll be in 2029? Why?

<comment><USER9> >Rather than dump on somebody else's predictions, I'd encourage other people to make their own and stake something on it. Put some skin in the same. Where do you think we'll be in 2029? Why?

Have you considered that some people think it's stupid to make predictions like this so they wouldn't want to make their own predictions?

It's like telling people criticizing numerologists to perform better numerology to prove something.

<comment><USER8> Are you comparing making educated guesses based on observations and analysis with numerology?

Making predictions and providing analysis for those predictions is actually incredibly valuable because it helps people and companies anticipate trends and hedge their strategies.

Unlike numerology, making predictions grounded in reason is actually a valuable and timeless skill that will benefit most people. I'm not encouraging people to engage in nonsense.

</comment></comment></comment></comment><comment> charles-salvia The problem with all these claims is that the term "singularity" implies, to most people, a sudden change after which civilization will be radically altered. I guess we'll wake up one morning and just start bowing down to our AI overlords.

Except realistically, how is this supposed to happen? Just because somebody runs ./ai_overlord on some linux box, or some VM cloud, doesn't mean that this AI suddenly somehow magically has insane _industrial_ capacity. It can't necessarily network with all the physical infrastructure and vehicles to start carrying out goals. It's existence is limited to the various RAM chips of a digital network. It will take much longer before an AGI can actually even have a major physical impact on the world.

Also, intelligence is not magic. There are certain mathematical limits to intelligence. An AGI cannot solve the halting problem or compute the Kolmogorov complexity of some data. It can't suddenly build any physical object from raw materials without a huge amount of infrastructural work being setup in advance.

And let's not forget that human beings are also Turing complete. Which means, in theory, anything an AGI can do, we can also do. The main difference is that an AGI would be able to computationally solve problems at much greater speeds than a human. But it's totally unclear to me if this somehow translates into a sudden complete overhaul of all of our civilizational infrastructure overnight. Frankly, that doesn't seem likely. I think it's more likely the first AGIs will just trade derivatives or recommend Netflix queues.

<comment><USER10> I think the concern is that the first AGIs will research how to build better AGIs, and will do so in time-accelerated virtual environments, performing years of research in days, then hours, then minutes, etc. Yes, they'll need a plan to earn bitcoin and pay people to build the first self-replicating nanobots, but I wonder how much of a hurdle that is going to be?

</comment></comment><comment><USER11> The theory behind the singularity is all about exponential trends. But most exponential trends tend to turn into some kind of S-curve[1] after a while. This insight goes back to Thomas Malthus, even though he never derived the sigmoid function (as far as I know).

The AI singularity could happen before the inflexion point of the S-curve, or some time after, or never. And as others have already commented, it depends on how you define "singularity". So I am not holding my breath waiting for the rapture.

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

</comment><comment><USER12> Will the singularity be happy that it's been written in Python?

<comment><USER13> It will and it will also prefer whitespace formatting and yet hate tabs at the same time.

<comment><USER13> ouch hit a nerve on python people

</comment></comment></comment><comment><USER13> I do like Kurzweil but I don't know if we can even identify a singularity. It will just seem normal, like now. One could say financially, the big world banks are so far ahead of us, there's no going back, but life seems the same, AI is already making decisions for financial transactions and for even recruiting people (as I've made some of this), but life seems the same. I think our zeitgeist moves along gently so we don't notice things. The only thing that will be certain is Kurzweil's frequency of saying "exponential" will only increase exponentially as he gets older.

<comment><USER14> For people living 500 years ago, modern society would be a singularity. Much of the things we can do with technological would be considered magic or witchcraft. Our scientific understanding has revised our picture of the world in pretty radical ways.

<comment><USER13> I agree. I also think our brain has remained the same yet has been fire hosed with new information as things progress farther and farther along, well at least those who try to keep up with that sort of thing. Eating cooked meat was a big deal in having larger brains. We will need something like that but of course very quickly to be able to process the new stuff. I think that's Kurzweil's hope or "singularity", just a better iphone that let's us understand as fast as downloading that's within us to make it way over simplified, or an "internet of brains".

Side note, "certainty" is a feeling. If we were given extra senses outside of our own brain and given a sense of certainty this was ourselves, we would never know if we were controlled by the AI itself, similarly to how the brain stem hosts the higher brain functions such as the prefrontal cortex. Random, sorry.

</comment></comment></comment><comment><USER15> Within 12 years? Maybe.

I think reaching the singularity will require a few more optimization tricks, as we saw with pretraining many layer networks, and also a breakthrough or two in fast hardware, associative memory, etc.

I have been working in the field of AI since 1982, and I find it easy to both admit how much I don't know and that I have a lot to be modest about. With these caveats, I predict that AGIs to be hybrids of deep learning neural networks and more conventional AI systems.

</comment><comment><USER16> is it just me or does anyone want to see something of substance and not speculations?

<comment><USER17> If you want something of substance, Kurzweil is not the person you want to talk to.

He has impressive technical work to his name, but his written predictions are wishful thinking.

</comment></comment><comment><USER18> I've never 100% bought into the idea of the singularity. Yes, in concept sure - if we make a computer sufficiently smarter than us, it can then design a smarter successor and so on.

But in practice? What if there's an asymptotic limit to intelligence? ie. We can get really smart, but there's only so smart we can get. What if we just get faster?

You could set an average person a really hard math exam and maybe they'll get 50% correct over the course of 2hrs. What if all we get out of AI is a computer getting 50% correct in 2 seconds?

Anecdotally, this is also my general impression of the state of AI as it exists today. Our big advances are generally just making simple calculations much much faster than before. Deep blue, AlphaGo, Google Search, Deep Learning in general; it's not smarter, just faster.

<comment><USER19> Not the singluarity, but DeepMind is now capable of applying learning in one area to learning in another area. Granted, this is just playing video games but it's an exciting step: [http://www.wired.co.uk/article/deepmind-atari- learning-seque...](http://www.wired.co.uk/article/deepmind-atari-learning- sequential-memory-ewc)

</comment></comment><comment><USER20> I have never come across a well-defined concept of "The Singularity." Society still doesn't agree on how to compare intelligence between humans. What is the measurement approach that I could use to determine if Kurzweil is correct?

<comment><USER21> Kurzweil has a fantastically vague definition: the point after which things are so different we can't presently comprehend the magnitude of change.

<comment><USER22> That is sort of the Vingean 'mystery' take. If you enjoy his writing style and SF 'Marooned in Real Time' is worth a read.

</comment></comment></comment><comment><USER23> I think maybe both Elon Musk and Ray are looking at it wrong. The ideas behind neural lace/neocortex has an implicit human-centric bias. In some ways this is similar to how a hundred years ago some people thought earth to be the center of the universe.

AI is coming on a vastly different 'hardware platform'. There is little reason to believe that it will be limited by cognitive constraints implicit to the human form. Extrapolating the rate of growth in processing power makes it extremely likely to surpass human scale processing very soon.

What both these things imply is that AI has little to gain by 'tieing' itself down to humans through a neural lace or the neocortex.

<comment><USER24> Computer programs don't have goals unless provided with them. They don't have wants, or needs, or interests or hopes or dreams. Even if they start "thinking" the default would be a zen lack of attachment to "existing" or "advancing". If I write a C program, it doesn't care if it terminates.

Humans can provide the drives on an ongoing basis. The danger is providing any drive that can get out of hand before we can revise it.

[https://wiki.lesswrong.com/wiki/Paperclip_maximizer](https://wiki.lesswrong.com/wiki/Paperclip_maximizer)

<comment><USER23> Not too sure.

All programs have a very explicit goal - a lot more specific than most humans do. You will have to try very hard to write a program to not have a goal.

Your laptop has a need of battery life. It lets you know of the same when it is out of it. Not very different from humans being hungry.

AI might not have hopes or dreams. But a lot of recent game playing AI can simulate possible future scenarios and develop responses for them. Not very different from hopes and dreams.

If you write a C program, in some ways, the only thing in the 'programs mind' is to finish its goal and terminate itself. In a hurry to finish our goals and terminate ourselves is also perhaps how an Alien intelligence would describe the human race looking in from the outside.

Humans can provide the drive only because we make bigger plans than AI. And our plans are a direct expression of our computing power. There is no good reason why AI wont beat that processing power.

<comment><USER24> I think our goals come in because we have evolved drives vs. being programmed, not because of processing power.

At the same time, giving an AI a goal is the moment when we become subject to an indifferent genie who doesn't share our values.

In terms of your original question "what use would they have for us?" I guess my answer is something like: if we program them correctly, helping us will be their only goal. If we give them other goals, even slightly off the mark and don't have a tightly integrated way to course correct (like the neural lace), then we will be like ants crushed by an indifferent boot-heel.

<comment><USER23> 'If we program them correctly, helping us will be their only goal' \- I think this is too optimistic a view of the future. I suspect that it is also a bit simplistic.

Even if we assume that we have a way to 'program' them, the problem is that we ourselves dont know what it means to 'help' humans.

If those humans were a part of the US military facing a situation similar to ww2, it would mean that AI 'help' those humans drop some nuclear bombs. If those humans belong to a religious fundamentalist group, it might mean that the AI help further the cause of their gods.

One probable outcome, that this chain of thought leads to, is that perhaps the last AI standing will be the one which kills all other AI, or has the capability to. A possible corollary being that to do so the last AI standing will be the one which is able to prioritise its own survival over everyone else - even other humans. Which was not the plan that we started with.

</comment></comment></comment></comment></comment><comment><USER25> I read Kurzweil's earlier book, _The Age of Intelligent Machines "_ as a boy and remember how fantastical it seemed. At the time I felt like he laid out a strong case for his predictions but every adult I knew, including my teachers, thought it was nuts... especially his predictions of a chess AI beating a the world chess champ and of sequencing the human genome by the year 2000.

Both of those things ended up happening a couple of years _before_ 2000\. While practically the entire world was saying that Kurzweil's far too optimistic, it turned out on the whole they were slightly too pessimistic.

It would be foolish to discount this.

<comment><USER14> Sequencing the genome always comes up as an example of underestimating the application of Moore's law, but mapping the genome is not the same as understanding how specific genes work, or the epigenome and the interplay with the environment, which is a lot more important than merely sequencing genes.

<comment><USER25> Yes. A chess AI defeating Kasparov also always comes up as an example of Moore's law, but creating an AI capable of using bruteforce to examine all plausible moves dozens of plies deep into tree of potential games is not the same as creating one capable of making more strategic assessments of a board needed to win games such as go or Texas hold'em.

Kurzweil has done great work mapping out when AI is likely to reach each of these milestones and so far has been far more successful in his public predictions than anyone else.

</comment></comment></comment><comment><USER26> Worth linking to PZ Meyers takedown of Kurzweil's ignorance of biology. [1]

[1] [http://scienceblogs.com/pharyngula/2010/08/21/kurzweil- still...](http://scienceblogs.com/pharyngula/2010/08/21/kurzweil-still-doesnt- understa/)

</comment><comment><USER27> Kurzweil's prediction of human-level AI is not the same as his Singularity prediction, which he measures as a machine having processing power greater than the combined processing power of all human brains on Earth. For that date, he has given 2045.

</comment><comment><USER22> Not a singularity but any cyber augmented memory interface would lend the appearance of genius until the inputs/outputs are all wrong. Then you have artificial alzheimers and dementia.

</comment><comment><USER28> Kurzweil should be treated equivalently to a new-age mystic. He doesn't claim there is any evidence supporting his claims, and we shouldn't believe there is any either.

</comment><comment><USER29> I wonder if he's taking the end of moores law into account though?

It's a fairly recent development and I'm not sure how many futurists have refitted their models for that.

</comment><comment><USER30> But when will it be equally distributed?

</comment><comment><USER31> My thoughts on Kurzweil's predictions from 12 years ago:

My own two cents thrown into the ring say that the class of future portrayed in the Singularity is Near (TSiN) is something of a foregone conclusion. It's quite likely that we'll all be wildly, humorously wrong about the details of implementation, culture and usage, but - barring existential catastrophe or disaster - the technological capabilities discussed in TSiN will come to pass. The human brain will be reverse engineered, simulated and improved upon. The same goes for the human body; radical life extension is one desirable outcome of this engineering process. We will merge with our machines as nanotechnology and molecular manufacturing become mature technologies. Recursively self- improving general artificial intelligence will develop, and then life will really get interesting very quickly. And so forth ... the question is not whether these things will happen, but rather when they will happen - and more importantly, are we going to be alive and in good health to see this wondrous future?

We humans are in the process of building tools that enable us to create or meaningfully interact with ever-greater complexity. There is one important area of complexity management in which we seem to be making little headway, however: the organization of humans in business and research. For all that we can now accomplish with faster computers and enormous leaps in telecommunications, we don't seem to have made significant inroads in getting large numbers of humans to cooperate efficiently. I am prepared to go out on a limb here, as I have done before, and say that business and research cycles that involve standard-issue humans are incompressible beneath a certain duration - they cannot be made to happen much faster than is possible today.

This is not to say that they cannot be made cheaper. But cheaper doesn't equate to faster business and research cycles; rather, it means that any given problem will be tackled by many more parallel attempts. Expensive projects mean conservative funding organizations, which means organizational matters proceed at a slow pace. This is a defining characteristic of our time: we have blindingly fast rates of research and technological advances once the money is on the table, but the cycles of business, fundraising and research are still chained to the old human timetable.

Kurzweil's Singularity is a Vingean slow burn across a decade, driven by recursively self-improving AI, enhanced human intelligence and the merger of the two. Interestingly, Kurzweil employs much the same arguments against a hard takeoff scenario - in which these processes of self-improvement in AI occur in a matter of hours or days - as I am employing against his proposed timescale: complexity must be managed and there are limits as to how fast this can happen. But artificial intelligence, or improved human intelligence, most likely through machine enhancement, is at the heart of the process. Intelligence can be thought of as the capacity for dealing with complexity; if we improve this capacity, then all the old limits we worked within can be pushed outwards. We don't need to search for keys to complexity if we can manage the complexity directly. Once the process of intelligence enhancement begins in earnest, then we can start to talk about compressing business cycles that existed due to the limits of present day human workers, individually and collectively.

Until we start pushing these limits, we're still stuck with the slow human organizational friction, limits on complexity management, and a limit on exponential growth. Couple this with slow progress towards both organizational efficiency and the development of general artificial intelligence, and this is why I believe that Kurzweil is optimistic by at least a decade or two.</comment>


Ask HN: People using both python 2.x and 3.x on OS X, what setup do you use? - <AUTHOR> Specifically I'm wondering how you make it all work with installing and using modules, when a few things are happening:
- You may need to run 2.7 scripts
- You may need to run 3.x scripts
- You may need to edit, create, and maintain scripts of both versions.
- The system may change the system python out from under you, with major updates of the OS or Xcode
- You install libraries with pip or pip3 and they claim to have installed for a specific version of python, but then at run time, that same specific version of python complains that the library isn't installed.
What setup is best for managing this?
If your answer is "I don't do that" or "I wouldn't do that if I were you" then it's OK, you don't have to answer... this question is for people who are doing it. <comment><USER2> I develop for both Python 2 and Python 3 on OS X and my setup is pretty similar to rgacote's.

I installed both versions of Python using homebrew[0] so it doesn't matter which version OS X ships with.

Python 2 is still the default. So I have python and pip, and then python3 and pip3.

Every project I work on has a virtual environment[1], which is named after the owner and the project, e.g. citruspi-skynet.

If it's a Python 2 project, I just create the virtual environment normally.

        mkvirtualenv citruspi-skynet

If it's a Python 3 project, I set the location of Python interpreter.

        mkvirtualenv -p $(which python3) citruspi-skynet

I've run into situations where I have to port a Python 2 project to Python 3, while maintaining the Python 2 project. In that case, I normally use the same repository, but a new branch. However, I'll keep two copies of the repository locally so I can work on both branches at the same time.

        Code/
            citruspi/
                skynet
                skynet3

And then I'll have two virtual environments, citruspi-skynet and citruspi- skynet3.

I haven't run into any issues with this setup and I've been pretty happy.

[0]: [http://brew.sh](http://brew.sh)

[1]: [https://virtualenv.pypa.io/en/latest/](https://virtualenv.pypa.io/en/latest/)

<comment><AUTHOR> Thanks! Did not know about virtualenv, I'll try that. This is really good and detailed information; I appreciate it (and rgacote's too).

</comment></comment><comment><USER3> About three months ago I started a serious attempt to port my projects from Python v2 to v3. Although I do not deploy on OS X, I do a fair bit of development on OS X.

My setup: 1) never use the system Python for development. 2) install Python 2.7.10 and 3.4.3 from mac ports. 3) Always work in a virtual environment. 4) When developing generic scripts, use the port select method to switch between versions. 5) Have virtual environments built out for both versions.

What I've not yet done is write a script to build a binary 2.7 and 3.4 wheel. In that case, I'd likely just refer to the 2.7 and 3.4 versions specifically instead of generically (ie. python2.7 and python3.4 vs. just python).

<comment><AUTHOR> Thanks! Good to hear someone is making it work. I'm studying your reply (and that of citruspi) and am going to take a stab at this.</comment></comment>


Up to 4GB of Memory in WebAssembly - <AUTHOR> https://v8.dev/blog/4gb-wasm-memory <comment><USER2> I wish new platforms would embrace 64 bit as the default. C and C++ for all common platforms use 32 bit literals and prefer 32 bit operations (char * short => int). Rust made a similar mistake. Java arrays use 32 bit subscripts, etc... I don't have a single computer (including my phone) using 32 bit pointers, but integers are stuck in the late 80s. (We already had 64 bit DEC alphas in the early 90s)

For a web page, 4 gig seems like a courtesy limitation to users, but that should be enforced by the browser refusing to suck up the entire computer rather than the language being unable to. I routinely write (non-web) applications which use arrays larger than 4 gigasamples.

<comment><USER3> I, on the other hand, wish everyone would embrace 32 bit by default. Doubling the size of every index, integer, etc comes at significant memory cost for next to no benefit. Increasing the amount of memory used directly impacts performance considering how slow memory is and how important it is to keep commonly used items in cache.

If you're seriously using more than 4gb in a web page... I wouldn't mind a non-default wasm64 format. You should also be considering shipping a native app at that point, wasm is not free in terms of performance.

<comment><USER4> > Doubling the size of every index, integer, etc comes at significant memory > cost for next to no benefit.

The _overwhelming_ majority of GUI program data is composed of images, textures, sounds, videos, 3D models, text, etc.

I would bet that less than 5% of the memory required to host a popular web page (facebook, amazon, etc.) is dedicated to pointers, array indices, etc.

<comment><USER3> The overwhelming majority of what wasm will be used for probably does not include images, textures, sounds, videos or 3d models. The overwhelming majority of the memory in most wasm programs will probably be not large arrays of text.

The webpage as a whole is a gui program, but wasm is primarily a place to run computationally intensive code. The web-browser deals with things like rendering images natively without storing the image in wasm.

<comment><USER5> What do you think that computationally expensive code is cranking on? It ain't small bits of text.

<comment><USER3> When it is text, it's usually more small bits of text than big bits. If you're just copying around giant strings you're unlikely to be using webasm. More likely you're copying around tons of small strings as you format them into a giant string if that's the end goal. Or you're copying around tons of small strings as you use those small strings to make api calls to the dom (indirectly through js). Or you're just plain running something like a physics simulation and don't even have text in the first place.

</comment></comment></comment></comment></comment></comment><comment><USER6> It's like reinventing what exists and doing the same mistakes that were already done!

</comment><comment><USER7> Just reading the part about the ensuing JavaScript implications gave me a stress-headache. Bless the people who are willing to work through these kinds of issues so the rest of us get to use the result.

</comment><comment><USER8> V8 wasm has memory size limitation because it is fundamentally limited by the chrome browser.

But other server-side WebAssembly don't have this question, for example, SSVM never had any arbitrary memory limit.

</comment><comment><USER9> Does the 4GB limit only apply per WebAssembly instance or does it apply to the V8 runtime as a whole? Can a single page run multiple separate 4GB WASM instances?

</comment><comment><USER10> So, will we need to have 4GB of ram to run Javascripts now? :)

<comment><USER11> The title refers to web assembly memory limit. However, it's mentioned javascript now supports up to 16 million terabytes of memory (equivalent to 4 jira tabs).

<comment><USER12> Hah! It really is comical how insanely slow and bloated JIRA is. Its the only tab I keep open 24/7 because loading it takes so long.

When I restart my PC I have a login script that fires up a bunch of slow stuff while I get coffee. My IDE's, Docker containers... and my JIRA tab :)

</comment></comment></comment><comment><USER13> Imagine how much adware you'll be able to fit in 4GB!

</comment><comment><USER14> Are WebAssembly projects going to display a message somewhere that says "WEB4G" when started?

(disclaimer: If you're under 35 you might not get this reference)

<comment><USER15> I'm 39 and I don't get it.

<comment><USER16> I assume it's from when you used to boot DOS mode games that addressed beyond 640KB conventional memory they had DOS/4GW labeled all over.

[https://en.wikipedia.org/wiki/DOS/4G](https://en.wikipedia.org/wiki/DOS/4G)

<comment><USER15> The slash helps. I'm pretty sure Duke Nukem, Doom, and similar all showed that banner during startup.

<comment><USER14> Yeah, sorry. Forgot the slash. It's only been 20 to 25 years... :)

</comment></comment></comment></comment></comment><comment><USER17> Amazing that they have a dark mode detection on that website.

<comment><USER18> You can do that in CSS now. I've noticed surprisingly many sites adjusting when I started using a Windows machine and set my system-wide preference to dark mode.

<comment><USER19> Prolly cause the devs themselves use it

<comment><USER20> Yup I try to convert every product I develop lol

</comment></comment></comment></comment><comment><USER21> Why do we need to support stating the length ~~"2^32+1"~~ 2^32?

<comment><USER22> It would be "2^32", not "2^32+1". 2^32 isn't representable in a 32-bit integer, the same way 256 isn't representable in an 8-bit integer--the maximum is 2^8-1, or 255.

But the argument that they need to represent 2^32 and therefore _that 's_ why they used 64-bit integers is dubious. No 32-bit WebAssembly program could ever operate on and pass an object as large as 2^32 bytes because the code and data structures for the smallest possible program would already take up more than 1 byte in that 32-bit address space.

<comment><USER23> As is mentioned in the article, u64 was used to future proof for wasm's upcoming memory64 type: [https://github.com/WebAssembly/memory64/blob/master/proposal...](https://github.com/WebAssembly/memory64/blob/master/proposals/memory64/Overview.md)

<comment><USER21> Yeah, so what are they going to do when they then claim to need to to represent the length 2^64?

<comment><USER24> That won't happen on a 64 bit machine. By the time we need that, the code will be so vastly different that trying to prepare for it now would be counterproductive.

<comment><USER21> I agree it's stupid. I think worrying about representing the length of 1 object filling the entire address space is stupid, wether the address space is 2^32 or 2^64

<comment><USER24> > representing the length of 1 object filling the entire address space

Isn't this about encoding the WASM address space itself, inside the outer computer's 64 bit address space?

It's only a slight annoyance if it doesn't get to be quite the normal limit, but since they're changing some of this code anyway, and they're going to need even bigger numbers in the future, it makes sense to do a proper adaptation.</comment></comment></comment></comment></comment></comment></comment>


Fish don't know they're in water - <AUTHOR> http://sivers.org/fish <comment><USER2> This post borrows heavily from the famous "This is Water" speech that David Foster Wallace gave at Kenyon College. It's well worth a read. Full text of the speech available here: [http://moreintelligentlife.com/story/david-foster- wallace-in...](http://moreintelligentlife.com/story/david-foster-wallace-in- his-own-words)

<comment><USER3> Wild! I don't remember ever having read that, but I must have years ago, and the metaphor stuck.

Thanks for letting me know. I updated the post to give credit.

<comment><USER4> If you ever want to extend the analogy to include the perspective of the water here's one to read:

 _"Over the last few years I've regularly been cornered by nervous publishers or broadcasters or journalists or film makers and asked about how I think computers will affect their various industries. For a long time most of them were desperately hoping for an answer that translated roughly into 'not very much'. ('People like the smell of books, they like popcorn, they like to see programmes at exactly the same moment as their neighbours, they like at least to have lots of articles that they've no interest in reading', etc.) But it's a hard question to answer because it's based on a faulty model. It's like trying to explain to the Amazon River, the Mississippi, the Congo and the Nile how the coming of the Atlantic Ocean will affect them. The first thing to understand is that river rules will no longer apply."

Since you're currently holding a magazine, let's think about what might happen when magazine publishing is no longer a river in its own right.._

Douglas Adams - The one person we really needed to explain all this stuff to us <http://www.douglasadams.com/dna/980707-05-a.html>

</comment></comment></comment><comment><USER5> If Derek were to rephrase the question as, "How many of you would like to work in government some day?", I would bet almost all 50 hands would go up. The reason for it is that in Singapore, many regard a government job as one with the highest job security, best pay and benefits.

Our cabinet ministers are paid millions a year[1]. Obama's allowance is about what a fairly low official would be paid.

[1] [http://en.wikipedia.org/wiki/Cabinet_of_Singapore#Remunerati...](http://en.wikipedia.org/wiki/Cabinet_of_Singapore#Remuneration)

<comment><USER6> In America (and the UK), government jobs are also the ones with the highest job security, best pay and benefits.

[http://www.usatoday.com/news/nation/2010-03-04-federal- pay_N...](http://www.usatoday.com/news/nation/2010-03-04-federal-pay_N.htm)

[http://www.telegraph.co.uk/news/politics/8501369/Workers- in-...](http://www.telegraph.co.uk/news/politics/8501369/Workers-in-the- public-sector-are-more-than-40pc-better-off.html)

<comment><USER7> And yet, perhaps because of the reasons mentioned, having a Government job is in many ways an embarrassment in this country.

<comment><USER8> Wait - Are you talking about the US? If so, how is having a government job an embarrassment? Gosh, it must be so shameful to work for the White House, the FBI, the Treasury, Homeland Security, the Military, the CIA, the Senate, the Justice Department, the Supreme Court...What sap would ever want to be president? /sarcasm

Even the USPS has more impact than the vast majority of SV startups...combined. Just sayin'.

<comment><USER9> What sap would want to be the guy at the DMV counter that has to deal with a 20 year old computer system and loads of irate customers who want their tabs renewed right this minute? What sap wants to be the guy at the post-office counter at 11:30 pm on April 14th? Do you really think that TSA screener _wants_ to feel you up/look at naked pictures of you when you go through the airport queue?

There are plenty of crappy jobs in government, just like in the private sector. Romanticizing it doesn't do anyone good.

<comment><USER8> I agree wholeheartedly - there are plenty of jobs that suck in any industry and, likewise, there are plenty of jobs to be proud of. The blanket statement that "in this country, government jobs are embarrassing" is extremely unfair and, well, ignorant.

p.s. I do not work for the Gov't.

<comment><USER7> I was speaking as a former government worker who loved his job. I'm not trying to put down government workers, it's just a fact that unless you are in something "flashy" like the FBI or CIA most people in the USA think you are not very ambitious for settling into a civil service career. You don't often hear people dreaming about being postal workers.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> _There was once a wise and venerated fish who preached about water. Water, he would say, surrounds and supports us. We are all in and of the water, and where there is nothing else there is water.

Fish came from all over the ocean to hear him teach. 'I have nothing to teach,' he said, 'only enjoy the water,' but they came anyway, and some of them began to understand the water, and some of them came to understand it fully, and were called awakened.

One day a fish came and said 'Teach me of the water'. The teacher said 'I have nothing to teach. The water is all around us, above and below, and it fills the spaces where nothing else is.'

The fish frowned thoughtfully. 'You mean this stuff?' he asked, and flicked a fin so that a wave of water lightly struck the teacher's face.

'Yes,' said the teacher, bowing his head and smiling in acknowledgement 'that is the water; I see you have attainment.'

'Oh,' said the fish, surprised, 'that's it?'

'That's it.'

'Oh, okay,' said the fish, 'nice weather we're having, eh?'"_

from <http://www.davidchess.com/words/BrokenKoans.html>

<comment><USER11> _> from <http://www.davidchess.com/words/BrokenKoans.html> _

This has cheered me up immensely at the start of the week; I may not have to kill myself now, and may just affix some of these to my wall instead.

<comment><USER12> Maybe you're joking, maybe not. It's impossible for anyone to know on the Internet.

Be that as it may, if you're really contemplating suicide, please talk to someone about your feelings -- or lack thereof -- before you do anything else. Even if it's just a stranger at a hotline.

</comment></comment></comment><comment><USER13> I first moved to the US in the late nineties and stayed there for 4 years. I thought I would learn a lot about American culture which I did.

But what I didn't expect was how much I learned about my own (Danish) culture.

I also learned who where my friends, who did I miss, who I could live without.

I swam across the pond from one culture to another and learned that the water might be different but the fish are more or less the same.

I have to say I liked the new pond better than the old one.

<comment><USER14> I did the opposite swim and have had the exact same experience. I miss some of my friends but found my family to be much more reliable.

I try to avoid having preference of one pond over another. I now understand how each system is different and see the advantages and flaws in both.

One thing I try to avoid is "immigrant guilt". I don't know if there is a word for it but when you move to another country some try to over compensate for fear of losing their identity, ie. being extra British, or extra American (this is the one people tend to meet it seems), or extra French. These people tend to celebrate the national holidays even if they never did before, wear patriotic or national shirts, or go extra thick on the language.

<comment><USER15> Unitarians do this, but with religeon. Few are born into it; most are disaffected from something else. There are said to be 3 phases

1) Boy those {what I used to be} are full of it.

2) So, what's all this Unitarian stuff about?

3) {long delay} I see, I will always be {what I used to be}

</comment></comment></comment><comment><USER16> Is there any evidence fish don't "know" they are in water?

I've seen plenty of fish from flying fish, to carp, to sharks jump completely out of water time after time after time.

The archer fish can accurately shoot (spit at) flies that are out of water and down them (and eat them) so something within the fish can correct for refraction.

Salmon can be seen jumping out of water, and against a strong current, they can be seen swimming very hard, and making little headway or even giving up ground.

It's not clear to me that fish don't understand they are within water.

citation-needed.jpg

<comment><USER17> _Whoosh_

Someone is stuck in Reddit water.

This reply may seem clever and proper from the point of view of someone living in a Reddit culture, but it is rude and pointless in a Hacker News culture.

We do not place high stock in pointless pedantry or mundane memes. We focus on intelligent, meaningful discussion that centers around important points in submissions. Picking a tangential (and historical) analogy to attack does not further the discussion in any way. This entire thread is a massive waste of space.

<comment><USER18> Am I the only person that thought jerrya's original comment was quite well thought out and reasonable, and was only later put off the discussion by other people attacking him?

If criticisms such as jerrya's are the plague of Reddit, then surely "this is a bad HN comment" is the plague of HN. And yes, I realize I risk being self- referential here, but I really think this needs proper calling out.

<comment><USER17> I thought jerrya's original comment was reasonable until I got to, "citation- needed.jpg." I was actually "lucky" that he included that bit, making me question the relevance of his entire post.

It is not unintelligent or spammy comments that endanger the discourse at Hacker News. It is comments that seem to be saying something worthwhile that get upvoted and take up valuable real estate on the comment threads while being of almost no value that threaten to bring Hacker News too close to the multitude of other sites out there.

It used to be that the HN comment threads were multiple times better than the submissions themselves. I would have a very hard time arguing that today.

</comment></comment></comment></comment><comment><USER19> This is true even on a much more micro level. As a Chicagoan who recently moved to moved to Milwaukee (< 100 miles) I'm continually surprised by cultural differences. There's still a lot the two cities have in common but in day-to-day living the differences really start to show.

I.e. I meant ion to a random friend in Chicago that I'm bummed there's no way for me to take transit to work and I get sympathetic agreement. I mention the same to someone in Milwaukee and they look at me like I have two heads (why would you want to do that?)

<comment><USER20> Not important but just a small error that always bugs me - _i.e._ equates to "that is to say", so it shouldn't be used to replace _e.g._ meaning "for example" - unless that transit story is the entirity of the cultural differences you talk of.

Sorry, slightly OCDish about this.

<comment><USER21> It seems to be a common mistake that non-native speakers make. For instance, I myself have just recently learned (thank you HN!) the difference between _i.e._ and _e.g._ (somehow I always thought that _i.e._ == _for example_ ), and since then corrected some friends in that matter.

</comment></comment></comment><comment><USER22> If you're not familiar with Derek, which wouldn't be hard to believe as he's not a big self-promoter, you owe yourself to go read the essays on his website. At worse, you'll grab great little nuggets of wisdom.

He's also very kind and approachable. A great example of a real "rich" person in this world.

</comment><comment><USER23> Love his articles. They may not be 100% his ideas but with a quick article you can be refreshed and ready to look at the world differently.

</comment><comment><USER24> A like question is to ask kids how they feel about the ~14.7 pounds per square inch they are experiencing? My kids where very perplexed.

</comment><comment><USER25> refreshing article, I love it.

I am from mainland China, a country boy actually.

but I love a bit of uncertainty out of my life. anyway, we are mortal, no one going to secure you out of death. So what can you lose?

<comment><USER26> >"no one going to secure you out of death" Maybe some translation showing, but this is a very insightful observation. People want all the security they can get, but the inevitable is true for all of us, so better make the most of what you have.

</comment></comment><comment><USER27> Entrepreneurship is of course everywhere and all around us. Look how complex and developed of a black market we have here in the U. S. of A.

</comment><comment><USER28> _I was speaking to a business school class here in Singapore. I asked, "How many people would like to start their own company some day?" In a room of 50 people, only one hand (reluctantly) went up._

I live in Singapore, and I wonder which school that is. I can't imagine 98% of students in that room not wanting to start their own company some day, at all when they are in business school.

I remember 4 of us planning to start a business when I was in school in Singapore more than 10 years ago and all 4 of us were in electrical engineering.

<comment><USER29> I've spent some time in Malaysia (around Penang), and most of the chinese malaysian I knew wanted to start their own business and considered being an employee to be something almost shameful... I've never seen a community of people more entrepreneurial.

I always assumed that it was the same in Singapore.

The part about people living with their parents is completely true though...

<comment><USER28> No, generally Malaysians are definitely way more entrepreneurial than Singaporeans.

Singapore has a much more stable environment and state-managed vibe. Over decades, this tends to encourage less entrepreneurial spirit in people here. This is changing recently, especially with the younger generation here though.

But I'd still be surprise of that kind of response in a business school here.

</comment></comment></comment><comment><USER30> The interesting thing about this lecture is, that it doesn't actually help you to see the "water". You maybe understand this fact theoretically. But without outside experience you will never know in which points you actually just follow a specific culture.

Personally the lecture I learned for myself, when I made this experience in a foreign country, is that I am a lot less like "So stupid how this foreigner behaves." when I see something strange to me. I try now, not to feel too much like I am something better, because I would never do so.

</comment><comment><USER31> In Sanskrit -> Koopa Manduka [Frog in the well]. I googled it up and found this link <http://www.balagokulam.org/kids/stories/koopa.php>

It tries to captures the idea that it is very difficult to accept something that is very radically different from what you are used to.

For eg: In the narrative by Sivers, entrepreneurship is probably not so important to a different culture!

</comment><comment><USER32> It's funny. I feel like my grandparents take it the same way as that classroom with 50 students. It's a perfect comparison even.

...

..Two generations behind.

<comment><USER33> Why do you equate this to being behind?

The generational analogy seems perfectly apt, but that doesn't make out outlook worse or less sophisticated than the other.

<comment><USER12> >Why do you equate this to being behind?

Because the future is perceived as more advanced than the past, having built on the notions/achievements/etc., of the past. Arrow of time points in one direction. (At least for humans)

<comment><USER34> > the future is perceived as more advanced than the past

This is a _very_ recent development, and it's still not universal. For the longest time, people believed that things were better in the past, that we are slowly moving away from a golden age, and that things are getting worse.

Some concrete examples are the biblical Garden of Eden/Armageddon; beliefs in Atlantis and other mystical places; the admiration for the Greek and Roman times, especially during the dark ages.

</comment></comment></comment></comment><comment><USER35> _Think you of the fact that a deaf person cannot hear. Then, what deafness may we not all possess? What senses do we lack that we cannot see and cannot hear another world all around us?_ Frank Herbert, _Dune_ , P.40

</comment><comment><USER36> I'm not an American and I never went to business school, but this sounds weird to me. Isn't _the whole point_ of going to business school to start business? I guess not, then :)

<comment><USER37> No, the whole point of going to a business school is to manage a medium/big business or grow a medium business into a big business. We have not yet figured out what exactly makes a new business venture succeed (apart from having heuristics in the most general terms). We have had better luck with the question of "How do I manage an existing business?" or "How do I grow the volume of business?" which is what the business schools teach (apart from a couple of entrepreneurship courses).

</comment></comment><comment><USER38> And human don't know they see the fish upside down. To a fish, the ground is the water level. The fish belly is actually their back.

<comment><USER20> Well that just plain isn't the case. Up and down are relative directions, not absolutes, and as fish are unable to think like this, we (humans) are the only ones able to define "up" or "down".

Even for us they are relative, but generally speaking on earth they are defined either by gravity or by feet and head on a human body standing up. Either way, whatever way a fish swims, it's not upside down by our definitions. And however you chose to define it, we still class it by _our_ definition, not by "what might we think if we were a fish capable of human levels of thought?".

And as to front/back... well that's theoretially described by the direction of the animal's normal movement. But regardless of that, again if you are defining a fish, it can only be defined by our grammar, not by their world.

<comment><USER38> > we (humans) are the only ones able to define "up" or "down".

No, you english speaking guys are the only ones able to define "up" or "down".</comment></comment></comment>


Google Says Stadia Will Outperform Consoles and PCS by Predicting Gamers' Moves - <AUTHOR> https://www.tomsguide.com/news/google-claims-stadia-will-outperform-consoles-by-predicting-players-moves <comment><USER2> So that's what Google uses all the data it collects from me for.

</comment><comment><USER3> And with our premium offering, your moves will be enhanced...</comment>


Why Checking References Isn't A Waste Of Time - <AUTHOR> http://boss.blogs.nytimes.com/2011/03/10/why-checking-references-isnt-a-waste-of-time/

<comment><AUTHOR> There's a kernel of a good idea in this article: before checking references, determine 2-3 questions about the candidate you need answered; then focus the reference check on those questions. This prevents you from posing generic questions that get canned, inconclusive answers.

That approach could glean valuable information even from direct references (the references you offer to a prospective employer are always primed and coached, right?). Even an extremely friendly reference is unlikely to lie overtly on the phone. So your mission as a reference checker is to pose straightforward questions that are hard to bullshit around.

People's concerns about HR "no detailed references" policies are also probably overblown. The references a candidate offers you are part of their credentials; they've presumably chosen the best ones they have. References that can't tell you anything because of "policy" are, in fact, negative references.</comment>


Launch HN: Belvo (YC W20) – Financial Data API Platform for Latin America - <AUTHOR> Hey HN,
Pablo and Oriol here, founders of Belvo (https://belvo.co/), a financial data API platform for Latin America. Think Plaid for Latam.
We were previously building a payments startup (something like Venmo) in Europe and when expanding to Latam realised how hard it is to connect to legacy infrastructure, whether it is to access data, validate bank accounts or process payments. We've also been working in fintech in Europe for the past few years (at companies like Revolut) and one of us comes from a traditional financial services background. We've seen the impact open banking technology, which has become common in Europe, has had on providing end-users with more transparent and fair offerings and on lowering barriers for fintech developers to get started and launch innovative new products. But this technology hasn't made it into Latam yet, so we saw a big opportunity and started Belvo to solve that.
Belvo allows end-users to connect their financial data to new fintech apps across Latam. We've seen a number of relevant use cases for our product so far. For personal and business finance apps, we allow users to connect bank accounts and view them in one place through account consolidation. This allows developers to provide better spending analytics and proactive recommendations. Business-oriented finance apps can reduce manual errors and costs via automated accounting by syncing bank feeds and reconciling transactions on a recurring basis. We've also seen that digital-first banks and wallets can use us to build in-house personal finance managers and authenticate the owner of any bank account - thus streamlining their know-your-client (KYC) processes. We also enable credit providers to build better and faster experiences for borrowers. Instead of having to build onboarding flows or asking users to self-report or upload their information, data can be synced via our API. Fraud risk can also be reduced and scoring improved by accessing more granular and broad data.
Currently we allow end-users to connect banks and bank-like sources to fintech apps. That being said, our goal is to aggregate all relevant financial data sources, not just banks. This is particularly important in Latam, where 50% of the population is unbanked. In this context, sources such as service providers (think prepaid phone, prepaid TV, electricity bills), digital wallets and gig-economy apps are relevant for both users and fintech apps. These are typically paid in cash and don't go through a bank statement or debit card but all have portals where consumption and spend can be analysed and categorised. Becoming the "source of truth" for all this data is pretty tricky as all data sources have different formats, ways to access, granularity, etc. and that's something we're looking to solve.
The process of connecting accounts to fintech apps is built on the premise of full and strong user consent to data sharing. Security / privacy is something we've been focusing on since day 1. Our engineering, infrastructure and data teams have past experience in working on products with similar complexities.
We went live in January in Mexico, our first market. We will soon be expanding to Colombia and Brazil and working on some additional products and sources to complement the core data API.
Belvo has been built by developers, for developers and our API documentation is public. The way to get setup is directly via our developer portal (https://developers.belvo.co/). Upon signup, you'll be able to retrieve your API keys for both our Sandbox and Production environments.
Oriol and I would be delighted to get your thoughts and feedback on what we're building.
Fire away HN! <comment><USER2> That's an awesome platform, I'll start implementing it in my startup!

Just a little feedback:

I just signed up, but I don't know if it was a special case; Your sign up flow was broken for me: Filled the basic info in the first page of the signup flow (where you ask for email/password/name) and in the second part (the one of the URL and what we are building) just jumped an error saying that I should retry later. I just clicked again the button and nothing happened. Opened the developer console, inspected the network and I saw the error message: "This user is already signed up".

Ok... Now I'm in the user panel, all good, but please show more information to the user, more if you are trying with a delicate thing like finances.

<comment><AUTHOR> Did you have an issue when typing in your url? Do you recall what the error message was? We do have a url validation in that form that requires [https://](https://) Typing in www. will give you an error.

<comment><USER2> Nope, the error was when I did submit the form, and it only was something like "Error. Try again later".

</comment></comment></comment><comment><USER3> Super cool. Best of luck, these types of services are very often game- changing.

Okay so one immediate issue I see security-wise though is you're sending security key passwords over email … and from what I gather in your docs, only over email? Either way sending it over email sounds shaky at best.

QOL request: on the institutions page ([https://developers.belvo.co/docs/institution](https://developers.belvo.co/docs/institution)), can you add links to the bank sites in question?

I like that you have a postman collection at the ready in your docs, that's nice.

Also your homepage is just … I don't think it's good. Sorry, I know this is probably not useful feedback, but it's a nearly autogenerated landing page for the docs site, it doesn't inspire confidence. I want you guys to succeed so please spend some money on a fresh new homepage if you're not doing that already.

Good luck!!

<comment><AUTHOR> Thanks for the feedback.

We're constantly improving the institutions page. I agree that adding the url to the bank / entity would be helpful.

The homepage for the developer portal you mean? We put it together using read.me as a first iteration but as we improve the product we'll also polish this up with a more customised UI.

</comment></comment><comment><USER4> Having been working on open banking for the past 12 months, I can see a lot of similarity and potential here. If I'm correct, you're trying to be true layer for Latin America.

Now question time, maybe a bit harsh but you need to think about it.

1\. simple one, where is the user authentication flow?

2\. the harsh one: as the same problem in OB, just curious what's your thought about building the trust between a third party (TPP or your client in your case) and the end-users? You know in the UK, even OB is relatively mature, you don't see many people willing to login to their bank account via a third party app, even though we all know it's very safe in the technological point of view. But trust is not something you can simply build with technology.

<comment><USER5> > Having been working on open banking for the past 12 months

What are you working on?

<comment><USER4> On the ASPSP side

</comment></comment></comment><comment><USER6> Looks quite neat, I'm happy to see more interest in these markets!

Also, "SHA256 encryption to ensure your user's data will always be safe and never compromised." confuses me, as that is a hash function, not encryption method.

<comment><AUTHOR> Thanks for the note - totally right!

</comment></comment><comment><USER7> With what banks will you start in Colombia? How will the flow be for users that need to login with a token[0]? (6 digit code that changes every 60 secs). Others banks ask you to recognized an image you selected before.

[0] [https://static.iris.net.co/dinero/upload/images/2009/10/1/84...](https://static.iris.net.co/dinero/upload/images/2009/10/1/84450_122753_1.jpg)

<comment><AUTHOR> We are starting with the banks with most coverage - so think Davivienda, Bancolombia, Banco de Bogotá, etc. We'll be looking to have quite a few go live soon. Good point on 2FA/MFA. We have built our API so it can fully account for those in the connection flow. More info here --> [https://developers.belvo.co/docs/handling-2-factor- authentic...](https://developers.belvo.co/docs/handling-2-factor- authentication)

</comment></comment><comment><USER8> I'm CTO at a startup here in Brazil. I'd love to chat with you guys about potentially being a beta user of your platform. Let's connect!

<comment><AUTHOR> Amazing. Sure, feel free to email me / us at pablo[at] or hello[at] and happy to discuss further.

</comment></comment><comment><USER9> Hi, this looks great. I run an accounting/productivity SaaS ([https://usebx.com](https://usebx.com)) and would be interested in integrating with your API. Would love to learn more about your product over a call (contact details in my profile). Thanks!

<comment><AUTHOR> Cool - thanks. Happy to chat further. Is your product mostly UK/Europe based or you also have an active client base in Latam?

<comment><USER9> We have about 3k users in LATAM, but otherwise mostly UK

</comment></comment></comment><comment><USER10> There is a big delay in clicking "Run" next to each script snippet, I would add some loading animation, because it takes 2-3 seconds to load and it gives no indication that it's doing something in the background.

<comment><AUTHOR> Thanks for the feedback!

</comment></comment><comment><USER11> Congrats on the launch. Your API looks very clean.

Do you support NuBank in addition to the big banks? I have heard NuBank has pretty aggressive anti-scraping approaches. Not sure if you support them or plan to in the near future.

<comment><AUTHOR> Thanks! We don't yet support NuBank, but it's on the list for sure - both for Mexico (where it launched a month ago) and for Brazil (where we'll look to expand soon). We do plan on adding neobanks and other financial data sources to our API though. Although we typically work in a "data source agnostic" way, we also spend time building up relationships and looking to get directly connected via partnerships.

</comment></comment><comment><USER4> Just read this. You definitely find a good problem to deal with

[https://www.entrepreneur.com/article/347661](https://www.entrepreneur.com/article/347661)

</comment><comment><USER12> That's a big no-no:

> The connection to bank institutions are made using the bank websites. When > using Belvo, customers would need to user their website bank credentials, > not the mobile ones if different.

<comment><USER13> This is literally how every banking API works. There are not many options aside from screenscraping.

<comment><USER14> This is fascinating. I'd always assumed that these open banking platforms had to go through a protracted period of relationship-building and negotiation with financial institutions, but you're saying the most common approach is scraping? Is this how, e.g., Plaid does it?

<comment><USER13> Correct. And not just for banking either. For financial brokerage APIs, a lot work the same way.

<comment><USER14> That is ... absolutely bonkers.

Thanks for your insight.

</comment></comment></comment></comment></comment><comment><USER15> Great to see more startups coming from Mexico and greater LATAM!

<comment><AUTHOR> Thanks!

</comment></comment><comment><USER16> Any documentation in a Latin American language?

<comment><AUTHOR> At the moment only in English. We've seen that most developers we work with are generally OK using English-based documentation to code. We might look to broaden that to Spanish and Portuguese down the line but it's not an immediate priority.

</comment></comment><comment><USER17> nice, congrats! looking forward to use it when it releases in brazil :)

side note -- it's interesting that you guys are focusing on LATAM but hiring in europe (i looked through your jobs page because i know some really good LATAM python devs that are looking for new challenges)

<comment><AUTHOR> Our product / tech team is mostly based in Barcelona (early team at least) but we'll actively grow our tech team in Latam as well - mostly Mexico City. Happy to get connected to folks you might think would be a good fit. :)

</comment></comment><comment><USER18> Is this a duplicate launch post? I seem to recall this posted previously within the last 72 hours, but that thread has disappeared (I had favorited it, but is no longer in my favorites).

<comment><AUTHOR> We did post this originally 24h ago but took it down a few minutes later to refine it and post again today. This should be the good post. Cheers!

<comment><USER18> No worries, favorited again! Looking forward to using your product.</comment></comment></comment>


Googleads misleadig people searching for Kdenlive - <AUTHOR> https://twitter.com/estudio_gunga/status/1281556343049146368 <comment><USER2> One argument in Google's defense is that not allowing competitors to a product to place ads on searches related to a product would be anti-competitive. What this defense ignores is that they do more than just allow such ads - they also place them _above_ organic results, and used deceptively discreet labels to mark them as an ad. Just a tiny 'Ad' next to the URL.</comment>


Show HN: Git russian-roulette – Challenge your luck in a Git repo - <AUTHOR> https://github.com/timofurrer/git-russian-roulette <comment><USER2> Idea for 'genetic software development': every n time units, run this tool, and the poor bastard who deletes a file has to rewrite it from scratch. Presupposes that on average, the rewrite will be better than the previous version.

<comment><AUTHOR> sounds good :)

</comment></comment><comment><USER3> This even force pushes! Your last hope is the reflog, which can also be pruned/deleted. Maybe that should be added?

<comment><AUTHOR> Oh yeah! I added a "git prune" and "git gc". That does it, right?</comment></comment>


Why Lingohub Is Switching from Ruby on Rails to Java + Spring MVC - <AUTHOR> http://www.hemju.com/index.php/2014/06/why-lingohub-is-switching-from-ruby-on-rails-to-java-spring-mvc/

<comment><USER2> Adios ruby ;)</comment>


Google Coder: a simple way to make web stuff on Raspberry Pi - <AUTHOR> http://www.raspberrypi.org/archives/4837

<comment><USER2> So you can install other stuff on there right? If I want to use some cool framework can I? Or am I just restricted in what the browser IDE provides?</comment>


Popular porn sites blocked in Philippines - <AUTHOR> http://www.bbc.com/news/technology-38637003 <comment><USER2>
        Instead, users see a message saying the sites have been blocked because of anti-child-pornography laws.

Although this is likely done out of incompetence rather than malice, this is how they erode freedom. They pick one thing that the large majority of people are generally against, find one instance of it on a public website, and use that to justify censorship of the entire platform. This happened with reddit in Russia, and it almost became widespread with SOPA/PIPA in the US.

Edit: reddit is unblocked in Russia but it was blocked for a time: [https://www.reddit.com/r/tifu/comments/3grpdf/tifu_by_gettin...](https://www.reddit.com/r/tifu/comments/3grpdf/tifu_by_getting_reddit_banned_in_russia/)

<comment><USER3> In 2009 the UK made illegal drawings of fictional characters that "predominantly convey" the impression that they are younger than 18. I've heard no complaints about it, either people people seem to be fine with making things illegal so long as they're disgusting (i.e people who don't care about their freedom at all), or because people don't know about it.

Just as you said - they come after the 'disgusting' things first. However I think that it should be a serious consideration as to whether a government is going to toe the line to make illegal drawings.

<comment> rm_-rf_slash It's illegal for the same reason it is illegal in many countries to grow cannabis and smoke it in one's own household: it is all about accumulating power and the incriminating evidence that can be planted on a dissident to imprison and silence them.

Edit: Apparently some evicence of these claims might be in order:

\--

"The Nixon campaign in 1968, and the Nixon White House after that, had two enemies: the antiwar left and black people," former Nixon domestic policy chief John Ehrlichman told Harper's writer Dan Baum for the April cover story published Tuesday.

"You understand what I'm saying? We knew we couldn't make it illegal to be either against the war or black, but by getting the public to associate the hippies with marijuana and blacks with heroin. And then criminalizing both heavily, we could disrupt those communities," Ehrlichman said. "We could arrest their leaders. raid their homes, break up their meetings, and vilify them night after night on the evening news. Did we know we were lying about the drugs? Of course we did."

[https://www.google.com/amp/s/amp.cnn.com/cnn/2016/03/23/poli...](https://www.google.com/amp/s/amp.cnn.com/cnn/2016/03/23/politics/john- ehrlichman-richard-nixon-drug-war-blacks-hippie/index.html?client=safari)

<comment><USER2> The CFAA does this very thing[1]. Violate a terms of service? You're now potentially a felon! But everyone violates TOS sometimes, especially with ridiculous rules like 'no rudeness', so prosecutors pick & choose their targets. (Though there has been some precedence set not to consider TOS violations alone to be breaking the CFAA)[2]

[https://www.theatlantic.com/technology/archive/2013/01/aaron...](https://www.theatlantic.com/technology/archive/2013/01/aarons- law-violating-a-sites-terms-of-service-should-not-land-you-in-jail/267247/)

[https://www.eff.org/deeplinks/2010/07/court-violating- terms-...](https://www.eff.org/deeplinks/2010/07/court-violating-terms- service-not-crime-bypassing)

</comment></comment></comment></comment><comment> rm_-rf_slash Ah, the classic fascist escalation. They already came for the drug dealers, but many did not speak up, for they were not drug dealers, nor did they want to be labeled as such or targeted by death squads. Then they came for the wankers, but indeed many still did not speak up, for they were not wankers, nor did they want to be labeled as such nor targeted by death squads.

There are only two logical questions to this whole affair: which groups are next, and when it all stops, who will be left?</comment>