BMW, Ford, GM, IBM and More Launch the Mobility Open Blockchain Initiative Today - <AUTHOR> https://blog.foam.space/foam-joins-mobility-open-blockchain-initiative-mobi-as-founding-member-c843b619504a <comment><USER2> TL; DR; "We have no idea of how we gonna use it, but we needed to do some blockchain like every other cool kids"

LMAO

<comment><AUTHOR> What?

Initially, MOBI will be working with its partners on projects related to:

Vehicle identity, history and data tracking

Supply chain tracking, transparency, and efficiency

Autonomous machine and vehicle payments

Secure mobility ecosystem commerce

Data markets for autonomous and human driving

Car sharing and ride hailing

Usage-based mobility pricing and payments for vehicles, insurance, energy, congestion, pollution, infrastructure, etc.</comment></comment>


Using SQLAlchemy and Postgres functions to produce JSON structures from joins - <AUTHOR> https://trvrm.github.io/using-sqlalchemy-and-postgres-functions-to-produce-json-tree-structures-from-sql-joins.html <comment> munk-a I'm "eh" on ORMs, so if there are ORMers out there... one of the things I find hurts SQL and data-model comprehension is the compounded complexity of relationships. Maybe you have authors and books - but more likely your data- model is more complex, maybe your business needs group authors by family and you also track how many copies of books are in libraries. This is still a pretty simple situation but as things get more complicated the utilization of non-materialized views can help simplify expression - but they come at the cost of pushing some of your logic into the DB where normal developers can't see it.

Have people using SQLAlchemy and other ORMs found it helpful to create fake views using the ORM system (i.e. pre-define a commonly used join) so that it can be reused as a simpler black-box unit of code where needed?

<comment><USER2> It's relatively straightforward to map a materialized view to an ORM entity in SQLAlchemy, if that's what you want to do:

[http://www.jeffwidman.com/blog/847/using-sqlalchemy-to- creat...](http://www.jeffwidman.com/blog/847/using-sqlalchemy-to-create-and- manage-postgresql-materialized-views/)

SQLAlchemy's ability to separate out the query API, metadata, data objects, and combine them all via mappers is very powerful. I've been using SQLA for many years, and I still regularly find some functionality that I was never aware of.

<comment> munk-a I more actually meant something closer to a non-materialized view, just a query segment definition that gets frequently reused - supporting it in a materialized form is all good and well but I'm more interested in how repetitive SQLA tends to come out, if a common set of tables is joined through in a wide variety of queries is there a way to reduce the number of times you can spell it out in an easy manner?

</comment></comment></comment><comment><USER3> My biggest gripe with joining and aggregating to JSON is JSON itself. The project I'm working on is dealing with timestamp ranges which of course can't be serialized to JSON.

Although I'm not working with SQLAlchemy (or Python) I presume it has the power to serialize a TSRANGE into a native Python range (if it has that) as well.

I'm curious if anyone has ever found some way around that, I feel like it isn't possible UNLESS there's some data type than JSON available that I could aggregate with.

<comment><USER4> > The project I'm working on is dealing with timestamp ranges which of course > can't be serialized to JSON.

JSON is a low-level serialization format, on which you often need to build application-specific high-level formats. You can serialize a tsrange into JSON a number of ways, but your deserializer will.need to be aware of the higher- level format you create by your decisions on how to serialize unsupported types as composites of supported types.

<comment><USER3> Very fair to say that this logic ought to exist on the application level, I suppose.</comment></comment></comment>


My startup validation process - <AUTHOR> https://neilcocker.com/2020/08/22/my-startup-validation-process/ <comment><USER2> The reason why most startups don't start this way is because many successful founders have an intuitive understanding for what the problem is and what the right solution should look like. And the reason why they are successful is because they are right.

The reason why unsuccessful startups fail is many, but for many they don't have product-market fit. The reason they don't have product-market fit is because they start with a solution and look for a problem. This analysis follows that same general track. Validate something. But validate WHAT? What if you just have nail in search of a hammer?

Validation is good but often it plays second fiddle to really understanding the problem domain and understanding how the solution is a good fit. Validation can only happen once you have that good sense of a fit.

<comment><USER3> >The reason they don't have product-market fit is because they start with a solution and look for a problem.

I agree. Understanding the importance of solving the right problem i.e. the problem with enough need gap that people are willing to pay for getting it solved and of course the problem which we want ourselves to be solved played a huge role in me building successful products later on.

So, I'm building needgap[1] a problem validation platform where problems are the first class citizens. Posts are created by the consumers(incl. entrepreneurs) who have a problem, want to find a solution for their problem, check if others share the same problem, however small the problem might be[3]. Builders can post their products in the comments if it solves that particular problem or else discuss with others to create a product to solve that problem(There are couple of products built/being built for problems from needgap).

I'm not saying I've solved the issue of validating problems, far from it. I think I now have a direction towards understanding the 'language, grammar of problems and startup ideas' which might one day result in making validation easier.

[1][https://needgap.com](https://needgap.com)

<comment><USER4> I really like the site. At the same time I think you could optimize comment display. I don't understand who is replying to whom. How are Threads sorted? Super confusing. Just copy HN, done. And: I don't get how the front page items are sorted. By activity?!

<comment><USER3> Thank you. Improving comment thread is on my TODO list and would be addressing it soon.

As for the front page ranking algorithm, it's similar HN/Reddit's Hot but the difference is that the problem/need gap karma is visible only to the creator of that post and the comment karma is visible only to the commenter although the profile karma is visible to everyone. This was done to limit populism, limit discouraging those who might post a problem which could be perceived as 'small', limiting hive behaviour and for the general health of the community.

You can read more about karma on needgap here - [https://needgap.com/problems/2-contributor-guidelines-for- ne...](https://needgap.com/problems/2-contributor-guidelines-for-needgap).

</comment></comment></comment></comment><comment><USER5> Two classic books that are fast reads and will also help you are 1) The Launchpad (about YC) and 2) The Lean Startup. Both are old books but they cover many of the same concepts and ways of thinking.

I'd add that if you do nothing else, read the first 3 chapters of The Mom Test; it provides a great overview for evaluating ideas.

<comment><USER6> Meh, The Lean Startup is a bunch of "our VC funded company did a lot of bla bla bla" with very little detail or actionable information. It could have been a blog post or two.

I'd love some book recommendations with actionable info and with actual details on how to execute.

<comment><USER7> "E-Myth - Revisited" is very good as an "operational handbook". Basically "systematised" everything and don't do "special request/things" for customers, since most of the time they are not repeatable by other branches or members of staff and get buy-in (for your vision) from your employees. There are many more practical lessons in there.

</comment></comment></comment><comment><USER8> I see The Mom Test recommended anywhere. Can anyone shed some light into what other information it contains other than "focus on the problem (not your solution) and explain things simply and concisely enough that your mother could understand?"

<comment><USER9> I'll summarize the book in one sentence so you don't have to read it:

'When talking to customers, ask about their current behaviors rather than hypotheticals (e.g., 'would you buy this').'

I have 20 years of experience in conducting customer discovery interviews professionally, so I found the information in the book to be incredibly simplistic and sometimes misleading or incorrect. I get frustrated every time I see it recommended as some kind of bible for startup founders doing discovery...

<comment><USER10> What information in The Mom Test would you say is misleading or incorrect?

<comment><USER9> As one, he says surveys are 100% useless, which is not entirely correct (there is a time/place for them).

Second, he says customer interviews must be face to face to be valuable. That is patently false, and even dangerous. In a face to face setting many people feel social pressure to conform and there is a strong interviewer bias. A mix of in-person and online methods is essential to get an unbiased read.

I'm on vacation right now, otherwise I'd spend the timing outlining my many criticisms of the book...

<comment><USER10> Makes sense. Agree with what you're saying, that surveys can have value and customer interviews can be valuable even if not face to face.

Would love to hear more of your thoughts sometime after you vacation.

</comment></comment></comment></comment></comment><comment><USER11> Probably drop the surveys and replace them with a sign up page. Surveys are low quality. Individual conversations will tell you more, and a sign up page requires action / intent (you can raise the bar as high as you like to increase confidence).

<comment><AUTHOR> Yes, surveys are low quality. But personally I find that if they're well designed then you'll get more data out of them than you would a sign-up page. And there are always plenty of people out there who are happy to do an anonymous survey, but not give you their email address. Sometimes that's the best data. You would miss that with asign-up page.

<comment><USER11> If they don't want to give you an email address, they don't care about your product. That's great feedback that the hypothesis is wrong.

</comment></comment></comment><comment><USER12> It's a good start! You might want to take a look into the books "Business Model Generation" and "Running Lean" (and follow-ups for both). The first one comes out of science and is the state of the art tool to reason about your business. The second roughly follows a similar approach but tries to be even more practical.

Both companies also provide digital tools and I'm thinking about building one, too. Hey, we can take this post as an early experiment and see if someone is interested!

<comment><USER13> I read Business Model Generation and found it super hand-wavy and not very helpful/actionable at all. YMMV but I really disliked it.

</comment></comment><comment><USER14> Looks like a book ad.

<comment><AUTHOR> Ha! I promise I don't receive a penny from the sales of the book. I wish I did, given how much I've recommended it over the years...

<comment><USER15> Totally reads like an ad, actually I verified whether those were affiliate links or not.

<comment><AUTHOR> Interesting. I clearly need to dial back on my enthusiasm for it, then!

</comment></comment></comment></comment><comment><USER16> Simple idea that can't be repeated enough times: you don't convince customers to want your product. You show them how it solves a problem that they care about.

The simplest form of validation is to sell something to a few people. If you can do that you have some proof of a problem to be solved, and you usually get questions along the way that can help you develop the idea further.

</comment><comment><AUTHOR> I'm spending time refining this, so would be genuinely interested in any feedback, or ways to improve.

It's absolutely not the finished article, and intended to be quick and deliver results.

<comment><USER17> Enjoyed reading it, and also your writing style in general. Am saving the article in order to refer to when I start developing my new product idea. I have a genuine question, and maybe two further "optional" comments to offer since you're explicitly soliciting feedback.

The question: is there a distinction to be made between "startup" and "product"? How, if at all, would you change your process for a simple product idea, like, say, a new kind of umbrella?

As for the optional comments, I did find the "Read a book" a bit jarring in the bulleted steps of the process -- it is unlike the other steps in that you don't do it again and again for every single startup idea you might be evaluating, and so not really part of a process associated with each project.

<comment><AUTHOR> Thanks for the comments, and kind words!

The difference between startup and product is simple, and it's something I'm guilty of conflating (along with many others). The product is what you're selling, and the startup is the organisation built around it to bring it to market. I should really have used the word Product instead of Startup.

Thanks for the thoughts around the Read A Book bullet point. Yes, I think it could do with being re-written!</comment></comment></comment>


Show HN: MUI – Lightweight CSS Framework for Material Design - <AUTHOR> https://www.muicss.com/?a=2

<comment><USER2> The merits of the wonderful library aside, this is the first Material Design webpage that I visited that doesn't come from Google and actually feels usable.

There is no clunkiness, there is calm, the components have material properties only to the point it makes sense, layer shadows are not as obnoxious as they need to be on a mobile device.

And the library works with React.

</comment><comment><USER3> I believe that the Material Design library from Addy Osmani is coming out today [https://twitter.com/addyosmani/status/616394496159432704](https://twitter.com/addyosmani/status/616394496159432704)

<comment><USER4> [http://www.getmdl.io/](http://www.getmdl.io/)

</comment></comment><comment><USER5> I'm impressed, async JS, react examples, small size, has tests and includes email templates!

I'll keep it in mind and I'll definitely give this a try next time I need something lightweight but pretty.

</comment><comment><USER6> There is some screen tearing or refresh problesm when scrolling this page in Firefox 38.0 - [https://www.muicss.com/docs/v1/css- js/buttons](https://www.muicss.com/docs/v1/css-js/buttons) \- not a problem under Chrome.

Linux + Cinnamon, a custom ubuntu version.

<comment><AUTHOR> What are the symptoms? Please shoot me an email with more info! (firstname.lastname@example.com)

<comment><USER7> On ff with xubuntu lots of sites tear, never figured out why though it's worse with proprietary drivers.

<comment><USER6> Hey andres, noir_lord's explanation is probably what's going on with my machine.

<comment><AUTHOR> Great, thanks for the info. If there's anything I can do on my end, let me know.

</comment></comment></comment></comment></comment><comment><USER8> I've been pretty happy with [http://materializecss.com/](http://materializecss.com/)

It doesn't use React out of the box, but wouldn't be hard to integrate.

<comment><USER9> I also use materializecss after having tried many others. It's the best!

</comment></comment><comment><USER10> Previous HN discussion [https://news.ycombinator.com/item?id=9136996](https://news.ycombinator.com/item?id=9136996)

"Sign up for product alerts" ... Can we not?

<comment><USER11> Why does this bug you so much? You aren't being coerced into giving up your info like many sites do before allowing a download.

It is an opt-in box. Don't like it? Don't opt-in

<comment><USER10> The way that it appears out of nowhere. Pop-ups are a forced interaction anti- pattern.

</comment></comment></comment><comment><USER12> This looks similar to [http://material-ui.com](http://material-ui.com), which also uses reactjs.

</comment><comment><USER13> How about this? [https://medium.com/google-developers/introducing-material- de...](https://medium.com/google-developers/introducing-material-design- lite-3ce67098c031)

</comment><comment><USER14> Is there a compatible browser list?

Found it on github:

        IE10+
        Latest Stable: Firefox, Chrome, Safari
        iOS 6+

</comment><comment><USER15> Way close of a name to MIUI.

</comment><comment><USER16> I really wish every material design UI framework didn't look the same

<comment><USER17> ... What exactly are you expecting out of a framework incorporating a set of guidelines?</comment></comment>


Do out of the box user management tools exist? - <AUTHOR> I have a database (cloudant) with account info and other things that would typically be stored in a database for an application. I can go build a custom admin portal to access the database for business users to "approve" users or add/change information - but I was hoping there would be tools that can connect to a database and provide a simple interface for CRUD actions to admin users.<p>Does anything like this exist in the market today? <comment><USER2> Maybe AWS Cognito?

<comment><AUTHOR> Thanks for your response. That's just for authentication though, right?</comment></comment>


Nvidia RTX 2080 and 2080 Ti review: A tale of two very expensive graphics cards - <AUTHOR> https://arstechnica.com/?p=1376695 <comment><USER2> I am interested in upgrading my GPU. I am a bit disappointed on the performance of the 2080 for most games out now, but the future could be very pretty! The 2080TI seems real impressive, but that cost makes my eyes water a little. I suppose I will hold out a little longer and see what AMD releases next.

<comment><USER3> It honestly doesn't seem like a large enough performance jump when you consider the price jump as well - last gen you could get a 980 Ti's performance for a mid-range cards price, but now you get a little more than a 1080 Ti's performance... for the price of a 1080 Ti. Seems like a weird shift. They've expanded the price range, but not the value. I'm glad I picked up a 1070 at the very beginning of its life, seems like it was the perfect time for that (before the Bitcoin craze).

I really hope that AMD keeps up this generation - the Vega's were too little too late - you shouldn't be going toe to toe with NVidia a year after NVidia's cards come out at the same price point. I would much prefer an AMD card though - AMD seems much less user hostile, and if I'm going to lock myself into a display I want to lock into one that doesn't cost me hundreds of dollars more for the same product. It would make me incredibly happy to be fully AMD for my next PC build (I ran AMD chips since the 486-66 days until intel's "i" series), but only time will tell if they can get their act together this year and actually compete in the mid-high end space.

<comment><USER4> It's for people who want the best 4k gaming experience. As shown in the benchmarks, at 1080p, it really isnt beating the previous cards by much. If you are the kind of guy who can spend a lot of money on a 4k monitor, you probably are going to want a card that can drive that. If you are only doing HD, then yeah, a 1080/1070 will be great. They charge the premium because they know nothing else can do 4k like the 20 series.

<comment> saiya-jin You are right, but there also lies a problem - even 2080ti pulls barely 60fps at best _today 's_ top games, sometimes not even that. Meaning games whose development started around the time when 1080 were introduced. The new ones will be much more demanding, and even if more clever antialiasing helps, that's only small part of performance.

I mean, 2080 is +- on par with 1080ti - this is 3 years of development in top graphic card segment? For sure it will find its buyers, but this group will be tiny - pro gamers, people who have too much money, and maybe once there are some proper VR games then vive pro/oculus.

I am currently looking for an update over my old 760 gtx, but since I play in 1080p (actually 1200p), I think 1070 will suffice. Anyway for the type of single player games I play it will be enough in details for years to come. And the simple fact is, after 1 hour of gameplay I don't care much about some details.

<comment><USER3> > You are right, but there also lies a problem - even 2080ti pulls barely > 60fps at best today's top games, sometimes not even that. Meaning games > whose development started around the time when 1080 were introduced. The new > ones will be much more demanding, and even if more clever antialiasing > helps, that's only small part of performance.

The problem here is that the 2080ti's performance increase is proportional to it's cost increase - we've really gained no more bang for our buck, they've just given us a bigger buck to spend, which is fine if you have it, but I'll bet most people won't. The fancy new AA is just a great way for NVidiia to spread the gap a bit to make it look more worthwhile to buy these new cards - without it nobody would be impressed by the performance.

> I am currently looking for an update over my old 760 gtx, but since I play > in 1080p (actually 1200p), I think 1070 will suffice.

The 1070 is a rock solid card, but I'd probably wait to see where the 2070 sits on the price performance curve. The 1070 would be a HUGE upgrade from what you have right now, but assuming that the 2070 isn't priced like a 1080 of last gen it could be a very solidly performing card for a rational price (assuming they didn't price this one up to match whatever equivalent it has for last gen), and give you just that much more room to stretch out your next upgrade. I normally hate the "wait until the next gen comes out" philosophy as there's always a new gen coming, but this seems prudent as I imagine we are ~ 1 month away.

<comment> saiya-jin Thank you, that's a solid advice. 1 month of extra wait doesn't mean much when release cycle seems to be around 3 years these days.

<comment><USER3> Looks like the release date for the 2070 is Oct 20th, so if all else fails, check out the landscape in regards to benchmarks and stuff as it gets closer - and if you buy 2nd hand I betcha a bunch of cheap 1070's will pop up as well. I just don't know if the major retailers will get rid of all their 1070 stock before the 2070 launches, that could be a problem. New Egg still has a ton of 1080's up and the 2080 released today, so I imagine you'll be safe.

And yeah, it's now a 2 or 3 year cycle, totally worth a bit of patience.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> RTX 2080 Ti memory: 352-bit 14GHz 616GB/s :-O

14GHz memory! :-O

<comment><USER6> I'm curious how they can even operate a chip that quickly in production, or are they referring to some internal-to-GDDR6 bus that doesn't actually connect to the GPU?</comment></comment>


DHS orders agencies to adopt DMARC email security - <AUTHOR> https://www.fedscoop.com/dhs-orders-agencies-adopt-dmarc-email-security/ <comment><USER2> From [https://www.cyberscoop.com/dhs-dmarc- mandate/](https://www.cyberscoop.com/dhs-dmarc-mandate/) :

> By Jan. 2018, all federal agencies will be required to implement DMARC > across all government email domains.

> Additionally, by Feb. 2018, those same agencies will have to employ > Hypertext Transfer Protocol Secure (HTTPS) for all .gov websites, which > ensures enhanced website certifications.

</comment><comment><USER2> DMARC: [https://en.wikipedia.org/wiki/DMARC](https://en.wikipedia.org/wiki/DMARC)

[https://dmarc.org](https://dmarc.org)

</comment><comment><USER2> Requiring TLS (and showing an unlocked icon for non-TLS-secured emails) would also be good.</comment>


Show HN: AI Powered Career Coach and Job Board - <AUTHOR> https://productjobs.io <comment><AUTHOR> I wanted to learn about NLP and text analysis. I'm using the idea of a better job board as a way to learn about this.

I'm using AI-powered text analysis to review each job description and pull out keywords specific to the world of product management. I match these against a corpus of career advice for each keyword. I assemble those career advice snippets into a custom job-specific interview guide.

I'm focused on PM because I have domain expertise there. However, this concept could extend to other job sites.

I think there is a value proposition for both job seekers and recruiters. Job seekers receive tactical advice on how to succeed during the interview process. Recruiters hopefully see a better quality candidate come through the door.

Would love feedback - positive or negative. Not sure how to get the word out and would love some advice there. I don't have an ad budget.</comment>


Are we on the road to civilisation collapse? - <AUTHOR> http://www.bbc.com/future/story/20190218-are-we-on-the-road-to-civilisation-collapse <comment><USER2> I find it amusing, how Hollywood movies concentrate on factor "external shocks" (alien invasion, diseases,...), ignoring the other factors. Usually in the movies, the problem(s) then gets fixed with the use of nuclear weapons, technology or other science fiction magic. This reenforces the narrative of "even if shit hits the fan, we can still fix this eventually". It neglects carelessly the real dangers of climate change, complexity, environmental degradation and the history of human failure, as described in the article.

<comment><USER3> We need more disaster movies where we just lose. Ecological collapse, climate change, mass migration, drought and famine, etc.

</comment></comment><comment><USER4> yes, it is just whether it is 10 years or 100 years or 1000 years, etc.</comment>


Zynga debuts new Facebook game: Adventure world - <AUTHOR> http://m.techcrunch.com/2011/08/30/zynga-debuts-newest-facebook-game-adventure-world/

<comment><USER2> Am I the only one tired of Zynga? I have pretty much stopped using Facebook because most people are sharing their games' requests (yeah, I can block each game... I just would love to block all games and other mindless apps).</comment>


Adafruit: Exclusive Interview with Fred Dart – CEO of FTDI - <AUTHOR> https://blog.adafruit.com/2016/02/08/exclusive-interview-with-fred-dart-ceo-of-ftdi-ftdichip-ftdi-adafruit/ <comment><USER2> I think that was the most straight-up and honest answer I've ever seen a chip company CEO give to questions on their policy decisions.

The interesting bits for me were 90% of the problem is "cheap arduino clones" and "we've never had a problem with large distributors".

</comment><comment><USER3> Context:

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

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


Snail mucus facials are the next big thing - <AUTHOR> http://www.theguardian.com/money/2015/jan/28/snail-mucus-facials-thailand

<comment><USER2> s/next/last/g. I live in China, this stuff is old-hat.</comment>


Verily to build a high-tech rehab center in Ohio to address opioid epidemic - <AUTHOR> https://www.theverge.com/2019/2/6/18213924/verily-opioid-rehab-center-onefifteen-health-science-ohio <comment><USER2> Ok, so I don't know a ton about this, but it feels like the wrong solution. We know how to effectively treat opioid addiction through things like methadone or more modern equivalents, and those can be broadly deployed across the country. We also desperately need policy changes and huge, huge changes to how these things are prescribed (which this won't help).

Unfortunately, these things are decidedly low-tech solutions so there can't be nice articles in the verge about them.

<comment><AUTHOR> Methadone is definitively not the answer. All that does is transfer the addiction to something else in addition to forcing people into a lifetime of payment for that transferred addiction to pharmaceutical companies.

This is exactly why something like what Verily is doing is absolutely great in my opinion. There exists methodologies to break down addiction that do not rely on substance transferrance, and all we need to do is get a large enough sample set to identify and distill these trends into a working methodology.

<comment><USER3> Methadone is a very good answer although there is a lot of bad news about here and there- mostly on the internet. Methadone allows addicted people to control that addiction and reduce thier needed dosage milligram by milligram without feeling withdrawal pain. Methadone clinics are a great thing to know about just in case. If you read this and you understand about opiod addiction or even if you have just picked up a new habit, or know someone who has- send them to the nearest methadone clinic and I guarantee that the clinic will be able to help them to " live life again"

<comment><AUTHOR> That is definitely the picture they try and sell you, I don't disagree with you about that.

Look at the statistics on successful methadone withdrawal and their timespans though. Since you're a throwaway account, I'm sure you probably won't respond, but I encourage anyone interested in taking a look at the figures for yourself. The reality is that methadone is much more profitable than it is successful at curing patients of drug addiction.</comment></comment></comment></comment>


My Graduation Speech by Neil Postman - <AUTHOR> http://www.ditext.com/postman/mgs.html

<comment><USER2> Good, but...

Essentially he closes by saying "Well chances are most of you will end up self centered layabouts, but I hope that just maybe it wont work out like that. Even though it probably will. Sorry"

Perhaps not fully inspirational :)

</comment><comment><USER3> You should check your facts.

China had writing and philosophy well before Athens.</comment>


Here's the Classified Letter About Russia Democrats Sent After Trump Was Elected - <AUTHOR> https://www.buzzfeednews.com/amphtml/jasonleopold/heres-the-classified-letter-about-russia-senate-democrats <comment><USER2> Non-amp link: [https://www.buzzfeednews.com/article/jasonleopold/heres- the-...](https://www.buzzfeednews.com/article/jasonleopold/heres-the- classified-letter-about-russia-senate-democrats)</comment>


Ask HN: Any good books for an inspired, curious, but wannabe innovator/genius? - <AUTHOR> I'm no genius, but I get awfully excited at the prospect of innovation and discovering new ideas/concepts (think Elon Musk)... Though I feel completely limited and bound to my lack of deep knowledge in certain areas such as computer/neuro/social/any sciences.
I'm good at my work, but it does not inspire me. And what does inspire me, I am not good at. I feel as if by the time I become relatively decent at it, its progress would've have grown as much as, or further, than I.
Any good books, or advice, to help escape this limbo?
I don't want to invest my life/time/finances into Education. <comment><USER2> Hey you had a really good post that was remarkably unpretentious and straightforward. Ugh I think of all the questions on Quora like "What books should I read to become a huge success / be the best digital marketer!".

So first I would look at anything by Henry Petroski. The "Invention of Design" and "Pushing The Limits" are pretty inspiring.

A trend I notice is that a lot of great books are published before 1990, specifically in the years 1950-1990. I think this was because there was enough knowledge to make great material, but the bloodsucking consultants hadn't descended on the publishing industry yet to fashion themselves into a "thought leader" by writing a book of extremely questionable value.

Some more titles are (only 1 published after 1990):

\- A Clockwork Muse by Martindale \- The Art of a Scientific Investigation by Beveridge \- Consilience by Wilson \- The Act of Creation by Koestler

Finally I would recommend "Notebooks of the Mind". Don't know why I just thought of it but it's the best book of the bunch I recommended.

</comment><comment><USER3> I highly recommend "The Innovators" by Walter Isaacson. It dives deep into the history of computer science and the people who made huge innovations into the things that we use every day.

I read it when it came out and was really inspired.

[Link to Amazon] --> [http://amzn.to/2zINlfi](http://amzn.to/2zINlfi)</comment>


10 Interview Questions Every JavaScript Developer Should Know - <AUTHOR> https://medium.com/javascript-scene/10-interview-questions-every-javascript-developer-should-know-6fa6bdf5ad95 <comment><USER2> Classical inheritance is rarely "an appropriate choice" but prototypal inheritance is appropriate "any time you need inheritance"? Classical inheritance is syntactic sugar for prototypal inheritance.</comment>


Girl Went Through Abstinence Ed; as a Woman, Trying to Understand the Damage - <AUTHOR> http://www.motherjones.com/politics/2016/03/abstinence-education-tennessee-sex-ed-virginity-pledge <comment><USER2> _" Despite the apparent failures of the abstinence approach to sex ed, half of all states now embrace it, and the trend shows no sign of abating."_

That's because today lawmaking is devoid of facts. It's all about ideology, i.e. what I want to believe will happen whether it happens or not, than about reason to measure and analyze what happens and modify our approach accordingly. This is the essence of Dark Age thinking.</comment>


House Votes To Boost Tax On Carried Interest - <AUTHOR> http://www.pehub.com/57814/house-votes-to-boost-tax-on-carried-interest/

<comment><USER2> Could someone a little more savvy in tax law explain what this means? I wasn't sure what exactly carried interest is, I found this on Wikipedia:

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

Not sure how carried interest differs from dividends. Will this just require different structuring of payouts to get lower tax rates, or does this fundamentally change investing strategies?</comment>


Technics SL-1200G costs $4,000 because original manufacturing tools "were gone" - <AUTHOR> http://www.whathifi.com/news/technics-explains-sl-1200g-price-and-hints-cheaper-turntable <comment><USER3> Another famous example of losing the manufacturing process and tools is FOGBANK -- a classified component used in nuclear weapons:

From [https://en.wikipedia.org/wiki/FOGBANK](https://en.wikipedia.org/wiki/FOGBANK) :

      It was soon realized that the FOGBANK material was a
      potential source of problems for the program, as few
      records of its manufacturing process had been retained
      when it was originally manufactured in the 1980s, and
      nearly all staff members who had expertise in its
      production had either retired or left the agency.

</comment><comment><USER4> Audiophile world it's an expensive and I would risk to say hard-to- justify/define one.

I do like to hear music and after buying several more and more expensive earphones/headphones you come to see it's just about certain signature on the music... or in layman terms... EQ.

I used to research more and more in forums like head-fi but suddenly you realize there is no way to translate, measure or get an agreement on what things mean, e.g.

> _good texture and detail, not particular sweet in tone but good in vocal. > Treble is decently crisp and clean, but rolls just a tiny bit off on the > very top of the spectrum, over the 16kHz region. Bass extends decently low, > but slowly rolls off in the sub-bass region_

With that said, I find hard to believe digital "always the same" encoded music is inferior to this analog-vinil-trend...

<comment><USER5> +1, once you start getting into the >$500 realm especially, it's more taste than one thing being definitively better than another. There are also some great bargains to be had for headphones / speakers / IEMs that perform way above their price point. Brainwavs Deltas are one I've found recently, and I still love my O2 amp + ODAC combo. I've heard more expensive gear and it's not really worth it for me.

</comment></comment><comment><USER6> Bought my pair of 1200s about 20 years ago (wow! - it goes fast kids) - <USER2> used I think I paid $800 for both. Kept one cause I just like the equipment so much and I don't even spin anymore. Just a solid piece of equipment, real pro DJ gear.

It's sad though - in the same way that it costs $500 or whatever it is - to go to an NFL game nowadays (which I wouldn't know anyway). Anything of real high quality has to be priced out of reach of the average person. There's always Walmart for most of us I guess.

Not knocking Technics, what they say may very well be true, but I do miss the days when the best wasn't impossible to obtain for most of us.

Anyway, there's ebay and the original 12s. If you're into vinyl don't even play around.

</comment><comment><USER7> They won't fly off the shelves with all that added, unnecessary weight or cost. Oi vey.

<comment><USER8> For a product like this, the extra weight is a good thing.

<comment><USER9> For a product like this, so is the extra cost.

</comment></comment></comment><comment><USER10> How large is today's market for this sort of things?

</comment><comment><USER11> with limited run of 1200, all they will make is $4.8 million on sale. At best they're breaking even.

<comment><USER12> There's two models - the 1200GAE 'anniversary edition', and the 1200G. The GAE is a limited run of 1200, but the G isn't.

Given that the main difference between them is the material (magnesium alloy vs aluminium) for the topshell, most the tooling should be re-usable across both lines. So if they break even on the GAE, the G should provide quite a "long tail".

</comment></comment><comment><USER13> Url changed from [http://arstechnica.com/gadgets/2016/03/technics- sl-1200g-cos...](http://arstechnica.com/gadgets/2016/03/technics- sl-1200g-costs-3000-because-original-manufacturing-tools-were-gone/), which points to this.</comment>


The alarming threat of Zika virus - <AUTHOR> http://www.bbc.com/news/health-35370848 <comment><USER2> Beside by mosquito, apparently it can also be transmitted sexually: "In 2009, Brian Foy, a biologist from the Arthropod-borne and Infectious Diseases Laboratory at Colorado State University, sexually transmitted the Zika virus to his wife. He visited Senegal to study mosquitoes and was bitten on a number of occasions. A few days after returning to the United States, he fell ill with Zika, but not before having had unprotected intercourse with his wife. She subsequently showed symptoms of Zika infection with extreme sensitivity to light. Foy is the first person known to have passed on an insect-borne virus to another human by sexual contact.

In 2015, Zika virus RNA was detected in the amniotic fluid of two fetuses, indicating that it crossed the placenta and could cause fetal infection. On 20 January 2016, scientists from the state of Paraná, Brazil, detected genetic material of Zika virus in the placenta of a woman, who had undergone an abortion due to the fetus' microcephaly, which confirmed that the virus is able to pass the placenta."

[https://en.wikipedia.org/wiki/Zika_virus#Transmission](https://en.wikipedia.org/wiki/Zika_virus#Transmission)

<comment><USER3> In Brazil there were public recommendations for women about avoiding getting pregnant, specially in the NE region of the country.

In a terrible use of words, the minister of public health "wished" that every girl got the Zika virus before beginning her... hum... "mature period", so that she would be protect before having any possibility of getting pregnant.

<comment><USER4> Those don't sound like terrible words to me. That sounds like a rather practical approach. And he brings up an interesting dynamic. Perhaps this wave of birth defects is partially linked to mosquito eradication. With fewer bugs around, or at least people being bitten less often, fewer girls get the disease early. A childhood disease may be returning as something far more dangerous in adults, like chickenpox. That would seem a possibility worth investigating.

<comment><USER5> Brazilians generally believe that the disease was first introduced to the country last year, which contradicts the hypothesis that acquired immunity used to be common. (I was in Brazil three weeks ago and talked to several people about zika.) Here is an item from European health authorities that agrees that the disease is new to Brazil.

[http://ecdc.europa.eu/en/publications/Publications/rapid- ris...](http://ecdc.europa.eu/en/publications/Publications/rapid-risk- assessment-Zika%20virus-south-america-Brazil-2015.pdf)

Edit: the linked BBC article also states that it was first reported in Brazil in May 2015 (at least in recent years).

</comment></comment></comment></comment><comment><USER6> I'm totally terrified by this thing right now because my wife is pregnant. There's tons of mosquitoes here in Venezuela . She already got Haemorrhagic Dengue about 10 months ago.

The worst part is that because of the terrible state of the economy here, there's no insect repellent in the stores and no proper Zika test kits in the hospitals. The sanitary situation here is getting worse everyday (constant shortage of food and medicine).

Add to that the constant politization of everything, the govt hasn't even issued any infection figures or warnings.

I had to ask a friend coming from the US to bring some DEET repellent. But not everyone has the same opportunity.

<comment><USER7> Out of curiosity, what keeps you in Venezuela?

<comment><USER6> I ask myself that every day , especially now with a baby coming. 150% inflation in 2015 from January to September. Food and medicine shortages. Huge lines to buy food, diapers, baby formula.

Almost all of my closest friends have already left. I think about leaving every day. I am teaching myself programming and studying for CCNA , thinking that maybe I can get a job somewhere relatively quickly , even though I'm in my mid-thirties and have limited experience in those areas.

<comment><USER8> Keep up the good fight, keep at it and you can do it

<comment><USER6> Thanks for the encouraging words!

</comment></comment></comment></comment></comment><comment><USER9> This is getting serious here in southern Mexico, we just had a chikungunya outbreak a year ago and now this. These situations remind me of a talk given at Oscon Data by Steve Yegge about working on the things that matter[0]. Virus are complex and modelling molecular biology requires CS expertise, it's kind of sad that we're normally discussing the new JS frameworks instead of working on the hard(and important)problems.

[0] [https://www.youtube.com/watch?v=vKmQW_Nkfk8](https://www.youtube.com/watch?v=vKmQW_Nkfk8)

<comment><USER10> >it's kind of sad that we're normally discussing the new JS frameworks instead of working on the hard(and important)problems.

What gives you the impression that people contributing to JS frameworks have the potential to meaningfully contribute to "hard problems" in molecular biology ?

<comment><USER11> On the micro level, you're right.

On the macro level, the new generations of smart talented folks are choosing CS over other career choices.

<comment><USER10> >the new generations of smart talented folks are choosing CS over other career choices

Umm... he is arguing that CS is exactly what people should be focusing because CS (ML/data processing, etc.) applied to existing fields and data could lead to new insights - so more smart people going to CS is a good thing (at least according to Yegge).

My point is that CS has practically nothing to do with writing JS frameworks and frankly I doubt that most people doing JS development are the kind of people that could make significant contributions to CS or mentioned sciences - maybe a fraction of the top % - but JS is a low barrier to entry, easy to get simple things done, sufficient to solve real world problems like automating CRUD TPS reports - because someone needs to do that as well. I've had the misfortune of working with that platform - JS is by far the lowest quality ecosystem I've seen* (I never really got into PHP so I can't compare).

IMO Yegge makes a stronger point suggesting that data science people are being driven to "catbook" projects instead of "important stuff" \- but those people are not your everyday JS developers.

<comment><USER9> Correct, not everybody can do significant contributions to say molecular biology. My point is that we need more smart people working on the problems that matter and right now we have a lot of smart people working on [http://(buzzwords).io](http://\(buzzwords\).io)

</comment></comment></comment></comment></comment><comment><USER12> Another example case that could be solved by exterminating mosquitoes. We have the ability, and as best we know there would be little to no side effects. Humans are already drastically altering evolution and survival of the fittest, we might as well be smart about it.

<comment><USER13> Cost is the largest reason. While you're right in saying that we can exterminate mosquitoes, the question remains how costly that would be.

For example if we used the infertile male mosquito method, we'd need to bread billions of them and release them very carefully for maximum effect. That's do-able but a massive undertaking.

Plus we could spend tens to hundreds of millions of dollars on this (perhaps more) and have them spring back up a few years later just from a single missed colony (keep in mind they can breed in almost ALL still water, from a puddle, to a lake, to a water holding tank).

In the Americas you'd have to wipe them out in massive areas of jungle, every island, every country (even ones with bad relations), it is just mind boggling once you start thinking about it.

It is totally possible but would be the single largest human undertaking in our history.

PS - Indefinite population control might be more viable than literal extinction. Then you just release infertile males every season in the hopes of dropping their numbers in half or better.

<comment><USER14> With the possibility of being able to insert inherited traits via recent genetic advances, I believe more modern methods are looking at genetic combinations that are repressed in the parent, but lethal to any offspring (or cause infertility in offspring). [1]

[1] [http://www.bbc.com/news/health-35024794](http://www.bbc.com/news/health-35024794)

</comment></comment></comment><comment><USER15> The definition of microcephaly is actually head circumference less than 32cm (not 42cm - that's like the 99th percentile). Brazil changed their definition from 33cm during this event, so their case count includes some borderline babies.

</comment><comment><USER16> It's not only Zika, the Chikungunya [1] virus has also reappeared in Latin America, which is also spread by the same mosquito.

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

<comment><USER17> Chikungunya is a horrible malaise. It is very prevalent in India. While not deadly, it can cripple you for days and also leave lasting damage to joints in older people. Every adult in my family in India has gone through a bout of it. It is a recent phenomenon, viral-arthritis type diseases were rare till chikangunya made an appearance. I dread visiting India because of the widespread prevalence of this disease and dengue.

<comment><USER16> It's very prevalent in Mexico too, however it has mainly affected low and middle-low income families, my guess is that due to poor sanitation and the areas where they live (near likes and swamps). What about in India? Because from what I can infer from your comment it seems that is much more widespread over there.

<comment><USER17> The problem in India is that the poor and the rich don't necessarily live in very different sanitary conditions. In my experience, the situation is likely worse in poorer neighborhoods, but it is still very, very bad in rich neighborhoods. Unlike countries with similar economic development metrics, India is particularly filthy. So much so that, 'Swacch Bharat' aka 'Clean India' is a big effort by the current Government.

This study from Johns Hopkins University, for example details how the prevalence mosquito-borne fevers does not follow income/class: www.jhsph.edu/news/news-releases/2015/burden-of-dengue-chikungunya-in-india- far-worse-than-understood.html

To quote, " Researchers estimated that on average, 23 percent of those who have not yet been infected become infected by dengue every year, corresponding to roughly 228,000 infections per year in Chennai alone. "This rate of infection is extremely high, almost three times higher than in areas of Brazil and Thailand where transmission was thought to be high," says Rodríguez- Barraquer. They also found that the rate of infection in Chennai was similar in poor communities as in more affluent neighborhoods. The research is believed to be the first to systematically measure dengue and chikungunya infection rates in India. "If you don't understand the extent of the problem, you can't address it," she says. "

</comment></comment></comment></comment><comment><USER18> It seems that microcephaly is associated with onset of Zika during the first trimester of pregnancy. Considering the mild nature of the illness, couldn't the virus be its own vaccine? Could a woman proactively contract the virus while postponing pregnancy, in order to thwart it?

<comment><USER19> I expect the situation is similar to the flu: once you contract a strain, you develop immunity to that specific strain, but as soon as the disease, which is under highly selective pressure to mutate, mutates, you are once again susceptible to the new strain. It might work for a short while, but not a full pregnancy.

</comment></comment><comment><USER20> This is quite scary. Various countries now telling the entire population to stop having kids. There could be a lost generation effect.

</comment><comment><USER21> I live in Hawaii and last week saw the first confirmed case of Zika virus in the United States in a child born with microcephaly on the Big Island. [1]

The mother had recently traveled to Brazil and thankfully neither her nor the baby are infectious -- but, living in the tropics, it seems to be only a matter of time until we see mosquitoes carrying Zika here.

[1] [http://www.hawaiinewsnow.com/story/31007233/hawaii-health- of...](http://www.hawaiinewsnow.com/story/31007233/hawaii-health-officials- worried-about-potential-threat-from-zika-virus)

</comment><comment><USER22> A grandnephew of my wife was born with microcephaly, likely one of the first victims of Zika virus, when the surge of the birth defect was still not detected by public health.

I can just imagine the social cost of that -- how many persons in family will have to dedicate to care, work just to supply money for the necessary medical treatments, and/or losing professional opportunities because of this. I estimate the impact in 10:1.

</comment><comment><USER23> An illness that I thought was influenza just swept through my household and included pretty severe pink eye / conjunctivitis type symptoms. Are there any other viruses circulating North America that would have such symptoms? I live in the Sierra mountains where mosquitos are rare, so I find this all very interesting/confusing.

</comment><comment><USER24> The answer here seems obvious - DDT.

<comment><USER25> There's a weird urban legend going around that DDT would solve mosquito problems -- usually with the implication that environmentalists are evil for banning this terrific substance. You appear to have succumbed to this urban legend.

The story is just not true. DDT was banned not because of blind chemical- phobia, but because the molecule is way too stable. It stays in the food chain and environment for decades. Eventually, it builds up in certain predators and wipes them out.

There are plenty of insecticides which are perfectly usable, but without DDT's problematic stability. Stability does not help with mosquito control, so the lack of stability does not hurt effectiveness.

Consider the Silicon Valley. 150 years ago the land that Facebook is on was considered uninhabitable due to mosquitos. If DDT was that crucial to killing mosquitos, then mosquitos should have recovered in the 40 years since the ban.

[0] [https://en.wikipedia.org/wiki/DDT](https://en.wikipedia.org/wiki/DDT)

<comment><USER26> Stability is not a help with mosquito control? Of course it is. You can dust your dwelling and not have to treat again for a month due to the stability. It certainly is a benefit.

Yes, DDT builds up in organisms and can cause reproductive issues in some birds. The point the OP is trying to make is that we as a society decided that bird health is more important than human health.

And I'm not sure I understand your Silicon Valley example. The land that Facebook was on was drained and backfilled. No standing water, no mosquitos. What does DDT have to do with it?

<comment><USER27> Not. We banned DDT also because we care about human health.

There is evidence of adverse human health effects resulting from long-term exposure to DDT, including reproductive health effects at birth (preterm birth and low birth weight); growth reduction in boys, earlier puberty in girls and neurodevelopmental impairment in infants.

There is also evidence of neurotoxic effects in adults. Adverse pregnancies and breast cancer in women; and reduction in semen quality and development of pancreatic cancers in men.

Source: [http://www.sciencedirect.com/science/article/pii/B9780444522...](http://www.sciencedirect.com/science/article/pii/B9780444522726004554)

<comment><USER26> DDT was banned in 1972 in the US. The paper you cite is from 2011.

The fact remains that no pesticide is completely non-toxic. Compared to other pesticides, DDT is actually quite safe.

If you look at the wikipedia summary of the current position on long-term toxicity, you can see that it's not a settled issue.[1]

 _" Overall, in spite of some positive associations for some cancers within certain subgroups of people, there is no clear evidence that exposure to DDT/DDE causes cancer in humans."_

[1][https://en.wikipedia.org/wiki/DDT#Chronic_toxicity](https://en.wikipedia.org/wiki/DDT#Chronic_toxicity)

<comment><USER27> DDT intake in US peaked in 1965, but in Mexico was not banned until 2000 for example, therefore is relevant to have a recent review here. We have learned a lot and clearly linked the substance with lots of unwanted and undesired effects since 1972.

Women develop breast cancer typically around 50 years age ( the median age at diagnostics is 61) with around 230.000 new cases in US in 2015, and at a relatively stable rate (~12% of women). Thus we are far away to see the real results of DDT banning in US. Maybe we will not have a clear answer until 2022, when the women born in 1972 will reach 50 years.

</comment></comment></comment></comment></comment></comment><comment><USER28> Brazil can't get their mosquitoes under control. They have been struggling to eradicate Dengue (breakbone fever) for years. Health authority is too slow, too unprepared, and lacking budget. The government is corrupt and the people don't seem to care.

<comment><USER29> "people don't seem to care."

That's the real problem from which all others derive.</comment></comment>


Google RCS makes less sense than ever - <AUTHOR> https://hackernoon.com/whatsapp-has-launched-its-business-apis-now-what-8eadc05f9c11 <comment><USER2> Perhaps this article would be easier to read if they elaborated that RCS stands for "Rich Communication Services". Not everyone is going to know that offhand.

<comment><USER3> RCS is the primary Revision Control System for Unix.

[https://en.m.wikipedia.org/wiki/Revision_Control_System](https://en.m.wikipedia.org/wiki/Revision_Control_System)

</comment></comment><comment><USER4> RCS never made sense. It's a shitty, over-engineered spec made by telcos, for telcos, which will have the same problems as SMS and calls have (spam, etc) except instead of plain-text spam you'll now get "rich" HTML-like spam with all the security risks it entails.</comment>


Would you let a stranger read your DMs? You probably already do. - <AUTHOR> http://richardhenry.tumblr.com/post/1485762294/improving-twitter-oauth

<comment><USER2> I don't understand why anyone uses the DM functionality on Twitter except in the most extreme emergencies. Even if the security problem noted here didn't exist, Twitter DMs are always one character or click away from being accidentally broadcast to the world. Almost every day I see a misdirected DM in my timeline; almost every week there's a news story arising from a misdirected and sensitive DM. Do other people seriously have this much trouble finding an email address for someone?

<comment><USER3> Yeah, I stopped using DM for most things, and any time I do DM I make a mental note that it will probably be public.

</comment></comment><comment><USER4> Everything you write on the internet is publicly available and connected to you. All your tweets, all your Facebook status updates, all your forum posts from a pseudonym, all your 4chan posts as anonymous, and yes, even your email.

Learn this. Internalize this. Embrace this.

Because even in the few cases where that statement _isn't_ correct, in a short enough amount of time and with a very small number of security mistakes and lapses in judgement, it _will_ be correct.

<comment><USER3> Very well said. I should print this and put it on my wall.</comment></comment>


How the Atari ST Almost Had Real Unix (2011) - <AUTHOR> http://www.dadhacker.com/blog/?p=1383 <comment><USER2> It is possible to make VM work with the 68000, Masscomp did it but it was pretty brute force, they ran two 68000's in lock step with one just behind the other so when the first one faulted it stopped the other one and the other handled the fault. Something like that. Clem Cole would know the exact details.

They made for a pretty beefy machine, I ran ~20 users on one. That was when we had a pile students on a Vax 11/780, I had accounts on both and much preferred the Masscomp.

<comment><USER3> I think there were several manufacturers who used that trick. Apollo was another. That wasn't really an option for consumer-grade machines like the Atari ST, though, since 68000 chips were pretty expensive at the time (I think they were around $500 apiece when they were introduced). By the time the price came down the later 680x0 chips with real MMUs were available.

<comment><USER4> Wow. $500 for a 68000?!

<comment><USER5> I don't recall the COGs for the ST (they held this stuff pretty close), but in 1985, the 68000 CPU couldn't have been more than $50, probably less. Almost certainly _much_ less because the Tramiels were absolute wizards at making deals.

<comment><USER6> 1985 was 6 years after the 68K was reduced. By Moore's law, the cost of manufacturing should have been about 1/16th of what it was in 1979, so the volume price was probably around 1/16th of introduction as well.

<comment><USER5> Remember that everything on the ST was being costed in early or mid 1984, about a year before the ST shipped. (Which in retrospect was an amazingly compressed schedule...)

I think that the National 32032 would have beaten the 68K in cost; National was pretty hungry and willing to make good deals. But their chips were rather extremely very buggy (which the Tramiels may not have cared about, since making software engineers suffer was part of their model), but it was a relatively poor performer, clock-for-clock, and that made the hardware engineers go "ewwww" and after a while we software guys realized that National wasn't being invited over for meetings any more.

</comment></comment></comment></comment></comment></comment><comment><USER7> It should be noted that certain 680x0 Macintoshes could run a real UNIX, created by Apple no less.

[https://en.wikipedia.org/wiki/A/UX](https://en.wikipedia.org/wiki/A/UX)

What was unique about it was that it could run System 7 applications alongside your common System V/BSD tools.

I've still got a Quadra 800 at home running it.

<comment><USER8> It might be worth pointing out that there is a Macintosh II emulator built solely for the purpose of running A/UX.

[https://github.com/pruten/Shoebill](https://github.com/pruten/Shoebill)

A mirror of the well-known A/UX software repository, Jagubox, has been published at the Internet Archive.

[https://archive.org/details/25_12_2009_jagubox](https://archive.org/details/25_12_2009_jagubox)

<comment><USER9> > This will probably be the last release. I won't be able to work on Shoebill > going forward (by contractual obligation), so I wanted to race out one last > release.

Really sad that companies put these kinds of restrictions on their employees...

<comment><USER7> Well considering that the author went on to work at Apple, it sort of makes sense. I don't think he was explicitly told not to continue development, but it is likely that some sort of boilerplate part of his contract restricts him.

<comment><USER10> I don't think it makes any sense, and the fact that it's a boilerplate clause everyone gets makes it worse, not better.

Employers really need to stop trying to control what their employees do while off the clock.

<comment><USER11> The project depends on reverse-engineering proprietary (if archaic) Apple hardware/software. Do you think Microsoft would/should allow their employees to contribute to Wine? Or Nintendo employees working on open-source emulators?

<comment><USER10> Do you think I should allow you to drink tea? You'd probably say, "you can't allow or disallow that, you don't have that power." That's what I think Microsoft's position should be with regard to their employees' free time.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> This came about after Sun and AT&T decided to standardise the Unix industry on SVR4. Having lots of cheap Atari, Amiga and other micros running SVR4 would have helped it dominate the industry. In theory, at least.

This prompted DEC (Ultrix), HP (HP-UX), IBM (AIX) and other companies to band together to develop their own standard Unix, which was OSF/1 (Open Software Foundation, or as Scott McNealy said, "Oppose Sun Forever").

This kicked off another round of Unix Wars, which was no doubt much appreciated in Redmond, where Windows NT was being developed.

The Atari SVR4 was ported by Unisoft and there's a video of it booting on a TT 030 workstation (which had a 68030). [https://vimeo.com/100657320](https://vimeo.com/100657320)

I was at the Atari Unix SVR4 (pre-)announcement at CeBIT in Germany, but it's so long ago I've forgotten the details.

<comment><USER13> > "Having lots of cheap Atari, Amiga and other micros running SVR4 would have > helped it dominate the industry."

For those that are interested, SVR4 was released for the Amiga. It's a shame Commodore's management blocked it from reaching its full potential.

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

</comment></comment><comment><AUTHOR> I'll just add that I found the author's story of how he started working at Atari in the first place[1] far more interesting than the present article.

[1] - [http://www.dadhacker.com/blog/?p=987](http://www.dadhacker.com/blog/?p=987)

<comment><USER12> Many thanks for that link: it's a great story.

</comment></comment><comment><USER14> So essentially he re-invented segmented memory for memory protection purposes. Neat hack!

There was a brown box at the time, iirc by Torch (?) that ran a version of Unix on a 68K. Does anybody know which machine that was?

The 6809 OS that was 'unix like' referenced in the comments is about OS/9.

[https://en.wikipedia.org/wiki/OS-9](https://en.wikipedia.org/wiki/OS-9)

Which is a really neat little OS that you can run on the TRS-80 CoCo and the UK clone of it called the 'Dragon 32'.

<comment><USER5> I knew about segmented memory. But base/bounds was too expensive and slow.

The trick was to make it work without requiring an adder -- and subsequent carry propagation delay -- in the data path. Thus, "one gate delay" and simple replacement of address lines, and a simple "all zeros or all ones" check on the bounds, rather than a numeric comparison.

<comment><USER14> The reason I call it 'segmented memory' is that that is more or less exactly the same but this does not have the addition penalty. Super neat :)

I ran into a related problem, I had a need to drive a whole pile of IO and only an 8 bit centronics port to work with (on the ST as well). So I ended up making a little demultiplexer using 4 bits of the 8 as address and the remaining 4 as data. The strobe was used to latch the data. Not super but it worked well enough to let the 68K drive stepper motors in real time near their maximum working frequency (30K steps / second or so).

The ST was a fascinating machine, lots of ports, relatively cheap and with all kinds of limitations that continuously drove the users to creative hacks. I loved that time. Thanks a ton for all your work.

Oh, one more for the road: we had a product that was copied quite frequently and obviously wanted to make that a bit harder. There was no budget for a dongle so in the end I looped one of the 8 bits of the port back to an input. If that wire wasn't present the software would exit with an 'out of memory' error :) Threw the copyists for a loop because all I did on not finding the wire was allocate all the remaining memory which would then cause a TOS Bomb on the _next_ memory allocation, which could happen just about anywhere. Nasty little trick.

</comment></comment></comment><comment><USER15> Great story. This machine was remarkably capable for it's time and age for both business and personal use. I was lucky enough to spend a few years with this machine as my primary, only can imagine if I was exposed to unix on top of the graphic, digital creation and other tools.

<comment><USER16> When you consider what the Atari ST, Commodore Amiga and Acorn Archimedes were capable of in the late 80s and early 90s, you see how little progress we've really made.

<comment><USER17> I had an Atari St something(1200?) in college. I never told any of my professors, or classmates about my computer. I literally felt like I was cheating.

I was afraid someone would detect the matrix print, but no one ever questioned my papers. I did have professors bleed red all over my papers though. My grammer was just horrid. My spelling was great though.

In one English class, a student plugged in a laptop(it was the size of a small suitcase) into a electrical socket. The teacher made some demeaning comment to the student. It was someting like, 'I never thought I would see the day where a student plugged in a computer? Ugh?' I remember thinking that student has some balls, but has a great tool at his disposal. Never liked that English teacher. He accused me of plagiarizing once--in a weird round about way. Ah, back then teachers had a lot of power. They could ruin a student's future.

I remember trying to get my girlfriend interested in my Atari. She was paying 2 dollars a page for someone to type her papers. I showed her the word program. I showed her the Paint program. She didn't like anything about the machine. She didn't even want be near the machine. She is now some big wig at some hedge fund. Her official title is chief of web technology, or something along those lines. I haven't gone one day where I haven't thought about her. Crazy?

I look back, and I couldn't get anyone interested in my computer. It was like people just hated them? Couldn't figure out why. I wasen't a big tech guy either, and only used the word processing program. I remember thinking, I guess the computer thing will never take off. I was so wrong.

I remember my last visit to the retail store that sold me the Atari, and I could tell they were about to close up shop. My last memory is of a big guy with a beard, and he looked so depressed. All the computers were nicely displayed, but no customers. They even turned off the shopping music. There was this weird silence, and a feeling of doom. I think the shop stayed open a few more weeks, and it turned into some shop that made custom doors?

Looking back, I just have fond memories of my college girlfriend. I wish I treated her better. I think I have holiday blues?

<comment><USER14> > My grammer was just horrid. My spelling was great though.

I'd say it was the opposite ;)

</comment></comment></comment></comment><comment><USER11> The author comments here at HN pretty often: [https://news.ycombinator.com/threads?id=kabdib](https://news.ycombinator.com/threads?id=kabdib)

</comment><comment><USER18> Site's down; cache: [https://webcache.googleusercontent.com/search?q=cache:http%3...](https://webcache.googleusercontent.com/search?q=cache:http%3A%2F%2Fwww.dadhacker.com%2Fblog%2F%3Fp%3D1383)

<comment><USER5> Sorry, it's on GoDaddy. Every once in a while my blog gets popular and . . . well, I guess I should move it off of GoDaddy.

</comment></comment><comment><USER19> > "[What's that about Linux? Dear child, Linus was probably not out of > whatever they use for high school in Finland."

I think not even that... I think Atari ST came out in 1985 and if I remember right, Linus started working on Linux in 1991, so not even in the picture at that time.

<comment><USER20> Linus had Sinclair QL at the time, also Motorola 6800x, sadly x was in wrong place making whole computer a pile of garbage

</comment></comment><comment><USER21> PCs were too weak to run UNIX in the 1980s. MicroSoft was the vender for Xenix, a 16-bit UNIX. It was so slow compared to PDP 11 UNIX. 32 bit x86 CPUs and Linux came out about the same time in the early 90s- a successful marriage.

<comment><USER22> Ah...Microsoft and Xenix. Those were responsible for the most annoying meeting I have ever been forced to attend.

When AT&T and Sun were doing their joint Unix stuff with SysVR4, they had a deal with Microsoft to add 286 Xenix compatibility. Microsoft contracted with Interactive Systems Corporation (ISC) in Santa Monica, CA, to do the work (which made sense, because as part of ISC's contract to do the 386 port of SysVR3 for AT&T, ISC had done a 286 Unix binary compatibility system).

I worked at ISC at the time, and the 286 Xenix compatibility was done by Darryl Richman and myself. At one point Microsoft told us that there was a serious issue that had to be decided, and it was too important to handle over the phone or email. They wanted both Darryl and I to fly to Redmond. This annoyed me, because I strongly avoid flying [1]. (During the flight, though, I did see something interesting. Over Northern California I saw a black aircraft very rapidly ascending. As far as I could tell, we were at around the right latitude for Beale AFB, which was a major starting point for SR-71 and U-2 spy missions, so one of those could have been what I saw).

So we finally get to the meeting, and they bring up the massive issue that could only be dealt with in person. There were one or two differences in signal behavior between Xenix and SysVR4 that could not be taken care of in our user mode code. They would need to add an option to the kernel to switch to Xenix behavior for programs running under our Xenix emulator. That was no problem--they knew how to do that.

What they did not know, and needed this urgent face to face meeting to discuss, was whether the interface to that option should be an ioctl or a new system call.

WTF!?

We told them to go with an ioctl (if I recall correctly), they said that would be fine, and the meeting was over.

If that wasn't annoying enough, when the project was done Microsoft said they were very happy with the results and they expressed this by sending Darryl a bunch of free Microsoft software.

They sent me nothing.

Now if Darryl had been the project lead or principle engineer or something like that on the project, that would have been fine. But we were equal...and I actually was the more experienced in that area because the 286 Xenix emulation was based on the 286 Unix emulation which had been done by Carl Hensler and me.

[1] I believe everyone is allowed, and should have, one stubbornly irrational fear, and I picked for mine flying on aircraft that I am not piloting.

<comment><USER23> I ran Interactive UNIX on a 16MB 386 in the late 80s, it was a nice OS.</comment></comment></comment>


RIP TDD - <AUTHOR> https://www.facebook.com/notes/kent-beck/rip-tdd/750840194948847 <comment><USER3> This... is not Kent's finest moment. I get what he's saying, but the snark doesn't really help, and doesn't actually rebut any of the points that DHH was making against TDD.

Testing _does_ tend to have a negative impact on API design. If we were to make a list of positives and negatives, this one would go in the "negative" column. Listing out TDD's positives does not invalidate that negative.

<comment><USER4> "Testing does tend to have a negative impact on API design"

I think this sentiment is the single root cause of the current back in forth. In my experience this is completely untrue. For DHH and others there appears to be some sort of culture of dogmatic polluting of APIs for testing which I'm not familiar with.

Everything else seems to be talking around the real issue and finger pointing.

<comment><USER3> Let's take as an example dependency injection. The genesis for DI was to facilitate the testing of objects that are dependent on objects that are not easily constructed, such as DAOs. And the whole reason this was done was so that these classes, the ones that have a DAO dependency, could be more easily and quickly tested.

So, in order to use (constructor) DI you would have a constructor that looks like this:

        public InvoiceController(InvoiceDao invoiceDao) {
            this.invoiceDao = invoiceDao;
        }

The key point to remember here is that this has been done so that in our unit tests we can inject a fake InvoiceDao. Now, let's say that our InvoiceDao class has one and only one constructor:

        public InvoiceDao() {
            // sets up connection parameters, etc.
        }

Then the constructor for InvoiceController could be simplified to:

        public InvoiceController() {
            this.invoiceDao = new InvoiceDao();
        }

This is quite a bit cleaner from an API perspective, _and that is the entire point._ This is only a simple example. For more complex classes, with multiple dependencies, it really becomes cumbersome. What if InvoiceController also needed access ReporterDao? Well, then you need to add that as a parameter to the constructor as well. Your API is made more complicated, all in an effort to make testing possible.

This does not, of course, invalidate the benefits of unit testing, which are many. But it does expose a negative that is not frequently acknowledged, and that's what DHH is talking about, and what Kent has failed to address.

<comment><USER4> "The genesis for DI was to facilitate the testing of objects that are dependent on objects that are not easily constructed, such as DAOs. And the whole reason this was done was so that these classes, the ones that have a DAO dependency, could be more easily and quickly tested."

I disagree with this central premise. If you have introduced DI simply for testing reasons than you have missed the point. The reason for DI is that a very common point of change with software is at the interaction between clients and services. Tight coupling at this point of change is usually a design smell. That DI enables automated testing is a by product of it being loosely coupled not the point of the loose coupling. That TDD drives you to this sort of solution, all other things being equal, is one of the advantages of TDD.

If DI has become cumbersome and is making your code hard to reason about/read/maintain etc then blame DI, not the testing. You also might want to consider the higher level architecture of your solution if you are finding yourself with lots of complicated dependency chains.

<comment><USER5> "The reason for DI is that a very common point of change with software is at the interaction between clients and services. Tight coupling at this point of change is usually a design smell."

The problem with TDD is that if it is NOT a common point of change, TDD adherents often say that you should introduce DI anyway to make testing easier. "One day you might want to change out the whole database, so you should abstract out the DB into a blah blah blah pattern, with a layer of the rah rah rah pattern between to ..."

<comment><USER6> > The problem with TDD is that if it is NOT a common point of change, TDD > adherents often say that you should introduce DI anyway to make testing > easier.

To the extent that's a problem, its not with TDD, nor with DI, but with the particular people giving the advice. Why do people think that "Some of the people who follow X give bad advice Y" is a criticism of X when Y is not something that that X requires?

<comment><USER5> [http://en.m.wikipedia.org/wiki/No_true_Scotsman](http://en.m.wikipedia.org/wiki/No_true_Scotsman)

<comment><USER4> This is a very insidious comment. You have actually committed the logical fallacy as your position is "All TDD proponents do X". When someone points out, no "Some TDD proponents do X and many of us TDD proponents think X is bad practice" you blame them of the No true Scotsman fallacy, when in reality your position is the one claiming a universal property about TDD.

<comment><USER5> Tell me who is a good representative of TDD that has written a lot about it. Where is the cannon of TDD so to speak.

<comment><USER4> Not sure if I'm qualified to appoint a cannon but I can tell you of the books that were very influential to me with regards to TDD:

Test-Driven Development by Example, Kent Beck. This came out in 2002 and I haven't read it since then but at the time it really influenced a lot of my TDD thinking. I expect if I read it now I'd have some complaints based on my decade of experience with the process.

Growing Object-Oriented Software, Guided by Tests, Freeman & Pryce. Much more recent and includes more modern thinking about TDD with acceptance/integration tests.

Working Effectively with Legacy Code, Michael Feathers. A great book for dealing with TDD when you aren't doing green field development. He is a bigger fan of Mock Objects than I am, but he illustrates some examples when mocking is the most appropriate response to the current requirements.

All that said, TDD is like any other software methodology. It is a set of patterns and principles that each practitioner interprets for themselves. At it's core though it's pretty simple, automatic verification of specifications are as important as implementation of the specification for any sufficiently long lived, complex software system. Writing those verifications first provides, design, process, and management advantages over the historical process of writing them last and has a high correlation with well factored code. That's it, no doctrines about unit vs integration tests, mocking out DB access or 100% code coverage.

<comment><USER5> "and management advantages over the historical process of writing them last and has a high correlation with well factored code."

Where is the data supporting this claim? I don't believe it is true.

"That's it, no doctrines about unit vs integration tests, mocking out DB access or 100% code coverage"

Why do you think so many of us feel that it is an ideology? Are we seeing ghosts and imagining the whole thing?

<comment><USER4> "Where is the data supporting this claim? I don't believe it is true."

This is one central premise of TDD and is not proven or disproven yet. What we can say is that previous software methodologies were lacking, and cannot prove or disprove their superiority over TDD with regards to this statement. If you distill all debates about TDD down to their essence, it revolves around this premise.

I am fine with someone being skeptical of this claim, but I would prefer if they offered A) a measure we can use to test this hypothesis and B) a contrasting methodology that performs better with regards to the measurements provided in A. The single biggest outstanding problem in software engineering is finding a metric by which we can judge software quality objectively. Because it is such an elusive goal other less precise proxies for software quality have been proposed to stand in for the more complex metric. TDD hangs it's shingle on "testability". Even though this has obvious defects, I've seen no evidence for any other objective measure as a more precise indicator of software quality and quite a few advantages to "testability". Namely, it is measurable.

"Why do you think so many of us feel that it is an ideology? Are we seeing ghosts and imagining the whole thing?"

No, I'm sure that you have encountered well meaning but flawed practitioners of TDD. Your skepticism of their process doesn't bother me. What bothers me is your (and DHH's) painting of all TDD folks as cultists. I don't believe this stuff because Uncle Bob told me to believe it. I believe it because my experience shows that rigorous use of TDD practices trend toward better software than a lack of rigor outside of an objective measure for software quality.

If you have an alternate rigorous approach that you believe trends (or better yet is provably) better in software quality, by all means outline it. I know that TDD is flawed and am happy to find its successor.

Let me ask you this, prior to the rise of TDD, how prevalent do you think automated testing was? If it was very prevalent why is it only after the rise of TDD that automated testing became a central part of any build workflow and the entire concept of Continuous Integration/Deployment developed?

In my experience, automated testing prior to the rise of TDD was not wide spread. But maybe I was seeing ghosts and imagining that.

<comment><USER5> Neither of us ever said all TDD folks are cultist. We are both tired of being told that we are absolutely doing it wrong if we don't practice TDD. For an example of people telling us this please see this talk by bob Martin and jump to the 58 minute mark. [http://m.youtube.com/watch?v=WpkDN78P884](http://m.youtube.com/watch?v=WpkDN78P884)

Bob is not an obscure figure by any stretch of the imagination. You have admitted to having no real data to back up the claim that writing tests first leads to better code, yet we have bob here telling us we are absolutely wrong if we don't follow his religion.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Is this a joke or he is he just unable to separate "tests" from "test driven development"? Most of these points have nothing to do with "tests first".

<comment><USER8> >Is this a joke or he is he just unable to separate "tests" from "test driven development"?

I'm not sure I've ever seen a debate about TDD without at least one TDD advocate conflating testing in general with TDD…

</comment></comment><comment><USER5> He ignores the points DHH makes, and then replies with his own snide talking points like a politician on a sunday morning talk show.

<comment><USER9> DHH largely creates a straw man: the fanatical, religious TDD devotee who blindly worships at the Altar of Unit Tests. For an enormous majority of the wider development community (who do no testing whatsoever outside of click- the-thing-and-see-if-it-works), TDD is an easy to understand, easy to get started way to improve the quality of your code. I haven't met any of these supposed religious zealots DHH is railing about, and I worked for an "Agile Consultancy".

Also, DHH argues against plenty of other best practices / design patterns and is considered incorrect in many of these cases (his "only use the Rails classes" objections to having a service layer most famously). It just so happens that when he bashes something that a lot of developers don't _like_ to do already (write unit tests), the pitchforks rally behind him.

It's the same sort of thing when people post articles on HN bashing pair programming, or open workspaces. We get it. Some of you really don't like change, or anything "agile". Now please stop beating the dead horse already.

<comment><USER10> > DHH largely creates a straw man: the fanatical, religious TDD devotee who > blindly worships at the Altar of Unit Tests.

That's not a straw man: That's real life. I've worked with people like this. They're fairly common in TDD shops. You even see them on Hacker News making spurious claims like how TDD would have prevented the <security hole> in <framework> (nevermind the fact that that <framework>'s dev teams is heavily invested in TDD)

<comment><USER9> I've worked for one of the biggest agile consultancies around, and while most of the developers write unit tests, I never met anyone who started frothing at the mouth if we wrote code before tests. I just don't buy the pervasiveness of these TDD-devotees to the degree that justifies all of this backlash, DHH articles, HN comments, etc.

<comment><USER11> You probably got lucky.

But yeah, they exist

</comment></comment></comment></comment></comment><comment><USER12> Look at Kent's eight bullet points: half of them are unrelated to the DD part of TDD. Coming from a man who should know the difference between having automated tests for your software and partaking in test-driven design, I must assume that he had a good reason for conflating the two.

Hacker News is not the audience for this post.

Kent Beck is doing damage control.

DHH lives in a developer community that has adopted unit tests to the point of feeling ashamed about untested code---testing is more than just a practice, it's a culture.

Kent Beck lives in a world where the mere existence of unit tests is a champagne-worthy surprise.

There are people out there who are not yet convinced of the benefits of tests, let alone test-first or test-driven design. Kent Beck is a missionary, bringing them the gospel of automated testing. Can you imagine the impact that a piece like DHH's would have on his efforts ?

A developer with an incomplete understanding of software tests, reading a post by a big-shot recognizable name that one would expect (based on the Rails community's love for testing) to be a major proponent of tests, would take it as "Tests are actually a bad idea !"

This is not what DHH said. There is probably no one among us here who would understand it this way, and most experienced folks would just shake their heads at the ongoing back-and-forth and resume their position of "TDD is a tool in my toolbox, and I use it whenever it helps me."

Kent Beck wrote a piece for the lost soul who doesn't know the difference between TDD and automated testing, and who might become confused after reading DHH's opinion. This is no time for subtlety, for paying notice to the differences between testing methodologies, or for polite agreement with at least some parts of the "opposing" piece.

Let David work to bring the Rails community back from the "test all the things!" extremities it might have reached, let Kent work to bring the unenlightened masses out of the "tests are useless!" darkness wherein they have dwelt for so long, and let us accept that if we truly have the capacity to criticize what those two are saying, then they probably weren't talking to us in the first place.

</comment><comment><USER13> Kent Beck is normally intelligent, concise and persuasive. This post is reactionary, and disappointing. I hope he follows it up with something a little more considered.

<comment><USER14> He has books and lectures on the subject so I'm not sure he has much more to say.

</comment></comment><comment><AUTHOR> Jessica Kerr was discussing property-based testing (i.e. quickcheck, scalacheck) on a podcast recently, and I thought it was interesting she noted that the red-green-refactor cycle didn't make as much sense with property- based testing.

It's more "contemplative" \- thinking about invariants of your software rather than designing for mocks and various injected components.

(although property-based testing is a bit less effective in languages that don't make type information available, to generate the input values)

<comment><USER15> Is this the podcast? [http://www.functionalgeekery.com/episode-8-jessica- kerr/](http://www.functionalgeekery.com/episode-8-jessica-kerr/)

 _/ downloads_

<comment><AUTHOR> yep! Although it's kind of a weird dynamic going on - the host gets defensive at times, getting a sense these two were grating on each other a little bit. Always enjoy the things Jessica has to say though.

</comment></comment></comment><comment><USER16> I'm guessing this doesn't disappear anytime soon [https://github.com/rails/rails/tree/master/activerecord/test](https://github.com/rails/rails/tree/master/activerecord/test)

</comment><comment><USER17> An indirectly related fixation that bugs me every time I see a Facebook link is this: why are notes, events, etc. appended with a string of digits?

Shouldn't the URL here be simply: [https://www.facebook.com/notes/kent- beck/rip-tdd/](https://www.facebook.com/notes/kent-beck/rip-tdd/) rather than [https://www.facebook.com/notes/kent-beck/rip- tdd/75084019494...](https://www.facebook.com/notes/kent-beck/rip- tdd/750840194948847)?

Does every element that exists on facebook.com get assigned a unique string like the one above?

<comment><USER18> Basically, the "/kent-beck/rip-tdd" portion is for humans (and/or SEO), so that we can look at the URL and have some idea of what it is, and the "750840194948847" is for their server to figure out what to actually show. You can change the for-humans part to whatever you want and still see the same note: [https://www.facebook.com/notes/foo/bar/750840194948847](https://www.facebook.com/notes/foo/bar/750840194948847)

The advantage of only looking at the number is that if Kent Beck's name changes or the title of the note changes, they can just start linking to a new URL with a changed human-part (but the same numeric identifier) and the old URL will still work. The "correct" way to do it would be to track and validate every version of the human-part for every URL, redirect old versions to the newest version, and 404 made-up ones. But in a way that would be slightly inconveniencing human users following outdated links by making their browsers follow a redirect when really only search engine spiders care whether there's a single canonical URL per page, so if Facebook has given it any thought, they probably decided just to not bother.

And at their scale, keeping track of one or more string URL versions for each page (that is, each piece of URL-addressable content that makes sense to have some kind of title slug included) would be non-trivial. Billions and billions of URLs to track, dubious benefit.

</comment></comment><comment><USER19> This is simply crazy talk. He creates a list of genuine issue, e.g. over- engineering and slaps them under the moniker of "because TDD."

I don't know how many times production was saved because there was an automated test written via TDD that prevented bad code from going out. Too many times to count.

What the author is suggesting is to throw this out and go back to the days of broken production apps are okay. This has never bothered Facebook, and it will definitely bother engineers who want to take pride in their work.

<comment><USER20> It's sarcasm.

</comment></comment><comment><USER11> Which is funny

"Over-engineering. I have a tendency to "throw in" functionality I "know" I'm "going to need". Making one red test green (along with the list of future tests) helps me implement just enough. I need to find a new way to stay focused."

So creating a test for a function that sum of numbers that gets 1 and 1 and returning a hardcoded 2 is "just enough" and " a great way to stay focused ", funny

I kind of agree with the other points, not so much about the "API design" stuff, while it's true it facilitates, the end word is with the main API user.

Well, I'm glad it's dead, now I don't have to spend time mocking all other parts of my program.

</comment><comment><USER21> Could testing preconditions and expectations of OpenSSL rooted out Heartbleed and the the Safari goto gaffe? Those bugs were process orientated - <USER2> cryptographic algorithm failures.

I think now is an important time as ever for TDD. (Test your expectations! You might be surprised or even wrong. Do not underestimate your hubris when it comes to introducing bugs.)

</comment><comment><USER22> A knee-jerk reaction to an article that could cause many to have knee-jerk reactions against TDD? How appropriate.

</comment><comment><USER23> Who is stopping Kent from continuing using TDD techniques? Since when IT became a GULAG?

</comment><comment><USER24> Another month, another Agile war. Is it co-location? Nope. Is it SAFe? Nope. Looks like TDD. Again.

1) People make money on these wars. Do not waste your time on them.

2) Out of all the Agile stuff I've ever come across, TDD is the thing that drives most people nuts. I think because it's something that has to do with your minute-to-minute work. I'm a fan -- when it's appropriate (not in startups). But dang, people go crazy about it.

3) TDD is more about the way we approach doing a thorough job than it is about programming. At least in my mind. It's double-entry bookkeeping for coding. Not only did you do it, but it's cross-checked. Therefore, just like good accounting practices, it makes sense to a lot of people. It's also annoying as hell to a lot of people. This set probably overlaps.

</comment><comment><USER25> TDD advocates: build a new framework that extends Rails, one that makes it easy to add service layers and fast tests.

IMHO fat models are the new PHP, and giant classes suck. Its time for new conventions to emerge.

Prove DHH wrong with working code, not blog posts or books or conference talks.

<comment><USER26> You don't need a new framework to easily add service layers and fast tests. That comes with some proper planning before writing the code. And the conventions are there for decades as well, developers just need to be aware of them a bit more.

</comment></comment><comment><USER27> What-the-fuck-ever

To the whole article. I read the dhh article, Kent did not. The people practicing umm "agility" did a better job handling some of the root issues DHH brought up.

<comment><USER28> Strange to see you being downvoted. I think many commenting did not read the article and did not the video ([http://www.justin.tv/confreaks/b/522089408](http://www.justin.tv/confreaks/b/522089408) fast-forward to 10:30). DHH does not argue agains testing, his argument is against cargo-culting and hurting the design in pursue of faster testing and more coverage, even when it is usless. DHH even quotes Kent himself in the talk: "I get paid for code that works, not for tests, so my philosophy is to test as little as possible to reach a given level of confidence".

<comment><USER29> Indeed. I think DHH was very specific in his criticism, that for _controllers only_ , then _TDD and unit tests_ aren't the wisest choice, because they introduce complexity and potential problems (really, are you sure all those mocks catch all your edge cases?).

The critics, including Kent Beck here, have by and large reducto absurdum'd it to "DHH HATES TESTING AND EATS BABIES", which isn't his point at all. Sure, DHH could have been more narrowly focused and less confrontational in his language, but that doesn't mean he's wrong.

Look at it this way... are controllers hard to test _in Rails_ , or are controllers hard to test _in general_? This is an argument for lightweight controllers that are little more than routing glue (don't put business logic in controllers), and then giving them a pass on unit testing in order to keep them clean.

This gets to something I've been chewing on and should write about, which I think of as Tautology Testing. It's endemic in excessive unit testing. You create a mock so you can create a test so a test exists. The test doesn't really _test_ anything except its own existence. How is that useful? You're just adding complexity, not functionality.

<comment><USER30> Perhaps DHH could have chosen a better title for his post than "TDD is dead", then? Perhaps "unit testing for controllers: not the wisest choice"?

<comment><USER31> DHH's article looks to be titled 'Test-induced design damage', not 'TDD is dead'. 'TDD is dead' is referenced in the article as a current uprising (which I hadn't heard of, fwiw), not necessarily as something DHH personally believes. I thought his take on the issue was nuanced and thoughtful, so its surprising to see Kent's overreaction here.

<comment><USER30> "TDD is dead. Long live testing."[1]

[1]: [http://david.heinemeierhansson.com/2014/tdd-is-dead-long- liv...](http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live- testing.html)

</comment></comment></comment></comment></comment></comment><comment><USER32> Why aren't these quips written as comments in the main DHH article submission? Everybody has to whore themselves out these days - embarrassing.

<comment><USER9> It's possible that, since this was written on FB and not Kent's blog ( [http://www.threeriversinstitute.org/blog/](http://www.threeriversinstitute.org/blog/) ), that this wasn't intended for as public an audience as HN and was not an attempt to "whore himself out."

<comment><USER33> He did tweet about it: [https://twitter.com/KentBeck/status/461175937892356096](https://twitter.com/KentBeck/status/461175937892356096)

<comment><USER9> Ah, missed that. Well, fair points then :)</comment></comment></comment></comment>