skysight-inc/HackerNews huggingface dataset:
This is a false truth a see too often. Many products, human creations, are the result of the accretion of many contributors over time. Think cities, the bible, food recipes, most long form narratives from middle ages, etc.

So, no, your equation is not true, neither is the reverse.
The Palindrome debugger that almost was
The author never explains why all these features are desirable.

Safe object traversal? Sure, reflection is a pain, but how would an improvement in this area bring us into the "future"? Also, I may have misunderstood, but isn't Lisp's object traversal about as safe as you can get?

More/better ASTs? I think he was trying to say "compilers should have APIs for third-party tools". Otherwise I don't see why it matters whether the compiler builds an AST or not.

"Direct manipulation of data" as coding? First of all, what does this even mean, and how is it better than the current standard of ASCII files? The author dismisses graphical programming languages as being too heavily focused on "symbolic manipulation". I'm guessing he's talking about LabVIEW, which is admittedly horrendous. But there are others. Blender's node-based shader system[1] fulfills many of these seemingly arbitrary wish-list items. It's easily accessible via Blender's Python API, it has a clearly visible AST, it's deterministic and massively parallel...

In short, I'm confused and unconvinced that the future envisioned in this article is better than what we have now.

[1] http://www.blender.org/development/release-logs/blender-242/...
I LOVE the fare adjustment machines at the train stations in Japan. Just buy the cheapest ticket, get to your intended destination, then go to the fare adjustment machine and slip the ticket in. Short by 100 yen? Dump some change in to pay the balance and you're good to walk through the gate. It's an extra step in the process, but makes me smile.

Much better than the system in my home city where if a ticket inspector finds you've exceeded the area covered by your ticket, you cop a hefty fine. Like the article says, we should aim to design FOR the edge cases not design them away with rigid, sometimes really inconsiderate systems.
"Would you prefer to not have the choice to have access to this feature, and prevent others from having it too?"

Yes, I would prefer that. LinkedIn has not shown itself to be a particularly good or careful actor in the past, and now, even if I don't opt in to this, my email to people using this feature runs through LinkedIn servers. There are always third parties between me and the person I'm emailing, but as the number increases, the likelihood of compromise or failure of delivery increases.
This is a sad discussion -- both the essay and here. Nobody has bothered to look back in history.

"You need to be able to inspect and traverse objects, all objects."

Smalltalk? Lisp Machines?

"There also must be a culture where proper extensions are regularly provided on objects. Powerful tools are built on powerful paradigms, and enabling a paradigm isn’t the same thing as actually implementing it across a fully developed programming environment."

The MOP?

Are we doomed to keep on asking these questions again and again? An IT curriculum should include at least one unit where students are required to study the history of these things and write an essay.
I am sure you do store sender/recipient information and relationships between recipients - even if they are not connected...
Completely agree. I AM a developer, and I still would have no idea how to help 90% of the projects that I use as dependencies. Each developer has their own area of expertise, and it is completely unreasonable to expect everyone to be able to fix everything they use without an ungodly amount of effort. Sure, I know how to code, but if my graphics driver has a bug, someone telling me "hey it's open source, why don't you fix it?" seems like a completely disingenuous response to me.
Hilarious Doritos Commercial
MailMate
It's mainly things like the lack of a good package manager for provisioning, inexplicably large installers, sub-par automation, inscrutable GUI's packed with useless features, having to RDP into a server to perform basic tasks rather than just using SSH, massive bloat(why is everything so huge?), a general disregard for dev ops.

Also I find the licencing really irritating when creating VMs and servers. In the end thinking something "feels" old and clunky is a subjective perception but every time I use MS products it feels like they were created with little or no insight or knowledge into what anyone else is doing, leading to a lot of NIH syndrome.

Absolutely garbage browsers are also a big problem, I know IE 10 is passable but in 4 years when it hasn't been updated and people using Win7 and 8 are stuck using it, it will be the IE6 of its day.

Don't get me wrong, I used MS products basically exclusively for the first 5 years of my developer career, and still use them a fair bit now, and thought it was amazing, it's not until you move outside that bubble and start using better tools and methodologies that you realise how far behind they are.
I correctly described the situation. I think it's ugly too. Do you have a fix? Because that's what we need, a fix, not cheap moralizing.

Moralizing doesn't save anyone from gangrene and sepsis and a slow death. It doesn't prevent the diarrhea to dehydration to death sequence. It doesn't do an ounce of good for anyone.

Immunocompromise (poor, sick, elderly, AIDS, etc.) + long-term antibiotic use = Antibiotic resistance.

That equation is death, and we need fixes, not the crap in your comment above.

"Also, I don't know how your society is or does, but in our country the poor have a better immune system."

No doubt you live on Mars or Venus.
It has been a few years since I was on Skritter but I've been debating starting up again. Is it still Flash-based?
ST is not open source, which makes this argument pretty much moot, and I still doubt this project will ever be a fraction as popular as ST.
I see a lot of people (understandably) getting upset about the MITM aspect of this. But almost as surprising to me was the fact that you can load an iframe in an email with apparently no warning or notification to the user. This seems like its asking for exploitation, even without the ability to run JavaScript.
Can you give an example of an opposite way?
This seems to me to reflect the difference between two cultures. China's tech ecosystem is still fairly young - I daresay it's like the old days of Apple in a garage, the old HP, etc. I think this post on Bunnie Huang's blog explains it (or at least explores it) a lot better than I can:

http://www.bunniestudios.com/blog/?cat=20
Where in the blog post does it say that your credentials are leaving the device in clear text. I know people don't like LinkedIn but I don't think even they would be dumb enough to do this over http.
You can't make a member function template virtual because it's just a template, the function doesn't exist until it's statically instantiated. Instantiation can happen across units of compilation, making it impossible for the compiler to generate a vtable with all the instantiations within it. It's not a "tacked on" feature/limitation at all, and I don't see how any statically typed language that allowed function overloading could really work around that issue.

I'm not sure what you mean about the operator overloading thing.
> Are there any respected languages that use 1 based indexing?

Fortran, Lua, Mathematica, MATLAB, Julia, and Smalltalk among current languages. Among historically important languages, COBOL, Algol68, PL/I.

> It's quite clear that it's the right solution, since the first element of an array is zero distance away from the beginning of the array.

You think it is clear because you are used to thinking of array indexes as offsets. If you think of them as ordinal numbers for describing the position in a list, then it is clear they should start at 1. If someone's grocery list is:

bread
milk
eggs
flour

and you ask them "what item is #1 on your list?", most people will say bread.

If you look at that list I gave of 1-based languages, you might note that many of them are oriented toward math/science/engineering. In math, both 0-based and 1-based are used. For example, matrix elements are specified by row and column number, and both of those usually start at 1. On the other hand, polynomial coefficients usually start with 0.
Quick comment about the signup procedure; just finished the sign up and phone number verification, and I'm wondering why I have to enter the '+' in front of the country code and area code. Your signup form is smart enough to notice it's missing and let me know to enter it...so why isn't it smart enough to see that it's missing the leading '+' and just tack it on?

Reminds me a bit of entering a credit card number into a form, only to have the validation tell me that spaces aren't allowed.
If you discard the idea of working with objects, and instead work with data structures directly, you get generic querying and transversal for free.

A lot of these points look like they're solved by Clojure, but Clojure is my hammer, so perhaps it's cognitive bias that these look like Clojure-shaped nails.
IMHO, new languages are dominated by people that are not the best, but are on their way, as they will spend an inordinate amount of time learning from the best in older languages out of necessity. The arrogant go devs of today are likely to be the jaded experts of tomorrow, as they will be forced to learn in ways that devs on an established platform rarely must.
I'm not surprised, Pinterest is the ultimate consumerist social network and thus worth a lot of money. The method of self-expression is obsessively arranging and curating shopping lists of colorful items, and sharing them with like-minded people. It doesn't take long to realize how much money there is to be made off this.
I can't wait for the day when I can print a FASTA file and get a plasmid/chromosome.
I learned basic first, then c++, THEN the web started and seeing how a little markup and some javascript or vbscript (yes, that was in ie back then) could make an interactive experience, my interest in programming and creating things exploded. I vividly recall the first time I made a static site, the first time I ranked in altavista for a term, or other things that people could related to. It connected a freakish hobby (telling a computer what to do) with the real world that other people could consume and relate to.

Building static sites, I completely endorse.

I don't understand why they should use a VPS to do it.
I totally was going to point out LightTable but I kinda stopped using it when I realized there was no search / replace.
I think we are maybe just working with different definitions. High Availability for Serf means that it can continue to handle changes in topology and deliver user events in the face of node failures and network problems. However, it is inevitable that there will be a degradation in it's performance given network failures. If there are serious packet loss issues, Serf will mark a node as failed.

I'm not saying it "won't work well". It works as it is designed to. It will be available for operations, it will automatically heal when the partition recovers, and the state will be resynchronized with the "failed" nodes. The system will be in an eventually consistent state, which is expressly documented and is it's normal mode of operation.

If you consider 5% packet loss "minimal", I'm not sure what applications you are running. TCP degrades at over 0.1% packet loss, and most UDP streaming protocols have serious degradation over 5%.
You're asking for a clearly delineated line in the sand which I don't think is really possible with these kinds of things. Morals are just inherently fuzzy things. In other situations, this same behavior might be considered on the "crass, but reasonable" side of the line. In this case, I tend to agree that it was probably an abuse of power.
>"So anything that we do to try and kill bacteria, or anything the environment does to try and kill bacteria, bacteria will eventually discover ways or find ways around those" he is making factual statements that are plainly incorrect on their face. Bacteria don't desire anything, and they don't seek out anything or plan anything.

You are taking this too literally. But in any case just because bacteria aren't intelligent doesn't mean their behavior is purposeless. Evolution acts as an optimization process. It's not too far from the truth to ascribe it "desires".

On the frontline episode this was from talked about how pharmaceutical companies have all stopped investing in new antibiotics. It might be possible to make better ones but I don't know how much research is actually going on at the moment.

I'm kind of skeptical. We are fighting against millions of years of evolution. The drugs we have we only got by copying things evolution already found, and they became resistant in mere decades, an extremely short time from an evolutionary perspective. Any simple way of killing bacteria would probably already have been developed by evolution. Likewise pathogens have spent millions of years evolving to defeat everything thrown in their way, and they continue to do so.

We are joining into this ancient arms race as entirely new players.
antibiotics do not cause resistance to form. resistance occurs due to natural mutations. these are going to occur regardless of exposure to antibiotics or not. The antibiotics simply select out the resistant organisms from the auger. It was shear panic when S. aureas developed penicillin resistance decades ago. methicillin was the solution. Now we have methicillin resistant staph aureas. This is nothing to panic over. it simply means the battle is never won and we'll require ongoing research on new antibiotics. To say we have lost is just not true. This is the way life works. he also ignores the possibility of human evolution. We can develop resistance to bacteria as well.
EBay introduces celebrity-curated collections
Tiny module runs Android or Linux
This reminded me of Heinlein's quote.

A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.
-Robert A. Heinlein

https://en.wikipedia.org/wiki/Competent_man
Maptcha: An Experiment in Map-Based CAPTCHA
If she had been a private citizen, I might agree with you. But she was an employee of the White House, which makes JFK her ultimate boss, with the power to promote or fire her.

I don’t care who you are, it’s always wrong to take one of your subordinates, ply her with alcohol, isolate her in a room, and then pressure her for sex. That would be an insta-fire at my workplace. (And it applies equally to male subordinates too, of course.)
LT has had project-wide and intra-editor search/replace since 0.5
Klout?
Mozilla has 500 engineers!? wow.
When I started programming I quickly found that 0-based indexing was generally simpler. A lot of the time, it makes no difference one way or the other (because you're only using indexes to get at each item in turn, so you just memorize the boilerplate for whichever language you're using), but the moment you introduce ranges, or try to convert dimensionality - particularly with random access - or do some wraparound, or try to implement something like a ring buffer, it's all too easy to come a cropper. Either you put "1+" on every array access, which is error-prone, or you try to manage two different "spaces" (the 0-based one that's the ideal representation and the 1-based one used for indexing) and carefully convert between them... which is error-prone too.

Alternatively, you could just decide to start indexing at zero.

...or you could stick with 1-based indexing, it's up to you. The right thing to do doesn't become wrong just because you don't do it ;)
A visualization of the 2012 Federal salary data set posted recently by Enigma.io. I submitted recently to HN, but it didn't get much attention. I've cleaned up a few things and added a median salary/top ten section. All the code is on Github now.
Hey Adam, thanks can't seem to respond to you: but it is, hopefully not for too much longer, can't say too much right now, though. :)
Are you saying proven because it is built better or proven because it's been around for longer and has more documentation ...etc?

I find UDOO (ideally) as a great platform to start, given that it seems to come with a lot more connections to hardware. However, the lack of any documentation makes it a bit hard to start.

Although, they do have a skematic for the tech, so technically I should be able to figure it out ... if only I had a spare day or two to spend on it :(
Riak Core provides a superset of the features of Serf. Riak Core uses gossip to manage membership, but it also provides quorums for coordination, and is based around the notion of a hash ring and virtual nodes. You could instead using Serf to build riak core like technology on top.
Maybe we should be discussing Apple's closed-ass OS instead of harping on the only workaround that could possibly exist. Such "creative" measures wouldn't need to be taken if it was simple for a user to augment their email app.
This sort of negative commentary is always distasteful.

Any person who's used a computer in the last twenty years would understand that the interface is not responding and try alternate input methods (like scrolling, one of the most common paradigms on web pages.)

It doesn't "just look broken".
How is it any less consensual or any more wrong than sleeping with JFK himself?
I realize you're probably playing devil's advocate, but there are more issues with the original statement anyway. He implied this was new. Rabies has always been a 100% mortality rate past a certain point in the infection. In addition, he implied that if you're infected, it's game over. It's definitely not. As you've said, there is a window in which you'll most likely be fine with treatment.
The backspace key didn't work for me in the email box in the signup form.
There is a bit of hubris here borne of ignorance. If you study this problem in any depth, you start to appreciate how pernicious it is. I'm not an doctor or epidemiologist, but I learned quite a bit by reading an excellent book[1] on the subject:

> Indeed, I am on record here on HN[1] saying that I'd like to see the United States follow the lead of the EU immediately in banning antibiotics used in human medicine (especially last-line antibiotics used for antibiotic-resistant human disease) from use on farms. That seems like a sensible way to segregate the ecosystems in which microorganisms develop antibiotic resistance by haphazard evolution through natural selection.

Exposure to one agent can make bacteria more resistant to other agents, even ones that are unrelated. This is surprising, but confirmed through experiments. Bacteria have ways of flushing out toxins that become up-regulated, and they become more resistant to toxins in general. Agriculture only uses a few antibiotics, ones that are cheap in bulk, nontoxic to livestock, and can be mixed with feed, but the ramifications could extend to other, more critical, antibiotics used in medicine.

> As we reach a deeper biochemical understanding of the basis of all life, we will eventually understand the differences, which are biochemical differences at bottom, between human beings and bacteria, between human beings and protists, between human beings and fungi (yes, there are some systematic differences between animals and fungi) and between human beings and all other harmful microorganisms.

I think you're underestimating what we already know. Current antibiotics are based on the differences between eukaryotic and prokaryotic cells, and we understand a lot about the underlying biochemistry and drug targets. Lack of fundamental knowledge isn't a primary issue.

> I'm confident that more bacterial lineages will be wiped out before human medicine is seriously compromised by natural selection of bacteria that are resistant to most antibiotics used in human medicine.

Here you're underestimating bacteria. Bacterial lineages don't really go extinct, because they have no well-defined boundaries. Bacteria are very different from eukaryotes and they pick up genes from the environment. See horizontal gene transfer.

This is one of those vicious problems, like cancer, that resists being solved not for lack of our best efforts, but in spite of them.

[1] http://www.perseusbooksgroup.com/dacapo/book_detail.jsp?isbn...
How well does your organisation do at learning?
This survey was linked from the FoodFightShow podcast http://foodfightshow.org/2013/10/the-future-of-devops.html

I thought the questions were excellent and make a really good basis for thinking about the culture of learning in an organisation.
I must wonder why don't Merkel use phones like CryptoPhone.

http://www.cryptophone.de/en/background/cryptophone-technolo...
Programming is futuristic. It's just that we can always imagine a better future -- and that's what makes programming so awesome. It enables us to build that future.

But if you compare Ruby or Clojure to Forth or COBOL, there's no way you can't see how far we've come. And there's no end of improvement in sight.
What a narrow definition of success
I started with TI Logo when I was 8 and it was fascinating because you had sprites and you could make animations with speed, directions, etc.

I don't like the author approach for teaching programming, I think kids in general need more abstractions instead of entering into CSS, Javascript, etc. I found in Alice 3D a better approach.
On the other hand, I find it hilarious. Face it, what Germans did in WWII was so horrifying that it will be remembered and associated with them for a long time.
Yes, yes, detach yourself from your smartphone and cable tv and twitter sometimes. But do that on your own time! When you're on company time, let's squeeze 50 of you into this cramped open office plan seating arrangement. But don't worry, we'll add an air hockey table and a couple of pinball machines in there too to increase the company culture!

Oh technology industry, where did you go wrong?
Zazzle’s anti-free-speech practices
This post reminds me of an excellent stack overflow answer[1] explaining how slices in python refer to the spaces between the elements.

[1] http://stackoverflow.com/questions/509211/pythons-slice-nota...

(Perhaps in the context of this post I should index my first footnote as 0 :p)
Simplify it:

len(range(100)) == 100

Though - I've written a lot of python code and I never use range. The beauty of python is that all collections are iterable so you seldom need to specify ranges.
With 150K titles, you don't have enough data to warrant a no-sql database. You can set up mysql or postgres in about 10 minutes and dump in the data.
Right. Actually a lot of the issues Bicking points out were handled by Lisps years ago. And you don't have to give op on objects per se: Objects in Clojure (with ad-hoc typing) can be treated as maps and darned near anything is seq-able in that Lisp dialect! Having s-expressions and macros lets you traverse and recombine things you could only imagine doing in Python. And don't even get me started on the power of laziness in Clojure.

Don't get me wrong: Python pays the bills these days. And that language is an able workhorse. But boy do I miss Clojure. The reason I don't use it at work is that I work in Android, iOS and Google App Engine most of the time. Which means Java, Python and Objective-C. The code world has infantilized away from Lisp too far.