skysight-inc/HackerNews huggingface dataset:
From the article: Because you want to ensure that you always pass the majority of tests, you tend to think about this when you change and extend the program. You therefore are more reluctant to make large-scale changes that will lead to the failure of lots of tests. Psychologically, you become conservative to avoid breaking lots of tests.

Interesting. I've often found that the lack of tests leaves me absolutely terrified of making changes to large Ruby and JavaScript applications. I mean, if a test breaks, then I get a nice message right on the spot. But if I don't have tests, then the application itself breaks, and I may not find out until it's been put into production on a high-volume site or shipped to users.

Once an application crosses, say, 25,000 lines of code, it's hard to keep an entire program in my head, especially in a dynamic language and with multiple authors working on the code base. Under these conditions, large scale refactorings or framework upgrades can cause massive test failures, but the only alternative is to cause massive, unknown breakage.
Brasil's Black Wednesday
Are Checked Bag Prices on (EU) Budget Carriers Too Low?
Like all things in life TDD should be taken in moderation.

It's an excellent process to create stable and maintainable code, but it does not fit every bill.

But abandoning it completely on the grounds that it sometimes makes you write "bad software" is a bit weird to me, in fact, one of the main arguments for TDD is that it makes you write better code.

I found that it does make you write better code many times. So like all things, use when appropriate.

I guess the real hard thing is to determine when using TDD is appropriate.
I'm curious to hear experienced developers' opinions on this. Is it true that fixed pricing is better for both sides, clients and freelance developers?

Here's the part I related to: "Freelancers rarely prefer a fixed price payment unless the it’s significantly higher than market rate. That’s because they’ve been burned by scope creep or unreasonable clients so they protect themselves by accepting hourly payment." (emphasis mine)

So how does a freelance developer with fixed pricing protect against scope creep, "unreasonable" clients, or unexpected things that take up more time than estimated? Sometimes, the jobs are so customized and varied, that it's hard to make any accurate estimate, even after planning in detail.
I think the first and fourth points are applicable to unit tests in general rather than just TDD.

For the first point, I'm reluctant to make large-scale changes to code which doesn't have lots of unit tests because the unit tests give me confidence in what the behaviour of the system should be.

Certainly the third point is something I try to bear in mind when doing TDD. I've found that having someone do a code review after a feature is complete gives someone the opportunity to come in from that high level and look at the program as a whole and check that your design makes sense.
Thanks for the feedback, I'm from the WebStorm team. Sorry to hear it wasn't easy to use WebStorm, let me explain the behavior.

Preferred way to find ESLint plugin in "Settings" dialog is to search for "eslint" (ESLint is located in "Languages & Frameworks | JavaScript | Code Quality Tools | ESLint").
If nothing happened after you turned ESLint on, then probably the currently opened JavaScript file didn't contain any ESLint errors (or the file was ignored by .eslintignore). All ESLint error messages are prefixed with "ESLint: ".

As for the reported warning about trailing comma in the object literal, this warning was reported by WebStorm own inspection subsystem, not ESLint. The rationale behind this inspection is that there are JavaScript environments (e.g. IE8) that don't support trailing commas in object literals: http://kangax.github.io/compat-table/es5/#test-Object/array_...

You can disable this inspection in your project: Alt+Enter on the warning, select "Remove unneeded comma", press right arrow => "Disable inspection".
The inspection will be turned off for ES6 (thanks to your feedback).
Hope it helped.
so basically, you want to see statistics on "lying"? just have a gander at the websites that sell questions. I can't begin to tell you how many there are just for technical certs (cisco, McrSft, etc...). and business is booming. follow the news in India and you'll see all the "cheating student" stories you want.

The issue goes to the fact that grades/school prestige are being used to imply that a student will be a solid addition to a company, yet everyone wants to espouse "Meritocracy" - not realizing that only comes after you're in the "real world" and you've got a few years worth of jobs on your resume/CV.

In life, as in classes there is the way the book tells you how it SHOULD be, and then there is the reality of how it actually is. Sadly, students are unprepared for what they will experience in the "real world". Part of it is the school's fault, but also the students bare some responsibility when they insist on wearing rose-colored glasses.
Publishing a native mobile app should be as easy as deploying to the web
First impression: it looks very much like Slack and I don't see where it explains it is a combination of Slack and Skype? There's no mention of conference call and video call.
This NPR podcast posits that the source of the current male / female divide in computing began in the early 80s as a result of home computer and videogame marketing. It's definitely worth a listen.

http://www.npr.org/sections/money/2014/10/21/357629765/when-...
https://news.ycombinator.com/item?id=11303511
Actually, it rejects apps that use some private methods of UIWebView. Unfortunately this is done in one of the 'main' Ionic plugins and was fine until now and was used in thousands of apps...
I thought this was about the economic rates. $85,000 per flight hour per aircraft and 300 million per year for the fleet in 1990, from wikipedia.

https://en.wikipedia.org/wiki/Lockheed_SR-71_Blackbird#Initi...
> but the business people said no

Did they not want to be associated with blatant censorship? That sounds pejorative but I mean it literally.
https://news.ycombinator.com/item?id=11305527
The application shows your horoscope
I guess for me it would be most useful if it also had a production service and pricing, any plans?
TDD is nuts for code without a client or specification. The whole point of tests is to ensure that the code does what it's supposed to do. When you have neither client nor spec, how are you supposed to know what the code is supposed to do? There is, IME, a >90% chance that any such code will be ripped out and replaced as you develop a better understanding of the problem domain.

I've found it's pretty useful to go back and add tests as you accumulate users, though (or convince an exec that your project is Too Big To Fail in the corporate world). You're capturing your accumulated knowledge of the problem domain in executable form, so that when you try an alternate solution, you won't suddenly find out - the hard way - that it doesn't consider some case you fixed a couple years ago.
Thanks for the info.

Is your obj-c good enough to explain what Ionic is actually doing in the file that triggers the problem? https://github.com/driftyco/ionic-plugin-keyboard/blob/maste... Are they really doing it in a 'bad' way?
To clarify this:

> This status code indicates that the server is subject to legal restrictions which prevent it servicing the request.

The "server" here could be a proxy server or the original, hosting server.

> The use of the 451 status code implies neither the existence nor non-existence of the resource named in the request. That is to say, it is possible that if the legal restriction were removed, a request for the resource might still not succeed.
paper.li
Well, there are two groups of companies. Companies that can't find the talent that they need in this country, and companies trying to save money.

There definitely is a STEM shortage, and you are being really dishonest if you say there isn't. Ask any hiring manager at a tech company. Facebook, Microsoft, Google, and many, many other companies do not underpay or maltreat their visa-holding employees in any way. It is primarily this class of companies that are asking for an expansion in the number of visas.

Several bills have been introduced in Congress that would have (further) restricted the ability of the less-nice companies to underpay immigrants or displace native-born workers. For example, S.744 from the 113th Congress.

It is wrong to paint all companies with the same brush.
Senior Technical Product Manager wanted for exciting fintech startup
Well, since this is what people already do some of the time, they just do it manually, especially when learning a new language or library. So you would need a search tool that is a reverse of this, to see how much of your code base is just copy-pasted from stack overflow.
Some of the original discussions around the status code referred to proxies but adoption at the moment seems to be mostly but hosting platforms like github, wordpress.com [1] etc.

I think the original ideal scenario was that a 451 would be generated by the in-country blocks that get put in place by ISPs due to legal requests from organisations.

However, they aren't incentivised to do this as much as hosting platforms are and so I don't think we will see large adoption there.

Instead, hosting platforms are using the status code both for DMCAs and other legal requests where the content may only be blocked for certain countries as part of a pragmatic response that keeps the rest of the service up in those countries (In country blocks are usually overly heavy handed :)).

[1] https://transparency.automattic.com/2016/01/05/error-451-una...
More Encryption Means Less Privacy: privacy requires more politics
The video has no audio. Leaving me to figure out what is going on. If you are asking me to invest my time watching don't ask me to do extra work.
Yeah the view in question is a private[0] sub-sub view of UIWebView (UIWebView > UIScrollView > UIWebBrowserView) which does the actual rendering

[0] there is no direct access to it, though because of Cocoa's architecture you can access it by iterating the scrollview's subviews and look for one with the expected class name
The Three Go Landmines
Scientists find a planet so young it isn't even really a planet yet
I agree that I can't expect my children to necessarily follow in my footsteps, however the point I was attempting to make was that my daughters weren't interested in maths and computing even after having been actively encouraged to take such an interest. (I have a son as well - he's studying Engineering at University).

Meanwhile, you haven't addressed the data that the majority of subjects are female dominated. Psychology for example is 75% female, and yet men are three to seven times more likely to commit suicide than women - yet another gender imbalance that seems to get ignored.

All my life I have heard demands that something must be done about any issue where men are in the majority, but at the same time a deafening silence when the reverse is true.

A recent study has shown that when applying for tenure-track positions in university science departments that female candidates are now twice as likely to be chosen as equally qualified men.

https://www.washingtonpost.com/news/morning-mix/wp/2015/04/1...

That suggests that the current male dominance in STEM subjects is actually despite the same pro-female bias that we see elsewhere.
Good comment. Just a clarification: there is no path to the Green Card from L1B. There is a path from L1A, but I would guess they are a minority of the L1 visas.

So yes, H1 seems to be the one and only skilled immigration program.
Well, if that's all you need, that's all you need.
They are accessing an internal subview of UIWebView to hide the inputAccessoryView from the keyboard.

When you use a normal view that uses the keyboard (UITextView, etc.), you can set it to any custom view you want, but because UIWebView is supposed to be used to display websites and not full apps, that property is not accessible, so they access the internal hierarchy of the webView, find the actual view that triggers the keyboard and modify it's property.
Note that it's not starting to, quickly googling it shows they were rejecting applications back in October 2015 on that ground: https://forums.developer.apple.com/thread/22110

The difference may be in the way it's accessed, and that apple added new detectors which trigger on ionic's access pattern.
Why Are Wheelchairs More Stigmatized Than Glasses?
I find it's slow for opening large files, but not so far behind other editors. Other than that it's fine.
No, Seriously, It's Naming
To be fair the author was abandoning TDD not tests.
He explictly said that he'll add tests after he writes the code.
I Let My Phone Take Me on a Bar Crawl
Drip Joins Kickstarter
The 25 hardest video games of all time
What if you just try disabling transparency in your current theme?
Reply All also did a great episode about it.

https://gimletmedia.com/episode/50-the-cathedral/
I suppose that's kind of what I had in mind when I wrote "conspiracy" in quotes. I don't mean secret societies (nor to rule that out either) - but it seems pretty clear that some groups are seeking to extend their power and it's a coordinated effort.
12 Sure-fire ways to be happier as a freelance designer
Well actually close. If you have 40 years of productive work in you (20 years to 60 then retirement), then yes every 10 years 25% of the workforce does retire.

But I would guess that those 10% of students are heavily skewed to students in their final year of study. Second point is that not all undergraduate courses are 4 years, some are 3 years, so probably closer to 7.5% of students on SO graduate every year.

Which might indicate that the software development field is growing in terms of people active in the field.

*Then again software development is a young persons game, so "retirement" out of the industry might be higher since a lot of people will retire to other fields / management positions.
It's not a good argument against testing, I agree. Automated testing is a huge boon for software quality (though by no means a panacea).

But TDD, in my experience, gives a slightly different dynamic. Because you generated the code being motivated by the tests, there are a lot of unit tests that don't test functional units - tests that are essentially testing implementation decisions.

I've seen situations where that big refactoring would involve scrapping or rewriting tests, and that causes its own kind of architectural conservatism.

I ended up in a compromise position. I use a lot of tests, but I only do TDD in niche cases where it suits the problem I'm solving.
But would the U.S. populace put up with not being able to buy Apple devices at all? That starts sounding like restriction on free trade to the average American which is something they are much more likely to stand against as the government couldn't leverage fear to make the populace go against their own interests.
One of the things that people aim for in writing tests is orthogonality - different tests should not break for the same reason. This promotes the ability to refactor and change your code. I have also seen massive codebases, with masses of tests which were rarely run, and which effectively concreted the code and stopped it from changing.
I agree about the typing lag. It's not just a nit to pick for me. I am reminded of it at every keystroke. I'm also annoyed by it in part because I don't think this should be a problem in this day and age, just because a text editor is supposed to be extensible. We have monstrous performance from Javascript JIT engines today and Atom is perhaps built on top of the best one, yet we wait short moments for letters to appear.

Visual Studio Code works better for me in terms of lag, yet being extensible and similar in concept as well as price. Not quite as extensible as Atom though, not on the order of being able to rebuild the interface and core features as far as I have seen. But enough to offer pretty good suppport for e.g. Go development including linting and debugging, without actually offering this built-in.
I don't agree with this at all as the tests at least say what the code does in its current state. I see that as incredibly useful. It also forces you to think about what it's actually doing as you build it. I get the OP's forest-for-the-trees thing, but I still find incredible value in testing things - even my side projects.
If you don't know what the code is supposed to do, how are you writing it?
> They are accessing an internal subview

An internal undocumented subview which is part of a private framework, aka they're digging into UIWebView's private implementation details[0] in order to do whatever they want to. Which may or may not be possible without that, but sadly that's besides the point.

It's interesting to see that below the now-offending bits are even hackier bits which are currently commented "until [they] know it's app store safe"

[0] which can't be formally private due to the architecture of Cocoa and objective-c I guess
http://www.linuxquestions.org/questions/slackware-14/wicd-re...

Wicd is proving difficult for 14.2. I must admit that I prefer network-manager because of the convenience of the modem-manager when using a usb mobile Internet dongle.

I take the general point you are making. I'm an end user of Slackware. I think that anyone who has ever successfully installed Windows on a laptop would cope with a Slackware install fine if they read the docs on the DVD. Slackpkg makes updates reasonably easy.
I found it to be more difficult than Arch, mainly due to the ease of Pacman and the AUR (using Yaourt), other than that it felt very much the same (note my Slack experience is form years ago.) Gentoo was much harder to setup but easier to keep up to date. I still have warm feelings for Gentoo but I also landed on Arch. And, as I grow older, I like to configuration work Ubuntu does for you...

In my time I'd install Dropline Gnome on Slackware and had a nice up tot date fancy looking desktop on Slackware in about 30 min. I see that Dropline Gnome still exists [0], It can make Slack nice looking and up-to-date quite easily (although they are 2-3 versions behind, they used to be more bleeding edge than anything).

[0] http://www.droplinegnome.org/
I don't think that really avoids the problem. I mean, what if you do a JMP to an address decided based on a value gained from player input? How is the compiler supposed to guess that in advance?
Top Army General Resigns, Then Drops This BOMBSHELL on Obama
I'd argue that the other way around. Once you have a 'guaranteed liveable wage' you have reshaped the 'employment landscape' to permanently exclude anyone who's labour is worth less than that wage. You now need a welfare state to prevent those people starving to death.
Over the years I've gone from writing no tests at all, to being a die hard TDD purist, and then out the other side to writing some things with tests first, others with tests after writing the code, and some without any tests at all.

In some situations I have clear view of what I need to build, and how that should work. TDD is great in that case - write a test for the expected behaviour, make it pass, refactor, rinse and repeat. The element I think a lot of people miss when doing this is higher level integration tests that ensure everything works together, because that's the hard bit, but its also essential.

Other situations you're still feeling out the problem space and don't necessarily know exactly what the solution is. There's an argument that in those cases you should find a solution with some exploratory development then throw it all out and do it with TDD. If I've got the time that's probably true, it'll result in better code simply through designing it the second time with the insight provided by the first pass, but often that just isn't viable. Deadlines loom, there's a bug that needs fixing elsewhere, and I've got two hours until the end of the week and a meal date with my wife.

Finally there's the times when tests just aren't needed, or they don't offer a decent return on the effort that will be required to make them work. I'm thinking GUIs, integration testing HTTP requests to other services, and intentionally non-deterministic code. Those cases certainly can be tested, but it often results in a much more abstract design than would otherwise be called for, and brittle tests. Brittle tests mean that eventually you stop paying attention to the test suite failing because its probably just a GUI test again, and that eventually leads to nasty bugs making it into production.

One thing I'll directly say on the article is that I found his opinion that its hard to write tests for handling bad data. That's almost the easiest thing to test, especially if you're finding bugs due to bad data in the real world - you take the bad data that caused the bug, reduce it down to a test case, then make the test pass. That process has been a huge boon in developing a data ingestion system for an e-commerce platform to import data from partner's websites as its simply a case of dumping the HTTP response to a file and then writing a test against it rather than having to hit the partner's website constantly.
I received the e-mail too, but can't say I'm excited. Fitbit stock is down from a 52 week high of $51, to just $14 at the moment. Low of $11 on the year. Their market cap is still $3.2 billion, which from where I'm sitting still seems high. I don't see the Fitbit blaze fixing any of their problems...
Game Center is still broken after 6 months
A Tall Tail
Using private APIs in a plugin that other people embed into their apps, and not warning them in advance, strikes me as a reckless thing to do.
I think this is way overblown. The reality is that by 1258 Baghdad has lost its power and was replaced as the center of islam by cairo.

The mongols put in place the Ilkhanate and sientific and cultural work flurished for a time.

In Islamic memory the sack of Bagdad is legendary and it has been put as the explenation for the decline of islamic civilisation. I would be very hesetant of using "lostislamichistory" as a source.

Some of the same arguments could be made for china and the romans (eastern).
I dunno, it seems a bit like saying the dollar has value because of the gold in Fort Knox. Possibly it was once true, and it provides a pleasing sense of solidity to an intangible thing, but the scary reality is that it's largely down to social convention. If enough people rejected the legitimacy of government wholesale, its power would evaporate and brute force would not restore it.
Thanks for the explanatin to you both!

So removing this code would mean that all Ionic apps would display this thing here on all keyboards: https://raw.githubusercontent.com/clrung/PrevNextInputAccess... Did I get this right?
Top 10 interview questions on this keyword in java
Banana Click Plantation
Yes, that's the one
How to rock at business without starving your creativity
Don't underestimate the pettiness of billionaires, and the lengths they will travel to embarrass one another.

In fact, I can't think of a plausible reason for purchasing them and then putting them up for sale so quickly that doesn't involve political variables.
I am a fan of Dan Carlin but people shoud not use him as a source for arguments. He has a flair for the dramatic and the grand story of the decline of islam is to good a story not to tell it.
It does ok at other phrases, though.

Never hide hides.
The sound sounds sound.
Flies fly.
It's the right right, right?
The key key is this one.
It's an objective objective.
In May, May may make out with me.
Compared with the last one, this is a fine fine.
The man we saw saw a saw.
The first second was alright, but the second second was tough.
I sure hope it doesn't try to highlight the entire thing, and instead just what is visible on-screen.