skysight-inc/HackerNews huggingface dataset:
Some graphene facts that I've found after a few minutes of research:

- One million times thinner than paper, one atom thick, it's considered a 2D material. http://www.chemistryviews.org/details/ezine/4976821/Is_Graph...

- Strongest material, stronger than diamond. http://engineering.columbia.edu/even-defects-graphene-strong...

- Scotch tape was used to create a piece of graphene only 10 layers thick (I'm guessing that means ~10 atoms thick? wow)

- Moves electrons ~200 times faster than silicon: http://www.samsungvillage.com/blog/2012/05/18/samsungblog-sa...

- Transparent, only absorbs 2.3% of light. http://arxiv.org/pdf/1201.3071.pdf

- Can't switch flow of electricity off? https://gigaom.com/2013/04/19/you-can-pluck-graphene-from-th...

- Can repair itself if you dump carbon atoms on the hole, they snap into place. http://arxiv.org/abs/1207.1487

http://en.wikipedia.org/wiki/Graphene
Maybe so; though job ads I'd seen for F# seemed to have higher salaries. Possibly that was just because of where they're based (London salaries are way higher than here, for example)
I apologize for the late response I was looking at more of the code trying to get a better feel for what it is actually doing.

To answer your question, I'd start with why you are worried about exceptions in rendering your exceptions? Whatever you are using to render your exception should be so simple and stable that you shouldn't need to worry about it.

Also another question, from a fairly quick glance and I admit I didn't read through every last line of code, it appears as if all application execution is wrapped in a try/catch block, instead of exceptions being caught and handled closer to the potential points of failure is there a reason for this?

And one nitpick, because it was kind of a pain to follow some of the code but nested if/else statements five/six layers deep are generally kind of discouraged.

Thanks for taking time out of your weekend to respond and good luck to your team!
Also teach it still at Waterloo, Canada.
Can you describe what things Xcode lacks that you miss from Delphi? I'd be interested in learning more about such features.
rc appeared in v10 unix in 1989. Tom Duff, the author, named it.
Some possibilities:

- He's an executive, not a hacker.

- It's easy to believe a CEO is guilty of insider trading, because all CEOs are guilty of insider trading. (Few people take the next step to wonder why insider trading is a crime at all.)

- He's actually in prison, which makes him less sympathetic.

- He's a Bellhead, which makes him less sympathetic to me. (I've worked at multiple descendants of Ma Bell, so my prejudice was earned.)

- The biggest thing, I think, is most of us imagine that if we just behave in socially-accepted ways, that's enough to keep us out of trouble. It's uncomfortable to consider the possibility that isn't true.
Actually I'm not, I think PHP is a perfectly good language for certain things I'm just not blind to the issues with the language. I responded with my reasons that I believe that particular piece of code isn't so great.
RapGenius for reading code?
I used to use rc on Linux. The details are hazy, but the two main things I remember are:

1. There were lots of little compatibility problems. ssh-agent and gpg-agent can output either Bourne shell or csh. rc can't parse either. I also had trouble with using rc as shell in Vim, something to do with the different quoting rules of rc IIRC.

(This wouldn't be problems when using rc in its native Plan 9 environment of course.)

2. I can't live without readline.
Really clear. Good job.

As a guy who usually reaches for python when no language is mandated by other factors, I'm supposed to like go.

I think Scala is a more attractive proposition. Maybe this is more a reflection of my python style having become more "functional" of late.
I saw this posted on HN awhile back and thought it was very cool:

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

Or direct link to the actual project:
http://yasp.me/

If you're interested in assembly but don't want to learn it with tools that seem old (qtspim), yasp gives you a nice web ui to step through your assembly code.
We automated quite a bit with PowerShell. Our deployment scripts which unzip releases, update IIS config (apppools, virdirs, new sites) and our scheduled jobs are all done via PoSh. We also use it for lots of generation/execution of ad-hoc SQL for data manipulations.

As a shell (especially remoting to servers); it's great. As a scripting language, ironically I'm more likely to use F# (FSI) these days, mainly due to two serious bugs in PoSh Scheduled jobs we've never gotten any response from Microsoft over :(
just say so, then. being tantalisingly vague in an attempt to build interest can backfire very badly.
Graphene is pretty cool stuff but just flakes of it are not as useful as sheets are. That said, for experimental purposes this may be an excellent laboratory technique for acquiring samples. Not sure why the anode needs to be platinum though. It seems like any conductor would work there. Given that a common "D" sized Dry Cell (aka a non-alkaline battery) will give you a graphite rod (the center core is pure graphite) everything but the platinum should be available off the shelf. If it really does need a platinum anode you'd have to raid a catalytic converter for that.
This blog post demonstrates grouping values under the associated filter expression:

http://kindohm.com/posts/2013/09/25/knockout-query-builder/

There are also number of projects implementing JavaScript query builders that can be found from there, including Red, YUI, jQuery and Ext Grid query builders.
Uber's Dirty Trick Campaign Against NYC Competition Came From the Top
Archival prints are great, and I agree that this seems like the best way to pas on your images after you die. However, I don't think there's going to be a problem with most RAW formats as long as computers can compile and run dcraw.

It seems like the most archival storage for images is to just write the uncompressed pixel data, width, height etc... to a file. Something like PPM, I guess.
> If an asset is backed by a vault of gold bars, it is inherently centralised because the gold is in a central location and has counterparty risk as well as being prone to confiscation.

This sounds a bit like saying that Bitcoin is inherently centralized because someone can physically hold a gun to your head and compel you to turn over all your coins. I think there are still benefits to a blockchain approach, even if the represented asset is "centralized."
They released an iOS port (GLKit-based) of their worm browser on the app store.

Source code is here: https://github.com/openworm/openwormbrowser-ios
My last two companies have offered or will shortly offer this benefit. I read the Netflix benefits deck a while ago and mention it frequently in conversations with colleagues.

One benefit to this policy that goes unmentioned is the decrease in friction in tracking PTO. In previous companies, I've had to find a PTO form, fill it out, submit to manager for signature, submit that to Payroll/HR for tracking and then finally take the time off. Payroll/HR has had to submit this number to ADP who has had to track it on my paystubbs. My manager has had to track my vacation and make sure I wasn't taking off without filling out the forms. When I left, we had to reconcile PTO banked but not taken and pay that out.

With an "unlimited" vacation policy, all that friction, or at least most of it is gone.

The one part about PTO I strongly dislike is getting "approval." If PTO is offered as part of your job, you shouldn't need approval to take it. Notice, yes, sure. Letting your team know you will be out is just good professional ethics and behavior. But requiring your manager to "approve" has always bothered me.
Marketing Personas: The Complete Beginner’s Guide
Does Google crawl this documentation? I know they have some JS support in their crawler, but is it enough that it would actually index a docsite built with this tool?
Rl.tl now supporting CSV data
Object Pascal is not the predecessor to Delphi

Delphi is the IDE and compiler, Object Pascal is the language (Free Pascal Compiler and GNU Pascal are two other compilers, both exhibit the same quick and safe compilation).
Wow... In the EU, 4 weeks is the legal minimum paid time off for all workers. Some countries (eg Germany) set higher limits (of 6 weeks). If you don't use up your paid time off then the company has to pay you. And this applies to all workers, from developers to people working in a bar.

The holidays is one of the reasons I wouldn't want work on USA
The comment you responded to was indeed inappropriately irritating. But please don't respond to incivility with more incivility on HN. It's hard not to, but it only makes things worse.
My silent downvote means "discussions about which licence is more free are really tedious. I've probably heard all the arguments people are going to make and I really don't need to hear them again in this thread. One group prefers this licence; another group prefers that licence. They are not going to agree and no-one is going to change their mind so why the fuck can't people just accept that sometimes people make a different choice and move on".
+1 I also say that language polyglots are generally a much better find than those who build their career around a single language to rule them all. Although some of us promote JS as pretty close to that, even JS has a C/C++ base under the covers.

It's hard to get any new system to be seen seriously. It took the better part of 3-4 years for NodeJS to see any traction, and even then it's misunderstood. I continuously see people following the same patterns in building Node modules as they would for C# libraries.

It looks like you've at least tackled what is a very hard part in many organizations, and that is infrastructure. Not to mention, the new code can intermingle with the old (at least for a while).

I like FP paradigms, I find that it definitely leads to better unit test coverage... Not that unit test coverage is everything.
For those interested in Chand John's article, here's the link: http://chronicle.com/blogs/phd/2013/09/19/the-ph-d-industry-...

Why the author of the posted article couldn't link to it is beyond my understanding.
I'm not trying to argue secrecy is right in this case — I don't know enough. I'm just saying that anyone (including the ACLU!) should recognize that limited & temporary secrecy is really important in combating crime or fighting wars. The question is just how we make sure it is limited, temporary, and really only applied to the right things — and not used as a way to cover up/hide information which should be public.
Looks nice! What technologies are you using for cross-platform support in your app?
Congratulations! You have a seed for your own Enterprise/B2B startup. This is how I have seen quite a few such startup sprout. Now, you have to be careful not to let your employer take control of the IP you develop for addressing this problem. The key criteria is that you didn't come up with the solution while you were with your employer.

Talk about problem but don't talk about your solution in the same domain as your employer while you are with your employer.

Don't discuss the solution with anyone at your workplace or other employees, you are free to talk about the problem and problem space. Don't try to suggest or sell to your employer your solution. Don't use company time and equipment to develop the solution and any associated activities like documentation, presentation, emails or anything to do with your solution. Don't create paper/electronic trail that can date that you came up with solution while you were working with your employer.

Keep developing prototype solution on the side, keep identifying potential buyers, investors, partners etc. (never discuss your solution, just the problem). Focus on learning problem space, key players and solutions in the space. Become expert in problem space inside and outside company. Keep incorporating in your prototype the key problems and features potential buyers indicate. Your prototype need to be a reasonably working solution for B2B buyers to buy.

Once you are reasonably confident about potential of your solution and working prototype, quit your job. Give the impression of you are traveling and relaxing while continue working on your solution for however long your signed agreements, NDA, etc specify (typically 6-12 months is reasonable time after which anything you do belongs to you). Then start your company and go out sell to potential buyer. Avoid having your last employer as first buyer.

Good luck!

ed: IANAL.
The iOS source code is on github: https://github.com/openworm/openwormbrowser-ios

Plenty of bugs to fix.

(disclaimer: I wrote a good chunk of it.)
Rust for C++ programmers: Why Rust
Hey. Personal attacks are not allowed on Hacker News, even when someone else flames you first.

(This originally read "regardless of how wrong you think someone is", but as someone pointed out to me, that was the wrong way to put it, and the original offender was upthread.)
Google Distance Matrix API for Node.js – Find distance data between locations
Adding my 2c to this discussion:

I saw just recently, via SourceForge's email newsletter, that Free Pascal made it to SourceForge Project Of The Month (POTM):

http://sourceforge.net/blog/april-2014-project-of-the-month-...

I've used various Delphi versions, a little, for personal projects [1], off on on, and liked it. A pity that the free Turbo Delphi Explorer version was discontinued. (TDE was released and then stopped when Borland was in its CodeGear incarnation some years ago.) As others have said, hope Embarcadero comes out with a low-end free or low cost version of Delphi. (They did have a Delphi XE Starter Edition, not sure if it is still there.) I've also read off and on that Delphi (and other Borland products) were/are big in Germany and other European countries.

[1] http://jugad2.blogspot.in/2010/08/digital-clock-v10-in-3-lin...
We've always done it this way: A Stanford professor is wrong
Personal attacks are not allowed on Hacker News, regardless of how wrong you think someone is.

Mixing in a gender slur makes it worse.

This is the kind of thing we ban people for, especially when they don't have a history as a positive contributor on the site.
Are you Managing the Signals Your Startup is Sending?
I would say yes. Fixing misinformation (even honest misinformation) on the front page is a good thing.
With a ledger, you don't get non-repudiability. No transferability if the ledger is down. Does nothing for redemption risk.

With a signed token (optionally blinded), you get non-repudiability, but if the central exchange is shut down, you don't have safe transfers (it becomes impossible to prevent double spending, so you probably do a single payment to a trustworthy entity and get new tokens from elsewhere). Does nothing for redemption risk.

With blockchains, you have non-repudiability (although less strong than the signed tokens, due to 51% double spend attack being easier than defeating RSA 4096 or whatever), and continue with transferability even in the face of issuer failure, but still have redemption risk (if it's a "backed" currency).

Arguably sidechains give you non-repudiability, eternal transferability, and no redemption risk (at least back to bitcoin). However, it only makes sense for things which are anchored in the root blockchain (i.e. ultimately bitcoin derivatives of some kind); it doesn't make sense for gold bars.
I was never a huge fan of taking full days off weeks in advance. I've always preferred half days off. Some places won't always let you do this but my last job of 5 years. Let me go home on a 1 minute notice or email my boss in the morning that'd I'd be taking a half day off. Coming in late or not at all. This was discussed with him beforehand and he did the same with his boss. I was only give about 2-3 weeks total a year and I was always ahead on my work and never did it during busier crunch like times. I can't imagine having to fill out that kind of paperwork to take time off. That just sounds miserable.

Where I worked agreed with your statement. It's your assigned pto. You can take it anytime you want because that's what it's their for. Obviously everyone was ethical and respectful of timing. But it was a very relaxed and low stress work environment with the ideal that the work will be done when it gets done.
(Oh, $DEITY I don't want to get involved in another BSD vs. GPL thread, but I just can't help myself...)

You can't inspect the source of something BSD-derived that's distributed as a binary (which I suspect is the point of the parent poster).

Interestingly the GPL sort-of stipulates that the recipient of the software should be able to build the software from source. This would allow a sufficiently paranoid recipient to inspect all the source and compile said source.
(Ken Thompson's caveat notwithstanding.)
I don't understand how it can be described as '2D'.

If it were 2D you would be able to stack an infinite amount without the stack getting higher.
Having spent over a year working with Magento's community edition, it seems to me that, for a developer unfamiliar with it, the reaction it's likeliest to inspire would be panicked flight.
aI wrote rc-httpd; it's a CGI-capable web server written in rc shell script. I started the project with the idea that I could probably write a whole web server from scratch, learning the shell tools ant HTTP protocol as I went, in less time and effort than learning how to configure Apache 2.2. I reckon I was just-about right. ;) I wrote it for myself, and I never thought it would need to handle the kind of traffic cat-v.org gets.

werc (the CMS for cat-v.org) is also written in rc shell. It's bigger and does more work than rc-httpd, but rc-httpd always seems to be the point of failure. I suspect it fails where I used awk to parse the HTTP headers; plan 9's awk is very slow.

What's amusingly ironic, considering the content of the site, is werc and rc-httpd perform well on Linux and only Linux. The two together have been used on Linux of course, OpenBSD, Mac OS X, and the 9front fork of Plan 9; Linux is the only one where they perform well. It seems Linux the only operating system optimized for shell script performance, and yes, I laugh every time I say "optimized for shell script performance!"

On 9front werc and rc-httpd perform a role beyond serving pages: they exercise the system, and have exposed some nasty bugs. They were first used when 9front had barely diverged from Bell Labs Plan 9. Back then the system could barely handle the load of a far less trafficked site than cat-v.org. It wasn't just rc-httpd, the whole system would go down when just a few pages were loaded at once! 9front has come far enough that it's serving cat-v.org today, but it still has some way to go. werc and rc-httpd also still have some way to go, today there was talk of making werc cache pages which would help a lot, and I plan to improve rc-httpd a bit too, but I'll only take it so far. I don't really think 9front would be improved by prioritizing shell script performance. :D I might try to write a web server in C, I think I could do it now, or there was mention of maybe porting Varnish, too. I've never looked at Varnish... might do that tonight.

Trailing thought: If I do write a web server, I don't think I'll take it as far as Tom Duff did. Tom Duff's httpd keeps all the web pages in the executable; changing a page means recompiling!

... and having written all that, can I say how much I HATE form cookie timeouts?
I work for a company that offers unlimited vacation, and I am skeptical of the skepticism around this. To me it feels like some kind of backdoor justification for the standard, shitty two weeks most American firms offer. While I certainly agree that unlimited vacation can become a defacto way to prevent employees from leaving at all, why would you work at a place that does that to their employees?

In the case of my company, it's a long-standing practice and works very well. People just say they're not gonna be around, and then they aren't. There's no grousing about who takes too much time off. That actually would be working against one's own interests -- I don't bitch about people taking time off because I want to take time off too. (And yes, people can take really really long vacations to pray on a mountain in India or whatever)

I agree about the decoupling of unlimited and untracked, though. It could be useful to have numbers about who takes how much time, as long as it's used to encourage people who are working too hard to take time off, and not in the other direction.

I think a company thinking of offering this benefit should make sure they really mean it. Because if they don't, that's where all the trouble starts. You probably need to be big enough to be in a position where Steve or Grace can take a week or two off without dire consequences. High bus numbers.
I returned my FuelBand once Nike broke their promise of developing an Android app. It seems like there was a lot of confusion on the team.
>BSD-license can be revoked by the copyright holder you know.

No it can not. Someone can stop releasing their previously BSD licensed code under the BSD license, but all the existing copies people got under the BSD license are still governed by it. This is exactly the same as with the GPL, or any other license.
if they are in a sandbox you'll be ok
> I feel like there must be a more elegant way with less repetition

That doesn't actually seem that bad, if you consider that half of that repetition is so that you have distributable URLs that can be opened up on another browser thousands of miles away with no other state information.

You could just have an anchor tag with no src attribute, but with onclick=setState(...). That removes the repetition, but you don't get a shareable URL.
Re [1] above: Image of the digital clock gone from the post, sorry. But it was just a narrow horizontal window with a text box in it, that showed the current time, updating every second, something like the LED digital clocks you see at railway stations or airports.
Delphi/Pascal and Wolfram mathematica are the two things I point people to when we talk about documentation.

Every single function had a working snippet example. Mathematica had details and applications for each function, while Delphi/BP had a well written explanation of what the function would do and how to use it.

They are the standards that have not been surpassed yet. Or even approached imho.

These days you get an auto generated docstring explaining that xval is "the x value passed to the function".
I'm always zooming in and tilting my phone to landscape when reading HN comments. The comments section I read the most and it sucks on mobile.
Of course. Models should be things that can pass the test of time.

Universals.

In the other hand, Controllers (or Presenters) are points of view.

When trends change, they do it because there was a collective mindset upgrade in a shared point of view.

Interface design should be the answer to those points of view, not models.
It's ironic. We're all about disrupting and innovation except for our own sacred link sharing site. The answer you will get every time from these guys: Its good enough. Some perspective: Its 2014 and HN isn't mobile friendly #wtf
Being from the Netherlands, albeit not living there, this is kinda worrying..
My guess is that the people describing it as 2D are focusing on different properties of 2-dimensional space than you are and would agree with you that stacking it would increase the height.
Exactly I couldn't agree more. In a computer sense. Hopefully everyone knows that the lines of code is a bad metric. The number of bugs is a bad metric. Number of new features is a bad metric. Meetings attended another bad metric.

In the world most people in HN lives in. Most metrics are Mediocre at best. There is always a struggle to define quality and quantity of work.

It'd be great if there though.
Can you give an example of what you consider "instant message virtual keyboards"? Do you mean voice recognition services like those offered by Apple and Google?