Generative models and programming talent - <AUTHOR> http://esr.ibiblio.org/?p=316

<comment><USER2> Sure, the ability to form generative models is important, but it's at least as important to be able to change or adapt them when faced with contradictory evidence.

The "CS IQ" test in the article bothered me because it rewarded premature optimization (forming a generative model and sticking to it even when you have no reason to believe it's right) instead of what I would consider a more optimal strategy (recognize that you don't know how assignment works, hypothesize about the possible ways it could work, and use a different model of assignment for each question, thus hedging your bets for partial credit).

<comment><USER3> Adapting your model in the face of new evidence is part of the _definition_ of a model-seeking approach to problem-solving. I don't think that the article is implying that sticking to a particular model when confronted with contradictions is beneficial.

I think you are also using a different definition of "optimal strategy" than the author. The test was not measuring test-taking strategy - it may not even have been scored in a student-visible way. In the absence of a score- optimizing approach the natural inclination of the student's analytic style should come to the forefront. Additionally, the test had predictive power regardless of a root cause. Students who used a consistent model in selecting answers went on to succeed in the programming course, and the others did not. The underlying cause may actually be different but the concrete result stands.

<comment><USER2> You're right, I'm not arguing against the article so much as trying to continue its thought. I agree that generative models are useful. Among people who use them, I suspect that the next major predictor of success would be adaptability. Confirmation bias is the opposing force: once we form a model, we are biased towards it, and tend to overlook contradictory evidence.

One tactic that increases adaptability is not forming a model until you actually have to; this avoids confirmation bias.

You're also right about the nature of the test: as an experiment, it does show that presence of generative models predicts success. I'm interested in education, so I'm voicing the reason why this wouldn't be a practical test of qualification.

<comment><USER4> The bias point is well made. I don't remember the quote exactly, but i think it's something like "...when all you know are hammers, everything looks like a nail...". Though I think his point is that you have to at least be able to form models about the problems you tackle and stick to those models. I feel like you need some commitment or vision to be able to move on. Development tends to have two phases, exploration and exploitation. Balancing the two is a real problem. If you exploit too soon you may miss a much better solution, but if you do too much exploring you may just be wasting time. Balancing the two contributes to writing good code it seems.

</comment></comment></comment></comment><comment><USER5> I had a professor in a beginning CS class who was a fortran/pascal programmer (and it showed mightily) but had one _very_ good habit of re-enforcing good cognitive models with english language. Instead of saying a _equals_ b for a = b, he would say a _becomes the same as_ b or if it was a pointer operation a _points to what b points to_. I still use his method when reading code today.

<comment><USER6> I think that's a great convention. Using = for assignment introduces quite a bit of ambiguity, especially the common typo of "if (x = y)" when "x == y" was the intention.

If I ever get around to making a real language ( _ahem_ ), I will probably use either "<-" for infix assignment (left arrow) or "set" for pre/postfix; "=" will be a _value_ comparison, and "is" will be a _pointer_ comparison (i.e., symbol equality, capable of comparing non-terminating data structures, etc).

</comment></comment><comment><USER4> That was interesting. I took a vision class a few years ago that clearly illustrates these ideas. Bringing vision theory into CS boils down to converting continuous space into discrete space. This led to a great quote from the prof "CS people are engineering who think discretely". I think this article reflects this mentality. Being "good" at CS involves making a consistent state model where events always follow other events. This is yet another reason why concurrency seems to be difficult to grasp even for good CS students. Because of possible thread interleaving the typical state space explodes and we have to think about that kind of code in a different way.

</comment><comment><USER7> The last line concisely states what I've known I do for years: "[S]uccessful CS students are those who, given a set of facts, will instinctively seek a consistent generative model to connect them."

</comment><comment><USER8> A more general pattern recognition ability seems to fit the description of "seeking a generative model" here, and given such, I fail to see how this should be a CS IQ, rather than general... IQ.

<comment><USER5> Agreed. I wish more politicians had the tiniest sliver of a generative model in their muddled thinking.

</comment></comment><comment><USER9> This dude takes himself way too seriously. I agree with a weaker version of his claim: model-seeking is necessary but not sufficient for problem-solving.

</comment><comment><USER10> I think the first part is confusing in saying that "[good programmers] have a model of exactly what the computer does when it executes each statement." That makes me think of machine language: absolutely no abstraction. Good programmers don't need to understand every little detail of what's going on when a computer runs a program; it helps sometimes, but it's not fundamental. Anyway, from the article we can't say if that's what Reges meant.

The idea of a generative model reminds of the Architect, one of the INTP types, blokes the seek to model everything and understand every little detail of how stuff works. I expect a lot of hackers to be of this type.

</comment><comment><USER11> Gratuitous non sequitur.

<http://geekz.co.uk/lovesraymond/archive/show-them-the-code>

</comment><comment><USER12> This strongly resonates with Naur's brilliant "Programming as Theory Building". Unfortunately what seems to be the main site for it (<http://www.zafar.se/bkz/Articles/NaurProgrammingTheory>) is down.

</comment><comment><USER13> Hm... in the physical sciences we call this the Scientific Method.

<comment><USER14> Shht. computer 'scientists' are the ones that didn't make it into the physical sciences. No need to stoke their inferiority complex any further.

</comment></comment><comment><USER14> I had to laugh when I read the quoted students reponse to the wrong output. Just introduce a simple correction that fulfills the requirement for his particular test case. Why you'd wonder what the academic standards are in a univesity that even allows such people to enter the door, this modus operandi is even encouraged the 'industry' under the moniker of 'test-driven development'.</comment>


Ask HN: Which questions do you ask to feel out company culture? - <AUTHOR>

<comment><USER2> Ask them point blank. What's the culture like here? If I fail, admit it and fix it is there repercussions? How do you guys help newbee people come up to speed? What would my first week be like? Are there any company outings? Is it looked upon bad if I don't go cause I am busy? Are there any normal weekly events that happen? Is it frowned upon to write code outside of work for myself or open source? etc.

Visually: What's the environment look like? Do you see anybody laughing and having a good time, or is everyone's head down into their desk and not looking up? Are the machines old? Are the work environments nice (even if dated) etc. Look at how many layers of management there are.

BTW -- any awkward pauses on the questions or doubts on the visual and you already have an answer.

</comment><comment><USER3> Ask them about their vacation policy, and specifically ask your interviewer when was the last time they took a vacation 1 week or longer.

Ask if they're remote friendly.

Ask what their sick policy is.

Ask what their company does to make the world a better place. It's fine if they don't have an answer, some entities exist just to make money without any other "mission", it's just good to know.

</comment><comment><USER4> As you may have puzzled out from other responses here, that's a very personal question. You need to figure out the cultural details that mean something to you, then ask the questions that reveal them.

For some people that's vacation, for others it's safety nets, and for others it's engineering processes. Only you know what matters to yourself.

</comment><comment><USER5> Ask if they have a coding standard. If it's very picky about how comments are to be formatted, steer clear.

<comment><USER6> I would say the same question, but for the opposite reason. I can't stand seeing common things written in 20 different formats.

<comment><USER5> I had to contemplate my answer for a while.

I agree that there should be coding standards, but perhaps I should have been more clear: it is common for shops that care a great deal about code formatting, not to care - perhaps not to even know - about coding standards which can avoid bugs.

I had in mind specifically one shop that was very, very picky about its comments, but no one other than I had so much as heard of a C++ smart pointer.

</comment></comment></comment><comment><USER7> In a few words, how would you describe the company culture?</comment>


Lea – Discrete probability distributions in Python - <AUTHOR> http://code.google.com/p/lea/

<comment><USER2> A minor grumble, but the filenames are not intuitive at all to me... It makes finding what I'm looking for a bit difficult.

        alea.py
        clea.py
        dlea.py
        flea.py
        ilea.py
        lea.py
        olea.py
        plea.py
        tlea.py

Also if anyone is interested in floating point weights, look at the alias method. Good tutorial here: [http://www.keithschwarz.com/darts-dice- coins/](http://www.keithschwarz.com/darts-dice-coins/)

EDIT: User rawnlq beat me to mentioning the alias method. I second the recommendation.

</comment><comment><USER3> Oh, that looks _nice_. This is really great. I worked on a project a while back in which I needed to generate a discrete probability distribution, and found Python's support for this to be lacking. I ended up having to hard-code most of the distribution and then use multipliers to cover other cases, which I found very mathematically unsatisfying.

Thus, I think Lea looks very helpful for certain use-cases related to discrete probability. Great!

<comment><USER4> Did you try Scipy ?

</comment></comment><comment><USER5> I was hoping to see an implementation the alias method [1] for sampling from discrete distributions! Nonetheless very cool.

[1] [http://en.wikipedia.org/wiki/Alias_method](http://en.wikipedia.org/wiki/Alias_method) or [http://www.keithschwarz.com/darts-dice- coins/](http://www.keithschwarz.com/darts-dice-coins/)

</comment><comment><USER6> I'm under way on something like this for JavaScript with a buddy of mine. [https://github.com/jacobmenick/sampling/](https://github.com/jacobmenick/sampling/)

</comment><comment><USER7> The great thing about python is that we all get to implement such a library ourselves, using our own idioms and lack of documentation and/or unit tests.

<comment><USER8> I doubt that there are no existing libraries in Python that allow to work with discrete probability distributions. Not that it stops anyone from implementing their own.</comment></comment>


Using ZFS on Linux - <AUTHOR> http://arstechnica.com/information-technology/2014/02/ars-walkthrough-using-the-zfs-next-gen-filesystem-on-linux/

<comment><USER2> Likely would have gotten more upvotes with a better title.</comment>


Don't talk to the police - <AUTHOR> http://www.youtube.com/watch?v=i8z7NC5sgik&feature=related <comment><USER2> The HN guidelines say: "If you had to reduce it to a sentence, the answer might be: anything that gratifies one's intellectual curiosity."

I think this qualifies.

<comment><USER3> I'm not entirely sure this is valid for HN, but it's at least more valid than Arrington's latest bitching about Twitter.

</comment></comment><comment><USER4> Not Hacker News.

<comment><USER5> "Not Hacker News" is hn's equivilent of "First".

<comment><USER6> No, "Non-scribd link: <http://*.pdf>" is the HN equivalent of "First".

</comment></comment></comment><comment><USER7> Part 2 is excellent too:

[http://www.youtube.com/watch?v=08fZQWjDVKE&feature=relat...](http://www.youtube.com/watch?v=08fZQWjDVKE&feature=related)

</comment><comment><USER8> Man, that guy talks fast!

</comment><comment><USER9> I remind myself that I don't have to talk to the police every few months. (Need to pre-wire it so I don't flounder when under duress.)

One thing you have to be careful about: you may end up doing yourself more damage by pleading the fifth when it isn't necessary.

"No officer, I understand this is a routine traffic stop, but I'm pulling out the fifth and am not responding to your queries."

<comment><USER10> "Am I being detained? Am I free to go?"

Those are your two key questions.

These guys aren't advising you to be a jerk, but you should know what your rights are and how they apply to you.

<comment><USER9> Bingo. Don't forget the word 'detained'. Cops can either detain or arrest you. Normally, they will tell you when you are being detained.

Being detained means they may put you in cuffs for their own safety while they try to understand the situation. (Let's say you are involved in a domestic squabble.) You are temporarily under the state's custody but you aren't being charged with anything.

You know what being arrested means. You don't want that.

</comment></comment></comment><comment><USER11> Anyone know if his slides are available online?

</comment><comment><USER12> I didn't know the micromachines man became a lawyer. Slow down your speech their champ.

</comment><comment><USER13> So following this advice and the knowledge that police can lie to you in interrogation^Winterview (and not only there) I would do this:

1\. tell the cop that you will exercise your 5th amendment. 2\. tell the cop that you know that the police is allowed to lie to interviewee. 3\. tell the cop that you will add the time wasted here to cost that will be billed to him or most likely sued for in counter claims court. 4\. tell the cop "that by detaining me here further you agree to accept any and all such costs" 5\. tell them it is their move.

do 3. and 4. if you got the guts if not do only the rest.

And to fill the silience whistle. (Preferbly the most annoying and catching tune you know).

<comment><USER7> I would suggest never being this obnoxious to someone who has power over you.

<comment><USER14> Just stop being obnoxious altogether over the age of thirteen.

<comment><USER13> Why? So one would be more 'likeable' and 'popular'? So one can "brown-nose" ones way to success?

No, seriously I am not that obnoxious unless someone pisses me off and believe me after working as an onsite technician for an ISP it is hard to piss me off.

<comment><USER7> >So one would be more 'likeable' and 'popular'?

Yes. So when you meet people that are worth knowing, they don't have an aversion to meeting you again.

>So one can "brown-nose" ones way to success?

Unless you are a super-genius, you are apt to more quickly obtain interesting and lucrative work if people enjoy spending time with you than if the opposite is true.

If you are a super-genius, then feel free to be obnoxious (Newton, Einstein, and a host of others come to mind).</comment></comment></comment></comment></comment>


Bracketology 101: The Wired Guide to March Madness - <AUTHOR> http://www.wired.com/playbook/2011/03/wired-guide-march-madness/ <comment><AUTHOR> Someone made a post yesterday about doing some statistical analysis of the tournament. Looks like someone has already done some serious work here.</comment>


OK, releasing your baby under the MIT license is pretty funny - <AUTHOR> http://www.zazzle.com/hackerbaby

<comment><USER2> According to one of those shirts, the answer to "HOW IS BABBY FORMED" is "with createElement". o_O</comment>


Ask HN: Job hunting remotely, looking for tips and to avoid potential pitfalls - <AUTHOR> I have 5 years exp in .net and am looking to move to NYC in the new year.  I live in a considerably smaller metro area currently and am finding the scope and breadth of the market intimidating.  In the past I have had the normal programming job hunt hurdles to leap; whiteboard interviews, multiple phone/in person interviews, flakey HR responses or no responses.  All of that are things I feel are standard in the job hunting process I am comfortable about going through again.
Currently I am finding that even looking for and settling on a place to start is overwhelming.  The potential of places to work seems 100x the current market I am in (and it probably is).  This leads me to think I should connect with a recruiter but that brings a whole new host of issues I am unfamiliar with, since I have never used a recruiter in the past.
With that being said, I was wondering if people here had advice or experiences worth sharing with regards to job hunting and the issues that might not be as recognizable before you went through the process.  Pay negotiations, setting up in person interviews, traversing a larger job market, whether or not to use a recruiter and how to find a good one.  Anything that could be helpful or pertain to a large market job jump. <comment><USER2> My advice would be: don't hesitate to walk away. If they are unprofessional from the start, it's a huge red flag, and never works out. Don't put up with BS like 30 minute psyche profiles, or code tests before talking to anyone about the role or culture.

recruiters can be helpful - and frustrating. It's a mixed bag, but there have been a few good ones.

Be patient, do other things in the meantime. Anything you can get locally will have a better chance than remote.

Use something like resumasters.co to polish up your resume and linkedin.

Otherwise, don't get discouraged!

<comment><AUTHOR> thank you, I usually follow pretty close to this in my job searching and interviewing process. I didn't know about resumasters, that looks like a great resource, thanks!

</comment></comment><comment><USER3> This is a bit ahead of the getting started area, but the last time I was interviewing out of state, no one told me this, and I was young, so here goes:

Do not let companies set you up for failure with a ridiculous travel schedule. I was flown from MD->CA for a big-five tech company, on a flight with 2 layovers, that arrived at 11PM, with interviews starting at 10AM the next day. I have never screwed up an interview so bad as that one, and to some level I still blame the whirlwind schedule for being super-fried coming into that interview setting.

You'll probably get much better suggestions from the rest of the group here, but hopefully this still-painful-12-years-later story will bring some amount of levity. Best of luck! :)

<comment><AUTHOR> Thanks! I thought about this as well. One thing I would ask, how common is a company paying for travel/accomodations for an interview? I am capable financially of making trips for interviews, but I almost feel like I need a commitment from a company to show that they consider me a serious potential hire for me to spend my own money for just an interview.

<comment><USER4> If the company isn't willing to pay for your travel, you shouldn't work there. Serious companies will pay for travel.

<comment><USER5> 100% accurate. When I was interviewing on the west coast, I tried to coordinate between two companies where one would pick up the hotel and the other the flights, mostly so I didn't have to cross the continent twice. That was a surprisingly difficult thing to pull off. Each of them seemed to prefer to pay for it all and have me criss-cross once per company...

<comment><USER6> Why didnt you just get them to both book you a flight and the just not take one of the flights each way.

<comment><USER5> I eventually got them to cooperate. Your solution would have been ok, but only if one was still willing as I'd have to book one east->west round trip and fly only the first leg and the other west->east (starting after the interview) and fly the first leg of that, because the airline is able to cancel all your remaining legs once you miss a leg.

It seems that might be harder than just telling one of them that I'll already be in the area on such and such date.

</comment></comment></comment></comment></comment></comment><comment><USER7> I'd say try Hired and Triplebyte as a baseline to get some deal flow going

A good remote culture is something you should look for. Remote-first if you can find it.

For example, where I work (Abstract) we are based in SF but 70% of employees are remote and we do not change the pay scale based on geography. The center of gravity is remote and not at HQ

<comment><USER8> I second triplebyte. I liked their process a lot even though I didn't accept a job through them.

I actually found my current position through HN. Check The Who's hiring threads.

</comment></comment><comment><USER9> Check out [https://app.talentpair.com](https://app.talentpair.com) \- they work with experienced recruiters that have relationships + AI to match you with remote jobs.

<comment><USER10> Neat! I just signed up, and will see what happens.

I also recommend WeWorkRemotely.com and CyberCoders.com, two of the most user- friendly sites I've seen for tech jobs.

Hired.com was mentioned earlier, and they are quite good. I've had a very pleasant experience so far.

Lastly I'll also mention TopTal - I haven't tried them yet but have heard good things.

</comment></comment><comment><USER11> Hi,

I just went through the same process - moving to London from New Zealand. I found that I had the most success when I directly applied to companies that I had a very very close fit with, rather than the more generic jobs. My feeling for more general jobs was that the companies weren't really interested in putting the time in if they couldn't meet me in person - but for jobs where I was a good fit they went out of their way to make it easy for me to interview.

I would recommend just picking a random company and putting some effort into an application for them, then rinse and repeat.

<comment><AUTHOR> This has been my experience as well. I guess my initial hang up is some of the companies that I am interested in are so huge that my usual strategy of finding a hiring manager on linkedin is much more difficult. Where as when applying to a company of 500 employees, they probably only have a few hr people, vs XYZ fortune 100 company has potentially hundreds.

</comment></comment><comment><USER12> I have used recruiters on almost every job I have worked. I find it is easier if they have an existing relationship with the company and management. They can provide you with a better idea of what the people are like at the company in some cases.

<comment><USER8> I couldn't disagree more. In my experience I have found recruiters to be a complete waste of time (whether internal or external).

<comment><USER13> Recruiters are like Realtors.

The vast majority are crap. The really good ones are worth their weight in gold.

<comment><USER14> At some point "the good ones" are rare enough that it makes no difference if there are any "good ones" somewhere or not when your chances of finding one is ridiculously low.

</comment></comment></comment></comment><comment><USER10> I'm in the same boat you are (Unity AR/VR developer looking for a new job / relocation).

I've had the best luck searching for very specific roles / job titles that fit me and reaching out to companies I have a special / good fit with. It's been working well, and serious companies have already begun offering to fly me out for the final interview. This is standard.

</comment><comment><USER15> Just to clarify, are you trying to land a job in NYC, or are you trying to land a remote job?

<comment><AUTHOR> sorry for the lack of clarity , plan on moving to nyc, but I do not currently live there. The main reason I bring it up is I have heard HR/companies will potentially ignore people with non local addresses, as well as there are clear logistical issues associated to not being less then an hour away from an interview.

<comment><USER16> I hire a lot in SF. A remote address in the same country is usually not a barrier as we will fly people in if they make it to the on-site round. The bigger challenge is actually standing out among the 400-500 resumes we receive per job. A referral is a far better approach to getting your foot in the door that applying online</comment></comment></comment>


Usernames Are Dying – Here Is the Replacement - <AUTHOR> http://chargecapture.com/post/usernames-should-follow-the-path-of-dinosaurs-extinction

<comment><USER2> Indeed, I have as many phone numbers as emails if not more.

Further, I'd be very wary to subscribe to a service using a phone number given the total lack of anonymity with them.

On the other hand, having several email for the various facets of our lives can match perfectly with the various uses we may have of a service.

It is a PITA when a service tries to unify all the accounts used by a single person. Notably for example, Apple, makes it difficult to separate our faces as professional developer employed in a company, amateur or free-lance developer at home, and iDevice user. And using the same computer, you may have to connect to the service using all those facets at different times!

This is the reason why Google policy of using real names and unifying accounts is bad. I mean, it's good for slave owners dealing with their cattle to have a unique identifier, but it is not how humans' lifes work.

</comment><comment><USER3> I have three phone numbers. And I avoid services that request phone numbers.

</comment><comment><USER4> > " _Many systems have replaced the username with an email address. This > worked well in the 90s, when most people had a single email address; but now > it 's ambiguous because everyone has both business and personal addresses - > and often more than one of each._"

This is not a valid assertion.

</comment><comment><USER5> Personally I don't want to give away my cell number as a piece of identifying information.

</comment><comment><USER6> "let's replaced short sighted ideas with one that will last even less and only apply to 30% of people"

this is idiotic and pretentious.

</comment><comment><USER7> I'm hoping this was written satirically...</comment>


New Xbox adapter lets people turn their power wheelchairs into game controllers - <AUTHOR> https://www.theverge.com/2020/1/31/21117342/xbox-adaptive-controller-freedom-wing-adaptor-wheelchair-joystick <comment><USER2> Reminds me of the work Jonathan Oxer presented at LCA 2019 about the journey of reverse engineering and building a similar (and more capable) breakout board for wheelchairs. [https://youtu.be/-9Rjh8qJk68](https://youtu.be/-9Rjh8qJk68)

[https://www.superhouse.tv/product/wheelchair-control- breakou...](https://www.superhouse.tv/product/wheelchair-control-breakout/) is the result</comment>


Windows 10 Update Notice Ruins Drive-Through Experience - <AUTHOR> http://i.imgur.com/zAYOuMG.jpg <comment><USER2> :D And that is why we have Windows Embedded, which is stripped of such distractions, precisely to be _embedded_ in industrial applications. (But it costs more muh-neeey! Indeed.)</comment>


The work you do while you procrastinate is ... - <AUTHOR> http://www.humblepied.com/jessica-hische/

<comment><USER2> If I followed this advice, my new full-time, ex-procrastination activity would transform into hard work, and I would seek relief in procrastination - probably doing exactly the thing I just got away from. See also John Perry's seminal essay on "Structured Procrastination": <http://www.structuredprocrastination.com/>

<comment><AUTHOR> I do agree - at some point you have to do the work, and take the tip with a grain of salt.

I found it was interesting nonetheless.

</comment></comment><comment><AUTHOR> Full tip: "The work you do while you procrastinate is probably the work you should be doing for the rest of your life"

<comment><USER3> I watch movies/read HN while I procrastinate ! :(

<comment><AUTHOR> Is there any way to turn 'watching movies' or 'read HN' into some kind of work ?

<comment><USER3> That's what I am searching for while reading HN

<comment><AUTHOR> Well - you're on track, then :)

</comment></comment></comment></comment></comment><comment><USER4> Great. Now I just have to find someone to pay me for reading internet, ranting and solving problems of my choosing.

<comment><USER5> "[1] reading internet, [2]ranting and [3]solving problems of my choosing"

[1] For reading the internet, you could do a startup where companies that intrusively search the internet and facebook for disqualifying statements for new recruits and insurance clients could outsource that work to you instead.

[2] Doing [1] may discourage you from ranting online, which won't help you to be paid for ranting but could lower that need's priority.

[3] If you choose to do [1] then you will have solved at least one problem of your choosing.

</comment></comment><comment><USER6> Jessica's work is amazing, and she has a cool CC-licensed graphic design project: <http://dailydropcap.com>.

Exchanged a couple emails recently encouraging her to allow comments on it and she was quite gracious.

Great advice, too.

</comment><comment><USER7> I must start doing something having to do with RSS feeds then ... :P</comment>


Tips for becoming a Digital Nomad? - <AUTHOR>

I have always been interested in traveling and have had the itch since returning from my last trip (4 weeks in Vietnam / Thailand). I've just run into a crossroad in my life where I have the opportunity to pack up my bag and hit the road for an extended period of time. There are many places in the world I'd love to see and spend some time exploring and I've made the decision to save up for another few months and hit the road.
I've been doing web development for a few years now and plan on bringing a laptop along with me and continuing to do a few (10-20) hours of freelance work each week, depending on where I am, to help finance my travels.
Has anybody done anything like this before? I'm fairly accustomed to working remotely as over half my work I do from home, the other half being in an office. I've never attempted to work around the world though and I'd love to hear any tips, tricks, warnings, or stories of other HN members doing similar things. <comment><USER2> I've done this for close to two years, mostly through Latin America, but not necessarily as a lone freelance web developer but building a company along the way, meeting great entrepreneurs and building a stellar team that now spans from Mexico to Argentina.

Some tips (applicable only in developing countries):

Networking with the locals:

Almost every country has an entrepreneurship community of some sort, I'd recommend not necessarily taking the I'm going to be working from a remote beach approach but instead, plug in to every community you can as you travel. Expanding your network with talented people is immensely beneficial for work you are doing for clients or your own startup.

There is usually two or three people that are like the godfathers of every tech/startup community in every country/city, and they are usually easy to spot, as they are the ones putting together the barcamps, the coworking spaces, and any other events. Oh, and most of the time, they all speak english anyway, so language is never a barrier in the tech world.

You can make these connections even before your trip begins. I highly recommend signing up to the <http://startupdigest.com/> of the city you want to travel to and find out who is the person putting together <http://wiki.coworking.info/w/page/16583831/FrontPage> coworking in that city, and the <http://barcamp.org/w/page/402984/FrontPage> Barcamp.

Living:

I don't recommend making living arrangements remotely (before you arrive), usually what I do is stay at a hostel for 2 or 3 days, and dedicate those days (usually weekends) towards finding a furnished place + wifi to live in. Craigslist is sometimes not as widely used in some cities, but the people that want to rent to foreigners/expats usually find out that craigslist is the best way to find us (and charge us more). Frequently, you'll find that the local newspaper/mediamonopoly has more traction than craigslist or there is a local flavor of craigslist that can show more results. Airbnb is also an option, but usually more expensive.

Often, you'll find that expats are more helpful at finding places to live than locals.

If you are a guy, packing light should'nt be an issue. All my belongings fit in a duffel bag (clothes) and a bookbag (electronics), I'd suggest packing enough clothes to last you a week, the rest you can buy when you get there.

Money/Banking

Before you leave your home country, call your bank, and let them know that you will be traveling indefinitely. I've had my cards suspended so many times because I did not "notify" them that I was traveling, until I had to walk into a branch and just say "Look, I am never NOT traveling, so don't ever put holds on my cards because of that"

Still though, take enough cash with you so that you can at least survive for a week using only cash, just in case you have issues with your cards when you arrive. Buy the local currency as soon as you get to the airport, and some common sense travel tips: Don't put it all in your wallet, put some in your wallet, so if and when they rob you, you can hand them your wallet with some cash, none of your home-country ID, and one credit card that you can easily cancel. The rest, distribute it in other pockets, shoes, inside shirts, etc., and unless you are going to EU/US/CA/JP/SG please oh please don't travel with those enormous mountain hiking backpacks, they just make you an easier/visible target.

Make sure someone back home can get your official mail in the event something happens (lawsuits, banking, subpoenas, citations, etc..) and can send you remittance cash via Western Union or Xoom in the case of an emergency.

You can also pick up clients at your local destination as long as you bill them from your home country's company (you DO have a company set up for your freelancing, right?) It's a bit more accounting work on their end, but not a deal-breaker if you are really good.

\---

Actually, I think I could go on into more details, but they'd start varying depending on what part of the world you wish to travel to. So I guess, to be more precise, where do you wish to go?

<comment><USER3> Awesome! Especially the part about connecting with locals at barcamp. On the banking side, I've heard that paypal is a pain to deal with on the road, as they lock your account whenever you travel. And there are no really alternatives to paypal, so that sounds like a deal breaker if you charge for your product... Or have you not experienced that?

I'm also going to go this route (traveling + building a software product on the road, for 5 months) in 2 months. Have you considered blogging about your experience? It seems more and more people are going this route but there is still very little information available.

</comment></comment><comment><USER4> I spent a summer in the Philippines doing exactly that. One thing I found annoying is that many sites forced me to use the local version, and the currency defaulted to Philippine pesos. Other times I couldn't complete transactions, probably because of fraud protections. In particular, GoDaddy and Paypal required calls to approve transactions. You might want to get a Vm in your home country to remote into to get around this.

<comment><AUTHOR> Good idea, thanks. I've already decided to set up a VPN so I can make sure I have a secure tunnel regardless of where I am and what connection I'm on. I've thought about giving my parents legal access to my bank accounts as well, as I figure it would most likely be easier for them to handle deposits and transfers from home, than it would be for me from wherever I happen to be.

<comment><USER2> Actually that's a great idea, I added someone else to my bank accounts and they saved me several times.</comment></comment></comment>


Australian police issue warning on 3D printed guns - <AUTHOR> http://www.techworld.com.au/article/462774/nsw_police_issues_warning_3d_printed_guns/ <comment><USER2> Is anybody surprised? Even the inventor of the gun seems quite hesitant about how many times it can be fired safely. Anyone setting out to show how dangerous it can be can simply keep firing it until failure occurs. Voila!

If article made any mention of how many times that gun was fired until it failed, I missed it.

<comment><USER3> Better still, did they mention what ammunition was used? Police typically use +P+ ammunition, especially in smaller calibers like .32 and .380. I have no doubt that the original inventor used standard pressure loads or even sub sonics to decrease the chance of a failure such as this. In the end the gun was a POC anyways, designed to show what could be done.

What I find more disconcerting is the continue emphasis on how the gun is "undetectable". While it is certainly harder to detect because of the small number of metal pieces, you still have the ability to detect bullets!! Or are they so focused on the gun itself that they haven't kept up technology to detect gun powder?

As others have mentioned.. its all about drumming up noise to defend their removal of this information from the Internet.

<comment><USER4> Defense Distributed added a piece of steel to the final build to make it detectible and legal. It's entirely possible most metal detectors won't pick it up.

Anecdote: I went to traffic court years ago, and after exiting the courthouse stuck my hand in my pocket and realized I had forgotten to remove a handful of .22 LR cartridges. They did not activate the detector.

<comment><USER5> They did add a piece of steel to the build but you can build it with out adding in the metal. They added that to the instructions so it could be detectable and legal but it was obvious that any one could just not add in the metal.

</comment></comment></comment></comment><comment><USER6> I can understand the worry about 3d printed weapons, but I don't see much of a difference between this an a zipgun besides that a common zipgun uses a metal tube for a barrel so it would show up on a metal detector.

I am completely disinterested in any of the fearmongering about this weapon. There is no way to hold back technology to prevent violence, we just need to accept that and deal with not being asshats to each other that causes the violence.

<comment><USER7> I'm not sure the theory that violence is caused by "people being asshats to each other" is accepted by anybody other than Wayne LaPierre.

Gun violence is caused, first and foremost, by the presence of a gun. A sufficient cause? Often yes, given appropriate context.

There are plenty of very successful ways to "hold back" this technology. It's called law.

Anyway I don't think anybody is worried about this 3d printed deal other than the press trying to get page views. The scrawny middle class kid who made it is an uninteresting attention whore, and the gun itself is a massive piece of shit. As others have pointed out, self-made ballistic weapons have been possible for years. This doesn't lower the convenience factor.

<comment><USER8> >Gun violence is caused, first and foremost, by the presence of a gun.

But violence is caused, first and foremost, by people being asshats to each other. A gun is just a tool a violent person may use to be violent. In the absence of a gun, they may use a knife, a baseball bat, a crowbar, a fist, a pencil, a screwdriver, a laptop, a bucket full of sardines, etc.

<comment><USER9> > But violence is caused, first and foremost, by people being asshats to each > other.

No. Violence is caused, first and foremost, by people being violent. Give them means or tools to be more violent and they'll use them. Thus guns existence are a factor in the violence scale.

Guns aren't tools like the other ones just like the nuclear bomb isn't like any V2.

Moreover many quiet people who aren't asshats have been the victims of asshats, and sometimes only because they precisely aren't asshats.

</comment></comment></comment></comment><comment><USER10> I am not sure why we care about people making plastic guns when they can make full-auto AK47s that are not traceable in the slightest.

[http://www.motherjones.com/politics/2013/05/ak-47-semi- autom...](http://www.motherjones.com/politics/2013/05/ak-47-semi-automatic- rifle-building-party)

<comment><USER11> The guy in the article didn't build a full-auto AK-47, although he did commit a couple felonies along the way[1]. First, he mounted the magazine lock too too far back, which allows the magazine to be detached without the use of a tool - a felony in California on a semi-auto rifle with a pistol grip. Secondly, he says

        Back in my garage I use a grinding wheel to cut the receiver in half and the other components into pieces. I put the scraps back in the cardboard box the kit came in and leave it for the garbage truck.

This is an improper demill. To demill a receiver you must cut it into three pieces. Therefore, when he left the receiver out for the garbage truck he effectively transferred his rifle to the garbage truck without going through an FFL, which is another felony.

Finally, the process for actually obtaining or building a fully automatic rifle (assuming it's not outlawed by your state) is arduous and expensive. The short answer is that you have to go through extensive background checks by the FBI and BATFE in order to get a $200 NFA tax stamp, which takes months to be approved for. You also have to get a signature from your local sheriff, who can just decide he/she doesn't want you to have one if they wish (alternatively, you can go to a lawyer to set up a special trust to assign NFA devices to). Finally, the actual cost for a select-fire AK receiver, of which there are limited supply as they have to have been registered with the ATF before May 19, 1986 (and there are no more being manufactured for civilian use), is between $15-20K (here's a current gunbroker auction[2] for reference). For a longer description of this whole process see: [http://www.cheaperthandirt.com/MediaPages/ArticleDetail.aspx...](http://www.cheaperthandirt.com/MediaPages/ArticleDetail.aspx?mediaid=159)

[1]: <http://www.calguns.net/calgunforum/showthread.php?t=767020>

[2]: [http://www.gunbroker.com/Auction/ViewItem.aspx?Item=34324298...](http://www.gunbroker.com/Auction/ViewItem.aspx?Item=343242987)

</comment></comment><comment><USER12>
      "Police believe that despite this, the files are still circulating."

The quality of journalism is pretty awful these days.

I can't believe someone would feel qualified to write an article, especially one that came out today, without explicitly knowing that, yes, the files are most assuredly still "circulating" via torrents.

</comment><comment><USER13>
      "This is now becoming a problem the world over," Scipione said.

According to whom? The police forces that are trying to drum up FUD about hobby-manufactured firearms?

<comment><USER14> Part of the social contract in most societies is that the police are the only members of society who can use enough force to kill or injure anyone critically. The governments of these societies create laws to ensure that it is only special well regulated instances when an ordinary citizen can use deadly force (hunting of lower animals and self defense being two examples in the United States). Anywhere these guns can be manufactured successfully thwarts the old laws and contracts.

This means that it will be a "Problem", but no one can say for who. The big gun manufactures are going to be pissed and are already probably already preparing legislation to bitch slap any one who tries to produce these guns. The liberator people are working on making the guns not explode and hurt anyone. The police are scrambling to figure out how to reclaim their sole ownership of force. The people are waiting to see what happens.

<comment><USER15> This isn't part of the social contract in parts of the US. Guns are pretty common in rural areas and I've see people open carry in urban areas around Seattle.

<comment> a-priori He is referring to the principle of the state's monopoly on violence. It's necessary for some violence to exist to maintain internal and external security (police and the military, respectively). The more effective the state, the theory goes, the better able it is to maintain control over the use of violence in its territory.

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

</comment></comment></comment></comment><comment><USER4> They didn't say if they used the acetone vapor process to harden the barrel or the heating process during printing overall to increase the strength. Defense Distributed did this and the .380 test did not explode.

It would work in the Australian police's favor to make the gun look as dangerous to the user as possible.

I'd still like to know how dangerous the explosion is. It's plastic, so I'm imagining it fracturing and releasing all the pressure quickly.

</comment><comment><USER5> This is very scared as 3D printers are becoming cheaper soon any one could print out a gun with litte effort. As people said, you can create your own guns but whats different is this takes little work which any one could do. This could be a world problem as soon as 3D printers become mainstream, especially in countries with tight gun regulation.

<comment><USER16> It's easier and cheaper to make a shotgun with 2 pipes, an end cap, and a screw. I'm not exaggerating the simplicity.

[http://www.issafrica.org/armsnetafrica/sites/default/files/2...](http://www.issafrica.org/armsnetafrica/sites/default/files/27_%20%20%20w-w- Pipe-gun-11_0.jpg)

Guns are simple.

Guns are 17th century technology.

</comment></comment><comment><USER17> Is it possible to make a worse gun?

I.e., a higher ratio of danger-to-shooter to danger-to-target.

<comment><USER18> Of course - if you build a zip gun and use a barrel that isn't seamless (it was bent & welded into it's tube shape) you'll have a bad time. There's also guns like the Lorcin -- it's made from pot metal and is as dangerous to the wielder as it is to the target. There's no point in buying more than one box of ammo for it...

</comment></comment><comment><USER19> Funny, it looks just like a squirt gun. That can't be good.

</comment><comment><USER20> Barbra Streisand effect in 3.. 2.. 1..</comment>


FlureeDB, a Practical Decentralized Database (2017) [pdf] - <AUTHOR> https://flur.ee/assets/pdf/flureedb_whitepaper_v1.pdf <comment><USER2> The paper says there aren't practical decentralized solutions, but doesn't mention any prior research/comparisons to existing systems?

How does it compare against:

\- IPFS (yes, plenty of people are doing DB stuff on IPFS)

\- GUN (full disclosure, I'm the author, [https://github.com/amark/gun](https://github.com/amark/gun) )

\- Scuttlebutt ( [http://scuttlebot.io/](http://scuttlebot.io/) )

\- Beaker Browser

They go on to talk about "append-only" data structures (this alone does not make a system a blockchain or decentralized, but I don't see any further reasoning on it), because technically, you could do things very similarly with:

\- Kafka

\- Cassandra

\- Couch

And "append-only" is not practical, there are lots of caveats you have to handle (you don't get eventual consistency for free, performance is terrible on reads, etc.), it often times just makes scaling up harder, which is not "practical".

The next section begins to discuss "blockchain" technology, but I don't see code on GitHub:

\- [https://github.com/fluree/flureedb](https://github.com/fluree/flureedb) (empty repo) ?

But their main website is already advertising $1000/month "Enterprise" plans. The whole point of Blockchain and Decentralization is not to be vendor-locked into a proprietary centralized DBaaS. Why isn't the code Open Source?

<comment><USER3> Agreed, they seem to ignore literally everything that's going on the open source decentralized storage space.

Adding to the list: \- BigchainDB ([https://github.com/bigchaindb](https://github.com/bigchaindb)) a practical BFT blockchain DB (disclosure, I'm the co-author)

\- SWARM

\- OrbitDB

And also, it's a very very bad idea to have public storage - one (encrypted) PII entry illegal datum and it's over.

<comment><USER4> I really appreciate the approach that BigchainDB and Ocean Protocol take in addressing the extremely serious challenges around removing illegal content from a decentralized database. I don't remember exactly where I read/heard the details, but there is a talk Trent McConaghy gave where he describes the process of forking around a node where illegal content has been discovered and flagged via a takedown notice. I'll see if I can dig up the specific reference. The important takeaway for me, as I work on integrating decentralized and distributed database architecture into a platform for cancer drug discovery and the enrichment of user data through the incentive mechanisms within the decentralized databases that also have cryptographic tokens and utilize cryptographic primatives a la curation markets, is that hybrid solutions are starting to show promise in combining traditional centralized databases and decentralized ones that have novel token economics built it. I think BigchainDB and Ocean Protocol do a great job with this, as does OpenMined, and I'm interested to see where Cardstack goes with their approach. For me, it's not a binary set of options, rather about finding projects that are interoperable, and also take seriously their responsibilities to maintain compliance with the ever changing legal landscape surrounding data and rights management.

<comment><USER5> I am _very_ interested in the area and will highly appreciate any additional links you could dig in.

I really would like to work on something like that but so far it's only enthusiasm and zero education. I am a pretty senior programmer in my eyes (16 years of official career, 25 years in total tinkering, started at 12-13 year old teenager) but sadly all that experience does not translate directly to areas like these.

</comment></comment></comment></comment><comment><USER6> "Fault tolerance and censorship resistance - Due to its decentralized nature, FlureeDB guarantees maximum uptime and no possibility for data regulation".

Censorship is rarely a technological issue, but one of laws.

No possibility for data regulation? Well, data regulation is already there, and they're effectively advertising that they are trying to bypass those regulations. If they actually can do that, it won't be long before someone rules "Use of FlureeDB violates GDPR compliance" and all your nice tech isn't worth squat. The database may prevent data regulation, but you can still put the people using it in jail.

<comment><USER7> The GDPR question and "right to be forgotten", consent, etc., gets asked around this time in the Epicenter podcast with the founders: [https://youtu.be/fdne9EvFNaw?t=3147](https://youtu.be/fdne9EvFNaw?t=3147)

* Brian Platz addresses the question

* first goes through benefits of immutability in Fluree in context of auditing

* suggests one approach is storing PII (personally identifiable info) in encrypted manner in public fields, and storing the decryption keys separately -- the act of "forgetting" is the act of destroying the decryption keys

* another approach: on the public Fluree blockchain DB store a UID that has no public ties to PII ... and store the PII in a private corporate-side Fluree blockchain DB ... the Fluree system allows JOINs across Fluree systems, so internal corporate-side queries can do JOINs to consolidate public info with PII stored internally ... now to the "forgetting" part ... in spite of immutability guarantees, Fluree does have one escape, which is the possibility in the private Fluree (for which the corporation completely controls consensus) to "retract" that entity containing the PII, along with a tombstone and a full audit trail of the retraction

Both these approaches seem to address the right-to-be-forgotten pretty well. The Fluree guy also suggests that for the PII part perhaps Fluree isn't the system you want, and perhaps that should be stored in some other system.

<comment><USER8> > the act of "forgetting" is the act of destroying the decryption keys

I'm not sure cryto-shredding is a legit method to "delete consumer data"

<comment><USER9> Why wouldn't it be? An encrypted file with the appropriate cipher set is synonymous with noise. It is only the encrypted content plus the unlock key that makes the file contents accessible.

If it is irretrievable, and the crypted data looks like noise, I would argue that the content is gone.

</comment></comment></comment></comment><comment><USER10> People are sleeping on hyperdb: [https://github.com/mafintosh/hyperdb](https://github.com/mafintosh/hyperdb)

It's built from hypercore, the same library powering the DAT protocol.

Also, someone recently wrote a graph database on top of hyperdb: [https://github.com/e-e-e/hyper-graph-db](https://github.com/e-e-e/hyper- graph-db)

</comment><comment><USER11> The more I read white papers, the more I appreciate academia's requirement of a summary of previous related work.

<comment><USER12> Those sections are the source of a nice chunk of obscure references I post here that people like. They're a gold mine. The other is serendipitous search where you find what you're not looking for directly. Main way is to learn the buzz words of _serious researchers_ in each sub-field plus verbs they use to describe results. Then, you just do permutations of those with quotes, minuses, and places like Citeseerx. You get the diamond mine once you master that. ;)

</comment></comment><comment><USER13> This looks a lot like Datomic if you add hashing to the datomic transaction (this would have to be done as a datomic stored procedure). Given that this is hosted I am wondering whether his is using datomic underneath or if it is written from scratch?

Two critiques:

* Given that this is a hosted offering this seems like an odd definition of de-centralized, from my reading a more accurate description would be: allows cross-partition queries. Edit: response below indicates this aspect is missing from the linked whitepaper but available elsewhere.

* The graph database section is hand-wavy. This seems like it could be similar to Datomic where with a small enough dataset you may have amazing performance, but at a large enough scale you will be lacking index-free adjacency.

<comment><USER7> If I understand properly, Fluree will partner with various "federated" enterprises to all run a Fluree ecosystem where everyone's data can be replicated, and queries can be served via multiple gateways ... in that sense Fluree will be decentralized.

Note that I think I heard this in the Epicenter podcast ([https://www.youtube.com/watch?v=fdne9EvFNaw](https://www.youtube.com/watch?v=fdne9EvFNaw)) featuring the Fluree founders. ... aahh, at this point in the podcast they talk about the federated/distributed Fluree: [https://youtu.be/fdne9EvFNaw?t=3770](https://youtu.be/fdne9EvFNaw?t=3770)

EDIT: pointer to "federated" / distributed database in podcast

</comment></comment><comment><USER14> Sybil attacks are real and is the biggest road block towards resilient decentralized networks. In FlureeDB, Blockchain is an attempt to solve Sybil attack by attaching proof of work as reputation to counteract malicious nodes. While it does raise the bar significantly it's not a panacea -- still more work to be done!

</comment><comment><USER15> > a practical decentralized database did not exist before FlureeDB

It was hard to keep reading after this.

<comment><USER16> I'm not sure what you misunderstood, describing your skepticism would have added to the conversation. Having read beyond that statement, I'm actually intrigued. What "practical decentralized database" are you thinking of such that you didn't need to read further?

<comment><USER15> It was the claim that no other practical decentralized databases exist that turned me off. If you want I'll name a few.

<comment><USER16> > If you want I'll name a few.

Yep, that's what I've asked above. Might spur a conversation if your claim is legitimate.

<comment><USER15> Well, the one I use is CouchDB. It is very practical. Others I can think of quickly are CockroachDB, Cassandra, and Riak. And there are many others.

Are you possibly limiting the term decentralized to blockchain DBs? That would be a stretch. Decentralized DBs existed for a long time before blockchains.

<comment><USER16> _I'm_ not limiting the term, that's what the paper is about. And why I wanted to know more about your claim. Might be a good idea to finish the paper now ;). The paper is actually very interesting.

<comment><USER15> > Might be a good idea to finish the paper now ;).

I did read the entire paper and it _was_ interesting.

You're more specific meaning of the word should have been spelled out before the claim. The meaning that I read was perfectly valid and shared by many others.

<comment><USER16> Again, it wasn't _my_ use of the term "decentralized", it was the use of the term in the _paper_. I read past the phrase for which you claimed to have dismissed the paper and understood their use of "decentralized" pretty clearly, as you should have if you understand distributed computing. Having taken advanced distributed computing courses, I, honestly, never interpreted the use of "decentralized" as you did. But, yeah, in practice, I can see your confusion. Nevertheless, dismissing a paper on such pedantic terms as you originally did is probably not worth commenting unless you _really_ have a good reason for doing so. And, then, it's probably best to comment only after you have read the paper and then formed an informed response. Anyway, you keep escalating this, so I keep responding in kind to help you. At some point I have to be done with it. I honestly thought that you might have something useful to contribute due to your terse response, but I was clearly wrong ;).

<comment><USER15> > it wasn't my use of the term "decentralized"

I apologize. I have a serious problem in forum discussions of not paying attention to who writes each post. I absorb all replies and then reply to the group. My bad. (Edit: And I thought you were the author).

>dismissing a paper on such pedantic terms as you originally did

I never dismissed the paper. Read my first post carefully. I enjoyed it and did read it before commenting. I was just pointing out my shock at the claim, which seemed ridiculous given my understanding.

> you keep escalating this

I thought I was participating in an argument about the meaning of the term "decentralized". I was defending my understanding to multiple people telling me I didn't know what I was talking about.

> Having taken advanced distributed computing courses

I have been working with databases for over 45 years. Most of that time decentralized meant lack of a centralized (single point of failure) computer, not a person or organization. It is only recently (10 to 15 yrs?) that the user meaning has appeared. Please forgive my classic interpretation.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> Fun flashback to my my Masters research paper where I wrote a system called FlurryDB (unrelated).

[http://sysweb.cs.toronto.edu/publications/254](http://sysweb.cs.toronto.edu/publications/254)</comment>


I feel like downvote is a censure - <AUTHOR>

First of all sorry, for any potential grammatical error or error, i'm not so good in english.
We all hate being censored right, we fight censure whenever we see it because we think it is not right.
All is in the title, i know that down vote is there to discourage people for posting craps, etc... Down vote is a tool, and a good tool if used wisely.
But how many time have you been down voted because you were THINKING differently from the main stream? often people down vote you just because they don't like your arguments or because they disagree. When you are down voted because you expressed your thougths, this is censure, because the next time you'll think twice before posting anything, the next time you'll just refrain because you don't want to loose more karma.
I think that down vote should have a cost for the one that down vote.
For example, when you down vote someone you also loose karma somehow. or we could see how many time every one down voted. So we can see the haterz just by reading the thread.
What do you think about Down vote? do you feel the same about it? <comment><USER2> The way I understand down voting, it is meant to help clean up the conversation by marginalizing useless posts. For the most part, it looks like it is used correctly for that purpose. However, I have noticed a few down voted posts that were expressing an on-topic point of view, in a civilized manner. And that does feel like mob-rule censorship.

The "seeing the haterz" proposal would only be introducing another form of censorship.

The "cost for down voting" idea, on the other hand, makes sense and has been proven. It does give some disproportionate power to users that have high karma (their perceived sacrifice cost of one point is lower), but I see that as a meritocracy (they should be the most valuable contributors to the community to earn all that karma).

</comment><comment><USER3> While it's true that I have been down voted by people who disagree with my point of view, I think it would be very difficult to govern correctly.

The "make them lose a point" idea might work.

<comment><AUTHOR> I think think it make sense. I will definitly downvote someone who publish craps even if i also loose a point when it make sense.

<comment><USER4> My statement stands.

</comment></comment></comment><comment><USER5> Is this in response to:

<http://news.ycombinator.com/item?id=3564397> ?

<comment><AUTHOR> Sure it is. It is not the first time i get downvote for just expressing my humble opinion.

By the way, i'm not here by any mean to count my karma. However it is frustracting to see people act this way.

I don't think down vote = don't like. It is not there so you can downvote whenever you don't like a statement.

Just my thoughts.

<comment><USER5> I had a very hard time parsing your comment to understand what it meant. Probably I'm not alone in that and probably a lot of the people that downvoted it thought it was incoherent.

Maybe you should take a bit more time if you're trying to say something complicated to make sure the point comes across.

<comment><AUTHOR> Thank you for the advice. I'll do my best next time.</comment></comment></comment></comment>


CppCon 2018: Simplicity: Not Just For Beginners [video] - <AUTHOR> https://www.youtube.com/watch?v=n0Ak6xtVXno <comment><USER2> Simplicity and C++? Like speaking of rope in the house of the hanged, as we say in Italy... Congrats for the effort though.

<comment><USER3> I still don't understand why people bother with template metaprogramming. And I genuinely mean it. Other languages have much simpler and nicer constructs and seem to work just fine. And even within C++ you can often solve the problem with more verbose, but simpler code. Every time I read an article or watch a talk on it I have the impression that people use it because they can, not because there's some huge upside in using them. Did I miss the magic "aha" moment?

<comment><USER4> They do it because C++ tempts you to strive for perfect expressive syntax and perfect efficiency at the same time. Most languages have limited expressive power (C, Fortran, Pascal) or limited efficiency (Haskell, ML, any JVM or scripting language), so you accept their limitations and move on.

C++ makes programmers become Icarus. Once they escape from the prison of C syntax, they try to fly higher, towards the goal of code that looks like Python but runs like C. They learn that template metaprogramming can help acieve this goal, so they use it. But template metaprogramming is actually the sun, melting their code into a pile of wax and feathers, sending them crashing back down into the ocean to drown.

<comment><USER5> Or maybe they should just learn LISP, which gives you both.

</comment></comment></comment></comment><comment><USER6> For some reason Youtube's recommendation algorithm has been pushing me this whole day. Is this the same for you?

<comment><USER7> That's because Kate Gregory is a terrific teacher! I like her talks and teaching style a lot.

<comment><AUTHOR> She is one of the best speakers in the C++ community, really love her work.</comment></comment></comment>


Google's Native client for chrome is here - <AUTHOR> http://code.google.com/chrome/nativeclient/

<comment><USER2> .. it's been there for a couple years now. What's the purpose of your link?</comment>


China's armed drones appear built from stolen data from US cyber intrusions - <AUTHOR> http://atimes.com/2015/12/chinas-armed-drones-appear-built-from-stolen-data-from-us-cyber-intrusions/ <comment><USER2> same thing happened to me last night in civ5..</comment>


The Land of Lisp music video - <AUTHOR> http://emacsworld.blogspot.com/2011/09/land-of-lisp-music-video.html <comment><USER2> See <http://landoflisp.com/>

</comment><comment><USER3> The visuals are a lot better than the music.

<comment><USER4> I thought the music had a slight hardcore punk sensibility that made me smile. Had it not been for the length and the chorus it could have been a song by The Minutemen or a contemporary. Great musical comedy on the piano solo.

</comment></comment><comment><USER5> This video is what first convinced me to buy The Land of Lisp. What a great decision - the book is very well-done.

<comment> muuh-gnu The book is very enjoyable. I only recently found out that Chapter 5 has already been available online in a limited, but colorized form as "Casting SPELs in Lisp", <http://www.lisperati.com/casting.html>

Conrad mentioned that in the next edition/errata he probably will add a (web?) chapter about setting up emacs/slime, but I havent heard any updates about that since the initial announcement.

</comment></comment><comment><USER6> Lisp will let me "balance weasels on a rake"? [1] I'm sold! :)

[1] See video at 3m55s.

</comment><comment><USER7> you know why LISP failed?

EMACS

<comment><USER8> At the risk of sounding like a *chan user:

>implying that LISP failed</comment></comment>


Chart of the Decade: Why You Shouldn't Trust Every Scientific Study You See - <AUTHOR> https://www.motherjones.com/kevin-drum/2018/11/chart-of-the-decade-why-you-shouldnt-trust-every-scientific-study-you-see/ <comment><USER2> I 100% agree with the headline; _especially_ for research papers even more than clinical trials.

However, I'm a bit puzzled by the weird direction the journalist ran with this, which is straight to his preconceived notions that are not that supported by the data he's looking at.

But there's a bit more to this than just that one chart. In addition to self- correction (e.g. beginning to require pre-registration of trials), science is somewhat additive. Is it not possible that the low-hanging fruit had been found earlier, in the 1970s-1990s, and the problem got harder? With the advances in treatments for cardiovascular disease couldn't the problem just be harder?

And look at that "harm" study. Turns out it's one of many from the Women's Health Initiative [1], and it's the test of whether hormone therapy for post- menopausal women causes heart problems: that is, it's not a test of a drug to prevent heart conditions, but a test of side effects.

How many other of these studies are like that: studies about effects on the heart, not trials for new drugs to treat the heart? How did the ratio change before and after 2000?

In any case, don't trust every popular news article you read about science, particularly if it's written by Kevin Drum and posted on Mother Jones.

[1] [https://www.whi.org/SitePages/WHI%20Home.aspx](https://www.whi.org/SitePages/WHI%20Home.aspx)

<comment><USER3> I'll go one stronger and say "You Shouldn't Trust Any One Scientific Study You See".

Individual studies can be really interesting. They're important for researchers to know about to inform their future work. But any one study - even ones that are done honestly, with good methodology and sound foundations - can be just totally wrong. There could be confounding factors you couldn't have known about that completely invalidate the result. Your test subjects could be unusual in some way, your animal models could be a poor analogue for humans in this particular case, you could have just had really aberrant statistical flukes in your statistic sampling.

It's the _body_ of scientific research, the dozens, hundreds, thousands of studies stacked on top of each other that bring certainty.

<comment><USER4> Yes. Science can be an adversarial process as people converge on the truth. Like a legal trial, you shouldn't take out of context any single statement from a defence or proceution lawyer as representative of the whole truth

<comment><USER3> Or it's like seeing one great play in the middle of the game. It may be a beautiful play, it might have scored the team you're rooting for a point, but until you know the whole game you don't know who won.

</comment></comment></comment></comment><comment><USER5> _" Before 2000, researchers cheated outrageously. They tortured their data relentlessly until they found something—anything—that could be spun as a positive result, even if it had nothing to do with what they were looking for in the first place. After that behavior was banned, they stopped finding positive results. Once they had to explain beforehand what primary outcome they were looking for, practically every study came up null. The drugs turned out to be useless."_

This is a ridiculous "plain English" description of what is happening here, and I say that as someone who is regularly very critical of academia, drug trials, and research science (I've lived it; check my bio).

Clinical trials and mandatory registration are great things. It does not mean that researchers were massively cheating in the past, however - it means that they were finding secondary and tertiary findings and reporting them instead of the main investigative thrust of the research. Yes, some blatant cheating happened, as did p-hacking (though this problem still exists), but to act like the clinical registration database completely stopped a massive ring of fraud is ridiculous and the data does not support that, merely a conspiratorial narrative around it.

</comment><comment><USER6> I'm cynical and have no trouble believing that results were twisted immensely prior to the rule change in 2000. The incentives are huge: profit, prestige, or simply job security.

I do wonder if this chart misrepresents something, though: there are studies that produce incidental--but genuinely valuable--discoveries. It's unclear to me if that accounts for the pre-2000 results or not. With the new rules, would there have to be another study stating the new objective?

I'm not questioning that bad science occurs, but I am questioning what this graph really tells us.

<comment><USER7> > With the new rules, would there have to be another study stating the new > objective?

I think it's only fair to force you to replicate at least once the positive result you think you see in the data you collected for another purpose before you can claim you got something.

<comment><USER8> Yes, the linked article is saying that researchers used to employ techniques like 'p-hacking' (among others) in order to report results that were favorable/novel. That the scientists and clinicians in charge teased the data too much.

</comment></comment></comment><comment><USER9> Clinical trials != scientific studies in general. Motherjones is doing a great disservice implying equivalence.

<comment><USER10> Explain that to the layman in a way the entire Internet will understand.

Until you can ... they are for all intents and purposes.

<comment><USER11> Hardly equivalent "for all intents and purposes." The purposes of the layman are nothing like those of the research community.

<comment><USER10> If you put it in the public domain it is your responsibility to ensure it is digestible by the audience you publish it to.

So yes... public posted information should be layman ready

<comment><USER12> Do you apply this reasoning to articles or comments discussing kernel development? Some topics have higher irreducible complexity than others.

More importantly, I can make whatever I want public, and I can do so with whatever audience I have in mind.

<comment><USER10> Interesting.

So inciting panic online is fine but not in a theater ?

<comment><USER13> Your remark finds difficulty in satisfying clear and present danger.

<comment><USER10> Vaccine studies

<comment><USER13> ...are of a certain irreducible complexity which undergo a process of peer review prior to publication in scientific journals, and rightfully presume a minimum prerequisite background for proper interpretation? I'm sure the topic and its meta are interesting to the professional audience in which they were intended for.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> One could argue that this chart too is an example of post-hoc data mining. I still find the effect plausible, though.

<comment><USER15> Post-Hoc or not would depend on what hypothesis the researcher had before looking at the data. We don't really know, or at least I couldn't tell from the article.

</comment></comment><comment><USER16> While many on this forum may understand why what this analysis shows is not good science, the article does a poor job of explaining why finding positive results one wasn't originally looking for may not be reliable.

I can imagine a non-statistically minded person thinking "So what it's not what they were looking for originally? We're missing positive findings now. This is a terrible regulation." When in reality these "positive" findings were p-hacked to meet minimum criteria for statistical significance and likely arose by chance since luck would have it that in any study there will be some set of data that by chance is a statistical aberration.

</comment><comment><USER17> While some have pointed out that this very article could be considered post- hoc data mining, I think it is not. This exact kind of affect was what was intended by the requirement to pre-register. Looking afterwards to see if the intended affect (change in how many studies report benefits) appears to have happened in reality, makes perfect sense. They didn't institute the requirement at random, and then later consider that maybe it could have an impact of reducing (perhaps spurious) findings of significant benefit; that was more or less the only reason for doing so.

<comment><USER18> The article claims the drugs are worthless. The studies only show they aren't successful in a single pre-registered result.

</comment></comment><comment><USER19> From a science perspective, positive results are overrated; the most important aspect is to investigate a "good" question. Researchers understand "good" has not the same meaning everywhere or to every stakeholder. More at large, blurred journalism is attacking science to undermine the scientific method, aka meaningful questions + proper scrutiny + full transparence. This is a sign of the times, though.

</comment><comment><USER20> In our world, it's considered malpractice if you have the option to include double blinding in your study design, but opt not to for convenience.

In some alternate universe, it is considered malpractice for those who design the study to be the same group that runs the study.

I don't think we can get there from here, but if we had a core track of theorists who designed studies, and a second equally prestigious track of practitioners, who independently tested and ran studies, experimental science would be much more rigorous.

Your prestige should be tied to your ability to identify novel experiments to try, or in rigorous testing procedures, never tied to your ability to shape data to make your claims appear grand.

</comment><comment><USER21> I often wonder about the kind of research done in computer science--how much is it influenced by the kinds of things that easily get you a Ph.D., versus the kinds of things that are useful but less apparently flashy.

A lot of the PL students at my school are extremely wary of doing any follow- up work on ideas that have been published before, even if the implementations of those things are obviously shoddy and don't really demonstrate that the idea works. There's a lot of novelty chasing, which is part of what's pushing people to include deep learning in their work, since it often allows them to claim novelty, even if their results aren't very good.

<comment><USER22> Another big influence is what problems can attract funding.

</comment></comment><comment><USER23> > Then, in 2000, the rules changed. Researchers were required before the study > started to say what they were looking for. They couldn't just mine the data > afterward looking for anything that happened to be positive. They had to > report the results they said they were going to report. And guess what? Out > of 21 studies, only two showed significant benefits.

Why is this considered good? Isn't this just a counterproductive limitation? Significant benefits found without knowing what are they going to be in advance are still significant benefits and if they are observed scientifically and proven reproducible I'm glad we've found them.

> Once they had to explain beforehand what primary outcome they were looking > for, practically every study came up null. The drugs turned out to be > useless.

Aren't newly discovered drugs meant to undergo strict and targeted clinical trials? How can they even be considered being drugs before this? And how can they turn out to be useless after passing this stage?

Also in some cases when nobody wants to fund clinical trials despite very interesting life-enhancing effects supposed or when it's clear the time to general availability through the fully white research and approval chain is going to take longer than people want to wait some non-approved substances happen to be sold on eBay (or, for more questionable substances, on black market), hundreds or thousands of people buy it and report their experience on reddit and this data can be a source for further clues for research.

<comment><USER24> Are you familiar with the multiple comparisons problem[1]? The problem is that in any sufficiently rich dataset, you can find _something_ unusual-looking, and if you're not straightforward about how much digging you had to do to find it, it will look much more special than it actually is. So if a benefit is found by chance, that's fine, but it should only motivate further research which specifically look for that effect.

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

<comment><USER23> > but it should only motivate further research which specifically look for > that effect

Indeed. But this doesn't disqualify looking for "something" as a valid and useful method of research to be a stage of the whole research chain. That ought to be allowed although research papers produced this way should make this clear.

<comment><USER25> It's called exploratory research and everybody is fine with it when it's labeled as such.

</comment></comment></comment></comment><comment><USER26> Although I agree with the argument but their chart and their data actually do not represent what they are claiming. I've checked their paper while back [1] and contacted them about it but haven't heard anything back. Their argument is sound but only because!

[1]: [https://amirmasoudabdol.name/likelihood-of-finding-null- effe...](https://amirmasoudabdol.name/likelihood-of-finding-null-effects-over- time/)

</comment><comment><USER27> The article seems to suggest that scientific studies aren't reliable, but fails to point out the key takeaway that now (post registration requirement), studies are _much_ more likely to be valid/useful than before.

So the headline really should read something like "Why you should trust scientific studies a lot more now than you did before"

</comment><comment><USER28> Good science has its methods published, is reproducible and is peer reviewed.

Another, perhaps better, headline would be: "Why You Shouldn't Trust Every 'Study' You See".

<comment><USER29> No True Scotsman. In fact, I'm pretty sure this is just another form of post- hoc reasoning.

</comment></comment><comment><USER30> The downside of this though is that unexpected positive results sometimes get buried. For instance, clinical trials have to report all adverse effects but not positive effects. We've had drugs tested for symptom X fail to have any effect, while causing bald people to have their hair grow back. Yet the company we were testing it for wasn't interested and those results never made it into the public domain.

<comment><USER31> i would assume that the positive results still get reported somewhere in the paper? so other people could still pick up on it in the future.

if they're positive enough then the drug company will fund another study with that as the primary outcome. that seems prudent too: it should be the primary thing you're examining so that you can design the study correctly, rather than a simple "oh and by the way" side note

</comment></comment><comment><USER32> This would seem to indicate that the results of drug research are unpredictable. Therefore, if you are required to predict your results, you are set up to fail.

My question is: Was the free-range research _actually_ effective? Or, was it "technically-correct effective just so you can't call me out on a failure, moving on..."

</comment><comment><USER33> Is it possible that prior to 2000, the studies that found a null result, were simply not published? Hence why they are underrepresented in that chart? My understanding is that it's very hard to get null results published in scientific journals, though I'm not sure if that applies to clinical studies as well.

<comment><USER34> One interesting effect that pre-registration has is that there are now several journals that allow you to publish your _protocol_ , and agree to publish the followup paper about the results regardless of the outcome.

</comment></comment><comment><USER35> This is very similar to A/B Experimentation -- Gotta force the user to select a primary metric BEFORE the experiment starts to keep 'em honest.

</comment><comment><USER36> I have a general rule to ignore any statistical interpretation in articles like these. Data interpretation is hard. There are a lot of variables that need to be accounted for, and under the best circumstances of academic peer review, we still get it wrong.

This article also feels like it has an agenda. Maybe I'm not familiar with MotherJones, but the tone of the article strikes me as unprofessional. And the headline, that's obviously correct and means nothing. It's like saying, "Why You Shouldn't Trust Every Stranger You Meet".

</comment><comment><USER37> Reminds me of this old classic, one of my favorites:

[http://slatestarcodex.com/2014/12/12/beware-the-man-of- one-s...](http://slatestarcodex.com/2014/12/12/beware-the-man-of-one-study/)

</comment><comment><USER15> I'd say a good rule of thumb is that the smaller the number of observations, the less you should trust any research that hasn't been reproduced. And when it comes to publication of false positive results, always remember your XKCD: [https://xkcd.com/882/](https://xkcd.com/882/)

</comment><comment><USER38> I want a chart like that but for journalism.

<comment><USER39> I don't follow this comment. What would you plot on the vertical axis?

<comment><USER40> Clickthroughs, presumably.

I assume that taruz is saying that journalists should be required to say what they're investigating _before_ publishing an investigative report. Right now, they start investigating, and if there's _something_ outrageous (even if it wasn't what they were initially looking for), they publish. Sometimes they even skip the "start investigating" part and just put up a tip-line for anyone who has a beef to get a story out there.

This is great for manufacturing outrage and hence clicks, but it gives the public a hugely skewed perspective on how the world is. Imagine that 0.01% (1 in 10,000) of all peoples' actions are outrageous and will piss off a large portion of planet. Most people, by those numbers, would say that the majority of folks are decent, law-abiding citizens. Now imagine that a news outlet is allowed to freely go over someone's life, and they end up evaluating 1000 actions. There's a 10% chance that they'll find something outrageous. Now imagine that 10 such reporters do this to 10 people, and if any one of them finds something publishable (= outrageous), they go to press. Suddenly there's a 64% chance that _one_ of them will find something, and you've likely got your news cycle for the day.

With the millions of people looking for something bad that a tip-line can generate, outrage is virtually assured. And that's where journalism is today. The world isn't actually a worse place than it was in 1980; in fact, by most metrics it's significantly better. But we've increased the amount of unpleasantness that people can be _exposed_ to by 3-4 orders of magnitude and then implemented a selection filter that ensures that only the worst stories go viral. _Of course_ we get only bad news; that's all that's economically viable, and we have such a large sample size that we can surely find it.

<comment><USER41> That is a natural outcome of the hyper capitalist world we currently live in. I have a mother who has been a journalist for over 40 years. I've heard for years about the pressure sell. Article titles often get changed against the will of journalists to be more click-bait like to sell more.

As people pay less for good journalism, and ad revenue is shrinking, the media is getting desperate to stay afloat.

Journalists today have significantly less independence than they had 15 years ago. Everything is far more controlled and geared towards sales.

I would like to see more alternative finance models for quality journalism.

Given how social media is actually starting to destroy democracy, it may be worth considering government grants to independent media organizations as a part of national defense. A democracy cannot function if the media is utterly broken. That means citizens are no longer capable of making informed decisions.

</comment></comment></comment></comment><comment><USER42> >Post-hoc data mining is very bad, except when you're gunning up evidence of anthropogenic climate change, which is very good

<comment><USER43> For the record, I believe that you didn't get downvoted for suggesting that there is post-hoc data mining happening around anthropogenic climate change. Instead, it's because you're providing no evidence for this and it's in addition offtopic.</comment></comment>