skysight-inc/HackerNews huggingface dataset:
One approach I've seen for portable Ruby apps is to use JRuby. You gain the ability to package your code as a standalone, compiled java app for distribution. From that it becomes as simple as running 'java -jar app.jar' or use a similar transparent stub executable.

Granted now you've just punted the problem of Ruby version to JVM version (which I've found to be less of a hassle) but at least took care of the nightmarish management of gem dependencies without something like bundler.
Ask HN: How do you manage passwords? Esp. for a company?
Everyone around here always says that you should not reuse passwords, make them long, complicated, impossible to crack with a dictionary, etc. I must admit, out of laziness, I have barely ever followed any of that advice.

How do you manage that ? Is there a foolproof and practical enough way to store the passwords somewhere secure ? (If they're random, 16+ char strings, I can't remember many of these).

More importantly : how do you manage them for a company ? I have recently started mine and am having trouble figuring a smart way to do it. For now we have a physical notebook where we write all of them down but I'm quite paranoid about losing it, and having some ill-intentioned person get their hands on it would be a real and complete catastrophe for us (it contains financial passwords, root passwords to our servers, etc.)

So what's a really secure way to manage passwords ? Especially when more than one individual needs to access it ?
What about the G-forces a Lego MiniFig? Do they have to have their heads glued on?
...parent changed comment from complaining about Hello World having too much boilerplate in Dart to being about something else entirely. This is why HN should not have an edit feature...
Mass is not linearly proportional to length, because a longer rotor needs to be a lot heavier to be structurally sound. A uniform rod is not a good analog for a rotor blade. It's not a far fetched idea to think that the mass is cubically or at least quadratically proportional to the length of the rotor.

Unfortunately I can't remember the source where I saw the 5th power figure.

In addition, the aerodynamics of a rotor don't scale up linearly either.
Tip number 9. If people try to form a union to demand safer working conditions, murder them.

Just because people are rich doesn't mean we should emulate them.

http://en.wikipedia.org/wiki/Ludlow_Massacre
Still seems like throwing the baby out with the bathwater to me. Especially since its from Google; as it is, it looks like the second coming of ActiveX to me.
I see a big value in UI design, where you want to make sure that the general layout of your screen is as intended.

I'm still thinking in actually making this thing as a physical object with a handle you put in front of the screen.
tl;dr: Distributing command line apps is awkward when they are written in Ruby, so you're better off using Go. The author has created a library to help write CLI apps in Go [1] and gives an example of how to use it.

[1] https://github.com/codegangsta/cli
That's pretty much it! I made the company website on the train home from work one day and haven't changed it since, because I always use my profile website when networking or finding work.

I think the biggest issue at the moment (besides time) is that I'm still not 100% sure where I want to take my career next. Lately I've become interested in either building my own startup or joining one in some kind of technical lead role. Neither of these ideas, or my current freelancing career, really need this business website. Whereas, if I decided I wanted to move into consulting, possibly moving beyond a one-man operation, the business website would suddenly be much more important.

Thanks for the feedback. :)
EuRuKo 2014 dates, Call for Papers, and ticket sales announced
The biggest announcement for me is that the Dart VM will be embedded inside Chrome: https://twitter.com/dart_lang/status/400915745413939200
There is actually nothing here other than a Facebook login and a static list of videos, right? I mean, I got a Justin Bieber video.
Do you know that Powershell is something they had to make to have something ti compete with native Shell, right?

This isn't a native feature for Windows and they have to monkey patch it.

If you have used anyother OS, you will find out that Windows is fundamentally broken.
In reply to your new comment about fibonacci. If you look at the actual function doing fibonacci, it's the same length as the equivalent fibonacci function in Java or Javascript... please stop spreading FUD.
The Molybank Blog: What is an Offshore Company?
Now we are coupling data transfer with encryption, which we couple with validation, I thought people would learn from SOAP that this is a horrible idea.

I understand messing around with SSL certificates is no issue for the likes of Google, but for the little guys, it's simply a lot of extra costs and work.

I don't trust CAs and I think we should just use an approach like DKIM for SSL.

I might want the performance benefits of HTTP 2.0 but might not care about security.
Fibonacci function in Dart can be as easy as:

fib(n) => n < 2 ? n : (fib(n - 1) + fib(n - 2));

Examples on the main page just exists to show cases as much language features as possible. It does not say that you have to wrap your Fibonacci into a class.
The title of the post is "On Distributing Command Line Applications: Why I Switched From Ruby to Go", which changes the sentiment somewhat. The guy who wrote the post is clearly happy to choose the right tool for the job. The sensational title here looks silly.

Anywaay Go looks like a good solution for what he's doing. I tried distributing a Ruby-based app years ago (maybe around 2008 or 2009) with a pre-compiled version of Ruby for Windows bundled as part of my programme. The Nullsoft installer package I wrote took ages to write all of those .rb files (that make up the standard lib). It sort of worked OK, but the project didn't go anywhere -- that was probably lucky -- it'd have been a nightmare to maintain.
low risk? We'll see.
Animatron
LoL: Pro or Troll (Janna) 
https://www.youtube.com/TheBingBrothers
Subscribe to my channel.
Sure, table layout is how you'd have to do this. To me this shows that half of HTML/CSS happened because of legacy issues and not with deliberate thought. The semantic web is mostly dead other than to help Google parse out their own ads while CSS remains a mess full of hacks like this.
Sounds nice so far. What I've immediately noticed is that the search dialogue isn't very keyboard-friendly. Just searching 'sec' gave me a few suggestions, but selecting them with the cursor keys and hitting Enter didn't do anything - only seems to work with a mouse. :/
People that write Java don't like JavaScipt, would be another way to look at it.

Working on large scale (tens of developers) web apps has serious issues with JS, and Dart can address some of that.

I don't expect to see AirB&B running via Dart, but Gmail, Google Docs etc will really benefit, and hopefully pave the way for some serious desktop caliber applications.
Version numbers are arbitrary, and most of the JS community were quite ready to check out dart as soon as it was released.

Agreed re existing java developers though. But even in the java community, scala syntax is popular for the same radios dart is unpopular for web devs. I've seen more typescript interest than I have dart interest, again because type safety has nothing to do with unnecessary verbosity.

Languages have users just like programs do. We know, as developers, that making users do extra work is poor. Java is renowned as the 'I studied computer science at university but...' language. Why is Google unnecessarily repeating the mistakes?

Google: make dart 2 cleaner and you'll immediately engage not just java users, but existing web developers and people new to software as well.
Don't think that China isn't partisan; they're Chinese partisans supporting Chinese interests and companies instead. They don't have the same level of global meddling capability as the US - yet.
There's really just one answer to this - Lastpass with two-factor auth. Enterprise features described here: https://lastpass.com/enterprise/enterprise-features/

Replace Lastpass with any other secure password manager, and use any 2F auth you prefer, but that's the bog standard way to secure your passwords.
Cool. Does this integrate with Visual Studio / ASP.NET MVC ? Otherwise this is a non-starter for me.
Exponential Growth (html5 demo)
I thought this was always the plan, which would make Chrome a must of people using Dart apps. Question is if other browsers would include the DartVM (I guess Opera will) or if they will rely on the JS version.
And the pouet page: http://www.pouet.net/prod.php?which=62141
Runs best for me in chrome, but should work in firefox as well.
It's a legitimate concern until you dig beneath the surface of the politics. The fact is that in the near future Chrome will not achieve IE 6 like market share and therefore Dart will primarily be used through Dart2JS. It's a legitimate fear for the future - but that's admitting then that Dart is a darn good step in the right direction and will see high adoption. At this time it's more of a straw man.

Also Google has said they will submit Dart to a standards body. That was never going to happen with Active X. And of course, unlike ActiveX, Dart is open source - so if in a pinch Dart took over the world super rapidly and the other browsers had to incorporate it...
This looks cool but I'll be the guy to tell you that doing this is going to be really hard as a project, and as a company.

To decently organize different subjects you won't be able to stay at the course level for long - too large a grain size. Maybe you can stay at university subject and undergrad/grad distinction, but you'll quickly find edge cases may outweigh standard cases when you define further. You're going to have to start parsing the syllabi of individual courses, which means you're going to have a crash-course on the subject. It'll take time, and you won't get much faster at it in another subject. This is assuming a practical approach rather than a more research driven approach, which would take a lot longer.

That's the first challenge. The second challenge is that tons of colleges are entering the fray and a LOT of courses are going to get put up soon. So the 700 courses becomes 1500 becomes 5000. You may think this is an opportunity but its at least as much a burden. And once you classify them, they'll change, and you'll have to update them. And you won't have access to critical feedback loops on why they changed or their quality.

Between those two challenges you're going to have to find a sustainability model fast. As you note, many others have started to do this, and although they didn't do the particular feature you're talking about w/ matching courses, there's probably a lot to learn from them. I think everyone was going 'platform!' but that involves a LOT of building audience before getting any possible leadgen revenue.

At a much higher level, college itself is going through a pretty big rethink. Its worth asking yourself the question: "why isn't there a standard way that colleges organize their courses today?" (hint: its structural, not just pre-internet). Its also worth thinking about how MOOCs are adjusting their offerings (e.g. shorter lengths, highly multidisciplinary content, topical content, etc), and whether or not standardizing across traditional college schemes is today's and tomorrow's problem, not just yesterday's.

I think its worth learning a bit about library sciences (the nature of classification), talking to MOOC instructors about their experiences, talking to other course listing startups, & talking to colleges about how they think about what makes a college education (or at least read what they have to say). This probably won't require code (gasp, I say this on HN), it's more a get-out-of-the-building problem. Code is kinda your enemy right now, it'll trick you into thinking you're making progress.

The desire to tackle organizing it is noble, but the scope is big. There's lots of other edtech problems out there if you're interested in the space.

And all that said, feel free to prove me wrong!

Source: a long time in edtech, a lot of time spent classifying (e.g. edsurge.com/products), and been involved in lots of discussions with open courseware folks about these very problems.
The Art of Good Alerting
Nice blog on monitoring alerts
If you have PHP skills iwould you consider helping develop a startup that will change the world ?
www.thestudybox.com
Dart is a language and VM, not a framework.

A framework aids your development and provides tools, it doesn't fix shortcomings in language and runtime.
If you mean type annotations then no, right now Dart VM does not use type annotations to optimize things.

Dart VM features an classical adaptive optimizations pipeline that first gathers type information from the run and then optimizes hot methods using collected type feedback to specialize the code.

For more implementation details about Dart VM optimizing compiler you can check out my talk from Strange Loop 2013 http://s3.mrale.ph/StrangeLoop2013.pdf
Blur is really slow, esp. when you're trying to animate it (to get a cool "materialization" effect).
There were pictures on /r/morbidreality (better don't go there) which are said to be from this incident. It was no decapitation but a severe head trauma.
Next step, a Dart VM for other browsers! Otherwise, it's just another transpiler (aka lipstick on a pig)
Any reason why it's only available for iPhone 5?
Been there, done that. I liked Wuala even less because its UI is not a reliable indicator of what it is doing at any given moment. For example, the upload/download queues would often be empty, even when Wuala is clearly transferring files in the background. A folder would show a green check mark, indicating "fully synched", but it would have a subfolder that isn't quite finished. Inconsistencies like that made me give up on Wuala.

If a program is going to be as slow as molasses, that's fine. Client-side encryption means that a lot of things that Dropbox does on their servers need to be done on my low-powered devices instead, so I can tolerate it to some extent. But at least I'd like to see exactly what's taking so long. </rant>
ssh keys with a way to revoke them.

pwgen 20, stored with the security manager.
Couldn't agree more. I made the mistake of using Ruby to build a CLI application too, and distribution is a massive hassle. At the moment I'm still at the awkward stage of distribution via Rubygems which the article advises strongly against, and I'd add "Gem startup time cripples your performance" to the article's point about Rubygems being difficult for non-Rubyists.
Pakistani Startup secures $5 Million funding and gets a mention by Obama.
It's a quote from a news report.
Please review my startup, cloud306.com
You can use demo@demo.com with the password demo to access some demo hypervisors.
This is a little disturbing if this wasn't an accident, though not surprising sadly.
Good Slide .. has anyone seen the video ?
No. Try a cheap quadcopter without any auto stabilization. it takes more than 10 minutes. Maybe 8-12 hours of flying time to become proficient enough to, say, risk mounting something breakable (like a camera) onto it.

Less time than a normal helicopter though, so I get your point.
From what I understood HTTP 2.0 was designed by a committee that failed to come up with a usable standard. That is why everybody still uses HTTP 1. I thought that 2.0 was skipped over in favor of another standard but I could be wrong.
I believe people would be less turned off if you showed them a glimpse of what's behind that wall, a pretty picture of a lake tells me NOTHING at all, even a screenshot (slightly blurred if you want) would go a long way towards letting me decide if it would be worth signing in.
As it stands now the default reaction is 'nothing to see here, move along'.
I think without Dart2JS this would be a non starter. I can't see Apple or Microsoft implementing a DartVM either an open source one or one of their own, remember the Flash Player was an open spec but no one wrote their own.
How come no mention of rb2exe and things of that nature? Are they not viable options? (Haven't used ruby in years but when I did above mentioned solution was the way to go)
"How could they not know this?" -> before 2010, these assumptions held when comparing models to reality.

A major issue is that detailed economic models are verified against the limited time period where we have detailed data, so if some factor X is constant during that time, then you can't really know if its modeled appropriately.
your data is less safe in a German cloud - the NSA is no holds barred in going after that.
Like I said, it offers no protection against man in the middle attacks. It doesn’t matter whether it protects against some other techniques because you know, the attacker will just simply use the technique it doesn’t protect against. It is really simple as that.
At exponential growth even that isn't an option. There were about 1 billion people on Earth in 1900. By 2000 there were about 6 billion. If the population grows 6 times every century then do the math:

36 billion by the end of the century. You would have to convert all the land on Earth to farms and you still wouldn't be able to feed this many people.

216 billion by 2200 Which is almost four times as many as we could support if every planet in the solar system supported the same amount of people Earth does now.

1296 by 2300 An absurdly large number of people. You need to start expanding to other solar systems if you haven't already because this one is running out of resources. Transporting billions of people interstellar distances would take a ton of energy also.

362,797,056 billion (363 quadrillion) by the year 3000 We are running out of planets in the milky way to house them all.

2.19×10^25 by the year 4000

1.33×10^33 by 5000 We are out of planets in the universe to house them all.

8.02^40 by 6000 Now we are running out of atoms to make more humans.

And this is only 4,000 years, not even the amount of time civilization has been around. Not even a tiny fraction of the length of time humans have been around. Barely a blink of the eye for the age of the Earth, let alone the universe.

Exponential growth is a serious force.
Hey Brandon, I would be really interested in the FAQ questions that you prepared for the interview! Any chance you could publish them (omitting the answers if that's sensitive information)?
Of course there is, why else.Obama would explode the 67 year old grandma with a direct hit while she was at.home with her grandchildren while enjoying her flower garden? ( and yes, this actually happened )
Show HN: Make your single page app crawlable by Google with a simple redirect
I can see Dart being big in enterprise, although with no support for IE7 and IE8 this could be an issue...
The luggage company mentioned in the article has an interesting name.
It is very slow for me as well...

Latest stable Chrome, MacBook Pro (end 2012), 16 GB of ram, OS X 10.9. Immediately unusable.
Soft is the new Hard
A good related discussion on determinism and free will:

http://www.bbc.co.uk/programmes/b00z5y9z

(BBC Radio 4 - In Our Time) - no idea if this is blocked outside the UK?
The problem with angular here is that it eliminates tree shaking in the dart compiler. Angular has the same problem with closure as well. tis a big problem imo which the framework creators best fix.
I managed all my passwords with 1Password (with a recipe that is between 20 and 24 alphanumeric characters).

Since 1Password 4 it is possible to have multiple vaults - one of which I share with my colleagues via Dropbox. That way, everyone has access to the passwords if they know the master password for the vault AND have access to the shared Dropbox.
So far it's not clear cut.

When Angular.dart was announced, some people claimed that it would become the default version, and that features would be backported to the JS version. There were strong rebuttals from googlers, but IIRC none of which from the Angular team itself.

For v1.2, the Angular.js team has rushed the backport a controversial feature[1] from its .dart counterpart three weeks before release, months after the first RC was released, breaking the meaning of a release candidate.

:-/

--

1. the underscore prefix to make $scope fields private.
5 Secrets Of Getting A Microsoft Web Development Job
Awesome congratz to the Dart Team on shipping a quality product to the world!

Really hope they're able to keep investing in Dart, they've got an amazingly talented team and IMO Dart's one of the few languages in recent times with the engineering prowess and right focus on fast iterative development, speed, simplicity, flexibility and consistency that's pushing comp-sci forward.
Tired of Thinking? Google Says We Won’t Have To
Speaking of distribution, cross compilation on Go is really, really easy and awesome.

And for those who want to do cross compilation _with CGO_, it's definitely possible and I put a little tutorial to do it: https://gist.github.com/steeve/6905542
Yes, regarding P-Code, the funny thing is that Wirth originally planned to use it as a means to botstrap the compiler which would then be used to compile one that could generate native code, not as final execution medium. :)
So why don't you distribute your Ruby app without using RubyGems?

Look, I've never been able to understand the people who think RubyGems is a good distribution mechanism for end users either. But switching to another language altogether seems to throwing out the baby with the bathwater. You can just create a Debian package or something that depends on Ruby. That's exactly what we do with Phusion Passenger.

Have gem dependencies? Vendor them. Not that hard.

But if you have gem dependencies that contain native extensions that aren't distributed by the OS... well then switching to Go starts to make sense.
They may be viable options if you happen to use the right platform.
On the subject of capitalism, politics, power and liberty I recommend watching the documentary series "The Trap" by Adam Curtis:

[1/3] http://www.youtube.com/watch?v=gZt2HhFXB3M

[2/3] https://www.youtube.com/watch?v=WbRApO3k_Jo

[3/3] https://www.youtube.com/watch?v=LFjCJFsbS0U

Another series by Curtis, "The Century of the Self", explores similar themes in the context of psychology (Freud and Reich), propaganda (Bernays), and the rise of market-based democracy:

[*/4] http://vimeo.com/61857758
I'm looking forward to all the "Why I switched from Go to XXX" posts in three years.

Same thing will probably happen to node.js pretty soon. It has already been happening to MongoDB for quite some time.

Go is currently in its hype phase.

Some people seem to make a living by writing post-mortems.

Why does everything always have to be the latest and greatest thing on earth?

Can't we just institutionalize the hype cycle? Like fashion, minus the seasons? One big show every year where everyone can compare their dicks and then let's shut up about it until next year?
Nice work.

Some (slightly superficial) feedback: In the LHS navigation/filter, when opening one of the option menus (eg 'By Universities') they can have too many options to fit on the screen. The LHS pane doesn't scroll so you can't get to the lower options. Also the '>' arrow should really be clickablabe and point down when opened.
Your recommendation algorithm just showed me a cheap porn video, on first site load!
Yes, this was spoken at Google IO, in a talk where it was mentioned plans about merging v8 and dartvm.

Sometimes it pays off to watch the sessions. :)