skysight-inc/HackerNews huggingface dataset:
I think one problem is that Agile gives a numerical value to how much work has been done: story points.

Management get addicted to getting more story points, and any push back from developers that would lower the number in the short term is ignored. Seriously, I've seen "average story points per developer per sprint" reported to 2 decimal places as if it's a meaningful number.
Now if only there was some syntax shorthand for "just take everything from this now conflicting INSERT and discard what's already there".

Like SQLite's "INSERT OR REPLACE".

Aside of the transactional benefits that upsert has, it's also convenient in that you don't have to update and then insert, saving a lot of typing in cases where you're not relying on an ORM and still have to work with bulk data where you really don't care about local changes (because there were none).

The syntax for this is a bit inconvenient right now.
If you a single type that counts the number of Plank Time units (10^-44 s) from the big bang until the heat death of the universe, how many bits would you need?

If the heat death of the universe is 10^100 years, that's 6*10^150 plank times [1]. log_2(that) ~ 500 bits. So you'd probably go with 512 bits for a maximally-precise time type that will never need to be updated for either size or precision.

[1]: http://www.wolframalpha.com/input/?i=convert+10%5E100+years%...
HTML is not an instance of a "computing language". HTML is simply an input to a program.
Extremely well done on the marketing. I watched the video with my 2- and 2-year-old boys. After we watched it a few times (we all wanted to watch it again and again), the 4yo was talking about the features of the drone ("It has a camera!" "It lands on your hand!" "It's waterproof!"), while the 2yo kept repeating "Want one!" "Want one!" (which I don't think I was saying out loud myself).

I wouldn't preorder one at this stage (even if I had a spare $500 lying around), but this is one of the coolest gadgets I've seen in a while, and the marketing is top-notch.
Wolfram imageidentify.com
Verizon Mobile APIs Part 2: Multiple vulnerabilities exposing customer info
Well said. This is especially useful to some of the nice geek/nerds. I'm printing it out and put it on the wall for a while.
Could HN benefit from a dual-voting system? One for 'agree'/'disagree', and the other for 'constructive'/'non-constructive'?
Of course it is... they just don't know the churn rate (or CAC) yet -- both of which are crucial to the recurring revenue value equation.
>> I really hope that you are right and both movements can actually come and act together.

Fat chance, humans being what they are...

(Yeah, I'm a closet misanthrope!)
> we basically had our own process that just kind of evolved, a mix between waterfall and agile I guess.

Interestingly enough, I find that to be something more in line with agile than the way most teams treat agile process. The agile manifesto itself event says:

> Individuals and interactions over Processes and tools

Which in a way makes most agile processes a sort of oxymoron. At the end of the day we just need to understand that we're building software, and we need to do more of what helps us build software and less of what prevents us from building software. Agile (or what people call agile) can do both.
Thanks! I wasn't attempting to bring something reddit-esq to HN, I simply enjoy learning new tidbits everyday on HN!
Relevant : http://pragdave.me/blog/2014/03/04/time-to-kill-agile/
What? In my experience this has always been true on mobile. If something takes longer than a few seconds to load it gets closed or restarted.
#2 isn't actually time consuming, at least for clothes and toys (the things you'll be buying the most often--it's not like you have to go buy more bottles or another car seat every three months). Huge lots of kids' clothes are available on Craigslist for something like 1/20-1/10 of what they'd cost new. Every few months you just check craigslist for a couple of days until one pops up with the rights sizes, then buy it. You can go out any Saturday morning and round up a mountain of toys from garage sales with no special planning, and any thrift shop will have tons of them at any given time. And, again, Craigslist (and other similar services--my wife uses some Swap Shop thing that's AFAIK tied to Facebook even more than she uses Craigslist these days)

When you're done with the clothes or toys, sell them the same way you bought them. All that stuff ends up being very cheap when you do it this way.

It's easier than buying stuff new. The only time it's maybe more difficult is if you want something specific (e.g. LEGO bricks)

(mid-size city. Maybe it's different in small cities or big cities)
What HTTP/2 Means for REST APIs
Thanks for the book recommendation! On a related note, I now stumbled upon this HN thread with lots of valuable input: https://news.ycombinator.com/item?id=8616952
Any discussion about agile invariably yields the predictable flurry of personal hangups and misrepresentations.

Most common of all, though, are the claims that if you just have a great team full of great developers, you don't need a process. Agile and waterfall both be damned.

But most teams aren't great. Most of the teams of people participating on HN statistically aren't great. But those teams still need to develop something -- banks and big cos and countless firms are churning out code by the millions of lines, by millions of completely average developers -- and agile is an honest conclusion that the classic method of software development doesn't work, most critically by biting off work in such enormous chunks that implementation or design issues -- the fit to the problem -- aren't discovered until enormous efforts have been wasted.

So talk about how agile failed, in your estimation, at some shop or another. But the truth is that almost anything would be a "failure" versus the idealized notion of a perfect design built expertly by great developers. Agile is trying to make the best of a normal situation.
I like the acquisition success story, people bash on Facebook ads but they're probably the best online channel when you have a very specific audience you want to target with high reach (dog owners, UK&I)

Just doesn't work as well for retail products / subscriptions when your audience is not necessarily ready to buy, and you just end up with worthless likes and no conversions.

For instance, FB targeting women 25-35 for online clothes shopping probably results in lower conversion rates than Google, even though the audience demographics could be the same, because search translates to buying intent.
Answering in the name of Pixabay: We started Pixabay years ago and at the time, jQuery was kind of the holy grail in terms of cross browser safe JS development. However, times change and today we would use vanilla JS for the site. And the day will come when we finally take the time to rewrite the code.

Yet, I totally admit, there are use cases where jQuery is still extremely useful. E.g. online web page editors, such as Wix.com or HubPages.com ...

I actually love jQuery! Yet, plain JS has become pretty cross browser safe and once familiar with it, it isn't harder to develop most sites in vanilla JS.

Also, useful methods previously known only to jQuery get accepted as DOM methods. E.g. DOM4 includes methods like .closest(), .append(), or .prepend(), etc. This makes plain DOM manipulation similarly readable as jQuery. But it's not yet widely supported ...
> you end up burning an auto incremented key. Curious to see what PG ends up doing here

I haven't tried, but Postgres always uses values in sequences in similar cases. The good news is that there are so many values in a 64 bit sequence that this really shouldn't matter.

I much prefer some values in sequences to be not used over even the tiniest possibility of a value being used twice accidentally.
dropping of the atom bombs on Japan

I respectfully disagree that it's indefensible. It was either 100,000 Japanese civilians in those 2 cities OR million or more American casualties. AND if the invasion had taken place, millions and millions of Japanese civilians would've died also.

I agree, with proper PR language, anything can be made look half decent and therefore tolerable.
Why the hack is this getting downvoted while the ridiculous post above is getting all the upvotes.

What's wrong with this community?
> if you have a skilled set of programmers on your team you probably don't need Agile. They are self-managed and tend to do the Right Thing (TM) on their own.

"Any sufficiently complicated company w/o management contains an ad hoc, informally-specified, bug-ridden, slow implementation of management”--wycats
This was a great talk and funny one at that : ) Great perspective on what to really be concerned with. There were other great talks at #GOTOChgo but this one is one of the best ones : )
VPS in Canada
Estonian E-Residency Now Available
Any AI that can survive Martian conditions can survive interstellar travel.

"Will it be a nice god?"

http://waitbutwhy.com/2015/01/artificial-intelligence-revolu...
Plus there should be some SEO benefits too. So it should work two fold.
I've seen a site of mine move from mid-30% mobile traffic this time last year, now up to over 50%. I was surprised with the amount and the change over the last 12 months.
You might be right that I'm being irrational. But I've really developed some apprehensive attitude towards the US over the last few years. And the worst thing is, any new day brings some new information that reinforces this fear. Things are objectively getting worse, not better. Somehow I'll have to live with it. But at least I'm not doing any business in the US, so this is not a practical problem for me.
IMHO, this qualifies as trolling without further explanation.
The difficulty is supporting high concurrency AND correctness AND high performance with this feature. Most databases that have supported this in the past have sacrificed one of these; PostgreSQL requires an implementation with no impact to existing users and without weakening the guarantees people are used to.

In most good databases you can compose an upsert transactionally from a set of independent operations. The problem is that this is slow because you are plumbing the database engine multiple times for an operation that could be executed in one shot in principle. A native upsert implementation provides a fast, single operation. In the case of PostgreSQL though, they had to support this in the context of high-performance, high-concurrency, and correctness which makes it tricky because it is relatively complex to implement under those constraints.
The Recipe to Airbnb's Viral Marketing Sauce: Use Contests to Crack PR and SEO
I think I linked to the most balanced bit of that article :)

"We've seen many projects use this style in the last few years, and results so far have been positive, so much so that for many of our colleagues this is becoming the default style for building enterprise applications"

"Monolithic applications can be successful, but increasingly people are feeling frustrations with them "
This.

Basically, our process before was that the PM would plan a release with the customer and a few senior devs, distribute the tickets needed for that release to team members, and then the team shifted them around between eachother trying to make it work, sometimes we couldn't fit some tickets in, sometimes we were able to fit a bit more in. These were fairly long cycles like up to 3 months or even longer in one rare case.

Then we became Agile. When you have 20 devs on a project, your standups won't take 5 minutes. Estimating the tickets won't be done in an hour because too many dependencies. They tried to split teams up into two, but then team A had no idea what team B was doing and there was just way more overhead.

Most people will look at you in a weird way when you tell them you had 20 devs in one team. But what can I say, it certainly worked better than the other things we tried.

As I said, I'm sure it can work, but you need to do it right, and we certainly didn't.
'New York Times,' Buzzfeed Begin Publishing on Facebook
I wonder what the gross profits are.
It's multiplatform, but, you have to have a phone number to be able to get an account, right?
> In my opinion, the problem is that people going into these degree programs (CS included) assuming that they will come out prepared to work in those fields.

Ain't that the big dirty secret about most degrees - you learn most of what you need on the job.

I don't think you can get real-world exposure soon enough, at least so you know what you're working toward. I wish my school had had a co-op program. I dropped out of one program because I realized during a boring internship that this is what I was being prepared for. Instead of straight to college, I'll encourage my kids to get low-level jobs in their desired industry, out of high school (if not before).
Login systems are only one small part of the surface area of most applications. Admin backdoors, an absence of SSL, SQL or other injection attacks, protocol vulnerabilities, unpatched code, homegrown/weak crypto, session hijacks, and XSS attacks going to need fixing too. Applying patches in a timely manner will be essential too.
> In my experience, the people who say agile is awesome would likely say any process is awesome. In my experience, the people who say agile is awesome would likely say any process is awesome.

Agile is awesome because its not a process, but a set of principles which addresses exactly the problem that context-blind adoption of processes creates that makes good teams mediocre and bad teams worse.

Most of the processes sold in a context-blind manner as "Agile" suck, but they are a recreation of exactly what the Agile Manifesto was a reaction against.
Agree : ) Deff. awesome experience watching him present. Such talks stick with you through out.
I love pixel art.

And I'm going to keep making games with pixel art. Why? Not because I want to evoke retro nostalgia. Simply because the asset pipeline is easier to manage. I avail myself of high resolutions and millions of colors, but even with those you can create great pixel art even in a simple paint program and from there it is easy to load into a game and draw on the screen. Plus, well done pixel art reads incredibly clearly -- compare pixelated Mario with the 3D-rendered, mushy Mario used in Mario vs. Donkey Kong.

For 2D gaming pixel art gets the job done and requires minimal tooling and middleware. That's why I love it.
Yes, it is a poor article by traditional standards. It appears the writer did no research at all other than her interview with the department chair (who conveniently appears to agree with the narrative, although it's hard to say whether quotes are taken out of context)

edit: ps, where are the press hits in this article? http://www.paulgraham.com/submarine.html
Posted 7 hours ago https://news.ycombinator.com/item?id=9537551
The problem with the DOM is the DOM itself and how it is written. React decided to abstract it completely, AngularJS decided to bundle its own version of jQuery with it and try to restrict DOM manipulations within directives. But both still do DOM manipulation under the hood, whether it is with jQuery or framework X it doesn't matter, provided the DOM abstraction works on a wide range of browsers and is extensively tested.

But what is wrong is saying jQuery isn't plain JS or "Vanilla JS". Which is stupid since jQuery IS a DOM abstraction and any javascript library written in javascript is plain or vanilla js. It can only mean that the person who says that doesn't know the difference between the DOM and Javascript.
Even Dave Thomas (another original signatory) has admitted there are serious problems with the way agile is generally practiced.

http://www.drdobbs.com/architecture-and-design/dave-thomas-i...
The whole bubble site is actually pretty flaky. Just for the sake of curiosity (and I saw it was free to create websites with) I tried to create an account. Even after creating the account it keeps redirecting me back to the pricing page where it wants me to select my payment plan. Bubble.is, no thanks.

Also not a fan of the alery box that shows up on every page as you try to navigate their website letting me know:

> We're still saving your latest changes... please wait a moment!

> Are you sure you want to leave this page?
Agile does not give us a process, because Agile is not a process (it is a set of principles that can be applied to evaluate processes in the context of a particular team, but its 100% not a process.)
That worked with HDDs because you could stop actively using the old, transfer its content to the new, and start using the new.

In the history of the Internet that has been done exactly once, and back then it was 1/1000 (or maybe even 100000) the size it is now.
The syntax looks inconvenient, but I like it. If you have a conflict, you might not want to just update everything, but only a subset of the fields. With this syntax (verbose as it is), you have the option of explicitly stating what you want to happen in the event of a conflict with no ambiguity. Perhaps there is a place for some shorthand like

ON CONFLICT SET *=*.

But aside from that, for a RDBMS like Postgres, I'd opt for explicit over implicit.
I think we're in agreement, except for a minor point:

> which definitely includes programming and in no way precludes "becoming a developer".

You can of course be a computer scientists and a developer (I'd even say that's an excellent choice), but the point is that a CS education isn't a "programming" education. If you approach CS because you want to program (say, you want to be a web developer, you are in a hurry to start your startup, etc.) you're going to be disappointed. This is because the focus of CS isn't programming languages, but theory. If you like studying logic, proofs, math, theoretical models and you also like programming, then CS is your game!
The first smart pain relief wearable
Well i learn something new every day...
Whoever is paying the electric bill. You see lots of people talking about mining from apartments with included utilities, dorm rooms, their work, etc. It sounds like 21 Inc. wants to take this route on a massive, distributed scale.

Wasn't there also a company that pre-sold mining rigs, used the pre-sale money to fund the manufacturing, and then used the equipment to mine for a few months before shipping, at which point the equipment could no longer profitably mine?
>>claims to be the most advanced and civilized country on this planet?

You seem to have fallen for American propaganda harder than any American I've ever met. We are taught in our schools about the evils our government has conducted throughout our history to the indigenous pre-Columbus populations, women, ethnic and sexual minorities. There has never been a period in American history where some evil was not being visited on either our own people by the rich and powerful or our Government, or evil visited on people of other countries.

I do think it's a country with a lot of positive qualities and the majority of Americans are decent people but with 300,000,000 people some of them are going to be evil or misguided in their attempts to transform the US and the world in ways they think should happen.

The "War on Drugs," which began with alcohol prohibition in the early 1900s and was shifted to other narcotics as time went by is one of those examples. Some Americans think that other Americans should be prevented from taking drugs for a variety of reasons, and so laws attempting to prohibit the trade and usage of narcotics are passed. Civil forfeiture was added as a "tool" to make trade in narcotics more painful as just locking up or fining people was not having the desired effect.

Rather than admit that some people will take drugs whether they are legal or not, these people who want no one to take drugs would rather push further and further in their misguided quest.
That effect to not go against the grain should be more extreme in communities where 99.9% of students attend college.

Regardless, the issue isn't to pick your path exactly before you go. The point is to be prepared to dedicate some marginal effort to it either at the beginning or before.

You really think it's on the schools to tell students what they should learn or what degree they should get? Certainly people have different amounts of support going into it, but we can't just keep pushing the age of personal responsibility further and further out. To absolve underprivileged young adults of these key steps in life is not only harmful to their personal development, but I'd argue personally insulting to their potential as independent adults.
I did uberman for a month when I was first starting out and just doing freelance. I could set whatever schedule I wanted so, I decided to give it a shot.

The big thing for me is, I really like the kind of concentration that the nigth brings, but I also like the early mornings. I've even been contemplating switching to a two-sleep cycle system again so I can enjoy both my mornings and nights.

Back to the uberman: week one was hell. Weeks two and three were amazing. I felt like I was getting so much done and I could fully enjoy any time of the day. Things started to fall apart around week four though. I began having difficulties with grasping at causation. I seemed to still be going through my day and somehow getting things done but I saw the world as just a snapshot of present moments and couldn't quite grasp how one moment transitioned into the next. So I gave it up.
Here's a video of him giving a version of the talk in 1984, to an audience of ludicrous californian hippies:

https://www.youtube.com/watch?v=4eRCygdW--c

I think it might be at the infamous esalen institute.
TypeScript VIM Plugin (uses TSServer)
You could say that about any number of human activities, though. "Geez, all these game conventions use so much power, can you imagine how much coal is being used to power all these lights and booths right now?" If anything, having the monetary system tied to the power efficiency of computing devices should greatly incentivize increasing their efficiency further.

Edit: Downvotes aren't supposed to be used for disagreements, but whatever.
I don't get it, just as I don't get why all those chat apps (BBM, KiK, WhatsApp) refuse to create a desktop client on similar philosophical grounds.
Pycoders Weekly: http://pycoders.com/
The Secrets of Cloth Simulation in Alan Wake
The Best API Strategy for a Consumer App
Show HN: React.js running on a Pebble watch
I didn't mean to imply that Rust was only FP; I was just listing examples of current leading edge technologies and languages.
It's not just about performance. That can be important for complex projects, such as image editors, but it's not why I personally prefer plain JS over jQuery.

However, ask yourself: What's your advantage of using jQuery today? Modern JS is pretty cross browser safe and syntax is becoming simpler and simpler. Modern browsers, like Chrome or FF, have already DOM4 implemented. With that, a lot of jQuery-like methods were accepted: .prepend(), .closest() ... querySelectorAll() is essetially the same es $(...) in jQuery.

Personally, I was surprised how easy and effective it is to write vanilla JS. Which is why the idea of plainJS.com came up. And as a proof of concept, plainJS is naturally fully implemented in plain JS :D And it wasn't hard, and it works properly down to IE 8.
The current plan [1] is for several teams to pool their money and launch together on a SpaceX rocket. Once they arrive together on the lunar surface, then they'll race to see who wins the prize. SpaceX will be paid their normal launch fee.

[1] http://lunar.xprize.org/press-release/two-google-lunar-xpriz...