skysight-inc/HackerNews huggingface dataset:
Agreed. I came here to post something similar but I was going to mention working with SOAP[1] in addition to what you mentioned. It sounds like the OP is trying to do something which sounded very much like using SOAP and XML to me.

To paraphrase the OP, "Since so many APIs can be described in similar terms, why don't we have some sort of standard that one can look at to identify how to use the API instead of letting the API speak for itself?"

When you start going down this track, you're not only making things complicated on the client's end of things. On the server side, you're having to maintain two things for the API now. First: the ruleset, ensuring it's 100% to spec lest a client fail. Second: the code generating the response in the first place.

I've built clients and servers for both RESTful and SOAPy APIs and I can say I would take REST any day.

[1] - http://en.wikipedia.org/wiki/SOAP
true story. we could do worse than moving toward something like: http://stateless.co/hal_specification.html.
Live from Mozilla's Firefox OS event
Personally, I just assume that implicitly.
The arcane art of cold emailing bloggers
So, which Ruby security vulnerabilities were announced in 2013? I'll settle for ten instead of "tens".
This is one: http://news.ycombinator.com/item?id=4461427
Yes it would. Because making it universal enough makes it incredibly verbose and nasty to work with. JSON became popular because it was simpler than Web Services which became popular because it was simpler than CORBA which became popular because it was simpler than just talking over raw sockets using some sort of protocol ... oh, wait.

Actually not having a "universal" spec helps: it forces every provider to give some thought to how to make his API as lean as possible. Hopefully.
6 months. 1 fear. Are you ready to lean in?
> Didn't get a tech partner: I'm more of a designer first
> and developer second...

Garett, you seem to be a "designer who programs"/"programmer who designs"... Do you think of this as an advantage, or a limitation?
If you would summarize that as the gist of my argument, then you clearly did not read it. That portions of my argument rest on the precedence of case law, is appropriate. Legal decisions in this country are generally decided on exactly that, and not the half-cocked rhetoric you put forth.

For what it's worth, I could put forth statistics that show that guns are used to deter crime at a rate of 80 times the rate with which they are used to commit crime. I could put forth statistics of how many lives were saved the by presence of a firearm. I can show other factors that would mitigate gun crime far and above the proposed legislation.

If we're really going to ignore the Constitution though, why would we ban rifles at all, when the sweeping majority of gun crime is done using handguns? Why not ban those? If we're trying to save lives, then why look at guns at all? Why not ban alcohol, or automobiles, or things that contribute to heart disease (the leading cause of death in the US), or foods contributing to Diabetes, or poisonous toxins. All of these contribute to more deaths than guns. In 2011, more deaths were attributable to blunt objects than rifles - should be ban heavy things?
Hulk: A Haskell IRC server
It's an LLC, but for better or worse, that's not a decision that we put a lot of time into. So it's probably not a meaningful data point.
I've gone a step further and converted the JSON definition into JavaScript method calls: https://github.com/olegp/restwrapper

RPC FTW ;)
I'm not entirely disagreeing with you. If you look at what I said, I wasn't really taking issue with the overall theme of her message, I was taking issue with how she chose to express it and some of the specific assertions she made. Gran and this woman would be making the same mistake: assuming that their life experience is somehow representative of the life experience of someone else. Sure, it's nice to listen to others and learn from the lessons they learned, but don't go telling others that they will have the same experiences you had, as though they are inevitabilities. I'd get mad at gran if she had said that too.
The e2tools command line utilities should work just fine on OSX. I'm surprised no one has bothered to make OSXFUSE work with an ext3/4 driver, but it should be pretty simple. The libext2fs library which ships with e2fsprogs is pretty easy to make work with userspace applications. The the e2tools package uses libext2fs, and there have been FUSE drivers which use libext2fs. I can ask around see if there are some FUSE developers who could update an ext2/3/4 driver that works with OSX and Windows.
Yes, we have. http://en.wikipedia.org/wiki/Web_Application_Description_Lan...
I'm a designer and I'm often surprised that current science has not been able to answer seemingly simple questions such as "what is the most legible typeface for a printed book?" or "what is the best chair for working on a computer?". The reason for this, I suspect, is that we are measuring the wrong things. When researchers study legibility, they measure recall ability, speed of reading, and other quantifiable stats. The results of these studies often vary and are difficult to replicate.

A good typographer doesn't aim for style, he/she aims to get typography out of the way in order to read a text with minimal distraction. Erik Spiekermann put it succinctly when he said "typography is like air, you only notice it when it's bad". I think design will connect to science only when we are able to peek into the brain and see if a person is really concentrated when reading a text, or pleased when he sits down on a really comfortable chair.

This kind of research will bring great dividends in various fields. I can think of anti-depressant medication, architecture, and advertising (perhaps this last one is more controversial).
While I understand the allure of writing specs and using a unified library, good API clients are more terse, as they're written to take advantage of the programming language you're using, and understand the particulars and idioms of the API they're written against. For example, the client might pick up the correct environment variables for your API credentials, or reduce certain repetitive code.

Another example: I wrote a client that returns a queue message. Attached to that message are some helper methods for deleting, releasing, and touching the message. It makes your code cleaner and easier to understand.
Beyond complexity management, breaking a design into many small programs opens it up to a rich set of well-known and proven OS services. Things like hardware memory protection, multi-processor support, queues, mutexes, monitoring, and cross language support. I'll take Unix over some language+standard library _any day_.
> A few years back, one big lure of Python or Ruby used to be the functional constructs that they offered like higher order functions.

This statement surprises me.
As one of my friends on twitter said, "Yes, people won't put their URIs in responses, so let's just put them in this other, totally unrelated file."
I think London's start up scene is becoming something interesting at the moment.
The problem wasn't XML itself, but the complexity they tried to encode in XML. The same sins could be committed in JSON.

JSON has just been lucky that its user base hasn't been the same enterprise architects that ruined Java.
From someone who is unexperienced in soap, what is the problem with it?
If you look carefully, you'll note that the link in your screenshot is not the same as the one in Dr. Meyer's DMCA complaint.
Taken out of context, most "inspirational quotes" seems to me to be startlingly vapid.

1. "Be the change you want to see in the world."

How? This might just mean, "It's up to you to change the world," (a questionable assumption), but this actually says to "be change." What the hell does that mean?

2. "The real leader has no need to lead -- he is content to point the way."

Leaving aside the fact that Henry Miller is a questionable authority on this subject, one might wonder what leadership would actually look like if the leader actually did nothing but "point the way."

3. "A leader is a dealer in hope."

Let's hope the CEO doesn't come in Monday morning with this one.

4. "To do great things is difficult; but to command great things is more difficult."

Why?

I could go on (and on and on).

I don't mean, of course, to impugn the authority of Napoleon, Gandhi, Nietzsche, or Miller (maybe Miller in this case). But I do think little micro-quotes from these thinkers are not simply poor substitutes for their writings, but distillations of those writings into near nothingness.

There are writers who are very aphoristic, but damn few of them. Most set their clever phrases within a much wider web of contemplation and argument. The person who mistakes one thing for the other is likely succumbing to the illusion that they are learning something.
The author means, "It is a lot of work", I think.
hal is currently going through the ID -> RFC process, once it's an RFC, I'm sure you'll see stuff like this.
Haven't had one of these anti-C++ threads/rants in a while, prbably not much new here

https://news.ycombinator.com/item?id=4969372

http://news.ycombinator.com/item?id=4539251

http://news.ycombinator.com/item?id=3712292

______________

this mechanization of the lang spec in Coq looks interestng

http://hal.inria.fr/hal-00674663/en
Ask HN: Should Today, February 24th be celebrated as Apple Day?
I should mention that I've never worked in the corporate world, so my reaction is in that context. I can't talk about the corporate side of things since I've never experienced it.

Also yes static typing in Java does look pretty cumbersome. Personally I'm hoping that Rust takes off, I've enjoyed playing about with it over the last couple of weeks, although it has made me less happy using the more dynamic languages I normally use to do real work.
What is COBRA?
The problem with making all dates into ranges is that there would be no total order. To effectively have a total order, you would need to say "give me the range of time at the smallest possible granularity", which is really just asking for a point in time. If the granularity becomes smaller later, it might break the application if you aren't careful. So, I don't think it's a good idea to give up on points in time.

However, I strongly agree that ranges of time are a very useful concept, and I spent a lot of time implementing Range Types[1] in postgresql for that reason. I think Ruby should have both ranges of time and points of time (and ideally work with the SQL counterparts seamlessly).

[1] http://www.postgresql.org/docs/9.2/static/rangetypes.html
The Science of Nudity: The Skinny on Showing Skin
You've got your boat back, now sue them for defamation or something.
This article is not at all about REST, it is about RPC and its shortcomings. These shortcoming were fixed by REST, and the author of the article rediscovers these fixes.

A key features of a REST API is that is self describable, in a sense, that it has a single entry point from which a generic client can automatically discover available resources and actions. APIs in the given examples are not like this, they require custom clients that are strongly coupled with an application. These are not REST APIs but RPC APIs.
As bad as the US is becoming in many respects, the one thing its still got over the world is that its the one place that respects and rewards entrepreneurship to even the smallest degree.

The barriers to entry in the US are numerous and much more burdensome than they should be in a free society....and are still a flat out cakewalk compared to what the man with an idea faces in other countries.
I'm betting on Canada now. Beats Russland hands down.
It's both. The upside is that I didn't need to find a designer or developer to build it, but the downside is that it's a lot of work to keep up with all of the skills that I need. Ruby, Rails, design, front-end development, MySQL, servers, etc.

Fortunately, as we've grown, we've been able to contract work to friends who are experts in each of the areas, but it can be rather daunting at first.

The other downside is that when designing, I always begin to think about how design decisions will trickle down the front-end to the application to the database and sometimes even to the server. As a result, it's hard to just design and implement. I'm always caught up thinking about implementation even when I'm working in Photoshop.

These days, the biggest benefit is that even though I'm far from an expert in any of the areas, I can competently navigate all of the topics and maintain a pretty holistic view of both the business and the product. That makes it much easier to effectively coordinate everyone as the team grows.
"but writing replacements for existing tools/libraries because they're flawed, while fun, can be an incredible distraction"

I think that's an excellent point and more or less goes along with my comment on this. I think what TPW was doing was actually trying to get out of the rut of completing the real work by trying to have some success and pleasure which would spur him on to finishing what he needed to do (as evidenced by the tweets) (reminds me a little of not getting into real work but spending time "organizing" first under you get the energy up to tackle the real task). Sometimes simply writing shell scripts gets me in the mood to do the "real work" that I have to do (programming or non programming).

Once again, nothing wrong with this approach I just don't think it's an example as stated of a "doer" which is not the same as saying that the behavior doesn't have any value.
You really shouldn't be allowed to write articles about patents if you don't even know the different between a patent and a copyright.
IOS layout helper
SEO Video Strategies with a Top Youtube SEO Video Progress Report Part 1
Go to http://seovideostrategies.com Welcome to Seo Video Strategies, a new project to help marketers how to make money online with video SEO.
This SEO Video Progress Report has been made to showcase that with the correct Video Search Engine Optimization foundation training taught by SEO Video Strategies, that you can reach the First Page on Google Web Search, Google Videos and YouTube within hours in most competitive niches.
When I read stuff like that, I just wonder what exactly the "hacked" company is trying to achieve, or if they have any idea themselves.

On one hand, you have a person who seems to genuinely care about the security of your company (since he gave you details), who had both the chance and the opportunity to use the access to leak stuff that could have been quite damaging to the company - yet didn't, and willfully meets the companies representatives and corporate enquirer.

On the other hand, you have a company who seems to have real problem with its security procedures, an improving but frail image as game platform (not so many dead xbox memes at the moment), and a way to manage problems like an elephant in a porcelain shop.

What exactly did anyone in his right mind hoped such a raid would do??? Let's see, for the potential "benefit" effects of frightening other hackers, it further damaged microsoft reputation and it will turn a cooperative hacker group into a revenge-seeking foe. What did they got??? In the day and age of cloud storage, what they took during the raid was at best zeroed harddrives previously containing a copy of the information they wanted that could now be anywhere - and they pissed off the guy who put that information out of they reach.

Strategically, all I see just looks like a terrible move.

Now think for a second - what if the guy puts everything he downloaded (sourcecode, etc) in a torrent, or pass the pdfs they were so willing to protect on wikileaks? What if he start using his knowledge to create not "giant hacks", but small hacks that could masquerade as bugs ? (say randomly turn off live access, hijack random xbox live accounts, etc)

What if he commits suicide ? After all, he said he lost everything! Seriously all this is at best a PR nightmare, and at worst the first step into a Sony PSN style catastrophy. Some people should be fired, they forgot the basic axiom :

DO NOT TAUNT THOSE WHO CAN DAMAGE YOU.

It will be fun watching anonymous attack xbox live in the following days, then the various bad things that will happen - no, not fun, sad. What will happen is so evident it's a tragedy.

Critics are easy, so I'll offer my 5 cents suggestion too. The right move in this case? Give the hackers a psychological assessment, a background check, then a big fat check to replace the bozos who were in charge of your security and failed. Give them more to loose- money, their dream job, reputation.

Just don't turn them into enemies who have nothing to lose.
You've put together a great deck here, thanks for sharing it!

Can you give us a few rough details of what your initial customer acquisition strategy was? (Or even something a bit more current, although I realise that might not be information you'd like to share).

From what I can tell, Sifter is in a very, very competitive market, and I'd be fascinated to know how you gained customers - and potential customers' interest - when there are so many choices out there for them to choose from.
I was not thinking of perfect candidates but rather having a lot of information that was previously inaccessible to those without means and money offers considerable scope for mischief. Even the most innocuous of habits can be used by those with a grudge or who you are in some way competing with to sow seeds of doubt and cause peers or superiors to question your motives, veracity or trustworthiness.
Ever seen a method called "validateEmailAddress" or something similar? Take any given implementation of that and you can predict with almost certainty that it does not validate all possible valid email addresses (which also has a spec that even came along after the internet was conceived).
It works for that, because it means "disregard this link for ranking". But it doesn't forbid bots from crawling those links anyway, which is what the other poster seems to think it does.
Yes my argument is simply that we publish API specs in a machine-readable format to avoid wasting time implementing clients repeatedly. WSDL and WADL had good intentions at heart, but XML is ugly. JSON is nice since it's human-readable and light. Why not publish JSON versions openly for REST APIs, reducing implementation cost for clients?
VM's IO performance is usually pretty bad. Try an SSD.
Maybe give some usage examples in the README? This sounds interesting but I'm still pretty confused about what exactly the program does.
Keep in mind that I'm not an ActiveRecord fan; the internal architecture drives me nuts, but I do like that I can use SQL when I want to, without ActiveRecord getting in the way.

Here's the first Google hit I came across when looking to use PostgreSQL fulltext searches under Hibernate:

https://forum.hibernate.org/viewtopic.php?p=2447426

That's 50+ lines of code, plus some XML configuration, spread over four files, to perform a highly database-specific task that could have been better handled in raw SQL in a single line of code.

Also if I remember correctly, Hibernate, like DataMapper, requires that you specify your field types in the code, which makes migrations (updates to the DDL) a royal pain in the ass, and migrations are an important task in the operational lifecycle of an application.

I'm a big believer in having sole sources of truth, and so I treat the database as the only source for information about the structure of the database -- I don't want to have to specify that information in two places, where it can get out of sync.

Now, it's been years since I touched Hibernate, and it's probably gotten better. But from what I can tell, the above issues are design decisions; part of a conscious effort to hide the internals of the database from the developer, no matter the cost.

This is why people claim that ORM is an antipattern. Because, while an ORM solves 90% of your problems, for that remaining 10%, nothing beats being able to talk directly to the backend.
These problems are easy to diagnose and hard to solve.

The problem with VC-istan is collusion. As a group, they decide who's hot, who's credible, and who's a loser. Rather than competing with each other, VCs communicate in all sorts of inappropriate ways and make these decisions as a herd. This means there isn't a fair market. The powerful people on one side have found it more advantageous to be in each others' good graces than to compete with each other, which would favor people they don't care about.

One thing I've learned having studied history is that the best thing for smart people is to create a cleavage within the elite. The Protestant Reformation was a time of high social mobility for intelligent people as the elites of Europe lost cohesion due to the Catholic/Protestant division. Henry VIII was detested by other nobles in large part because he promoted intelligent commoners (social mobility) to high offices who could assist him in his break from the Church.

Then, there's the Cold War. Just think of how much scientific progress exists because of this hairline fracture in the world's ruling class.

Powerful people want to glom together and form a clique at the top. The best thing that can happen for smart people is for one half of the powerful people to have a mortal hatred for the other half, so this can't happen. As the elites destroy each other, they'll hire smart people from without and that generates social mobility and a resource transfer away from the entrenched elite and toward talented people.

If you want to save VC-istan, here's how to do it. Randomly assign all of the top 500 players to Red and Blue Teams. Team identity follows a person, not a firm. It's inflexible. Whichever team makes more money in the next 15 years owns all the personal financial assets (houses, bank accounts) of the other team. Even if Blue only wins slightly, it means the Reds lose all their financial assets. I don't make this as a serious suggestion, but that will get some genuine technology made.
The pure JS front-end approach has its advantages, but it adds a lot of complexity for advantages that don't necessarily matter. Oftentimes if not always, you get better results by rendering the HTML server-side rather than client-side.

I'm more worried about Javascript. Unlike Ruby, which has genuine advantages separate from Rails, Javascript is almost entirely propped up by its status as the only language available for DOM manipulation. Once it loses that footing, it's not a very viable language in and of itself.
Hacker's Guide to Eating (Part 2: Brain Foods)
I agree. A part of me finds it slightly disturbing that his ego thinks he knows what's best for a country of a billion people.... It's one to tell Japanese programmers who work in safe jobs to wake up, it's another to tell the general Japanese population.
It would of course be compressed, but I have the least confidence in the estimate in the compression ratio which is achievable in such a setting. So I did only add it in a handwaving way in the end.
Why's that, dons? They are playing a bit fast and loose with what 'higher order functions' means, but, for example, one of Ruby's best features is blocks. The details of higher order stuff in Ruby is certainly... messy, but blocks are a great introduction to the concept for people who haven't used them before. I've taught the concept to high school kids on their first day of programming, (mostly through a physical metaphor involving a list of chores on a piece of paper) and they picked it up easily enough.
Would be nice to see 1.5 support for this.
LaTeX Resume Templates
"A way to stop reinventing REST API clients."
I do think there is a cultural component to innovation. My fascination is India. There is so much software development talent there. I know a lot of developers from India who participate in the success of international firms like Adobe, Google, and Microsoft, but I'm surprised that we've yet to see that sort of company, a real, international powerhouse of software, emerge from India.