These time-sucks will add 3 months to your launch date. - <AUTHOR> http://www.47hats.com/index.php/2008/05/30/these-time-sucks-will-add-3-months-to-your-launch-date/ <comment><USER2> All of these have "Yes, but..." corollaries that can bite you just as bad:

1.) Yes, but...a little time spent refining your idea at the beginning can save you a lot of wasted time later. For example, my startup is a webapp to let people create their own casual games. We decided, early on, to start with an arcade proof of concept, because arcade games are what everyone thinks of when you say video games. All our competitors did the same thing. But most of the growth in the casual games market has actually been puzzle and word games, which are also more personally compelling to me. A little thought might've saved months of work. (Or maybe not, since it's looking like the sweet spot for our app may be in multi-genre games that don't fit into any archetype.)

2.) Yes, but...it's often not clear what the right tool for the job is until you've explored the problem domain, and you need to pick _a_ tool in order to do that. What if, after building that Window's GUI app in C#, you find that it really should've been a webapp? If you'd written it in heavily macro-ized Lisp, you could probably just change some macro definitions to generate HTML pages instead of Windows GUI forms.

3.) Yes, but...when you find yourself doing the same thing over and over again, it's time to abstract it into a library. Otherwise you end up like one of my old employers, who found they were invoking some DNS call wrong and said, "Well, we can fix it...but we'll have to fix it in 109 places."

Another example comes from my current project - I've got this abstraction called a SpriteReference, which basically picks out one or more sprites, possibly in a context-sensitive way. I built a custom (JavaScript) GUI widget for this, which is used in lots and lots of places. When I went to clean up the GUI for this, I spent a day changing the widget and it's instantly reflected everywhere I use it, instead of hunting down the several dozen places where SpriteReferences may appear in the UI and changing each one.

4.) Yes, but...oftentimes, you need those tests and documentation to build the rest of your application. You can't build upon code that doesn't work. There've been several times that I went back and added unit tests simply because that was the only way I could make further progress. The alternative is "hope and pray programming", which is unfortunately quite common in real companies (both my previous employers have practiced it, and they were in security/remote-access and financial software).

5.) Yes, but...if you can do it in 6 months, so can all of your competitors. It seems like there's a wide variety in launch times of successful products, ranging from 3 weeks for Reddit to 5 years for the Apple Macintosh. I definitely agree that you should put _something_ up on the screen as soon as you can though - I'd say more like 1 month. That gives you something to react to so you're not designing against a vacuum.

Really, this is why software entrepreneurship is hard. A lot of advice is right but incomplete, and could easily go the other way depending on circumstances you have no way of foreseeing.

</comment><comment><USER3> I can see where the author is coming from with Point 3 (Don't build a framework or library). In fact, I personally suffered from the problem of spending time on a framework when I really should have just been building the application, but that was partly because it wasn't my application and the framework was more interesting. But that's a different story....

So I do agree that rolling your own framework right from the start is probably a bad idea, but I wouldn't say the same for a library. A library is much- smaller-scale than a framework. In general, a well-built module in your program can likely be converted to a more general-purpose library with just one small iteration (in my experience at least). This should be especially true if you only generalize the functionality that you're currently using and avoid adding every function/method that you will ever possibly need.

The benefit of building a library is that once you do, you can consider that part finished for a long time. You can build a little test that checks the library's edge cases while also serving as a good example of how to use your library (it's always good to have simple code to refer to in 6 months). And if the library isn't too proprietary, you can throw it up on a public-facing server, where you can both help others and have a decent chance of receiving good feedback (if not patches) for better algorithms, bugfixes, or additional helpful functionality that others have implemented.

Specifically if you're working in a language that you will use for the majority of your projects, having a collection of personal libraries is invaluable. You will have this wonderful repository of functionality that you're already intimately familiar with, and instead of having that nagging feeling that you're re-coding something that you've done in the past, you will be able to go back and use a solid piece of tested code with very little effort expended on (re-)learning an API.

</comment><comment><USER4> Ok article, if fairly superficial, except for point 4. Advocating that someone should write something as changeable as a startup product without any unit tests is just plain bad advice.

<comment><USER5> I do agree. Test driven development really encourages the software to be more flexible since it allows to change the code immideately getting the impacts on the other parts of the system ( what is impossible without auto tests ); moreover once you test the code you try the interfaces and approach for usability, what improves the design speed and quality.

</comment></comment><comment><USER6> _Look - the problem with frameworks is that by nature they're general. But your application is specific.

So by building frameworks or libraries, you have to write a lot more code to cover a lot of use cases, which have nothing to do with your application!_

Spoken like a true PHP weenie.

This is why most programming languages are useless; nobody writes any worthwhile libraries. I've found that writing a library rarely affects how quickly I get something done -- solving a general problem and a specific instance of a general problem usually involve the same amount of thinking (and a bit more code). Thinking is slow, and typing is fast... so I wouldn't worry about this being a time sink.

Plus, when you release the library, the other people that happen to use it will start fixing it for you. Now you have people working on your specific problem _for free_.

Anyway, once you get a culture of library building going, the net result is a huge time savings for everyone in the community.

</comment><comment><USER7> 6) Visiting <http://news.ycombinator.com/>

</comment><comment><USER8> Also, not starting small and iterating will add significant time. If you constantly feel like you just need to add one more thing before it's perfect for launch it's going to take forever.

Come up with a subset of the features you ideally want to have and focus on those so you can launch earlier, then iterate based on your other ideas AND user feedback.

</comment><comment><USER9> Time sink.</comment>


Gradle plugin to generate the jOOQ metamodel using a dockerized database - <AUTHOR> https://github.com/ayedo/jooq-modelator <comment><AUTHOR> Hello! I wrote a little Gradle plugin to simplify the generation of jOOQ metamodel files using a dockerized database. Maybe somebody else finds it useful too! Let me know what you think.</comment>


Plonat Atek – Close Up on the Scope [video] - <AUTHOR> https://www.youtube.com/watch?v=SIQAk9_nc-s <comment><USER2> TL;DW for those who don't want or can't watch the video:

It's a demo of a game called Plonat Atek, which is a radial-coordinates version of Breakout / Arkanoid. The special thing about it is that the game itself _only produces audio_ , which is meant to be visualized on an _oscilloscope_ (in the X-Y mode, as far as I can tell).

The game itself was written in Pure Data, a _visual programming language_ for audio processing.

Plonat Atek was submitted for Ludum Dare 38. Here's the description: [https://ldjam.com/events/ludum- dare/38/$22417](https://ldjam.com/events/ludum-dare/38/$22417).

itch.io has downloads & all: [https://s-ol.itch.io/plonat- atek](https://s-ol.itch.io/plonat-atek)

(presumably either of the two would be a better link than the video)</comment>


Ender's game trailer is out - <AUTHOR> http://www.youtube.com/watch?v=vP0cUBi4hwE

<comment><USER2> For me, this is a book that did not age well. After having _loved_ it as a youngster, I recently picked it back up. Perhaps my perception has been tainted by Card's sad slide toward wacky politics: [http://www.salon.com/2013/03/07/end_game_for_orson_scott_car...](http://www.salon.com/2013/03/07/end_game_for_orson_scott_card_partner/)

<comment><USER3> It's how I used to feel about viewing 95% of the output of Hollywood as a "wacky" political conservative.

I got over it and learned to judge the work on its merits.

<comment><USER2> Let's be clear: there are political conservatives that I respect who are not also raging homophobes that advocate the use of the government's police power to restrict the sex lives of a minority of its citizens.

</comment></comment></comment><comment><USER4> My biggest fear is that this is turned into a young adult version of independence day or a poor rip-off of Starship Troopers for kids. I would've hoped for more Locke and Demosthenes, but I guess for a trailer they're looking to go for the big bonanza than actual fans of the story.

<comment><USER5> Well yea, I wouldn't necessarily say Locke and Demosthenes was of critical importance to the story line. Though it did influence it in a small manner.

</comment></comment><comment><USER6> Is it just me, or did anyone else envision the training room as being completely empty? It also looks like they gave away the ending in the trailer...

<comment><USER7> Not clear. Remember that at least one of the pre-climax battles involves a massive fleet vaporizing. Are you sure you did not see that?</comment></comment>


Hiring Engineers, a Process - <AUTHOR> http://hueniverse.com/2013/02/hiring-engineers-a-process/

<comment><USER2> The real TL;DR: "I have no patience for jumping through _your_ hiring hoops. Now, here's a list of _my_ hiring hoops you'll need to jump through before I consider working for / hiring you."

I would never, _ever_ hire this guy. With his hubris and self-centered worldview there's no way he'd work well with a team, and with his apparent aversion to writing code under any circumstances other than inside his own delicately-crafted bubble, I'd have serious doubts about his ability to hit a deadline.

Nor would I trust him as a manager. He walks out of an interview (multiple!) because they asked him to code (how _dare_ they), then interviews the guy who responds to (an incredibly ridiculous) code test with a jokey response? Sounds like a great way to make friends, and a terrible way to find job candidates with strong skills.

Even if he was the greatest programmer/manager in the world, unless you're looking for a solo developer who doesn't need to produce within a given timeframe or a manager who values a "cold call with attitude" over a first- class résumé, you're in for a world of hurt.

<comment><USER3> Eh. I think he complains a bit too much, but consider the reverse direction. Why do employers get to be such dicks?

This doesn't happen very often, but every once in a while I get one of these "oh we're so interested, you're so great, you did so well in the interviews ... <silence on the line for 3 weeks>".

Or, when I bother to write you a cover letter, you can bother to write me back 2 sentences, even if you don't want to hire me. "I'm too busy" is not an excuse. I'm busy too! If you can't take the 30 seconds to copy-paste a nicely written canned message and edit it up to let me know you want / don't want me, then you suck. It's just common courtesy, and you're not exempt from it.

You also can't pressure me to make a decision once you've made an offer. I'm going to shop around, just like you shop around. You probably don't have a hiring emergency for the one junior position you're hiring me for, so shove it. Or just hire someone else, but quit calling me to pressure me. I understood the first time. I almost fell for this when I was fresh out of college.

You also really shouldn't be claiming IP rights on unrelated things I work on out of office. That's _my_ business and my work, and I shouldn't need permission from you to own it myself.

Where is the decency? I see this post as a reaction to that frustration.

</comment></comment><comment><USER4> I thought I'd write a graf about how much I disliked the "Screening" section of this, with its instruction for candidates to have "attitude" and to "make it fun" for him, but then I reread it and at the end he's saying things like "send him an email about one of his blog posts", and that sounds totally sane.

I recommend reconsidering "culture fit". The "culture fit" meme is poisonous. Mostly to the profession, but also to you, because it'll cause you to eject people who would be solid performers, eventually in favor of prima donnas who will underperform, feel no ownership of their work, and use your team solely as a stepping stone.

If you're convinced that "culture" matters, find a way to distill it to the culture attributes that directly implicate job performance. But then make sure those attributes don't exclude whole classes of life circumstances, like parenthood.

PS: I interviewed at Bloomberg about 10 years ago and enjoyed the experience immensely. I got hammered with concurrency and distributed systems questions; everyone who talked to me was smart. Maybe it depends on the group you're talking to there.

<comment><USER5> I see things the other way when it comes to culture -- it's the end result of people finding ways to work together, and if a candidate can't fit in with the culture of the existing team, then they're not going to be a good hire, no matter how brilliant they are.

I once interviewed an otherwise brilliant developer that was militantly anti- TDD and anti-pairing, both of which are attributes that both myself and my team considered to be essential parts of the business of building software; working as a part of an engineering team is about more than just writing code.

Considering cultural fit helps you _avoid_ hiring prima-donnas that are unwilling to be a member of the team, and it's also a good way for a candidate to know whether or not they will be happy working with a given company.

That kid wouldn't have been happy working with us, and the team didn't want to work with him. He was a competent developer, but not a good fit for the culture of the team, and not hiring him on that basis was a good decision all around.

<comment><USER6> Did you just call all developers that don't like TDD and pairing as prima donas?

Do you release that's probably 90% of engineers out there, and maybe 95% of the good ones.

You can work and make great software without using heavy handed processes like TDD and Pairing, which in my opinion it only helps junior/inexperienced developers a bit, but hampers the productivity of the good ones.

But yea, it seems that the place wouldn't be a fit for him, but there is no need to call him a prima dona. He was right to stick with his guns, and you guys stick with yours, but keep in mind that you are limiting yourself to a very small subset of engineers that both like TDD/Pairing and are good at what they do.

<comment><USER5> Not at all. He just wasn't a good fit for the team, and nor was the team a good fit for him.

Prima-donna programmers tend to be vain, demanding, and incapable of receiving or acting on constructive criticism.

More often than not, they're also not particularly productive, either.

Whether or not you do TDD is unrelated to any of those personality traits, and I've interacted both with excellent developers that had a myriad of reasons to not test, as well as horrible prima-donnas that were religious about TDD, but only if you did it the One True Way That Only They Could Understand.

</comment></comment></comment></comment><comment><USER7> Re: Google (et al), "I'm purposely focusing on companies that got it all wrong."

As someone who's hired hundreds of people and worked to build three startups, I am increasingly of the opinion that it's critical to carefully study the hiring practices of companies that appear to employ a consistently high level of talent, like Google. And Google's talent base was one reason I thought the employees of my last startup would be happy there, and argued (to me) in favor of an acquisition by them. (Virtually all of them are still there, too.)

That said, entrepreneurs should take with a grain of salt any definitive pronouncements about hiring practices. In my experience, hiring and organizational design are not solved problems yet, by any means.

<comment><USER4> I agree, and note that Google also has radically different hiring challenges than a startup does.

<comment><USER8> I think Google's interviewing process completely ignores someone's background and quickly tries to send you into the kind of Googler they would like you to be and see if you fit. They probably miss on having a diverse engineering force this way, which is a fine trade-off in an army.

</comment></comment></comment><comment><USER9> I'm curious as to how the "real-world" programming task works. I find that most task are either new features, in which case domain knowledge is essential - e.g you need to talk to the users before you can write any code. That doesn't lend it self well to a homework task.

The alternative is bug fixes and inceemental tweaks and improvements to existing systems. These are often of a more technical nature, but they are also 90% about understanding existing code, which means that the candidate would need copies of the existing code base. I'm not sure I would be comfortable dishing that out to random strangers, which job candidates essentially are.

How do you do this in practise?

<comment><USER4> We have it easier than he does, but I'll tell you what our practicals look like:

* We test a lot of web applications, so we rigged up a sacrificial web app that we run on random EC2 instances and have candidates take an hour or two seeing what they can find in it.

* We test a lot of crazy custom client/server stuff, so we built a client/server system with a custom protocol that we have candidates reverse and then attack; we tried to calibrate this so it'd take less than 2 hours to beat.

* We write a lot of fuzzers, so we have candidates write a fuzzer for a file format.

Key attributes of good practical tests in our experience:

* They can't take too long to complete.

* They have to relate somehow to the actual work candidates would be doing within the first six months.

* They have to produce results that are _objectively_ comparable in some fashion to those of other candidates, so we can learn from the trends. This is probably the most important thing I've learned about hiring in the past year.

We'll probably swap the fuzzer challenge for a memory corruption challenge sometime this quarter, because the fuzzer scores high on the first two attributes and low on the last.

I'd love to do a crypto challenge (mail sean AT matasano dot com if you'd like to do a bunch of crypto challenges, by the way; just say "Thomas told me to mail you"), but they score low on the first two attributes.

So if I was doing engineering interviews again (About 10 years of my career were as a full-time dev), I'd probably look to:

* Taking a time-inefficient algorithm and making it faster

* Taking a space-inefficient system and making it tighter

* Writing an importer for a specific file format

I agree that actually asking candidates to jump in and produce code for issues in Github is a losing strategy. In particular, because you're making it unnecessarily hard to learn from your hiring decisions; when you look at someone who is kicking ass on your team, can you go back to the hiring decision that selected them and see whether they outperformed or underperformed a metric and adjust the metric accordingly? If not, your hiring process is suboptimal.

<comment><USER9> Thanks. I guess this is a bit easier for you because you are a consultancy and have lots of different projects going on. You also work in a very technical domain (I assume - really, I know little about what you're doing).

Where I'm having a hard time seeing this play out, is for a business that has an in-house software platform supporting it. Or for shops that develop and maintain a products.

</comment></comment></comment><comment><USER10> Is "I don't read resumes", "I don't care about your resume", very common? It seems a bit cold hearted and unfriendly. It says to me "I don't care enough to read a bit about you, and your achievements". But that's just me.

<comment><USER4> I usually read resumes, but I don't really care about them. Candidates usually send "cover letters" (this is all email, so, really we're just talking about the 2 grafs that precede the resume in the resume email) and a cover letter is enough to get me on the phone. If I like you on the phone, I will never bother looking at your resume.

<comment><USER11> So going from "I don't read resumes" and "I don't care about your resume" to "I usually read resumes" seems a bit self-contradicting. Regardless, I agree with your point of view. When we were interviewing, we got a bunch of impressive resumes but in reality...

<comment><USER4> I usually read resumes.

I do not care about resumes.

If I get on the phone with you because of your cover letter and haven't read your resume, I will probably never read your resume.

Regardless of whether I ever look at your resume, it's very unlikely to have any impact on our hiring process. We use practical tests and, to a much lesser extent, 1:1 interviews on concepts; the practical tests have been so valuable that we're moving towards doing more of them and less subjective interviews.

Your resume fits almost nowhere in this process.

</comment></comment></comment></comment><comment><USER12> i continue to question the "whiteboard coding" experience.

on one hand: a dev cannot put their thoughts about a problem set into code on a white board.

on the other hand: a dev answers all problems with code on a white board.

i find it hard to believe that taking a dev away from their desk and providing a whiteboard with marker is so different that it would make one become a "bad developer" incapable of solving a problem.

i find it easy to believe that the dev has just not practiced coding on a whiteboard. therefore, when asked to do so, cannot bc of to anxiety from not practicing.

if one can write english on a whiteboard and not get anxious, then why would a professional developer get anxious about writing c++ or java on a whiteboard?

like i said, i go back and forth on this when it comes to interviewing people.

<comment><USER13> I've been a developer now for a year and a half, and right now, I don't think I would have any anxiety about writing code on a whiteboard (even if the final outcome would be no code - I can't know everything!) or even over the phone. However, when I interviewed for the present job, I was straight out of college, and even with 10+ years experience being a hobby programmer, I was very very nervous. So, I would say coding questions are OK, except maybe for junior, inexperienced applicants.

</comment></comment><comment><USER14> This seems like a reasonably good process. This item under "DONT'S" is a particular annoyance for me:

* Don't ask those who interviewed the candidate before you what they think. Form your own first impression.

For some reason, some people feel the need to grab you before stepping into an interview and gush about the candidate "This person is AWESOME! I'm really excited about them!", which, if you aren't cognizant of it, can heavily skew your evaluation of them and basically destroys the point of having multiple people interview a candidate.

The lone exception might be if a candidate is so unbelievably bad that you want to save everyone's time by ending the whole thing early, but hopefully your screening process is good enough that it doesn't happen often enough to worry about.

<comment><USER15> Why do we conduct multiple interviews in the first place? Because, as a group, we want to gather all the information we need to make an informed decision. Some quick discussion between interviews can help make sure we gather _all_ the information we need -- as long as you keep it to narrowly defined topics. In particular, I always try to find out: "What did you cover in your interview? What _didn't_ you cover? Is there anything I need to know?"

Let's say we're interviewing someone for a role with HTML5, CSS, and JavaScript. If the first interviewer ran out of time before getting to JavaScript, I should probably start with that.

Or, if an interviewer noticed any red flags, we can use the following interviews to gather more information. If I was told that a candidate complained loudly about being overworked, then I could spend more time discussing time management and the way he works. Maybe he legitimately _was_ overworked, or maybe he's a complainer, or not very good at prioritizing his work.

Finally, it helps if there's at least one recruiter or a manager that you _can_ give real-time feedback. Recently I was on an interview loop of a candidate for a very specific role. I quickly realized she was a terrible fit for this position, but she'd actually be perfect for a different one. I went to our recruiter and explained the situation. He was able to reorganize the schedule so that the candidate spent the rest of the day interviewing for the right position. If we had just continued without any feedback, it would have wasted a lot of time and we would have missed out on a great candidate for the other role.

</comment></comment><comment><USER16> I think most of the things mentioned in the post is a good way to go about interviewing. However, I don't really agree with the "no resume - look at open source" part.

I know I am not the target demographic for this company as I am no coder and I don't really have any interest in contributing to open source development, even if I were a coder. Surely there are other/better ways of initially judging potential new recruits?

As far as I can tell the author is an open source advocate so I guess I wouldn't fit into the "culture" but ignoring those who aren't as into open source as the author would exclude a number great of people who might contribute greatly to the company (and a missed opportunity to convert them into open source advocates/fans/contributors).

</comment><comment><USER17> Wow -- this is one of the first write-ups on this dead, beaten horse that makes a considerable amount of sense. I've often done something like this "lite", and had reasonable success.

<comment><USER4> Wow is recruiting and hiring practice ever _not_ a dead horse.

<comment><USER18> Which reminds me, I'd love to see a post about how you do it, and especially how your perspective has changed as your company has grown. #justanidea

</comment></comment></comment><comment><USER19> It sounds like they've found a legal way of getting free work completed.

Is there some kind of signing bonus if you make it through the interview process and get an offer? I think there should be.

<comment><USER20> Yes, they must be making a killing getting people to build them cars for free in C++.

More seriously, it sounds like they go out of their way to avoid giving their applicants any work someone might profit from.

</comment></comment><comment><USER21> Where is the terse, elegant version of this.</comment>


Ask HN: Who is Hiring Interns? - <AUTHOR> Finding internships has been difficult for me so far. Most of the companies are elusive in terms of interns. So I invite you all to post your intern postings here. Inspired by: Who is hiring thread. I would make this monthly suite if deemed fit. <comment><USER2> The Who Is Hiring thread is posted by the HN mods (they built a bot). My recommendation is to contact them using the link at the bottom of the page and present your rationales.

And keep in mind that even good ideas sometimes take along time to be implemented. Also keep in mind that Who is Hiring works in part because it is automated and regular.

good luck.</comment>


Finding an OSS project to contribute to (H.S. Edition) - <AUTHOR>

Hello. I am a junior in High School and I'm looking for advice on how to get into open source contribution. I am skilled in the following languages (ordered from high to low proficiency): Java, Python, Perl, HTML/CSS (I know this isn't a REAL langauge), C. I've tried joining some projects in the past, but they have either fallen apart, already had too many active contributors, or had a
codebase that was too deep and complex for me to understand. I'd be grateful for any suggestions the HN community could offer me. <comment><USER2> Find a project that you are interested in. Use their version control to get the latest. Find something wrong. Figure out how to fix it. Submit the fix to the administrator. Do that a couple of times in order to build trust.

Are you interested in software agents? If so, then check out <http://kato.sourceforge.net/kato.html></comment>


How Desmos uses Pratt Parsers - <AUTHOR> https://engineering.desmos.com/articles/pratt-parser/ <comment><USER2> "In computer science, a Pratt parser is an improved recursive descent parser that associates semantics with tokens instead of grammar rules." (Wikipedia)

Skip over the large introduction to what parsing is and the reasons for switching are listed: Avoid the parser generator special syntax and compilation, better error messages, have the parser in the same language as the rest of their code, avoid having two grammar definitions (another for CodeMirror), faster and smaller JS bundle than generated code.

<comment><USER3> Shameless plug: Single-file Java Pratt expression parser library: [https://github.com/stefanhaustein/expressionparser](https://github.com/stefanhaustein/expressionparser)

<comment><USER2> One of the disadvantages they list is that recursive-descent parsers are harder to read than e.g. DSLs.

So the best of both worlds, it sounds to me, would be parser combinators: They're both native to the language, and they're DSLs. So there's only one set of syntax for the programmer, and they still compose declaratively as opposed to writing recursive parsers manually.

<comment><USER4> Personally, while I do find DSLs easier to read, I find writing them harder than recursive descent. The problem is that a DSL will still have theoretical limitations (ie shift shift or shift reduce errors, left recursion, performance). In order to deal with these limitations you still have to know how everything works under the hood.

With recursive descent, you can always start adding break points until you understand the forces involved.</comment></comment></comment></comment>


There's No Such Thing as Free Will - <AUTHOR> http://www.theatlantic.com/magazine/archive/2016/06/theres-no-such-thing-as-free-will/480750/?single_page=true <comment><USER2> _" there is also agreement in the scientific community that the firing of neurons determines not just some or most but all of our thoughts, hopes, memories, and dreams."_ is quite a strong argument against mental dualism and traditional ideas about free will.

But research also supports the plasticity of the brain/mind and we know that we can build/change habits and personality traits (apparently) through conscious effort. Perhaps "free will" should be defined more specifically as the ability to consciously shape the deterministic systems that are our minds?

<comment><USER3> Exactly, which is why this article is tripe. It basically boils down to, "the driver does not control the car, the steering wheel controls where the car goes, not the driver". That's true, but the driver controls the steering wheel, or at least has influence over it.

<comment><USER4> It's a self-driving car. There is no driver.

You are indeed conscious, and do indeed have thoughts. What the article discusses is that the overwhelming evidence seems to show your thoughts are generated by deterministic/proabilistic physical processes, and that in fact your conscious thoughts occur _after_ your decisions are already made and often serve only as post-hoc justifications of what you _already did._

Consciousness is just another component in the car. It doesn't determine or influence where the car is going. Perhaps the most valuable part of consciousness is it provides an effective way to use reflection which can communicate data about the internal state of the car to the other cars. (Often this data is objectively inaccurate, but still serves the interest of the car or the fleet.)

<comment><USER5> > deterministic/proabilistic...

You do realize those aren't the same thing, right? In fact, they're basically opposites. Deterministic is "if/then", while probabilistic is "maybe". Something is either deterministic or probabilistic, and it matters which it is.

In your metaphor, consciousness is the learning system which is used to generate the model which drives the car. Our brains are semi-supervised learning, and our models get retrained when they drift far enough.

<comment><USER4> > You do realize those aren't the same thing, right? In fact, they're > basically opposites. Deterministic is "if/then", while probabilistic is > "maybe". Something is either deterministic or probabilistic, and it matters > which it is.

I say "deterministic/probabilistic" because I am thinking about physical laws; i.e., what we know of physics and quantum mechanics. The intent is to exclude the idea that consciousness is somehow above the rules of cause and effect. It probably would be safer to just say "deterministic" to prevent all the magic- shoehorning people sometimes attempt with QM, but I was being pedantic.

> In your metaphor, consciousness is the learning system which is used to > generate the model which drives the car. Our brains are semi-supervised > learning, and our models get retrained when they drift far enough.

No, in my metaphor, consciousness is totally unrelated to learning, as the article suggested. In my metaphor consciousness is basically just part of the network stack.

<comment><USER5> I misspoke, ^your metaphor^reality

I recommend you read the works of the scientist upon which my pseudonym is based (not the Unicode part, that's just a dig at HN for the type of characters they allow)

Briefly, you cannot fully describe a complex system using merely the axioms of a less complex system (or more simplistically, all metaphors are (subtlety but importantly) wrong).

This is especially true of quantum mechanics, but in general it's a good rule to keep in mind. It prevents comfortable but naïve assumptions like "physics is just Newton because that's what we can perceive", or assuming that cognition is just summing neurons together.

In every aspect of life, you can safely assume that It's More Complicated Than That.

</comment></comment></comment></comment></comment></comment><comment><USER6> Give me a concrete definition of free will. This is where such discussions fall over, inadequate definitions.

<comment><USER7> The ability to choose between options without the choice being determined by prior conditions or influences.

<comment><USER8> so then what else informs a free agent's choice?

<comment><USER9> And if you have a free agent without prior conditions or influences - how was it made?

</comment></comment></comment></comment><comment><USER10> I think if you accept a materialistic ontology, you have no choice* but to accept that you have no real choices - instead, your choices are illusions - every action you take is purely a function the gears of the universe turning (cause/effect).

* some people "choose" to believe in Compatibilism, which I consider a cop out.

<comment><USER11> Even if every action is purely a function of the gears turning, you still have state. As soon as you have state (memories/mood/etc), you have some level of free will in the immediate sense.

Event X happens. How you react depends on your state of mind.

Same problem as with coding. As soon as outputs are not wholly dependent on inputs, and they can have side-effects, all bets are off. Anything could happen.

<comment><USER12> But your state is also deterministically a function of your prior experiences, per this model. If you consider the input the entire stream of events, rather than each individual event, the output stream will be deterministic even with state.

<comment><USER13> So basically it's still a 'pure' function in the end?

<comment><USER12> Per the materialist/deterministic 'there is no free will' mental model, yes: the function taking the input stream is pure.

On the per-event basis, this model boils down to a 'function' evaluating each event with multiple outputs and inputs:

Inputs: the stimuli, mental state prior to stimuli

Outputs: your actions and resultant mental state

The output mental state is then the input for the next iteration/evaluation.

</comment></comment></comment></comment></comment><comment><USER14> _> There's No Such Thing as Free Will_

 _> We're better off believing in it anyway._

Nihilism is easy to start but hard to finish.

<comment><USER15> I would disagree that we're better off. Well, maybe some people would be. But personally, that information has actually had the ironic effect of making me more effective at using my 'free will'. It's easier to try and be something other than what you are if you believe you think you have more control than you actually do, and that's a potentially huge waste of energy.

<comment><USER14> You do realize the hysterically funny contradiction in your comment, correct?

<comment><USER15> Yes, that was very much the point lol

<comment><USER14> Excellent. :)

</comment></comment></comment></comment></comment><comment><USER16> Doesn't the observation that people who believe in free will act differently than people who don't demonstrate that free will exists? I'm perfectly willing to accept that we have less free will than we think we do, and that there's a physical basis for our mental processes. But why should that mean we have no free will at all?

<comment><USER17> No. Why would it demonstrate that? Beliefs affect actions whether or not those beliefs are accurate.

Consider: 'Does the observation that people who believe in [demons] act differently than people who don't demonstrate that [demons] exist?'

<comment><USER16> Not a good analogy. I'll put it another way: People who believe they can make decisions for themselves act differently than people who don't. Are the former not exercising some level of control over their actions? The belief itself is neither here nor there. It's the fact that it makes a difference that I think argues for the ability to control one's impulses to some degree. Is that not free will?

<comment><USER13> I think it's actually a pretty good analogy. The vast majority of people I know, regardless of whether they believe in free will or not, cannot help but act as if they do. I'm one of them. I think there's little correlation between belief and action in this particular issue, even more so than when it comes to belief in demons.

But perhaps I'm not getting exactly what you're trying to say?

</comment></comment></comment></comment><comment><USER4> What we've learned through neuroscience is definitely invaluable, but it's not like this is a new idea even in the philosophic community. It's telling that the article opens by quoting Kant, who, as Nietzsche said:

> _Kant 's joke - Kant wanted to prove, in a way that would dumbfound the > common man, that the common man was right: that was the secret joke of this > soul. He wrote against the scholars in support of the popular prejudice, but > for scholars and not for the people._

The idea of free will is a "popular prejudice" that has been supported almost entirely by this type of philosopher. There is a quick way to identify them: the appeal to intuition as the supreme arbiter of truth. Most of western civilization believed in free will (in part for reasons of theology), therefore the belief in free will was inculcated in the populace, therefore philosophers found their intuition ultimately verified the existence of free will and used their incredible intellects to rationalize what that confused idea even was and how it worked in the face of obvious paradoxes.

Many philosophers, for thousands of years, did not accept these arguments. I quote Nietzsche because he is eminently quotable:

> _Of these "inward facts" that seem to demonstrate causality, the primary and > most persuasive one is that of the will as cause. The idea of consciousness > ("spirit") or, later, that of the ego [I] (the "subject") as a cause are > only afterbirths: first the causality of the will was firmly accepted as > proved, as a fact, and these other concepts followed from it. But we have > reservations about these concepts. Today we no longer believe any of this is > true._

Nietzsche was in some ways more of a psychologist than a philosopher and is worth reading on those grounds alone. In fact, according to Nietzsche, philosophy is mostly interesting as a reflection of the philosopher's health and therefore his psychology.

<comment><USER18> Could you give us citations? I love nietzsche...

<comment><USER4> I think _The Gay Science_ , _Beyond Good and Evil_ , and _A Genealogy of Morality_ are very readable and thought-provoking without going into esoteric ism or experimental style like _Thus Spake Zarathustra_. I prefer the Kaufman translations, but I understand there are many new, possibly better translations available now. Translation can make-or-break Nietzsche - he was one of the best German prose writers and makes use of a lot of wordplay and neologisms.

The first quote was from Gay Science - I grabbed the second of Wikipedia, but I was sure it, or something to the same effect, was also in Gay Science. I don't have a searchable copy of my favorite translation, unfortunately, but Nietzsche talks a lot of psychology in Gay Science.

</comment></comment></comment><comment><USER9> "Free will" is just a phrase that people made up to rationalize their desire for retribution, punishment, and forcible conversion.

People who steal more when it is suggested that there is none probably suffer from the same condition that people who feel that people who don't share their religion are inherently unethical suffer from: axiomatic ethical principles, rather than ethical principles that they derive from axioms.

edit: The most interesting positive thing I've ever read on the existence of a thing that we call "free will" is _How Brains Make Up Their Minds_ [1] by Walter J. Freeman[2], a person who I think has gotten closest to the mechanics of how "consciousness" is automated. I don't mean to say that it's convincing, because for me it wasn't; but the number of contortions that it takes for him to make his point in the face of all of his physical theory is astounding, and possibly the best case that could be made.

And he died last month, which I didn't know. How sad.

[1] [http://sulcus.berkeley.edu/FreemanWWW/Books/HB/HowBrains.htm...](http://sulcus.berkeley.edu/FreemanWWW/Books/HB/HowBrains.html)

[2] [http://sulcus.berkeley.edu/](http://sulcus.berkeley.edu/)

</comment><comment><USER19> I strongly belive the universe is for all intent and purposes casual [1], I reject dualism and accept that free will objectively doesn't exist (in fact I don't even think you can rigourously define it without invoking supernatural entities).

Still I have no problem to accept free will as a subjective experience, the same way I accept love, fear, hope, despair, and other states of mind, including consciousness. They are just the way our mind work, byproducts in a way. That doesn't mean that in principle one couldn't imagine mind without them, but it would be alien to us an we would probably not even recognise as intelligence.

I guess that makes me a compatibilist.

[1] modulo quantum indeterminism which seems to have surprisingly little effect to the macro world.

</comment><comment><USER20> This article presents determinism as certain. That's not the case.

In terms of fundamental physics we know probabilities are determined, but the exact outcomes are not. There's strong evidence that this isn't a matter of us being ignorant of some hidden deterministic state (Bell's inequality experiments) but rather is fundamental to how our universe works, though it's not a totally settled debate. Whether this gives an escape hatch where our brains are capable of free will is way too complex a question for me to think it'll be settled empirically any time soon, but I personally suspect it's true in a faint way. We're mostly reactive, but have some way to influence those reactions over time.

</comment><comment><USER18> It seems a false dichotomy in the article that either we have "free will" or we are driven completely deterministically. No chaos? No probabilistic? No subtlety....

<comment><USER21> The problem goes even deeper than this. It's not merely a false dichotomy but a false continuum. The implication is that minds are machines, and that as machines they may be, at one extreme, deterministic (like a software program that doesn't use `rand()`) or, at the other extreme, non-deterministic (like a software program that does), or, somewhere in the middle, "chaotic" (like a software program that doesn't use randomization but is sufficiently complex to produce results that seem magical).

But surely we believe in "free will" not because we observe it in a lab but because we experience it directly. Pick up a menu at a restaurant. Sure there is mechanistic cause and effect going on in your selection—memories, sights, smells—but there is also the direct experience of _choosing_. Whatever free will is, it has to do with this experience of bringing a cause into the universe essential ex nihilo, from within yourself.

Science is always compelled to dismiss these individual and personal experiences and perceptions, and _as science_ rightly so. But as people we can take them into account. And so we should. To dismiss the sense of "I" that makes us, in fact, people is to cast away perhaps the most important part of our world. We retain a sense of choice, of free will, not because it's a compelling illusion but because it is in fact in large part what we are and what we recognize others to be. Be careful with that word "illusion": you can call something an illusion, but you then have to account for where the illusion came from and why it functions so powerfully. I'd say that free will is not an illusion so much as a thing that science deals badly with and is therefore tempted to dismiss. Well, dismiss free will from the laboratory, sure, but don't pretend we aren't free-willing things or you'll be left with nothing but a lab, populated by not-quite-people.

<comment><USER13> > but there is also the direct experience of choosing. Whatever free will is, > it has to do with this experience of bringing a cause into the universe > essential ex nihilo, from within yourself.

Is this sort of what is meant with 'qualia'? I could never quite wrap my head around what that concept means, in what context, and what its value is.

<comment><USER21> Yes I think that's more or less it. You can describe the entire mechanism of how an eye, optic nerve, and brain system sees the color green. In an ideal world you could explain that mechanism in absolutely detail, down to the molecule, down to the particle. Yet even if you did you would have said nothing about the most important thing about seeing the color green, which is the actual experience of doing so. That experience is what they call qualia. You can have the experience without actually seeing anything—you can dream it or imagine it, for example—which suggests that the experiencing is more fundamental, maybe more "real" in some sense, than the mechanism. Yet modern people, particularly of a scientific bent, have a dangerous tendency to emphasize the mechanism over the experience, even to the extent of denying the experience, and with it, the "person" part of people.

</comment></comment></comment></comment><comment><USER7> I've written about this before with respect to mental illness -- I call it the "illusion of autonomy": [http://sonyaellenmann.com/2015/04/free-will-mental- illness-a...](http://sonyaellenmann.com/2015/04/free-will-mental-illness- abuse.html)

</comment><comment><USER22> The reductionist falacy. It is ignoring the fact that the constituent systrms, while built on the operations of subsystems, evolved specifically to overcome the behavior of those sub systems.

</comment><comment><USER23> I must be missing something. If coming to doubt the existence of free will causes people to behave less responsibly, doesn't that demonstrate that those people do indeed have free will?

</comment><comment><USER21> Why the animosity toward free will, I wonder? I can see why it's not helpful to neuroscientists. It's not a neuron, after all. It's not a material thing, and so the material sciences don't reckon with it. But why does that make anybody want to dismiss it from reality generally? Is there an assumption that if it can't be studied in the lab, it can't exist? Boy I hope they're teaching scientists better than that these days.</comment>


Online privacy: what's at stake - <AUTHOR> http://cdixon.org/2010/10/22/online-privacy-whats-at-stake/ <comment><USER2> _It is widely believed that a flourishing democracy requires an independent, diverse, and financially solvent press._

Most of Europe has a socialized independent press, in Germany it's financed by a soon to be mandatory per-household charge (currently mandatory per-TV/Radio charge) and it's been _mostly_ working out so far. Quite frankly I don't understand how you can call a company owned newspaper like the NY Times independent.

<comment><USER3> I think a non-profit press is one solution. It just doesn't seem to be the solution favored by Americans. Given that, it's probably best to have a selection of well written for profit news sites with different points of view (NYT, WSJ etc).

</comment></comment><comment><USER4> Great article. Rapleaf is clearly crossing the 'ick factor' boundary, and the NYT and WSJ writers who have been going after them for the past few months are definitely starting to get some traction.

The reality is that personal identification (as opposed to anonymized or pseudo-anonymized id) isn't necessary to drive the kind of value advertisers need to see ROI gains relative to the ways they buy today. Whether or not the ad industry can organize around a coherent strategy here is questionable, but there are tens of billions of dollars in incentive not to have regulatory agencies come in with an iron fist.

</comment><comment><USER5> > "With print newspapers set to disappear in the next few years,"

I stopped reading after that. I'm sorry, but if you're going to start basing the rest of the article on crazy false projections, there's not going to be a lot of point.

<comment><USER3> If you follow the link, you'll see that quote came almost verbatim from the publisher of the New York Times.

<comment><USER5> ...which is one newspaper in one particular country, who are betting (stupidly) on digital distribution.

Does it not surprise you that they're betting their money on a paywall site, and proclaiming that print newspapers will die? Of course they'd proclaim that! They want you to sign up to a subscription.

<comment><USER6> They get your money when you subscribe to their print paper too, you know. It's not like their business model actually requires the death of print.

<comment><USER5> I'd bet they would in theory get far higher margins _if_ anyone did subscribe to their online paper. Also they get to look like they're ahead of the curve.

I'm just saying, it's hardly an unbiased opinion of where things are headed.

</comment></comment></comment></comment></comment><comment><USER7> Privacy is the new sharing.

</comment><comment><USER8> Good article, but I think the conclusion he makes is way off mark:

 _The good news is that the things users want to keep secret are almost always the least important things to online advertisers. It turns out that knowing people are trying to buy new washing machines or plane tickets to Hawaii is vastly more monetizeable than their names, who they were dating, or the dumb things they did in college._

Your preferences + your email address is extremely valuable to online advertisers. And an email address is generally a personal identifier. Well, all of mine are, even my gmail one is an identifier if you know what I do or what country I'm from as I have a fairly rare surname.

<comment><USER3> Agree re email. But this can be done in a right way and a wrong way. Right way = new york times explicitly asking you for your email upon registration and respecting email spam rules. Wrong way - data mining off facebook.</comment></comment>


Doctors have decades of experience fighting "fake news." Here's how they win - <AUTHOR> http://www.vox.com/science-and-health/2017/4/14/15262034/fight-fake-news-doctors-medical-community?utm_campaign=vox&utm_content=chorus&utm_medium=social&utm_source=twitter <comment><USER2> This article is about rhetoric, I think. I believe the article's main bullet points apply to religious proselytizing too:

* Take time to explain why you believe something — not just what you believe and why your opponent is wrong ("because in his presence i feel the divine", "because scripture tells me so", "because the evidence of her miracles is so solid")

* Make sure your information is reliable and easy to access (give them a free pamphlet/booklet/DVD/copy of your guru's teachings/Holy Bible/etc.)

* Teach them while they're young (free Sunday School, trip to the holy land, lunch, medical care, balloons, severe beatings, etc)

* Evidence is necessary but not sufficient ("it also takes faith...")

</comment><comment><USER3> So often you see people who are for vaccines (which I am for, massively) and for GMOs (which I'm only conditionally for) arguing SCIENCE SCIENCE SCIENCE without actually making an argument. Science can't prove any vaccines or GMO are safe in general, any more than pharmaceuticals or processed foods in general could be proven safe. The FDA and CDC carefully monitor vaccines. Processed foods and GMOs less so or not at all. Merely invoking SCIENCE doesn't let anybody off the hook.

<comment><USER4> Good attitude, however I'm sorry I'm going to have to invoke a little bit of cognitive pain for you :-/, and point out that your base assumption is that the FDA and CDC are benevolent, fully competent, and always operating in the best interest of the population.

To be fully honest, you also need to consider the case where that may not be so, and what that would then imply.</comment></comment>


Creating a SQL complex query report, with visual design approach, via pipeSQL - <AUTHOR> http://pipesql.com/blog/designing-sql-query-using-pipesql.html

<comment><USER2> Numerous attempts have been made at visual SQL queries. The problem is learning them doesn't gain you anything over SQL really, and you have now spent your time learning a non-standard way of doing things (MS Access query builder was OK). Better spend your time practising some advanced queries than learning yet another visual tool.

<comment><AUTHOR> pipeSQL author here:

Sorry, I didn't understand your answer. It is very important to understand the complex query in-order to debug or re-engineer. One way is to visualise it as mentioned in the article and convert it to SQL via pipeSQL.

<comment><USER2> I personally haven't found visual tools made querying any easier, just a new way of doing things - essentially a new syntax. Practising normal SQL and being able to visualize it in my head has been far more use than any visual tools have been to me.</comment></comment></comment>


Career switcher looking for advice (UK) - <AUTHOR> A bit of background: My career to date has been in 2D animation, I'm 46 and have won shiny awards, but I can't earn enough as an animator to support my family unless I direct, in which case I'd work all hours and never see my son. When the lockdown started I was about to jump back into the job market after being stay-at-home dad for about a year, but things are suddenly very quiet on the job front.
I've always been a hobbyist tinkerer and loved making inanimate things do stuff (which led me to animation in the first place) - for the past few years I've been teaching myself CS in my spare time using Python, which I've really enjoyed, and for the last month or so I've been learning C#.
Up until now my game plan to switch careers out of animation has been somehow to integrate programming more into my day to day, and stepping-stone my way towards a new career as a developer. The obvious field to go into is games, but it seems the games industry suffers from the same intense downward pressure on wages as animation. My next thought was to use my knowledge of animation to sidestep into VR/AR.... however:
I have a chance while my other half is off work (until maybe July) to do something more drastic, and immerse myself in/get experience of software production, rather than just stepping-stone by degrees into another field. To that end, I thought about work-shadowing an experienced dev, or an internship, but I realise that there are practical obstacles to this, especially in a short time frame.
Can anyone give me some advice on how to approach this? Has anybody been in my position, as a middle-aged career switcher? I realise what I'm talking about may be a long-shot! Any advice, broad or narrow, appreciated. <comment><USER2> If you do a year or two in games, it may make it easier to get a more general programming job, fwiw.

Btw, you may want to edit your post to prefix the title with "Ask HN:"</comment>


Skimmer, organize online social stuff - <AUTHOR> http://www.fallon.com/skimmer

<comment><USER2> "A lifestreaming thing that let's you..." Such a shame. So much care into typography and layout, then they forget to check their grammar.

</comment><comment><USER3> I like this a lot. Compared to a visual disaster like PeopleBrowsr, this app is very appealing. The three view modes are very useful and the sparse use of visual elements doesn't distract from the content.

As to browsing content, I find the visual hierarchy slightly off in some places. In the list view, for example, the date has a dark background, pushing it in the foreground. In contrast, the actual tweet itself is in light grey. That text is the meat I want to be able to scan quickly, which is hard to do with the current visual treatment.

In the authentication screen I think you need some more explanations why you need to be able to post notes to my Facebook account. This is a tricky matter (see the other comments) and a simple explanation what you are going to do with my credentials would put my mind to ease that you're not going to spam updates to my account.

This is very promising. Please keep iterating on this.

</comment><comment><USER4> Hmmm, do you really want to provide the username and password to all your social networking sites to these folks? I don't.

</comment><comment><USER5> Looks pretty cool. Does it hook into Facebook?

<comment><AUTHOR> it does actually: <http://www.fallon.com/skimmer/features>

</comment></comment><comment><USER6> Well kids, let this be a lesson to you on letting your adobe flash loving graphic artist design a GUI.

Horrid, horrid, horrid. Would prefer to use Twitter through 'netcat | egrep' than this abomination.

<comment><USER7> Downmodded because the tone of this comment isn't really appropriate for HN. Other than being Flash based, what do you find distasteful about the GUI? Answering that question would be both interesting to other commenters and helpful to the OP.</comment></comment>


TensorNetwork: Open-Source Library for Efficient Tensor Calculations - <AUTHOR> https://ai.googleblog.com/2019/06/introducing-tensornetwork-open-source.html <comment><USER2> AFAIK TensorFlow is not Tensorflow but "Matrixflow". This library is truly tensor-based if I understood it correctly?

I found useful the diagrammatic notation, by the way.</comment>


IBM Gives Watson a New Challenge: Your Tax Return - <AUTHOR> https://www.nytimes.com/2017/02/01/technology/ibm-watson-tax-return.html?rref=collection%2Fsectioncollection%2Fpersonaltech <comment><USER2> \- Watson, quick, find me all the legal loopholes so I can pay as little tax as possible. \- I'm afraid I can't do that Dave</comment>


Mark Cuban is bullish on America - <AUTHOR> http://blogmaverick.com/2008/11/05/proud-to-be-an-american/

<comment><USER2> I don't even think about President Elect Obama being black, and I'm shocked that people factor it in to his message of hope, as if that's partly what it's about: that a black man can be president. It's nothing of the sort.

What inspires me is that he'll actually change things. Nearly all politicians will give lots of lips service to lots of things and in the end keep everything the same. I (and many others) strongly believe he's different.

That's why people are in the streets. That's why they are excited. That's why this is big.

It's not about the color of his skin but the content of his character.

<comment><USER3> To me, Obama is a half-black half-white, non-practicing Muslim - not that I think him any lesser for it. When a fully black or fully devout Muslim candidate wins the election, that would be very interesting. It is not fitting to congratulate Obama on the race card just because he's different to his predecessors.

<comment><USER4> Except that he's explicitly Christian, not Muslim.

<comment><USER5> I liked Colin Powells take on that one:

"I'm also troubled by not what senator McCain says, but what members of the party say - and it is permitted to be said - such things as "you know that Obama is a muslim". The correct answer is that he's not a muslim, he's a christian, he's always been a christian. But the reallyright answer is: what if he is? Is there something wrong with being a muslim in this country? The answer is no. That is not America. Is there something wrong with some 7 year old muslim american kid believing he or she can be president?"

<comment><USER6> I think it more likely that Americans would elect a Muslim than an atheist. We still have a long ways to go in overcoming our prejudices.

</comment></comment></comment></comment></comment><comment><USER7> "While I prefer lower taxes, I can tell you that no entrepreneur or CEO worth a damn in this country gives up or works less because of a change in tax policy."

<comment><USER8> Really? I'm considering moving back to Australia in order to start my company when the time comes.

I moved to the US because it had lower tax rates, but if that gets reversed then the US can say goodbye to my income.

<comment><AUTHOR> you are counting your chickens before they hatch. In this country we tax profit. Which means until your startup starts making you that 250K/yr in profit, you won't be affected one bit by any increases Obama makes. Actually you'll probably benefit during the early stage under Obama.

And its not like Australia has a super low tax rate, you'll still pay 30% in taxes. So ask yourself this, is the extra 5-10% in profit worth it to you to lose x% of your customers who don't want to do any business with a company outside United States?

I see the additional tax rate under Obama as an investment. I lose a little bit off the top, but I'll get more than compensated by my users actually having money to spend.

<comment><USER9> "customers who don't want to do any business with a company outside United States"

Wait. When have you ever not done business with a web services company on the grounds that it was located outside the US? Do you think that kind of thing actually goes on? And that the problem is so endemic it should be cause to stick around, lest you lose all your US-based customers?

It may be so with a brick-and-mortar, or with a business that involves high- cost shipping. But for a traditional web services company -- Freshbooks (Cananda), Netvibes (France), Problogger (Australia) -- I don't think that argument holds any water.

<comment><AUTHOR> Sure if you have some freebie app its not a big deal. But the second you ask your users to pull out a credit card your location becomes a big deal to most people.

<comment><USER9> I get where you're coming from, but in terms of trust I think people check a few things:

1) Is my connection secure and encrypted, 2) Is either of Authorize.net, PayPal, or Google acting as a payment gateway 3) Is the site established, and does it have verifiable feedback from people I trust, 4) Does a Google search show other people talking about the site, What are they saying, 5)Does the site's content converge to norms I've come to know and expect from credible companies I've patronised

And 6) Is it located in the continental United States (if Yes that's icing on the cake... nothing more). I won't speak for _most_ (I don't think you should either) because I have no grounds for basing an assumption of the "most people" magnitude.

But I think there are a lot of measures people check before swiping the credit card on a virtual transaction. The US/non-US piece is one consideration, but that's my point: It's just one item on a list of important credibility checks.

</comment></comment></comment></comment></comment></comment><comment><USER10> I agree with Mark. The promise of hope in America trumps virtually all policy decisions. I didn't even vote for the guy and I'm actually happy he won. I really hope the next four years will be an amazing time to be an American and that President Elect Obama can deliver on his message of change.

</comment><comment><USER11> "our amazing country once again reinvigorated the dream that any child in this country, no matter what circumstances they are born into, can grow up to be anything they want, including President of the United States."

Yeah, tell that to Arnold and all the other first-gen immigrants. :\

<comment><USER12> Governor of California's not a bad consolation prize. 7th largest economy in the world, and all that. :)

</comment></comment><comment><USER13> Every time Obama speaks, an angel has an orgasm. - Daily Show

</comment><comment><USER14> Voting for Obama because he is black essentially defeats the purpose of the civil rights movement. The whole point of the movement was the color of your skin doesn't matter. I voted based on my principles and issues.

It's sad to see so many dissenting opinions downmodded just because the majority disagree. Yes some of them were deserving of it, but others made legitimate points.

</comment><comment><USER15> It's so stupid everyone's concentrating on race... seriously. You're just making the situation worse rather then better. Racism will only be gone once a minority is elected president and no one cares to mention the fact they are a minority.

Also, he's as much white as he is black. Everyone is pretending like the one drop rule from the slavery-era south is still in effect.

Come on people!!!!!!!!!!

<comment><USER16> I don't think race is the only thing people concentrate on. And I do not think that is at all what enabled Obama to become the Democratic front-runner earlier this year.

It is clear that race is still a factor. Obama has no problem discussing race issues openly. I don't either. I think it is healthy and about time we start talking more openly about race issues, it may enable us to make further progress. I feel race issues have stagnated the last 30 years. Its gotten a little better, but crawlingly so relative to what it could be.

</comment></comment><comment><USER17> from the article "In this country you work harder to achieve your dreams and goals." exactly... !! respect.

</comment><comment><USER18> I am bullish on Mark Cuban.

</comment><comment> patrickg-zill Apparently Cuban's reasoning is that with a black President, suddenly inner- city wannabe gangsters will start writing Rails apps.

<comment><USER19> Even if it seems sort of trite and artificial to many people (including myself) having a black President with a name that sounds like "Osama" is a big achievement.

<comment><USER20> I had a long discussion a few days ago with a close friend about racism in America. It's real and does exist, but it really warms my heart to see the nation come together in spite of that to elect their new President.

<comment><USER8> What about the point of view that Obama won partially _because_ of pro-black racism?

Both among blacks and whites, there were people who admitted voting for him _because of his "race"_.

Now, I myself don't believe in this "race" concept that other people seem so obsessed with, but I still find that a disturbing thought -- just as disturbing as the thought that some people were voting against him for his "race".

<comment><USER21> Call it affirmative action. There isn't a problem with so-called "reverse racism" when it is being used to repair centuries of injustice.

<comment><USER19> People of today shouldn't pay for the crimes of people of yesterday (even if it does end up happening a lot). That's why AA/Title9/etc are great in theory, but pretty awful in execution. If only we were all color blind...</comment></comment></comment></comment></comment></comment>


Ask HN: What do investors look for in a technical founder? - <AUTHOR>

<comment><USER2> computer skills bowhunting skills</comment>


How long did it take you to realise what you really wanted to do? - <AUTHOR> https://medium.com/somewhere-in-the-future-of-work/how-long-did-it-take-you-2941bbbfcb75

<comment><USER2> You eventually find out what you really want to do. Then you learn more skills, and you learn more who you are, and you see more possibilities, and then you learn what you _really_ wanted to do. And then you learn _more_...

I'm 53. I'd say that I learned what I really wanted to do only in the last 3 to 5 years. But I may be mistaken; I may not yet know what I _really_ want to do.

It's probably not just one thing for your whole life.</comment>


How I increased my conversion rate 56% on Shopify. Hint: Image Optimization - <AUTHOR> https://medium.com/@j0rd/an-open-letter-to-shopify-a-feature-worth-supporting-7f7334345188?hello=bar <comment><AUTHOR> Some Shopify sites I just tossed through webpagetest.org, all of which are case studies from the homepage or blog.

\---

smartnora.com

7,370.8 KB total in images, target size = 1,387.2 KB - potential savings = 5,983.6 KB

[http://www.webpagetest.org/result/160307_Z2_VMS/1/performanc...](http://www.webpagetest.org/result/160307_Z2_VMS/1/performance_optimization/#compress_images)

\---

muttonheadstore.com

3,739.8 KB total in images, target size = 1,780.8 KB, potential savings = 1,959.0 KB

[http://www.webpagetest.org/result/160307_GE_TYT/1/performanc...](http://www.webpagetest.org/result/160307_GE_TYT/1/performance_optimization/#compress_images)

\---

nutbutternation.com

1,150.6 KB total in images, target size = 555.7 KB - potential savings = 594.9 KB

[http://www.webpagetest.org/result/160307_KQ_VNN/1/performanc...](http://www.webpagetest.org/result/160307_KQ_VNN/1/performance_optimization/#compress_images)

</comment><comment><USER2> It seems like you're comparing current conversion rates vs. past conversion rates.. Did you try AB testing this side by side? It's not necessarily only the effect of image optimisation, could be just organic growth of your site?

<comment><AUTHOR> I'm personally not going to A/B test larger webpage downloads for my customers.

Smaller is better & faster. There's no noticeable difference in image quality.

So my A/B test is 4 months before vs. 4 months after. This is not a small sample size. It's around 500k uniques on each end. 3M+ page views on each end.

I've also broken & analyzed the traffic down by channel, new vs return, and any other way I can to attempt to remove any false positives. From all the data, the large increase in conversion was because of this particular change.

I have been aware of "holiday shopping bias" around nov / dec, but January is normally a very shitty month for conversions. January / Feb our conversion was higher than any previous month before this as well.

This is actually why I've waited to Feb to really solidify the results in my own mind. And that's why there's 4 months of data to back it up. Every day since the change, being better than before.

I don't need to A/B test this one. The savings on my homepage was 4MB. We're not talking small bytes here. This is a major issue with regards to anyone using Shopify.

See if you can guess which month the change happened on this chart: [http://i.imgur.com/S95EX9Q.png](http://i.imgur.com/S95EX9Q.png)

Because I can see it.

<comment><USER3> > I'm personally not going to A/B test larger webpage downloads for my > customers.

That's very sensible. But then you can't state that smaller images alone increased your conversion rate by 56%. Maybe your products are just more Winter-appropriate? If you can't control for confounding factors, you can't make a strong conclusion.

...On the other hand, in a contrived example, one could imagine smaller images could increase conversion rate by 1000% (if it cuts several minutes off the process; a website that takes 5 minutes to load will get no customers).

What I would like to see is an analysis of how much faster the shopping experience is post-compression. Perhaps for some of those edge cases (like your 250+ item shoppers)

<comment><AUTHOR> Agreed, don't take 56% as fully being attributed to smaller page loads.

In two weeks after the change with out any other changes to traffic or anything else, the improvement was 38%.

I've talked about my findings with more caution here: [https://ecommerce.shopify.com/c/ecommerce- discussion/t/shopi...](https://ecommerce.shopify.com/c/ecommerce- discussion/t/shopify-image-quality-optimization-round-2-with- stats-38-improvement-304813)

My worst day after this change, was better than my best day previous to this change. Thousands of visitors.

This trend has continued for 4 months after the change. Hundreds of thousands of visitors.

I'm the only dev on this project and I know what changes day to day.

Can full 56% be attributed? No. I added opt-in monster with 10% & 20% (A/B) discount in Feb which boosted conversions. 10% actually out performs 20%. Go figure.

Can more than 0% be attributed to smaller images. Yes. So I'd say this change helped between 0% and 56%. Either way, it's statistically significant.

4MB savings on homepage going to save you from a shit tonne of bounces and help move more people towards that checkout page.

</comment></comment></comment></comment><comment><AUTHOR> If anyone has any questions, concerns or comments, feel free to ask. I'll be here to answer for next couple hours.</comment>


How to hack football (only works on the middle school level) - <AUTHOR> http://www.youtube.com/watch?v=0UIdI8khMkw&feature=player_embedded <comment><USER2> Analysis here.

[http://www.reddit.com/r/funny/comments/e2ouv/a_middle_school...](http://www.reddit.com/r/funny/comments/e2ouv/a_middle_school_football_team_from_my_home_town/c14tsu4)</comment>


Ask HN: Moved to/worked in a non U.S country? How was the experience? - <AUTHOR> Prompted by yesterday's post
https://news.ycombinator.com/item?id=17302892
Have you moved to : EU, Chile etc? What is the experience like - including visas, culture etc? <comment><USER2> Moved to EU, finally back in democracy. Paying 3x more taxes and healthcare, and I am happy doing so. Because here you got infrastructure and a working state.

<comment><AUTHOR> Where in EU? How is the visa process and job prospects?

<comment><USER2> Germany. As EU citizen coming back from the US Visa was only a problem in the US. Jobs are much harder to get as in the states. Only professional references and academic titles do count. But I'm not looking seriously enough. Enjoying working for myself.</comment></comment></comment>


Waffle Takeout – Waffle.io on your servers - <AUTHOR> http://blog.waffle.io/waffle-takeout-is-ready-for-delivery/ <comment><USER2> Jacob from Waffle here. We package Waffle in a number of different Docker containers (one for each of our services) and then we ship them in a zip file along with an install script. To install, you simply unzip the file and run the install script. It prompts you for some of your environment info and then does all the work to start and link the Docker containers together for you. Hope that helps, feel free to ask any other questions you may have!

</comment><comment><USER3> I'm always curious about how developers chose to package web apps like this for on-premises installation. As a VM image? An OS package? A set of OS packages (e.g. with third-party components in separate packages)? Using Docker? Something else?

<comment><USER4> When I worked at Scalr, we used Chef's Omnibus ([https://github.com/chef/omnibus](https://github.com/chef/omnibus)) to create "full stack" RPM and Deb packages, which basically include all your dependencies all the way down to libc (meaning libc is your only dependency) in a single "fat" package (this does mean you have to keep tabs on security updates to your dependencies; that's a pretty big tradeoff). Chef (obviously) does the same thing for their Chef server.

We'd originally tried shipping the software as a package with dependencies on other OS packages (installed using shell scripts originally, and then using Chef), but this never really worked: every enterprise would have slightly different OS configurations and the install scripts would practically never work.

We did try Docker as a deployment method, but most customers weren't comfortable with it for production deployments (or simply had systems that were too old to run Docker on). Also, orchestration tooling wasn't there yet. Bear in mind that this was a year ago, though.

\--

Locked-down VM images (virtual appliances) are to my knowledge quite common as well (e.g. that's how Github enterprise is distributed). With more and more customers using AWS (and other cloud providers), cloud images are becoming another viable option.

</comment></comment><comment><USER5> Starting at $2k/year for up to 50 developers? No kind of pricing for a small team?

</comment><comment><USER6> I love waffle to organize our Github issues. It is a great service.

</comment><comment><USER7> Great to see! Any chance of Gitlab support soon?

<comment><USER8> This request [1] has been hanging out in their issues since early May 2014 and has garnered 24 thumbs up and 73 +1's.

The most recent comment from a Waffle.io teammember, "We likely won't be headed into the realm of GitLab or BitBucket in the very near future, but those are the two places we would be headed next after continuing to improve our support for GitHub.com and GitHub Enterprise."

[1] [https://github.com/waffleio/waffle.io/issues/926](https://github.com/waffleio/waffle.io/issues/926)

[2] [https://github.com/waffleio/waffle.io/issues/926#issuecommen...](https://github.com/waffleio/waffle.io/issues/926#issuecomment-75122485)

</comment></comment><comment><USER9> this looks great, will try it out.</comment>


How To Answer The Question (What Was Your Last Salary?) - <AUTHOR> http://news.monster.com/a/business/how-to-answer-the-question-what-was-your-last-salary-54284a?WT.mc_n=CRM_US_B2C_LC_TWOM_Full_140711

<comment><USER2> posted in a couple other spots:

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

[https://news.ycombinator.com/item?id=8058247](https://news.ycombinator.com/item?id=8058247)</comment>


Fashion for Geeks: Why bother? - <AUTHOR> http://www.urbanmonarch.com/fashion-for-geeks-why-bother/

<comment><USER2> It's true! When I'm with the ladies I can go on for hours about a random content generator I'm working on for fun, I can forward tons of /. links with explanations about what makes them interesting, I can call with a frequency and average message length just past the line of "creepy," I can be visibly nervous and embarrassingly insecure, and I can show up for teh love having skipped a shower and on 3 hours of sleep. But as long as I throw on a $75 hoodie, some prefaded jeans, and a pair of Pumas, my shit is tight!

<comment><USER3> You must hang out with the wrong girls...my girlfriend would get unconditionally aroused solely due to the moment I said half a sentence about random content generators.

</comment></comment><comment><USER4> Well with proper fashion, the enemy's gate is always down.

I just pay $12/year and subscribe to "Nylon for guys" magazine (<http://guys.nylonmag.com/>) - it really does do all the work involved with "staying current" so you don't have to look like this guy: <http://yogan.meinungsverstaerker.de/fun/80s1337ness.jpg>

Also, I wouldn't consider the last photo of you to be "haute couture": you're just copying Steve Jobs with a little bit of hair gel.

<comment><USER5> I'd love to stay fashionably dressed. As it is though, I just can't afford it. Or, I'd rather spend my money on something else. How much do you spend to buy the current season's clothing? And what's the best way to get it? I'd love to have a website where I input my basic style preferences or rate different fashions of the current season and get output of links to buy in style clothes/outfits I would like in my price range.

<comment><USER4> This is true, it is quite expensive to stay in touch with fashion. However, it's not so hard to find things that look good on the cheap. I typically try and bargain hunt at stores such as H&M, tjmax, and the sale section of large department stores. If something is a season or two old - it's good enough to wear around without anybody chastising you for it. It's really not WHAT you wear, but HOW you wear it.

</comment></comment></comment><comment><USER6> I have a simple solution: get a girlfriend. I now wear nice shirts that apparently compliment my skin tone (who knew?), I wear layers (apparently very sexy) and I now have $300 shoes. I've never owned $300 shoes in my life.

Once you have a girlfriend, dressing fashionably is rather easy and mainly because I'm no longer allowed to choose except between Brown Shirt #1 and #2.

<comment><USER7> Your simple solution has a chicken and egg problem. Or at least according to the article linked to. The whole point of dressing fashionably is to get a girlfriend.

<comment><USER8> It's sort of a bootstrapping process. You build yourself the most basic girlfriend possible, and use her to compile one that's more complete.

</comment></comment></comment><comment><USER9> Potentially the worst article I've seen on HN. It spends several paragraphs stereotyping women, damning them for caring about looks, and then promoting the author's superiority for basically being smarter than them. (He understands the social hierarchy thing, they don't.) Then, without irony, he appeals to Natalie Portman, who is someone that is - wait for it - attractive.

Girls like guys who look nice for the same reason guys like girls who look nice: it's more attractive.

<comment><AUTHOR> It doesn't matter if it's stereotypical, only if it's accurate. I would like to hear an argument against the accuracy, and would love if citations were included.

It's another set of rules to play with, another system to hack. Learn the game and have some fun, that's what I did.

<comment><USER9> When I say something is stereotypical, I imply its inaccurate by being too general. Some women will do this, some won't. More importantly, some people will do this, and some won't. All people are involved in social hierarchies, and make judgments based on them. You're participating in one right now.

</comment></comment></comment><comment><USER10> Hmm, I don't like the stereotype. Most of my friends that are programmers are fairly fashion forward.

I live in Vancouver, so maybe that is different from the valley.

Some of my friends are the Yaletown game developer nerds. This probably describes me. I like my Pumas and Lacoste shoes. When Douglas Coupland described the "Nikumas" in his book jPod, I almost fell over from laughing because he described the situation perfectly. The rest of the attire fits the shoes. Think Kanye West's outfit.

I know the Gastown web developer nerds too. They wear their Skechers and other hipster-nerd shoes. The rest of the attire matches.

</comment><comment><USER11> Fashion != being well dressed. You can buy the most fashionable pant and still looks like a clown because it is too large or too short. But you can dress well without any clue in fashion. Just be careful about the size (that's the point when buying new clothes) and colors. Most people would go from a bad look to a decent one just by resizing their clothes to suit them correctly. And never forget : the white shirt is the best ally of men since forever.

</comment><comment><USER12> The article would be more convincing if the "well dressed" examples were well dressed. Well, and also if it was well written. There has been no era in which a cheap white blazer over an olive drab t-shirt looked good.

Unfortunately, reading fashion magazines doesn't really improve a person's style unless you already look like a fashion model. San Francisco is filled with programmers who wear expensive, trendy gear and they don't look much better than the hacker slobs because it doesn't really suit their body shape or personality. In fact, they look like posers who spent $50 on a too-small t-shirt and $200 on sneakers that look like aerobic trainers from a B-movie about the future.

Simple, clean clothes that suit your body shape are a better bet. Most guys would be doing themselves a favor by donating their wardrobe to goodwill and spending a few hundred dollars buying some fresh basics.

</comment><comment><USER13> Never before on hacker news have more words been said about less.

Launch and get funded. Then no one will care what you're wearing.

<comment><USER14> > no one will care what you're wearing.

This is never true. The impact of dress on perception is well studied and it is large. If you're not dressing well, you are foolishly giving up an easy edge.

A somewhat overlooked subject is coworker dress as a workplace quality issue. A lot of geeks don't notice dress, but most other people are sensitive to the aesthetic presentation of the people they have to spend many hours a day with. Going to work with very well presented people is a job perk, and having to interact with slobs is undesirable. Realize that even if you don't care about dress, other very competent people you may work with will care. Tacky clothing and pasty physiques can be like second hand smoke.

<comment><USER15> >Tacky clothing and pasty physiques can be like second hand smoke.

But without the cancer risk.

<comment><USER16> If you have a pasty physique it means you're not taking enough sun and probably not exercising, and I'd adventure a guess that that makes you a good candidate for cancer.

</comment></comment></comment></comment><comment><USER17> Who says the geeks on HN need fashion help, anyway?

<comment><USER18> I needed fashion help:

<http://ourdoings.com/2008-02-12>

</comment></comment><comment><USER19> I have that t-shirt...</comment>


Show HN: Unhack All the Code - <AUTHOR> https://unhack.ai <comment><USER2> I've been studying program transformations for 7 years. Cosmin has a technique, context rewriting, which makes it easy to build refactorings that were hard to do previously. This tool can move is out of the Stone Age for making mass changes.

<comment><AUTHOR> Thank you for the support! Another article that talks about our underlying language, including context rewriting, is in the works :-)</comment></comment>


Gmail cookie vulnerability exposes user's privacy - <AUTHOR> http://www.news.com/Gmail-cookie-vulnerability-exposes-users-privacy/2100-1002_3-6210353.html?tag=nefd.pop <comment><USER2> Correct me if I'm wrong but I don't think the 2 year cookie policy affects GMail. I remember being prompted for a password every so often even if I tell Google to keep me signed in. I'm guessing the 2 year cookie is for correlating search results. And even if the cookie itself has an expiration 2 years in the future doesn't mean that GMail will accept that session ID.

Can anyone confirm whether or not you can stay logged in to GMail for 2 years using just a cookie?

</comment><comment><USER3> If I was a malicious coder, I'd rather go for Yahoo Mail than Gmail (they have a cookie that lasts for 2 weeks).

Based on my experience working for a spammer (long story I was mislead about the company), Gmail is the ignored red headed step child. The main focus was on Hotmail and Yahoo.

This is probably due to Gmail still not being a leader in web mail, and just having proportionately less click through rates (percentage wise) than Yahoo or Hotmail (Hotmail was the best in both). My guess is that this is either due to google having a better spam filter or smarter people use gmail.</comment>


Leaving Toxic Open Source Communities - <AUTHOR> http://www.modelviewculture.com/pieces/leaving-toxic-open-source-communities <comment><USER2> Sigh, the classic justification for toxic behavior. "Oh, we need to have absolute freedom to verbally abuse anyone who disagrees with us, so that we can have a truly open dialogue."</comment>


Collaborate Online and Offline with Overleaf and Git (beta) - <AUTHOR> https://www.overleaf.com/blog/195-new-collaborate-online-and-offline-with-overleaf-and-git-beta#.VOGxvYaQGrX <comment><USER2> Thanks for posting this - you can find the repo for the git-bridge at [https://github.com/winstonli/writelatex-git- bridge](https://github.com/winstonli/writelatex-git-bridge) \- it was created by a group of Imperial College London CS students who worked with us over the past few months (I'm one of Overleaf's founders).</comment>