Wikipedia: where truth dies online  - <AUTHOR> http://www.spiked-online.com/newsite/article/wikipedia-where-truth-dies-online/14963#.U2Fhb6KZjoo <comment><USER2> On any contentious topic (eg: climate change, criminal cases, religion, politics, economics...) it is a HUGE improvement to not just read the main article but also skim the associated "talk" page to see what points of view are being actively suppressed by whatever cabal currently controls that issue. _If_ you do that, wikipedia's not too bad an information source.

The primary problem is that - like google - wikipedia has been _too_ successful. What can happen now is that when a new issue becomes newsworthy:

(1) one side grabs control of the most relevant wikipedia page and slants it in their direction by the simple expedient of giving their side "the last word" in every argument and being ever-so-slightly more strict about sourcing for claims made by the other side than claims made for theirs.

(2) Lazy journalists skim wikipedia to see what they should think about the issue and write news stories that reflect the slant wikipedia intially had.

(3) Active editors use the articles written in step (2) to reference their own slanted claims and make the article even MORE one-sided.

And so on. I don't really see an answer to this circular dynamic other than perhaps: train journalists to look at the Talk page too?

</comment><comment><USER3> _Wikipedia has ... immense flaws, the greatest one being that nothing it publishes can be trusted._

s/Wikipedia/any publication

Yet another article complaining that articles on subjective topics are vulnerable to subjectivity. These articles are a dime a dozen, almost never look outside their specific little bubble-of-complaint, and have been going on for almost all of WP's 13-year history. This particular article is at odds with itself, because it complains that the moderators are censorious and overbearing, and also that WP can't police itself. So... moderators should take a stronger hand? Or a weaker one?

Wikipedia is less worthless than this blinkered, agenda-pushing article.

</comment><comment><USER4> Yawn. Nothing much new in this article. There are articles that cannot be trusted on Wikipedia. So what? It's just like everywhere else. Even History books are full of inaccuracies or present facts according to the political agenda of the current majority at power. This article missing the point that there's tons of articles on Wikipedia which are not subject to controversy - articles on science, math, technology - and those are usually written with a pretty good standard.

</comment><comment><USER5> Back in the days I was actually doing some campaigns for companies on Wikipedia. Those would be based on creating high quality content and adding link to our customer in exchange as a source (we were placing nice article on customers page researched by knowledgeable folks from uni). We were doing a lot of work creating pages, adding really nice content. Some moderators knew about our actions but they were cool about it as they liked content we have been creating.

Because of how many edits we were making (at least 20 a day) we have witnessed politics and lobbying on Wikipedia. The worst are unfortunately subjects that could by any extent critique US, UK, French or Russian governments, history, monopoly or news.

We have seen highest placed people with absolute power just removing any content without reason and blocking further changes.

One day I got in to the conversation with one of the "untouchable" \- admin with small amount of edits etc but for some reason high in ranks. I got in to argument as he removed 500+ words improvement of pretty dead article about some delicate subject (heavy industry related) - this included removal of some links to large companies (they were unrelated though and we placed in exchange links to government institutions and few scholar research). Argument was something like "I would like you to let us know the reason for removing our edits." after no answer for 7 days I sent "If we wont get answer within 48 hours we will be forced tp take this case up as reverse seem as selfpromotion".

Result - around 2 thousands quality edits removed (we had probably links to our related article customers on only ~200 edits). Complete removal of our accounts, blacklisting WHOLE IP ranges from our office and probably hundreds of other regular users. That is how Wikipedia is neutral...

<comment><USER6> From what you describe, WP was totally correct to ban your organization. Your business model was to inject commercial links into articles. The fact that you think you provided some value in exchange is pretty much irrelevant.

<comment><USER5> I think you misread it - I said we have putted links in Reference fields (below article) to articles that were placed on our customers websites. The articles itself were quality, well researched and with images etc. Then we would do quality edit and add value to Wikipedia. If this is not quality editing then Wikipedia should ban hundreds of most active editors right away as this is only way full time editors can make money from working for Wikipedia...

<comment><USER6> Exactly. Editing WP for money is a conflict of interest unless you're being paid by Wikipedia. Hellbanning is the most appropriate action.

</comment></comment></comment></comment><comment><USER7> The fact that so many problems with Wikipedia articles have been found really undermines the entire thesis of this terrible article.

</comment><comment><USER8> I go to Wiki for biology, chemistry, math, and famous tech people. History, politics and medicine / health issues are all just repackaged PR of a winning country, political correctness and big pharma respectively.

</comment><comment><USER9> This is a climate change denialist upset that Wikipedia has a bias to verifiable reality.

<comment><USER2> Climate change is just one of the issues on which overactive editors of Wikipedia help _create_ "verifiable reality" rather than merely reflect it. Which _might_ be a bit of a problem. (The Wikipedia page for "climategate" is perhaps the best example of just HOW silly-political it can get.)</comment></comment>


The Longform Guide to the Brain - <AUTHOR> https://longform.org/posts/the-longform-guide-to-the-brain <comment><USER2> Not a guide. An index of brain-related articles.</comment>


Rider: jetbrain C# IDE - <AUTHOR> https://www.jetbrains.com/rider/ <comment><USER2> After having used Resharper for years and finally gotten rid of it last year because it was making my IDE run at 1/4 speed (i7 2.8ghz, 16GB ram), I sincerely hope their own full IDE experience is more performant.

<comment><USER3> I use Resharper (R#) on a less powerful work machine (i5 8GB) and it works OK, there are times where VS (2012) seems to be horribly slow - and I don't know if that's caused by R# or not. R# adds too much power to VS for me to give it up.

Having said that, I use IntelliJ IDEA both at work and home - and it generally feels faster and more responsive than VS/R#. Rider is based on the IDEA platform.

One thing to note is that VS is kind of a 1-stop shop for a lot of "things" \- writing code, database work (especially MSSQL), diagrams, GUI design for both HTML and actual desktop apps, etc. Things you use a mouse for, not a keyboard.

IntelliJ has some of this with plugins, but it's focus is writing code and helping you as a developer to write/refactor/work with that code. I often find people who really think VS is the best IDE to use these other features, whereas I do mainly code and prefer IntelliJ (or even Atom) over VS.</comment></comment>


Negative latency - <AUTHOR> https://meanderful.blogspot.com/2018/06/negative-latency.html <comment><USER2> The numbers seem completely improbable. No one would trade on 15-second-old market data: "And perhaps this means 15,625,200 us of latency as measured at t MD 3 at the telco gear interface to the building's fibre (generously)."

Secondly, you cannot reason about network latency based solely on bandwidth. This matter is more complicated and depends among other things on the type of the medium and signal modulation techniques. One can have low-bandwidth ultra low-latency link.

Also, most players in the game use kernel bypass so processing packets is a matter of nano-, not microseconds.

Otherwise, a very interesting read.

<comment><USER3> Yep, that was a rather bad typo. 15,825 us. No excuse, except I shouldn't post in the wee hours of the morning ;-) I'm not really arguing about measured latency but you have to apply a best-case cost as you cannot measure certain parts of hidden infrastructure than you can't touch. You do know 1000 bits on a 1Mbps line will take "at least" 1000 microseconds.

Even your kernel bypass driver on a SolarFlare still takes at least 40us on 4000 bits from a 100Mbps KRX UDP feed in those older days, as that is simply the best case time on the wire.

True on nanoseconds being the common measure today.</comment></comment>


Show HN: My book on building SaaS/web app with Go - <AUTHOR> https://buildsaasappingo.com/ <comment><AUTHOR> Hello there,

It took me 11 months to write the book and source code that goes with it. Overall it was way tougher than what I thought it would be ;).

I've built two SaaS product with the same stack and technique since 2015, LeadFuze and Roadmap.

Hopefully, it helps some developers get started with Go for their side project.</comment>


Why Didn't the US Shoot Down That North Korean Missile? - <AUTHOR> http://www.defenseone.com/technology/2017/08/why-didnt-us-shoot-down-north-korean-missile/140620/?oref=d-river <comment><USER2> Likely because they have monitored ever North Korean missile launch and they know these are ballistic missiles. That means they follow a parabolic trajectory, and that means that before they go very far, a reasonably accurate landing zone can be calculated.

The USA and Japan (and China and Russia) likely knew within seconds that it would land in the sea and they even knew how high it would fly over a low population area in Japan.

It's like a car full of young punks stopped at a red light beside a police cruiser and when the light goes green they burn rubber and peel away from the intersection first, but never exceed the speed limit. Very provocative, but the police have real crime to deal with, so they ignore it.

<comment><USER3> >It's like a car full of young punks stopped at a red light beside a police cruiser and when the light goes green they burn rubber and peel away from the intersection first, but never exceed the speed limit. Very provocative, but the police have real crime to deal with, so they ignore it.

The punks can be charged with dangerous driving or reckless endangerment.

Testing your ballistic missiles over populated areas is not just "provocative", it's reckless. One mistake and people die. It's not so much that it's not a "real crime", it's that [shooting the missile down / accelerating in front of the car and doing a handbrake turn into its path] doesn't make anyone safer. You deal with it afterwards.

</comment></comment><comment><USER4> Without reading the article I'll offer it's because it's more important to get as much data as you can from them while they're in flight and the US military did shoot one down they launched recently to test the tech they have.

<comment><USER5> One of the problems with the Patriot missiles used in Iraq was that they often followed the target scud missile all the way down to the ground before making contact, thereby causing more civilian destruction than the scud alone, especially when the scud was also a dud.

Damaging residential communities in the japanese countryside in order to intercept unarmed missiles from NK would not be smart politics.

</comment></comment><comment><USER6> Very likely because in this case what you gain by succeeding is a lot less than what you lose if you don't.</comment>


Twitter Crushes RSS with Personality - <AUTHOR> http://static.matthewlmcclure.com/s/2012/10/22/twitter-crushes-rss-with-personality.html <comment><USER2> I think the real reason why Twitter crushes RSS is that RSS is an open standard that is hard to monetize. Twitter is increasingly a closed ecosystem that only Twitter can make money on, which give Twitter plenty of motivation to throw it's resources into a closed network and not an open standard.

</comment><comment><USER3> Who says RSS is fading? Are twitter posts of years ago accessible via a simple link as are links obtained via RSS? These are honest questions and not snark.

<comment><USER2> Twitter sort of hides the RSS links, and last time I checked did not provide any documentation on how to find them. But they are there and you can access Twitter feeds via RSS once you figure out the URL pattern.

<comment><USER4> Twitter used to have a link on every public/open profile to an RSS feed of tweets. They removed the link about a year or two back. Worse yet, about a week or two ago, the feeds went dead. This used to be the feed for DEVOPS_BORAT:

<https://twitter.com/statuses/user_timeline/167499429.rss>

Those links have since gone dark. An alternative format still (sorta) works:

[https://api.twitter.com/1/statuses/user_timeline.rss?screen_...](https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=DEVOPS_BORAT)

Per twitter devs, though, all RSS feeds are going away some time very soon. They want you reading all your tweets under their control, not in your feed reader.

</comment></comment></comment><comment><USER5> i don't use rss to follow people, i use it to follow output from particular publications and blogs i'm interested in. i don't think i'd gain any usefulness by displaying an avatar pic, i'm just trying to stay up to date on the happenings in the various affinity networks i'm part of or peripherally interested in.

<comment><USER6> Agreed, RSS is for actual information consumption while Twitter is for '@seeing and #beingseen #selfpromotion please RT! #lame @rss_will_always_be_better_for_objective_content'.

</comment></comment><comment><USER6> lol, so using the term c!rclejerk automatically makes my comment "dead"? Sheesh.</comment>


Taking DevOps To The Next Level - <AUTHOR> http://www.aviransplace.com/2013/10/28/dev-centric-culture-breaking-down-the-walls/

<comment><USER2> This is an interesting read, and there are serious problems Aviran is trying to address. I would be a bit concerned about 'tail wagging the dog' or also known as 'inmates running the asylum' with such a developer-centric approach.

"Architecture should be done by the developers themselves while the architect should become a consultant and a supervisor."

Engineers can care very deeply about components of the system which the customer is blissfully and entirely unaware. In my experience, Engineers also _really love_ to refactor, which can just as often be reshuffling deck chairs versus truly reducing technical debt.

An architect's job is to fully understand the working system so they can figure out the right places to build or add functionality efficiently, effectively, without creating a monster. An architect needs to be able to say (and end the discussion with) 'No we're not going to do it that way' when an Engineer wants to re-write the lowest level communication protocol between two system components resulting in 6MM of development and QA and zero impact to the user-level features or performance of the system.

"When a product manager hands over a spec to a developer, the developers usually don't really read the whole spec..."

I've had this happen to me (exacerbated by working remote / cross-country) and it is an absolute killer. A good spec is worth its weight in gold for aligning a team toward a common vision. I think the real problem is the spec needs to be a living document, and be a continual influence/guide during technical discussions. If you are constantly referring to it and refining points of ambiguity, the team is more likely to invest the time not just to skim through it but really internalize it.

So I think the answer is not 'don't write the spec' or 'have the engineers co- author it' but rather make sure it's relevant and useful to guide all your future discussions about functionality. It should be possible to build consensus and common vision with a spec rather than just dictate requirements.

<comment><AUTHOR> I think developers don't really need specs. If developers and PM sit in the same room they can do an iterative work and just implement the app without a spec. It saves time and you get into the details together with the PM. However if you are working in a distributed environment, then I totally agree with you.</comment></comment>


Egypt Cancels DST - <AUTHOR> http://www.sis.gov.eg/En/Templates/Articles/tmpArticleNews.aspx?ArtID=105572#.V3yBLpPyvMU <comment><USER2> Can we cancel the heat that comes with summer too?</comment>


Show HN: Tool for choose best pizza from food delivery services - <AUTHOR> https://chrome.google.com/webstore/detail/pizzafinder/cplmmhjnpgajpohbjenpjgakhikembnp?ref=hn <comment><AUTHOR> We are waiting for your feedback</comment>


The Australian Computer Society's response to Matt Barrie - <AUTHOR> http://www.acs.org.au/news-and-media/news-and-media-releases/2013/acs-media-statement

<comment><USER2> TL;DR: "It wasn't us, it was an organisation closely affiliated with us with almost the same name who we have absolutely nothing to do with".

Convincing.

<comment><USER3> Spot on. Also no mention about why they get a monopoly on accrediting skilled visa applications for computer scientists.

Two comments I got overnight:

"The ACS is run by a whole bunch of accountants and lawyers who can't believe their luck that people associate them with the technology industry" "You're right that the ACS has to go. Back in 2001 I contacted the ACS to discuss some policy things and was horrified to discover the "experts" I was talking to were nothing more than accountants. Later they elected a lawyer as president, and then a recruiter, prompting me to publicly condemn the ACS as a fake during the period 2004 – 2006. The ACS is actually an anti-professional organisation. Their agenda is not to promote computer science or engineering expertise, but rather to allow pretenders to hide in the generic vagueness of "ICT Professional." They actually work to devalue real expertise, since engineers and computer scientists pose a threat to accountants, MBAs and lawyers who want to claim membership of the technology professsions. I think the solution has to be a formal inquiry into regulation of the IT professions, with a view to government stepping in and, as you put it, disbanding the ACS. At the moment, the ACS has insinuated itself too strongly into formal regulation. Simply starting a rival organisation for software engineers, say, would not work. Government has to dissolve existing ACS influence and leave the way open for new specialist organisations."

</comment></comment><comment><AUTHOR> Here's the original article for context: [http://www.linkedin.com/today/post/article/20130131000939-92...](http://www.linkedin.com/today/post/article/20130131000939-921366-the- australian-computer-society-should-be-disbanded)

HN comments here: <http://news.ycombinator.com/item?id=5142872>

</comment><comment><USER3> "We have nothing to do with this group"

Just take a look at who the board is lol: [http://www.acsfoundation.com.au/static_aboutthefoundation.cf...](http://www.acsfoundation.com.au/static_aboutthefoundation.cfm)

<comment><USER3> I wonder how many board members of the ACS and ACS foundation actually have computer science degrees. Would their qualification pass "accreditation" by the ACS or do somehow the lawyers and accountants gain "life experience" sufficient to be an "ICT professional" which makes them qualified to run the "peak body" for computer scientists?</comment></comment>


Lecture Me. Really - <AUTHOR> http://www.nytimes.com/2015/10/18/opinion/sunday/lecture-me-really.html <comment> r-w This would work well if all lessons and lectures were so carefully thought out. Unfortunately, a lot of teachers (I can't speak of college professors from a place of experience) simply rephrase textbook concepts, couching them in knowledgeable-sounding language, and supplement them with diagrams ripped from Google Images (and sometimes even YouTube videos only tangentially related to the lesson, in an effort to retain students' attention). From what I've gleaned by asking teachers critical questions, often they themselves do not understand the concepts they teach. In other cases, the teacher ends up doing the opposite, digesting and bulletizing the notes for the students and thereby severely curtailing the benefit of handwritten note-taking and stopping the critical thinking process before it starts.

In my opinion, the Socratic method wins out in this noisy environment of ideal teaching setups that are not so ideal in practice: when students are given a common goal, a resource for information, and guidance and encouragement, they not only think critically about the material, but also unwittingly develop an intuitive memory thereof. I also believe that having the teacher interface directly with students ensures that they do more than just the bare minimum—that they are enthused about and absorb the subject matter at hand.</comment>


Show HN: Ensichat – Decentralized instant messenger for Android - <AUTHOR> https://github.com/Nutomic/ensichat

<comment><USER2> I have to say a few months ago there were too many of such projects to get me excited any more. I don't mean to criticise just to state why I can't say much about it. Why not work with some of the other projects with decentralized chat?

<comment><AUTHOR> There are a few similar projects, but they all have some differences (afaik):

Firechat [1]: closed source, only group chats, no crypto

Bluechat [2]: only group chats

Pinwheel Messenger [3]: only messages to direct neighbors (no routing)

In contrast, Ensichat is for 1 on 1 chats, uses mesh routing and signs+encrypts messages.

Are there any other, similar projects?

[1] [http://firech.at/](http://firech.at/)

[2] [https://github.com/AlexKang/blue-chat](https://github.com/AlexKang/blue- chat)

[3] [https://github.com/n8fr8/gilgamesh](https://github.com/n8fr8/gilgamesh)

<comment><USER3> Please don't forget the Serval Project ([http://www.servalproject.org/](http://www.servalproject.org/)) that meshes over Wifi and does end-to-end encrypted voice, text and data transfers, has some serious backing (ie not a single developer on their free time), and is open source.

I think I like Wifi more because it allows true meshing on long distances, and the Serval project uses simple phones with the application as routers.

<comment><USER2> What I never really get is why meshing protocols not use any connection available. SMS, GSM, 3/4G, Wifi, Bluetooth, QRCode+Cam could also be used to sync chat histories to some degree. Being flexible about the path should have a huge impact on the resilience of a mesh network. Also using the option to 3/4G helps to overcome the beginning when few people use it.

</comment></comment></comment></comment><comment><USER4> Bluetooth has a range of less than 100 meters, I don't really understand the use case for this.

<comment><USER5> Schools. Communication in a subway. Communication in a car. Encrypted conversation between two people in a public place. Etc.

Personally, I find this project really interesting.

<comment><AUTHOR> Also, events like concerts, festivals, conventions, demonstrations. Especially when the mobile network is overloaded.

Regarding range: Messages are forwarded by nodes, so with enough nodes, much more than 100 meters can be covered. And the upcoming LTE Direct [1] will have a range of ~500 meters.

[1] [https://www.qualcomm.com/documents/lte-direct-trial-white- pa...](https://www.qualcomm.com/documents/lte-direct-trial-white-paper)

<comment><USER4> Ooh, it did not say that anywhere. That's great, can't wait to give it a try.

Do I get notified when my device has successfully forwarded something through a passer-by? That would motivate running it a lot and might be a nice viral effect.

</comment></comment></comment></comment><comment><USER6> Extending chat with audio would be great, smth. like push to talk.

<comment><AUTHOR> I'm not sure if latency would be good enough for real time voice chat, but it would certainly be cool!</comment></comment>


Build a Street Fighter Demo with CSS Animations and JavaScript - <AUTHOR> http://davidwalsh.name/street-fighter

<comment><USER2> This would make the best homepage header or even a epic Google Doodle</comment>


Just got Techcrunch'd - ReviewGist.com - <AUTHOR> http://www.techcrunch.com/2008/04/24/reviewgistcom-collates-and-snips-reviews/ We just rolled out a big update and got techcrunched.<p>Do check out ReviewGist.com and I will be very eager for some feedback. <comment><AUTHOR> Would like to add Guy's chat with Mike at <http://blog.guykawasaki.com/2006/11/how_to_get_in_t.html> was spot on in approaching TC.

Mike spells it out in the first two minutes.

</comment><comment><USER2> Suggest: hide the names of your developers. You'd hate for Arrington to find your site too slow or unreliable a few months from now.

<comment><AUTHOR> Could you please care to elaborate ? Not very sure what that means.

<comment><USER3> Arrington posted about one of the Twitter developers leaving, directing negative comments at the developer personally.

</comment></comment></comment><comment><USER3> Sounds very cool, actually; nice idea.</comment>


Ask HN: Marriage - <AUTHOR> From reading the biographies of famous entrepreneurs (Gates, Ellison, Jobs, Woz, Clark) it seems like:
() those who marry in young 20s end up with divorce () the successful marriage ends up one in the late 30s or early 40s
Can HN shed light on this? Do most entrepreneurs end up with this problem, or are these just especially high profile founders, and as a result, they needed balls of steel to bring the revolutions they did (thus probably resulting in slightly intolerable personalties).
Thanks!
[Curious about this myself via the whole: marriage or startup first question; marriage first results in the question of -- crap, I have responsibilities; startup first results in the issue of -- crap, gold diggers] <comment><USER3> _startup first results in the issue of -- crap, gold diggers_

This statement is funny. You seem to think you will make money of your first startup :)

For most people entering the startup world today... find a girl with a comfy couch that you can sleep on when you're broke.

In all seriousness, you need to assess where you really think you want to end up.

I got married fairly young. Started a couple of companies and have participated in many more. My wife is (mostly) understanding, and more importantly intelligent and a good reality check for most of my schemes and ideas. I couldn't imaging getting through some of the situations I've been in without having someone who is knowledgeable and unbiased to discuss these things with.

Figure out what you want to be when you grow up, and screen for a person who fits those criteria.

<comment><USER4> ... or just fall in love.

(tip: you can't screen for it)

<comment><USER5> Exactly. You can't write a business plan for love. It happens, or it doesn't.

<comment><USER6> you can't really write a business plan for a startup, either. ;-)

<comment><USER7> I'm wanting to make some lewd joke about iterating rapidly and keeping a keen eye on your key metrics, but I've been told it's not the done thing around here.

If I tried really hard, I'm sure I could work out an exit/IPO into it too.

</comment></comment></comment></comment></comment><comment><USER8> If you think of marriage as duty, responsibility, time commitment and compromise then it probably isn't compatible with doing a startup.

But if you and your spouse love each other for being motivated, self- actualized, driven, and passionate, then a startup and marriage can be wonderfully complimentary.

I actually really liked the movie Revolutionary Road for this reason -- it showed what happens when a guy who should be doing a startup ends up taking a safe job because he thinks it's what his marriage demands of him. In reality his wife was attracted to him because of his passion and his vision and she only came to loathe the soft, mushy, 9 to 5er that he became. Not a perfect parallel with the startup world but a great exploration of what it means to be "a man" outside of the narrow confines of man as simple uninspired breadwinner or corporate yes-man.

Bottom line: If your relationship thrives on the creative life-energy of passion, work and drive, then go for it. If not, why would you want to marry such a person?

<comment><USER9> > I actually really liked the movie Revolutionary Road for this reason

This was one of my least favorite movies of all time until I read your take on it. Didn't think of comparing it to the startup life.

</comment></comment><comment><USER10> My plan was to start a startup at 22 or 23 and cash out at 30 and then find that perfect woman and marry her then and not have to work much because I made my money and blah blah blah.

Guess what, I found the perfect girl a year before I started the startup life and she totally supports it. I'm not sure if I could have done what I do without leaning on her and vice versa.

It is about the right person, not the right time or order. You can't plan when or how you are going to meet the right person.

</comment><comment><USER11> 50% of all US marriages end in divorce. I would say it's partly the poor judgment of youth; mine wasn't so good. Maybe it has always been true, but now it is easier to get out. Romance is a pretty poor basis for a marriage. With mutual respect comes love and a more lasting relationship. Consider all the other qualities needed for success.

Starting companies is a huge commitment and raising children is an unbelievable stress load. The combination is a marriage killer.

With all that said, a good mate is a good thing to have.

<comment><USER12> _Romance is a pretty poor basis for a marriage._

This is such a true statement, yet everything you see on TV, movies, the web, etc. ignores it.

Marriage is a lot of work. Fun work and worthwhile, but sometimes the person you love, well, you just don't like that much right now. You have to work through problems. You just can't ignore them and hope they go away. I wouldn't trade it for anything, and a good partner can change your universe. But it is nothing like mass media has prepared you for.

<comment><USER13> I would never tell my wife this, but I think it's important for other people to hear. I've never actually been "infatuated" with my wife. The only people I've actually been that sort of "in love" with were utterly unmarriable (and for that matter utterly un-relationshipable). That part of my brain really seems to like the cute, crazy chick, but the problem with the cute, crazy chick is that she's actually crazy. "Quirky" is cool and all, but the crazy that comes with it, not so much.

No, all I have with my wife is love, a deep agreement on many of the important issues (including how money should be spent), an agreement with how many children we should have (broadly) and when and broad agreement on how to raise them, the ability to be friends with each other and work through arguments, and other such things. And a commitment. Love is primarily a _choice_ , not a feeling.

If there's a part of you rebelling and saying that sounds cold and unfeeling, kill that part. That's propaganda, bad social programming, and it will lead to exactly the sort of pain and failure you'd expect when you _shut off your brain for the one of the most important decisions of your life_.

It's not that feeling don't enter into it at all. I've got and had all kinds of other feelings. (You can't tell because this is a text message and it's too easy to read it as emotion-free.) I'm not saying that feelings or emotions are bad; I'm saying that this one particular feeling is treacherous beyond belief. If you are lucky enough to be infatuated with someone whom you can have a relationship with, more power to you, but consider it a bonus, not a prerequisite.

(I also think that if you do know what you are doing, some such things can be decided surprisingly quickly. Some "love at first sight" stuff does work out because it doesn't necessarily take two years to figure out whether you've got this sort of deep compatibility. Sometimes two days is enough. I don't _recommend_ that approach, but it can work.)

</comment></comment></comment><comment><USER14> I don't get why everyone pushes themselves so hard in a startup. I'm in a fairly profitable startup right now (my first one, never had a job), and I still have more time for my gf than she does for me.

If you have a good idea, solid team, you can execute on great ideas with 40-60 hrs a week. If you're spending more, you're not managing your resources properly.

I really appreciate my gf, she helps me relax and take my mind off of work, so that when I am working, I can be twice as productive.

<comment><USER7> I think the part that wreaks havoc with relationships is not so much the amount of free time but the timing of it.

For example, if you start off working on your start-up on the side to check your assumptions, that'll suck up a lot of your common free time.

Then, if you work full time on your start-up, you might find that a lot of your essential networking and meetings happen outside of normal office hours. So if your girlfriend is working office hours you might find that you've got a lot of flexibility, just not when she does. So then you find yourself busy when she's free and free when she's busy. Not a recipe for success.

</comment></comment><comment><USER15> If you're in the USA, and you're male, don't do it. In the US, she can leave you at any time and by default get the kids, house, child support, and alimony. For a variety of reasons, the deck is obscenely stacked against you.

Regarding the kids, you have no idea how much you'll love your kids when you have them. But if she decides to go, she won't care one bit about that.

And I know what you're thinking. You're thinking, "Ah, but you don't know _her_. _She's_ different. She'd never do that." I'll tell you what: people change -- in unexpected ways. Especially after the kids come.

Do some research. Google for "dads", "divorce", "custody", etc.

</comment><comment><USER16> Well thanks for the laugh, I needed that today.

Folks, finding the person you want to spend the rest of your life with - <USER2> know, the person that is going to stick around to wipe your... okay I'll say drool... when you are 80 and have Alzheimers - that is a much more unpredictable proposition than what you chose to do with your professional life. If you are trying to time the former to the latter, you are taking a big risk that the right person won't be around when you decide you are ready for them.

Date. If you are still dating after 1-2 years and like it, move in, or else break up and try again. If you are still living together and like it after 3 years get hitched, or break up and try again. By all means do not be hasty - but please do not overplan this.

</comment><comment><USER17> Don't marry if you are a guy. At present, marriage is a contract with no upside for you. You gain nothing from marriage that you can't get from a committed non-marital relationship, and stand to lose a lot.

<comment><USER18> Marriage is a way of saying "My intention is to spend the rest of my life with you as my partner." That means something to your partner. If you're _not_ willing to say that, then that means something, too.

<comment><USER19> That's an interesting perspective. What you're saying is that marriage is a mode of communication for that one sentiment. Are there other modes of communicating the same sentiment? (an epic poem, breaking into heartfelt song, getting tattoos,...) Are they all equivalent? Does choosing to not express it by marriage necessarily imply that one is not willing to express it at all?

<comment><USER18> It doesn't just communicate it to your partner, but to society. Getting married is a ritualized promise that is done before one's community of family and friends. I think saying the vows to your partner, in front of your family and friends, is markedly different than, say, writing a poem and getting tattoos.

I suppose marriage is what you make of it. I consider being married to be a different state than not being married. I don't see any state change happening from writing a poem. But there is one with getting tattoos.

Whether or not you get married in the eyes of the state or a church I don't think is important. But I do think that promise is important, and it is further weighted if done publicly.

<comment><USER19> I can dig that. I've been through the process myself. In the beginning, my thoughts on the matter were perfectly in line with yours.

Now that I'm on the other side, I've seen that neither the church, nor the state, nor the social network of community witnesses (nor the legal commitment of having adopted her two sons for that matter) could stand in the way of her caprice-driven dalliances.

And, living in a "No Fault Divorce" state meant that her violation of the terms of the marriage provided me no benefit or protection when it came time to kick her to the curb out of self-preservation.

Society, with all its witnessing, was nowhere to be found. Everybody wants to come to the wedding. Nobody wants to come to the divorce.

Next time I'll opt for the tattoo. ;-)

</comment></comment></comment></comment></comment><comment><USER20> Attracting gold diggers is a problem of success.

More likely, you should be more concerned that doing your startup first and neglecting relationships means you will burn through your younger years (and younger looks) and won't be able to leverage them when it comes to finding a mate. Then, if your startup fails... oops, no leverage at all.

<comment> barry-cotter Hey, if he wants leverage he could go live and work abroad for a while where a middle class US lifestyle is livin' it up. Also men's pulling power is a lot less dependent on looks than womens'.

</comment></comment><comment><USER21> Lots of good comments here, many of them all true at the same time.

A marriage is a such a big commitment (10 times bigger if there are kids), that if there is something in your life more important than your marriage, it (probably) won't last.

Some people seem to make this kind of thing work, but I think it's quite rare.

My philosophy is that companies come and go (especially startups), but a loving family will last you a lifetime, and have a much bigger impact on your happiness and wellbeing than success and work.

</comment><comment><USER22> From talking to a lot of married couples it seems as if marriage takes a lot of work and a lot of self-sacrifice. Perhaps the maturity of age has something to do with the successful marriages being those that where entered into later.

<comment><USER23> _Relationships_ take a lot of work and a lot of self-sacrifice, regardless of whether you are married or not, I'd say.

<comment><USER22> I agree with that. I think it's a continuum. Most other relationships don't have the expectation that he should be life-long, day in and day out things. That added constraint ups the anty on the difficulty a bit I think.

</comment></comment></comment><comment><USER24> I think it has to do with the work load. When you are young, you pretty much focus 100% on your business and neglect your relationships...so you work 60-80 hours a week trying to get it off the ground and make something of yourself.

In your 30s/40s, you are already more or less successful and can have a lot more free time, so you can switch to the basic 9 to 5. And have time for family and kids.

As far as gold diggers etc, just stop showing off your wealth and you'll be fine. Even if you saw Steve Jobs or Bill Gates on the street, chances are you'd never think it was them. But put them in a Ferrari and you'll probably connect the dots. Worst case scenario, you can go James Bond on this issue. Have your mansion and the Ferrari in one town. And a rented apartment and a Honda in the next one.

<comment><USER25> > Even if you saw Steve Jobs or Bill Gates on the street, chances are you'd > never think it was them.

I saw Eric Schmidt on University Ave in Palo Alto last year, and I didn't need a Ferrari to believe it. He was actually driving a Prius.

<comment><USER24> How do you know it was him and not just someone who looked like him? Thats what I mean, if you more or less appear average, most people won't link you to the "celebrity".

</comment></comment></comment><comment><USER26> When you look at the entire human population, you will see very different statistics for marriage and divorce. Now many people who marry young will get divorced (at least in the United States), but then so will many who wait until later in life to marry. Your sample there is too small to draw any meaningful conclusions.

As marriage relates to a startup or any entrepreneurship, the fact is that you only have so many hours in a day. Most spouses like their mate enough to want to spend some nontrivial amount of time with them. When this time commitment cannot be fulfilled due to wanting to the entrepreneur working insane hours in the basement or whatever else, it will put strain on that relationship. In short, having good personal relationships requires a major time commitment. Any startup or other entrepreneurial project also requires a significant time commitment. Depending on how these are managed or not, it can lead to a successful startup and failed relationship or vice versa. If you take greater care, then you can make both work but that won't be easy. After all, nothing worthwhile is particularly easy.

</comment><comment><USER27> Don't marry.

<http://curi.us/blog/post/1168-monogamy>

<comment><USER28> I'm not sure why this is being downvoted, but I think it's a fascinating read. This is particularly powerful, I think:

 _We shouldn't be scared of trying things that aren't best, and if something is genuinely good, it shouldn't fear criticism and rivals. If it's good, it will beat those rivals._

There's something so true in that. There's nothing weaker than a guy that gets furiously jealous if his wife/girlfriend talks to another guy. It's the confident ones that know they are the best that aren't afraid of competition.

Thank you for posting that. A very good read

Edit: on second thought, perhaps it's just a _little_ bit off topic (it talks about marriage, but not with respect to startups). Perhaps it would be better as it's own submission.

<comment><USER29> > There's nothing weaker than a guy that gets furiously jealous if his > wife/girlfriend talks to another guy. It's the confident ones that know they > are the best that aren't afraid of competition.

There's nothing weaker than a startup founder who gets furiously jealous if his employee aids and abets another company. It's the confident ones that know they're the best that aren't afraid of competition. No reason to get litigious, a little competition is all.

Jealousy is a basic human emotion of paramount importance. Loyalty is a cornerstone of society. I value deviation from the norm as much as the next free spirit, but deviation from this basic principle I will not allow myself ever. There is nothing insecure or weak about the territorial insticts humans associates with things of value. It may have a perfectly sound evolutionary explanation, it has a perfectly sound religious explanation, no matter how you split it, it's there. I don't buy that it's cultural, except may be some manifestations of it. There must exist a core which transcends culture. Perhaps protection of offspring can form one tenet of such core, but I'm no expert and this is not a proof.

Nonetheless, let me give you an example of how jealousy is simply a construct which one can use to describe a particular response to a given stimulus. Let's say one is walking down the street and notices a pile of trash. One, not prodded or otherwise influenced decides to do the "right thing" and remove the trash. The prospect is not pleasant, but one proceeds out of some motivation that is not relevant. Then let's say someone swoops by and picks up the trash and hurries it away. The first individual may very well be relieved of no longer having to deal with the trash, and feel grateful for another's "brazen" act. Let's replace trash with gold. Sure, some people may say: "meh, it's just a pile of gold, let 'em have it!". Some might get very upset. See, here we have jealousy measure a degree to which a given individual can raise their defenses. It's a protection mechanism more than an act of insecurity. Just as carrying a gun to a gun fight is a protection measure. If you chose to bring a knife "cuz you're confident", you'd get a few in the dome and that'd be the end of it. Just as any old general strategy or planning. Granted, one can still lose even with a bazooka, and some can win with a knife, but one had better be prepared regardless.

So back to relationships. If one partner decides that they're liable to "chat someone up and accidentally have sex" they should divorce/separate and carry on. Unless their significant other has agreed that it's normal and is liable to do the same. Those relationships work, they're fine, but they're a contract of sorts. Let's not conflate the desire to keep something special, with the inability to let people "talk to others". If we define "talking to others" as being a precursor to a steamy side life, then we're talking of different things. No one owes anyone anything, unless one has a previous arrangement which forges a contract. However, when we enter a mutual contract with another party, a modicum of self worth is good to keep honest to oneself, and the loved one. Of course people make mistakes, and if they so choose, they can separate and pick a different life. But back stabbing is one of the most weak and worthless acts of human nature. There are amazing stories of couples that not only went through true horrors in their life and remained together, but remained loyal in the face of seduction from a rather "appetizing proposition". I respect, and dare I say even admire such people. Lastly, since it's inevitable that the "self preservation and self interest uber alles" is an always-nascent thought, I would only say this: if one wants polygamy, then there are plenty of partners who also do; pick N.

Sorry for the rant.

Edit: response to your edit:

> We shouldn't be scared of trying things that aren't best, and if something > is genuinely good, it shouldn't fear criticism and rivals. If it's good, it > will beat those rivals.

I'm not afraid to admit that I'm not perfect and that I experience full range of emotions when it comes to loved ones. Had it been otherwise, had I thought that I was the best thing that ever graced this planet, perhaps then I would have no motivation for jealousy. Likewise I cannot eradicate it, since I see it as innate. Perhaps some people are just not able to experience jealousy at all. Perhaps. I doubt it, but I cannot know, nor can I avoid it. Nor do I know anyone who can. Nor will I ever deny that I do. Best I can hope for is that I'm good enough for the love of my life and that we can go to the end together. If that doesn't work, it was not to be. I can do what I can to keep the relationship working on all fronts, physical and otherwise, but I cannot pretend that nothing better than me can arise. There are truly lucky people who have loved ones that choose what they have, over the greener pastures. We can't all be perfect. Likewise I'm all for experimentation, outside of marriage or a relationship that is, or in a relationship that is predicated on experimentation. I'm just appalled at an apparent justification of betrayal.

<comment><USER27> > I value deviation from the norm as much as the next free spirit, but > deviation from this basic principle I will not allow myself ever.

I think it's bad to be a 'free spirit' in the sense of wanting to deviate from the norm. I do appreciate variety, but I'd prefer if there was less need to deviate. Radical and counter-intuitive ideas are harder to implement, and it's harder to find associates with those shared values. The point of deviating from the norm is that some normal ideas _hurt people_ or _cause problems_. At least that's what I think. There is a genuine disagreement about the wisdom of some normal ideas, not just deviation for the sake of being a free spirit.

> If one partner decides that they're liable to "chat someone up and > accidentally have sex" they should divorce/separate and carry on.

That's one option but there are lots of others. Richard Feynman made a game out of not cheating on Arline with tempting girls. He enjoyed the challenge. If you don't want to cheat, there are rational ways to accomplish that.

> I'm just appalled at an apparent justification of betrayal.

I think it's bad to betray people. I also think it's generally wise not to make promises that are hard to keep in the first place. One reason is this reduces the number of betrayals that take place. Another reason is that it's hard to predict the future and predict what you will want in the future.

<comment><USER29> Free spirit, free thinker, thoughtful, radical are some descriptions of the same idea. I guess it depends on the vantage point. A radical opposition to an oppression that catalyses a positive outcome, is viewed as a positive deviation by some, and of course viewed as a negative deviation by the oppressors. I basically try as I can to evaluate most "big ideas" on their merits, to the extent of my ability. I don't have neither the time nor energy to evaluate everything so some things I take at face value. So in my view, the more people who choose to think outside of the boundaries of a given established "norm", the more healthy the society in general. This is an enormous topic, so what I said is not even a splinter of it.

> That's one option but there are lots of others. Richard Feynman made a game > out of not cheating on Arline with tempting girls. He enjoyed the challenge. > If you don't want to cheat, there are rational ways to accomplish that.

Basically I view change of heart as a normal occurrence. It happens, there are far worse things in life. But I also view betrayal in some of the most negative light possible. Divorce/separate and off you go. I just don't see a solution to suppressing one's urge. If one is convinced they've "finally found the right person" then what next? I don't know, but I do know that to exercise that urge while feigning ignorance is pathetic example of a human malice and weakness. At least hold it until you can separate and inform your former "loved one" of your intentions. Otherwise, if it's a fleeting "crush". Drop it like a hot potato and move on. Why betray? Because it feels good? I don't know. Why make your loved one jealous? Some do it out of spite -- it becomes an endless game of getting back at each other.

> I think it's bad to betray people. I also think it's generally wise not to > make promises that are hard to keep in the first place.

There are civil and fruitful means of dissolving a contract. It's just my view that conniving and lying and otherwise being unfaithful is an anathema to reason, trust and a healthy society. That's my view of course, and I don't plan to impose it on others in any way, but I will go to the utmost of my ability to abide by it.

It's just so happens that jealousy is the central emotion that runs through the veins of the aforementioned beast. Human interaction is built on jealousy and it can be either good or bad. I think few other emotions, except perhaps fear, have more influence over our lives, or are as central. I remain suspect when people claim immunity to it.

</comment></comment></comment></comment></comment><comment><USER30> Whatever you do, when it comes to marriage, don't rush into it. Don't do it because it seems like the next logical step, don't do it because it brings a partner health benefits, don't do it because either family is pushing you.

You can take your time, give the r'ship loads of time to be tested (by travel, financial compromises, living together, sexual compatibility, etc) - if and when you do it, only do it for absolutely the right reasons.

It's harder to undo than it is to do.

(Personally: Married and divorced before 25. Now engaged to someone after 6-7 years together including living together for much of that, and travelling the world for 12 months.)

</comment><comment><USER31> I used to believe that you could pick any two of the following three items:

1) A job you like and are good at 2) A body you like and take care of 3) A marriage & family you invest in and enjoy

I've found that you can have all three, but it requires a lot of flexibility, discipline, and willingness to say no to everything else (which is really just a manifestation of being disciplined).

I don't think marriage and a start-up are always mutually exclusive. In some cases they are, either due to the spouse or the start-up (or yourself, possibly), but if you're willing to be disciplined and set boundaries it's definitely possible.

</comment><comment><USER32> Wives are like startups. You fail at the first one.

I speak from personal experience on both counts.

;-)

</comment><comment><USER33> I think the biggest problem is that both a marriage and a successful company require a lot of work. And when push comes to shove you sometimes have to let one suffer inorder to help the other.

The guys you mention above all fit into the work is their life mold where they throw themselves into what ever they were doing. This won't surprise anyone but that doesn't really endear yourself to your partner.

I know a very successful entrepreneur who has been married 4 times now. Each one of his wives couldn't stand coming second to work and I'll bet that each one went into the marriage thinking that this time it would be different, that they could change him.

</comment><comment><USER34> First question you should be asking yourself...

Why do I want to be married?

</comment><comment><USER35> If you get married, there's a good chance that your wife will want you to quit and get a stable job with reasonable hours. Even if she doesn't now, that's likely to change if you have children. It's also likely that her patience will wear thin eventually, especially if your first startup fails and you want to try another one.

</comment><comment><USER36> frankly, i think its a commentary on marriage, not just entrepreneurial or techie marriages.

divorce rates are higher with younger couples. the younger, the higher.

<comment><USER4> where's the beef? got a url to back that up? would love to read up on it.

<comment><USER36> <http://www.divorcerate.org/>

</comment></comment></comment><comment><USER37> I cannot find the statistic, but I am sure I read once that statistically marriages started between 23-27 have the lowest rates of divorce (if you only count first marriages, then I think the lowest rates come at a bit older age). Anyway, it's marrying before 23 that has the much, much higher rates of divorce. After that, I wouldn't worry about statistics.

</comment><comment><USER38> Marriage increases your responsibilities and, consequently, reduces your risk tolerance. Maybe it wasn't a choice, just so happened that it was because of the higher risk tolerance that those unmarried individuals could be so risky.

</comment><comment><USER39> These 'gold diggers' that you refer to... are they top-karma users of Digg?

</comment><comment><USER40> OK, putting aside that this is clearly not the best place to ask for marriage advice...

Have you compared the "statistics" you gathered about (male) (hugely rich) founders marriage success ages to the general pool of marriages?

I'm pretty sure I read that more marriages <25 end up in divorce than >25.</comment>


EHow advise to use Base64 to "encrypt" credit card data - <AUTHOR> http://blog.human-friendly.com/ehow-advise-to-use-base64-to-encrypt-credit-card-data

<comment><AUTHOR> I tried posting a direct link to the offending eHow page but that was instantly a [DEAD] story (probably because of ehow being a cesspit). That is why I made a small blog post to link to it. I made sure I nofollowed the link to ehow though!

There is a Tweet that someone wants retweeting asking eHow to remove the article here: [https://twitter.com/al45tair/status/513975163193663488](https://twitter.com/al45tair/status/513975163193663488)</comment>


Go to the grocery store every day. Several of them. Seriously - <AUTHOR> https://www.washingtonpost.com/outlook/you-should-go-to-the-grocery-store-every-day-several-of-them-seriously/2020/01/02/4632eafa-2c16-11ea-9b60-817cc18cf173_story.html <comment><USER2> I upmodded this not because the content is good (it's kind of disturbing in most ways because consumerism-as-comfort is inherently so, though the core advice is sound), but because it highlights an oddity in publishing I've noticed recently.

So this person is an executive at an advertising agency (it undersells him somewhat in the _Post_ 's author's bio box).

What's his motive? He doesn't have to have one, of course, so let's put that as an option. Does his agency work with consumer goods businesses? You check their website, and the answer is "yes." So another possibility, then, is that his agency works with large grocery store chains or similar.

You look at his most recent posting on _that_ site, and it's a hit piece on a (fairly bad, actually) business aimed at the same demographic his agency claims to be able to target. In it, he also recommends the demographic in question goes, shops, and makes food themselves.

Sketchy so far, you think.

But then you look at his other posts on the WWW for this sort of thing.

Almost exclusively, they're about how others should buy and prepare their own meals. He's been on this beat for at _least_ seven years and probably more: he had an op-ed in _The New York Times_ on exactly this in 2013.

At this point, it gets close to impossible to figure out if it's some odd attempt at content marketing (likely, given that's what his company claims to do), or just a fun obsession (also likely, given his monofocus).

I've been noticing this thing more and more when I read more or less any op- ed. It's fascinating to me.

<comment><USER3> Following people who have a niche they're into can be a reaction to distrusting journalists in general. They aren't fungible.</comment></comment>


Will IBM's Watson kill your careeer? - <AUTHOR> http://slashdot.org/story/12/06/08/1551233/will-ibms-watson-kill-your-career

<comment><USER2> Thanks for the slashdot convo. Now we don't have to have an conversation here!

But no it won't kill my career because I program Java and if he wants to learn new things or in different ways he'll need us.

<comment><AUTHOR> _Thanks for the slashdot convo. Now we don't have to have an conversation here!_

Meh... different, albeit overlapping, crowds. That said, what I long for is the day when all these various communities, discussion boards, etc. are semantically interlinked[1], so a conversation can span sites easily.

[1]: <http://sioc-project.org/>

_But no it won't kill my career because I program Java and if he wants to learn new things or in different ways he'll need us._

That's what he wants you to think! :-)

<comment><USER2> He's been secretly reprogramming and binding parts of himself in a new form of encrypted-typed FORTRAN 77? OH GOD.

Skynet is here everyone.</comment></comment></comment>


Ask HN: Where do you read C++ documentation? - <AUTHOR> Many of the sites that score high in Google lack basic features. I consider Java documentation to be very easy to navigate and I understand C++ has more complexity - but something like STL should have a modern documentation somewhere of similar quality. <comment><USER2> And once again: [http://en.cppreference.com/w/cpp](http://en.cppreference.com/w/cpp) is the premier source for me. It should be added, that their aim is to give a (readable) specification of the language ([http://en.cppreference.com/w/Cppreference:FAQ](http://en.cppreference.com/w/Cppreference:FAQ)). If you need a stressable answer to some weird C++ question, you can look it up there first.

<comment><USER2> [https://zealdocs.org/](https://zealdocs.org/) is a pretty good offline doc browser, if you happen to need that.

</comment></comment><comment><USER3> [http://en.cppreference.com/](http://en.cppreference.com/) is probably one of the most used sites to get all the info you need for all versions of c++

</comment><comment><USER4> [http://www.cplusplus.com/reference/](http://www.cplusplus.com/reference/)

I like this reference source, just because the styling is a little bit better, but I have to agree that cppreference.com is one of the premier resources.

</comment><comment><USER5> I like [http://en.cppreference.com/](http://en.cppreference.com/), as lusocoding posted, but I've noticed many prefer the unified UI of [http://devdocs.io/cpp/](http://devdocs.io/cpp/) \- It does seem less complete though.

<comment><AUTHOR> Thank you devdocs.io is one I haven't seen yet.

</comment></comment><comment><USER6> MSDN and man pages. All the other sources are second handed.

<comment><USER4> How do you actually find the c++ docs in man. They never seem to be installed on my desktop. I would love it if I could just type `man std::Vector` to get details about a vector, and its methods.

I've never been able to find any docs installed on my system even using `apropos` to search.</comment></comment>


Ask HN: How much time to devote to learning algorithms vs. creating software? - <AUTHOR> I was flummoxed with this question when I started re-learning about Algorithms & DS (after years of regular backend software development) along with Competitive programming.  The fact that I suck at it hit me like a brick.  I took way way longer than necessary to solve even basic algorithm problems.
Now at work, I am pretty good at creating reliable software (mostly in Java, Scala and Python), but I won't probably pass the first tech round at companies like Google or Amazon.  And this is hurting my ego bad.  After so many years developing software, I am bad at the fundamentals.
Is this something that worries you?  How much percent time do you spend on strengthening CS basics?  Do the best tech companies only judge based on Algo/DS knowledge? <comment><USER2> I often say that it takes years to wipe computer science off of recent grads and make them into engineers.

Do you need to memorize the algorithms so you reproduce them off the top of your head? No! Should you be aware of what they are in a comparative sense, and have a rough idea of what family of them you should be applying? Yes.

You need to learn just enough to keep learning, and more so when your applying, because only through use do you gain mastery. That. Takes. Time!

As for "will it get you jobs" \-- at a subset of companies it will. Another subset will ask you to "write" code (and this is wrong as well)... Do you want to work for those companies is the larger/other question.

</comment><comment><USER3> With the rare exception, everyone 'sucks' at things like algorithms and math. That feeling of sucking and frustration is the normal feeling the vast majority of people have when trying to teach themselves or learn complex logic. Some of this can be rust i.e. you have not been thinking this way for some years. But the truth is it's also a slog.

Progress in things like algorithms and math, at least from my experience, is measured in 100s of hours, not tens of hours.

You need to 'embrace' the frustration. That's just what learning hard stuff is all about. It makes you feel stupid.

Even the successful academics all have their small list of role models, all of whom make them feel stupid (a list I think ends with Von Neuman).

fwiw I just started studying CS basics at age 29 (although I'm a data scientist professionally). I'm doing it for 'myself' though, not for interviewing.

<comment><AUTHOR> This gives me some respite. I started CLRS a month ago, and although the progress has been excruciatingly slow, I am moving pages. It's quite fulfilling to understand how languages work underneath..

<comment><USER3> I started a month ago too, and I also find it excruciatingly slow. Make sure you use the MIT opencourseware that uses the book, as they provide problem sets and answers, which is very valuable.

Although as learning things always goes, I "feel" like I am learning nothing and making no real progress, but then I look back on what I now know that I didn't before, and it's a lot!

<comment><AUTHOR> Can you please provide a link to the courseware?

<comment><USER3> [https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/index.htm)

<comment><AUTHOR> Thanks

</comment></comment></comment></comment></comment></comment><comment><USER4> I think you need a basic understanding of data structures and algorithms. But there is no substitute for actually building stuff. Focus on building things above everything else. Theory and actual craftsmanship often are two separate things.

Being able to get the questions of Google and Amazons interviews correct is basically good for one thing and one thing only – getting hired at those places.

I have done hundreds of interviews and there are so many other things that I look for before evaluating their knowledge of bloom filters. Maybe I am old school.

I've met a couple of developers who know all the theory but who could never get anything done and delivered. Then again, my company isn't Google.

<comment><USER5> What other things you look at in potential candidates?

<comment><USER4> I want team players with drive, who takes initiative, who are willing to learn as they go and who will speak up and tell me when I'm wrong. People with integrity and principles. I'm looking out for warning signals. People who will say "that's not my job". Small things. People who are too sure of themselves or small things such if they bring their coffe cup with them out of the interview or not. I don't want people who pretend that they know answers to questions they do not. I'd like them to say I don't know at least once during the interview. On the technical side I look for people who can tell me about real problems they have faced in real projects. How they handled that situation. How they approach troubleshooting and debugging in general. I want to hear how they talk about software in general. I want them to not be fundamentalists in any direction. I want people who can see both the positive and the negative aspects of concepts like OOP, functional programming, unit testing or whatever it might be. I want them to be able to argue both for and against different ways of solving problems.

And that's just the start of it. Hope it helps.

<comment><USER6> That sounds like the kind of place I'd like to work. Are you hiring?

</comment></comment></comment></comment><comment><USER7> > I am bad at the fundamentals.

Correction, you are bad at memorizing algorithms or coming up with them in interview settings under time pressure. This can be valuable in some jobs that are heavily algorithmic. Many development jobs are not. As a matter of a fact, many development jobs at FANG are not.

<comment><AUTHOR> If most dev are not algorithmic, why so much focus on it? I understand that some knowledge is required.

<comment><USER8> Mostly only meta knowledge is required. You need to know they exist so you can look them up if you need to reimplement or choose the right library.

If you have to write the code for it inside an existing code base, knowing a specific algorithm by heart vs looking it up won't really make a lot of difference on the time it takes.

</comment></comment></comment><comment><USER9> Some algorithms and data structures are really easy and intuitive (e.g. binary search, linked lists, etc). Some are quite hard. But, knowing how and when to use them is much more important than knowing how to implement them [†].

Understanding algorithmic complexity is important when venturing beyond the simplest of software. Why? Because an O(n^3) algorithm may appear to work well with simulated data, tests, or light user load. But, it may bring your system to a halt under real-world conditions. And, it is sometimes not trivial to debug, especially when the complexity spans multiple layers. (I cringe when I see new developers nesting loops inside loops, but sometimes it's ok).

Also, it's very important to be able to read and understand code. It's unavoidable that you will someday encounter complex, poorly-documented code. Say you run into some code that implements a graph algorithm. If you don't recognize what it is, you will incur a lot of risk when maintaining it.

† - However, you _really should_ know how to implement simple data structures and algorithms, at least conceptually.

<comment><USER10> On the flip side, that's not how perf work is done in the real world. Start with a simple implementation that's easy to maintain and easy to understand. Run profiling, don't guess. Iterate and make it better.

Devs worrying about big-O cause issues, too, no matter how good the intentions. CS itself isn't harmful, just one of many tools in an engineer's toolkit.

<comment><USER9> How does worrying about big-O cause issues? You should back up such a strong statement with at least anecdote or something.

</comment></comment></comment><comment><USER11> Who knows? Maybe all tech companies came to an agreement one day, a little secret we don't know about. Why do they all require that type of interviews? Employee retention... If interviews for software engineers were focusing on real work experience only, everyone would be able to switch jobs very easily. Think about it. It would be so easy to get in without even putting extra work because you'd be evaluated on your day to day tasks, rather than something that requires months of intensive practice. It's a way to scare engineers and to keep them away from switching jobs.

Now let's say you don't have any experience and you're fresh out of college. What happens with today's setup? Well, you're perfectly able to tackle these interviews since all you know are algorithms, data structures, etc. There's no retention involved since it would be your first gig ever. It's a perfectly well designed process for Tech companies, but it's awful for us I agree.

<comment><USER7> As much as I love a good conspiracy theory, and yours is pretty damn good because this industry has colluded to keep wages down, I'm hard pressed to believe that this is the case. Interviewing is hard. Startups are led to believe they need to have a higher rate of false negatives over false positives to ensure they don't get a "bad hire". Most people in this industry just follow the trend they see. It's all they know. They have never seen another successful hiring strategy. So it persists.

<comment><USER11> My theory was pure imagination :) I 100% agree with what you said. The primary goal is to raise the bar of entry. The problem is, current SWE evaluations focus too much on one single task. The ration "writing functions" versus the rest might be about 20% vs 80%. We focus too much on the 20%. How about team work, collaboration, knowledge transfer, project related issues, mentoring people, setting up environments, understanding users, collaborating with product managers and designers, etc.

If you think about it, it's a pretty risky process for companies. Judging a candidate based on a few 45-min whiteboard exercises and a high level system design question, we're looking at only 20% of the whole picture.

</comment></comment></comment><comment><USER12> What is it that you see in companies like Google or Amazon? Is it some sort of perception of prestige? I think this is a question you ought to think more about.

I'm not at all worried because I have no desire to be hired there. All indications are that the work environment is pretty toxic. The pay does not come close to compensating for cost of living.

<comment><AUTHOR> I agree that it is a perception of prestige. It just seems that those companies are doing the best kind of tech.

</comment></comment><comment><USER13> What do you think a company wants to hire you to do?

In a world where both Google and Knuth exist, they aren't hiring you to be an algorithm reference book. They're hiring you to create working software. Your task when interviewing is to convince them that you can do that.

The reason they (at least the reasonable places) ask algorithm questions is because they want to see you think through something you don't know. They also want to see you write some code for something small, just to make sure you can.

If it's a place that is going to judge you negatively for not knowing every algorithm they ask you about, that says more about them than about you. Be grateful such places eliminate themselves from consideration in such a straightforward manner.

</comment><comment><USER14> Technical interviews only test your data structures and algorithms skills and your actual work experience is mostly irrelevant. If you want to crack an interview, grind leetcode and practice writing code on a whiteboard. If you want to become a better developer, create software.

</comment><comment><USER15> I'd suggest 90-100% creating software; 0-10% algorithms. The percentage on algorithms should be directly applicable to what you're working on. In practice, algorithmic knowledge primarily helps when dealing with performance issues or complex architectural decisions.

I wouldn't suggest totally ignoring algorithms, but it's at best secondary. Being proficient at solving performance problems or architectural issues are very valuable skills in the marketplace. That said, even those are mostly practical and about pattern recognition (which you get from writing software).

</comment><comment><USER16> I think it depends on if you want to interview at a big company that does algorithms type interviews. In my opinion studying that stuff is a waste of time if you are not going to use it in an interview, because you have already proven you aren't using it in your actual job.</comment>


Ask HN: How to Monetize Online Bartering? - <AUTHOR>

I am a lawyer and I ran into an interesting legal problem this past week.  Basically there is a physical good ("Widget") which is illegal to resell (sell p2p), but is perfectly legal to trade.  As it turns out there is an entire "under ground" market dedicated to trading Widgets, the most analogous good I can think of are sneakers which have an enormous underground market, called sneakerheads, who buy/sell/trade custom, vintage, limited release, and rare sneakers p2p.  The only difference with the Widget and sneakers is the Widget can not be sold p2p, Widget can only be traded.  Therefore, if you need a specific product to answer, imagine the product would be shoes and the community would be sneakerheads.<p>How might one monetize or make a business out of building a online community for the sole purpose of facilitating p2p trades of Widgets?  I can think of advertising, paid membership and selling products to the community related to the Widget. <comment><USER2> I've thought about this a bit for homebrewed beer (illegal to sell, but perfectly legal to give away and/or trade). My only thought is that you could manage the shipping of the items--have each trader send you the item, where in you inspect it, and once you've received both, you send both along, otherwise, you return the original widget to the sender.

Charge shipping plus a fee for that service. Plus, if you have a centralized shipping location, you'll be better suited to get deals on shipping costs.

This, of course, ignores the fact that it's illegal to ship alcohol via USPS, and it's against policy for UPS and FedEx.

<comment><USER3> > This, of course, ignores the fact that it's illegal to ship alcohol via > USPS.

Currently, but USPS has indicated they would like to get into this business. It would be a worthwhile risk to set up a service that would take advantage of this beforehand so they could be the first service to do this.

As being a man-in-the-middle, that would double the price of shipping, where it already costs 10% to 50% of the widget's value. Though it might be a good service to have available for new users who don't have any feedback in their profile.

<comment><USER2> Being a MITM would certainly increase shipping costs, but if you're able to get bulk pricing, you could potentially drop the shipping costs to less than what it could cost the users to ship it themselves.

</comment></comment></comment><comment><USER4> Simple question: given the high barrier to entry and an illiquid market, are the potential returns so massive as to justify the risk? To put it another way, does this market have the potential to be exponentially more lucrative than antiques?

The other question is about the culture. Is the current barter system part of the attraction for people engaged in the trade? Think about the way the internet changed the world of Grateful Dead concert recordings.

</comment><comment><USER5> What is the price point of the product? How difficult is it to connect with another to trade it? How frequently are these trades made by individuals? It might be possible to charge a finder's fee if you built some sort of matching service if the numbers look right to be worth your time. I could also see this fee just being wrapped into a paid membership plan or one time fee if the numbers went another way.

<comment><AUTHOR> >What is the price point of the product?

Much like shoes the price of the Widgets vary dramatically. But best estimate trades generally being valued at $50-$200 with the shipping at $20-$30.

>How difficult is it to connect with another to trade it? Most of the current trading I am aware of is done on craigslist locally or on Instagram, so search is involved, but as you suggest matching trades could be automated. Though the way the community is, traders probably want to limit the number of users they trade with and build trusted relationships.

>How frequently are these trades made by individuals? Much more frequently than shoes, people I know trade 1 or 2 times per month, but they will not hesitate to do more trades for a Widget they really want.

</comment></comment><comment><USER3> How about a website where users can upload pictures (with description) of what they have available to trade, and other users can match the appropriate items from their inventory to make trade offers. With the user's profile, you can have a trade history, feedback, the ability to make private trades (maybe a premium feature), and a "showroom" where users can display their prized widgets.

Of course forums, private messaging, along with advertising would be appropriate. I've never built an online community, but I would wait to gauge interest of users interested in purchasing widget-related products before investing the time and capital to develop that.

</comment><comment><USER6> Most marketplaces have a small listing fee. Perhaps you could have paid memberships and members don't have to pay the fee to list.

<comment><USER7> A listing fee or transaction fee would be my suggestion, too. Just charge for the service, not for the goods.

</comment></comment><comment><USER3> Is the widget a digital, or a physical good?

Can the widget only be traded for similar widgets, or can it be traded for any such as baseball cards? If it is digital, does it require a proprietary service to facilitate the trade?

<comment><AUTHOR> Physical good. Legally the widget must be traded for other widget(s).

</comment></comment><comment><USER8> Offer escrow services for trades that can't be made face to face.</comment>


Show HN: Crystal Vault zero knowledge secrets storage - <AUTHOR> http://crystalvault.zteo.com/ <comment><AUTHOR> Hi everyone,

It started as a week-end project for something lacking at my work. I am now bracing myself for your comments! Be gentle :)

<comment><USER2> Update your title, right now it's - "Corporal - Bootstrap Personal & Business Theme"

and I doubt you want that ;)</comment></comment>


How Jeff Atwood works - <AUTHOR> http://lifehacker.com/5950386/im-jeff-atwood-founder-of-stack-exchange-and-this-is-how-i-work <comment><USER3>
    		Do not under any circumstances keep to-do lists or use to-do apps.
    		If you can't remember the most important things you need to do every
    		day, you should work on that. And if you can't remember something
    		you "need" to do, it's probably not worth doing in the
    		first place.

Wow. This is terrible advice. Sure it may work for some people who only have a small handful of tasks but for others who have a set of hectic projects (fix this, rewrite that, call her, email him) or even life goals (write a book, make a video game, learn to speak russian, teach daughter how to fight a bear) todo lists and goalsetting is incredibly important.

<comment><USER4> Atwood seems to have a penchant for stating half-baked opinions very forcefully.

Todo systems are not just for important things. They're also for mundane things. A few examples from my own:

\- Get the share of that £xxx bill from a housemate.

\- Every Tuesday and Friday: Move trash kerbside.

\- At least weekly: Process any unopened postal mail I have sitting around.

\- At least monthly: Check my online bank and scan for any unexpected transactions.

Why on earth shouldn't things like these be stored and optionally teed up by a system?

<comment><USER5> The counterargument is that all of these tasks are better suited for a calendar rather than an open-ended to-do list.

<comment><USER6> A calendar is basically a meta to-do list with reminders and deadlines.

Most people using calendars for this purpose don't realize that they are actually using to-do lists.

</comment></comment></comment></comment><comment><USER7> _No operating system I know of, no matter how many gigabytes of memory you have, can remember more than one copied item at a time. That's ridiculous!_

Maybe I'm misunderstanding the functionality he's talking about, but hasn't KDE's Klipper (<http://userbase.kde.org/Klipper>) and GNOME's Glipper (<https://en.wikipedia.org/wiki/Glipper>) solved this problem long ago? I'm sure there are other clipboard managers for other OS'es as well.

<comment><USER8> I think he means built-in to the OS. He probably uses something like the ones you mentioned, as he claims that the "only must-have app I need is a global clipboard history application."

<comment><USER9> Yeah, I had a similar reaction. I had been using the dual Office/VS clipboard ring since back in ~2002, but I forgot that it was only for applications with Office integration and not OS-wide.

</comment></comment></comment><comment><USER10> I'm the biggest advocate for plowing through every day like a tank but even I would be incredibly handicapped without a proper framework. My system is designed to keep all tasks and tactics out of my head so I can focus on strategy, vision, and execution. Folks who think they don't need a system are lucky, foolish, not all that ambitious, or have others worrying about the big picture of their lives/ companies/ industries.

<comment><USER10> Ok- I would add "focused" to that list. If you're a 20 year old working on your first startup 100 hours a week then you may not need a to-do list for life (although you should certainly use one for your development!). For the rest of us, there is way too much that can possibly be done every day - <USER2> some framework for prioritization / tracking becomes essential.

</comment></comment><comment><USER11> Did the title for the submission not have enough room, or is there some other reason "Cofounder", which is what the original LifeHacker title reads, got replaced with "founder" here?

<comment><USER12> The link itself includes "founder", not "cofounder". Maybe he later updated the title...

<comment><USER13> I really hate the prolific use of the term cofounder around here. Everyone who "cofounds" a business is a "founder". Otherwise you're the "sole founder" if you honestly feel like making a big deal about it. A founder is a founder, whether there is one or many.

<comment><USER14> Exactly, nobody calls America's Founding Fathers the "Cofounding Fathers" of the nation.

<comment><USER15> But you also wouldn't call any one of them "the founder of the nation", it works because the inclusion of "fathers" already states that they are a group.

<comment><USER14> Of course you wouldn't say THE founder, you'd say A founder

</comment></comment></comment></comment></comment></comment><comment><USER16> Interesting how polarizing Jeff Atwoods views about to-do lists are.

I believe that to-do lists are just a symptom of a different problem:

Working on something you do not really care about. (sadly, most people have to do this)

If you cared about the product or whatever you are creating, and the communication between you and your customer/boss/team is good, your goals would be aligned (in most cases), thus making it very hard to miss a really important task.

Probably it would have been better for Jeff to give the advice to try working on stuff you really care about.

<comment><USER17> > If you cared about the product or whatever you are creating, and the > communication between you and your customer/boss/team is good, your goals > would be aligned (in most cases), thus making it very hard to miss a really > important task.

Ugh, this irks me to no end. What if you really care about your product, but there are so many exciting things for you to work on that you simply can't keep track of them all? It's like he's got blinders on to people who don't have the best memory.

</comment></comment><comment> helper-method I was really disappointed after reading the article. It was far too short, and contained no useful information. Actually, what is the point of such articles anyhow?

<comment><USER18> To push their ads. These articles are perfect for sites like these and sites like LifeHacker probably make a tidy sum of money from the Reddit/HN and previously Digg crowd.

</comment></comment><comment><USER19> Why doesn't he at least give a nod to Trello when asked about to-do lists? Give your co-founder a plug!

</comment><comment><USER20> Where's the bias lighting? <http://www.codinghorror.com/blog/2011/11/bias- lighting.html>

</comment><comment><USER21> Great, now I'm excited about that "awesome next big thing".

<comment><USER22> Can't find the post now (think it was on HN or Ars Technica a few months back) but I'm fairly certain "the next big thing" Jeff's working on is re-imagining how a web forum should work.

I hope he cracks it - vbulletin and friends need to die!

<comment><USER23> Jeff posted a question in the Programmers Symposium of the Ars Technica forum asking how the members there felt about forum software.

Personally, I think the ars forum works perfectly. I can't stand newsgroups, for instance...i'd be in heaven if everything were vbulletin.

But maybe Jeff has something neat up his sleave!

<comment><USER24> Hopefully. I've been looking into options for fostering a small community around a new videogame, and I hate them all. Traditional forum software is much too heavy (registration, navigation), Vanilla is just strange, a subreddit is an inappropriate format (voting and the lack of long-term threads are a turnoff), and there's really not much else.

It's something that's long overdue for a shakeup.

</comment></comment></comment></comment><comment><USER25> Disappointingly uninteresting answers :(

<comment><USER26> Agreed</comment></comment>


JavaScript Getters/Setters Considered Harmful - <AUTHOR> http://labs.transloc.com/?p=21

<comment><USER2> _Firefox 4 would rather you write getters and setters the old fashioned way for every single object you create than reference objects' member variables directly via dot-notation._

Bizarre, but it really emphasizes that where implementation performance is concerned, you have to test, test, test, and test some more. Your intuition about what is fast and what is slow is probably 99% correct. But the other 1% may surprise the whumpus out of you.

Also, I would consider things like this to be highly unstable unless I read a white paper from the implementation team saying that this is by design. If you hurriedly remove all of your dot references and replace them with functions, you may find a point release of the implementation changes everything again.

You have control over your implementation on the server, but users can upgrade their browsers at will without consulting you first :-)

p.s. Did I miss it, or did they only test browsers without looking at server implementation like V8 or Rhino?

<comment><AUTHOR> You're correct, we didn't test on server implementations like V8 and Rhino... You make a good point though, it would be interesting to test the results in those environments.

</comment></comment><comment><USER3> JavaScript Getters/Setters Considered Slow

"considered harmful" is link bait

<comment><USER4> "Considered harmful" considered harmful?

<comment><USER5> In this context it is. There may be some serious implications when saying that x or y pattern in language z is considered harmful.

In Java accessors are almost mandatory if you intend for your object's properties to be publicly available (even the IDEs imply it, by automatically creating them for you). Whereas in languages such as Python and JavaScript, the implementation of this "pattern" makes them optional. You don't have to use accessors if you don't need them right now, since you can always go back and create them later without affecting client libraries.

What the article shows is that, surprisingly, JavaScript's native feature to do this is actually slower than the Java way (what the author called old- fashioned). Is this really a reason to revert to a clumsier pattern because we're optimizing for speed?

Saying that it's "harmful" might get many newbie JavaScript programmers run to start peppering their code with getter and setter Java-style. What happens later when the different scripting engines fix the bottleneck.

</comment></comment></comment><comment><USER6> This is a prime example of pre-mature optimization. This, but itself, although interesting theoretically provides no practical information and should not dictate most application use or non-use of getters and setters.

Unless you're doing many millions of get/set operations a second, you will not see any benefit and time is more likely better spent in other areas (selectors, caching, DOM element reduction, etc).

That said, I am very interested why the prototype getter/setter is also bad. I wasn't expecting this to be quite as awful. I would imagine the javascript engine could cache or dynamically create an organic function from a prototype style reference (so there would be huge performance gains over many iterations).

<comment><USER7> It is true that you won't see much benefit when doing only a few operations, but we were interested because we do perform many object accesses/writes a second.

My guess as to why the prototype getters/setters are slow is that the prototype list has to be traversed and this requires a bunch of lookups that are not necessary when dealing with direct properties of the object.

</comment></comment><comment><USER8> Someone reported this to Bugzilla back in January. <https://bugzilla.mozilla.org/show_bug.cgi?id=626021>

</comment><comment><USER9> They may be slow today, but they may get a lot faster tomorrow. Also I would be interested to see this in action in a real world app, rather than just 'let's see how many get/set we can perform'.</comment>


Cases Against Applying Schedule Pressure - <AUTHOR> http://www.stickyminds.com/sitewide.asp?ObjectId=9947&Function=DETAILBROWSE&ObjectType=COL

<comment><USER2> While the title of this article is misleading (it's really about communication, not scheduling), it is food for thought.

Though I can't help but boggle at the author encouraging a team to abandon all milestones/deadlines in the pursuit of quality. While perhaps the given team really was looking for a convenient excuse for any quality problems, I can't help but look at it as pragmatism.

"Take all the time you need - but make sure it's perfect," is a good way to discourage completion.

</comment><comment><USER3> Quality can only be attained by employing quality people. Just by giving folks more time will not automatically turn into quality product. Many times quality people do not require more time to make a better product. They just need to be left alone.

Having said that Quality people are also people. People need deadlines or else will fall victim to student syndrome (all assignments and projects are done last 2 days before the deadline, refer <http://bookoutlines.pbworks.com/Predictably-Irrational> Title: Problem of procrastination).

Quality people loving what they do, need to be put on deadlines which they agree to as being reasonable. The business should for the most part function around these deadlines. When a customer imposed hard deadline shows up on the radar, a healthy conversation should settle the acceptable quality/feature cuts to meet it.

The essential task of the leader is to make such sudden showing up hard deadlines as minimal and as far apart as possible through insight and foresight. The quality of the leader can be directly judged using the number of such deadlines that prop up in a given span of time.

</comment><comment><USER4> _They'd say, "We want to be this far along by July," or "By August we need to be able to handle these types of transactions." I'd ask them how they'd established those deadlines. The answer was always the same: No businessperson had asked for a specific amount of progress by a specific date, but the team had decided how far along it needed to be at various checkpoints to feel good about the overall progress._

It's unfortunate that the author had this awesome insight, and then went off on a tangent about people being more comfortable with schedule pressure than with quality pressure.

"Feeling good about the overall progress" as presented above isn't schedule pressure, it's a measure of quality and efficiency. "We want to be this far along by July" is a way for the team themselves to gauge if, for example, they are spinning their wheels doing the wrong thing (because it's taking too long, because it's too hard, because it's not broken down into subtasks properly, whathaveyou), which directly relates to quality. As this "deadline" approaches, one can judge if with greater accuracy if it's going to be made. And since these "deadlines" are not hard and fast, or at least not as hard and fast as if some business person had set them, tweaking them is less work and less upsetting. Don't think all seven of the transaction types are going to be done by August? Scale it back to five, work on getting it into a state where these five can be handed off to the next team to work on the next part and build it such that new transaction types can be added later so more people can work in parallel. Dependency handling (with the core dependency getting the project in a shippable state within a reasonable amount of time) is the reason schedule pressure exists in the first place.

I've often had to say to my team "We seem to be spending a lot of time on X, and are close to [or past] the initial estimates for completion. Are we doing the right thing here? What else are we going to have to cut? What do _you want_ to cut? Is it too complex, and can we simplify it?". Too often, even the list of things (features) that need to be in the final product are determined externally (read: by business people), without any input from the people who are actually going to do be doing the work. The implementing team should be involved in both the feature list and the schedule (a regular topic on HN). I've been on both sides of the table too many times where there is a "technical" resource included in the scheduling planning/meetings just for show and their insight and participation is discouraged, usually because promises have already been made and the planning meeting is just a big Tetris game, an attempt to fit a bunch of lines and shapes into a fixed size box.

That all being said, bluishgreen's comments about revolving around the customer are spot on too. A lot of that comes down to handling expectations. In my experience, schedule pressure is often the result of improperly used Gantt charts. Gantt charts should be living documentation used to answer questions about scheduling and dependencies, not a static bible to be used to browbeat people (both the implementors and the customer) into buying into some fantasy dates.

</comment><comment><USER5> One of the problems with no schedule pressure, which I believe is best, is that software can always be better. Clicks can be removed. User interfaces can be made cleaner and easier to look at.

To remove the schedule pressure, you have think differently. Instead of, "This project is done on Friday," Think, "This project is done when no one has complained about this form for 3 weeks." This project is done when no bugs are reported for 4 weeks. Etc.

</comment><comment><USER6> I agree with this. Nine times out of ten, schedules tend to be arbitrary guesses anyway. I don't know if I agree that scheduling pressure should be totally removed, but I feel that a lot of organizations place it too highly compared to other pressures.</comment>


My hometown turned off its free public Internet because of the MPAA - <AUTHOR> http://www.coshoctontribune.com/article/20091109/UPDATES01/91109015

<comment><AUTHOR> This is largely a case of lack of information; I don't think the city of Coshocton knew that it wasn't accountable for actions of its users. It blows my mind that one illegal movie download can have such ramifications.</comment>