skysight-inc/HackerNews huggingface dataset:
Generally, unstable things that appear in unstable channel will only appear in stable 6 months later. That's plenty of time to iron out bugs.

Perhaps you should consider the beta channel?
Rooster App Delivers Books in Easy-to-Digest, Bite-Size Chunks for Busy People
If they allowed that, would they still be charging the [0] $185,000 per ".<whatever>" gTLD like they did with the current rounds?

[0] http://www.icann.org/en/about/financials/proposed-opplan-bud...
New hardware password manager – Seclave
Just as everyone else we were faced with the problem of remembering a growing number of unique passwords just in order to carry out the basic tasks in our everyday lives. We didn’t feel that there was a secure enough solution out there to our problem, and that is why we invented a device.

Seclave stores and manages all of your passwords in a safe way on a dedicated security device. It is pocket-sized and easy to use so that you always have your passwords when you need them.

Any feedback on the concept, on the design of the website or on the actual product is welcome.

www.seclave.com
Tell HN: ATT apparently plans to charge for Netflix use
I was speaking to a representative at ATT yesterday, and they told me that the company is going to start charging extra for the use of services like Netflix and Hulu on their network.

I realize that I have no "proof" of this other than hearsay from a (currently) 432 karma (or whatever it's called on HN) user, but it was a higher-level representative that informed me of this plan.

I just wanted to let everyone know what I was told. ATT is definitely not in favor of "net neutrality".
So they're making their own thing rather than using something widely tested and used like Qt?
Welp, there goes my productivity for the next week.
I've often wondered if nursery rhymes indicate words that used to rhyme?

For example did "rain" and "again" rhyme when the itsy bitsy spider was written?

Did "bone" and "none" rhyme when old mother hubbard was written?
Join us to build the best way to learn Angular
Most people who don't have offices use headphones, yes. If you don't like to wear headphones all day, that's another reason why you're uncomfortable in an open office.
Ask HN: do you have any mobile app ideas?
Hello,

I've been developing mobile applications on iOS and Android since last 3 years. I have worked with 5-6 start-up for their mobile applications.

I don't have much work nowadays and looking for

1. If you have any idea that you would like to use and haven't found suitable app for that.

2. If you happen to know API for a company for which there is no mobile apps out there. The reason I am asking this because of the post (http://ghost.teario.com/how-not-to-write-an-api/) like the author was going to build an Android app for criticker.com but I can't use that anymore.

3. If you want to hire me as a freelancer. I am also up for that. I will be happy to show you my previous work.
If you want them visible, then just do this in your shell:

alias ls="ls -a"

And now anytime you do an ls, you'll have visible dot files.

Of if you are using Linux and the GNU tools, setting the LS_OPTIONS environment variable to contain -a will also make them always visible.
You just need to visualize the tree, and that's it. `hg push -r .` will push checked out changeset and all its ancestors.

Mercurial tracks changesets. Git guys are inventing all kings of weird entities. Local branch? Mutable branch? Do these kind of things have separate sets of semantics in the git world?

In mercurial, branch is just a constant name for a group of changesets. Bookmark is just a temporary pointer to the changeset. Head is a changeset (that have no successors). Phase is information about whether it is safe to modify changeset. Mercurial is indeed a lot simpler.
Guaranteed correctness has a cost in the form of extra specification needed to get things done.

This is simply untrue. Take an example in Haskell:

> show 23
"23"
> show (4,5)
"(4,5)"
> show (Just 2.34, Nothing, [2..5], 'c')
"(Just 2.34,Nothing,[2,3,4,5],'c')"

This works for all types which are members of the class Show. We can even derive new instances for Show for our own new data types automatically:

> data Foo = Foo Int Float deriving (Show)
> show (Foo 3 4)
"Foo 3 4.0"

But what happens if we omit the instance of Show from our definition?

> data Bar = Bar Char Bool
> show (Bar 'a' True)

<interactive>:12:1:
No instance for (Show Bar) arising from a use of `show'
Possible fix: add an instance declaration for (Show Bar)
In the expression: show (Bar 'a' True)
In an equation for `it': it = show (Bar 'a' True)

We get all the benefits of safety guarantees with minimal extra work. This form of automatic derivation works for many type classes in the standard libraries but in the cases where it doesn't work we simply define a few methods which are specified in the class's definition. None of this is any more than what you'd need to do in a dynamic language but you get all the extra benefits of compile time safety.
The major missing feature appears to be intelligent hyphenation. Long words should be broken up by syllable, not raw character count. it's missing the little hash mark at the focus letter as well, but that's an easy fix. intelligent hyphenation likely requires some real NLP work, or at least importing a real dictionary of some kind
Show HN: SlideDog
I've been working with presentation software and AV tech at events for some years. Making the stuff on the screen look good and the switching between presentations seamless (PowerPoints, Prezi, PDF, Web based, etc.) has been a part of my job.

For this job nothing beats a good hardware setup with multiple computers and a true video switcher, but for lots of events this is a costly overkill. Therefore we've tried to make a software solution that emulates the hardware video switcher (and some more).

In SlideDog you can add common presentation formats to a playlist (no Keynote support yet and Windows only, sorry Mac people :-/), pre-load the files and achieve the same effect as you would with an expensive video switcher and multiple laptops. This makes it perfect for smaller events, such as a pitching contest with multiple presenters doing lightning talks, or for presenters who like to mix different file formats in their presentations (and keep the alt-tabbing to the minimum).

The most obvious drawbacks with our solution today is no Mac support (we've got a Mac beta, but it's pretty crappy) and the need to pre-load files again when doing last-minute changes (adding a file from a presenter that comes running with a USB).

The biggest advantage (over a hardware solution) is the price. Lately we've added features that also makes it suitable for audience engagement in classroom settings (polls, chat, live-sharing of slides).

What do you think?

Any feedback is appreciated.

http://slidedog.com
Angular.js is a JavaScript framework. It has an API that does stuff.

We fear not being able to understand it, and the consequential feeling of inadequacy that goes along with that. We all avoid putting ourselves in situations that are likely to make us feel we aren't as good at things as we thought we were.
My recommended mitigation strategy would be to stick to things that computers do badly, and save as much money as possible. If someone asked me to pick a (potentially) lucrative career that won't be replaced by robots or computers in the next 50 years, I'd tell them to go to culinary school.
Does putting a router in a cabinet degrade the signal?
How does that play nice with Dropbox and similar services?
You can develop your own process for filtering out your own phone - vibrate, go to vmail, vmail routed to email with label alerts, etc.

"to not listen to anything that is "out of scope""

Doors work wonders too, and don't end up necessarily causing physical pain after a while, some headphones can.
Show HN: Why We Love Giveaway (And You Should, Too)
I don't understand what intuition and gut instincts have to do with JavaScript frameworks. When I evaluate libraries I do not check my emotional state or what my my stomach is telling me. I use a rational process, a heuristic:

I check to see how actively developed the library is. If it's on GitHub I check how many people have starred and forked it and when the last commit was.

I look at the issues list to see if it has any horrible errors that have been around forever with giant threads.

I check the documentation to see if I like what it does.

I scan the source code to see if it uses giant functions and globally scoped variables or does other horrible things. I also check for readability.

I Google the thing and see if anyone is using it on Twitter.

Then I build something small with it and if it helps more than it hurts then maybe it's good to go.

The place where this heuristic has failed me is with long term big applications. I chose Google Closure for a startup once and it turned out to make everything take much more time than it should have. It was the write more do less library, but at the time there was no backbone.js and Sproutcore, Cappuccino, dojo and ext.js have all pretty much gone away. So I don't know how I feel about it now, but I definitely wouldn't use gut instinct when I can just apply rational thought.
I do use full-disk encryption for my local disk as a whole, but for things inside syncing services like Dropbox, block-level encryption kills a number of the useful features and ends up wasting way more transfer to sync changes.

I know they could potentially do cute de-duping tricks on their end, similar to tarsnap, but even if they passed those space savings on to me I'd still lose the file-level features.

That's why I chose EncFS to begin with, and asked for potential other file-level tools to replace it. Realistically, I'd prefer if this expedited EncFS 2.0 and 2.0 fixed the noted issues.
Boxcrypter uses EncFS.

Not anymore: https://forums.boxcryptor.com/topic/opening-linux-encfs-encr...
Many libraries also have private rooms where people can go for more private study or concentration than they can get in the 'open floor' part, even though the library is already typically quiet.
If you are going to include ed then why not TECO? (NB Purely for potential entertainment value)

http://en.wikipedia.org/wiki/TECO_%28text_editor%29
This is why we invented cubicles. Middle ground between cost/personal area/flexibility.

The only problem with cubicles is when you get the half-height wall ones. Then literally you have almost all the same problem as open-floor while literally costing more money and reducing flexibility.
>It may still be seen as more dangerous and therefore less socially acceptable in the States.

Binge drinking is completely socially acceptable in the States.
British hospital to become first in Europe to use Skype for consultations
> open floor plans are cheaper and more convenient. They take less space per person.

Cubicle walls aren't that expensive. You can put them around small teams. What is expensive are unproductive engineers that cost you $10,000 a month each. In comparison I bet those walls and a little bit more space are worth it.
That is an interesting idea. It is the opposite of how my kid is learning math in the 4th grade today. They are taught to think about grouping and what the phrase represents in an attempt to make it more intuitive. Then if they don't know 7x4 then they can work it out by adding one more group of 4 to 6x4. Eventually the hope is that it will become rote memory. I learned it by memorizing the facts although I could have forgotten the other part of the lesson. I mostly remember times table quizzes.
I did not see anything out of the ordinary here. Most people share this sentiment even now. Your point, treskot?
Calling everyone who needs peace and quiet to concentrate a petulant teenager doesn't win an argument.

Walk into any open plan office with developers in it, they will all have headphones in. You think they want to listen to music all day? 10s of thousands of dollars in lost productivity disappearing down the drain right in front of your nose but you're too blind to see.
Before you wipe the drive you could do a whole drive encryption with TrueCrypt or BitLocker and then use DBAN for spinning drives or Secure Erase for SSDs.
Rain and again still rhyme for me.
You should split it in several files!
On sharing ideas and NDAs
A billion people lack electricity, but microgrids are powering up rural areas
So much for medical data privacy.
All of my work music has vocalists. Most of what I listen to is rock w/female vocalist. But basically there's consistency and familiarity in what I'm listening to, as well as minimum interruption between songs so I'm able to tune it out. I think radio would be super jarring going between songs and commercials and morning shows, so I never listen to it unless I'm in the car.
Uber Cincinnati launches with free rides for 2 weeks
Serving Pages Dynamically with Node.js
No Kindle version :/
As if single-player hadn't ruined my life already -.-
> I dislike working with people walking around behind me (I offer no explanation, it just gives me the creeps)

98% of feng shui is about avoiding that feeling.
And people who put wealth and money before everything else are generally seen as assholes or even evil.

Example: The asbestos industry officials knew of asbestos dangers of asbestos since the 1930s and had purposefully concealed them from the public. To make money.
Back to work: The story of the Hello Games flood
It would be interesting to hear why they didn't pick something like Qt.
I'm having some difficulty getting competitors, with no indication of how long it will take to find one, and when I did find one, about 3 seconds into the game I was told I lost with my opponent having performed no moves. I feel like this needs some work.
They have uploaded everything to Google anyway :)
Why is git pull considered harmful? (2013)
Yep, sometimes I think "well maybe I should just put a HTTP server in front of SQL, then I can just move that to another server when the time comes"...
What? I think it looks better than ever http://i.imgur.com/PJdqYfT.png
I got a competitor pretty easily, but we won in few seconds (both of us)... something is wrong.
Not a block of wood with a cross section the size of three two-by-fours?
> ...if there had been an actual comparison and some arguments for or against one or the other.

What kind of comparison are you after?

To be more scientific, let's take "git push where" and "hg push where". Now count the number of ifs and buts that you have to keep in mind when using Git (am I pushing to the same remote? is the branch "set to integrate"? does the remote has this branch name?) versus plain "push everything to where you cloned from" in Mercurial.

My point is that Git has accumulated too much cruft and has introduced one too many concepts to be usable.
PHP Seperating Business logic into Repositories and Services in Laravel
Fully agree. I did some contributions to gtkmm around 2000, while seeing watching the typical C++ hatred from GTK+ C folks.

Did write an article about Gtkmm for DDJ as part of it.

Eventually it stop making sense to me.
> I have yet to see a sexy Emacs.

(shameless plug)

You can add a nyan cat, if that is your thing.

http://nyan-mode.buildsomethingamazing.com
Angular has managed to do things in a remarkably different way to most of the other JS frameworks out there. Opinionated app structure, enforced strict separation of concerns, views are live DOM, strictly no DOM manipulation in controllers, promises used liberally, testability right up front, etc. ... I agree its just a framework and your heuristics for framework evaluation are still valid, but it's at least understandable that your average jQuery/Backbone dev could feel some trepidation before diving in ... it may represent an enforced "level-up" in terms of their entire approach to building web apps.
Seems rather buggy to me I'm afraid. I've observed:

* Timer runs out, game proclaims both players winner

* One opponent makes no moves for the entire game, proclaimed winner when timer runs out

* One player proclaimed loser at arbitrary point with timer still running and legal moves left in play
It doesn't work very well. Why does this happen? http://cl.ly/UOfb
> I have no idea what the fuck we were doing wrong in the early 2000s or so

I don't think "we" were dong anything wrong. A lot of stuff now being used to accelerate web development simply wasn't mature enough, back then. Also, there are critical-mass effects that simply couldn't be done in early 2000s.

Still, a lot of people were already working on these problems on a conceptual level.
I'm totally fine using unstable, thanks. The point is that this particular feature is going to be enabled by default in Chrome 35 on Linux, as per the submitted article. That's not going to be 6 months from now. What happens with unstable features in the general case isn't particularly relevant when we know what the plan is with this specific case.
Or maybe it is Git that has introduced all kinds of crazy concepts that you're now struggling to keep in mind? Local branches? Remote tracking branches? Mutable branches? Really?
Did anyone else find it odd that he's working on new games, that will (if successful) potentially have the same negative impact on the lives of the people who play and Nguyen himself?

I don't think Nguyen needs a reason to pull the app, and I respect his right to change his mind but I find it funny that we all seek some sort of wisdom when in fact there might not be any. Shit got crazy and he pulled the game, the end. Doesn't make for a compelling story, and creates no "guiding mantra" for other game developers, but for me it's just as meaningful.
Hmm, I say r aye n, and a gen. Are you british?
Apologies in advance, this went longer than I anticipated.

I'm in the midst of re-architecting a legacy system whose terribleness is legendary even in Hell.

Given that this system has a fairly small set of nouns as well as a limited set of verbs that can apply, I opted to try and abstract out each of these into their own services. This allows a rolling replace/upgrade cycle that allows the old cruft to continue running while limiting the scope of efforts to something less than the Aegean Stables.

One characteristic of the beshitted legacy system is all manner of action-at-a-distance and an embarrassing lack of code reuse so even minor changes in business logic involves a nightmare of grepping and hoping you found all the areas that need to be changed to either support that logic or implement it. To that end I opted to have a message broker for create/update/delete operations that was responsible for distributing such events to other services as business logic dictated. Internally we nicknamed it "Sorta SOA".

As an example work flow, a user is created and publishes the event to the broker. It then can either treat response as a pubsub, acknowledged-level message, or an RPC style message.
Broker gets message and generates a global transaction ID that can be used to trace all further emitted messages as well as handling final response to the originating service. It ack-responds to the originator with the ID. It then has a logic chain based on the name of the event message and can make calls to other services such as the communication service that may email or SMS message someone. Comm service acks upon successful receipt of message, then on delivery responds with any resultset. Broker then receives that result set and checks to see if it has completed all tasks for that transaction. If so, it responds with the results of all tasks (or a defined response using a subset of data from results) to the originator.

All services are idempotent and communication is via RabbitMQ to support fabric changes and persistence/guarantees of delivery.

Services themselves are RESTful HTTP API for manipulation of the specific nouns they are in charge of. It's allowed us to separate concerns to a surprising degree and formalize business logic in a single area (the broker) for event-driven behaviors. It also gives us the flexibility to interface with third party services in a manner that was impossible given the previous disastrous code.
Testing the output of tuned Postgres queries
Feel the same way, however most of the projects we are asked to work on require web UIs. :(

If the browsers used something like XAML, with proper support for components, it would be great.

Maybe web components will eventually get us there, but it is surely a very bumpy road to get to something that only now starts to resemble Smalltalk/Lisp environments.
Boston hospital experiments with Google Glass in ER
very very buggy
Those are almost eggcorns.

https://en.wikipedia.org/wiki/Eggcorn
Regarding how long it will stick around: Angular has a de facto advantage over similar frameworks that might be maintained on the developers' free time given Angular is maintained by Google.
Real Targets, Real Users, Real Vulnerabilities – 5 Reasons to Get In
Ask HN: PR – How does it work...
Hey there HN!

I've been running a startup (http://subservice.co) for a little while now and we've worked out what we need to do to take it to the next level.

I've sought some advice, and copied other press article's writing styles, and come up with this press release - http://d.pr/f/gQ5t.

But I'm certain I can still make it way better. Do you know of any good resources or friendly publicists that could help me out?

Thanks in advance!
Some people pronounce it "cah-FETT-ee-ay." Is this closer to the french, or is it hypercorrection?
How do I play this with a friend?
Seems safe to say you know the answer, but let's get it out in the open.

The Magna Carta was signed when King John's lesser nobles forced him to sign it.
"No rights claimed" doesn't mean anything, for whatever it's worth to you to know.
No hat! Who is that man?
I would have said BuckingAm myself.
Speaking of the UK, how on earth did Worcester come to be pronounced "Wister". At least that's the way it's pronounced in the U.S. northeast, when referring to the city in central Massachusetts. The Brits threw New England a whole bunch of curveballs.
One central open bathroom area, no other bathrooms -- the pixar way.
I'd pronounce that Wooster
DJI Phantom quad-copter flies into Yasur volcano
Those are all Mercurial concepts.
I looked at Angular a while ago in comparison to Knockout.

Angular strikes me as one of those frameworks that requires you to get to a certain mental state in order for you to use it. Maybe it just requires an extensive project being built to really appreciate it.

For someone doing web development on a casual basis there is too much meta and magic under the hood with Angular. When you have to quickly get up to speed on something you (or someone else) wrote but haven't touched in days or weeks then I'd prefer not have to do mental gymnastics before getting stuff done.

I'd prefer KISS and obvious solutions.
Is the book available in another format? Eg epub. Pdf is not really good on an ereader.
Yeah, such an architecture isn't a panacea. As with any pattern you have to apply it to the right kind of problem. Treat every noun as a microservice, especially for reads, and you end up reinventing an RDBMS (poorly) in your code. Neither would you demand that a file copy be implemented using map reduce.
Yes, but the GP is a politician who might have youth appeal. I'm not saying it's a complete answer.
You're only interested in phonemes ("The smallest contrastive linguistic unit which may bring about a change of meaning" - [1]), not sounds. For example, the "th" in "thin" and "this" or "i" in "see" and "sit" and "happy" etc., even though they are different sounds, they are the same phonemes - substituting one for the other will not change the meaning of the word, it will just make other people think you have a strange accent.

Also, you can combine letters - e.g. keep "naive" the same, but write "fayv" instead of "faiv" for "five" to indicate a diphthong. And keep "ship" the same, but write "shiip" for "sheep" to indicate a long "i" sound.

[1]: http://en.wikipedia.org/wiki/Phoneme