Facebook's Gone Rogue; It's Time for an Open Alternative - <AUTHOR> http://www.wired.com/epicenter/2010/05/facebook-rogue/ <comment><USER2> > I'd like to make my friend list private. Cannot.

> I'd like to have my profile visible only to my friends, not my boss. Cannot.

> I'd like to support an anti-abortion group without my mother or the world > knowing. Cannot.

Great examples of what Facebook cannot do, and what the Facebook replacement must do.

<comment><USER3> I wonder how could any Facebook replacement (or Facebook itself) allow somebody to support some group while not telling anyone. Of course it's possible, donate some money, do some job for them, but… on Facebook or something like Facebook? How?

<comment><USER4> Facebook itself used to have this level of privacy protection. You could join a group and post on the wall and in the forums for that group privately. If your privacy settings were to disallow non-friends from seeing your profile, then it would just show your first name and a generic placeholder as your photo. Your name would be unclickable and therefore untraceable to you unless you had a unique first name.

Ironically, right before the big push to erode users' privacy, it seemed that they might have taken it a step further and replaced your name with "facebook user", removing even your first name (I was never sure if this was intentional or a bug, but in any case it didn't last long as the big privacy changes came soon after).

<comment><USER5> The thing is, this doesn't even make sense for FB to do. I've removed my interests and activities from my profile. Before the ads I got shown were basically relevant - they were mainly for products and services connected to those sports I listed, for example. Now the ads I get shown are fairly random. So Facebook have reduced my value to them as a set of eyeballs to show ads to. How can anyone at FB have thought this was a good idea?

<comment><USER6> I've done the same thing as you and noticed the same effect on the ads shown to me, but when I mentioned my privacy concerns to some friends the other night, most just said "so what, I don't have much of value on Facebook anyway". I think the mass of people (even intelligent people) don't have the same privacy concerns as a lot of the "tech informed" crowd does.

We know how valuable the data is and what can be done with it, that makes us much more sensitive to giving it up.

</comment></comment></comment></comment></comment><comment><USER7> What I'd like is distributed p2p linking. No personal data on a server that isn't yours. Any of your data hosted on a third party site if you choose so, is encrypted to within an inch of its life: they can't do ANYTHING with it except forward it to whoever you designate.

Venn diagrams for your social graph. Or trees. Preferably both. If Yelp/Microsoft/whoever wants my data, they become a member of my social graph, not some all-seeing entity that hovers above me recording every comment I make. Data that goes to them is encrypted as well of course.

Make it distributed, because no company hosting user data will be able to resist the temptation to use it to make money. Or build it on top of Dropbox, and have Dropbox serve as the backup for your online social life, encrypted, of course. 2GB will eventually fill up, and hopefully people will be happy to pay for extra storage, especially if you make it easy.

<comment><USER8> I have a comment further down mentioning the horrendous mess that a P2P architecture would present.

It would work for techies like us, but it wouldn't work for the segment that is making Facebook so transcendently popular. MySpace was a "teen" thing, others before it, too, but Facebook is mainstream; my grandma has a profile, my parents have profiles, and such is true of many.

Also mainstream is turning off your computer when you're not using it. Almost every non-techie I know is really interested in having their computer turned off. They don't really care about waiting for it to come back up. Telling them that their profile is only accessible while their computer is on is an instant killer. And what if their internet goes out? They're down for that time too. For people with spotty or wireless connections, saying "your profile will only work when your connection works, like 30% of the time", is not going to be too encouraging.

What if a user's hard drive dies? Do you really expect people like my 86-year- old grandmother to make backups of her social network profile frequently enough for it to be meaningful? Or what if a user just gets a new computer? Are they going to understand how to transfer the profile?

Making users download and run a P2P server 24/7 slows down the computer, increases personal connection bandwidth usage commensurate with one's popularity, and creates a big opening for scammers.

I know Facebook would be much less enjoyable if I had to sit around and wait for the dial-up AOL connections of the old people I know to upload their photos. Or even home broadband connections; in the US, those are usually capped at 60-70kbps upload, which is pretty slow.

How easy would it be to create a page that looks like your network's page and say "We've updated our client! This is a special update that we can't auto- update for these smart-sounding technical reasons, so please download and install it." People would do this immediately because social networks are a major part of their web usage; for some, the only reason they use computer. And your network would be poisoned and the users' profile disabled just that easily.

I just don't see how a P2P social network would gain mainstream appeal. What are your solutions to these problems?

<comment><USER9> This is why your "peer" should be a cloud server, not a PC. Call it S2S architecture.

<comment><USER8> Right, but then you still have all of your data off somewhere in someone else's control. It'd possibly even be worse than Facebook, because an open "provider" that doesn't do anything except host data for Facebook & co. wouldn't be bringing any revenue, and thus would be tempted just to sell all the data you upload.

The point shouldn't be to cut out Facebook, it should be to keep the user in complete control of their data. You can transfer control to an arbitrary entity but what are they going to do to make money, and are they going to become corrupt or not? And if you asked yourself the same thing about Zuckerberg the day after Thefacebook went online, what would your answer be?

<comment><USER9> Obviously you can only trust a server if you pay for it and have a good contract. It's like an apartment or a safe deposit box.

<comment><USER8> And how many are going to pay for server space when you say "this is like Facebook, but more secure", and how many are just going to stick with Facebook?

<comment><USER9> IMO people deserve as much privacy as they're willing to pay for. If some people choose to stick with Facebook, that's not my problem.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> I love that there's a Facebook Like widget in the right column as you scroll down.

<comment><USER11> metalike!

</comment></comment><comment><USER12> Yea let's get an open alternative, a few years of coding, a few years of Facebook screwing up, a massive hatefest, and it will have 30% penetration in 2018. By then there will be new technologies that will make the issue irrelevant.

Same as Linux and Firefox. By the time the community effort got it together, most of the effort was obsolete. Google's Chrome OS throws much of linux away. NativeClient sandboxing turns browsers and plugins into frameworks of choice, like jQuery.

There has to be a more efficient way.

<comment><USER13> FWIW, I have written a facebook clone in Common Lisp and took me 2 months. It has profile pages, a platform for 3rd party apps, elaborate RBAC-based security, and a rudimentary service API.

If anybody wants to take this in some direction, I am more than happy to come aboard.

<comment><USER14> is there anyway we can take a look at it?

<comment><USER13> Anybody who sent me an email gets a preview after I clean it up in a week.

</comment></comment></comment></comment><comment><USER15> "It's time the rest of the web ecosystem recognizes this and works to replace it with something open and distributed."

Before Facebook there was FOAF, which was exactly the same except for that it was open and distributed... And nobody used it. Being closed is the only thing that makes Facebook good.

<comment><USER16> Presenting itself initially as Harvard's yearbook is what made it good, as it kickstarted its network effects (everyone feels sort of obligated to be "in the yearbook," because they want to imagine they will be reminisced about.) I've seen FOAF profiles, but I've never seen a FOAF _network_.

<comment><USER15> "I've seen FOAF profiles, but I've never seen a FOAF network."

Yeah, because no one is going to give 700 million dollars to a bunch of hippies to make some internet commune.

</comment></comment></comment><comment><USER17> A guy I know has been working on something of the sort for awhile. I'm sure he'd appreciate some thoughtful input from enlightened beings such as yourselves. =^)

<http://socknet.net/w/The_Socknet>

</comment><comment><USER18> <http://onesocialweb.org>

</comment><comment><USER19> What facebook is for anyways? Why should anyone care? I find it becoming more and more boring, useless - and, from my experience, people tend to go there less and less.

\- Photos here and there

\- Random links/videos scooped around the net

\- Rants/statuses nobody cares about

\- Passive activism where people "join a group"/like something and do nothing about it

\- Farmville

It is boring, really. I found twitter, recently, of immense use in two fields. First, around the industry bunch of professionals connected themselves even without knowing each other beforehand and openly discussing stuff and sharing ideas. (notably game dev). Also, have you seen stocktwits? If they can find a system to filter out the noise... excellent! I have an idea though, if they could somehow pool calls from regular users and "analysts" and compare them to a weighted random generator and post stats next to each user that would be great.

</comment><comment><USER20> facebook is now opt-out whereas it used to be opt-in. give me something like that with early 2006 facebook simplicity and id try it. ironically, ive always wanted a higher res community for the people here on HN. this might be the perfect seeding grounds for something to happen (early adopter, good sense of community, far reach,etc.)

</comment><comment><USER21> I think a good idea for a new Facebook would be to start at some big University college and build up from there...

</comment><comment><USER22> I'm curious as to why lifestreaming never caught on: why entrust all your data to a single service (Facebook) when you can entrust specific data to specific services (photos to flickr, status to twitter, bookmarks to delicious, etc). This fragmentation produces specific competition for hosting particular data (this is already the case: Flickr, Smugmug, Picasa etc) which should keep hosts fresh and honest as they don't want to lose users.

All lifestreaming did was aggregate all of this into a discoverable point with privacy controls.

What happened?

</comment><comment><USER23> Can someone show evidence of this statement?

"Now, say you you write a public update, saying, "My boss had a crazy great idea for a new product!" Now, you might not know it, but there is a Facebook page for "My Crazy Boss" and because your post had all the right words, your post now shows up on that page. Include the words "FBI" or "CIA," and you show up on the FBI or CIA page."

That is scary.

<comment><USER24> Facebook has had stream search for public status messages since July of 2009. Stream search is privacy-neutral; it only lets you see posts you were already allowed to see.

If you don't want your status messages to be visible to everyone, set your privacy settings accordingly. Account -> Privacy Settings -> Personal Information and Posts and adjust the "Posts by Me" setting to whatever you like.

</comment></comment><comment><USER25> I am going to work on a new implementation of a facebook style website. Built on these core values: 1) User privacy 2) Data transferability 3) Open source software 4) Open API (for only that data that users allow, of course.)

I plan to do it in a Python web framework, most likely Django.

I know people have been discussing a distributed social network, but I don't see a market for that among the non-techies of the world. Just like they see XMPP as gMail chat (most of them), open standards mean nothing. Just look at openID, it simply can't gain much traction -- unless a flag carrier picks it up. Distributed social networking will simply splinter the arena till it's impossible for them to know "which one?"

For a new social network, the users want: 1) Simplicity. 2) Privacy. 3) Interaction. 4) Rich but intuitive interfaces.

I am making a call for any interested devs, shoot me an email. lukeseelenbinder <at> the only webmail provider to use. :)

(If I should post this as a new post. Let me know. I'm a little new to HN)

<comment><USER26> Glad that you're a hotmail user, oh wait that's not you ...

</comment></comment><comment><USER8> I've been thinking about doing some kind of distributed/open social network thing what with all the Facebook scandals cropping up, but it's pretty hard to do.

The fact is for something like Facebook to function smoothly, it has to be centralized. There has to be a server somewhere out there that can be queried reliably for this data and that's the bottom line, even if you have something API-based like OpenSocial. It's just a matter of who you're going to trust with that data -- and as we see over and over again, money and power clouds judgment; a good candidate to control this network when it's starting out may not hold up so well under the barrages of billions in revenue and investors down the neck.

The only way for users to have real control over their data is to build some P2P/self-hosting architecture, and for reasons all HN readers understand, this would be a huge, huge mess.

<comment><USER27> At first glance it seems nontrivial. As with most problems like this that can be decomposed into algorithms and datastructures, technology provides a solution. OpenID, OAuth, and Open Social were all developed to solve similar problems.

My guess is that there will be half a dozen competing protocols within a year.

<comment><USER8> Right, and how successful are those protocols you've named? They all have relatively limited deployment and usage even though they've been around for years. OpenID is a nice idea but people don't want to remember a URL and a username and a password. People don't want to remember a "master URL" to give to each new social app they sign up for -- they want what Facebook gives; just sign up with a traditional username and password and start finding your friends immediately.

And, again, even then, if we follow the OpenID model of external providers, it's all about trusting that external provider with your data. There's still a central point with your data on it. There has to be. Unless the user is self- hosting this data, there is always a reliance on external entities. And how long could an external provider survive merely as a host for applications like Facebook, while not pulling in any revenue from Facebook's revenue channels like ads or Credits?

</comment></comment></comment><comment><USER28> Might be a fun project to implement the XMPP Microblogging XEP (<http://xmpp.org/extensions/xep-0277.html>) as a start. XMPP seems to have a lot of the basic features for a distributed social network (buddy list, pubsub, established protocol, etc...)

</comment><comment><USER29> _"... It's time for the best of the tech community to find a way to let people control what and how they'd like to share. Facebook's basic functions can be turned into protocols, and a whole set of interoperating software and services can flourish ..."_

That is an interesting thought. Eben Moglin, _"Freedom vs. The Cloud Log"_ ~ [http://www.h-online.com/open/features/Interview-Eben- Moglen-...](http://www.h-online.com/open/features/Interview-Eben-Moglen- Freedom-vs-the-Cloud-Log-955421.html) has a solution. A small web server where you control the logs and content, "do-able".

</comment><comment><USER30> Is there some sort of metric out there that quantifies the number or percentage of people that care enough about privacy to drop out of Facebook in disgust? What if FB is right and most people don't care about comprehensive privacy features? It may simply be enough for FB to keep random stalkers and identity thieves away. It's easy to imagine that the Ebay effect will stick to FB and it'll be the only heavyweight social network site around for some time.

</comment><comment><USER31> "Now, say you you write a public update, saying, "My boss had a crazy great idea for a new product!" Now, you might not know it, but there is a Facebook page for "My Crazy Boss" and because your post had all the right words, your post now shows up on that page. Include the words "FBI" or "CIA," and you show up on the FBI or CIA page."

Is this really true, or is the author conflating updates with the newly- normalized interests fields?

<comment><USER32> Here's the page for the "Legos" interest:

[http://www.facebook.com/#!/pages/Legos/110234219005966?ref=t...](http://www.facebook.com/#!/pages/Legos/110234219005966?ref=ts)

Take a look at the "Related Global Posts" list below. You'll see lots of stuff from people who don't list lego in their interests fields.

The question I have is whether posts still show up if your status updates are hidden to people who are not friends or friends of friends.

</comment></comment><comment><USER33> It's funny seeing this article a day or two after seeing an article about Diaspora.

</comment><comment><USER34> Listened to a talk given by one of the Firefox guys a while back and in their vision social networking would be aggregated into the browser. Seems like a good start for this open alternative.

<comment><USER35> I've noticed a trend recently whereby social networking sites on the internet are becoming integrated into desktop applications, panel applets, and now you suggest integrating it into my browser?

Personally, I like keeping my online social identity sandboxed away in my browser, in a tab. If it's integrated into my browser's code, then it's harder to understand how my privacy works.

In the current situation, I just have to clear my cookies to ensure my privacy is secure.

I'm _not_ enthusiastic about a future where my browser has the functionality of _specific web services_ built into it.

</comment></comment><comment><USER36> Through this article I found out that Facebook has a "Chief Privacy Officer." That made me giggle.

How long till CPO Chris Kelly's job is obsolesced by the utter lack of privacy on FB?

<comment><USER37> A la Piers Anthony: The function of the Chief Privacy Officer is to ensure that there is no privacy.

</comment></comment><comment><USER38> If a open facebook clone is released that gets all the bands off of myspace and onto the clone then I think you'll have a winner.

</comment><comment><USER39> My take: ignore the hype, watch people freak out and run around, and if it turns out it is a truly bad apple, pull out when I know for sure.

Not because I have a vested interest in them, but I don't have any info I need to keep private (I make sure of this) and I am not one to buy into hype and running around with your hands in the air.

Go ahead, downvote me for not being a Facebook alarmist. I do apologize though if I put it too curtly.

</comment><comment><USER40> Don't get the fuss ... live by this rule -- DON"T PUT SENSITIVE INFO ON THE INTERNET. Simple. Be smart. Know what it is and isn't. Even if FBook had more enforced rules, then hackers would be the issue. As for FBook using the info you give it ... well, that's just good business.

</comment><comment><USER41> I think that there should be a push to build upon the idea of using XHTML markup to create a distributed social network.

Formally known as XFN?

<comment><USER42> why do you single out XHTML? a markup language is not relevant to the problem.

besides, XHTML never caught on. otoh, HTML5 is doing great.

</comment></comment><comment><USER43> <http://www.linkedin.com/companies/enole>

</comment><comment><USER44> No way. You cannot attract so many people worldwide when the trend is already mature. The same with other mass hysterias like WoW, now the iPad, etc.

The Tipping Point is a good book to learn why not. In-browser social networks is a not a cool thing anymore. It is just some feature of the net.

What is really interesting - is an emerging market of the Android-powered devices. The hardware is powerful and cheap enough, and the platform is open and simple (unlike the Nokia's crap).

The next generation of the social communications should be something like "texting 2.0" - texting with easy integration of a rich content from phone's camera on the fly. Just because teens loves texting, taking photos and their mobile phones.

<comment><USER45> A thousand times yes. I just made the same comment not 2 days ago on reddit. The next social networks are an extension of our mobile network which already exist. My only concern is that I don't trust carriers any more than facebook. And I don't want to pay per message. So an open system is paramount ... And doing it before a Closed business gains the most marketshare in that space.

</comment></comment><comment><USER46> I think it's actually time that FaceBook got shut down. By law.

<comment><USER47> On what legal basis? It's just a website that you can use if you like. I think Facebook is actually very useful because they are so openly nasty, disrespectful and deceptive. Their users are, on average, so incredibly negligent and clueless that the whole thing will blow up in society's face eventually, and then much better sites (maybe even a reformed Facebook) will emerge.

<comment><USER48> Indeed; I don't see their having done anything that rises to the level where an execution by the government is warranted. If they get slapped around some more by the FTC that will become even less likely.

One good thing that might come out of this is some "rules of the road" on changing ToS when they also change the social contract under which people entered their personal data.

</comment></comment></comment><comment><USER49> It doesn't matter what's right or wrong, or what we want! 5% of users know or care about privacy. And social networking services are all about the network effect. So, good luck competing. Facebook won.

</comment><comment><USER50> Facebook is for cheap-ass squares. They will get the biggest bang for the non- existent buck with FB.

It is only the deviant evil bastards such as myself who steer clear of the site: the atheist in a sea of believers, the swinger in an ocean of conventional marrieds, the Libertarian government critic in a swirl of FBI and CIA FB meddling, the gay-rights supporter in a community of homophobes... Damn, and this is just the beginning.

Free isn't necessarily freedom which is why I tend to be doubly-cautious around it.

</comment><comment><USER51> Ugh. Another FB article.

When the revolution comes, the spark that lights the fire won't come from Hacker News.

/me goes off to find a greasemonkey script to drop FB articles.</comment>


A Proposal for Simplified Definitions of "Object" and "Object Oriented" (2012) - <AUTHOR> http://wcook.blogspot.com/2012/07/proposal-for-simplified-modern.html

<comment><USER2> _" An object is a first-class, dynamically dispatched behavior. A behavior is a collection of named operations that can be invoked by clients where the operations may share additional hidden details. Dynamic dispatch means that different objects can implement the same operation name(s) in different ways, so the specific operation to be invoked must come from the object identified in the client's request. First class means that objects have the same capabilities as other kinds of values, including being passed to operations or returned as the result of an operation.

A language or system is object oriented if it supports the dynamic creation and use of objects. Support means that objects are easy to define and use. It is possible to encode objects in C or Haskell, but an encoding is not support."_

I'm perfectly happy to not call Haskell "object oriented", but I fail to see how the "record of closures" pattern fails to meet all of his criteria _including_ ease of creation and use.

Edited to add: To be clear, I fully agree with him that typeclasses have nothing to do with OO in Haskell, by his definition of OO.

<comment><USER3> I'm reminded of "Closures and Objects are equivalent" ([http://c2.com/cgi/wiki?ClosuresAndObjectsAreEquivalent](http://c2.com/cgi/wiki?ClosuresAndObjectsAreEquivalent))

That being said, you can easily create a data type in Haskell that contains a bunch of "methods" that live in the IO monad and mutate other bits of data the object contains that also live in the IO monad, but it's a bit of a forced paradigm.

<comment><USER2> _' I'm reminded of "Closures and Objects are equivalent"'_

Sure, though to be clear I'm not taking any position on that question above. I just think that the pattern solidly fulfills all of the criteria he gave, and it's not a terrifically obscure one.

 _' That being said, you can easily create a data type in Haskell that contains a bunch of "methods" that live in the IO monad and mutate other bits of data the object contains that also live in the IO monad, but it's a bit of a forced paradigm.'_

I think what you're getting at here is that persistent identity and mutable state are necessary parts of IO? It's clear that they're often assumed to be; I've encountered the question before and I lean weakly "no", although not with confidence. More importantly, they are explicitly _disclaimed_ as being an inherent part of IO as defined in the article, so were not what I was speaking to. I agree that an IO-backed message passing object framework 1) could be built in Haskell and 2) would not be a natural fit.

<comment><USER2> ... necessary parts of _O_ O.

</comment></comment></comment></comment><comment><USER4> I love it. Just a few nits -- wording that struck me funny -- all of which are eventually addressed within the article:

1\. "An object is a behavior." This is a meaningless or misleading use of "is" to me. I prefer "an X with behavior" or "a thing distinguished by (considered for?) its behavior."

2\. The statement that not all Java classes define objects (for example, ones with lots of fields), and that saying this is in keeping with common ways of speaking. No, a programmer would call any object in Java an "object." I get that the point is to say that a struct does not make an object, but the point seemed overstated in that case.

3\. Objects must have "recognizable identity," but you don't have to be able to compare the identity of two objects (really it should say two object values or two references). "Recognizing" is being used in a very abstract way here, to avoid invoking state to explain the potential difference between objects. I think it's a little too subtle, even if the point is elaborated on later. If you have any other way to articulate what gives objects identity even if you can't detect it directly, I think it would help. To most readers, I think "recognizing" identity would mean being able to check whether you have a reference to a given object or not, which means being able to compare references. Are there OO languages where you can't? I'm not objecting to downplaying identity.

<comment><AUTHOR> Re 2: I believe he had in mind a class used only to define some static methods.

The original OO language, that is the lambda calculus, had no reference comparison -- All You Can Do Is Send A Message is the slogan in general. [http://www.erights.org/elib/equality/grant- matcher/history.h...](http://www.erights.org/elib/equality/grant- matcher/history.html) lists some less familiar ones.

Given mutability, identity determines how a message to one object reference affects what happens when you invoke another one. If you go up from the above URL you'll see a bunch more discussion.

</comment></comment><comment><USER5> It is unfortunate that we still are worried about objects and aren't so worried about messages. Most devs don't think about or care much about messages at all.</comment>


Q: Why did Wesabe shut down, while Mint did so well? A: by Jason Putorti - <AUTHOR> http://www.quora.com/Why-did-Wesabe-shut-down-while-Mint-did-so-well

<comment><USER2> Jason,

wow, intentionally not designed for the security-conscious crowd. That's a beautiful move.

oh, now please get that "cash transactions" feature to work properly please. if you need help with that, let me know. thanks.</comment>


Rubinius 2.0 Preview Release - <AUTHOR> http://rubini.us/2011/06/07/inside-rubinius-20-preview/

<comment><USER2> According to my very unscientific measurements (I didn't bother looking which files are potentially auto generated), I got:

      182kloc of C (.c files)
      110kloc of c++ (.h + .cpp files)
      558kloc of ruby (.rb files)

That puts C/C++ at roughly 40% of total. Unless proven otherwise I would say "ruby written in ruby" is a bit untrue.

<comment><USER3> Your numbers are odd.

I would discount the .c code. Rubinius's native code (excluding third-party code) is largely C++, so better to focus on .cpp and .hpp files.

The .rb count is _way_ higher than what I got. The line counts I got (on master, not hydra):

vm / {cpp,hpp}: 162kloc

kernel / rb: 31kloc

lib / rb: 145kloc

Oddly enough the total ratio is roughly what you came up with, but I'm not sure where your numbers came from.

It's worth noting that the density of .rb source is considerably higher than that of .cpp source; a few lines of .rb can do what might take dozens or hundreds of lines of .cpp. I wouldn't fault them based on LOC; Rubinius is still implemented more in Ruby than any other implementation out there.

Let's say .rb is conservatively worth 10LOC of C++. That puts them at more like 10% "not Ruby", going by the amount of work they get done in each language. Even if you only consider kernel / rb versus vm / {cpp,hpp}, the 10X ratio means they're less than 1/3 "not Ruby". That's pretty good.

<comment><USER2> I just counted everything including stdlib and whatnot (all that comes in the checkout). "Rubinius is still implemented more in Ruby than any other implementation out there." well that's probably true, but not really useful. If all ruby implementations had 0 lines of Ruby and Rubinius 1 would you call it "mostly written in ruby"?

10X on LOC count is bogus, just because it's a single number. It does depend on what you do, it might end up being that, being more or being less, essentially [citation needed].

Anyway, even assuming this odd coefficient, I wouldn't say 1/3 "not Ruby" is "pretty good", although "pretty good" is not a precisely defined term, so we're free to agree to disagree on that. Given the same assumptions you can say CPython is written mostly in Python (10x Python-vs-C, including all the library code).

<comment><USER3> Well, I suppose I go by the following guide:

* stdlib is library code, not core VM code. It shouldn't be counted. * Percentage of _functionality_ of Rubinius's core implemented in Ruby is definitely higher than percentage of functionality implemented in C++, at least for the core Ruby classes. Hard to quantify that though. * Rubinius's VM _is_ basically all C++. I will concede that.

</comment></comment></comment></comment><comment><USER4> Awesome, the great thing about rubinius is playing around with the internals, since they're mostly written in ruby. The C++ core is quite tiny actually.

</comment><comment><USER5> Obviously great news. It dampens my enthusiasm a bit to know the same company funds development of JRuby however.

EngineYard really should clarify their vision behind maintaining two VMs. Going beyond the obvious "JRuby is for integration with existing J2EE infrastructure" angle would be nice.

Under what circumstances would they actually stand behind Rubinius as the better choice? Is the MRI C extension API compatibility an official feature now? Is it that I could switch from REE to Rubinius without having to worry about finding alternatives for all the libs I'm using that carry C-extension baggage?

<comment><USER6> This is confusing. JRuby is a great and important project. It's how a several very large Rails apps ship deployable versions of their product; it's the easy way to get a Rails app deployed in shops where the normal mechanism for getting deployed is "submit a war file", and it's how you get Ruby access to a zillion Java libraries.

Rubinius is a native implementation of Ruby that seems, over the long term, to have a goal of being the best single implementation of the language all other things being equal.

Why would I ever want to penalize a company for funding both of these awesome projects?

<comment><USER5> I didn't say anything about penalizing.

Microsoft clearly differentiates versions of SQL Server. That's all I'm asking for.

If JRuby performance continues to match or exceed Rubinius performance, but JRuby also gives me deployment flexibility and Java OSS integration options Rubinius doesn't, why would I choose Rubinius for my next green-field project?

That's not an accusation. It's a serious question.

I think Evan's answer on the Ruby C API is a pretty compelling reason on it's own. For businesses that don't have an easy JRuby migration path because of dependencies on multiple gems with C-extensions, maybe Rubinius is a much easier way to get into the next JRuby/Rubinius/YARV Ruby performance bracket.

That can be very compelling on it's own. What are some other reasons I might consider Rubinius?

Given the down-votes I guess I'm in the minority, but I think it's a fair question.

I was an early supporter of Rubinius, and put my money where my mouth was on more than one occasion with cash donations to the project.

I get that it's very neat from an academic standpoint. No argument here. Is it something EngineYard is going to stand behind and _just as importantly_ , start marketing so I get a good feel for the practical uses?

<comment><USER7> For my needs, jruby will never suffice as java isn't going to be installed on the servers I'm on. Nor to be honest would I want it, and JNI for c extensions is also a nonstarter. We have puppet at work for server deploys, and well, jruby may suffice for web/app server deploys that just run rails. But not all ruby users actually give a rats about rails (that's me, don't use it at all at work), nor do we have a need for java interop. Basically I'm in the exact opposite of your vantage.

I need c bindings for a few gems I made that need c ffi bindings, I don't need/care/use any java interop, and personally, I'd rather not have the jvm running on any of my servers.

I look at rubinius as the eventual YARV for the compiled version as YARV was to MRI, not as an academic project. But I admit, I seem to be a ruby outlier ever since rails has been around.

<comment><USER3> Your reluctance to install Java on the servers you're on means you're missing out on one of the best Ruby implementations available. You'd be well served by putting aside your prejudice and just giving JRuby a try.

That said, there's certainly domains where JRuby is not a great fit. C extension-heavy systems are one; because C extensions are so crippling to more modern VMs like the JVM or Rubinius, you're better off using the implementation the C API was designed for (MRI). Or if Rubinius suits your needs and C extensions work well enough, I'll recommend Rubinius over JRuby any day. I hate C extensions, or at least I hate them in the form they exist in MRI, since they're invasive and damaging to modern VM features like good GC and concurrent threads.

In any case, it's worth seeing if FFI (the Ruby API that Rubinius pioneered and JRuby made generally available) serves your purposes, because it works extremely well in JRuby and requires no C extension support. And I'd suggest you actually give JRuby a try; it's so much more than "Ruby for Java interop" and may work better as a "plain old Ruby impl" than you expect.

<comment><USER6> I just used JRuby FFI to implement a native x86-64 debugger on WinAPI; we had x86 working for a long time on Win32, Linux, and OSX using MRI, and JRuby was actually the _only_ way to get around LP64 issues with MRI. JRuby has been a compat and native code win for us; it is a better platform for accessing C code than MRI Ruby is.

<comment><USER8> Huge fan of FFI (I use it to wrap/test all my shared libraries, mysql ext, etc..), but the problem of cross platform compilation still exists. I write a shared library and an FFI interface, but packaging it for use on Windows/*nix is still a pain (for compilation during install). Is there anything that solves for compilation across implementations and platforms? (FFI makes the interface simple after that)

<comment><USER6> I don't think we should have to sign up for coupling with a specific Ruby's runtime internals just to get cross-platform compilation of a shared library. For whatever it's worth, even autoconf can be made to work cross-platform.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Is running Rails on Rubinius 2.0 still slower than on MRI 1.9.2? I hope not, but I need MRI 1.9.2 as a baseline (and yes, MRI is itself horribly slow)

<comment><USER3> Only one way to find out :)

</comment></comment><comment><USER10> muti-core support is interesting, installing now on my mbp</comment>


Create Diagrams in VS Code with Draw.io - <AUTHOR> https://github.com/hediet/vscode-drawio <comment><USER2> There are also plugins for graphviz, which is a more structured language. I use it for documenting states in my code, e.g. [https://marketplace.visualstudio.com/items?itemName=tintinwe...](https://marketplace.visualstudio.com/items?itemName=tintinweb.graphviz- interactive-preview) and [https://marketplace.visualstudio.com/items?itemName=joaompin...](https://marketplace.visualstudio.com/items?itemName=joaompinto.vscode- graphviz). Since graphviz is old, there are also command line tools to render the output.

For more information about graphviz: [https://graphviz.org/](https://graphviz.org/)

<comment><USER3> Why is it that on HN when somebody posts a link to a cool project, the top comment is systematically something like "here's an alternative"? Can we just talk about the posted link instead of just stealing the light?

<comment><USER4> > instead of just stealing the light?

because HN isn't a place to merely advertise a product to gain traction and marketing. These alternatives and comments on other competitors shed light on the entire eco system, and prevent astroturfing as well as group think. It may even widen somebody's lack of knowledge.

<comment><USER5> _HN isn 't a place to merely advertise a product to gain traction and marketing_

Today I learned.

<comment><USER6> There's nuance in that. HN is absolutely a mere marketing channel for (current) YC companies. The irony.

<comment><USER5> _The irony._

Is it, though? I feel like lately you could ask five different people what HN "is" and get ten different answers.

<comment><USER6> Just ask dang :) Oh btw I meant YC founders don't use HN other than for marketing..

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I think this extension demonstrates the flexibility of VSCode and how easy it can be to extend the platform with an extension.

Although it's supported by Microsoft, it's heavily influenced by the Open- Source community. I believe that's the reason it's so popular and user- friendly for both developers and users.

Can you imagine someone trying to implement this extension on a proprietary platform like Visual Studio or IntelliJ? ... going through proprietary documentation with no access of the Source-Code to the underlying system... It would be a nightmare

<comment><USER8> IMO it's the best side of Microsoft. It's something Apple would never do because the result might be too unpredictable and messy.

<comment><USER9> WebKit doesn't count? Google, BlackBerry, Amazon, Opera, Tizen, etc all maintain different derivations based off of Apple's work with WebKit, with the most well known being Google Chrome.

(Although I'll grant that WebKit itself is a fork of KHTML from the KDE project).

<comment><USER10> WebKit doesn't have nearly the same amount of community engagement as VS Code does probably because it's a piece of infrastructure code rather than user- facing software.

Where is WebKit source and issue management anyway? It's not on GitHub. I don't imagine Apple providing very well for people, who ask for endless options on a product like VS Code.

I suppose the open source Swift language might be comparable, but I don't think it's anywhere in the same league as VS Code regarding the number of users.

<comment><USER11> I believe WebKit source and issue management is on webkit.org; not being on GitHub seems to make sense to me, as (according to Wikipedia) WebKit was released three years before GitHub was founded. This is the Apple release, not KHTML existing (which was another seven years before that).

</comment></comment></comment></comment></comment><comment><USER12> The project has an embed mode, which was used in this case.

It needs a sequence embed, but basically you load draw in embed mode within an iFrame, do a handshake using postMessage, then load and save is direct between parent and frame, again using postMessage.

The idea is to be able to embed into hosts that are capable of storing the diagram data, without any code changes to draw. It can embed either the main site (which was renamed to app.diagrams.net), or a locally hosted/internally packaged version of the project.

Additional information on the embed format:

[https://github.com/jgraph/drawio- integration](https://github.com/jgraph/drawio-integration)

[https://desk.draw.io/support/solutions/articles/16000042544-...](https://desk.draw.io/support/solutions/articles/16000042544-embed- mode)

</comment><comment><USER13> This embeds an offline version of draw.io; I hadn't previously realised that this site is open source: [https://github.com/jgraph/drawio](https://github.com/jgraph/drawio)

Very neat!

<comment><USER14> Yes I've been using it offline with the electron app and on my phone as an offline website. It works really well that way. The advantage of the electron version is that for local files, it doesn't ask Everytime you want to save, where to save and if you want to overwrite, or save in downloads depending on browser settings.

</comment></comment><comment><USER15> I've been looking at draw.io and PlantUML - what has worked well for others? draw.io is much easier to get into, but I can see declarative diagrams making maintenance easier for long-lived docs.

<comment><USER16> Being a person who doesn't typically want to draw diagrams, I opted to go with draw.io as it looked very simple and easy. However, I was nudged to try PlantUML and to my surprise it was a lot simpler and faster to create diagrams. A point which you mentioned is maintaining the diagrams for long- term. We have a docs folder in our repository which includes all our PlantUML. It's quite easy to pick up as a language, and because it generates the diagrams for you, you don't waste minutes fiddling with getting the arrows all matched up. I would definitely give it a try - makes life so much easier!

Plus, there is a VS Code extension for it as well, which auto generates the diagrams when you save.

<comment><USER17> This [1] is the extension in question. I combine it with the extension template [2] for the C4 model [3] for easy architecture diagrams.

[1] [https://marketplace.visualstudio.com/items?itemName=jebbs.pl...](https://marketplace.visualstudio.com/items?itemName=jebbs.plantuml)

[2] [https://github.com/RicardoNiepel/C4-PlantUML](https://github.com/RicardoNiepel/C4-PlantUML)

[3] [https://c4model.com/](https://c4model.com/)

</comment></comment></comment><comment><USER18> Similar (but not that fully featured) is the mermaid preview extension : [https://marketplace.visualstudio.com/items?itemName=bierner....](https://marketplace.visualstudio.com/items?itemName=bierner.markdown- mermaid)

mermaid js website : [https://mermaidjs.github.io/#/](https://mermaidjs.github.io/#/)

</comment><comment><USER19> If we could get an extension like this for every file type VS Code could basically become your OS (desktop environment) or file manager at the very least.

<comment><USER20> A better OS with beautiful lisp language already exists called emacs (which happens to be an excellent text editor as well), try it. VSCode is built on a foundation of electron which is riding on chrome v8 engine. If one day webassembly becomes common and vscode can shed it's weight and become close to 50-60% of what emacs is, then it might be possible to think of it as OS, right now it looks 2-3 decades behind emacs.

It's only popular among programmers who wants an IDE not a programmable environment like emacs. Emacs attract scientists and researchers and people who write OS, compilers, DB, language specs, HPC systems and algorithms, design algorithms, performant OS utilities etc. VSCode attract web development crowd which mostly spend time on building web forms (making it dynamic using JavaScript with some framework may be react) on top of database schema or some document storage. Given this I doubt it will be anywhere as programmable as emacs.

<comment><USER21> VSCode is literally the only electron that doesn't bother me because it doesn't chew memory like Chrome, Slack, or every other electron app I've ever tried.

MS has done an amazing job optimizing VSCode.

<comment><USER22> Yes they have architected it so well that it performs amazingly well. The plugin architecture is well done too. The memory consumption goes up only when the plugins consume more memory as all of them run in separate processes. In the future, I'm thinking that they might start to replace parts of the app with WASM and make it even more performant. But I'm pretty sure it's not going to be the entire application.

Nevertheless, they have a somewhat easy path to migrate in the form of AssemblyScript which is a subset of Typescript that compiles to webassembly. The future of VScode is exciting!!

<comment><USER23> One of the performance details noted in the last update's release notes was that RegEx library specifically used by the syntax highlighting engine was a native dependency on desktop and a slightly slower WASM dependency on the web, and they improved the WASM bindings enough specifically for the syntax highlighter that now all platforms are using the custom WASM build.

Performance details in the release notes are really interesting to follow.

<comment><USER22> can you please give a link to the PR? I cant find it

<comment><USER23> [https://code.visualstudio.com/updates/v1_45#_faster- syntax-h...](https://code.visualstudio.com/updates/v1_45#_faster-syntax- highlighting)

[https://github.com/microsoft/vscode/pull/95958](https://github.com/microsoft/vscode/pull/95958)

<comment><USER22> Thanks a tonne!!

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> This is so cool! I would love to see what kinds of people have used it for and built with this within VSCode.

</comment><comment><USER25> That looks quite interesting. Can it detected embedded diagrams in PNG? I usually just save the PNG files, so I don't have to separately store the XML file.

Also just learned that Draw.io is migrating to Diagrams.net: [https://www.diagrams.net/blog/move-diagrams- net](https://www.diagrams.net/blog/move-diagrams-net)

<comment><USER26> That's a planned feature!

</comment></comment><comment><USER27> Wow I didn't know about draw.io. That thing in itself is amazing.

</comment><comment><USER28> This reminds me a bit of artists-mode in Emacs, though this has much nicer graphics.

</comment><comment><USER29> Now if we could get this for Monodraw I would pay money for that

[https://monodraw.helftone.com](https://monodraw.helftone.com)

</comment><comment><USER30> Wow, nice! I've been using draw.io for a number of years now. It keeps getting better.

And this is frankly, amazing!

Question to author(s) - how can I support your development of draw.io?

<comment><USER12> In term of the core development team, we build and maintain the Confluence integrations commercially and those sales are around $10M this year.

If you wish to donate, maybe the author of this integration, Henning, has a route for that.

<comment><USER26> I would feel pretty bad accepting donations for this integration - compared to my other extensions, this one wasn't much work at all, thanks to the awesome embed mode of Draw.io!

</comment></comment></comment><comment><USER31> Is there a good list of web based tools that let you load/save locally or via cloud storage like draw.io does? diagrams.net is so cool!

</comment><comment><USER32> VS Code is the new browser. Are there any extension for open a URL in a tab? A browser in a app in a browser!

<comment><USER33> Yes, and it's pretty great.

[https://marketplace.visualstudio.com/items?itemName=auchenbe...](https://marketplace.visualstudio.com/items?itemName=auchenberg.vscode- browser-preview)

</comment></comment><comment><USER34> wow, it's great. I'm using plantuml, but I will try this when looking for more flexibility.

<comment><USER15> I could see both working well when depending on the situation and audience. In my role I'm seeing a need for plain diagrams that need to be kept up-to-date and a "pretty" diagram for showing the bosses for 30 seconds in presentations.

</comment></comment><comment><USER35> Isn't this just opening the drawio editor in vscode? What's the point? (genuine question)

<comment><USER36> 1\. It uses the offline version, running locally.

2\. The files are saved on my filesystem, which would be more of a hassle to keep in sync if I used the online version.

3\. It slightly lowers the friction for me to work on a diagram, which completely changes how often I instinctively reach for a tool.

<comment><USER35> AFAIK you can do this with the official offline version too.

What's the point of embedding it in vscode especially?

<comment><USER37> See point 3.

</comment></comment></comment></comment><comment><USER38> Looks cool. However I've created a .drawio file after installing (and reloading) and I do not see any diagram editor. It's just a blank space. Is there anything else I need to do? I installed via VSCode extension marketplace.

<comment><USER26> Can you file a bug report on github [1]? That would be awesome! Please mention your OS and your VS Code version. You should not do more than what you did and it's working for me.

[1] [https://github.com/hediet/vscode- drawio/issues](https://github.com/hediet/vscode-drawio/issues)

<comment><USER38> Sorry, I'd rather not, since this is my alt and don't want to dox myself.

But I think I figured why: I installed it during remote development, and it does not appear to work on the remote host. After installing it locally, it works (for local files only, though).

Is it a known issue that it does not work as a remote extension? I do all my development remotely so it would be nice if that worked.

EDIT: Just saw [https://github.com/hediet/vscode- drawio/issues/8](https://github.com/hediet/vscode-drawio/issues/8) \-- disabling offline mode does indeed make it work in remote development. Awesome! :) (Would be cool if you could somehow integrate File -> Export so that it could export directly to a file on the remote host)

</comment></comment></comment><comment><USER39> I sleep and dream when VS Code turns into Emacs.

</comment><comment><USER40> this could be really cool if it can tie directly into your ORMs like TypeORM. does anyone know if something like it even exist?

</comment><comment><USER41> How can I open my already existing draw.io XML files using this extension?

Neat project.

<comment><USER26> Should work out of the box. You just need to rename them to *.drawio :D

</comment></comment><comment><USER42> Why did they rename draw.io to diagrams.net?

<comment><USER43> Security reasons apparently. This is news to me too.

[https://www.diagrams.net/blog/move-diagrams- net](https://www.diagrams.net/blog/move-diagrams-net)

</comment></comment><comment><USER44> now, do one for excalidraw.com

</comment><comment><USER21> This is crazy awesome!</comment>


Is there any chance to have sublime shortcuts at OS level? - aug-riedinger http://superuser.com/questions/865928/sublime-shortcuts-at-os-level

<comment><AUTHOR> Why don't you use sublime while "editing somewhere else"?</comment>


In Greece, Property Is Debt - <AUTHOR> http://mobile.nytimes.com/2016/11/02/opinion/in-greece-property-is-debt.html <comment><USER2> > "We have entered a new era," said Poppy Kakaidi, a lawyer. "Whereas parents > wanted to leave their children with a roof over their heads, now the > children themselves say, 'I don't want this burden.'" She has several > clients who have turned down inheritances, mostly to avoid the deceased's > debts.

So, it's not property that is debt. Inheritance from parents comes tied with debts. Young people are walking away from debts, not property. The article title is sensationalized.</comment>


Ask HN: Outdoor jobs for geeks? - <AUTHOR> Are there any outdoor jobs that cater to the geek mind? The only thing I could think of is maybe naturalist (running around collecting and cataloging biological entities)?<p>It seems difficult to code while walking outside. Perhaps one could shift ones career in such a way that at least it involves long talks full of philosophical discussions (thinking for example about Ray Kurzweil). <comment><USER2> Land surveying. Includes knowledge of civil engineering, trigonometry, cartography, hydrography, geology, law (boundary), and forestry.

<http://www.surveyingcareer.com/>

P.S. We need your help!

</comment><comment><USER3> Computer Programmer.

Look, there aren't that many careers that will pay you $100+/hr on a short- term contract. Take one of those for six months, then go hike the Pacific Crest Trail. Then ride your bike to Florida.

That's a full year plan, half of which is spent outdoors, at the end of which you'll still be about $50k ahead of where you would have been if you'd taken a job planting trees for the forest service.

We really do have it better than just about everybody else. Do yourself a favor and take advantage of it!

</comment><comment><USER4> I've long been a fan of going out into the woods with minimal tools (decent belt knife, axe, tarp, blanket, billy can and a box of matches) - you'd be surprised at the hack value you can find out there. Finding the most elegant way to turn a couple of bits of tree into a chair can be far more rewarding than a few hours spent twiddling your .emacs file, I can tell you!

Sadly, it's not immediately apparent how to turn any of this into a paying 'career' - unless your name's Ray Mears, of course, or you're prepared to do it full-time and become a hermit (tempting, sometimes, I know...).

One of my ideal visions for an outdoors-ish job would be making and installing energy producing wind-turbines from scrap, which is something I've been interested in for a good while now. You'd likely never get rich doing it but there's an increasing market for off-grid energy that may soon be enough to support a person.

</comment><comment><USER5> I was a Cave Specialist/Physical Science Tech for the National Park Service for several years. I built GIS models, led cave surveys, mapped surface hydrology, and hiked up high ridges at night with night vision gear and a computer to ID bat echolocation calls. I could spend a day skiing to a backcountry air resource station to measure ambient air quality or stay in the office and draft a map. It was a perfect mix of outdoors and geek.

You can find jobs like that at <http://www.usajobs.gov/>.

</comment><comment><USER6> I've found that hacking on my house provides a lot of needed physical labor/activity.

I do things like improve the lighting in my garage so I can work on various projects out there. I'm also thinking about taking up gardening.

I too have really felt the urge to get up and do real physical stuff lately. I wonder if it's part of the disillusionment of web 2.0. So much bad news about the economy,etc that I don't feel that working on the "next big website" is really going to pay off.

</comment><comment><USER7> Field engineer for a cellphone/mobile broadband company. You'll need to travel around to mast sites and customer sites to do QA, troubleshooting, test signal strength and do basic IP networking stuff.

You need a head for heights.

<comment><USER8> <http://tx.mb21.co.uk/gallery/winterhill/winter-hill10.php>

This isn't far from where I live - I'd quite like to get into the engineering and particularly transmission side of radio (currently in programming although I have an amateur radio licence) but I don't fancy working 1,000 feet above the ground in a little cage... (look at the pics, they are stunning!)

</comment></comment><comment><USER9> Underwater robots. <http://www.bluefinrobotics.com>

Have to love tech and boats.

<comment><USER10> Sea/water stuff... that's a good point. There's probably a fair amount of variety there - marine biology, oil surveying, stuff like that. I guess it's not so attractive for those of us who love the hills and forests, but it's not a bad idea at all.

</comment></comment><comment><USER10> Interesting question. I love being outdoors, and find that it's necessary to get a fair amount of exercise to be physically and mentally healthy. Perhaps it's best not to combine that with work, though...

My grandfather worked as a forest ranger, and he seemed happy enough, although I'm not sure it was much of a geeky occupation (although he did know the common and latin names of a large variety of flora and fauna). My other grandfather, OTOH, worked on the instrumentation of early jet planes. Definitely geeky:-)

<comment><AUTHOR> At least if your job depends on being physically fit, it seems rather risky. Could be that one would be more likely to keep working even if slightly ill, putting long term health at risk. Also, of course there would be a higher risk in general to be incapable of continuing to work due to health reasons (as more parts of the body would be involved in the work).

</comment></comment><comment><USER11> I think farmers are the original hackers.

<comment><USER12> before that fire and then wheel - all hacked.

<comment><USER11> Farmers are forced to continually find new hacks. The labor is so intensive that every little innovation adds up.

<comment><USER13> That reminds me of a cheese farm I worked on in France. The farmer had slowly hacked together his cheese making equipment from an assortment of other food processing machinery. It ended up saving him something like 10k euro over a commercially produced device.

My favorite hack of his was out of necessity. He started getting shoulder problems from stirring milk for hours every day, so he found an old motor and attached it to the top of his vessel with a large paddle and voila no more shoulder problems.

<comment><USER14> The fact that this is considered a "clever hack" as opposed to "duh, totally obvious" befuddles me.

Who in hell would actually spend hours stirring milk for hours a day?

Saying that this is a clever hack is like saying "I know a guy who heats his water for a shower using a hot water heater, instead of jumping into cold water and thrashing his arms around for four hours - what a genius!"

</comment></comment></comment></comment></comment><comment><USER15> Travel writer. Lots of hackers are also good writers. It can involve a lot of research into the history and culture of different places.

OK, maybe I'm just using my dream job :)

</comment><comment><USER16> You could get involved in GeekCorps : <http://www.geekcorps.org/>

<comment><USER17> The "Get Involed" link brings up a lightbox but doesn't load anything. Is this organization still active, and have you been involved in it?

<comment><USER16> I don't know whether geekcorps is still active, however, you should be more lucky with the Lion's Club International, which organizes similar projects : <http://www.lionsclubs.org/>

</comment></comment></comment><comment><USER18> Photography is a good geeky job that involves a lot of outside work. Photography is actually a very technical art these days, which also is strongly related to the artistic expression of the photographer.

I have recently taken up photography as a technical but low-stress pastime. It appeals to my programmer-brain and my under-utilized artistic appeal at the same time. It is also a great excuse to go to interesting place. As a bonus, part of learning photography is learning interesting things about cognition, vision and light. All cool stuff.

Photography listens to "intent" and "execution" nearly as much as programming, which makes it very appealing to me. It's remarkable to me how two very similar pictures at identical venues can convey very different feelings, based off intent and execution.

</comment><comment><USER19> I am going to try to program while outside.

<comment><USER20> I do a little of this, using a Dell D630 ATG (reasonable review: <http://www.ruggedpcreview.com/3_notebooks_dell_ATG630.html>) to supply screen visibility in full sunlight.

Programming while out of doors may not be as satisfying as you might think. One is still very sedentary for very long periods: hot weather feels hotter, cold weather much colder, and buzzing insects more annoying. You may miss having a whiteboard or your printed-matter library handy. Also, outdoor furniture typically makes a terrible substitute for proper office furniture.

On the plus side, eye strain is less of a problem given the built-in eye relief of long focus outdoor viewing. And trees and birds make very pleasant office companions who will always respect your privacy.

Ultimately, I find the out of doors better for reading (email, tech papers, the occasional HN link) or reviewing code than actually programming.

<comment><USER19> That is more than a reasonable review- they had a conference call with Dell about the screen!

Thanks for the thoughts. Ideally I would find a tablet with a great outdoor screen. This makes sense if reading is the preferred outdoor activity.

</comment></comment></comment><comment><USER21> Do you mean jobs that don't involve computers and are outside? Many geeky jobs will probably involve some sort of writing utensils, how is it different from computer?

I work as a software development freelancer and often work outside with a laptop or just pencil and piece of paper.

<comment><AUTHOR> I don't have anything against computers, but it seems using them to code usually involves being sedentary. Sometimes I feel kind of imprisoned and think I should be moving about more.

Maybe it is only about balance, so a job that involves lot's of field work (eg for data collection) and some "home" work (data processing) might be good.

</comment></comment><comment><USER22> Here is one kind of outdoor geek activity: <http://mcsquaredholdings.com/Pictures.htm>

</comment><comment><USER23> Construction management

</comment><comment><USER24> A data point: An old friend burned out after a decade of being a consultant with a long commute. Now he has worked a few summers as a gardener.

He is in shape, tanned and happy, so I have given up trying to make him go back to computers. ("Join the dark side... we can drink coffee throughout the day!")

Personally, after doing a commute like his for just half a year, I took the first job I could find, moved 800 km and happily bicycle to work.

Well, this summer I'd prefer gardening even if it rains; I'll have to do Java the coming months.

<comment><AUTHOR> Come to think of it, that is kind of what the hero in Office Space did - except he chose construction work instead of gardening.

Still, gardening or construction seems too limited to me. I want to change the world (not only my backyard, although technically it is a part of the world).

<comment><USER24> How about THIS, then? I've promised myself that if I ever get rich enough, I'll live for years on diving boats. Between dives to the coral reefs, I'd write open source.

(My dream also includes hiring a cook from somewhere with really spicy food.)

Maybe you could get a telecommute job and do that, without too high a cost. (Boats aren't cheap, but if you stay at coral reefs in Asia, it might be OK.)

<comment><USER25> In the meantime, you could try IT on a cruise ship.

<comment><USER24> We were discussing living outdoors -- and still get intellectual stimulus. (Preferably without people shooting at you, I assume.)

I don't know the subject, but a cruise ship seems like a more expensive variant of eating all meals at restaurants and going on a weekend trip every week? :-)

<comment><USER26> If you work for the cruise line, however, you get to live and eat on the boat for free.

Salaries are kind of low, but that is only because they know the perks (room/board/travel) make up for it.

</comment></comment></comment></comment></comment></comment><comment><USER27> Astronaut!! Does extra-vehicular activity count as outdoors activity? ;-)</comment>


Starting up - These tools will help you - <AUTHOR> http://microreviews.org/starting-up-these-tools-will-help-you/ <comment><USER2> Google Code is useful too.

<comment><AUTHOR> But Unfuddle is much more flexible.</comment></comment>


Ask HN: How do you succinctly describe Meteor to the uninitiated or non-hacker? - <AUTHOR>

<comment><USER2> I've tried doing this several times myself recently.

Basically, I start out saying that it is frontend, backend and database (i.e. both what you see on your computer and what is going on at "the server" as well as the database), that it is all written in JavaScript (of course many people confuse JavaScript with Java so this can sidetrack a bit), and that it is realtime (i.e. if I update something on my computer and you go to the same site, you can see that update right away.)

Also, I might state that it is cool how you can easily deploy a test site (via the 'meteor deploy' command) and that I have found it to be one of the easiest ways to get a location-based program working thanks to the previously- mentioned easy deployment and its integration with MongoDB which offers spatial indexing.

Alternatively, you can look at how Meteor explains it themselves: [http://www.meteor.com/](http://www.meteor.com/)

<comment><AUTHOR> I wish there was an X for Y analogy or a ___ for ___ that would resonate.

I always use their marketing speak: "A better way to build apps" but of course that's difficult to back up with brevity and clarity. I find myself going through bullet point features, as it sounds like you do to.</comment></comment>


Lisp implementation in sed - <AUTHOR> https://github.com/shinh/sedlisp <comment><USER2> When the Lisp in Make post hit the front page of HN earlier today, I was astonished. This has _topped_ that experience of WTF/disbelief, which I thought previously impossible :D

<comment><USER3> Related:

# FORTH in Bash

\- More info: [https://en.wikipedia.org/wiki/Bashforth](https://en.wikipedia.org/wiki/Bashforth)

\- The script: [http://web.archive.org/web/20141107021446/http://www.forthfr...](http://web.archive.org/web/20141107021446/http://www.forthfreak.net/bashforth)

\- The extension WP mentions: [https://raw.githubusercontent.com/ForthHub/ForthFreak/master...](https://raw.githubusercontent.com/ForthHub/ForthFreak/master/SmallOOPS)

\- A screenshot: [http://web.archive.org/web/20141106213840/http://www.forthfr...](http://web.archive.org/web/20141106213840/http://www.forthfreak.net/index.cgi?BashForth)

# Tetris in Sed (by a russian girl)

\- Info (in Russian): [http://uuner.livejournal.com/55238.html](http://uuner.livejournal.com/55238.html)

\- Working downloads: [https://github.com/uuner/sedtris](https://github.com/uuner/sedtris)

# Arkanoid and Sokoban written in sed

\- [http://aurelio.net/projects/sedarkanoid/](http://aurelio.net/projects/sedarkanoid/)

\- [http://aurelio.net/projects/sedsokoban/](http://aurelio.net/projects/sedsokoban/)

# Sed LLVM emitter

\- TBD

</comment></comment><comment><USER4> To quote that well known sage (Sinbad) ...

"Well ... Sounds like you need a woman!"

(kidding, of course :-D)

<comment><USER5> There's always this classic with the same sentiment: [http://cryptnet.net/mirrors/texts/kissedagirl.html](http://cryptnet.net/mirrors/texts/kissedagirl.html)

</comment></comment><comment><USER6> I've always loved the license for awklisp – see the bottom half of the README:

[https://github.com/darius/awklisp](https://github.com/darius/awklisp)

</comment><comment><USER7> I should look at making a Racket Language for a never going to happen but SED replacement. Limited to just data munging.

<comment><USER8> A place to start:

        http://docs.racket-lang.org/mzlib/mzlib_awk.html?q=awk

"AWK" in Racket.

<comment><USER7> Now that is awesome thank you! The more I have been looking into this the more I see how Racket could be the best tool for data munging.

</comment></comment></comment><comment><USER9> Lisp in sed? There are two things wrong with that ;)

</comment><comment><USER10> I am dreaming of a Lisp implemented in m4.

<comment><USER11> I am dreaming of a JavaScript implemented in sed, which itself implements Lisp.

</comment></comment><comment><USER12> What's the motivation? Just an academic exercise?

</comment><comment><USER13> GNU sed only.</comment>


Ask HN:  How can you be rational and still believe in free will? - <AUTHOR> There is no scientific evidence for free will.  It may just be an illusion.
Moreover, there's scientific evidence against it: http://www.scientificamerican.com/article.cfm?id=unconscious-decisions
How do you reconcile your rationality and a belief in free will? <comment><USER3> I remember beating myself over this idea in college, that there is no such thing as free will. I came to believe it. Then I realized something that was even more important: it does not matter if it is true. This is not a form of enlightenment that actually helps me or anyone.

Really, work through it. Congratulations: you discovered that everything you think and do is preordained by the first energy patterns of the universe. Now what? Do you second-guess your decisions? Isn't your second-guessing also preordained? Isn't your so-called enlightenment also just a part of the system? What does this knowledge really do for you?

Note that your quoted article does not oppose free will (unless you buy into the sensationalism). It points to the idea that a part of your brain figures out your next action before you are fully conscious of that decision. This does not invalidate free will; it just shows that you make decisions from multiple levels of your brain. You do not want too much decision-making power, like when your heart should next beat.

So, accepting that it is useless to believe in lack of free will, what happens if you decide to place your faith in having or acquiring free will? This opposite philosophy flows hand-in-hand with the idea of personal responsibility, the idea that you may actually be to blame for your own misfortunes and fortunes. There is a certain liberty in realizing that you have the power of Choice, that you can simply choose to leave these perceived/accepted traps and social constructs.

In other words, it would be irrational to not operate on the assumption that you have free will.

tl;dr - This philosophy does not help anyone. The opposite helps a great deal. Most people fall in the middle.

<comment><AUTHOR> _In other words, it would be irrational to not operate on the assumption that you have free will._

Religious people might say something similar about God's existence.

<comment><USER4> This is very different from Paschal's wager.

Paschal's wager presents a false dichotomy: either you believe in no god, or you believe in the christian God.

There are a plethora of religions to choose from, and it is also possible that there is a very strange god who puts all athiests in heaven and all believers in hell. Therefore Paschal's wager breaks down.

However, we have a true binary split here when talking about free will.

If there is no free will then from a pragmatic point of view all philosophy is pointless, since it can't effect your decisions.

</comment></comment></comment><comment><USER5> Both "rationality" and "free will" are vague terms. Your line of questioning won't get you anywhere beyond linguistic/logic side-effects.

<comment> loup-vaillant "Free will" may be. But "rationality" can be given a clear, concise definition that most of us will agree upon in our context. Here, amichail probably talks about epistemic rationality: the art of obtaining beliefs that correspond to reality as closely as possible.

Source: <http://lesswrong.com/lw/31/what_do_we_mean_by_rationality/>

Now, the question of free will itself has been discussed. here: <http://wiki.lesswrong.com/wiki/Free_will> and there: <http://wiki.lesswrong.com/wiki/Free_will_%28solution%29> are probably very good start points.

I haven't read these pages yet, but from what I have already read on <http://lesswrong.com> (which is quite a lot) is of outstanding quality.

</comment></comment><comment><USER6> This is a Pascal's Wager question.

If there is no free will, I have no choice over whether to believe in free will or not.

If free will does exist and I believe in it, I am correct to do so.

<comment><USER5> Exactly what I mean with linguistic/logic side-effects.

</comment></comment><comment><USER7> I have yet to hear a definition of free will that isn't circular. I am not convinced the term means anything.

<comment><USER8> This. Let's say you had free will. In most definitions, this means you can do what you want, without being forced by anything. But are you really free in your choices? You still can not decide against anything you want. Your mind (or soul, or whatever) will decide what you want to do, and then do that. You may be in the mood to deliberately choose something that is bad for you, but again, this is influenced by your mood. This is actually something I often hear as a reason for free will: If we did not have it, we would never do something that is against our interests. But this will only work if you assume a mind that is both very simple (always trying to choose the best) and extremely smart (so that it can differentiate between bad and good decisions). There is no reason to think that we are like that.

</comment></comment><comment><USER9> That scientific american article always pissed me off. Just because my brain may know what decision I'm going to make before I'm conscious of it, doesn't mean that I didn't make the decision. It is still my brain.

The whole thing reeks of nihilism.

In the words of the great Walter Sobchak: "Nihilists! Fuck me. I mean, say what you like about the tenets of National Socialism, Dude, at least it's an ethos."

</comment><comment><USER10> predictability doesn't necessarily preclude free will. free will doesn't imply randomness.

<comment><AUTHOR> There is no scientific evidence for free will. So why believe in it?

<comment><USER10> what defines free will, and what scientific evidence would sufficiently prove your definition of free will?

<comment><AUTHOR> One can ask something similar about proving the existence of God.

Why should you not believe in God on faith but believe in free will on faith?

<comment><USER10> sigh. i was really hoping you were trying to take this in another direction.

free will is an objectively observable phenomenon, and the burden of proof is on disproving existence or providing an alternate explanation for the observable. we might not be able to show the mechanisms for why it exists, but we can show that it exists.

god is not objectively observable, and so the burden of proof is on proving existence.

<comment><USER3> > free will is an objectively observable phenomenon

Not true. To observe free will, you must have a really big picture view. You must have enough information at hand to be absolutely confident that the action was not a direct result of all prior experiences of the actor. Until you have that kind of measurement, free will is a matter of faith.

> god is not objectively observable

That is a very human-centric view, and it would behoove any rational thinker to look beyond their own limitations. Again, it is all about having an appropriate instrument to observe Him.

But you may have a point about who owns the burden of proof. (I will not argue either way on who owns it, and whether we should prove or disprove.)

Edit: Sorry, my definition of "objectively" is skewed. Both free will and God can be objectively observed. You just have to have the right instruments, enough information.

<comment><USER10> > To observe free will, you must have a really big picture view.

why? can you justify this statement?

beyond that, that is not how the scientific method works. you make conclusions on observable data, and if more data becomes accessible, you reconsider conclusions. you can't dismiss conclusions you disagree with by simply saying "you don't have enough data yet to justify my conclusion".

> Again, it is all about having an appropriate instrument to observe Him.

could you elaborate on an appropriate instrument to appropriately observe and identify him in a way that is reproducible for others to also observe objectively?

<comment><USER3> > why? can you justify this statement?

Yes. Based on your next sentence, I think I see where the misunderstanding lies.

You state that the scientific method is about making conclusions on observable data and then discarding them when new data arrives. This is incomplete. Good scientific experiments depend on variables under your control. In layman's terms, you must be in control of everything, know what is going on, and test the specific thing, the one variable you are not controlling. And there are varying degrees of variables involved in the scientific method, along with their complexities.

Now, just in case we already agree and that your statement assumed all that, then I would find fault with the theory that you have sufficient "observable data". That is the entire problem. We already know what you are missing. You need the entire set of experiences that someone has stored in their brain. You need to know the state of the body as well, so that you can identify additional influences (such as a headache, making for hastier decisions based on more recent experiences). You need instruments that can provide you this data, and then you can run your statistics and learn something.

And, of course, you need to have an understanding of the influences of the various experiences and body issues; so you have many studies to run before you get to tackle the issue of free will. Fortunately, we have a LOT of these studies already (and a lot more to do). See psychology, etc.

> could you elaborate on an appropriate instrument to appropriately observe > and identify him in a way that is reproducible for others to also observe > objectively?

I am in full agreement with your criteria. Maybe one day we will have the technology to do this. Right now, I cannot imagine what the instrument is. I would propose that another god could observe God, or the context of the universe around God could be used in some fashion or produce an instrument to observe God. Maybe in God's metauniverse, there are entities analogous to our rocks, plants, and so forth that could be used to observe His passing.

Taking another approach, this might be akin to gut bacteria trying to prove the existence of Earth. If existence as we know it is an extension of God, how can we identify God? (Trying to avoid the obvious circular argument.)

Anyway, this is all freshman philosophy stuff. Good fodder for coffee talk. Suffice it to say that when we are talking science, we are indeed talking about using tools that "appropriately observe and identify him in a way that is reproducible for others to also observe objectively". Just because we do not have those tools does not invalidate truths about our universe. We did not have a yardstick until the 10th century. We have come a long way since then, and we have a long way to go.

<comment><USER10> > ... then I would find fault with the theory that you have sufficient > "observable data". That is the entire problem.

i agree, and i think then it comes down to each of our own personal opinions, unless you have some hard facts to provide (i surely don't, as you say, this is basically coffee talk for me, here).

sub-question: what do you feel like is the alternative to free will? predestination? do you feel that by disproving free will, it will lead to greater empirical evidence of god or gods (a la "god's plan")? or that proving free will somehow reduces the odds of the existence of god or gods?

<comment><USER3> > what do you feel like is the alternative to free will? predestination?

I would propose that the alternative is manipulation, and the most extreme form of manipulation is predestination. Less extreme forms are environmental manipulation, our bacterial collective, and so forth.

Was it predestined by God or by some initial atomic movement or potential energy? We do not have evidence either way, but it is fair to point out the possibilities. I have my personal belief, which is compatible with both and leaves space for the truth. I see the topic of free will orthogonal to the topic of gods.

We have to be careful here; there are religious beliefs that we humans were granted free will by God. Within that context, if we learn conclusively that free will does not exist, then there was no gift, and it is a blow towards God, although not necessarily disproving God. After all, if we are capable of deceit, isn't it possible that God is also capable of deceit? So what we think we understand from Him might only be what He wants us to see. We also may not be capable of understanding His reasons. In the same vein, HE may simply be a purely creative force with no reasoning other than to make a bunch of stuff and let what sticks stick.

So I think we can erode belief systems -- and our minds are generally frail enough to sway -- but it will be pretty difficult to disprove a god. On the other hand, opportunity may arise where a god can be proven. Perhaps He did reveal himself (several times), and time gave us an easy excuse to forget and deny, to beg for fresh evidence. Today, what could God possibly do that we cannot do that would conclusively prove His existence? And why should He bother?

<comment><USER10> so, it seems to me that we have different viewpoints. i would say that you have free will until it is completely gone. if you're being manipulated, you have free will but are being externally influenced, and you only have no free will when you are completely predestined.

looks to me like you are the opposite, that you only have free will if you are completely influence-free.

thoughts?

<comment><USER3> Hm. I think we are mostly the same. I would say that you have free will if, after you have removed all possible influences, you are still able to choose. Many things in life reduce your choices, but reduced choices are still choices. We often have choices we ignore or neglect, too.

When I mentioned the manipulation, I meant that it was to be complete manipulation, whatever the source(s). My point was to differentiate it from predestiny, where the manipulator is a fundamental force (God or the movement of the structure of the universe).

<comment><USER10> you don't think that manipulation on the level of being able to fully remove free will would have to originate from a fundamental force?

<comment><USER3> I can make my computer output the number 42, and we can argue that there is a force behind me that resulted in that program to output 42 (as well as in Scott Adams's choice of the number and my inevitable reading of his books, etc etc). But it is easier to identify that I manipulated my computer to output 42.

Similarly, our environment may be affected by any number of forces, and we may be entirely pattern-matching, reacting machines who learned how to react from experiences in our environment.

<comment><USER10> humans are sentient, though. yes, we have DNA that points us in a certain direction, our environment and upbringing point us in a certain direction, but this doesn't necessarily predetermine our outcomes. some people are a product of these things, and others break out of the proverbial mold.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> 'Freedom evolves' by Daniel Dennett deals with this. [http://www.amazon.com/Freedom-Evolves-Daniel-C- Dennett/dp/01...](http://www.amazon.com/Freedom-Evolves-Daniel-C- Dennett/dp/0142003840/)

Our future may be fixed, but our nature is not. We don't have a 'God's eye view' that sees all our past and future laid out before us. From our perspectives conditions change and we change to adapt to them to the extent possible.

It seems to me the confusion mainly arises if you consider your mind as being not subject to nature's laws...

</comment><comment><USER12> I've always thought that our conception of "free will" is flawed. In the case of the article you list, I don't see that as evidence against free will. There's no homunculus in your subconscious making decisions for you that you don't have access to. It's all your brain and its functions making decisions. Just because we've labelled the very top of the iceberg free will or consciousness doesn't mean that the rest of the iceberg under the water isn't connected.

There are a lot of studies about things like, for example, people saying they like someone more if the subject is exposed to warmth than if they're exposed to cold. Your brain still made that determination using all your experiences and patterns from your life, nothing "fooled" you or overrode your choice. We need to re-conceptualize our ideas of free will to include our whole brain, not just the magical separate part we've previously called our consciousness.

In the same vein, it's looking a lot like we're going to have to figure out how to fit "partly sentient" animals into our model of free will and consciousness as well. There are too many animals exhibiting behaviors we previously thought of as human only. I think both of these things will be big revolutions in thinking in the coming years.

</comment><comment><USER13> I am struggling with your definition of free will, here. I read that stub four times, and I fail to see how preconscious brain activity proves or denies the existence of rational, conscious decisions over choices? There's not enough detail in the article to explain what "preconscious activity" means in this case. Since nurture heavily influences all decision making, some part of the rational, conscious process of choice must consult memory (experience). Perhaps that's the preconscious activity? You don't think, "This time I will stand still while the bear runs towards me." The consequences of free will can't negate our survival as a species. That'd be dumb. So there has to be some sort of middle ground.

I read something years ago that stuck with me. Let me make it clear that my own beliefs on the existence of a sentient creator cannot be proven or denied. He wrote, "God could have made us just like himself. But he did not. Instead he made us imperfect and gave us free will." There's a lot implied about our purpose in that statement. There will be no unified theory that does not take into account why we so badly want a unified theory.

</comment><comment><USER14> The belief in "free will" in a strict sense indeed strikes me an irrational and unscientific, since it seems to imply "freedom from cause" - free will can cause things, and nothing causes free will, since if something would cause free will, it wouldn't be free, but bound to that other, external thing. And since Science takes the view that there must be a cause for everything, the assumption of free will does not seem to be in tune with it.

However, even without the presence of "free will" in a strict sense, there can be _freedom of action_ , in the sense of freedom from external and internal constrains, freedom from coercion and from compulsion. It means that I am able to recognize all my options in a situation and may freely chose between them. This easily acknowledges that my situation, my options and my choices all have causes (are not "free" in a strict sense), but still gives me the ability to change my world, by deliberately chosing the actions I prefer to take from the spectrum of those available under my current constrains. It also means that others can hold me responsible for the results of my actions.

</comment><comment><USER15> I view the debate over free will as missing the point about context. Context is everything.

An analogy would be rolling a dice with your hand onto a table. Is this random? A physicist could say, "no", how you roll it, what the speed it's going, how hard the table is, etc, etc, determine exactly what number will come up. But we don't know all that. To the context of our experience, that dice roll _is_ random.

Similarly, everything we think or do is predetermined by the current state of the universe and our own nature, but to us, we are making choices. In the context of our human experience, we do have free will. Just like it could be theoretically possible to predict the dice roll, it is theoretically possible to predict any persons future action. But we don't have access to that information, so for us, that information, and thus the determination of the future might as well not exist.

</comment><comment><USER16>
      Moreover, there's scientific evidence against it [..]

No, there isn't. All the interpretations of the results of the experiments since Libet make one crucial unsupported assumption: that rationality and free will must always be exercised by the conscious mind.

This assumption is unwarranted and a gross underestimation of the importance and abilities of our subconsciousness. There is no reason to suppose that your subconscious mind can't make a score of rational, and free, decisions, upon which your conscious mind gets to reflect only some time later. The fact that your mind came upon a conclusion in a subconscious manner does not mean it is irrational or 'unfree': it just means you didn't get the time to reflect on it, before it was acted upon.

</comment><comment><USER17> There was a science story published today on technologyreview.com that reported on a team that purported to essentially prove that quantum entanglement proves free will.

<http://www.technologyreview.com/blog/arxiv/25665/>

<comment><USER18> Neurons are way too big to be entangled (pun intended!) with quantum physics. They act in a deterministic way. The only thing I could gleam from that article is that atoms might have "free will". To that I say: So what?

</comment></comment><comment><USER19> 1\. The idea that we are capable of freely deciding between alternatives seems to be built into our psyches. Absent _compelling_ evidence to the contrary, it is rational to believe this intuition.

2\. While there may indeed be scientific evidence against free will, the article that you linked doesn't seem to provide it. Just because decisions happen at a preconscious level doesn't mean that the decision was unfree. For instance, if I'm playing a very intense video game, I tend to make split- second decisions with no conscious decision making. That doesn't mean I didn't choose what to do in the game. It just means that discursive thought isn't essential to free choice.

3\. If you're religious, then you could consider God a sort of "guarantor" of free will.

</comment><comment><USER20> Have you read the following article? <http://www.technologyreview.com/blog/arxiv/25665/?ref=rss> It (partly) fills in the other half of the free will theorem by Conway and Kochen ( <http://en.wikipedia.org/wiki/Free_will_theorem> ) which states that if we have free will, then so must elementary particles.

It's an interesting way of looking at the problem. And I think I can say conclusively that we really have no idea whether or not elementary particles can have free will. However we do know that they don't function purely deterministically/probabalistically or randomly.

</comment><comment><USER21> Daniel Wegner's book, "The Illusion of Conscious Will" discusses the existence of free will, (not so much whether belief in it is rational):

[http://books.google.com/books?id=eQnlRg56piQC&printsec=f...](http://books.google.com/books?id=eQnlRg56piQC&printsec=frontcover&dq=wegner+%22free+will%22&source=bl&ots=ZWwqItY8L1&sig=6z40tqbViqrf- em9f4QI8BHX_x0&hl=en&ei=YDF1TKWkHI3AsAPU95yhDQ&sa=X&oi=book_result&ct=result&resnum=9&ved=0CD4Q6AEwCA#v=onepage&q=wegner%20%22free%20will%22&f=false)

</comment><comment><USER22> It depends how you define free will. What would scientific evidence of free will even look like?

I do what I want, so that's all I care about. I may be part of a deterministic system, but that's what defines my will.

</comment><comment><USER23> What do you mean by free will? Was it a meaningful question in the first place?

<http://wiki.lesswrong.com/wiki/Free_will>

</comment><comment><USER24> This is a hot topic in modern (in the philosophical sense of modern, not necessarily contemporary) philosophy - the debate over what some will call "compatabilism." IMHO, the rationality of free will hinges on the definition of freedom. There is the freedom of not being a rock, and then the freedom of dreams. There is free like free beer, free like free speech, and free like the opposite of slave. Some are rational and some are, by definition, not.

</comment><comment><USER25> Here's my take on it:

-You experience events.

-You seem to have control over some events, and other events seem to be outside of your control.

-The process that determines this feeling of control is chemical, and has nothing to do with whether or not you actually do have any control.

In other words, even though control is entirely an illusion, it is the illusion that defines our existence. Understanding it is NOT useless - <USER2> people who you would describe as "assholes" are just people with control issues.

</comment><comment><USER26> After reading the article... in a scenario where subjects have a single task (push a button) and no time limit, then unconscious trumps conscious thought. I don't see how the unconscious could have much affect over rapid-fire decisions involving extrinsic stimulation that could not have been predetermined. Life is much more the latter of the two experiences so I don't really get this as scientific evidence against free will.

</comment><comment><USER27> I say this every time this topic comes up, which seems to be often, so I'm sorry to sound like a broken record, but y'all need to read 'Freedom Evolves' by Dan Dennett, followed up by his longer more important work, 'Consciousness Explained.'

You might not agree with his conclusions, as they're fairly radical, but it answers the question of the original post.

<comment><USER26> Since you've read both books would you mind just summing up the jist of it.

<comment><USER27> Yes, the gist of both books is "There is no mysterious stuff out there, we don't need God or even physics to explain the mind, it's all just computation happening in your brain. Both consciousness and free will are ways of describing some of the stuff that your brain does."

He's essentially a Functionalist. But he makes his arguments convincing. The convincing-ness cannot be summed up more briefly than he does in his books.

</comment></comment></comment><comment><USER28> Everything has already been done, except your life. Free will is not "instead of" determinism... It is that "despite everything already being done" something else... Now, me.

The real beauty is to turn that around and give your own turn to everyone else, and say: Now, you. Or, Namaste. I honor your plans for what to do in all this, peacefully.

</comment><comment><USER29> If you define free will as conscious deliberation of action, it is easier to make the claim that it exists

</comment><comment><USER30> I feel like this question is just not pragmatic. Unless, of course, you're trying to avoid the blame for your actions by saying you have no real choice.

"Oh, it's not my fault I attacked Y because I have no free will!"

If that is the case, good luck. Otherwise, live life how you 'choose' to live it.

</comment><comment><USER4> Well, I do believe in free will, but since free will doesn't exist, it's not my fault.

</comment><comment><USER31> Philip K. Dick: The Electric Ant. I think that sums up everything, really.

</comment><comment><USER32> There is scientific evidence: [https://secure.wikimedia.org/wikipedia/en/wiki/Free_will_the...](https://secure.wikimedia.org/wikipedia/en/wiki/Free_will_theorem)

<comment><USER33> No there is not. From the page you link: "Conway and Kochen do not prove that free will does exist."

</comment></comment><comment><USER34> Free will is a potentiality. To attain it, you must first see that you do not have it, and then work consistently for many years to develop it.

</comment><comment><USER35> A related cartoon: <http://www.lukesurl.com/archives/1243>

</comment><comment><USER36> I read something recently saying that study was a load of bunk, but I can't find it right now. Anyone else see that?

</comment><comment><USER18> Arthur Schopenhauer: "You are free to do what you want, but you are not free to want what you want."

</comment><comment><USER37> I've never even heard an adequate _definition_ of free will, and don't think one is possible.

</comment><comment><USER26> If you don't believe in free will does that mean you will always win in Rock- Paper-Scissors?

</comment><comment><USER38> There is no point in getting up either; eventually gravity will win.

</comment><comment><USER39> You can do what you will, but you can't will what you will.

</comment><comment><USER40> I have no choice but to believe in free will.

<comment><USER41> [<http://en.wikiquote.org/wiki/Isaac_Bashevis_Singer>]

</comment></comment><comment><USER42> What's "free will"?</comment>