skysight-inc/HackerNews huggingface dataset:
There are plenty of parks in most of Tokyo and apartment costs are reasonable if you get 10-20 minutes of metro away from the center. There are excellent educational centers in Tokyo too if you know where to look and every single train station has an elevator (albeit - only in one out of several exits which can make your trip longer).

I think the main issue would be the "hidden" discrimination against foreigners (gaijin) though and very demanding and destructive company culture.
Wow, worst possible name.
fyi, systemd had nspawn for kernel debugging before docker became a hype
We can say that to any congested areas: Only few directions at only specific time, it is bad luck because this is where the majority of people is commuting to or from.
The Bay Area has been getting worse for the last few years, it is now pretty common to spend 1h30 between San Francisco and Mountain View.
U.N. Joins Critique of Proposed CBP Social Media Questions
It doesn't, it just gets very _expensive_ to live very well in a city center with a family. I guess this is what the OP meant by "certain circumstance".
As someone who uses unit tests to find bugs in my code, that I would never otherwise find, this is surprising.
Excellent! I tried out Ubuntu MATE 16.04 on a Raspberry Pi 3 a few months ago, and I was pleasantly surprised by how well it runs. The 1GB RAM is an unfortunate limitation, but even so the Pi is a viable little desktop. Great to see upstream kernel support and official releases from major distros.
> if it works for you and your coding style, awesome. But don't force it down my throat or act like it's the One True Path to clean code.

This applies to so many things in Software Development - text-editors, variable names, plugins, architectures, operating systems...
What happens if someone is sniffing the line? It wouldn't even need to be your fault, it could be some logger on your customer's server... i.e. do you have any protection against someone including this in the client code:

DEBUG("testing external service... " + Hash1)
Salt2 = call_external_salt_service_api(Hash1)
DEBUG("service returned: " + Salt2)

If someone was logging this traffic, wouldn't this allow your service to be treated as a black box and nullify any additional security?

They wouldn't need to steal the full pool in this case, as you are sending back the exact hash/salt values needed for every user that logs in.
If you write testable software and actually write the tests, the end result is the same whether you test first or test later. You're designing with testing in mind and creating useful tests either way.

It's really a matter of code that lacks tests that's an issue and especially of code which isn't designed with testing in mind. I think they overinterpreted the value of TDD as simply test-first. Test first can be good but it's more a motivational tool and a productivity simulator (yay look at those green checkmarks!) than a real benefit.

The end result is identical, this sort of craps on it as a motivational tool too if you consider that only as a factor in development time at least. It'd be interesting to see developer satisfaction included in some way too.
If you believe the press reports, letting the community figure out how to deal with abuse on its own seems to have had a negative impact on Twitter's value.

If GH isn't referee who else will be one?
My anecdata matches the author's - I feel more productive doing TDD.

Perhaps because it's less stressful. You think about system design as you code, instead of only when you hit a wall and have to rewrite everything, or when you have to clean up for code review.

Either way, if it has little to no compact on dev team or code quality, I bet the positive impact TDD has on team morale would make it worthwhile.
Two words: It's cheaper!

But seriously, it's cheaper and you get to build your own building if you like, maybe bespoke, rather than lease someone else's building. It's not like most US cities will not have a tortuous approval process and a long approval process and unions, etc. to contend with and extra taxes...

What's the next question, why aren't companies building right next to the Capitol? Maybe we should be like Paris and London and Tokyo and have everything important, the important institutions, important buildings and important people all living in one important city. Let's all move to DC and concentrate everything!

On the other hand, we have the Packard building and numerous others in Detroit or Phily.
Well, let me ask you:

Why would we assume TDD would improve code quality or development time?

If, at the end of the day, the result is the same volume of tests and the same level of overall coverage, the order of activity would seem to make no difference. What would lead you to believe otherwise?

The real flaw in both methodologies is that it's the developer checking their own work.

I'd make the claim that if you really wanted to do it "right", you'd have a specification, one developer writing tests to the specification, and a different developer writing the code to make the tests pass.

Of course, that's probably not workable in practice... make for an interesting experiment, though (and yes, I'm too lazy to search Google, only to discover someone else already came up with the idea).
It may not boost productivity upfront, but it saves a lot of time down the line by alerting you when something is out of place.
> I'm reminded of the HDTV market about ~10 years ago when it seems that prices were astronomical. Now you can get a 4k TV for under $300.

I'll bite. Cars aren't 90% electronics, but TVs are. If you bought a BMW with everything but the drivetrain, it'd still cost a whole pile of money. Same with a Tesla. Sure the drivetrain might cost 20%-30% of the car's retail price, but even if you bring that to $0 you absolutely haven't made the car 90% cheaper for 5x the product.

Just because electronics have a _huge_ NRE (non-recurring engineering) cost and fairly trivial per-unit costs (like software) doesn't mean that the whole world works that way. Metal still costs real money because it takes energy to make/recycle, form, etc.
I moved to NYC with my 4 young kids. NYC is a great place for kids as long as you can afford the rent. We sold our cars, get most of what we need delivered, and walk or bike pretty much everywhere. All the kids activities are at walking distance and my oldest who is 12 is completely independent. I have no idea why people think that cities are bad for kids (apart from the cost of lodging).
> Let's assume that GitHub is acting in good faith here

This is not happening in a vacuum. I guess you haven't heard of "OpalGate."

> and trying to make things better for the community.

"Better" is in the eye of the beholder.
Gotta try and make those lost Costco bucks somehow.
That not TDD, though. It's more similar to test-after.
Out of curiosity, what specifically do you find idiotic about the document you linked to?
...life
My experience has been that TDD is worthwhile when working with notoriously slippery whack-a-mole functions like handling time or money. The time saved by catching regressions vastly outweighs the time taken to implement the tests.

In contrast, TDD has been a waste of time for me for UI-based work, as the effort needed to properly expose the functionality under test is too great and the requirements and design change too quickly to be worth it.

In the latter case, writing some deterministic UI tests against mock data after the requirements and implementation have settled has proven much more effective in preventing regressions.
I use Tower and I love it. I've been using it for 2 years now and I'm so glad I paid for it. It has been so critical my git workflow.
No, that's the value of automated regression test. TDD is just one way to skin that particular cat.
Deep-fonts: Generate fonts using deep learning
I never really viewed TDD as better at reducing bugs for a short term project, its going to have marginal better chances of getting additional test cases.

I view it more as important for breaking the growth of testing effort in an iterative project. With each release the scope of what should be tested to fully test a project climbs and unless a team wishes to linearly increase the size of its test team its all but certain tests will be skipped.

TDD gives us the ability to always full regression test as its just machine time. Its a safety factor in knowing nothing is broken which in turn gives us confidence we can refactor.
What he writes sounds reasonable. Although I'm equally disturbed by Facebook News Memes like Tomi Lahren:
http://deadspin.com/tomi-lahren-is-a-facebook-meme-come-to-l...
I don't know if I'm one of those "best catches" (I strongly doubt it), but I do know that I'd rather work in a place that pretends to be open and relaxing and full of life and fresh air than one that doesn't even try to pretend to be any of those things.

Of course, I'd much rather life and work in the real thing, which is the literal opposite of what the article proposes, so there's that.
Around the World Without Flying – 44 months, 37 countries, 0 flights
These are apples and cherry pits, apart from their coexistence on the HN front page right now. OpenAPI is basically Swagger + bigcorp buy-in, see https://openapis.org/. Whereas AMEX is offering a bespoke API straight out of 1998.
Pretty sad that you think only the best people like what you like.
It's not about TDD vs no tests. The article is about tests first or tests later.
This - so much. If my company grows I don't really see how we can _afford_ taking a much bigger office as large office spaces are really expensive in city centers to being with - not to mention supply isn't exactly great.

Building your own office is so much cheaper if you do it where real estate is cheap and you have a very good bargaining spot where you can actually barter for lower taxes.
I agree that it depends on where you approach it from (my very first question for tutoring any new Rust user is "what languages have you used previously?"), but I'm afraid that saying "it's really not that hard" glosses over the experience of a large number of potential users. I don't consider Rust to be a particularly complex language--I put it on par with Python--but unlike Python the learning curve for Rust is remarkably steep, which is enough for me to classify Rust as a hard language to learn.

A foreknowledge of pointers helps, but for anyone for whom Rust is their first systems language, it's going to be Rust's task to teach them e.g. the stack/heap distinction, or what "aliasing" means, or why there are two string types (let's hope they're already versed in Unicode...), or how to design a system in the absence of pure OO.
What's wrong with striving to create a community where people aren't subjected to malicious, abusive members? Isn't that why pretty much every online community (HN included) sometimes bans accounts?
> Well, shit. Now what?

Another dongle for you!
NYC is livable, if you can afford the rent. The problem is, it's only growing everywhere.
HN is a forum and doesn't host anything I would care about losing, github is (was) a service I paid for. We discuss some contentious subjects on HN but github will be preventing contributions from people with wrongthink, which I don't care about.
Is it something like swank for common lisp?
Galvez cuts through most of East campus (either as Galvez St or as Galvez Mall), and the Stock Farm lot is on the far west end of campus, so with that much distance between car and work, I can understand that feeling!

In that case (I commute into campus by bus), I'd use one of the Zipcars on campus to do lunchtime errands.
anyone knows if mercurial subrepo feature is used by big corporations
Agree here. Tests the stuff that needs testing.
Will driverless cars really save millions of lives?
...when implemented poorly
Your comment reminds me why it always pays to consult with an expert, pennies up front versus real dollars later.
This is the kind of stuff that in the aggregate you can't show a relationship, but I bet if you controlled for type of project one would see some interesting results. Anecdotally, I know some firmware engineers that shit out the buggiest code I have ever seen, and test driven development would have definitely improved the customer experience. Because when the engineers have literally no tests other than trying stuff out with a printf on the target embedded device, any amount unit-testing will wind up helping.
I suspect haskell might be in a difficulty class beyond rust, where really good tooling still wouldn't be enough to make it significantly more accessible. The things rust requires a C++ programmer to learn also seem to be relatively amenable to mechanical assistance.
>clearly there is a lot of dirt on Trump

Yep, like calling fat people fat and saying "pussy" in a private conversation.

>Seriously?

Don't take my word for it. Read the emails by media broker of the DNC: https://wikileaks.org/dnc-emails/emailid/7216

This is what he says:

>This is who I will meet with in NYC. At each meeting, I’ll discuss hits we’ve executed (if relevant) and future hits. Anything I should add?
You don't need to live in a center or Manhattan for instance. But it doesn't really help much prices wise. Real estate in NYC is just expensive in general.
He's a bush. He'll land on his feet, I promise.
And that test winds up in v0.1.1 of your software magically, or is it there because you put it in the work to add it up front?
We're not a court of law. By the time there's 9+ accusers, many of whom shared their stories contemporarily (viz people writer who told 6 people), you're verging on Crosby territory to deny what plainly happened.
I didn't call anything idiotic. But let's just say that grappling with the STL may be slightly preferable to this... thing. And there is some special irony referring to STL as an "esoteric abstraction" while offering your own vastly more esoteric abstractions in the same swoop. And the following paragraph speaks for itself, particularly in the context of developing a fucking database:

> Computers are super fast these days, and real world applications spend 99% of their CPU time doing some very specific item, with the rest of the time spent doing just boring stuff. Accordingly, libstuff is not intended to be hyper-efficient: it's intended to be hyper-usable. This means libstuff uses a lot of std::string objects for pretty much everything. Where a more complex object is required, some higher-level string-based object is used.
Tests before/at/near development time really helps your code design - I've seen how ensure code is unit testable simplifies and enforces layering, etc. Really disagree that this does not help code quality.
Or I could have just shared the photos I took out the window from my last STR-EWR flight. =)
> Republican presidential candidate Donald Trump weighed in as well, describing those behind the incident as "animals representing Hillary Clinton and Dems in North Carolina." (Authorities had not identified any suspects.)

> They "firebombed our office in Orange County because we are winning," he said on Twitter. (An NBC News/Wall Street Journal/Marist poll conducted last week found Clinton leading Trump by four points in the state. Nationally, Clinton leads Trump by 11 points, according to an NBC News/WSJ poll released Sunday.)

Interesting to see the fact-checking done within the same paragraph.
I work on 12th floor in the same building:D
For me it's a highly situation-dependent thing.

Sometimes writing tests first helps me think about the high-level design of my code. Other times I've got to try a few things before I have any idea what the code should look like, and writing tests first would just create a lot of extra code churn. I feel that, as time goes on, I'm getting better at anticipating which situation I'm in. I also switch back and forth between the two testing methods even more rapidly.
> The best people out there can make money literally from anywhere

Since an office can only be in one place and therefore satisfy one subset of 'the best people's preferences - remote working is the logical conclusion for getting the best people who are also fussy about location.
Never said violent revolt couldn't happen. It just seems very improbable. I'd bet that the vast majority of those people who believe Obama/Clinton are evil wouldn't be willing to risk their current living situation on that belief when it actually came down to it.
He was the adopted son of Frank Lloyd Wright and Andrew Lloyd Webber -- the building is also a musical masterpiece.
There will always be ways to use a million dollars to promote a particular perspective. Maybe wealth inequality is what's really bothering you?
Priceline Should Book Skyscanner Early
One quibble: MasterCard and Visa are associations, not issuers. (AmEx is sort of both - iPhone to Visa's and MasterCard's Android.)

I don't know that processors have a lot to worry about here. It's been a few years since I was in the space, but from a dev perspective, there'd have to be some really compelling reasons to implement (and pay fees for!) an integration per card type, rather than one integration for all payment cards.
I have always worked in a "test last" mode. That's the way I learned to program. Write some code, test it. When it works, write some more code, test some more.

My attempts to work in a TDD style ran up against decades of intgrained habits and I never really found it satisfying or natural.
There is a problem with all these studies - they all use a very small amount of programmers (21 in this case) with no experience (all graduate students in this case) and presumably no significant experience with TDD or TLD.

I'm not making a stand about TDD here - I just think we need to have much better computer engineering science studies if we want to have significant results.
Show HN: c4bot – Connect Four Chatbot
Venus: Inhospitable, and Perhaps Instructional
You seem to be making some big assumptions about how these guidelines will be enforced. I got a very different sense from reading them.

I see no evidence they will delete your paid accounts because you think or express ideas that are merely contentious or unpopular.
I don't live anywhere as dense and NYC, but I'd echo the sentiment. I live on the city fringe, and the ability to easily get to music, dance, language lessons, galleries, playgrounds, and so on are all invaluable to me and the kids. Pretty much anything they want to do (other than "have a pony") is much easier in the city that it would be in an outlying suburb. And when they get into their teens, I'll be a lot happier with them having good options for buses, trains and so on.
I don't think that's true. From what I've heard and read, Google Assistant will stay exclusive only on Pixel for now. Even when the 7.1 update reaches Nexus 6P.

http://mashable.com/2016/10/06/google-assistant-not-in-andro...
Therein lies the rub with all the faith-based modern development practices. Getting results? That's the power of The Practice. Not getting results or seeing negative impact? You're just not doing The Practice right and/or hard enough.
I don't quite get why SQLite is the right primitive to compose a large scale database system out of...

If the design goal is write throughput, SQLite can be beat really easily by the client/server systems since each SQLite instance only supports one concurrent writer. I guess users of Bedrock could partition their datasets into different pieces that aren't often written in tandem, but why go through all the trouble instead of just using a database with real MVCC?

If the design goal is geo replication, Bedrock seems to ignore the past many years of innovation in the field. MySQL and company have methodically built up features to allow safe synchronous and asynchronous replication for minimizing the risk of downtime or data loss like GTIDs over a long time

If the design goal is read throughput, I don't think Bedrock can be faster than just pure SQLite if your data can live beside your application, and if you have more than one node, you need a complicated SQL optimizer that understands how to push down things like predicates and aggregates to the leaves, and then recombine results at the top level to actually efficiently read in parallel, which I don't think Bedrock has built yet.

This thing kind of seems reminiscent of Jetpants or one of the other MySQL orchestration tools that allow for scaling the DB beyond many nodes automatically... but... why SQLite?
>"How can you say that with a straight face? Legal SuperPACs, campaign contributions, lobbying groups, the home of commercial 'PR' (propaganda) and the world's most highly litigious society. You guys are the least democratic of any self-titled democracy today."

Oh really? Do you know the definition of a democracy? A democracy is simply a form of government that gives power to the people. It comes from Greek words "demos" meaning "the people" and "kratia" meaning power or authority. A democracy doesn't specify which people or even specifically what powers. It also doesn't say anything about about money or influence. Now is there too much money in US politics? Of course. Does extreme partisanship hinder progress? Absolutely. But none of these things mean that the US does not have a democracy. There might not always be a great choice of candidates but U.S citizens choose which least rotten of the bunch gets to represent them. No question about it. So yes that power is vested in the citizens. To state that the US is the least democratic of any democracy today is just absurd. So according to your statement the US lags behind Russia, Nigeria and Democratic Republic of Congo?

I think its odd that the OP simply saying he applauds the Ecuadorians efforts to distance themselves from Wikileaks elicited such a total condemnation from you.
I think test after is a reasonable approach. I am constantly dealing with new code bases and in the interview process I am often asked about my philosophy about testing. My response is thatbtrsting occurs on two fronts from the top down ( functional UI tests) and from the bottom up (unit tests). When it comes to unit testing my approach is to focus on the hotspots. If something gives you trouble, or if you find a bug/ issue then wrap it in a unit test. That way you don't have to worry about it. Bugs tell you where the weak spots in your code base are. When they speak to you, listen and take some action. Otherwise, I feel like chasing blanket coverage is not worth the effort in most products.
I think test after is a reasonable approach. I am constantly dealing with new code bases and in the interview process I am often asked about my philosophy about testing. My response is thatbtrsting occurs on two fronts from the top down ( functional UI tests) and from the bottom up (unit tests). When it comes to unit testing my approach is to focus on the hotspots. If something gives you trouble, or if you find a bug/ issue then wrap it in a unit test. That way you don't have to worry about it. Bugs tell you where the weak spots in your code base are. When they speak to you, listen and take some action. Otherwise, I feel like chasing blanket coverage is not worth the effort in most procure.
Superman (gene)
Yeah, I think he's conflating Frank Lloyd Wright and Andrew Lloyd Weber.
You seem to be conflating the existence of unit tests with TDD.
Final – A credit card built for the 21st century
Nice work on the false dichotomy. :)

TDD has a very specific meaning. It means you write tests, then write code that passes those tests. That specific order. If you're not doing that, you're not actually adhering to the definition of TDD.

TLD could mean, for example, writing a module, class, or function with a defined interface that implements the contracts for that interface, then writing the suite of tests to validate that module, after which you move onto the next module.

Strangely enough, you can do that while you're developing the product without adhering to the process dictated by TDD.