OCaml as a scripting language - <AUTHOR> http://ocaml.janestreet.com/?q=node/80 <comment> a-priori I'm sure Jane Street knows their stuff when it comes to OCaml... but this is fluff. Some examples would be nice.

</comment><comment><USER2> It seems like OCaml is mostly dead and Jane Street is the only place it is still used.

<comment><USER3> People from Mozilla, including Brendan Eich, creator of JavaScript, are working on a new language called Rust. The compiler is written in OCaml.

<http://lambda-the-ultimate.org/node/4009>

</comment></comment><comment><USER4> For sake of argument, how does the environment/type system determine if something is a "real program" or "scalable" ?

<comment><USER5> It's all about two things:

1\. Eliminating runtime errors(type mismatches, segmentation faults, and null pointer exceptions are a few problems that have been hammered on a lot and in some languages eliminated entirely). 2\. Being able to manage a large project effectively. Things like build systems, code editors, debuggers, and perhaps most of all, access to libraries/hardware for the problem domain.

Newer general-purpose languages(under ~5-10 years) tend to offer compelling features in the first case, but almost nothing in the second, which makes a commercial project in them an expensive prospect.

</comment></comment><comment><USER6> If I was going to delve into another language why would it be OCaml over Haskell or Scheme?

<comment><USER7> There are some practical reasons, but if you haven't learned any of them, it's hard to recommend Caml. Both Haskell and Scheme (and I'd add Prolog) offer some interesting ways of reasoning about programs, even if you don't end up working with them in the end.

As for usage scenarios: Compared to Scheme, you might like the syntax more, it's statically typed and has a very fast compiler that doesn't even need to use C as an intermediate language. Haskell is much more pure regarding its functional nature and thus its way of interacting with a state-ful world can seem a bit intimidating. If you don't have a lot of math under your belt, Caml's way of interpreting code is a bit easier to mentally model.

I've always thought of ML as the C to Haskell/Miranda's Pascal, for better or worse…

Library-wise, Caml has a very good foundation for writing Unix software. Haskell has made major steps in catching up, Scheme is still a bit balkanized (going from your teaching language to the Chicken/Gambit/PLT infrastructure is not much easier thank taking up Common Lisp).

I'm still surprised at how far Haskell has come in recent years in getting more libraries. It used to be slightly below Common Lisp in that regard, if my memory serves me. Now Hackage is huge. GHC always was a pretty good compiler, so nothing major about the language or its implementation changed. I also know of no big poster boy use cases, compared to e.g. Erlang. Linux hackers impressed by xmonad?

</comment></comment><comment><USER8> As they use OCaml a lot, they are determined to used for everything and will overcome any difficulty, so they will succeed. Scripting is not a high barrier for such determined persons.</comment>


Django much? Here's a Vagrant VM for you. - <AUTHOR> https://github.com/hipwerk/django-vagrant-env

<comment><USER2> I'd love to see something like this for setting up Django on an existing production server. (Especially one that works on Digital ocean or AWS)</comment>


Web GL eye - <AUTHOR> http://vill.ee/eye

<comment><USER2> One thing which would be great when posting these webgl thingies (and this is a very nice one, by the way!) is some idea of the toolchain used to make it - what bits of middleware/helper code/creation apps did you use? Or is it just hand-edited js and flat images from photoshop?

As someone who loves playing around with 3d stuff but doesn't have time to devote proper attention to it (and I would guess that applies to many people here), it'd be nice to see the state of the available webgl tools as you guys (ie, webgl hackers) see them.

Thanks for posting.

<comment><USER3> I'm not sure on the author's approach in this case, but here's a live coding video of Inigo Quilez going over the basics of creating an eye in GLSL, he seems to take the hand-editing route

[http://www.youtube.com/watch?v=emjuqqyq_qc](http://www.youtube.com/watch?v=emjuqqyq_qc)

(You can see some more of his stuff on [http://shadertoy.com/user/iq](http://shadertoy.com/user/iq) \- his shader- writing skills are pretty incredible)

</comment></comment><comment><USER4> Pretty mind-blowing. Would be cool if it uses your camera and you can see how other people see you in their eyeballs.

</comment><comment><USER5> Cool, but what would motivate someone to make this?

<comment><USER6> Art? Fun? That kind of thing?

</comment></comment><comment><USER6> Has some strange black flickering (screenie [http://i.imgur.com/dUOSudN.png](http://i.imgur.com/dUOSudN.png)).

I'm a webgl developer and WebGL works perfectly fine otherwise (no crappy driver, no crappy GPU etc.)

Browsers: Firefox 26 and Chrome 32.0.1700.107 (error visibile in both)

OS: Linux Ubuntu 13.04

GPU: GTX-780

Driver: nvidia 331.20</comment>


Movie Studio As a Service (MSAAS) - Tech Co-Founder Wanted - <AUTHOR> http://careers.stackoverflow.com/jobs/10700/technical-co-founder-cinecandy

<comment><USER3> I worked on a similar startup back in 2000 in San Fran called Red Zeppelin, so I can say definitively that movie studio as an online service is not an original idea. That project even had local news anchor Stan Bunger as a founder. However, the cost of developing this kind of platform today is easily 20 times cheaper, with powerful UI tools that didn't exist in 2000, and there is now a broad mass social market that didn't exist in 2000.

Good luck!

<comment><AUTHOR> Your email isn't in your profile - but definitely ping me - would love to talk!

<comment><USER3> I didn't have a major role. RedZep had a great team, some funding, and vision, but the tech was really hard and they were ahead of their time. They set up a storefront digital studio, and the idea was that you'd do all the preproduction work online (script, music, backgrounds, transitions), and then go into the physical studio for an hour to do the shoot in front of a greenscreen. The plan was to disrupt traditional video production by using the web to squeeze all of the labor out of that process, and to make it easy to publish and host that video online. (Back when hosting video was EXPENSIVE). Then go nationwide with the model. Again, this was years before YouTube and webcams, when it was kind of hard to publish video online. It obviously failed, I don't know those details, I was working for a tech partner that failed first in early 2001. Yeah dotcom bust!

You can google Red Zeppelin Digital, there's still some web mentions and press releases. The principals are all local so you might reach out to them, heck you might find your cofounder!

</comment></comment></comment><comment><USER4> Wow, offering an equity split when you are already so far along. Makes me think, why start my own company. I could just jump on a promising startup that has already done a good deal of hard work. Easier and less risky.

<comment><AUTHOR> A really good point. Much risk has been taken out, but I feel pretty strongly that a really strong core team is created when there is real equity in play. I've put in plenty of time and money, but they're not worth anything until we win. I like my chances of winning better with a well incentivized team!

<comment><USER5> Very little risk has been taken out until you've found product/market fit. Unfortunately, ideation and fundraising don't eliminate risk, they're the easy parts.

<comment><AUTHOR> Touche. Hence the equity :-)

<comment><USER5> You're already ahead of the pack just by realizing that, though. Good luck to you. Feel free to reach out if you want any help.

<comment><AUTHOR> Thanks for the offer - I will.

</comment></comment></comment></comment></comment></comment><comment><USER6> Sounds like an awesome idea...definitely tech/infrastructure heavy. I can see you easily burning through a ton of cash on this.

If done properly, could be an awesome service...but it seems so easy to mess it up and end up flaming out.

Don't mean to be a downer, just encouraging you to be cautious and make sure the product is extremely easy/straight-forward to use for the consumer.

Done right, and priced right, I would definitely use this.

<comment><AUTHOR> I've thought about the infrastructure issue a lot. The nice thing is that our value add is in the "create." We can hand off the "host" on videos that aren't profitable by just posting them to youtube or elsewhere...where they will still have value for the user, and where we can still generate some ads from them...

<comment><USER6> I was really talking about the creation side.

For instance, say someone wants to create an hour long video. From the little that I know of rendering video on my desktop machines - to render a small 5 minute video can take a few hours.

So it just seems that a long-form video will churn up CPU cycles that you are paying for.

Although, now that I think about, I guess you could just charge per CPU hour or whatever.

But I was more thinking of the creation - than the distribution/hosting.

<comment><USER7> There are a few outfits working on the resource intensive encoding problem. The only one that comes to mind at the moment is zencoder.com but I'm sure there are others out there if you look.

<http://zencoder.com/>

</comment></comment></comment></comment><comment><AUTHOR> Would love feedback on this post - no mercy expected!

<comment><USER8> Exciting idea. I'd jump on board if I was "single" and in the US.

I love the viral nature of the service - you have to tell your friends about it so they will contribute their clips to your movie.

It would be cool if you had some great placeholders and the author of the clip could edit and cut a placeholder full version. That way as each friend drops their clip in they can view the whole and adjust their part.

Making the system modular so you could collaborate on a large movie would also be cool.

You could have an import tool that accepts a script as a text file. It finds definitions of characters, scenes, dialog, direction, etc.

It then breaks the script into acts, scenes, shots and creates the corresponding data-structures on your end to present same.

You then use chunks of dialog as placeholders for the rendered imagery and presto, instant placeholder movie. Author then replaces dialog with storyboards, early renders, then finished content.

It could be truly social, like a movie creation wiki with many users. Each user might have different permissions to edit, add content for (some subset of) scenes, etc.

<comment><AUTHOR> I just addressed this with Keyframe. The shining light on a hill is a full toolbox that could be used to create a full on movie. We'll start simple - <USER2> my sense is that people will be able to take it quite far within the constraints we establish. All of the above will make awesome premium features...great feedback!

</comment></comment></comment><comment><USER9> My first recommendation as your pro-bono interim CTO: edit the meta description tag on <http://cinecandy.com> so it doesn't say "Capture email addresses with this coming soon template. Suitable for companies in a beta or pre-launch phase or anyone wanting to build an email list around an upcoming site or product/service," because that's what's showing up in the first result at <http://www.google.com/search?q=cinecandy>

<comment><AUTHOR> Thanks (sheepish grin)!

<comment><AUTHOR> Also - I'm open to discussing extending your interim status, as you might imagine...:-) The pro-bono status would change, of course.

</comment></comment></comment><comment><USER10> This sounds an awful lot like the business model in "Be Kind, Rewind". That said, it's also a lot more promising.

Good luck finding a partner and growing the business, I've been saying for years that the movie industry needs some disruption. Just make sure that if you sell, you sell for enough to make yourself not feel bad when the studios inevitably kill your product.

<comment><AUTHOR> You know, my major motivation for doing this isn't so much about the disruption, though I can see that - it's about enabling group creativity. I am not creative myself, but I the idea that you can get awesome social art by making the tools so simple...gets me very stoked indeed!</comment></comment>


The Facebook API Craziness  - <AUTHOR> http://blog.socialcaddy.com/the-facebook-api-craziness

<comment><USER2> I don't get it - so is the old FQL query still valid but in a different format? I can't believe there is not more documentation about that. Good job.</comment>


Counter-intuitive way to acquire customers – Saying No - <AUTHOR> https://blog.kissmetrics.com/unacquire/ <comment><USER2> I'm not sure this is actually counter-intuitive. Seems like anyone with the domain expertise and discipline to apply this advice is likely to succeed.

Maybe it's "counter-intuitive" in the sense that it's counter to the intuition of someone with no idea what they're doing.</comment>


Four years with Google Chrome, and I'm never going back - <AUTHOR> http://betanews.com/2012/09/03/four-years-with-google-chrome-and-im-never-going-back/

<comment><USER2> What boggles my mind about Chrome is how terrible the location bar autocomplete is.

At least, that's how it seemed to me for ages when I switched from Firefox. I mean, I would have just visited a page with "foo" in the URL, and I would type "foo", and that recent page simply would not appear. But a page I visited two months ago with "foo" somewhere in the URL (or worse, somewhere in the page content) would appear.

I haven't noticed this so much recently -- maybe it's gotten better, or maybe I've just gotten used to it.

I've been shocked that I haven't heard many other people complaining about this. Maybe it's just me?

<comment><USER3> Chrome location bar autocomplete is unable to recognize my history and bookmarks.

Can it be that google does not want users to do bookmark or history search, but rather prefers us to do a google search instead for data mining and ad monetizing reasons? Or can it be due to an Apple patent?

<comment><USER4> My Chrome location bar autocompletes my bookmarks just fine. It usually only takes a few characters for the bookmark to be the top result, and I can tell it's the bookmark since I changed the label.

<comment><USER5> Chrome seems to want to give preference to any random page I visited once rather than my bookmark. And the list is so short - if it's not in the ~6 items you just can't get to it. And you can't just trim the list like you would in Firefox by hitting delete on entries you don't want to be in there.

I'd go back to firefox if their sync system was improved since I last used it.

<comment><USER6> I don't know when you last used it, and I don't use Firefox, but their sync system strikes me as pretty good. It even encrypts everything client-side using strong cryptography and you have to share the keys by opening another browser, I found it pretty great.

</comment></comment></comment></comment></comment><comment><USER7> Internally, there's no such thing as the browser war. It's just something the media hypes up and something nerds argue about. Google used to contribute to Firefox before they went into their caves to give birth to Chrome, and the relationship is still symbiotic. Vendors are happy with the fact that the web is actually progressing now with competition spurring it unlike when Microsoft stopped working on IE in the olden days. Most browsers today are modern and well-kept, even IE10. You'll be fine with whatever modern browser you choose, everyone likes their own little idiosyncrasies found in their browser of choice.

<comment><USER8> Google _still_ contributes to Firefox, in the form of about $300 million per year.

<comment><USER9> Does anyone know how they use their 300 million? They could have a thousand software engineers working on their product, which is probably more than what Google/Apple/MS uses on their respective browsers.

<comment><USER7> As a non-profit, the large focus would be on growing to further their mission. Of course, they're not simply just going to hire a thousand engineers in a weekend. Recruiting takes a lot of time and manpower. Mozilla is currently around 600 employees and projected to double within the next year. And only a portion of actually work on the Firefox platform, Google and MS throw multitudes more engineers at their browsers.

<comment><USER10> There's also the facilities, advertising, etc. 300mi seems rapidely small at this scale.

Firefox for Android did progress enormously as well.

I'm not sure all the other decisions were good tho (Firefox OS for example, even thus it makes sense mission-wise, it probably not the best idea for the money)

</comment></comment></comment></comment></comment><comment><USER10> "I can say with a certain amount of confidence that I no longer derive any personal identity from the browser I use."

"Four years with Google Chrome, and I'm never going back"

The irony.

</comment><comment><USER11> Chrome's launching speed was _amazing_ before SSDs made it so even Adobe couldn't completely fuck that up, and it's update mechanism is still great today. I'm ready for something new though.

These days the back button often seems to mean "redownload the whole page" which shits me just about every time I have to use it, and the address bar likes to just erase everything I've typed when I hit enter and then a few seconds later after it's done some stuff it'll put what I typed back.

<comment><USER12> The first releases for OSX was the exact opposite. It took ages to start up, and still, to this day, Chrome just feels more "right" on Windows than on OSX. Things are way better now, but the start up speed is still not on par with Linux and Windows, for some reason. Not that it actually matters, I rarely restart my Macbook.

I have the same frustration with the back buttom. I get it in the case of POSTed data, but couldn't they just differentiate on it based on current situation?

</comment></comment><comment><USER13> It's amazing how bad browsers still are for some of the most frequent tasks. This isn't directed against Chrome specifically.

I just realize how much time I spend looking for windows and tabs. I use three different browsers for no other reason than to get different entries in the Cmd+Tab application list so I can switch back and forth between them.

I have tried every tab switching plugin on the planet without much success. They're all buggy or slow or just don't do the right thing. And it's really a problem of browser/OS integration, nothing a plugin can or should solve.

I also tried OS X Spaces to mitigate these issues. I had to give up because the animation causes nausea and the switching behavior is nonsensical (e.g. switching back and forth between two windows in different spaces is asymmetrical). That's not the browsers' fault of course.

When will browser and OS makers realize that web applications are applications that need their own icon and entry wherever other applications have their own identity?

<comment><USER14> >When will browser and OS makers realize that web applications are applications that need their own icon and entry wherever other applications have their own identity?

(If you're using Chrome) Wrench > Tools > Create Application Shortcuts > Choose any of Desktop, Start Menu or Pin to Taskbar.

It will open somewhat like a native app.. no tabs/address bar etc

<comment><USER13> So does that give an individual browser window its own identity and icon in Cmd+Tab switching? I'm asking you because my Chrome on Mac doesn't have the menu items you mention.

</comment></comment></comment><comment><USER15> There's really only one extension Chrome needs to get me to switch. Currently that extension is called Roomy Bookmarks Toolbar in Firefox. There have been variations on the theme like Smart Bookmarks Toolbar and others, which may or may not be broken in current versions of Firefox (something FF is awful about - extensions seem to break way too easily, but in this case at least they exist!)

All it does is hide the names of bookmarks on the toolbar so all I see are the icons, until I hover over one of 'em. It seems really minor, but I really don't want to give up my little row of icons, nor do I want to delete the names of all them (which I used to do, long before smart people wrote extensions to hide the names)

The closest thing I can find on Chrome is "Iconized Bookmarks Bar", which simulates the same idea, but the implementation is terrible. Instead of an actual toolbar, it inserts a little HTML thing at the top of every page. It works fine on 90% of the web, and causes various levels of havoc on the other 10%. For example, it made it impossible to log in to Amazon last time I tried it because the hover logic on the Login menu got screwed up.

I assume that the functionality I want is simply not possible in Chrome at this time. I haven't actually looked into doing it myself though, it's just not that important when I've already got a browser I like just fine.

<comment><USER16> This would be really easy extension to create with the bookmarks API:

<http://developer.chrome.com/extensions/bookmarks.html>

You should give it a shot!

 _Edit:_ It wouldn't be able to do the 'until i hover over it' bit. If that's important to you.

</comment></comment><comment><USER17> I for one never thought Google Chrome would win the "browser wars". I used Opera and Firefox regularly and I was very much satisfied with them. But I have to admit Google Chrome team has outstanding job and Chrome is my primary browser.

Any idea how many people working on Chrome team? And why Mozilla remained so indifferent speed when Chrome was beating big time?

<comment><USER18> To paraphrase a police chief fro The Wire: "You can't turn your ship on a dime". Sames goes for any large endeavor.

When Chrome came out it's focus on speed/usability was new to the browser landscape. It took some times but FF is catching up in almost all aspects of it (speed is up, memory usage has been reduced).

For me FF always was unbeatable for its slew of plugins. The plugins and their intergration can't be matched by Chrome.

</comment></comment><comment><USER19> Without TreeStyleTabs à la Firefox [[https://addons.mozilla.org/en- US/firefox/addon/tree-style-ta...](https://addons.mozilla.org/en- US/firefox/addon/tree-style-tab/)] I can't switch, it's indispensable when dealing with 100+ tabs (which I find myself doing a lot as crazy as it seems). Besides that the "AwesomeBar" in FF seems to work more effectively than Chrome's when digging up old pages I've visited. There're also a few extensions I'm probably forgetting, SessionManager comes to mind. I've given Chrome a more than fair shake, and still use it on a near daily basis, but I'll stick to FF on my own box.

<comment><USER20> Same here. Whatever the machine, be it netbook, thinkpad or dual screen desktop workhorse, I have more space horizontally than vertically. Tabs belong to the left.

The added benefit of having a _tree_ of tabs (usually most of the nodes have HN as a root for me..) is something I wouldn't want to miss again, ever.

And FF Beta on Android still beats Chrome in terms of usability for me (talking about both rendering speed and nifty things like addons).

I open Chrome Canary every once in a while, out of curiosity. But day to day it's not for me.

<comment><USER21> One of the biggest benefits of a tree of tabs is that it makes it easy to get rid of a group of them. You can double click a root tab to collapse its tree -- that's super useful right there; when you then close the root tab, all the tabs in the tree are closed, too. Makes it incredibly quick and painless to clean up after a prolonged research session, which in turn encourages judiciously opening tabs during research.

</comment></comment></comment><comment><USER22> Never say never.

I'm sold on Google Chrome at the moment also, but found Opera to be the best for developers for years previously.

They'll be another awesome browser. Just like they'll be another search engine we all use one day.

</comment><comment><USER23> It was a grim realization that I am not the target audience for Chrome. All the stylistic features I like about Firefox seem deliberately left out of Chrome. What bothers me more though is that Firefox along with the rest of the browser market are aggressively trying to become Chrome, leaving me out of luck.

</comment><comment><USER24> I can't seem to find HTTPS Everywhere or smooth gestures, two of my most used extensions, anywhere on the new chrome web store. It looks like a new walled garden approach to something that was working well the way it was.

<comment><USER16> HTTPS Everywhere: [https://chrome.google.com/webstore/detail/gcbommkclmclpchllf...](https://chrome.google.com/webstore/detail/gcbommkclmclpchllfjekcdonpmejbdp/details)

Dunno about Smooth Gestures.

</comment></comment><comment><USER25> Never say never. I said that about Firefox after leaving Internet Explorer.

</comment><comment><USER26> I use Chrome for sites that require flash. What I still don't get: how do you get by without tags on bookmarks and the awesome bar? Is there some equivalent for Chrome?

</comment><comment><USER27> I still prefer Firefox for firebug and some other extensions but Chrome just blazes in terms of JavaScript rendering

<comment><USER28> I use Chrome developer tools as my main testing environment - every time i check out compatibility in other browsers, Firebug ranks in slightly behind IE's built-in support for me.

You still change frame contexts with cd()?

<comment><USER29> > I use Chrome developer tools as my main testing environment - every time i > check out compatibility in other browsers, Firebug ranks in slightly behind > IE's built-in support for me.

Wow, somebody has drunk way too much koolaid.</comment></comment></comment>


Wireless drug-delivery microchips, more consistent than injections - <AUTHOR> http://www.engadget.com/2012/02/18/mit-wireless-drug-delivery-microchips/ <comment><USER2> I feel uneasy with body implanted microchips running proprietary software that can be accessed wirelessly.

Am I the only one? Sure no, ask Karen Sandler.

Relevant: <https://www.youtube.com/watch?v=nFZGpES-St8></comment>


Underpants gnomes business plan - <AUTHOR> http://www.niallkennedy.com/blog/2005/05/underpants-gnomes.html

<comment><USER2> Fortunately we have the Paul Gnome method.

      1. Make something users want
      2. ??????
      3. Profit!

The similarity between the product-now/revenue-later startup model and the underpants gnomes plan is disconcerting at first glance. The point is that your Step 2 materializes based on focusing on a proper Step 1.

Also, for S&G, this is the dot-bomb business model.

      1. Put something useless on the Web
      2. ??????
      3. Cash out before the investors get wise.
      4. (optional) Repeat.

</comment><comment><AUTHOR> It was one of _those_ daze.. this makes me laugh out loud. ;-D</comment>


Typeface Inspired by Comic Books Has Become a Font of Ill Will - <AUTHOR> http://online.wsj.com/article/SB123992364819927171.html <comment><USER2> I am proud to use Comic Sans. On the small sheet of paper taped to the screen connected to our KVM-switch all the hostnames of the windows servers are written in it, so you know what to expect if you switch there.

</comment><comment><USER3> I noticed balsamiq uses comic sans or something very much like it. Probably one of the few appropriate uses it has.

</comment><comment><USER4> years ago, when I got my first PC with a copy of Word installed on it, I actually enjoyed to create "letters" using the Comic Sans font. with the years, this special sentiment vanished and I started to dislike the font. I actually know a professor on our university that uses the font in his wiki and that is a little bit gross.

</comment><comment><USER3> I noticed balsamiq uses comic sans or something very much like it. Probably one of the few appropriate uses it has.</comment>


The MP3 Experiment - <AUTHOR> http://pogue.blogs.nytimes.com/2009/05/28/the-mp3-experiment/

<comment><USER2> The internet is not killing our culture, it amplifies it. That was beautiful.

Should push come to shove, I could imagine an "improv" that begins: "at 4:00AM, gather around the Bastille" ..

No ad agency or paid minion could muster the force that is "Internet People"; from Improv Everywhere, to Anonymous.

+1 to humanity.

<comment><USER3> Reminds me of a quote that was on the iGoogle page just a few days ago:

 _The Internet is like alcohol in some sense. It accentuates what you would do anyway. If you want to be a loner, you can be more alone. If you want to connect, it makes it easier to connect._ \-- Esther Dyson

We're only just starting to find ways to connect over the internet. I suspect that there will only be more examples of things like IE as connectivity spreads.

</comment></comment><comment><USER4> I've been to several of Improv Everywhere's events. They're always amusing. Half of the fun is doing something you know is unusual, and will have a cool effect when you look at the video later. It's an odd feeling to break out of normal behavior like that.

<comment><USER2> Try to beak out of normal behavior often, on your own; you might like it :-)

<comment><USER4> There'd be no point to it, at least for this kind of breaking out of normal behavior. By "point", I mean the kinds of things I've done at IE events are not the kinds of things that would be enjoyable to do alone. Compare it to going to a pro football game -- it's fun! But you can't recreate that experience on your own, as touch football in your backyard isn't the same.

Of course, I'm not arguing for following the crowd blindly.

</comment></comment></comment><comment> s-phi-nl This is an interesting experiment in human coordination. Everyone heard the same instructions at the same time, but no one heard the instructions given to anyone else. This is a combination of coordination by an omniscient director (the same voice directed everyone) and coordination by actors with limited knowledge (no one could hear what the voice was saying to anyone else). I've never really seen something that was a mix before.</comment>


2D Cloth Simulation with Canvas - <AUTHOR> http://www.andrew-hoyer.com/experiments/cloth

<comment><USER2> Gets pretty interesting if you Firebug that select box and ramp the points to 50 or so...

EDIT: 100 points and some futzing created so much feedback I ended up with a little cyclone going for a while.

EDIT: pic -> <http://i.imgur.com/qhsDnl.jpg>

</comment><comment><USER3> Nice. I played with a similar thing years ago: rigid bodies connected with various constraints. The simple solving for the acceleration of the point masses under the forces from the connections that this computation seems to do works fine as long as the cloth is elastic. If you try to compute the dynamics of points connected by rigid rods, the large forces makes the system really stiff and your integration time step drops precipitously. In that case you have to generate a large linear system of equations and solve for the global motion of the system. It's quite a bit trickier. It's also interesting how situations that are familiar from real life, like a drawer getting stuck diagonally in the slot, really are singularities in the equations.

I realized this was actually an area of research, and found a bunch of papers by this guy: <http://www.cs.cmu.edu/~baraff/pbm/pbm.html>

</comment><comment><USER4> Canvas rendering is starting to really kick ass, yet I can't help but feel that it doesn't quite belong. Is this how early Web pioneers felt about the img tag in a Web of grey documents? I know there are practical applications, I can think of several off the top of my head. It just feels like we're overloading the browser with candy now.

Do we now expect browser vendors to support cutting-edge, hardware accelerated graphics along-side those bleeding-edge standards we whine about?

<comment><USER5> If you believe in the web as the future for apps equally powerful to desktop apps, all the nuts and bolts have to exist. I am neutral on such a vision personally but a browser vendor probably has likely already drank the kool aid. Thus, you don't need to expect anything as such things will likely be forthcoming.

</comment></comment><comment><USER6> 3d version:

<http://gyu.que.jp/jscloth/>

</comment><comment><USER7> man, this is a cpu killer...

<comment><USER8> Doesn't seem to make much fuss under Chrome/Linux. Of course, per a past thread Chrome's Canvas is _way_ faster than other browsers': <http://news.ycombinator.com/item?id=1084456>

A very cool effect in any case.

<comment><USER9> Chrome/Linux works beautifully.

I wonder now. in 3 years will we see a port Half Life 2's Source engine (with all its physics puzzles) on Chrome!

</comment></comment></comment><comment><USER10> I like his other experiments too.</comment>


Ask HN: Freelance Web Dev: Hourly or per Project? - <AUTHOR>

I'm being asked to set up a website, facebook page and print materials for a fledgling consulting practice being started by an acquaintance.
My goal is to enter into an agreement where I am compensated at a price that is both fair to me as well as my client. I am not a freelancer by trade and I don't have any established practices for what to do.
Do I charge $XX/hr or do I estimate the total time I think it will take an charge based on that? <comment><USER2> In my experience (10+ years freelancing), you make the real money when you re- engage with a client. I tend to think of the first contract as just a way to open the door. So in that respect, it really doesn't matter which way you charge... just make sure you do an awesome job and help that client earn a living from their website, so they can re-engage with you later for much larger projects.

</comment><comment><USER3> I did a hybrid for my first freelance. I charged hourly, but because I was new and unsure still in my skills (and had never actually set up what they were asking for before), I set a maximum upper bound for the client so they wouldn't be punished by my inexperience.

For example I charged them $75/hr and estimated the job would take me 8 hours. ($600) I told them my fee was $75/hr with a maximum cost of 20 hours ($1500) needed to do the project.

This gave them an upper bound for the maximum they would have to pay me so they could budget/get approval. The job was small enough that scope creep wasn't really an issue though.

I ended up charging them $800 as I forgot to include travel time to their location. First estimate was remote. I charged them full $75/hr for my travel time.

</comment><comment><USER4> Hourly. I have done both. There is always and always scope creep.

For hourly charges, bill in block of, at least, 4 hours. I usually give client estimate, so they have some rough idea of how much project would cost.

I did fixed price in beginning of my career and always went over my estimates. Perhaps I was just too inexperienced.

</comment><comment><USER5> Hourly. I would never, ever do a project pricing again. You'll get scope creep like you wouldn't believe. Even if you have clearly defined requirements, the problem is that those requirements are never perfect, so they inevitably change as the project progresses (that's the whole basis of what Agile is about.)

What you could do is this: you could "secretly" estimate the cost of the total project in terms of hours. Then you can decide how much you want to be paid for the entire project. Then divide that by the number of hours, giving you an effective hourly rate. Then you can quote that hourly rate for your acquaintance which perhaps a "general estimate" of how many hours it might take; don't get too specific or else you risk painting yourself into a corner when things go wrong.

Personally, if it were me, I'd ask for a certain amount in retainer up front before you write a single line of code.

For example, if you think the project is worth $15,000 and you think it'll take 150 hours, that puts your hourly at $100 per hour. I would ask for 10% of the project hours up front (after all, you are also incurring an opportunity cost by even accepting the job and there's always the risk that you won't get paid. Trust me on this! The most trustworthy people can often screw you out of money in the nicest ways.

So I'd say, "It looks like, based on the requirements we've discussed that it would take approximately 150 hours to complete this project. That can vary considerably depending on any changes we might make as we make progress. I charge $100 per hour and require retainer based on the projected project duration (i.e. deposit,) which in this case is $1500 to start.

Our next payment will be due upon the completion of milestones that we both agree upon. For example, when your Facebook page is complete, etc. All hours that have been completed up until the milestone reached will be payable once we reach that particular milestone or every two weeks, whichever is sooner."

..or something to that effect. Even if it's a close friend or acquaintance, do everything in writing, making it all crystal clear. I'd even use something like Basecamp (especially with their awesome checklists and milestones calendars) to manage it all. This will insure that your friend treats you like a professional and with that, you don't get abused under the guise of "friendship."

You certainly don't have to do it how I suggest, but at least do the following:

1\. Use a project management system, I suggest Basecamp, but there are others. 2\. Get your agreement in writing. 3\. Don't commit to a project cost -- it will ALWAYS go longer than you think and "one more thing" adds up. The only exception to this is if you're charging such an insane rate that you build the inevitable overruns into the price. 4\. Get paid based on milestones or on a regular time schedule (i.e. every two weeks.) I recommend milestones because it makes the client feel better, but I personally prefer time-based. If you wait until the project is "done" to get paid, then they'll have very little incentive to pay and a very big incentive to drag it out/delay. Unless you control the server. Then if payment is 1 day late, you shut that puppy down until that money hits your account. If you do milestone payments and those payments are late, stop work and tell your friend, that you can't continue until the payment has been made. Trust me on this. You will get abused if you let yourself. It has happened to all of us who've worked as freelancers! 5\. Treat this project professionally. You're getting paid as a professional, so you'd better deliver as a professional, regardless of "friend" status or not. 6\. Keep accurate records of time. This is useful because it will give you data you can use later when estimating future projects.

Good luck! I hope that helped.

<comment><USER6> Not OP, but thanks!

</comment></comment><comment><USER7> [https://news.ycombinator.com/item?id=3420303](https://news.ycombinator.com/item?id=3420303)

</comment><comment><USER8> Summary: since you are new, charge fixed but add buffer on your gut instinct. Referrals are amazing. You likely aren't good at estimating, so you don't want to have to come back to them later and ask for more money. That sours the relationship.

You have to look at it from both perspectives (yours and the client's), the market price and your competition.

I've been doing web dev for 10+ years so I'm pretty accurate without having strict requirements upfront. I also make them understand that new scope is not a problem, but something must give - we change the way we do something else, remove another thing, or it will cost more. Most of the time we just compromise on low priority items. So throughout the development, I'm also managing a lot of pieces to make sure we end up near my estimate while remaining flexible to feedback and getting the client both what they need and want.

I've done very well fixed bid. It gives me an incentive to be more efficient. Clients need to know approximately what the all-in cost is at the end of the day. If you asked someone to build you a pool, you would want a fixed cost, even though there are some unknowns. Would you say, yes I'll pay your $50/hr with no end in sight? No, you would need to know a full budget. Otherwise - how do you evaluate multiple bids effectively?

I do time and materials for rescue efforts and maintenance. I can't risk someone else's code killing my margins (and them claiming stuff used to work and now it doesn't). They will try that.

If you know your competition - they may be inflating hours at a low rate which can look good to a client. If you do hourly, they might not understand that your all-in cost is likely lower than the more junior competition. However, if you are both under a fixed scenario, you could be $8k and they could be $7k. The client can fluff out experience and you can still win even though you are more. You can probably do it quicker for a little more if you are more senior. If it's hourly and you are $100/hr and they are $35, it can be very hard to compete. Then those low end devs nickel and dime the client to death over the course of a year and the client comes back to you.

If you aren't good at estimating, you should do fixed and buffer your gut instinct a little (1.25 - 1.5x) when you traffic the numbers. Then you won't have a client who feels burned if you end up spending way more time and $ from your estimate.

Never do a capped bid but only bill for hourly. Some sneaky clients will try to get you to do this. Someone always bears the risk. When it's fixed, you bear the risk. When it's hourly they bear the risk. Whoever bears the risk deserves any upside. They don't get to have a cap which hoses you if it takes longer and also pay way less if you are super efficient. Seems simple, but most people don't understand this.

briandear makes some very good points about billing. I've also seen clients prevent milestones from happening in order to delay payment. Ask for 50% upfront and the rest on a timed schedule. You can always settle on payments in thirds or some other fair structure.

Scope creep can be prevented by you however. Clients don't understand how development works and they aren't good at hitting deadlines like seasoned devs. When they say "can you do this little thing?" \- you never say no. You just say, this is outside of the original scope and in order to maintain schedule, I'd like to put it in a "Nice to Have" bucket. Then you fit in those nice to haves at the end if time permits. If time doesn't permit, you have your next month's maintenance effort ready to go. I've put a team at a large automotive company on a Trello board and told them to:

1) File "Nice to Haves" appropriately 2) Only log items into Trello. Any emergencies should be made by cell or text. I don't want email requests. 3) Maintain the tickets in priority

They love it.

You have to program them into YOUR process. Otherwise they will own you.

I have no idea on your skill-set but from what you wrote and the scope, I would guess the market would be somewhere between $30-50/hr if you boiled the project down hourly.

<comment><USER8> I forgot to mention - fixed bids help build your skill-set way more than hourly because you are incentivized and you will be challenged more to figure out the simplest thing that works. You won't find yourself straying off on a overly-complicated solution to deliver something the client or users don't care about. You'll be forced to stay up on the latest and greatest, not because you nerd out about it, but because it makes your life easier and you can then deliver things of huge value at market rate while maintaining nice margins. :)

When you have more experience and your estimates are strong, you can do hourly and give clients all-in prices with +- 15% difference and everyone will be happy no matter what happens.</comment></comment>


Show HN: Simple react global state manager (with hooks) - <AUTHOR> https://github.com/Munawwar/react-global-states <comment><AUTHOR> What do you think? Simpler than most implementations without sacrificing performance yes?</comment>


Girl Scouts Embraces STEM and Adds New Badges - <AUTHOR> http://www.girlscouts.org/en/about-girl-scouts/girl-scouts-and-stem.html <comment><USER2> I'm a Girl Scout leader in the Midwest. Most of the leadership in this area (adult & youth) is at best skeptical about this initiative, and at worst openly hostile. Girls do not come to Scouting to learn about financial literacy and cybersecurity. They come to spend time with their friends, to be outdoors, to have parties, to do craft-y things. The cost of some of the new badges is also a great concern.

<comment><USER3> _I 'm a Girl Scout leader in the Midwest. Most of the leadership in this area (adult & youth) is at best skeptical about this initiative, and at worst openly hostile._

Young ladies face a cultural up-hill challenge with STEM expectations. Girls are told, for example, that they shouldn't bother with video game construction, but instead should learn knitting. As a parent, I have first hand experience with well-meaning social institutions that actively discourage science, technology, engineering, and mathematics.

 _Girls do not come to Scouting to learn about financial literacy and cybersecurity. They come to spend time with their friends, to be outdoors, to have parties, to do craft-y things._

In an enthusiastic environment, my 7 year old daughter and her friends enjoy MIT Scratch just as much as the boys. She's very into her transaction journal where she records her allowance income and outgoing expenses, adding up the numbers weekly with a new account balance. She likes to take her microscope outside to look at bug wings, etc.

<comment><USER4> I don't think ffmike was trying to denigrate, discourage or otherwise be negative about STEM. Rather, the suggestion is that there might be other, better places for STEM than Girl Scouts.

Which is just as true for Boy Scouts.

<comment><USER5> Not really as a boy in the UK I got a programming badge in Cub Scouts in the 80s. Which was about the only venue I could have got some recognition for that ability at that age. I think it's a great idea to recognise STEM skills in venues that are socially important to children at that age.

<comment><USER4> Recognition is not something I want my son to learn to crave. I got into computers in the '80s of my own volition, in an environment where I was ridiculed for my interest (being a nerd/geek in the 80's was ensuring you had no friends).

If my kid shows an interest in a thing I will support him in that, but I will never push him. Recognition comes from being exceptional, not for being able to open a command prompt or writing a Hello World app.

<comment><USER6> If you never push your kid, even just a little with kindly parental suggestions, I fear you may raise a un-motivated dullard.

<comment><USER4> If I push my kid, even just a little with kindly parental suggestions, I fear...

Hey who knows. You're probably right. I'm probably right. That's parenting. I try to facilitate his learning by letting him play. It's how I grew up. And yes, I'm not that naïve that I think I can give my child my childhood.

He's a human being, and a human beginning. As such he must (and will) find and tread his own path. My job is to show him how exceptional his path might become. His job is to choose the degree of exceptionalism he desires.

<comment><USER7> Yeah, I think a parent's responsibility is to expose your kid to things they might like or find fulfilling, but it's up to the young individual to pursue it.

The tricky part is that sometimes you have to push a bit to expose them to something out of their comfort zone. Take learning a musical instrument, as an example.

The first couple of months of learning an instrument aren't a huge amount of fun (for most people). It's legitimately frustrating. IMO, it's okay to push your kid a little bit. For example, make the child take at least 3 months of lessons with two different instruments, of their choosing, and if at the end of that, they still have no interest in learning an instrument, okay, that's fine. We can move on to sculpting or painting or programming or origami or gardening or dance or whatever.

The point is that kids are discovering the world and to a large degree, don't really know what they like or don't like yet. You have to expose them to a lot of things to find something that resonates with them, and at times, you may have to push them a bit, to get past the initial hump of awkwardness or frustration. I think that's healthy and responsible.

That doesn't mean you should force your child to take 10 years of violin when they hate it. I think a lot of parents fall into the trap of trying to force their kid to enjoy hobbies the parents enjoy or hobbies they think their child _should_ enjoy. It's fine to start with those (hey, why not), but ultimately you have to listen to the child and understand the difference between temporary frustration and permanent personality incompatibility with some activity.

<comment><USER8> At the same time though, as a parent you have the long term outlook that is largely impossible for a child to develop on their own (before adulthood, at least). The vast majority of people have regrets about things they didn't do as a kid and while pushing their offspring to make up for their own childhood is dangerous, you have to strike a balance. Soft skills like being able to devote time to practice and doing something that you're not quite into are valuable on their own, even if interest in the actual field never develops.

I was one of those kids who hated guitar and piano lessons for _years_ as my parents pushed me into them. I was never very good and hated practicing but nowadays, I really wish that I had taken it more seriously. There are so many uses for my time now that I can't bring myself to commit to learning a musical instrument from scratch but I crave the creative outlet of playing music. My parents' approach to many such subjects was the complete opposite to their approach to programming, which started with the guidance and material help of an IT admin from my mother's university even before the first music lessons. They were completely hands off and I was all the better for it, but I can't help but think that if maybe they had combined the two approaches to music, like they did by hiring a really good teacher for painting & drawing, I wouldn't be lamenting the way the chips fell.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> This is probably the most positive "more girls should do STEM" initiative I've encountered yet.

> Financial Literacy badges prepare girls for a financially sound future.

This seems exceptionally progressive.

<comment><USER10> I can't tell if this comment is meant as an insult. Anyway I think too many potential teachers have passed the buck on teaching financial literacy to young people, and I'm glad to see someone make an effort.

<comment><USER11> I highly doubt this is sarcasm or an insult.

</comment></comment></comment><comment><USER12> I'm a math educator. Although of course I want to see more women in STEM, I've never been directly involved in the appropriate outreach. With that lack of qualification firmly established, I hope I may say that this is a wonderful thing.

Anything that successfully shows STEM can be a "girlish" activity (literally in the sense of something girls do) is to be applauded; and hopefully this effort, in a pre-existing mentorship structure, will have a knock-on effect wherein older mentors (I don't know what they're called in the Girl Scouts) can serve as direct examples (of women in STEM) and as positive role models.

</comment><comment><USER13> I love it. Let's go a step further: make one set of boy and girl scout badges from the union of both sets.

<comment><USER14> Entirely different organizations with different purposes and goals.

<comment><USER15> Interestingly, only the US and Japan have gendered scouting organizations.

(Might be wrong on this, it's been at least a decade since I learned that)

<comment><USER16> > Interestingly, only the US and Japan have gendered scouting organizations.

> (Might be wrong on this, it's been at least a decade since I learned that)

And Canada. UK has partially-gendered scouting, but the boyscout organization becomes co-ed after a certain age, the girl side can remain separate indefinitely. I think it's somewhat separated in México as well, they have more different associations though, AFAIK.

I think most countries which have scouting organizations have a gender separation.

<comment><USER17> UK Scouting is fully non-gendered for all ages; see Scouting for All and the Equal Opportunities Policy: [http://scouts.org.uk/about-us/key-policies/equal- opportuniti...](http://scouts.org.uk/about-us/key-policies/equal- opportunities-policy/).

UK Guiding allows girls and young women, but fully supports gender self- identification: [https://www.girlguiding.org.uk/making-guiding- happen/policie...](https://www.girlguiding.org.uk/making-guiding- happen/policies/girlguiding-policies/equality-and-diversity- policy/transgender-gender-reassignment/).

Scouting and Guiding in the UK are refreshingly progressive organisations. Source: current Scout leader.

<comment><USER18> So what your saying is: as a self-identified male, I can't be a UK Guide? Sounds gendered to me.

<comment><USER19> No, you can't. Because girls need a safe space to be girls (without any boys around) a lot more than boys need any more spaces where they can be boys without any girls around (there's enough of those).

<comment><USER16> > No, you can't. Because girls need a safe space to be girls (without any boys > around) a lot more than boys need any more spaces where they can be boys > without any girls around.

Please substantiate this.

> there's enough of those

Name one that isn't a sports team.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> This is amazing. I especially appreciate how broad and inclusive it is. I hate the idea that a bunch of girls are going to do 'girls who code' or similar things, not like it, and think STEM isn't for them. Coding sucks sometimes and it is so important that we include all of stem (personally I prefer STEAM, stem + art).

I don't like math, probably as a result of terrible scarring experiences in elementary school. But I still love technology and coding. We need to allow girls the flexibility to learn about all of stem and find out what will provide for 70+ years of happiness and productivity.

<comment><USER21> I don't understand the point of STEAM. From what I can tell, the use of STEM is to describe the math-y type pursuits. Art, etc.. doesn't fit at all. It's not a bad thing to not be a STEM field, just different. I absolutely think that we should emphasize art more than we are now, but that doesn't make it STEM.

<comment><USER22> You could make a good philosophical argument that a significant portion of the technology industry for most workers today is art. Code structuring and design is art. Becoming a good leader is an art. Scientific research is an art form. Teaching properly is art. We should not discount the creative aspect in what we do.

<comment><USER23> > Code structuring and design is art

No, it's applied mathematics. You could argue that mathematics are "art" but then you would need a really wide and probably useless definition of "art" as almost everything would be art.

<comment><USER24> I see this a lot and never quite understand it. Code structuring to me seems more like a craft, something that is improved through experience and wisdom and not abstract rules.

</comment></comment></comment></comment></comment><comment><USER25> As a former Girl Scout I think this is excellent. I think it'll be much easier to get girls to explore STEM activities if it's associated with an organization they're already involved in.

</comment><comment><USER26> ... not sure why 'video game development' is in Science and Technology rather than Digital Art. Good on 'em though, hope it flourishes.

<comment><USER27> It would depend on how they define development. The people who do the art and the people who do the code are rarely the same person, even in smaller indie games.

<comment><USER26> Programming is a craft, and is much closer to photoshop than physics.

<comment><USER23> I would argue exactly the reverse.

<comment><USER18> As a software engineer with a degree in Physics and a degree in Biomedical Engineering, you're both wrong.

<comment><USER26> I'm a software engineer with a degree in neurophysiology (partial phd), though no degree in physics (just an interest). Would you care to actually back up your appeal-to-authority there with some actual commentary? Or are we just going to compare dick sizes?

<comment><USER18> Sure.

A craft is something you get better at by improving the constituent skills that are required in that craft. For instance, in woodworking, it takes some level of skill to work with hammer and nails, or to sand a board, etc. etc.

So programming is not a craft.

Programming, at its core, is problem solving, and getting better at programming requires improving one's problem solving ability. Physics is also about problem solving, and is likewise improved by improving one's PS ability.

However, having heavily experienced both, I would say that they are very different types of problem solving. Modern programming is a lot of trial and error, ala any other type of "invention". "I did not fail, I now know 1000 ways to _not_ make a lightbulb" \- Edison.

Modern physics is not really trial and error. Physics is applied math. You take some fundamental principles, combine them together in a logical way, and get something new. At a high level, that sounds like programming. But for me personally, and I think for many people, the fundamental thought process and approach to problem solving in the two fields is very different.

<comment><USER28> > Modern programming is a lot of trial and error

If you follow Uncle Bob's TDD methodology, it becomes much less so.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER4> It doesn't necessarily need to be enforced, but facilitated at least. Boys can't truly be boys unless there are no girls. As such there is a time for boys to be alone; with boys; a time with girls, and a time with adults. Each comes with a set of social rules, and degrees of letting their hair down.

Gender equality is important. Critical, even, given society's propensity to marginalise and objectify women. But gender emancipation should not come at the cost of emasculation.

<comment><USER29> > Boys can't truly be boys unless there are no girls.

I disagree. In fact, I think this kind of stuff is very harmful for development.

Imagine telling someone that they need "white-only" time, to unburden themselves from the special requirements imposed by hanging out in mixed company. It only serves to perpetuate out-sized notions of existing differences between genders.

<comment><USER16> > Imagine telling someone that they need "white-only" time

Boys and girls (at least the majority of them) behave and socialize visibly differently, and can benefit from it. Races do not have the same sorts of inherent distinct needs, and if they do it's typically more granular than "white" or "black"; more likely you want time with the Italian side of your family, or the Somali side, or with your girlfriend's Panjabi roots.

Why do you think so many women occasion a " _girls '_ night out", or men "hang out with _the guys_ "?

Boys and girls have a lot more significant physiological and sociological differences than whites and blacks. Whereas, for example, the noticeable differences between a Japanese woman and a Mestizo woman come down to things like whether the earwax is likely dry or oily, or the probable size of teeth or lips. These sorts of things have basically no relevance or importance to social relationships.

Drawing meaningful distinction between the cohort characteristics of boys and girls is not sexist. I have no interest in determining the rights or freedoms of either group based on these characteristics. I would merely suggest that people in either cohort are likely to have needs that differ more than within each cohort. A hen and a rooster are both chickens, but they are meaningfully distinct as well.

<comment><USER29> > Why do you think so many women occasion a "girls' night out", or men "hang > out with the guys"?

Cultural momentum. They inherit the habit from older generations. May as well ask why Swedes love saunas, or why asian cuisine uses chopsticks.

My friend crowds have not had anything resembling those segregated nights out in forever, and in fact, headway is being made insofar women have men in their bridal parties and vice-versa.

> These sorts of things have basically no relevance or importance to social > relationships.

You haven't made a case for why the physiological differences between men and women have relevance.

</comment></comment></comment></comment><comment><USER30> Since when is video game development considered a science topic?

<comment><USER31> Video game development actually involves a lot of science and engineering and can require advanced 3D math, logic, psychology, etc.

<comment><USER30> I beg to pardon but I highly doubt that the level they will practice at is ever going to touch upon any advanced topic you suggest, and not all games run in 3D either. Science is about observation and deriving insights and rules from what you see, video games is largely more of an engineering problem that typical science/exploration.

<comment><USER32> _> Science is about observation and deriving insights and rules from what you see_

Is mathematics a science?

How about mathematics within a pre-defined discipline (e.g., doing novel work on group theory without inventing new axioms/structures)? Is that science?

If you include mathematics in the sciences, which I think we should, then it's hard to see how video game development is non-scientific.

(Besides which, the old trope about AI applies also to science. AI is AI until it becomes useful, then it's no longer AI and becomes some other branch of CS. All of engineering is science until it becomes useful, then it's no longer science but some branch of engineering.)

 _> video games is largely more of an engineering problem that typical science/exploration._

For one, video games are a great way to understand the strengths and limitations of simulation in science. And basically all fields of science these days have a corresponding field of computational science focused on using simulations to better understand the underlying science. So, it's important.

<comment><USER33> > Is mathematics a science?

No, it's purely analytical, not empirical. Mathematics provides essential tools used in science, but is not science.

<comment><USER32> Well then ekianjo's argument is even weaker, because "STEM" now clearly includes at least one thing that is unambiguously not "science"...

(besides which, there are some obvious problems here -- not least of which is that many sciences rely on mathematical objects in probability and statistics to determine what is and is not true about observations. IMO modern science is inseparable from mathematics, and concrete mathematical objects form most of the philosophical substrate of modern scientific practice... so, if "science" is separated from "mathematics", that's only the case in some primitive high school understanding of how modern science is actually performed in reality. Maybe that's a problem with how science is performed in reality, but AFAICT it seems to be working pretty well in most areas with some notable huge exceptions.)

<comment><USER33> It would be kind of silly to say "Science, Technology, Engineering, and Math" if the latter three were subsets of the former rather than related (and sometimes overlapping) but distinct categories.

<comment><USER32> Sure, I think we're agreeing on the question at hand.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER34> It's funny.

If it was Boy scouts is introducing sewing, cake making etc. The response would be along the lines of, that's great in theory but in practice boys just won't join Boys Scouts anymore.

<comment><USER19> A lot of young boys wouldn't care at all and would probably enjoy sewing, baking and other traditional 'girly' activities.

Its the dad's with fragile masculinity and out-dated opinions that would stop them going or teach them that those activities are 'girly'.

<comment><USER18> That kind of thinking results in an inevitable chicken and egg problem.

How did society get this way if it's all a construct? A secret cabal decided what constitutes a "masculine" activity and what constitutes a "feminine" activity, some indeterminate amount of time ago?

If I only like playing with toy cars because my father liked playing with toy cars, and my father only liked playing with toy cars because his father liked it, who was the first father and why did it stick?

The reality is that men and women have different biological compositions with different hormones and different instincts that organically give rise to different behaviors. Sure, toys are toys, and generally any kid will probably be happy with any toy, regardless of gender. But the idea that preferences in childhood development didn't arise organically is honestly not founded in reality.</comment></comment></comment>


Mexico finds stolen truck that carried radioactive material: official - <AUTHOR> http://www.reuters.com/article/2013/12/04/us-mexico-nuclear-iaea-idUSBRE9B30J820131204

<comment><USER2> The fact that they didn't immediately disclose that the Cobalt had been found, as well, doesn't instill much confidence in them having likely found it. Seems like they would have definitely disclosed that fact.</comment>


Ask HN: What would you want (or Not want) on a dead-simple free niche jobs site - <AUTHOR>

I"m interested in creating a free job listing site for a specific industry that currently doesn't have one.
What should it do?  What should it not do?
Things I'm fairly certain it should do:
-Popular listings should be visible immediately on the front page. -No images, just text and very few graphics. -Listings should be free. -Users should be able to flag iffy-looking listings. -There should be search. -Jobs should be browse-able by location, type of job, experience level and compensation. -Users will be able to tweet out a job listing, e-mail it to a friend or bookmark it using other services.
Things I see on the pay sites that should be left out: - letting job seekers post their resumes - message board - industry news and gossip - industry event listings - weekly news letter with editorial content on the industry
Things I'm on the fence about:
- RSS feeds for sub-sections of job listings - E-mail alerts for new listings in keywords the user wants to track - A customizeable widget that people can embed on their sites with the latest listings.
There are 3 sites currently focused in on just this industry.  One charges $80 per listing.  Another charges $250.  The other is $150.  When I talk to friends in this industry, the default that everyone goes to is the $80 site.
Thoughts?  Am I already doing too much? Too little? <comment><USER2> "Things I see on the pay sites that should be left out: - letting job seekers post their resumes"

Not sure about this one. Recruiters will pay a lot of money for access to resume bank, for a niche that isn't available anywhere else... and you don't need to do much to implement this feature - just a form with file upload.</comment>


PyData 2012: Guido van Rossum discusses Python w/ the scientific community - <AUTHOR> http://marakana.com/s/2012_pydata_workshop_panel_with_guido_van_rossum,1091/index.html

<comment><USER2> I'm SO glad that the core of the python scientific computing development has many of the same apprehensions as I do.

This panel was interesting also in that everyone was not so subtly beating around the Python 3K, why? bush.

I would have been more direct:

1\. pick a single implementation, my choice is PyPy, the performance difference is just too compelling, drop CPython. A lot of the hand-wringing regarding implementing new language features because it would cause a 'few percent' speed cost would be a lot more negligible.

2\. if python 3k is going to be non-backwards compatible, then take the opportunity to put a lot more 'carrots' in there. There a lot of good language features/design choices that can still be 'stolen' from other languages. Python could really use more flexible function declaration, ideally something flexible enough that you could simulate creating new keywords, then you don't have to worry about hardcoding new operators with hooks into object methods.

3\. have the scientific community start switching to a different language/platform. There are quite a few now that, IMO, are as nice or nicer than python, and have a lot more support behind them (V8?)

<comment><USER3> Concerning your 1st point. While it certainly whould be nice to forget CPython and focus on PyPy, I don't think that really is an optional for the forseeable future.

CPython is written in very cross-platform portable C, and supports a lot of different systems, among others IBM Mainframes. It would take a long time before PyPy gets that kind of support.

PyPy is also a very different kind of implementation. I haven't heard much about any projects that have embedded it inside of an bigger application with great success. A common use of CPython.

PyPy still have a long startup time. And it takes a while for the code to by optimized. The last point is something that will not change. Python is used for a lot of small scripts, and even bigger projects such as Mercurial, where PyPy will have a tough chance, if any.

<comment><USER2> True, good points, but not insurmountable roadblocks, especially if more weight gets thrown behind it. I think the last two points can also be addressed by better caching, etc.

Further into the panel, it seems like there is interest in having some kind of standardized hooks into the compiler, and Guido hems and haws a bit about that becoming implementation specific a feature, but really maybe it should become a defined part of the language.

In one sense, I think if Python 3k had better function syntax/flexibility that might help a lot... then you could almost create DSLs. I mean function definition and application more like Haskell, or even something like CoffeeScript.

I applaud that they standardized the print keyword to a function in Python 3K, but now I can't help but feel they should have changed all functions to be more like 'print' instead.

<comment><USER4> _In one sense, I think if Python 3k had better function syntax/flexibility that might help a lot... then you could almost create DSLs._

Reading this, I'm a bit flummoxed. I'm like, "Wow, does the mainstream science/technical computing world still not get it at all?" Probably not, and on second look ,it shouldn't be surprising. Java also suffered from the lack of first-rate DSL implementation for many years. The mainstream expectation is still often that one adapts to the language, instead of adapting the language/libraries to the problem domain.

Any language that expects to be used by sci/tech needs at least to be able to implement algebras without resorting to anything but ordinary library programming in the native language, and the expectations of sci/tech programmers should match.

</comment></comment></comment></comment><comment><USER5> There were many great data-related Python presentations and discussions over the past few weeks at Strata, PyData 2012, and PyCon. There's a lot of momentum in the space - we were thrilled to be sponsors & participants. Everyone we met was smart, capable, and best of all, exceedingly friendly.

If you want to be a part of the ongoing discussion, please join the new pydata mailing list (<http://groups.google.com/group/pydata>) and irc channel (#pydata on irc.freenode.net).</comment>


Google's new CAPTCHA security login raises 'legitimate privacy concerns' - <AUTHOR> http://www.businessinsider.com/google-no-captcha-adtruth-privacy-research-2015-2?r=US <comment><USER2> Does anyone have good alternatives to old/new ReCAPTCHA? I've been scratching the surface of academic research in the area, and it's all kind of messy.

(It's no great secret that CloudFlare would love to switch away from ReCAPTCHA, for a whole variety of reasons. It's one of the things Tor users complain about the most, but it's an issue for a lot more users than that. We're doing a lot of stuff to reduce reliance on CAPTCHAs overall throughout 2015, but we still need a good one for some checks.)

I wonder if some kind of prize (anti-Turing prize?) would help. There's the core algorithm/approach question, as well as the infrastructure and deployment model question. I'm a lot more comfortable answering the latter; the former is a black art mixture of science and art.

<comment><USER3> Why not just rate limit responses? That ends up costing bot makers about the same amount of money as captchas (which are often solved by workers earning slave wages). This arms race will never end and if the insistence is always to prove you're human, then humans will always be exploited for this proof. Imagine one day when we've automated the world and the only reason humans have to do any work is so that robots can prove they're human. This whole thing is ridiculous.

Specifically one way to rate limit would be a cookie value that changes on each request, the previous cookie value expires, and only the site knows what the next valid cookie value is. Bots will pay for the cost of waiting in terms of computing time, and in terms of memory if they get around this by parallelization. As these costs go down due to cheaper computers, then so too will the costs of serving the site.

<comment><USER4> The article claims bits can solve the most distorted text with 99.8% accuracy. I'm not that accurate. Perhaps someone can write a captcha breaking chrome extension, so I don't have to bother.

<comment><USER5> [https://chrome.google.com/webstore/detail/rumola-bypass- capt...](https://chrome.google.com/webstore/detail/rumola-bypass- captcha/bjjgbdlbgjeoankjijbmheneoekbghcg?hl=en)

the power of paying other peole cents to fill in captchas

</comment></comment></comment></comment><comment><USER6> So if google is grabbing all your profile data via the traditional reCAPTCHA but also makes you fill out a form, then it's all ok. But once it becomes obvious that they are collecting the data and they are using (the already collected) data to make it so you don't have to type in the text on the picture, _then_ it's a privacy concern.

Or do you honestly believe they bought and continued to operate the old reCAPTCHA out of the goodness of their hearts, never collecting all that data that everybody is upset about now?

<comment><USER7> "Or do you honestly believe"? Really? Your choice of wording is a tactic that spins the discussion in a way that people should recognise as a derailing tactic by now. It attempts to make people who do indeed view things this way feel embarassed, and it's not even about beliefs to begin with. Please stop.

<comment><USER6> I agree. That was badly worded. Sorry. Unfortunately, by now I can't edit the comment any more.

However, there is no technical reason why the old system would not have had exactly the same means for tracking the user as the current system has.

If you consider that Google is mainly an advertising company and that Google's investment into reCAPTCHA must provide them with some value, that lead me to conclude that the old system was doing exactly the same tracking as the new system is doing now.

The advantage is that now I don't have to type in letters while the tracking stays the same.

</comment></comment></comment><comment><USER8> This sounds pike Google could be violating EU laws about data protection. We've seen that the EU is happy to enforce stupid laws (cookie notification; right to be forgotten) so they need to be a bit careful. They at least need a robust rebuttal to researched concerns.

</comment><comment><USER9> I've been presented with this new captcha about a dozen times, and "failed" it every single time, whereupon it falls back to the traditional squiggly text.

I run Ghostery, so perhaps passing it relies on possessing some tracking cookies? If so, I'm happy to continue failing it.

<comment><USER10> There is no AI and other stuff this article talks about. It's just google cookies and nothing interesting about it [http://homakov.blogspot.com/2014/12/the-no-captcha- problem.h...](http://homakov.blogspot.com/2014/12/the-no-captcha-problem.html)

</comment></comment><comment><USER11> Little bit off topic but, if you use only <tab> to go to checkbox and press space to select it, it brings up the good old "type the text in the image" verification (distorted text).

So it thought I was a robot and fallback is to use the old captcha. Well, not sure if this new captcha solves the problem it was intended to do so. Am i missing something?

This is quoted from their blog post about recaptcha -->

"However, our research recently showed that today's Artificial Intelligence technology can solve even the most difficult variant of distorted text at 99.8% accuracy."

Here you can test it by yourself --> [https://www.google.com/recaptcha/api2/demo](https://www.google.com/recaptcha/api2/demo)

<comment><USER12> Oooops... It presents me with the Recaptcha image challenge but the top half of the challenge image isn't visible on the pop-up.

1800x1280 phone screen isn't sufficient it appears.

</comment></comment><comment><USER13> I assumed this was how it worked. Tracking mouse/keyboard seemed a little phony, and google is hardly a stranger to tracking personal information. It really is a bummer that there aren't many great alternatives.

</comment><comment><USER14> I can't imagine there are many sites using this that aren't already using Google Analytics, which is already deeply integrated with their ad platform and knows exactly who you are using cookies.

</comment><comment><USER15> Friendly reminder that every request to any Google associated server comes at the price of having your privacy invaded. Yes, this means Google Search but also GMail, Android, reCAPTCHA, Maps (any website displaying a Google Map), Google fonts (any website using Google fonts), Google CDN (any website using Google CDN), G+ (any website using an integration) et cetera.

In fact, completing this list with ALL Google its tentacles will probably break the character limit on HN. On a very few exceptions, Google its scooping eye is there to learn more about you.

<comment><USER16> This isn't Reddit, and substance-free paranoia isn't welcome here. In particular, some of the properties you listed are hosted on cookie-less domains and have privacy policies that severely limit data collection.

</comment></comment><comment><USER17> I can't understand why anyone is surprised. Anything you load from Google's servers is used to gain more insight into your online habits.

It's their core business. To learn as much as possible about people online to be able to show them the most relevant ads.

</comment><comment><USER18> Forgive my ignorance, is there a way I can use cookies for authentication tracking only on websites while blocking access to screen-size, CSS etc?

</comment><comment><USER19> I'm confused as to why people would care. It's easy to block, and if so you have to do a harder test. No one said wanting more privacy wasn't hard work.

For the 99% of people who don't care, it's a great improvement.

And if someone wants to write a better system, who's stopping them?

<comment><USER20> Great. How do I 'easily' block this on my iphone, please?

<comment><USER21> Well, I guess jailbreaking does not qualify as easy, does it?

</comment></comment></comment><comment><USER10> So what? Kind of useless article, nothing new.

</comment><comment><USER22> It's google. By this point, if anyone is really surprised they hate privacy, they have clearly been living without any internet or newspaper access for the last 10 years.</comment>


Augmented reality use by Alstom  - <AUTHOR> http://www.youtube.com/watch?v=Tg4LrcOUBSE

<comment><USER2> I still don't get why everyone thinks Augmented Reality is so great. For live TV, ok; but for live performances / talks (like this one) your in the weird position of having to watch the performance happening in front of you, on a screen.</comment>


Google Wallet Card FAQ - <AUTHOR> http://www.google.com/wallet/faq.html#tab=faq-card

<comment><USER2> Didn't know this existed.

Ordered it at once, now I can actually start using only google wallet for all of my purchases, not only the times when stores have NFC terminals that are compatible with the Wallet app on my phone.</comment>


Node.js, MongoDB, and you: an intro in parts - <AUTHOR> http://blog.mongohq.com/node-js-mongodb-and-you-an-intro-in-parts/ <comment><USER2> Nice article, quick and easy to get through and... I'm sure actually doing this is much better than when I tried this as both have matured quite a bit but... This article is a nightmare of mine, having to use both Nodejs and MongoDB together.

Why? I still can't get this out of my mind:

[https://twitter.com/HackerNewsOnion/status/38257854706983731...](https://twitter.com/HackerNewsOnion/status/382578547069837312)

Also before anyone gets too serious with a reply, learn to laugh. Humility goes along way! I poke fun at Ruby/Rails all the time.

<comment><USER3> Every time I read about Mongo I think of [http://mongodb-is-web- scale.com](http://mongodb-is-web-scale.com)

That said, if your project doesn't store extremely important data and needs to be quick to write Mongo's an OK choice.

Of course, even though it's much easier to use than other databases at first, if you later want to make sure your data doesn't disappear it's a total PITA.

<comment><USER4> I think this sort of FUD has been beaten to death...lol.

</comment></comment></comment><comment><USER5> Mongo is cool, and Mongoose (node ORM-like wrapper) is pretty nice as well, but after using it for a few months on a project I was building I realized that I was duplicating a ton of data. Until mongo solves the issue of joins (something that is better suited to a sql solution), I just had to revert and ended up used node-mysql which is a pretty decent node mysql driver. I was considering using mongo for sessions (with connect-mongo), but ended up going with redis as it's pretty solid solution (and according to some benchmarks, faster).

<comment><USER6> I feel you - I recently started a node project on LevelDB and ultimately switched over to an SQL database. The difference though is I went for Postgres 9.3, which has incredible native JSON support, allowing you to slice parts of your JSON data out as a record set, join them against tables, as well as other crazy things like partial indexes on deeply nested JSON values which may or may not be present.

I really think Pg is starting to blow Mongo out of the water.

<comment><USER7> Any suggestions on ORMs or npm packages to use with pg and node?

<comment><USER6> I'm a big fan of ORMs in other ecosystems (Rails and Django, for example), but in node I like to write more functional-style code, composing small modules into larger applications.

For this, check out the fantastic node-postgres adapter from brianc as well as his node-sql package for authoring SQL statements.

[https://github.com/brianc/node-postgres](https://github.com/brianc/node- postgres) [https://github.com/brianc/node-sql](https://github.com/brianc/node- sql)

</comment></comment></comment></comment><comment><USER8> IMPORTANT: the current stable official node-mongodb-native silently wraps exceptions. So completely non DB related code might be failing in your app, but because it's called in a callback, it won't ever show up.

This is acknowledged by 10gen/MongoDB inc: [https://groups.google.com/forum/#!topic/node-mongodb- native/...](https://groups.google.com/forum/#!topic/node-mongodb- native/AZewJaX4YuE)

Use the beta 1.3 driver until 1.4 comes out unless you want to tear your hair out.

</comment><comment><USER9> The 'pyramid of doom' is one of my pain points with node right now. The article's solution is to push the anonymous functions out into separate named functions, but this just adds more code. Would have been awesome to use promises instead.

<comment><USER10> All I have to say guys; promises + generators. My god, it's absolutely delicious.

Seriously, just learn it. Get your --harmony flag on. It will be in browsers soon enough as well. It's literally the future of javascript and having converted some of my codebase to promises + generators instead of just promises. Wow. It felt amazing. Suddenly everything doesn't look like spaghetti.

I use bluebird for promises and a custom dev fork of Coffeescript that allows for generators. You do have to wrap your anonymous functions with "Promise.coroutine", but thats really it. You could always just not even use promises, and go plain generators too.

<comment><USER9> If I promisify some code with bluebird, can I use it with Mongoose's built in promises? Or will promises from different libraries explode when they touch?

<comment><USER10> Well promises are suppose to be compatible with one another due to adhering to rules. Should be A-OK. Bluebird is just, at the moment, the most performant Promise library, and they seem to be building their API as close to what native Promises will be like. You could really use any promise library and it wouldn't matter much, perhaps use the one that mongoose uses if it's an issue.</comment></comment></comment></comment>


Google Notebook Shuts Down - <AUTHOR> http://www.google.com/googlenotebook/faq.html <comment><USER2> Why Google Docs is not a good replacement for Google Notebook.

1\. Notebook you can tag entries in a notebook. Docs you can just tag the document. 2\. You can view all entries by tag. 3\. Notebook gives you a count of how many items you have related to a tag.

Why is google taking away something that I use almost more than I use gmail? =-(

Any good alternatives?</comment>


Flying a plane with flight simulator experience only - <AUTHOR> http://forumserver.twoplustwo.com/34/other-other-topics/prop-bet-can-i-land-plane-first-try-1200028/#post32862445 <comment><USER2> Final report: [http://forumserver.twoplustwo.com/showpost.php?p=35915547&po...](http://forumserver.twoplustwo.com/showpost.php?p=35915547&postcount=606)

<comment><USER3> And the final report by the guy flying the first time: [http://forumserver.twoplustwo.com/showpost.php?p=36010398&po...](http://forumserver.twoplustwo.com/showpost.php?p=36010398&postcount=722)

<comment><USER2> The panic he describes reminds me of my learning to drive. I'd been an avid cyclist, and the sensation of the car moving under its own power, independently of me, was shocking.

</comment></comment></comment><comment><AUTHOR> You might not want to skim through the forums (though I find the discussion interesting). In the end, this actually happened and you can see a video of it here [https://youtu.be/jJT_CACIZqs?t=6m18s](https://youtu.be/jJT_CACIZqs?t=6m18s) EDIT: and rdancer also linked to the final report, see his post, thanks :)</comment>


Ask HN: Did anyone here start a PhD in their late 30s or later? - <AUTHOR> I am thinking of changing my career from finance to computer science, I already have a masters in science and programming experience over 10 years. I would like to do a PhD in AI/robotics. Has anyone here gone back into study later in life? How did it work out and what happened? Any regrets? <comment><USER2> I was 51 when I started my PhD in software engineering. Some thought it was a sort of mid-life crisis. Over the decades of working in various areas of IT I had a burning desire to research a specific area that held an enduring interest for me.

I need to correct your use of the word "study". Doing a PhD is about extending an existing body of knowledge in a small but significant way. So you need to already have a Masters level of knowledge in your field and to be reasonably up to date in the field. Once you start your research you survey your field, aka literature review. Then you formulate how you are going to contribute and get stuck into experiment after failed experiment.

I was most fortunate to have advisors from several other leading universities around the world, people who were widely cited in my field. My principal advisor was helpful in navigating the bureaucracy, getting funding for conferences and motivating me to write and present several papers at conferences in my field.

Doing a PhD is an emotional roller coaster ride. I suggest that you Google extensively to read about other people's experiences. Be warned, you will find a lot of humanities PhDs experiences. Ignore them. Science and engineering PhDs are very different so focus on those. I can recommend reading phdcomics.com - lighthearted, and very accurate. Writing the dissertation can be challenging. Graduating feels like crossing the finish line after running a marathon -- total exhilaration and you forget the character building challenges that you faced up to in order to get there.

<comment><AUTHOR> Thank you for your detailed response. I am 37 now and plan to 'get up to speed' through private study then start a PhD when I am 40. Did you remain in academia after your PhD?

<comment><USER3> Think about how private study is going to translate to your application. Talk to professors to see what you'll need to get admitted. I had roughly the same plan, but luckily had dropped out of my undergrad so I was able to go back and do a 2yr undergrad right before applying to grad school.

</comment></comment></comment><comment><USER3> After 15 years of software engineering, I started a math PhD at 36. Consider the opportunity cost, those can be productive years. When considering programs, see how the other students like it. Your experience is likely to be similar. I did a postdoc afterwards, but didn't stay in academia. It might have been overkill, but the credentials have unlocked some opportunities.

</comment><comment><USER4> I started mine (Information Systems/ social science) when I was 38. Haven't really regretted it since. I think if anything it is beneficial to have some real life experience to put your theoretical knowledge in context. Also, at my university (London School of Economics) it turned out there were quite a few mature (30+ year old) PhD students.

I guess it comes down to what yo really want to do with your life. Are you reasonably sure you want to work in academia/ research? Then go for it. Otherwise, maybe not. Do go and visit some seminars/ workshops etc. for PhDs to get an impression of whether the lifestyle appeals to you.</comment>


An Open Source Tool for Scaling Multi-Agent Reinforcement Learning - <AUTHOR> https://rise.cs.berkeley.edu/blog/scaling-multi-agent-rl-with-rllib/ <comment><USER2> Here's a presentation on one of the examples in the blog post([https://www.youtube.com/watch?v=P7xx9uH2i7w](https://www.youtube.com/watch?v=P7xx9uH2i7w)). Used to work with the group, awesome innovation.</comment>