Musk vs. Buffett: The Billionaire Battle to Own the Sun - <AUTHOR> http://www.bloomberg.com/features/2016-solar-power-buffett-vs-musk/ <comment><USER2> > Like more than 40 other U.S. states, Nevada forces utilities to buy the > excess energy at rates set by regulators—usually the same rate utilities > charge (hence, the net in net metering).

It seems to me that the obvious solution would be to allow energy companies to purchase the excess energy created by these solar panels without a mandated price. I understand that the company is producing energy at X and selling it at Y where Y > X. If it is forced to buy and sell at Y, it's losing money when compared to producing the energy themselves. The energy companies are basically being forced to subsidize the solar companies by eating away their profit margin so I understand where they're coming from.

> First, NV Energy deployed its lobbyists to limit the total amount of energy > homeowners and small businesses were allowed to generate to 3 percent of > peak capacity for all utilities. Then it expertly argued its case before > regulators, who rewrote the rules for net-metering customers. In December it > scored a major win: Nevada's Public Utilities Commission (PUC) imposed rules > that not only make it more expensive to go solar, but also make it > uneconomical for those who've already signed up.

Instead, the solution appears to be lobbying from the energy producer to put arbitrary restrictions on the energy capacity that can be produced by solar. This seems crazy, or am I missing something?

<comment><USER3> The original 1:1 ratio was set for mechanical reasons I believe. One unit of energy coming in from the grid spins the meter a certain amount, one unit going back to the grid winds the meter back to where it started from. I think I read that the first solar panel user just plugged in without telling anyone and it just kind of worked so everyone adopted it and not enough people had solar for it to matter very much.

For similar reasons, most people pay a single energy rate despite peak generation costing much more to generate. With more modern meters you can have off-peak tariffs or even more complicated schemes.

Now of course, solar starts to matter as uptake rises, but there's no reason to assume that the energy is necessarily worth less than the retail rate (in which case the homeowner would be subsidising the utility rather than vice versa). Solar correlates well with peak loads on both a daily and yearly cycle so the cost of generation avoided at those specific times may well be much higher than even the retail rate. As far as I can tell the wholesale rate they mention is the average for the whole year, not just the peaks when solar is contributing.

</comment></comment><comment><USER4> It doesn't sound like either Buffett or Musk is really involved....

<comment><USER5> Yeah I was waiting for that part too. seems that it would involve Buffet more, being that he's financing the strong arm.</comment></comment>


Public-Key Encryption in PHP - <AUTHOR> https://paragonie.com/blog/2016/12/everything-you-know-about-public-key-encryption-in-php-is-wrong <comment><USER2> I'm not sure that cryptographic library functions should have default parameters, at least for parameters that affect security.

The argument (no pun intended) for default parameters would be to provide a reasonable value for library users who do not have the expertise to select the parameter value themselves.

The problem with this is that if someday the expert opinion on what the default value should be changes, then the library is in an unfortunate position.

If they update the library to match the newer expert opinion, it breaks existing code. If they do not update the library, then new applications using it will get the bad default value. Maybe they can leave the default alone, but make the library generate a warning that the default is no longer good and the application should be updated to explicitly pick a better value.

If the library had not supplied a default value, then all users of the library would have to make a choice. The library documentation could suggest what choice is considered best at the time, but make the programmer actually say it in the code. That way, if expert opinion changes, the recommendation can change and at least new users of the library might use the better value.

<comment><USER3> Updating the default doesn't need to break code. There can be some means of querying the default. Or as much as I hate to reference TLS, the default can be a cipher list which evolves over time.

<comment><AUTHOR> Or something like this: [http://externals.io/thread/442#email-12842](http://externals.io/thread/442#email-12842)

</comment></comment></comment><comment><USER4> 'Looks like a competent PHP dev could make a decent living as a crypto/SSL consultant.

</comment><comment><USER5> Dupe from two weeks ago (plus a few other times that this user submitted it). Conversation here: [https://news.ycombinator.com/item?id=13171409](https://news.ycombinator.com/item?id=13171409)

<comment><USER6> Never seen it before and I am reasonably acttive here.

<comment><AUTHOR> It floated near the top of page two for a while then died off. I don't know that it ever landed on the front page for any appreciable length of time.

</comment></comment></comment><comment><USER7> Looks like blog spam. Third time this user submits the same link and he/she only posts from one domain.

<comment><AUTHOR> [https://news.ycombinator.com/newsfaq.html](https://news.ycombinator.com/newsfaq.html) \- See: "Are reposts ok?"

Also, your claim that I only post from one domain is demonstrably false: [https://news.ycombinator.com/submitted?id=CiPHPerCoder](https://news.ycombinator.com/submitted?id=CiPHPerCoder)

Happy to discuss better strategies for raising security awareness among PHP developers if sharing content on HN is viewed as annoying.

<comment><USER8> Here you go, [https://www.reddit.com/r/PHP/](https://www.reddit.com/r/PHP/)</comment></comment></comment>


Advice for Passive Income Project - <AUTHOR> Hi all, There was a popular thread about 4 years ago: https://news.ycombinator.com/item?id=12318449
Did anything change during this time about best passive income methods?
I have about 10 years of developing experience (mostly java/spring), but I just don't have any idea about what to start and commit to it.
Any suggestions? What methods of passive income would you suggest? <comment><USER2> While I don't have a specific advice for passive income, I'd like to point interested people to [https://github.com/nayafia/lemonade- stand](https://github.com/nayafia/lemonade-stand). This is a resource detailing various money-making models for open source projects, which feels like a good subset of what people might imagine when thinking about passive income, as chances are a lot of people on HN love open source as well as making money and probably strive to find a way to combine the two if they could.

</comment><comment><USER3> I'm undergoing the same journey currently- and from what I've seen/read passive income is rarely passive ;)

I recommend checking out indiehackers.com and stackingthebricks.com to get inspired and start to see what goes into undergoing such an endeavour.</comment>


Airbnb will begin collecting occupancy taxes in San Francisco next month - <AUTHOR> http://techcrunch.com/2014/09/17/airbnb-sf-occupancy-taxes/

<comment><USER2> Well, that's a shame.</comment>


SVG, Canvas, WebGL? Visualization Options for the Web - <AUTHOR> https://www.yworks.com/blog/svg-canvas-webgl <comment><USER2> During my last endeavour I had to make high-frequency (1kHz+) plot on the web. Tried literally everything. Only tech that stood out was (webGL + websockets), amazingly working with firefox (but not chrome). So the perf conclusions of the article stands.

</comment><comment><USER3> I liked the discussion on absurdity of having thousands of nodes displayed at once. Having few dozen nodes shown on screen actually communicates more information to user. Their recommendation is to avoid huge graphs and instead show statistics about graph (number of nodes, most connected node, longest chain...), or to filter down the graph using domain specific knowledge. Great advice that shouldn't be buried in benchmark of web technologies (which was quite interesting read as well).

I've always admired yWorks products. I only wish they would turn yEd into commercial product and give it more love, even though it's already best in class. I introduced yEd to all companies I worked at and saw quick adoption among colleagues. I've come to consider it as versatile tool for exploring idea space, communicating architecture and structure to others, as well as for producing flashy marketing diagrams.

</comment><comment><USER4> As cool as Canvas and WebGL are, they also enable privacy violations, allowing web browsers to be uniquely fingerprinted.

I am not saying people shouldn't use them, but just be aware that when you do, you are making some of the web less accessible to people attempting to preserve privacy.

To be fair, similar arguments can be made of JavaScript, which I use all the time.

<comment><USER5> SVG technically allows this as well, tracking pixels and everything.</comment></comment>


Ask YC: Should Apple buy Yahoo!? - <AUTHOR>

To me, the argument in favour of Apple buying Yahoo  is compelling. What do you think? <comment><USER2> Well I guess it really depends... I don't see Apple's business model really including an online ecosphere...

It would be interesting... though I think Apple just counts on the developer community to provide the online services for their iPhones, iPods and so on...

</comment><comment><USER3> What's the argument? I would be interested in hearing it because I don't see Apple gaining much more than headaches from Yahoo.</comment>


Please review beewulf.com - <AUTHOR> http://beewulf.com Please review my website beewulf.com - detects which webserver a particular website run on. Thanks. <comment><USER2> Simple service. If your goal is to make money of the AdSense ads, you might want to think about what kind of actions you want to encourage users to take after they've checked a domain's server, in order to increase their time on your site.

One of the things I'd add is a "How do you know?" link that talks about how you can tell what kind of server the site's using.

Also, why have social bookmarking links? Why would anyone put the results on reddit? Why would anyone expect enough others would upvote it to be worth posting?

It's also not clear that the Facebook, twitter, and digg icons are links to more sharing actions; many other sites use those size of icons to link to their own profiles on Facebook, Twitter, etc.

<comment><AUTHOR> Thanks JayNeely, I'll add the "How do you know" info page. I'll also modify the facebook, twitter icons to something on the lines of "share this link".

</comment></comment><comment><USER3> Not useful for me. I would prefer to use the command-line over your service, if I wanted to know the server running a site.

        beewulf() { curl -s -I $1 | grep Server: }

<comment><USER4> Beat me to it.

</comment></comment><comment><USER5> redundant, use netcraft.com

</comment><comment><USER6> What extra value does this provide me over just checking the header in firebug? Firebug also gives me a lot more information than what you are providing.

<comment><AUTHOR> There is no extra value being returned for now. I'll try showing more info in future versions. Thanks.

</comment></comment><comment><AUTHOR> Thanks for all the suggestions guys. I really appreciate it. More changes coming to beewulf.com in the next few days based on your feedback.

</comment><comment><USER7> Searching for news.ycombinator.com, I get:

 _ERROR: Web server not shown in header._

If I search ycombinator.com, I get:

 _Apache/2.2.14_

In the first case, I would recommend either parsing the user input to try and return some reasonable results, or just return a more direct error message.

<comment><USER8> But they do run on different web servers. The first is a custom Arc-based web service, the latter an Apache install. What could be a more direct error message than stating plainly that the information isn't available?

<comment><USER9> I don't know, maybe something accurate? Like "server header not understood by beowulf.com"?

<comment><AUTHOR> Thank you benatkin. That's a more appropriate message to display.

</comment></comment></comment></comment><comment><USER10> I guess it would be impossible to know that I run Apache as a reverse proxy to Nginx, but I was still hopeful it would pick it up.

</comment><comment><USER11> ServerSpy Firefox plugin shows, on the status line, the server for every site you visit.

</comment><comment><USER12> How would you go about protecting the search results, say I plan to write an App Engine clone which actually url fetches results from your service and provide an ads free interface with some more features?

Is verifying the Referrer header enough for this kind of protection?

<comment><USER13> Spoofing the referrer header is trivial and so wouldn't offer any protection in this case.

I do, however, wonder if there would be any benefit to scraping the beewulf site. Retrieving and parsing the relevant headers yourself is trivial and would remove from your hypothetical clone app any dependency on beewulf.

<comment><USER12> ^ +1 Agreed.

</comment></comment></comment><comment><USER14> What's the value of knowing what server someone runs on?

<comment><USER15> It could just be a simple project.

</comment></comment><comment><USER16> Maybe offer a notification when the server version changes.

</comment><comment><USER17> needs moar grendel</comment>


You Are Solving The Wrong Problem - <AUTHOR> http://www.azarask.in/blog/post/the-wrong-problem/ <comment><USER2> I realize that this is from an ex-Mozilla guy. I'm not sure if he's talking about his new healthcare stuff, or Mozilla's shift to faster releases, but in the context of the latter I think the Chrome project from Google is one of the best examples of this in tech.

They totally rethought what a browser could be from the roots up, and basically decided to treat it like they do their web apps and update constantly and it shows in a lot of different ways. Other companies are still struggling to treat their web apps as something other than boxed retail software and Google's already closing the loop.</comment>


Alternative Project Template with AngularJS (+other frameworks) - <AUTHOR> https://github.com/jupl/btc-angular

<comment><USER2> Seems interesting but there isn't enough background on what this is. Just a collection of components, or is there anything custom added on top of the collection of frameworks?

The BTC website is pretty bad too, coming from someone who doesn't already know what all those different frameworks do. There is no sample code or "getting started" guide to illustrate what the project does or why I would want to use it. Especially curious about why I'd want this template over others? What are the competitors/alternatives?</comment>


Ask HN: Uncov articles being moderated on Hacker News? - <AUTHOR>

I submitted an Uncov article about an hour ago and it has 3 points, 1 comment so far as of this post.
http://news.ycombinator.com/item?id=338138
However, I do not see it anywhere in the top 300.  I can only see it under the "Newest" link.  What's going on?  Is this submission being moderated?  I believe it has enough points and age to be considered in the top 300.
I'd hate to think that Hacker News is unfairly moderating Uncov articles because things may have hit a little too close to home... <comment><USER2> The number of points an article needs to get onto the frontpage is not constant. It varies depending on the age of the account that submitted it, and the age, ip addresses, and previous upvotes of the upvotes on it. Comments have no effect.

<comment><AUTHOR> Thanks for the clarification PG. And yes, I thought he was serious!

</comment></comment><comment><USER3> Yes it is being moderated. I suspect if there is any substance it will be pushed through before too long.

/joke - Sorry for the confusion

<comment><AUTHOR> Thanks qhoxie. Is this what HN does to all articles? Or just because it's from Uncov.com?

Edited: inb4 /joke

<comment><USER3> Apologies for the confusion. HN is as democratic a news site as you will find, so no worries!</comment></comment></comment>


Show HN: Download your CCPA data (an aggregation of links) - <AUTHOR> https://yourdata.netlify.app/ <comment><AUTHOR> Hi HN,

In compliance with the new CCPA Data protection laws, companies that make over $25 million per year or collect data from more than 50,000 people are required to provide their users access to their data.

After poking around, I discovered that companies don't make it a very user friendly experience to request access to, delete, or request not to sell your data. Sometimes you need to fill out one form - sometimes several. Sometimes you even need to send an email to a privacy team with a picture of your driver's license.

I thought it would be useful to make a simple resource I could share with friends and family that makes the process more straightforward. It's not a comprehensive list of companies, but if it's seen as a useful, I'll continue to add resources/information to the site.

Let me know your thoughts. Thanks</comment>


Extraordinary support? You'd better blow my mind. - <AUTHOR> http://tbbuck.com/extraordinary-support-youd-better-blow-my-mind/

<comment><USER2> Personally I'd never claim to offer extraordinary support - the expense is insane. There are cheaper ways to brand - with much smaller downsides.

My experience is that people who are building things and doing things in a company are actually not competent to offer support. There are real skills - mainly people skills, that CSRs have that you didn't hire the builders for. Additional a giant percent of good support is speedy responses, and long conversations. Both things that require lots of man hours. So you need a ton of CSRs. Which is expensive in itself.

But then - customers have an insane way of finding critical bugs, and making completely reasonable requests that had never occurred to you. Things that require builder and makers of your product to be fully accessible to your CSRs. So you need to staff for that as well.

And that gets you to good. How you move from that to extraordinary is some thing I don't know how to do (And I've read a lot of what Tony Hsieh has to say), but I do know it's going to be extraordinarily expensive.

<comment><USER3> > Things that require builder and makers of your product to be fully > accessible to your CSRs. So you need to staff for that as well.

From the perspective of said builder/maker I can say this can grow into a huge problem if not handled well. Once your product/service gets deployed in multiple timezones, your support turns into 24/7, even if not advertised as such.

Suddenly the developers whose jobs used to be nice cosy nine to five start getting called at ungodly hours to offer some insight into customer problems. Nobody likes that, especially not without getting paid.

<comment><USER2> I know - I've been there. The obvious starting place is to hire people who know this isn't 9-5 gig, (so nothing is sudden). But of course that drives up wages a bit :) Boy is this an expensive problem to solve.

<comment><USER4> 24/7 support of complex infrastructure? That's always going to be expensive :)

</comment></comment></comment></comment><comment><USER5> Puffery and hyperbole are all too common in marketing. "Extraordinary support", "incredibly advanced technology", or my least favorite, "beautiful design" (:puke:).

Nobody should ever believe a marketer when they say anything until the delivery matches. Sure, you can set some tentative expectations (e.g. "this payment processor will process payments"), but to go much further than that could invite accusations of naivete.

</comment><comment><USER6> It's just a rant about some poor support experience with name calling.

<comment><USER7> True, but it does act as a word of warning against using their services I guess.

<comment><USER8> It does exactly that, which is why I don't think it belongs on HN. I didn't click on that link to listen to someone I've never heard of complain about a service I've never heard of. I was expecting an intelligent opinion (and in these comments, a discussion) about what exactly "extraordinary support" means.

Anyway, I think you're exactly right.

</comment></comment></comment><comment><USER9> In fairness, it never said "extraordinarily _good_ support".

<comment><USER10> Just talking semantics. But we all know what it was supposed to mean

</comment></comment><comment><USER10> As a customer, I don't really care about _extraordinary_ support. I care that _when_ and _if_ I have an issue, you do your _best_ in trying to resolve the issue. What I absolutely hate is being forwarded from one guy/dept to another without a real resolution. Yes some problems are user errors, some could be hard to solve right away but for me, extraordinary support would mean that you took time to understand _my specific_ case and are working diligently towards a resolution. Rest is all fluff.

</comment><comment><USER11> This reminds me of a lone developer who balances hundreds of clients, where each client expects same day personalized replies with nothing but the right answers.

<comment><USER10> "where each client expects "

The lone developer should ensure that client expectations are correctly set. Honestly, it is their responsibility and not the customers. Customers always want everything unde the sun. How you handle their expectations is the key.

</comment></comment><comment><USER12> here is how to do extraordinary support: lower customer's expectations and then exceed them.</comment>


NZ teen's $220m ICO venture triggers official warnings - <AUTHOR> http://www.nzherald.co.nz/business/news/article.cfm?c_id=3&objectid=11947186 <comment><USER2> Wow.

>Despite claims of enormous turnover and traffic, a search showed around only 400 listings in total, many up to four months old.

"A full 10 percent of listings of goods for sale on the site were found to have been placed by Sharma and his chief operating officer and University of Auckland student Dinyar Irani - the company's only two employees - with the pair trying to sell a soft toy and their NCEA schoolbooks.

Alexa analytics, a service providing information on website traffic, shows unusual results for Sell My Good. The vast majority of visitors - 99.96 per cent percent - are reported to have come from only one country: Japan.

Despite this dominance, the site has fewer than a dozen sales listings from Japan, and Google shows the site is only mentioned once in the country's internet domain.

</comment><comment><USER3> "Sharma is presently a student at San Francisco's "Draper University of Heroes", a for-profit bootcamp for entrepreneurs that is not accredited to award degrees."

You can't make this stuff up...

<comment><USER4> There was a reality-show about it once called "Startup U": [https://freeform.go.com/shows/startup-u](https://freeform.go.com/shows/startup-u)

</comment></comment><comment><USER5> >"They treated us as a joke. It's really bad, they think 'oh, he's a 19-year- old kid who knows nothing," he said of the market regulator.

I would hope that the market regulator treats _everyone_ as if they know nothing, and forces them to prove things. Not just this guy.

</comment><comment><USER6> Honestly, I don't know what to say to this. It's pretty moronic at every level but...it worked I guess?

Bleh, I'll just go meditate now. No use in getting angry.

</comment><comment><USER7> An update to this saga, "Teen's under-fire cryptocurrency offer withdrawn" [http://www.nzherald.co.nz/business/news/article.cfm?c_id=3&o...](http://www.nzherald.co.nz/business/news/article.cfm?c_id=3&objectid=11948672)

<comment><AUTHOR> Ah, thanks for the update! I figured as much, since the ICO site had been down all weekend, but at least this trainwreck has been halted for now.

</comment></comment><comment><USER8> Makes us wonder how many of his previous 'achievements' were similarly exaggerated.

<comment><USER7> Most, I'd say. He had another venture called "Share My Garage", which was a rental site that he has since stopped promoting. Ashutosh made repeated claims that Share My Garage had been accepted in YC when in fact it had not.

</comment></comment><comment><USER9> Well he has a functional e-commerce website. Quite a few of these ICOs don't even have a working anything.

But still, yikes. This is why you have to be careful around ICOs.

</comment><comment><USER10> The saying "Fake it 'till you make it" really comes to mind here.

The kid is hoping he can lie and scheme his way to success.

Sorry bud but that doesn't work with startups, maybe if you were already an executive at a multinational corporation where you have little accountability and any blame can fall onto the company, but if you lie as a startup founder your reputation and that of all your future ventures will be ruined.

</comment><comment><USER11> > This week he began accepting investor funds, hoping to raise $220 million

Do we have any proof that Ashutoush has actually raised anything?

<comment><USER7> Their ICO website, which is currently down, had claimed that they had raised $1 million in the first 6 hours of the eCash token sale.

</comment></comment><comment><USER12> Poster Child for the Era.</comment>


Side Projects: Learning experience vs. Distraction - <AUTHOR> http://ryanabbott.com/side-projects-learning-experience-vs-distraction

<comment><USER2> This is a great post. Back when I was a corporate developer doing .NET, I never had many side projects. Maybe just a library or simple utility to do things like move photos around.

Now as a developer primarily working in Ruby, I always feel the need to have a side project to hack on in addition to my day job. The side projects allow for unsafe experimentation with new technologies. After a reasonable amount of vetting, I find that I'm able to make better decisions in my day job as a result. I think most Ruby developers today work in a similar fashion.

The startups that I've worked for never had much concern about what I did in my personal time, but now that I'm working for an acquired company that's part of a big corporate entity, it's a little different. I get more of the looks, comments, etc and can't be as public about my side projects. Also I can't take the side projects as seriously (i.e. get paid subscribers) because that could jeopardize my employment. I'm okay with this for now, but I understand that many would find this appalling. I think you just have to find the right balance between what's good for you versus what's good for them.

<comment><AUTHOR> "unsafe experimentation with new technologies" love this, couldn't agree more with this statement.

It's likely a different way of thinking, possibly an old vs. new. For me, if I work with people that are hacking on cool stuff, publicly, its a great recruiting tool, its reassurance that you've made a great hire, and its confidence that they code going into production is battle tested in more than just localhost.

</comment></comment><comment><USER3> The managers that forbid their employees to work on side projects are plain dumb.

The most important gain for the employer is the fact that the employee trains himself on new technologies, for free, in his own spare time.

The risk would be that the employee might leave if his side project is a success. With around 4% rate of high success in the startup world, the risk of leaving is quite small.

<comment><USER4> Reminds me of that time when my previous company tried to create such a policy ... I even wrote a stack overflow question at that time:

[http://stackoverflow.com/questions/3009885/should-a- company-...](http://stackoverflow.com/questions/3009885/should-a-company- prevent-employees-from-publishing-an-app-in-an-appstore-in-thei)

As I wrote at the time, quoting the head of development: "outside work activities create a conflict of interest. [...] [we don't want that] you use your spare time to work on your app, and once it takes off you quit your job".

I remember replying that in that case kickboxing also creates a conflict of interest.

The result: lots of developers started to leave that company.

</comment></comment><comment><USER5>
         > they thought for some reason they owned everything
         > I created, at any time, ever (sorry, no)

How common is this? I have yet to encounter it, but if I did I'd consider it an enormous red flag. It sends some very strong messages:

        - We lack the respect for you to even be subtle about
          leveraging the asymmetry of our power relationship in
          order to try to fuck you.
        - None of your potential future colleagues here are likely
          to be passionate about their craft, because people who enjoy
          making things of their own don't sign our contract.

I'm aware that employers are often willing to compromise about things like that during negotiations, but by that point the message has surely been sent.

<comment><USER6> Pretty common in BigCorp land. The problem is that many of these IP Agreements are very badly worded. The spirit is that you should not take work you do for your employer and turn around and create a product that directly or indirectly competes with them in the same industry.

I'm not sure how enforceable these agreements are. Like anything with our legal system in the US, they're used often to bully people into submission with the threat of legal action, regardless of the company's actual intent. In California, there's a wide range of employee protection laws in place that would make these difficult, if not impossible to enforce. Not sure about elsewhere in the country. (standard IANAL disclaimer applies)

One place I worked at had a pretty boilerplate IP Agreement. I worked with them to change some of the wording so it was less vague. There is often a section on these things where you can provide "prior inventions" that are excluded from the agreement. I took the opportunity to list every idea (as vaguely as possible) I might want to pursue in during the expected course of my employment.

</comment></comment><comment><USER7> When a company makes claim to your after hours work, Is that the line between a "corporation" and "start up"?

I saw this at a previous company (some say it's common place). They put the legal-sleaze into the stock option documents saying employees would have to seek written consent for work outside of the company. So classy!

</comment><comment><USER8> I work on my side project every spare minutes I have. Tools that I create on the side have benefited my employer so much. If they were to give me a hard time it will be their loss. I can always quit and work in my own, smaller pay check but you get peace of mind.

<comment><AUTHOR> Problem is the agreements were discussing typically have a 'non-compete' for a period of time. So you can't create anything that resembles work you were doing at your employer for typically 2 years. For this reason :)

<comment><USER9> If you really wanted to pursue it, you could probably force them to explicitly define what the mean by 'compete' (thereby narrowing what they can come after you for), or else give you compensation for the period that they want you to be excluded from working. It might take some legal maneuvering though.

</comment></comment></comment><comment><USER10> I'm also a big fan of side projects. Problem is, i'm a product guy, and the whole point of what I do is to try and make things people want. Not learn a new technology. I still haven't been able to find the right balance. Any advice?

<comment><AUTHOR> I have features I've built, and entire products for that matter, that were nothing more than a Frankenstein of things I've picked out of side projects. Sometimes I learn 2 things completely separate from each other, and then 6 months down the line have a realization that those two things would be amazing together in application.

Product focused or not, there is no reason that you should prevent yourself from learning just because it doesn't have a TLD.

</comment></comment><comment><USER11> I've used my various side projects to learn technologies that I then use in my actual job. For example, I first tested Redis on my side project, as well as a JS/CSS compressor and a newer version of Django.</comment>


Tragic, unforgettable, classic - <AUTHOR> http://www.wired.com/wired/archive/3.06/xanadu.html same old story, i suppose.  was reminded of it by, reflecting on my general contempt for having to deal with css all the time, which led(googled) me toward http://www.w3.org/Style/LieBos2e/history/ .. and then, the general rememberance: "design is effen hard;  "espcially the first draft" (as Herbert Simon "explained" circa 1969). <comment><USER2> TL;DR (Courtesy of wikipedia)

Project Xanadu was the first hypertext project, founded in 1960 by Ted Nelson. Administrators of Project Xanadu have declared it an improvement over the World Wide Web, with mission statement: "Today's popular software simulates paper. The World Wide Web (another imitation of paper) trivialises our original hypertext model with one-way ever-breaking links and no management of version or contents." Wired magazine called it the "longest-running vaporware story in the history of the computer industry". The first attempt at implementation began in 1960, but it was not until 1998 that an implementation was released, and this was incomplete.

<http://en.wikipedia.org/wiki/Project_Xanadu>

</comment><comment><USER3> See also Ted Nelson's letter to the editor on <http://www.wired.com/wired/archive/3.09/rants.html> and his list of errors he found in this text: <http://xanadu.com.au/ararat></comment>


Now facing ruin, rags brought riches to Guess co-founder Georges Marciano - <AUTHOR> http://www.latimes.com/business/la-fi-marciano15-2009dec15,0,6182167.story

<comment> daniel-cussen tl;dr: former designer acts like prick, does not follow court proceedings, judge and jury liquidate his fortune. I really don't see how libel and emotional distress can be worth 45-100 million dollars per employee, no matter how big of a prick he was. This was vindictive.

<comment><USER2> I think lawsuits are generally vindictive in nature, and it's rarer when they're not. But that aside, looking at it on the other side of the coin a judgement of $1-$5 million would most likely have bankrupted many an employee.

The man had so much money to the point where his family claimed "money was no object". It seems the punishment fits the situation he is in, where given his situation he's been reprimanded in the same manner a mere "commoner" would.

Otherwise it reminds me of those congestion fines creeping up across cities. Basically rich people aren't bothered by them and the poor are inconvenienced greatly. I know I'm not bothered by the fines at all, and pay them when I'm hit by them.

It would be amiss to let rich people destroy other people's lives through libel because they can afford to pay the "fine".</comment></comment>


Building a web app to be as secure as possible - <AUTHOR>

If I hired a company to build out a web app that needs to be secure (i.e. a tip line to be used by law enforcement, etc), what would I look for?
For example...
- Is there a 'most secured' dedicated host? (assuming that the machine will not be housed on-site)
- Is there a specific framework/language used more often than others for creating these applications?
- Would transactional messages sent via email (i.e. sendgrid, mailgun) be a no-no?
- Firewall ideas?
- Etc.
I'm sure some of you guys from Palantir could chime in.
Would love to hear everyone's thoughts! <comment><USER2> Look for building the full stacks of the app from the really down ground up. Any cloud hosting will be vulnerable. If you can provide powerful in-house infrastructure and platform, you're good to go. You might end up inventing a new security protocol, which is an interestingly big deal ([http://ycombinator.com/rfs3.html](http://ycombinator.com/rfs3.html)) .

<comment><USER3> I agree that cloud hosting opens up many new vectors of attack, but I completely disagree about building the app from the ground up.

The larger your app is, the less likely it is to be secure. A better strategy is to keep your app lean and mean, and build it off of existing security technologies which have proven to be reliable.

But as we've seen with Heartbleed, some of your security measures will fail. Its important to follow the principle of least privileged, and to isolate your system as much as possible; for instance, Colin Percival uses stunnel to isolate OpenSSL from his webserver[1]. This solution is far from perfect, and it still puts your private key at risk in a Heartbleed-like event. But that majority of your user's data is kept away from OpenSSL; it limits your exposure.

[1] [http://www.daemonology.net/blog/2009-09-28-securing- https.ht...](http://www.daemonology.net/blog/2009-09-28-securing-https.html)</comment></comment>


Quant Job Interview Questions (2009) [pdf] - <AUTHOR> http://www.math.kent.edu/~oana/math60070/InterviewProblems.pdf <comment><USER2> Quant dev here.

Note there's broadly two kinds of quants.

One is a derivatives quant, basically someone who spends a lot of time working out the values of derivatives. So you're looking at ito calculus and iterative methods to find the value of contracts with weird clauses (Knockouts, Cliquets, vanillas, etc), and then building spreadsheets to calculate the hedges for those trades as time goes by.

The other is strategy quants. Here you're looking for some way to beat the market. So you're reading in a bunch of data from various sources and applying some sort of quite open-ended analysis on it to come up with rules for a trading system. You then build a framework for trading such systems, which can get very involved eg execution algos that read realtime market data.

I started off in derivatives as a trader but quickly moved on to the other. They're both fairly deep, and both require you to know coding and math.

The questions here seem to apply mostly to derivs quants, but strategy quants have found many things applicable.

<comment><USER3> Serious question... do people really enjoy working on this stuff? Do most quants go to work thinking it is fun to work on mathematical models to optimize financial transaction. Or is it just a job that pays really well towards long term financial independence to do what they really want?

<comment><USER2> There's some interesting things about this work:

\- You get to know something that isn't published. You find a strategy, you don't tell anyone. Sure, you can talk about it in broad strokes (we're trend following...) but it's pretty unlikely you'll ever tell anyone enough for them to be able to replicate it. Except people you trust, of course.

\- You're always thinking about philosophy of science. How do I know that this series of steps I'm doing is not just a monkey and a dartboard? Again, there isn't going to be a specific written paper that tells you the answer.

\- At one end of it, you are working with cutting edge technology. Anything that shaves a microsecond off the speed is useful, and you can spend a lot of time optimising such things. I've been staring at a C++ solution that is 100% in house. No STL.

\- At the other end, you are working with data in very modern ways. All that ML stuff in the news is interesting to quants, because if there's one thing ML papers are about, it's how to avoid overfitting. Just a few years ago people in the field had not come across ML, or at least the point of view that ML brings. Plenty of other things had already come up, though, like information theory, time series econometrics, signal theory, and so on.

\- About derivs quants, it's not my cup of tea, but I can see how others like it. You're basically pricing things hoping that you've noticed something the counterpart hasn't, or hoping you've found a cheaper way to hedge than your competitors, or simply hoping your salesman is a better salesman than the other guy's.

<comment><USER4> This is good stuff, thanks for articulating your experience in the role.

</comment></comment></comment></comment><comment><USER5> I wrote about this a long time ago here:

[https://news.ycombinator.com/item?id=8698986#8699260](https://news.ycombinator.com/item?id=8698986#8699260)

I think most of what I wrote is still valid.

I believe the below reference:

[http://www.decal.org/file/2945](http://www.decal.org/file/2945)

and the book Heard on teh street are also great refresher's for the type of material you'll need.

[https://www.amazon.ca/Heard-Street-Quantitative-Questions- In...](https://www.amazon.ca/Heard-Street-Quantitative-Questions- Interviews/dp/097005520X)

To be honest most of this won't matter, the number one qualification for becoming a quant is a Phd from a top tier university.

I'm one of the very few quants i've met that doesn't have a Phd, if you don't have one then its going to be a tough road ahead. YOu'll often hear people call themselves a quantitative developer if they come from a computer science background.

That might be the most over used phrase on wall street:) It's kind of akin to calling yourself an architect, in that one firms architect is another's junior developer. The term really means nothing and is given out like water, sort of how the engineering term gets tossed around in software dev firms.

I've got a pretty long back list of emails from hacker news to get through but if you have any questions about the job, please feel free to email. Just keep in mind that between year end, the US election and life a reply might take a while.

 __EDIT __sorry I see that someone used the term quant dev while I was typing. No insult intended. There are some amazing quant dev people on the street.

<comment><USER6> You stress the importance of having a Phd - How much of that is because it's really needed and how much of it is a filter / credibility signal?

<comment><USER7> You need to learn the maths and for that there is nothing close to sitting down in a master/phd classroom for years, doing hard exercises for the whole duration of it, that could get you fired of the school if you ever get a single one wrong at an exam.

</comment></comment></comment><comment><USER8> Here's my favorite interview question (spent 10 years as a quant, interviewed a bunch of people, most do not do well on this)

We're going to play a game. You draw a random number uniformly between 0 and 1. If you like it, you can keep it. If you don't, you can have a do-over and re-draw, but then you have to keep that final result.

I do the same. You do not know whether I've re-drawn and I do not know whether you've re-drawn. Decisions are made independently. We compare our numbers and the highest one wins $1.

What strategy do you use?

EDIT: The answer is not 0.5, it is not 0.7 either.

<comment><USER9> This seems so simple.

Decisions and draws are independent - we can ignore the other guy and just go for the highest value. Draw the first number. If it's below 0.5, draw again, since the odds then are that the next draw will be higher.

Is there more?

<comment><USER10> I was 100% sure that redrawing below 0.5 is optimal, but a simple simulation disagrees:

        def tournament(a, b, n=1000):
            return sum(a() > b() for _ in xrange(n)) / n

        def redraw_below(c):
            x = random.random()
            if x < c:
                x = random.random()
            return x

        In [23]: tournament(lambda: redraw_below(0.5), lambda: redraw_below(0.6), n=10000000)
        Out[23]: 0.4948004

        In [24]: tournament(lambda: redraw_below(0.5), lambda: redraw_below(0.6), n=10000000)
        Out[24]: 0.4948039

        In [25]: tournament(lambda: redraw_below(0.5), lambda: redraw_below(0.6), n=10000000)
        Out[25]: 0.4948802

`redraw_below(0.5)` only beats `redraw_below(0.6)` 0.4948 of the times, very consistently, over three sets of a million rounds.

This is despite `0.5` giving a better average (0.624 vs. 0.620).

I'll think about why, but the result is very consistent and can't be ignored.

<comment><USER11> It makes sense that the highest expected value doesn't necessarily indicate the best strategy.

For example, suppose you're playing against someone who has taken the "reroll values greater than 0.5", giving them the expected value of 0.625.

If you roll the value 0.55, you expected to lose more than half the time, because their expected value is 0.625. So you should reroll anyway.

<comment><USER12> I think this is the key. Given that the game is winner-take-all, maximising your expected value isn't necessarily the right way to go. To take an extreme example, suppose I had a magic strategy that gave me a value of 1 every few throws and a lousy number most other times. That might give me a good expected value, but I'd still lose most rounds.

So what's the right objective? Trying to beat your opponent's median score, so that you win more than half the time?

Edit: I think you're on the right track, but I'm not sure I believe that you will lose more than half the time if you land below your opponent's expected value. I think that assumes their distribution of scores is non-skewed, which is not obvious to me.

</comment></comment></comment></comment></comment><comment><USER13> To those who want to know more about quant jobs,

Mark Joshi has a cheat sheet intro to the profession: [http://www.markjoshi.com/downloads/advice.pdf](http://www.markjoshi.com/downloads/advice.pdf)

Joshi co-authored the standard reference for quant interview preps called Quant Job Interview. Interview questions with solutions. It's available on Amazon.

If you just wanna try brain teasers, google something like "ext:pdf quant interview". There are many of them.

</comment><comment><USER14> I'm partway through the ML class on Coursera and have only recently rekindled my interest in Math. However, my background is in Accounting (undergrad and did a full years as an accountant), and Software Engineering (masters in SE and full time now for some years). Is there a path to actually move into a Quant Job given a software background, to someone who's mathematically inclined? My fear is that I load up on extra "free" math classes, teach myself through MOOC's and self study, and won't have the required degree or connections to break into the field. Is there a recommended path (or is it even possible) to make the major switch from Web Dev to Quant?

<comment><USER15> It's definitely possible with a masters in SE. There are many types of quant (see the markjoshi.com link above) - it will be easiest for you to become a quant developer with your background in software engineering. This will be much more focused on the software development side of things rather than the math/modelling side of things, but depending on the firm will give you large exposure to how the modelling side works. They are very competitive positions, but if you are a strong programmer that can prove you have knowledge of financial markets, have relevant side projects, and can understand and communicate the math behind what you build, you will have a leg up on the competition.

<comment><USER14> Thanks. You're reply gave me a boost of inspiration. I'm working now to learn more of the Math and modeling side of things, but I know it's going to be a _long_ hard road. Thanks for the link, that site seems to have some great info - I particularly like this [http://www.markjoshi.com/downloads/advice.pdf](http://www.markjoshi.com/downloads/advice.pdf).

I'm curious what sort of side projects I could try that others could take notice on.

</comment></comment></comment><comment><USER16> Sigh...I guess I'll be sticking with web dev.

<comment><USER17> I wouldn't be discouraged. I just had a look and parts 1 - 4 are simple maths, and everyone should know those maths anyway. Then part 5 is application of simple arithmetics (except questions 8 and 12) to options, which means if you already know arithmetics you only need to learn what an option is.

What I mean is that you should be learning basics maths anyway, and when you know a bit you can solve all those questions.

What a lot of people could benefit from is learning how to learn.

EDIT: Thanks for downvotes guys. Should I also downvote when someone says "don't be discouraged with distributed systems, or asynchronous programming" etc? I don't know those things, so maybe I should downvote those people?

<comment><USER18> You are getting downvoted because "everyone should know those maths anyway" is dismissive (I think you meant "everyone [who is applying for a quant position] should know those maths anyway," which is more fair)

<comment><USER17> No, I did mean everyone. Or everyone who cares about understanding the world. Or rather, everyone who cares about understanding the world they themselves should be wanting to learn more maths than just sums and multiplications.

Anyway, thanks for the feedback.

<comment><USER19> | everyone who cares about understanding the world.

Those fluent in math really need to drop this egocentric view. If you can't do matrix manipulations you aren't curious about the world? Give me a break. The breadth of topics that yield understanding of various parts of our world is vast. Do you have an early university understanding of history, politics, math, sociology, psychology, economics, law, capitalism, etc. etc. etc.

<comment><USER10> If you don't grok matrix manipulations (which are a very simple thing to understand: _matrices are linear transformations and matrix multiplication is composition of linear transformations_ ; for some reason this is only taught as a theorem, not as the first lesson in Linear Algebra), you're missing on a really great tool that helps us a lot in understanding almost every kind of large scale process precisely. Without this tool, we'd be back to the 18th century in math, physics, engineering, computer science...

It's pretty high up there in "list of things to learn if you're curious about the world". Of course, so are history, economics, etc'

</comment></comment></comment></comment></comment></comment><comment><USER20> I feel like solving a lot of these questions are just a matter of either domain knowledge, or not being intimidated by unfamiliar vocabulary.

I'd be willing to bet that the vast majority of people who got through a college CS degree would be able to pass this after a couple months of self- study.

(On that note, anyone want to chime in on what the job options would look like if someone had a CS degree and could pass this?)

</comment><comment><USER21> I graduated ~3 years ago with a CS degree and while I probably could have done most of these questions from sections 1-4 at that time, now all this looks very daunting. Just figuring out how to setup the differential equation for Q1 took a long time and I could, almost physically, feel my thought processes struggling.

It's just such a terrible feeling, knowing at one point in the past you would have been more speedy with something and noticing what time has done to your skills.

Do any of you have any strategies for not loosing knowledge? Would re-reading textbooks every couple months be a solution? How do I decide if it's even worth - I don't necessarily _need_ this type of knowledge for what I'm doing now but loosing skills you know you once had feels awful.

</comment><comment><USER22> Perhaps useful if you are interviewing, this is what I give to my undergraduate students.

Mathematical Finance Cheat Sheet:

[https://github.com/daleroberts/math-finance-cheat- sheet](https://github.com/daleroberts/math-finance-cheat-sheet)

<comment><USER23> Thanks sharing this. I actually see some equation needed for my last midterm lol

</comment></comment><comment><USER24> Didn't expect to see a link up to my graduate alma mater (Kent State U. mathematics department).

I know Oana, if there are any questions about the problems or the course sequence that they fit into let me know.

</comment><comment><USER25> "Quant" = Quantitative Analyst?

<comment><USER26> Yes

</comment></comment><comment><USER27> Next time my wife starts looking at jobs for me and says "hey this quant thing looks like it pays a lot, why don't you apply?" I'll just show her this.

</comment><comment><USER28> Is there an answer key with detailed explanations to this?

</comment><comment><USER29> Questions 8 and 9 remind me of a math YouTube video I saw recently about "weird" infinite series that can sometimes be solved quite easily.

IIRC Consider sqrt(x+sqrt(x +... = x

You need to check the series converges (this can sometimes be tricky but seems the questions tell you they converge). Then you can do this substitution for the infinite piece:

sqrt(x+x) = x

x^2 = 2x

x^2 - 2x = 0

...

y = 1/(1+y)

[IIRC there are situations where a different substitution yields a different result - I don't recall the details]

<comment><USER29> This is the video: "Ramanujan's infinite root and its crazy cousins" [https://www.youtube.com/watch?v=leFep9yt3JY&t=687s](https://www.youtube.com/watch?v=leFep9yt3JY&t=687s)

</comment></comment><comment><USER30> According to this advice [https://www.quora.com/Is-stochastic-calculus- helpful-to-get-...](https://www.quora.com/Is-stochastic-calculus-helpful-to- get-a-position-in-a-hedge-fund-investment-bank/answer/Ross-Kravitz?srid=33wJ) these interview questions are not the most important thing

</comment><comment><USER31> For those who speak french : [https://www.amazon.fr/101-quizz-banquent- Math%C3%A9matiques-...](https://www.amazon.fr/101-quizz-banquent- Math%C3%A9matiques-ind%C3%A9pendantes/dp/2311007394/) by Pr. Gilles Pagès (LPMA).

<comment><USER32> Unrelatedly Gilles Pagès is an awesome and humble prof

</comment></comment><comment><USER33> Energy trading quant here. If anyone interviewed me with this crap I'd walk out immediately.

<comment><USER34> Care to elaborate?

I guess those Ramanujan-like infinite series are a bit like trivia questions, right? Does anyone really have an intuition to solve something like that?

<comment><USER35> It's just pattern matching. How is this pattern formally defined (for the first problem)? x = sqrt(x + sqrt(x+sqrt(x...))) is informal, so the real definition is a recursion x = sqrt(x + THING), and THING = sqrt(x + THING), which is convenient, because that's just x again. So x = sqrt(x + x) = sqrt(2*x). Oftentimes with mathy stuff (but not always), if you have trouble, right out definitions for the confusing parts and work with that instead, recursing until it makes sense.

</comment></comment></comment><comment><USER36> Pretty sure 3.1 doesn't need knowledge of Markov Chains (even if you implicitly use them)

</comment><comment><USER37> Yeah, looks like I would need a good statistics and linear algebra refresher to have a chance at it

Options pricing is Black-Scholes equation and related equations

</comment><comment><USER38> what is the background required for quants these days? I have a Master's in math but no formal training in econmics or finance. Also I graduated 10 years ago

<comment><USER39> Quickest way to look qualified at least for derivative pricing is go get an MFE.

</comment></comment><comment><USER40> I'm having flashbacks to my qualifiers. Yeah!

</comment><comment><USER41> I worked at a hedge fund for 4 years, and these math questions are irrelevant to market structure.

Based on the challenge of most of these questions, I would hazard a guess and say only very recent grads would be able complete these. I'm 6 years out of Princeton, but I've forgotten how to do probably 90% of these questions.

Parts 3/4/5 require some pretty specific rules that are more rote memory than anything else.

</comment><comment><USER42> Got an EE degree and a BSc in Math but 3.0 GPA - still possible to be a quant? Will they chuck out my resume or will I still get an interview.

<comment><USER43> It doesn't matter if you can't pass the interview.</comment></comment>


Bootstrapping Stormpulse, Part 2 - <AUTHOR> http://wensing.tumblr.com/post/26830276239/bootstrapping-stormpulse-part-2 <comment><USER2> I really can't believe that this webapp wasn't able to secure funding from anywhere after 6 fricken years, and yet we have thousands of people with _literally nothing for a product_ valued at extravagant amounts.

Something is seriously broken with our sector.

<comment><AUTHOR> The main thing I learned is that fundraising is a non-deterministic endeavor. Just because you have everything you think you need, there is _always_ a reason for an investor to say no. Most commonly, during the last attempt to fundraise, it was the unproven market. The only exception was a big data VC in NY, which believed in the market but didn't invest because we weren't all in the same city yet. And of course the couple of term sheets we turned down because of poor terms.

One angel who was a huge fan of the site told us that he wouldn't invest because there haven't been enough noticeable exits in the weather space. Go figure.

</comment></comment><comment><USER3> Another great story from the trenches that doesn't involve killing or crushing it, but rather keep moving.

It makes me wonder how many great developers and entrepreneurs give in/up/out to the fundraising machine without finding what they could actually have done on their own. Of course, this won't fit all startups that don't have a business model.

The saying of seeking funding to avoid finding sales seems to ring true here and in a lot of stories.

</comment><comment><USER4> Just finished reading this post. Really spectacular story. And the best thing about it? You found product market fit. And, by focusing on the pure B2B play in the near term, you've reopened you options in the long term. Amazing fortitude, too. Congrats!

<comment><AUTHOR> Thank you sir. Yes, I do think options are open in the long term.</comment></comment>


Do fonts affect people's opinions? Yes. - <AUTHOR> http://kottke.org/12/08/do-fonts-affect-peoples-opinions

<comment><USER2> Blogspam, original here [http://opinionator.blogs.nytimes.com/2012/08/08/hear- all-ye-...](http://opinionator.blogs.nytimes.com/2012/08/08/hear-all-ye- people-hearken-o-earth/)

</comment><comment><USER3> I will be writing my next CV in Baskerville.

The font reminds me of old scientific tomes, etc.

</comment><comment><USER4> What is with the random mixing of serif and sans-serif on that page? A demonstration of fonts negatively affecting one's opinion?</comment>


A possible approach to learning Common Lisp  - <AUTHOR> http://deepaksurti.com/lisp/learning.html <comment><USER2> Advice no. 1 is to switch OS if you're a windows user? That's bad advice. LispBox works great, and the hurdle of changing OS isn't going to help you learn Common Lisp.

Lisps have got to be the easiest family of languages to get started with. Learn the syntax of a function call, and you'll understand most of the code you're seeing. Understanding it in depth is a bigger undertaking, of course.

<comment><USER3> Yep, I wrote 10k lines of lisp code on Windows and it builds on linux (a different implementation) unchanged. yesterday i built my app with Clozure Common Lisp, for the first time, and it ran from the first try. Two OSes, three implementations, tens of dependencies .. flawless.

<comment><USER4> Suggesting to change your OS when you're on Windows is indeed bad advice. Clozure Common Lisp is a fine CL implementation for Windows and works well enough with Emacs and Slime.

Emacs shouldn't be too much of a problem with version 23 and some sane Windows-oriented keybindings and CUA mode enabled. Perhaps someone (maybe me when I've got the time) should just put a good Emacs configuration online for people wanting to play with CCL, Emacs & Slime.

Then again, Lispbox might be good enough as well. I've never checked it out.

</comment></comment></comment><comment><USER5> If you're completely new to programming (or rusty), I'd recommend "A Gentle Introduction to Symbolic Computation" before PCL or ACL. <http://www.cs.cmu.edu/~dst/LispBook/>

It's a really great, free resource for beginners that will help you get ready for the other books.

</comment><comment><USER6> I think that going from Scheme to CL is much easier than the converse; Scheme's syntax is more straightforward (e.g. there's no #' for funcall), and there are fewer conceptual edge cases. If you use PLT Scheme, too, you get Lisp-n (not Lisp-1 nor Lisp-2) with the module system.

Scheme is a conceptual superset of Common Lisp (cf. continuations), although CL has more built-in practical functionality (CL is typically faster (exceptions include Stalin, Bigloo), and has possibly better-implemented libraries).

One might learn both concurrently!

<comment> old-gregg I have gone through "Practical Common Lisp", went through pains of integrating CL into vim, did my share of googling for libraries and found CL to be impractical for production use (for my projects). Yet I keep seeing the argument in favor of CL because it's got more libraries and "built-in practical functionality".

Can you please elaborate? I haven't played with Scheme yet, but <http://docs.plt-scheme.org> looks more impressive than anything I've seen for CL so far: lots of stuff in one place and guaranteed to work.

Thanks!

<comment><USER6> I, too, am basing the libraries claim on others' opinions. I quit CL because I found the system too complex to fully grok, and what 21st-century technologies I needed were not standardized (see: concurrency). I would've been stuck either a) only able to use one implementation, like SBCL, or b) trying to roll my own half-assed implementation of a notoriously-huge language.

There is a very nice chunk of CL that is good at what it does, is fast as hell, and nice to code in. But there is _so much_ cruft attached!

</comment></comment></comment><comment><USER7> Right now I'd recommend anybody to just go with Clojure. Other then that, it's a pretty common-sense article. The Unix choice is controversial but truth is, most powerful lisps are not windows-compatible and definitely not windows friendly. Between emacs and vi I'd suggest the one more familiar, or a third one if that's the case. Lisp has a steep enough learning curve not to need a new environment to learn alongside.

<comment><AUTHOR> I love Clojure, but SBCL is seriously ass-kickingly good software as well. It's a matter of taste, I suppose.

Go with Clojure if you:

        Want / need to interop with Java
        Want to use Clojure's cool STM
        Want to be specifically functional
        Be one of the cool kids.

Go with SBCL / Common Lisp if you:

        Want to use cool stuff like Cells & Hunchentoot
        Want to make your way through PAIP, PCL, On Lisp
           (In other words, lots of documentation for CL!)
        Want a multi-paradigm language (CLOS is awesome)
        Be one of the cool kids.

<comment><USER8> I agree with you, but I thought I would add that Clojure has the dataflow library in clojure.contrib that does some of the same things as Cells. It doesn't have Mr. Tilton, though. ;)

<comment><USER3> Common Lisp is the only language that supports Mr. Tilton as a first-class object.

</comment></comment></comment></comment><comment><USER9> I can't say I agree with his platform of choice - Lisp In A Box on Windows has been excellent choice so far for me for learning Lisp. No problems at all.

</comment><comment><USER10> Seems dead to me - HN'd into in inoperability, perhaps?

[edit] Just noticed it's been posted to reddit, too. Surely it didn't stand a chance!

<comment><USER11> Google Cache: [http://184.108.40.206/search?q=cache:_OIX7VMqqToJ:deepaksurti...](http://22.214.171.124/search?q=cache:_OIX7VMqqToJ:deepaksurti.com/lisp/learning.html+http://deepaksurti.com/lisp/learning.html&hl=en&client=safari&gl=us&strip=1)

</comment></comment><comment><USER12> Also consider trying new version of newLisp (called newLisp-GS). A very nice version of Lisp with a built in GUI IDE. I just discovered it (again) the other day and was surprised by the vast documentation and ease of use. It's a great way to learn Lisp. Highly recommended.

<comment><USER13> That's one "lisp" with which no one need bother. see, e.g. <http://lambda-the- ultimate.org/node/257#comment-1901>

<http://www.alh.net/newlisp/phpbb/viewtopic.php?p=2776>

[http://groups.google.com/group/comp.lang.scheme/browse_frm/t...](http://groups.google.com/group/comp.lang.scheme/browse_frm/thread/997dc59b8ebb1749/af62130eefafd338?pli=1)

<comment><USER12> Those were written in 2004 and 2005! I know newLISP might not be thee lisp for everyone. All I'm saying is it's free, it's available on Windows, Mac, and Linux (and more), It's got a decent graphical IDE and it's Lisp. Give it a try before digging up 5-year old articles; no?</comment></comment></comment>


WebOS OSE 2.1 - <AUTHOR> https://www.webosose.org/blog/2019/11/20/webos-ose-2-1-0-release/ <comment><USER2> The Palm Pre was one of my favourite phones I've ever owned, that awful little plastic feeling keyboard and sharp bottom aside.

WebOS was very well designed, and IMHO only suffered due to underpowered hardware.

I've always wanted to do something with it's leftovers.

<comment><USER3> WebOS was great. The whole idea of "cards" iOS and Android blatantly stole from it. But even the TouchPad felt underpowered by the time it came out. It was, as one reviewer at the time put it, "An iPad 1 competitor in an iPad 2 world."

<comment><USER4> Well, you can say they stole it but Matias Duarte worked on both -- he was a VP for UX and design on WebOS and is now Google's VP of design. (And I don't think he's the only one from Palm to come over to Google, either) Soon after he joined is when Material Design made an appearance.

<comment><USER5> HP killed Palm in 2012; I suppose that's when Duarte changed jobs and went to Google.

Material Design was released end of 2014.

<comment><USER4> There were WebOS-like design changes in Android before the adoption of the official material design spec.

</comment></comment></comment></comment></comment><comment><USER6> If I remember right, the biggest innovation of webOS(other than the at the time especially, amazing card based interface that is so common now) was that its applications at their core were built on web tech (HTML, CSS, JavaScript) with some performance underpinnings to QT

It appears that also lives on!

[https://www.webosose.org/docs/guides/development/web- apps/we...](https://www.webosose.org/docs/guides/development/web-apps/web-app- overview/)

this would have been a very interesting twist of events if this aspect lived on as hardware became more capable especially

I think its safe to say though its going to be relegated to a niche at this point. Though I hope the best for this project

<comment><USER7> Kind of, Symbian already had the Web Widgets runtime when WebOS came out, so while not having Web at core, the idea of Web apps already existed.

Plus years before that, Microsoft explored the idea with Active Desktop and packaged Web apps.

</comment></comment><comment><USER8> Great, another OS project that hates screenshots...

<comment><USER9> This is the OS you see on LG TV's

</comment></comment><comment><USER10> If I can put this on a Raspberry Pi I may just finally justify building a Raspberry Pi tablet or one of those laptop kits.

According to:

[https://www.webosose.org/docs/guides/setup/system- requiremen...](https://www.webosose.org/docs/guides/setup/system- requirements/)

It does look to be very Raspberry Pi friendly!

<comment><USER11> downstream LuneOS has ports to various devices, including a demo running on Pine64's phone devkit. [https://youtu.be/G9lbXE_wWpQ](https://youtu.be/G9lbXE_wWpQ)

<comment><USER12> LuneOS seem dead,the site is gone

<comment><USER11> They had a release only a month ago:

[https://pivotce.com/2019/10/24/luneos-october-stable- release...](https://pivotce.com/2019/10/24/luneos-october-stable-release- eggnog-latte/)

</comment></comment></comment></comment><comment><USER13> man, this OS had so much potential. HP just panicked on this one and killed it so early

<comment><USER14> I loved the HP Touchpad, such a waste...

<comment><USER13> I bought it during the fire sale and my mom used it for a number of years till all support for it was taken away. It was perfect at that price

</comment></comment></comment><comment><USER15> Does anyone know if this has BeOS DNA (since Palm bought out BeInc)?

<comment><USER4> No, different PalmOS lineage.

</comment></comment><comment><USER16> Can we use this to replace android on android based smartphone?

</comment><comment><USER17> Does anyone know how different this is from the version used by LG for their TVs?

<comment><USER18> I'd love my TV to not run their goddamn spyware, to not autoinstall apps, to not run spam "Channel Plus" notifications.

<comment><USER19> You can still buy dumb TVs, and a highly recommend it. For example, LG has a (hard to find) "commercial lite" line; my 55" 4k dumb TV works great.

US: [https://www.lg.com/us/business/hospitality-tvs/commercial- li...](https://www.lg.com/us/business/hospitality-tvs/commercial-lite- displays)

Canada: [https://www.lg.com/ca_en/commercial- lite](https://www.lg.com/ca_en/commercial-lite)

<comment><USER20> What's the fundamental difference between a dumb TV and a smart one that's never configured to connect to WiFi?

<comment><USER21> Simplicity. Even without internet a smart TV has a certain amount of baggage (tonnes of menus and applications that require connectivity).

</comment></comment></comment></comment></comment><comment><USER22> It's confusing. I tried to find out who is behind it now and on what platforms it runs, and this is from the About page:

"webOS is a web-centric and usability-focused software platform for smart devices, which has proven its performance and stability in over 70 million LG Smart TVs. ...

The open source project of webOS, called webOS Open Source Edition (OSE), was announced in March 2018 under the philosophy of open platform, open partnership, and open connectivity"

The FAQ however claims:

Officially, webOS OSE 1.x and 2.0 only supports Raspberry Pi 3 and 4, respectively. However, as webOS OSE is an open source project, it is your call to decide whether to implement webOS OSE on any other form factors.

Also there is "Tier 3 support" for ROS 2, the robotic operating system, whatever that means.

It supports developing applications in C/C++ with Qt but also enactJs which is based on React.

</comment><comment><USER23> To sack it may have been one of the stupidest decisions ever by a CEO (Apotheker).

After the blow out sale they had something they were lacking before: huge customer base. But the idea to make money with software and apps instead of hardware may not have been compatible with HP business culture.

</comment><comment><USER21> Not sure if the HP Veer is supported (it had original webOS), but it was certainly the smallest smartphone I've ever used. Though the keyboard was hilariously cramped it represented a curious and strangely enticing challenge!

[https://www.youtube.com/watch?v=r34-89BtmQA](https://www.youtube.com/watch?v=r34-89BtmQA)</comment>


Recently re-launched our second MVP FOR FAMILY EVENTS - <AUTHOR> Looking for feedback on new mvp! :) We are an marketplace for family events, photo booths, grazing tables and more! <comment><USER2> What is the red number 3 that appears in the map?

Also, from the guideline: [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

> _In Submissions_

> _Please don 't do things to make titles stand out, like using uppercase or > exclamation points, or saying how great an article is. It's implicit in > submitting something that you think it's important._

</comment><comment><AUTHOR> Hi gus, they are listings but will definetly change it!

</comment><comment><AUTHOR> hypley.com</comment>


Jetbrains move into the issue tracking space - <AUTHOR> https://www.jetbrains.com/youtrack <comment><USER2> YouTrack was first released on 29 October 2009; 7 years ago (source: [https://en.wikipedia.org/wiki/YouTrack](https://en.wikipedia.org/wiki/YouTrack))</comment>


How to Lose Friends and Alienate People: Apple Watch Edition - <AUTHOR> http://www.newsweek.com/how-lose-friends-and-alienate-people-apple-watch-edition-331213 <comment><USER2> I just don't buy this "Wearing the Apple Watch makes you a Pretentious Douchebag" argument.

I bought it with Google Glass because it was ugly and pointed a camera at someone's face, all the time. But the iPod, the iPhone -- these were also expensive goods that cried out "pretentious consumer" at the time in comparison to alternatives.

Many watches cost much more money than the sport/watch editions of the apple watch.

<comment><USER3> > Many watches cost much more money than the sport/watch editions of the apple > watch.

True, but most people can't recognize "nice watch" and "omg look at me I'm rich! watch".

Apple Watch is instantly recognizable.

<comment><USER4> > True, but most people can't recognize "nice watch" and "omg look at me I'm > rich! watch".

Rich people know their own. Expensive watches ($40k and up found at Basel World) are meant as signaling devices to other rich people, not us lowly peons.

<comment><USER5> Well that removes the DB factor then doesn't it? I mean if only other DB's recognize your watch than it's OK.

I think the difference between the phone and the watch is that you have to actively go out of your way to make people notice you on your phone. The watch is pretty visible to everyone all the time; coupled with the fact that it's hard to resist responding to it and that you're now constantly looking at it does seem like it sends a rude message to those around you.

<comment><USER4> Yes, the Apple Watch DB factor is that it is expensive relative to very cheap watches, but cheap enough to be universally recognized.

When the watch is new, there will be a period of time where early possessors are seen as douche because of from those that want but don't have yet. However, in a few months, it will just become another watch that you either have if you want, or just don't want.

</comment></comment></comment></comment></comment><comment><USER6> I've had mine for about a week and I can confirm: this is pretty true. I am really good now about never pulling out my phone when in face to face presence with people; I can't say that about checking my (never before worn) watch.

"the Apple Watch inherently combines two of the rudest things you can do among friends—check your watch and look at your phone—and suggests that you do them incessantly."

</comment><comment><USER7> >it's "like having someone shout your name every 30 seconds, looking up and then having them reply 75 percent of the time with "nevermind."

The best metaphor for the flood of notifications I've ever seen.

</comment><comment><USER8> > You have reached the limit of 5 free articles a month

No Apple Watch needed..

<comment><USER9> Same. I don't ever read Newsweek. "How to lose readers and alienate people: The broken Newsweek free 5 articles a month edition"

</comment></comment><comment><USER10> I got halfway through reading that, well enough absorbed, and then an invitation to subscribe popped up in the middle of my field of view and nuked my attention. When are those going to stop being popular?

<comment><USER6> They became popular because they are effective. Expect more of that.

Get uBlock Origin and default deny third party js requests. Greylist on a per- site basis. The uBlock docs tell you how, though it is somewhat buried. Click the lock after every change to persist settings (this bit me many times).

<comment><USER11> > They became popular because they are effective.

I believe this, but I'd like to read more about their effectiveness. Is there a particularly good article on the topic?</comment></comment></comment>


Was Intrade being manipulated over the last month? - <AUTHOR> http://www.overcomingbias.com/2012/11/was-intrade-being-manipulated-over-the-last-month.html <comment><USER2> The author brings up some good points about the potential for arbitrage between prediction markets. But in my experience, intrade has a strong conservative bias. This is more likely a case of people betting on their (incorrect) political convictions as opposed to intentional manipulation.

I remember observing a similar thing around the betting on the supreme court healthcare decision. The odds were 3-4 points more against the legislation on intrade than they were on other sites. The comments were overwhelmingly partisan and conservative. "The Supreme Court will find this unconstitutional because Obama is a socialist."

The idea behind prediction markets is that people will only bet when they know something that the rest of us don't. But we shouldn't underestimate the human ability to convince ourselves that everyone else feels as strongly about an issue as we do.

<comment><USER3> In addition to what you're saying, it could have made sense to buy Obama calls, so to speak, if you think your taxes are going to go up significantly under his second term. That behavior would severely distort Intrade's purpose as a prediction market.

<comment><USER4> No, it wouldn't. The "purpose" of a prediction market is to let people buy and sell shares in a certain outcome, not to provide information.

That's just a nice side effect of a sufficiently liquid market.

<comment><USER3> True, I really should have said it would distort Intrade's _utility_ as a prediction market.

<comment><USER4> It doesn't distort its utility for the people who are hedging (on the one side) or speculating (on the other), and those are the actual clients of the prediction market.

But it does make it less useful for third party observers :)

</comment></comment></comment></comment></comment><comment><USER5> My friend and I also did some 'arbitrage', we almost didn't do it because we were sure we had something wrong, I mean, aren't markets supposed to be efficient? We even made a program that calculated optimal amounts and alerted us when the odds were aligned to a particular criteria taking into account exctraction fees, exchange rates, commission and stuff.

Our only explanation was that betfair (our other side) was mostly European while Intrade was mostly American so it is possible that lots of Intrade betters were buying into the media's attempt to try to make the race a lot closer than it was while the Europeans were not so biased. I don't know but it is a simpler explanation than someone purposely losing money because they think influencing a prediction market would affect the actual outcome?

<comment><USER4> _aren't markets supposed to be efficient_

To a certain extent. Largely because of people doing arbitrage. So, if all arbitrageurs called it quits because they thought markets are automatically efficient, well, they wouldn't be.

Did you make much money?

<comment><USER6> There's an economics joke as old as the hills:

An economist and a non-economist are walking down the street when the non- economist notices something on the ground and says, "hey there's a $10 bill!" The economist replies, "Impossible. If there was a $10 bill on the ground, someone would have picked it up already."

<comment><USER7> On my summer holiday this year I was walking along Hadrian's Wall & looked down to see a £5 note being blown along the path by the wind. Picked it up & was instantly reminded of this joke :)

</comment></comment></comment></comment><comment><USER8> A commenter over there mentioned that a similar phenomenon was noticed during the 2008 presidential election, and quoted John Delaney (Intrade founder, now deceased):

 _Mr. Delaney conceded there had been erratic behavior - including spikes in the direction of Mr. McCain and away from Barack Obama "by up to 10 points." And he said "trading that caused the unusual price movements and discrepancies was principally due to a single 'institutional' member on Intrade."

But, after interviewing members of the institution involved and tracking its trades, Mr. Delaney wrote in an e-mail message on Saturday: "I do not believe based on our investigations and over seven years' experience in such matters that the trading on Intrade was designed or motivated to artificially inflate McCain's chance of winning."_

<http://www.nytimes.com/2008/10/20/business/20predict.html>

<comment><USER9> could this be hedging against a romney win? for example, if you're an investor in green tech, then intrader shares in romney would be a way to protect yourself.

but i imagine the numbers are too small?

</comment></comment><comment><USER10> Over betting markets as a whole, it's hard to distinguish 'manipulation' from simple 'overconfidence' by a certain side.

The difference between InTrade and Betfair over long periods is the large mystery... though given the lags/fees in getting money in, and the fact the markets aren't that large -- so maximum profits aren't very high -- seem likely to be part of the answer.

There's a reasonable Robin-Hansonian-case to be made that attempts at prediction-market manipulation improve market accuracy over the long term, by increasing the rewards to those taking sides against the manipulator.

</comment><comment><USER11> I've been wondering about this for week. Is there a statistical smoking gun anywhere?

<comment><USER12> One could look at the state-by-state markets in the weeks leading up and see if the probability predicted differed greatly from the main market. It would be far trickier to manipulate the markets state by state in such a way that their probable outcomes aligned with the probable outcome of the national markets.

I just looked at the InTrade state numbers from 11/2 (which I have on a spreadsheet) and running a few dozen simulations I was getting Obama winning about 80%. That's a pretty significant difference from where the national numbers were on 11/2 (I think about 66% maybe?)

Of course, if they differ it might just be because the Intrade market is imperfect, in which case it would represent a nice arbitrage strategy for the next election...

</comment></comment><comment><USER8> Nate Silver wrote about this twice:

[http://fivethirtyeight.blogs.nytimes.com/2012/11/06/live- blo...](http://fivethirtyeight.blogs.nytimes.com/2012/11/06/live-blog- the-2012-presidential-election/#differences-in-political-betting-markets- persist)

[http://fivethirtyeight.blogs.nytimes.com/2012/10/24/oct-23-t...](http://fivethirtyeight.blogs.nytimes.com/2012/10/24/oct-23-the- virtues-and-vices-of-election-prediction-markets/)

</comment><comment><USER13> One Intrade commenter from London claimed he was set up to earn about $20,000 in arbitrage against Betfair. If you expect the manipulation to continue over a period of time (which I certainly did, and wished I could register on other betting sites), it's worth it to deposit larger sums of money with bank transfers despite the wait.

At one point I wondered whether the manipulators were making large purchases once per day and whether this could explain why the different betting sites never came back in line with each other. In that case, a savvy arbitrageur might take advantage of prices while they're at their widest differential, and then wait to buy more the next day. I thought I saw a pattern like this going for a few days in a row but it was gone by the time I felt confident enough to trade around it.

</comment><comment><USER14> If a prediction market is famous enough to affect an election, it will generally cost more than $1 million to manipulate. I doubt that voter turnout would have increased if Intrade had predicted a Romney win -- too few Americans know what Intrade even is.

<comment><USER15> I'm sure all political reporters know what Intrade is. If you were going to spend money to move the market, those are the people you're most trying to influence.

I'm still personally skeptical of the whole manipulation theory, however. It's probably just a combination of too many conservatives buying with their heart instead of their head, and too few active arbitrageurs taking them to the cleaners.</comment></comment>


WeWork considers dramatic valuation cut in IPO ($10-12B) - <AUTHOR> https://www.reuters.com/article/us-wework-ipo-curbs-exclusive/exclusive-wework-considers-dramatic-valuation-cut-in-ipo-idUSKCN1VY12V <comment><AUTHOR> For context, they've raised 12.8B, as per TechCrunch[0].

[0]: [https://www.crunchbase.com/search/funding_rounds/field/organ...](https://www.crunchbase.com/search/funding_rounds/field/organizations/funding_total/wework)

Some good commentary: [https://twitter.com/profgalloway/status/1172714140781223936](https://twitter.com/profgalloway/status/1172714140781223936)

<comment><USER2> Softbank to buy 25% of the shares sold in the IPO just to shore it up? Wow, when this thing pops it's going to be a blood bath.

</comment></comment><comment><AUTHOR> Previous thread that I missed: [https://news.ycombinator.com/item?id=20962720](https://news.ycombinator.com/item?id=20962720)</comment>


It's time to fix the startup funding landscape in Kenya - <AUTHOR> https://medium.com/@sankara_/its-time-to-fix-the-startup-funding-landscape-in-kenya-68aba60a45d7 <comment><USER2> it seems the bias issues exist both in SV and the emerging world</comment>


Web Scraping Hotel Prices for Fun and Savings - <AUTHOR> https://jordan-wright.github.io/blog/2015/02/21/web-scraping-hotel-prices-for-fun-and-savings/

<comment><USER2> Check out Expedia API.</comment>


Beginner Learning Python: 2.7 or 3? - <AUTHOR>

I have taken the dive to learn Python (currently only experience I have is HTML, CSS, JavaScript, jQuery) and I'm using Learn Python The Hard Way.
However, this has me using Python 2.7 and I know that this is the last of Python 2.x and Python is what I might need to know going forward.
Should I look somewhere else to learn (I've gotten just about halfway through LPTHW) or stick through this? I guess it depends how different they are and if it's worth learning Python 2.7 if I'll just be unlearning and relearning certain aspects.
What should I do? <comment><USER2> There's very little to unlearn; go with 2.7 and move over to 3.x with the rest of us when we all get around to it, if we ever do ;)

<comment><USER3> > if we ever do

No kidding... Here we are, how many years after the release of Python 3? And still, there are many libraries that have yet to be ported to Python 3. These deficiencies make Python 3 an impossible choice for some tasks. The slow adoption of Python 3 is not without reason as many have pointed out, although Armin Ronacher's recent blog post[1] stands out as one of the better illustrations of the frustrations with Python 3. I have to say, as a Pythonista, I am worried about Python. I wonder if things will become increasingly fragmented...

[1] <http://lucumr.pocoo.org/2011/12/7/thoughts-on-python3/>

<comment><USER4> The adoption rate is expected, people should stop complain about the python3 situation when it's not that bad.

[http://sayspy.blogspot.com/2011/01/my-semi-regular- reminder-...](http://sayspy.blogspot.com/2011/01/my-semi-regular-reminder- that-python-3.html)

<comment><USER5> It looks like a patch for Django was just finished relatively recently.

For what it's worth, based on my experience with Ruby 1.8/1.9 in Rails, which is a smaller language change that Py2=>Py3, it will take years and a lot of community work before Django on Python 3 is a plausible solution.

Rails officially supported Ruby 1.9 as early as Rails 2.3 (which was released in February 2009), but a large number of commonly used packages weren't really working for some time after that. Additionally, we made a number of mistakes our initial Ruby 1.9 support (in Rails 2.3), which we corrected in Rails 3.0.

My guess (again, based on my experience with false starts in Rails) is that merging the patch in question will take a while, and that it will require some time after the patch is initially merged before people consider Py3 a valid target for Django apps.

<comment><USER6> I don't know Ruby, but was the difference between Ruby 1.8 and 1.9 as drastic as the change between Python 2.7 and 3.0? Programs written in Python 3.0 are not backwards compatible. Is it the same with programs written in Ruby 1.9? I'm really asking -- I don't know the answer.

<comment><USER5> Ruby did us a big favor and made it possible to implement something like Rails in a way that switched between Ruby 1.8 and 1.9 at runtime. There are no changes to the 1.9 parser that cause it to puke on 1.8 syntax.

My understanding is that in Python, you need to use the 2to3 tool for a program of any non-trivial size to have a single codebase that targets both. Please correct me if I'm wrong, as I'm only picking this up by osmosis with the Python community.

Ruby 1.9 is also significantly more runtime compatible with Ruby 1.8 than Python 3 is with Python 2. For example, the object model and semantics for creating classes and object is entirely unchanged between Ruby 1.8 and Ruby 1.9. The Unicode change took great pains to remain compatible with programs using BINARY data for ASCII-only characters, for instance (I personally believe that this was a mistake going forward, but it results in better-than- expected backwards compatibility with Ruby 1.8 programs mixing source code and external ASCII-only data).

As a result, even though Python 3 was released around the same time as Ruby 1.9.1 (the first stable Ruby 1.9 release), the Ruby community is much further along the adoption curve than Python is.

<comment><USER6> Sorry for the delayed response -- I do want to respond to several points. First, you're sort of correct that you need the 2to3 tool for a program to target Python 2 and Python 3. There are certain programming techniques (such as "from __future__ import *) that will allow you to write you code in such a way that it will run on both Python 2 and 3, although I've not used these on any project of size. But if you wrote your code using plain vanilla 2.x, then you'd need to use the 2to3 tool, although again I've not used it myself and have heard mixed reviews. Unicode is probably the biggest change from Python 2 to 3 that introduces incompatibilities, although I think there are tricks for dealing with that as well. I like Ruby's approach to Unicode based on what you described. Why do you think this is a mistake? I expect you are correct that Ruby is much further along in moving from 1.8 to 1.9, because it sounds like Ruby has handled the upgrade path well (to be honest, I'm not sure Python has).

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I thought I was on Stack Overflow for a moment, because this question always seems to come up.

[http://stackoverflow.com/questions/5478518/python-2-or- pytho...](http://stackoverflow.com/questions/5478518/python-2-or- python-3-which-should-i-begin-with) [http://stackoverflow.com/questions/170921/to-learn- python-2-...](http://stackoverflow.com/questions/170921/to-learn- python-2-then-3-or-3-from-the-start) [http://stackoverflow.com/questions/1222782/should-i-start- wi...](http://stackoverflow.com/questions/1222782/should-i-start-with- python-3-0) [http://stackoverflow.com/questions/2090820/what-version- of-p...](http://stackoverflow.com/questions/2090820/what-version-of-python- should-i-use-if-im-a-new-to-python)

</comment><comment><USER8> Stick with Python 2.7 at the moment; there are many reasons for this which I will not go into. But, later on if the community/if you decide to switch more towards Python 3, then you will not be 'unlearning' much.

I recommend LPtHW and then Dive into Python. After going through those two books you will have a really goo grasp on the Python Programming Language. After which start coding and (possibly) get involved in some Python-based open source project (or at least study the code a bit).

<comment><USER6> May I also recommend How to Think Like a Computer Scientist, Python version, 2nd edition? This edition uses Python 2. _.

I agree with everyone recommending Python 2.7, but do be sure you use the latest iteration of the Python 2._ series. Python 2.4 and even 2.5 are missing some great new features, many of which show up in Python 3.0. To me, Python 2.7 is the best of both worlds -- all of Python 2.x's great features and familiarity, combined with most of the real needed changes in Python 3.0.

I totally agree with Armin when he writes that there should be a Python 2.8 and 2.9. A better upgrade path is needed.

</comment></comment><comment><AUTHOR> Thanks for all the replies everyone! It definitely seems like it'd be worthwhile just going through and learning 2.7 then and using related libraries to create what I want (once I've learned and am able to do so).

However, this has me thinking. It seems like Ruby (and related frameworks, like Rails) don't have the backwards-compatibility issue that is seemingly plaguing Python?

The newest version of Ruby was easily adopted (compared to Python 3) as it remained backwards-compatible. Even upon researching the next evolution of Ruby (2), it seems that it won't be huge leap and, again, will remain backwards-compatible.

My question is... if I'm looking to start building a website now and use Python 2.7 (and likely Django), what would I do when the time comes and Python 3 is really the go-to version?

Would I need to rewrite the code entirely? Will the older code ever become compatible or easily transitioned?

It seems like Ruby would be the better choice to avoid possible fragmentation issues?

I could be entirely wrong here though. So, please, if someone could help me with this, that would be great. I went through some of Learn Ruby the Hard Way. And I'm willing to switch over to Ruby.

I like them both in different ways in terms of syntax/readability. But I don't know enough to really make a decision beyond that.

But this Python fragmentation between 2 and 3 makes me worried. I'd feel safer choosing to learn Ruby. I don't know though.

<comment><USER9> Once you learn Python version:X, you won't care about what version you're using.

Forget about the version crap and focus on learning.

</comment></comment><comment><USER10> Keep going. Until the important libraries catch up, you should be using 2.7 for doing most projects at the moment. You won't have wasted much learning in the mean time.

Happy New Year.

<comment><USER11> _Keep going. Until the important libraries catch up, you should be using 2.7..._

It's true some important Python libraries still only work on 2.X. And, as someone who's been writing the majority of my real-world production code in Python 3 for over nine months now, I've found it's not necessarily a barrier.

So, for those of you not coding in 3 but would like to, what are these missing "important libraries"? What Python libraries do you need, that do not have quality ports to Py3K yet?

<comment><USER10> For me, Django.

</comment></comment></comment><comment><USER12> From Learn Python The Hard Way: <http://learnpythonthehardway.org/book/ex0.html>

A programmer may try to get you to install Python 3 and learn that. You should tell them, "When all of the python code on your computer is Python 3, then I'll try to learn it." That should keep them busy for about 10 years.

</comment><comment><USER13> Is the goal here to learn how to write code in Python or to learn the specifics of each version of the language? If the goal is to just learn Python, I don't think it really matters which version you learn since the general basics of the language are pretty much the same between versions. In other words, a for loop is still a for loop.

Asking Google came up with this link: <http://wiki.python.org/moin/Python2orPython3>

I'd personally start with 2.x so that you can understand the history of Python and then make sure to have an understanding of what is changing in 3 via links like this: <http://docs.python.org/py3k/whatsnew/3.0.html>

Finally, if this is for a job, I guess one thing would be to see what the requirements of the job are. If you need to use Python 3 for your job, your best bet is probably to learn Python 3. =)

</comment><comment><USER14> The difference between 2.7 and 3 is, to be honest, nothing big in terms of programming. I use both mostly without noticing the difference, because some libraries are still on old versions. For now, use import __future__ to help ease the transition and don't stress.

</comment><comment><USER15> If your code heavily uses unicode texts, it will be easier to start with python 3, because all the iterators word on wide-chars instead of byte ones, and you don't have do some magic to handle them properly.

</comment><comment><USER16> 2.7 if you want to release anything AND consume other libraries. 3 if you never intend on using other than a learning exercise or will write everything from scratch.

</comment><comment><USER17> What versions of python are on your machine?

My MBP (leopard -> snow leopard -> lion) has python versions 2.5, 2.6, and 2.7 (and there's a nice way to change the default python version). I fully suspect python3 is not there by default.

</comment><comment><USER18> New projects should go with Python 3, if possible. But really, the two languages are not very far apart. Do whichever if you are just learning and want to make small temporary things.</comment>


Another jQuery knob plugin - <AUTHOR> http://www.domitable.com/static/side-projects/jquery-plugins/knobRot/demo.html I'm new to this site but a work colleague suggested I should post this here after showing me the other jQuery knob plugin earlier today.
knobRot is completely different in its implementation.  It uses sprite sheets which can be generated with KnobMan or any other design / animating package.
The interaction is click-and-drag based, and can be either horizontal or vertical.  It has center detenting (with configurable snap threshold), and can be configured to have any number of steps in any range of numbers.
It even works in IE.
If you do manage to spot any bugs, feel free to add them to my issue tracker here: https://github.com/AlexanderParker/knobRot <comment><USER2> These seem much more user friendly. They remind me of some of the DJ/audio software knobs I've peeked at.

<comment><AUTHOR> Thanks, that was sort of what I was getting at. I'm building a browser based synth (not quite ready yet), and these are for it.</comment></comment>