SSL: Intercepted today, decrypted tomorrow - <AUTHOR> http://news.netcraft.com/archives/2013/06/25/ssl-intercepted-today-decrypted-tomorrow.html <comment><USER2> I've been saying this for a while now (well, a couple weeks anyway). The defeat of the cryptography behind SSL communication is an inevitability given sufficient time, so it would absolutely behoove intelligence agencies to store _everything_ , including encrypted data. As Snowden said, one of the dangers of these programs is the possibility of going back in time to paint a normal life in the context of a wrongdoer. In a few decades, when powerful computers and algorithms have all but obliterated current encryption technologies, all of your current "safe" data might as well have been sent plaintext.

Or the NSA could just demand private keys via FISA letter.

<comment><USER3> Why do people keep repeating this trope that it's only a matter of time before encryption will be broken?

Use a Diffie-Hellman style protocol to create and exchange a secret key for each session, use AES-256 if you're ultra-paranoid, then forget the session key. It even works today, and there are no known attacks against AES that can reduce the work enough to beat the heat death of the universe.

<comment><USER4> I'll bite.

Because we can't really predict the future and some far-fetched science- fiction sounding things such as quantum computers and future advancements we can't currently conceive of may completely and utterly change that, perhaps even overnight.

From a paranoid security point of view, it's definitely a bad idea to assume your cryptography is perfect and always will be.

<comment><USER5> Unless it's a one time pad with good RNG. In that case it is indeed a good idea to assume your cryptography is perfect and always will be.

<comment><USER4> Just don't lose the key... As I'm sure I don't have to tell you.

What book would you use? That's how "they" used to do it.

</comment></comment></comment></comment></comment><comment><USER6> So the only solution is to increase the effort to decrypt. And for that we have to either/both increase complexity of the crypto (hard) and the amount of noise traffic.

Changing the crypto would require lots of time to roll out new platforms and updated clients.

Hence, the only feasible way to save the internet is to convert all porn sites to https. If you work on a ISP, block all porn connections over http, nature will find a way and the https sites will popup overnight.

<comment><USER7> With SNI[1], the hostname is sent unencrypted (so that you can host more than one domain in a single IP address), so the watchers can simply filter out porn domains.

[1] [https://en.wikipedia.org/wiki/Server_Name_Indication](https://en.wikipedia.org/wiki/Server_Name_Indication)

<comment> X-Istence It is sad, but by the time SNI is a viable extension to use, IPv6 should be in full swing and SNI will no longer be required :-(.

<comment><USER8> SNI is already plenty viable if you have few/no IE users. That's certainly not everyone, but it's good enough for some of us.

<comment><USER9> And while I know cPanel/WHM doesn't really belong in the same discussion as "encryption possibly resilient against state level attackers"… I note with interest that the latest cPanel update (11.38) includes SNI support. That's "switched on" an _huge_ userbase of webhosting that can now grab a cheap/free SSL cert without needing dedicated ip addresses, and who can then tell users "you'll need to upgrade your browser to use our secure site - have you tried downloading Chrome?" ;-)

</comment></comment></comment></comment></comment><comment><USER10> Popular libraries such as OpenSSL and GnuTLS support TLSv1.2 (NSA Suite B Crypto[1]). Typically this means preferring or forcing TLS_ECDHE_ECDSA_AES_256_GCM_SHA384 with elliptic curve CURVE-SECP521R1 for maximum security. Refer to [2] for more information on the elliptic curve key sizes recommended to be used with various symmetric key sizes.

The notable problem for many users (particularly client-side) is libraries such as NSS not yet supporting TLSv1.2[3] and therefore not supporting NSA Suite B Crypto.

[1] [https://en.wikipedia.org/wiki/NSA_Suite_B_Cryptography](https://en.wikipedia.org/wiki/NSA_Suite_B_Cryptography)

[2] [http://www.nsa.gov/business/programs/elliptic_curve.shtml](http://www.nsa.gov/business/programs/elliptic_curve.shtml)

[3] Refer to [https://en.wikipedia.org/wiki/Comparison_of_TLS_implementati...](https://en.wikipedia.org/wiki/Comparison_of_TLS_implementations) for a comparison of libraries providing TLS crypto.

</comment><comment><USER11> Can someone explain why we don't get ECDHE on ubuntu 12.04 by default?

On ubuntu 12.04 my apache has:

        SSLCipherSuite HIGH:MEDIUM:!ADH:!MD5

` openssl ciphers 'HIGH:MEDIUM:!ADH:!MD5'` shows a ton of ECDHE stuff in the list. I am not sure what it takes to get apache to use the ECDHE ciphers.

<comment><USER12> Why not by default? Ask ubuntu and report a bug: [https://bugs.launchpad.net/ubuntu/+source/apache2/+filebug](https://bugs.launchpad.net/ubuntu/+source/apache2/+filebug)

How to do it for yourself: [https://news.ycombinator.com/item?id=5171250](https://news.ycombinator.com/item?id=5171250)

<comment><USER13> I think your first link may be incorrect? I also tried looking through the tracker but I wasn't able to find a relevant bug associated with this. Would you mind posting the link to the bug?

<comment><USER11> The second link doesn't work as far as I can tell.

I think the person that says we need Apache 2.4 to get ECDHE is correct. Adding ECDHE ciphers to the Apache 2.2 config doesn't seem to do anything. Following the advice in the second link actually turns off PFS for chrome compared to the default setup.

<comment><USER12> I have a bad habit of linking to HN posts and assuming that people understand I mean "look at the comments." The Cloudflare instructions break chrome? That is my bad, I have not verified them myself recently. I usually use the cloudflare settings or jacob's duraconf[1]. Thanks to joeyh's mr I usually have duraconf checked out on any machine that I use.

[1] [https://github.com/ioerror/duraconf](https://github.com/ioerror/duraconf)

<comment><USER11> Yes, the cloudflare advice does break chrome PFS. With the defaults, chrome shows:

        CAMELLIA_256_CBC, with SHA1 for message
        authentication and DHE_RSA as the
        key exchange mechanism.

By changing to the suggestion in the comments, the encryption downgrades to:

        The connection is encrypted using RC4_128,
        with SHA1 for message authentication and
        RSA as the key exchange mechanism.

<comment><USER12> Yeah, I actually just noticed that cloudflare was using nginx so the qualys scan was not indicative of the cloudflare apache setup. I apologize I got distracted watching those genetic cars.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> The big question is how are they going to prove the majority of the SSL traffic was from x person? The majority of identity would have to be via IP address. The IP stuff -> personal identity stuff requires it to be near present time does it not?

... unless the SSL content contains identifying information. But what percentage would that be in the future?

<comment><USER15> > The IP stuff -> personal identity stuff requires it to be near present time > does it not?

Collect logs from ISP that show IP <-> account. Many ISPs keep these logs around for a long while as it is.

<comment><USER7> An account is not a person, and thankfully some courts are recognizing that: [https://www.techdirt.com/articles/20130218/21462222020/yet-a...](https://www.techdirt.com/articles/20130218/21462222020/yet- another-court-says-ip-addresses-are-not-enough-to-positively-identify- infringers.shtml)

</comment></comment></comment><comment><USER16> Governments can just run a "Real CA" trusted by most common web browsers, then that government run CA could occasionally emit new certificates of sites that the government wants to me man in the middle for. Then government does not have to decrypt the information as they are already man in the middle. Some users get the sites original certificate, others get the MITM certificate and interception.

Thus trusting central CA is somehow broken from a security point of view. How many end users really check the certificates is coming from the right CA and has correct fingerprint?

Then you do not need to decrypt the SSL traffic. Much easier.

</comment><comment><USER17> This sounds like a brilliant solution to a difficult problem, but I fear it only solves a portion of the problem. It deals with the issue of stolen keys, but how does it protect against cryptanalysis? If an organization were able to reveal the a key with a replicable process, couldn't it be simply repeated for each session key?

<comment><USER9> The hope is that the "replicable key revealing process" is difficult and time consuming - which is worthwhile for an attacker with sufficient resources if going to the effort to reveal a key results in breaking every encrypted session from that source. PFS means they'd go to all that effort to reveal an ephemeral key for only one session.

It'd be _well_ worth the NSAs time/money to burn 10 million cpu hours brute forcing Google's TLS key if it gave them every encrypted session's cleartext past and future. It's not practical to burn 10 million cpu hours for every SSL session connecting to Google's servers.

<comment><USER8> Although even with PFS, cracking Google's private key would still give them access to every _future_ encrypted session, until the key changed. So PFS is no panacea here.

<comment><USER18> If I understand properly, having Google's private key only allows you to do MITM attacks, not to passively decrypt traffic using PFS algorithms.

<comment><USER8> Absolutely. This is why PFS protects past sessions, because you can try to decrypt the past, but you can't MITM the past.

But do you think the slightly harder task of running MITM attacks (as opposed to simply siphoning off a copy of the data as it passes) would thwart an entity like the NSA? I really doubt it. PFS or not, a leaked private key means game over for all data transferred after the leak and until that key is replaced.

And that's my point, the reason I made the statement you're replying to: it would still be well worth the NSA's time to crack Google's private key, and PFS doesn't somehow make that scenario not bad. Your statement is correct, but, I argue, not terribly relevant.

(Sorry if this post sounds confused; it's late.)

<comment><USER19> > But do you think the slightly harder task of running MITM attacks (as > opposed to simply siphoning off a copy of the data as it passes) would > thwart an entity like the NSA?

MITM attacks have the disadvantage that they can be noticed by communicating the session key through a second, more secure, channel, for example one using a client certificate.

</comment></comment></comment></comment></comment></comment><comment><USER20> Doesn't SSL/TLS use a per-session symmetric key that is exchanged using the asymmetric server keys? Is the point of this article that even that per- session private key would be logged or re-generated and therefore prone to attack if the server private key were exposed?

<comment><USER21> If an eavesdropper records _all_ traffic between client and server, he/she will also record the encrypted session key. If the server's private key is compromised, the eavesdropper can decrypt the session key and use it to read the rest of the communication for that session.

<comment><USER20> Thanks for clarifying, that makes sense.

</comment></comment></comment><comment><USER22> I'm a bit surprised to see duckduckgo.com not using PFS :/ Hopefully they implement it soon.

<comment><USER23> From [https://duck.co/topic/duckduckgo-ssl-not-secure- enough#28469...](https://duck.co/topic/duckduckgo-ssl-not-secure- enough#28469000001486713) :

> We're aware and are planning accordingly. Thanks for the heads up, though.

</comment></comment><comment><USER24> Is there a browser plugin that indicates more information than the padlock icon such as which cipher suite is being used for the current SSL connection and whether that suite uses PFS?

<comment><USER25> Chrome does it by default, just click on the padlock. Example:

[http://i.imgur.com/k1bhh77.png](http://i.imgur.com/k1bhh77.png)

</comment></comment><comment><USER26> Speaking of SSL attack, are BEAST and CRIME attacks on SSL still a problem in the wild? Have most browsers been patched against these kind of attacks?</comment>


50 Cent Tweets, Tiny Stock Soars - <AUTHOR> http://articles.moneycentral.msn.com/Investing/top-stocks/blog.aspx?post=c00e87b0-01a3-435e-8638-549e5d55170c?gt1=33009 <comment><USER2> Right now 50's lawyers are telling the SEC that he will never do this again and apologizing profusely in efforts to at least stave off a trading ban and more likely avoid jail.

The death knell for 50 in these tweets are explicit instructions to take a position in the stock, guarantees on returns, the normally low trading volume on the stock, and of course the undisclosed position that 50 had in the stock. It's basically a recipe on how not to promote a stock. Doing your own IR is about as smart as being your own lawyer.

Slinging stock is somewhat similar to slinging rock in that there are a lot of things you can do which will land you in jail. 50 should know better than this.

<comment><USER3> All that trouble for ~$10M in paper profit. Compare this to the $400M he seems to have netted from his investment in the drinks company Glaceau a few years ago.

<http://www.guardian.co.uk/music/2007/may/29/news.50cent>

<comment><USER2> He seemed to be a pretty savvy investor.

That's also one of the worst points about what he did, with his portfolio and status as an accredited investor he's not going to get much leeway for not knowing this was illegal.

</comment></comment></comment><comment><AUTHOR> I posted this because my first web client was a journalist for the WSJ who went to jail in the 80's for insider trading, doing a similar scheme of buying stock in a company before he wrote a financial column about it. Paper comes out, stock soars and then makes a boatload.

I don't know much about the market, but isn't this essentially the same scheme? And if that was considered insider trading, wouldn't pump & dump on Twitter be just as bad?

This is what I'm referring to: <http://www.bizjournalismhistory.org/1980_1984.htm>

<comment><USER4> So I can't make a post about how awesome the company I have stock in is and profit from it? I thought I just had to disclose that I was a owner of that stock to avoid problems.

<comment><USER5> There was similar case where someone would verify the academic credentials of CEOs of publicly traded companies in order to discover fraud and misrepresentation.

After discovering a flaw, he would short the company's stock, then go public with the news.

I maybe mistaken, but I believe that was not considered insider trading and his methods were a valid way to invest and make money. I think that is quite a brilliant strategy.

<comment> brown9-2 It can't be insider trading if you don't have any information from "inside" the company.

<comment><USER5> You are right. I used the term incorrectly, I meant it as a blanket term for all investment fraud.

</comment></comment></comment></comment></comment><comment><USER6> In response to the auto-playing video advert on that page:

I have nothing wrong with advertising on the web, I'm not against commercialisation of the web. I fully understand that the economics of the web require that we trade easy cheap access to information for small portions of our eyeball-time, but the recent trend towards full-screen interstitial advert pages, large banners hovering over content and autoplaying audio/video adverts, as well as the not-so-recent rise of multi-page articles to inflate CPM impressions is _really bad_ for the web, and to me heralds a return to the bad old days of popups and shoot the monkey adverts from the 90's. We don't need to reward this with pageviews.

I know the alternative many will suggest is adblock, but that option is equally as damaging - it hurts content providers as much as gratuitous advertising hurts content consumers.

So please, disable adblock, and next time you find a page carrying an interesting story but with unacceptable adverts, find another source[1] to share, or downvote/flag it.

The web doesn't need this.

[1] - <http://www.google.co.uk/search?q=50+cent+stock>

edit: I mean: It's a web, a network, in which we exist, and it would be great to reach an equilibrium where people producing content can get paid, and consumers can not get treated like cattle. The alternative is an ever- escalating war between advertisers and advert blockers, which ends up with no- one having a financial incentive to produce great content...

Although as I say that, I realise that the incentive for creating my recently- popular genetic algorithm hello world thing [2] wasn't financial at all. So maybe fuck it just block the damn ads. Hmm. Your thoughts?

There are a great many people who are professional bloggers though, and I think the advertising model really is key to the web - we just need to find a way to make it mutually beneficial (without encouraging click-fraud). Really the ball is in the advertiser's court, but somehow I think they're in it for short-term gains rather than the long-term well-being of the web.

[2] [http://www.puremango.co.uk/2010/12/genetic-algorithm-for- hel...](http://www.puremango.co.uk/2010/12/genetic-algorithm-for-hello-world/)

<comment><USER7> The auto-playinf video advert is actually an auto-playing video report of the 50 cent stock issue. It just happened to have an advert before it, as web video is wont to do.

<comment><USER6> then they're hurting themselves as well as me.

Hurting themselves by putting up a barrier between eyeballs and their content. I mean it's such a silly short sighted pattern. "I know, we've a really popular village noticeboard which people have come to trust and tell their friends about. Let's put a layer over the noticeboard with adverts that you have to lift up before you can see the actual noticeboard underneath. Soon we'll be rich!". Which they will be, but after 3 months everyone in the village will get wise and stop looking at the noticeboard. And then the noticeboard will be covered in spiderwebs and hornets nests and everyone in the village will have to have their houses fumigated and eventually the noticeboard will be burned down, but the fire will spread and their fumigated houses will also burn down because of the chemicals and so on.

I've seen it happen a hundred times. When will people learn!

<comment><USER8> Sorry, but the fact is obtrusive advertisements like this work. Most people out there don't think like HN readers.

<comment><USER9> They work in that apparently advertisers pay to have them inserted. I dunno if they work in that people watch them.

</comment></comment></comment></comment></comment><comment><USER10> 50 Cent falls to $0.39 on rumors of Jail time :-)

</comment><comment><USER11> It is going to be fun watching the first SEC enforcement action based on tweets. It is also going to be fun watching securities lawyers try to create a valid disclaimer that fits in a tweet.

<comment><USER2> disclaimer.ly? The service that shortens disclaimers.

<comment><USER12> disclaim.er?

It's time for Eritrea to join Tuvalu (.tv) on the TLD money train!

</comment></comment></comment><comment><USER13> Does anyone know what law firm represents 50 Cent, and how I can get some shares in it? Talk about easy money!

<comment><USER14> Shouldn't you be shorting it? If they can't keep him from doing something that stupid, then they haven't coached him right. (Even if they'll rake in some money now, defending him.)

<comment><USER15> "keep him from doing something that stupid"

I think 50 is going to do what he wants - law firm not withstanding...

</comment></comment></comment><comment><USER2> This sounds like insider trading / pump and dump fraud. I don't think a safe harbor statement regarding forward looking statements would even fit in a tweet.

</comment><comment><USER15> I can feel the down votes, but does anyone else think that insider trading (not saying this necessarily is) should be legalized?

My reasons:

\- The information current SEC disclosures release is well known to be a (legal) 2nd set of books that has every interest in painting a rosy picture. \- If gaps in information could be narrowed quickly (i.e. from insider knowledge), stock prices would reflect the realities quicker and best. \- Large stock manipulation can't come from people who don't have money to move markets, but info almost always will come from non-traders. This means they traders would be willing to pay insiders for knowledge to trade on the info - doubtlessly using a contract so the knowledge would be legit. \- If a company isn't treating their employees well (pay, moral, etc.), and has many skeletons in the closet: it would be at risk from insiders trying to take advantage of such a scheme.

Back to 50: BBuffone, below asked what the difference between plugging Vitamin water and stock is - I say that the difference is only an artificial one.

</comment><comment><USER16> "Man, making money like this is sooo easy it should be illegal!"

"ah, Mr Cent.."

</comment><comment><USER17> I saw comments in an article here on HN a few days back talking about what 50 did. Some speculated that he could be reported for it and possibly legally challenged, is this correct, has be broken the law?

<comment><USER18> It's low level pump and dump, CNBC does it every day so he should be fine.

<comment><USER3> CNBC does not directly benefit financially from price increases in stocks they cover. In this case, Mr Jackson (50 Cent) has a financial interest in the company and does participate in stock price gains - That is where I see a _significant_ difference.

</comment></comment></comment><comment><USER19> Is 50 having tough times? A couple of weeks ago he was asking his Twitter followers for $100 to shovel the snow off their driveways: [http://nymag.com/daily/entertainment/2010/12/50_cent_shoveli...](http://nymag.com/daily/entertainment/2010/12/50_cent_shoveling_snow.html)

<comment><USER20> He was just setting an example for people

</comment></comment><comment><USER21> This is the perfect plot for a dilbert comic:

pointy haired boss: "welcome our new financial advisor: mr. 50 cent."

dilbert: "I don't see him"

pointy haired boss: "oh, we just follow him on twitter, it's cheaper that way"

</comment><comment><USER22> The article says it's unclear what the company does, but after reading 50 Cent's tweets the other day I looked into it and it seems like they have the marketing rights to 50's new line of headphones: <http://sleekby50.com/>

_Disclosure: I do not own any shares of HNHI_

Edit: Looks like he also has a sizable stake in Sleek Audio as well

</comment><comment><USER23> Someone should tell him the different between pumping a product like "Vitamin Water" and making $400 million and pumping a stock and going to prison.

</comment><comment><USER24> +240% because of a tweet? I don't think I've ever seen a better opportunity for a short.

<comment><USER25> Shorting a microcap/penny that's involved in a pump and dump is exceedingly risky. Not only have they proven they can manipulate the stock to great heights, but shorts also represent a guaranteed sale even at prices no one else will touch if they can force you to cover.

If you know you're riding the "dump" phase down then you're all good, but the last thing you want to do is be at cross purposes with the manipulators.

<comment><USER26> Not to mention the fact that it's hard to get short shares of a penny stock as a commercial investor, and once you have them, you face the same low-liquidity problem that everyone has in that market.

Pennies are a market that are slow(few trades) and fast(massive price swings) at the same time. The people that play them seriously wage a war of information, and sit around waiting for every tick all day, posting on forums, trying to discern the actors and their intentions. And it's frighteningly easy to deceive oneself into following pumper's tips, like those 50 gave. It just has to be heard from someone you trust, at a vulnerable moment.

</comment></comment></comment><comment><USER27> Thug life!

Pump and dump. No excuse.</comment>


Free Wolfram Engine for Developers - <AUTHOR> https://blog.stephenwolfram.com/2019/05/launching-today-free-wolfram-engine-for-developers/ <comment><USER2> > Why Aren't You Using Our Technology?

It's not open source.

Even if the engine is "free", I don't want to build an open source product with it and hope to be granted a "free production license." If I build something on my own time I don't want to ask my employer to purchase a "production license" as soon as it becomes useful.

Wolfram believes that mathematics software (or "computational knowledge" or whatever he calls his entire enterprise now) must be proprietary and paid-for in order to exist. Maybe it's true; all of the successful and wildly popular computer algebra systems are closed source. (wxMaxima is rough to use, Axiom has 3 or 4 different forks, each with fewer than 10 developers, SymPy just isn't there, Sage is absolutely wonderful but not polished or easy to deploy, ...) But that's completely at odds with how most software engineers work these days. Most software is grounded in an open source development and deployment tool chain. There _is_ a market for proprietary developer tools, but it had been dwindling since its prime-time in the 90s.

I think Wolfram needs to think quite hard about how he wants to get his technology in the hands of developers while maintaining a business. Not that my opinion matters, but if he can manage to do it by open sourcing Wolfram Language, Wolfram Engine, or something like that, while keeping his business intact, I might again consider him to be the genius he was lauded to be in his 20s.

<comment><USER3> >But that's completely at odds with how most software engineers work these days. Most software is grounded in an open source development and deployment tool chain.

Imagine saying this with a straight face. Maybe in web development, but the vast majority of programmers are using closed source tools to produce closed source software.

You're either thinking of a tiny picture vs the whole picture (web devs vs programming in general) or you honestly have zero concept of what programming looks like outside of web apps.

<comment><USER2> I'm open to being wrong, but my domain is not and has not been web apps. It's mostly been things like satellite antenna control software, quantum computers, scientific computing, and AI. Each of those domains, in my experience, has been firmly grounded in open source. (It does not mean, of course, that the end product is open source.) I recognize there are some domains that are steeped in closed source solutions with closed source developer tooling with no viable alternatives, but IME—as limited as it may be—it's uncommon.

What programming language stack do you (and a lot of other developers) use that's closed source with no realistic open source alternative? It's not C, Python, Java, Ruby, JavaScript, Lisp, Fortran, C++, PHP, Perl, Go, SQL, Rust, Objective-C, or Swift? (All of these, of course, not only have industrial strength FOSS implementations, but the first or second most popular implementation _is_ the FOSS one.)

<comment><USER4> I'm not disagreeing with you, just answering your honest question:

>What programming language stack do you use that's closed source?

Verilog/System Verilog (generally HDL/FPGA/ASIC design/verification).

Yes, it's a niche (some may even say it's not software, it's hardware, but it is indeed a large code base that requires a software engineering environment/toolchain/practices/etc...). Again, just answering your question for the benefit of the discussion. It would be interesting to hear of others such closed source areas.

<comment><USER5> You wouldn't happen to be a commentor/author for this Reddit post[0], would you? Your sentiment here seems quite similar. I have no experience at all with hardware design, but it seems like that domain is especially geared towards closed-source for specific reasons.

[0] [https://www.reddit.com/r/FPGA/comments/a5pzs5/prediction_ope...](https://www.reddit.com/r/FPGA/comments/a5pzs5/prediction_open_source_fpga_tools_will_not/)

<comment><USER6> That is an interesting post. I think there are two other potential ways FPGA tools could become open source:

1) If there are some widely used open hardware devices or open standards. The fact that FPGAs are proprietary designs and can't be copied is a significant barrier. If there was an analogue of ARM in the FPGA world that could open up open source dev tools too.

2) DIY FPGA. This one is almost certainly much further down the road than any of the other options. But if fab and design tools of the chips themselves become a commodity then there will be open source dev tools. It used to be pretty difficult to make a custom PCB, but now with PCB as a service open tools are seeing more use. I think the reason this is so far down the line is because fpga offers cutting edge performance for specialized applications. If you wait several generations or are ok with reduced performance then you can stick with generic CPU/GPU. With Moore's law running down there may be more and more things that aren't possible without fpga. And I don't think it would be until then that open source dev tools follow more diy fpga.

<comment><USER7> There are open FPGA synthesis tools, SymbiFlow/IceStorm for example:

[https://symbiflow.github.io/](https://symbiflow.github.io/)

There is an open FPGA hardware implementation:

[https://github.com/haojunliu/OpenFPGA](https://github.com/haojunliu/OpenFPGA) [https://www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-4...](https://www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-43.html)

More resources:

[https://wiki.debian.org/FPGA](https://wiki.debian.org/FPGA)

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Disclaimer: Wolfram employee here. Opinions here are mine, and not the company's.

Having used the Wolfram Language and Mathematica professionally for over seven years I think this is much cooler than the people who greenlighted this within the company realize. If there is one thing I love about the Wolfram Language is how fast it is to prototype something with it.

Given the scope of the language (or what you call standard library), most things that would require finding some external dependency, then writing some shim, are there out of the box. Whenever I have a weekend project idea it's always very very fast to prototype in the Wolfram Language.

Now, you don't want to use it in production because it's not open-source, fine. This license doesn't even allow that use anyway. But if you want to do a prototype, some MVP for an investor demo, a hackathon, then it's free and it's extremely powerful.

Most of the complaints here are about why you wouldn't build a company on our tech stack or why non-libre software is bad in production, but building production software is not what is being given away here, all the rest is.

<comment><USER9> Personally, I've found thing since learning Julia I've become pretty distrustful of the whole notion of prototyping in one language and then doing a full implementation in another.

It just seems so unnecessary when you have a language where you can start out in a highly interactive state that seems a lot like Python or Matlab but then you can seamlessly start optimizing or generalizing functions and end up with something that runs basically as fast as C but retains all the dynamic advantages from the prototyping phase.

Yes, Julia's namespace isn't as polluted as Mathematica's is and I think that's a good thing. It's got an amazingly vibrant package ecosystem and packages are treated on such a first class level that as soon as you load a (well made) package, it composes so well with everything else, including other packages that it feels built in. I've never really felt like I was 'writing some shim' to utilize code from a julia package.

<comment><USER2> I feel the same, except with Common Lisp, whose interactivity is maybe only rivaled by Smalltalk, and whose performance can be made close to that of C for real-world applications.

<comment><USER9> Yes, in fact Common Lisp was what I almost started investing my energy in before Julia. I almost referenced Common Lisp in the parent post alongside Julia but didn't because I never learned it very well and didn't want to speak from ignorance.

My understanding though is that most of the statements I made also apply in CL though my impression at least from the point of view of scientific computation is that Julia's community is more energetic than CL's. Certainly Julia still has lessons to learn from CL though.

<comment><USER10> I get the impression that the communities are different. Not that Julia's is "more energetic" (there's actually quite a bit of activity around CL too), but that it's simply a different crowd. The Julia people seem to me to be coming more from the application side of things - computational scientists who want to do a certain job - while the CL people are more interested in CL as a language, without a specific application field in mind. So although neither of the communities are especially large, the Julia bunch have been more focused on good libraries for scientific computation, which is why their ecosystem is better in that respect. (Also, the "Lisp curse": scientists are more likely to choose Julia as a new language, because it looks more like the languages they already know.)

Source: I do computational biology with Julia, hobby projects in Common Lisp.

<comment><USER9> True, if I was more careful I'd say Julia's scientific / numerical community is more energetic. I definitely don't want to sound like I'm dissing CL as I have great respect for it and want to be better acquainted one day.

</comment></comment></comment></comment></comment></comment><comment><USER11> Sounds reasonable, although I think this term in the license will discourage many people:

"Audit

You will maintain accurate records of Your use of the Free Engine sufficient to show compliance with these Terms and Conditions, and Wolfram will have the right to audit such records to confirm compliance therewith. Upon written notice of an audit from Wolfram, You shall respond within ten (10) business days."

[https://www.wolfram.com/legal/terms/wolfram- engine.html](https://www.wolfram.com/legal/terms/wolfram-engine.html)

<comment><USER2> > Open-source projects approved by Wolfram.

"You can't use this free thing to make other actually free things."

<comment><USER12> Isn't that a common thing for commercial products that are provided for free to students, open source projects, non-profit organisations etc.? You have to prove that you're going to use it for what the license allows.

<comment><USER2> Perhaps I'm being a stickler for language, but I don't consider it "free for open source projects" if I have to contact them to get permission to use it in an open source project. My beef is that the word "free" is being thrown around in this article. They should say something more true, like "we provide this engine for experimental personal use at no charge, and if you want to use it for something serious (open source, your company, etc.) contact us for a license."

<comment><USER13> Free means no charge for the vast majority of people who can understand English.

<comment><USER2> "Free" also carries meaning outside of the commercial context and specifically in the context of software to English-speaking software developers. If I heard someone talking about software—especially developer software—being free, I personally would assume they mean "libre", not "gratis". But I can understand if that's not universal.

<comment><USER14> "I personally would assume they mean "libre", not "gratis"."

I don't even know what either of those mean and I've been coding and on HN for years. I'm not even sure how to pronounce the first one. In Australia at least, 'free' means it doesn't cost money.

<comment><USER15> Free has two standard meanings that are used commonly, "free of charge" (gratis) and "free from restriction" (libre):

[https://en.wikipedia.org/wiki/Gratis_versus_libre](https://en.wikipedia.org/wiki/Gratis_versus_libre)

Gratis: "Buy one, get one free."

Libre: "You are free to leave."

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> Translation:

 _" We're losing mindshare and customers to open-source alternatives."_

Great open-source alternatives to Wolfram products can be found in the ecosystems of projects like Jupyter, Scientific Python, TensorFlow, PyTorch, and Julia, to name a few.

Major sponsors of such alternatives include Alphabet, Facebook, and Microsoft.

It's hard to compete against _that_.

<comment><USER17> If one of those companies decided to drop decent money on turning SciPy+Jupyter (or Julia) into a proper high-performance CAS, Wolfram would be in huge -- maybe existential -- trouble.

<comment><USER18> mathematica is already in existential trouble. yes some theoretical physicists supposedly use it (i used it undergrad to do all of the annoying integrals in e&m) but that's such a small market it's basically irrelevant. i can almost guarantee there is no production code running that uses mathematica in some way.

</comment></comment></comment><comment><USER19> If you're making software to sell, the licensing problems are real, but if all you're doing is quantitative investigation, WL is like a dream.

When I was a grad student in economics, we had to solve really, really long algebra problems as homework. I used Mathematica to see if I was doing the right thing, getting more feedback, and more personalized feedback, earlier than anyone who had to wait for the next class.

</comment><comment><USER9> Okay, so I read the post and I'm still not clear on what the actual difference is between Mathematica and the Wolfram Engine. Does anyone have any insight here?

Presumably this isn't intended to cannibalize Mathematica sales so I'd expect that many of the things I'm used to doing in Mathematica wouldn't work here but I don't really see any discussion of what it _can 't_ do.

<comment><USER20> Came here to ask the same question, and even with the answers you've already received, it still seems very murky.

If you look on their web site for Mathematica[1] it has several bullet points that includes the Wolfram Engine. One of the other separate points is "Wolfram Algorithmbase"[2], so presumably all those algorithms are not part of the engine and only available if you buy full Mathematica.

[1] [http://www.wolfram.com/mathematica/](http://www.wolfram.com/mathematica/)

[2] [http://www.wolfram.com/algorithmbase/](http://www.wolfram.com/algorithmbase/)

<comment><USER17> Can someone confirm this?

The Algorithmbase is 99.999% of what makes Mathematica useful compared to any language with a decent REPL or notebook setup.

I can't really imagine a use case for the Wolfram Language if I'm not going to use anything listed in [http://www.wolfram.com/algorithmbase/](http://www.wolfram.com/algorithmbase/)

<comment><USER21> From the article "...with all its computational intelligence, algorithms, knowledgebase, and so on"

<comment><USER20> But the "its" that the article is referring to is the Wolfram Engine. It doesn't say that is all the algorithms in Mathematica. And the Mathematica website lists Algorithm Base and Wolfram Engine as two separate line items, which is at least surprising if one is contained in the other.

I actually believe the Algorithm Base is probably included, but it's definitely anything but clear from the website or any of the press release. The Mathematica website makes them seem like two completely separate unconnected components.

It's really unclear what is included in Wolfram Engine and what is included only in Mathematica... the above was just one obvious example. It would be very nice to have a concise list.

</comment></comment></comment></comment></comment><comment><USER22> I think the adoption would be better if they had a Community Edition like JetBrains does. It's trickier with their products though since their main market is academic, but there may will be "enterprise" features that can be added to make it worthwhile for a University to buy licenses and individuals to not have to. It's a great piece of technology I wish I had been able to play with starting as a child along side BASIC.

</comment><comment><USER23> Am I the only one who gets tired of, "oh look something free on HN, okay time to shit on it, it's not open source".

<comment><USER24> No, you're not. It's tiresome, especially when people comment who obviously never had to solve hard integrals or pde's to even come up with a model which can then be implemented in an algorithm. I'm absolutely stunned how short- sighted many of the commenters are. I use Mathematica daily and, still, I appreciate Julia, Python, R.

All this talk about data-scientists only using open-source is ridiculous. At my university, departments like medicine, biology, chemistry, and life-science make a huge part. The most commonly used programs there are Excel and SPSS. Other departments use Matlab extensively. In finance, SAP is a big player. All of them are closed source and cost money.

Why can't people just appreciate that it is a huge step for Wolfram to release a free version of its kernel and think that this is an opportunity?

<comment><USER25> If no one ever criticized restrictions, we wouldn't have the freedom we have today.

Most people here are complaining about the license, not the software. They think the software is good but the license is holding it down. To me this looks like valuable feedback.

<comment><USER23> I see what youre saying but

> They think the software is good but the license is holding it down

The issue I'm really trying to point out is

They think the software is _cost free_ but the license is holding it down

Wolfram Engine has always been good, but it seems people are more in a huff because it's priced free but not open source.

I.e expecting that if something is given to you at no cost, it also must be open sourced.

<comment><USER25> Hmm, I see what you mean. I'm under the impression that this isn't the main issue people are having here but what do I know.

One other reason why people might be so upset here is the naming of this product. "Free" is commonly used to describe libre software. This is at best an oversight by the marketing team and at worst deliberately set up to deceive developers.

</comment></comment></comment></comment></comment><comment><USER26> FYI: After downloading and installing a 3GB executable, the software needs to be activated with a developer ID. Knowing that could've saved me the trouble.

</comment><comment><USER27> There's lots of ideological discussion here. I would have loved to read some experiences based on _actually trying the thing_!

You don't have to settle for the command line. It works with Jupyter, which seems to be the most pleasant way to use it.

</comment><comment><USER28> Can anyone explain the difference between the Wolfram Language and Matlab/Julia? I understand it has a better story for symbolic mathematics, but how often do people need that? Personally, I've found numeric computation more useful in 99% of the cases; do others have a different experience?

<comment><USER29> Wolfram language has a very different syntax that Matlab or really any other programming language, and it has a lot of lisp-like metaprogramming capability. It's not as well thought-out as a proper lisp like Clojure, it's verbose and there's a lot of weird corner cases.

The editor is very different as well: Mathematica pioneered the notebook concept that was copied by Jupyter, and the Mathematica user experience is still much more comprehensive and tightly integrated than anything else.

For linear algebra, they both use Intel MKL under the hood and get exactly the same performance.

<comment><USER30> Not only would I not call Clojure a "proper lisp" but since it doesn't run any Lisp code and lacks fundamental Lisp data structures (e.g conses), I wouldn't even call it a Lisp.

<comment><USER31> What do you mean by "it doesn't run any Lisp code"?

For what it's worth, both Wikipedia and the official Clojure website call Clojure a dialect of Lisp ([https://en.wikipedia.org/wiki/Lisp_(programming_language)](https://en.wikipedia.org/wiki/Lisp_\(programming_language\)), [https://clojure.org/](https://clojure.org/))

<comment><USER30> Take Lisp code written in the last 50 years and odds are that Common Lisp, Emacs Lisp or Scheme can run it with zero/minimal/moderate modifications.

Clojure needs a total and complete rewrite which doesn't only affect the syntax but program logic. Thus Clojure does not run Lisp code. How can it be a Lisp when it does not run Lisp code?

<comment><USER32> I've actually ported some Clojure code to Common Lisp no later than two weeks ago and it was pretty much as straightforward (if not more) as porting R5RS to CL. In my (admittedly limited) experience both CL and Clojure favor a certain high-level coding style with complicated macros versus the more simplistic style of Scheme. Contrast CL's loop construct, Clojure's for statement and Scheme's typically more recursive approach to iteration.

You're welcome to draw the line wherever you want, maybe for you conses are mandatory in a Lisp language but I don't really understand what you hope to gain from this discussion. I might as well say "tail call optimization is absolutely mandatory in any self-respecting Lisp, therefore CL isn't a proper Lisp dialect".

This is effectively the same level of discussion as a Java programmer saying that C++ isn't "true OOP" or an Haskell enthusiast claiming that Scheme isn't a true functional language because it allows side-effects. It's just silly gatekeeping that doesn't lead anywhere interesting.

<comment><USER33> The chance that you can port code without actually rewriting it is pretty slim. But then, people have been rewriting Lisp code to run in C++.

If you want TCO in CL then use one of the dozen implementations which supports it.

People btw. used to write some non-trivial code which ran in both Scheme and CL with the help of a Scheme on top CL, a compatibility layer or a translator. But that's now relatively rare.

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> There are some projects trying to do an open source version of some of Wolfram Mathematica [https://mathematica.stackexchange.com/questions/4454/is- ther...](https://mathematica.stackexchange.com/questions/4454/is-there-an- open-source-implementation-of-mathematica-the-language)

</comment><comment><USER35> This is very nice. I just tried it with Jupyter and it works. [https://imgur.com/VoHXMtS](https://imgur.com/VoHXMtS)

You can also write a inline script. [https://pastebin.com/TYWfS3gk](https://pastebin.com/TYWfS3gk)

Is there a limitation of running only one kernel per machine? I had an instance of wolframscript running, and when I ran a script file, I got this error:

> ./test.wl

Connection closed by WolframKernel. This generally means the product is unregistered.

<comment><USER36> Yea I honestly don't fully understand how many cores my commercial license uses, but every now and then it tells me that I need to register my license when it is already registered. After some digging, I figured out that I could only have 4 instances open at a time and sometimes Windows would keep one running in the background which would be 5, so I would have to close it out in the task manager and it would then work again. This made me sad.

</comment></comment><comment><USER37> Pricing is opaque.

[https://www.wolfram.com/engine/commercial- options/](https://www.wolfram.com/engine/commercial-options/)

How can I figure out if it's worth investing the time if it's impossible to price a production license?

<comment><USER17> Just ask.

Warning: it's ridiculously expensive. You need to be charging your users 4+ figures per license for your software in order to be able to pay Wolfram their cut.

The open/libre stuff is a huge red herring -- cost is the real bottleneck. It doesn't make any sense to use Wolfram/Mathematica unless there's a built-in function that you NEED, for which there is no alternative, and which requires a team of PhDs to re-implement.

E.g., even a non-production single user corporate desktop license is $3K.

</comment></comment><comment><USER38> Look. Wolfram has had his day. The company has been struggling from a heavily intoxicating ego and work conditions. Should a few recent cases be highlighted. A long term employee committing suicide for instance which could have easily been prevented; lawsuits drama back and forth for something that isn't even novel. Allegations that mathematica invented symbol computation. Dude, get real. Also get real about these claims that the front end or notebook was invented by wolfram . Wolfram did not . various other cas systems already had similar things in place noteably MathCaD. What really makes my stomach turn around is how this person can always add intoxicating little lies on almost everything and given his status, little people like us start believing it . Uggggghh

</comment><comment><USER39> I'm a PhD student, I've always wanted to buy Mathematica because it's cool as fuck but

1\. It requires a significant time investment

2\. I can't see how it will be in any way useful to me.

Can people using mathematica ( PhDs, pros, mathematicians, engineers... ) tell me what awesome things they do with it ?

</comment><comment><USER40> Seems like a great way to take advantage of this would be to use Mathematica (and its GUI) on a Raspberry Pi to explore and figure out how to do what you want to do, but then actually run it in Wolfram Engine on a more powerful computer.

</comment><comment><USER12> > Why Aren't You Using Our Technology?

\- It's arcane/esoteric

\- Its capabilities are largely unknown (I have mixed results with wolframalpha even for simple queries. Perhaps programmatic model is more deterministic)

\- Its licensing model is murky and needlessly complicated

<comment><USER41> > \- It's arcane/esoteric

Even he admits to this ,

" What Kind of a Thing Is the Wolfram Language? I've sometimes found it a bit of a struggle to explain what the Wolfram Language really is."

[https://blog.stephenwolfram.com/2019/05/what-weve-built- is-a...](https://blog.stephenwolfram.com/2019/05/what-weve-built-is-a- computational-language-and-thats-very-important/)

<comment><USER42> But that's because he's trying to explain how amazing he is rather than actually explain the language usually.

</comment></comment></comment><comment><USER43> Would love to try it and potentially integrate it. But to be honest the pricing structure is really not clear to me.

The developer page says try it for free and integrate it. Ok. Then it says commercial options for various scenarios exists. Ok. It shows a few scenarios. Ok.

Doesn't show a price though. When searching for prices it suddenly becomes "Find out about full applications" or "Contact Us " ?

Just looking at the dev engine you offer for download. what is the price of that ? What IS Wolfram|One ? What is the difference to the other options ?

Instead of making an easy decision as to whether its worthwhile to use some downloaded tech (which I still have to integrate no less) I have to wade through the page and different products or contact the sales people ? I also don't have any info as to how self-contained the engine is. How self contained is it ? Etc.

I was thinking of integrating WA before but had the same issue. Not something I would just add as a potential feature without making it a larger project with a specific customer in mind to be worth it for me.

</comment><comment><USER44> A couple of friction points right now trying to install. One its a 3GB app package on the mac but I guess i'm not surprised based on all that is included, would be interesting to see what, if any, options there are for a modular deployment. But sadly after I signed up for a wolfram account I am unable to activate the install from the terminal :-(

<comment> arnoud-buzing Try following these installation instructions for your platform (Mac, Windows, or Linux):

[http://support.wolfram.com/kb/45743](http://support.wolfram.com/kb/45743)

<comment><USER45> All good until step 17. I get this error: "(7) Unable to connect". It is probably the proxy... How can I change the setting for it?

</comment></comment></comment><comment><USER46> There's a link to send him an email, and the address is email@example.com. What a strange choice to own lastname.com and then use the email address email@example.com instead of email@example.com.

Perhaps it's an issue of standardization inside the organization. In that case, perhaps one might make an exception for the founder & CEO.

</comment><comment><USER47> "Free for Developers" is misleading, since you can't distribute it with your software for free, or modify it, which is generally what developers want to do. It's essentially a trial.

<comment><USER40> Plenty of developers do things for their own use without even thinking about releasing.

</comment></comment><comment><USER48> Disclaimer: Wolfram Employee

Based on great comments and questions, we updated the "frequently anticipated questions" to "frequently asked questions" (at midnight last night, on Stephen's laptop).

We have a feeling this will continuously be updated - please let us know if you have any questions, if something isn't quite clear, or just what you're going to do with it.

[https://www.wolfram.com/engine/faq/](https://www.wolfram.com/engine/faq/)

Cheers!

</comment><comment><USER49> I am sure they have thought about, but decided against it.

However, I think, what they should have done is have an open-sourced language runtime, and closed source some subset of the libraries.

In other words, keep eco-system open-sourced (and also protected from patent abuse), while maintaining some libraries closed source.

Perhaps, Wolfram believes that the competitive/money making advantage is in the engine, not in the libraries.

But if that's the case, then the open source competition is closer to beating it, than we think.

</comment><comment><USER50> Just a quick reminder; my MIT licensed open source project Resin [0] does pretty much of what WA does. It's free today and it will be free tomorrow. Free to use in production, to clone, fork, tear apart. Like WA

\- it's a linguistic engine

\- it has a query language

\- there is a cloud you can use [1] if you don't want to host it on-premise

\- it has high level API's for creating language models from JSON documents (or in other ways formatted)

\- low level API's for creating whatever 64-bit vector space you might want

\- tools that help you in the analysis phase

\- tools for creating and deploy HTTP endpoints for reading from/writing to your model

Next week I'm freezing the API's for I will have reached v0.4, because by then, at my day job, we will have completed our first "AI powered" closed- sourced product based on Resin.

For this project to have any bearing and to stay alive and well (and free forever) I need your help. I need a community of contributors. Chip in, it's for a good cause!

Edit, and here are the links:

[0] [https://github.com/kreeben/resin](https://github.com/kreeben/resin)

[1] [https://didyougogo.com](https://didyougogo.com) (currently down, b/c maintenance)

<comment><USER51> > does pretty much of what WA does... it's a linguistic engine

Wolfram Alpha is a symbolic computation engine. I'm sure it does some natural language parsing for queries on the website, but I doubt that is an important feature for most developers considering this engine for production applications.

<comment><USER50> >> Wolfram Alpha is a symbolic computation engine.

That's a great piece of technology to have when you are trying to get machines to understand humans.

The reason Resin is not a symbolic computation engine is because that model hasn't been designed yet. Luckily Resin is a vector space framework that you can use to nest spaces together or transform into new spaces. Building on Resins capabilities for creating models from any 64-bit embedding I'm not quite sure if there is anything Resin cannot model.

<comment><USER2> Yeah, but, come on. Isn't this oversimplifying? "My computer uses bits. That means anything you can make out of bits can run on my computer." It's true but essentially vacuous. The value is/includes these difficult-to-build technologies, so the mere fact they _could_ be included isn't so meaningful and doesn't add much value.

<comment><USER50> Sure, but I was not trying to bluff you. Instead I was trying to describe to you a crucial point that is missing from the project's documentation (where I mostly describe the NLP engine) and that is that Resin at its core is a tool for designing such complex models as symbolic computation.

But I hear you. Resin is not Wolfram but more of a framework that you can use to produce something like Wolfram.

</comment></comment></comment></comment></comment><comment><USER52> The program is available (and installed by default) on the full Raspbian operating system for the Raspberry Pi. (Raspbian is the Debian Linux variant tailored for the Raspberry Pi.) I've never tried it. There is a Raspbian variant for Intel based systems but I do not know if it includes Wolfram Alpha.

</comment><comment><USER53> I think my block is I am still not sure what it is... I have used Wolfram Alpha and I think that is cool. But the times I have spent looking at the docs... I feel like it is not a programming language exactly. Or not one I am used to or familiar with.

<comment><USER40> Wolfram Alpha is, I think, a subset geared at being an internet search engine / answer-provider?

Wolfram Engine can apparently access the full set of Mathematica features, just without the Mathematica GUI.

[https://www.wolfram.com/mathematica/new- in-12/](https://www.wolfram.com/mathematica/new-in-12/)

</comment></comment><comment><USER54> "The Free Wolfram Engine for Developers is available for pre-production software development."

[https://www.wolfram.com/engine/](https://www.wolfram.com/engine/)

</comment><comment><USER55> I have Mathematica installed. Can I have WolframEngine side by side?

<comment> arnoud-buzing Yes, but it will not give you anything new: The Wolfram Engine provides full access to the Wolfram Language (just like Mathematica) via command line access and executing Wolfram Language scripts.

</comment></comment><comment><USER56> try this:

      docker run -it wolframengine/wolframengine

<comment><USER57> Is this official?

<comment><USER56> It is not official and has been removed.

</comment></comment></comment><comment> r-w It remains to be seen whether most software developers value the services that Wolfram provides enough to swallow the proprietary pill.

</comment><comment><USER58> Has anyone got anything really cool with the Wolfram language that they've prototyped / seen prototyped elsewhere?

<comment><USER24> No prototype, but you might want to look at

[https://rulebasedintegration.org/](https://rulebasedintegration.org/)

It's a package for solving symbolic integrals that outperforms many systems. It has an extensive test-suite of over 72,000 integration problems and I encourage you to try how many of them can be solved by SymPy or Julia. Spoiler: I already helped porting it to Symja and if the python community can solve the problems with MatchPy, the port to SymPy can be finished as well.

Disclaimer: I'm one of its developers

<comment><USER59> Is there a wrapper for this into Julia? I would like to make use of it!

</comment></comment></comment><comment><USER60> So it only provides a command line interface, but not the notebook interface. Am I getting it right?

<comment> arnoud-buzing There is a Jupyter notebook interface for the Wolfram Language:

[https://github.com/WolframResearch/WolframLanguageForJupyter](https://github.com/WolframResearch/WolframLanguageForJupyter)

Additionally, many IDEs support Wolfram Language for syntax coloring, command completion, contextual help, etc.:

[http://www.wolfram.com/developer/](http://www.wolfram.com/developer/)

<comment><USER35> I tried this, and it works great. Awesome, Thanks Wolfram!

[https://imgur.com/VoHXMtS](https://imgur.com/VoHXMtS)

<comment><USER18> this is with this new Dev version or the conventional version?

<comment><USER35> The free dev version

</comment></comment></comment></comment></comment><comment><USER61> Loved the onboarding.

</comment><comment><USER38> Interesting that some comments which are insightful and anti wolf clan are deleted . Seems like Hackernews and wolf clan are in cahots

<comment><USER62> Quite the opposite: I've never seen a HN discussion about Wolfram where the company, the person, the language and the pricing model don't all end up getting torn to shreds.

</comment></comment><comment><USER63> It doesn't seem to have a notebook interface.

Maybe someone can hook this into Jupyter as a Wolfram kernel?

<comment> T-A [https://www.wolfram.com/notebooks/](https://www.wolfram.com/notebooks/)

<comment><USER63> That doesn't seem to be included into this free engine, only command line access

</comment></comment></comment><comment><USER18> this is interesting. i downloaded it and it works like you'd expect. but really what can you do with this since it's just a repl? are there language bindings somewhere? is there even an easy to write them since you only have repl access?

</comment><comment><USER64> This looks intriguing, but how many wolframs does it get to the wolfram?

<comment><USER65> How many wolves would a Wolfram ram if a Wolfram could ram wolves?

</comment></comment><comment><USER66> I don't understand why don't they AGPL the thing already. It makes no sense.</comment>


Crowdfunding bill just passed in the House - <AUTHOR> http://www.govtrack.us/congress/bill.xpd?bill=h112-2930

<comment><USER2> We need to all call our Senators to encourage them to pass this bill and pass this bill fast. Anyone know if the Angel List team is doing any lobbying? Likewise, are the VCs lobbying against it?</comment>


Hiring High Quality Developers on a Bootstrapper's Budget - <AUTHOR> http://www.extendslogic.com/general/hiring-for-bootstrappers/

<comment><USER2> This is a good guide for anyone hiring contract developers, not just those who are bootstrapping their project.

I've run into problems before mostly with communication, availability, and reliability as you mentioned. I'm excited to implement some of these recommendations.

<comment><AUTHOR> Glad you liked it! You're right; I could've used a lot of these strategies when I was hiring inside of a big co.

</comment></comment><comment><USER3> Holy smokes! As a dev that last blurb about being willing to outsource a little bit is hard to take in. But at this point it's either code forever, or release something.

Thanks Ruben. Time to outsource.</comment>


SEO: Google May Treat Blogs Differently - <AUTHOR> http://markmaunder.com/2011/seo-google-may-treat-blogs-differently/

<comment><USER2> It's tough to extrapolate from a single, anonymized data point.</comment>


Ask HN: Good overview of live streaming audio/video client/server architectures? - <AUTHOR> I'm curious how something like Clubhouse or Streamyard works and having a bit of hard time putting together the pieces because most of Google is concerned with setting up live streaming (as a user and not as a developer).
My main question is what happens on the server to accept live streams, mux them together, add overlays etc.
My guess is something like this:
- RTMP stream from client (or WebRTC) to Server - Server runs something like GStreamer which can frame the video stream, apply overlays, output RTMP stream
- Send that to nginx and expose to client
Does AWS have this encapsulated as a service yet or are most people operating something like this at the compute level? <comment><USER2> I'm no expert either, but is not very difficult.

\- They use webrtc to set-up a peer to peer connection between all the participantes (streamyard server is a participant of the call). (The browser takes care of all the hard part (encoding, noise reduction, echo suppresion) and just sends the video and audio stream via RTP).

\- The local and remote cameras are objects that you can arrange on the screen using javascript. This is how they make the layout options.

\- In the server, they implement a webrtc client which has the same layout options. I would bet they use something like ffmpeg library to create a final video stream and send to the destination via RTMP (youtube, facebook and such).

Unfortunately, I'm not aware of any AWS solution for this, but there are several implementations of the server part (like Kurento and [https://openvidu.io/](https://openvidu.io/))</comment>


Ask HN: pre-screening the generalist employee - <AUTHOR>

How does one go about evaluating and pre-screening a worker for a job with generalist or generic duties? (meaning anyone with a decent background is qualified)  Some jobs include admin asst, office manager, data entry, and telephone customer service rep., but it also may include jobs that can be done by any liberal arts grad for which specific technical skills are either not required or can be learned on the job.<p>Since most people would be able to fulfill the duties of the job, how do you screen candidates in and out?  Do you look at past experience or is it better to have someone who is a fresh face?  Are extra-curicculars or signs of merit/recommendations a valid screen?  What are the tradeoffs in making your search either too narrow or too broad? <comment><USER2> I think there are four things you want to look for:

A personality that meshes with your office environment – Will this person be an asset to the corporate culture and smoothly assimilate?

Signs of Competence – Will this person be able to complete the tasks assigned successfully and do they display a history of doing so?

Signs of Diligence and Follow Through – Will this person show initiative and make common sense decisions without having to ask permission every step of the way? Getting things done without excuses is important as the details always matter.

References – Can this person provide a list of quality references? Clearly if you can get referenced from an existing mployee that should always carry additional positive consideration.

I think that is about all you can ask for in a generalist position.

</comment><comment><USER3> Really depends on the company, what you are looking for, and the overall atmosphere within the company. If I were looking at college grad I would look at past experience (any internships, previous work, extracurricular activities). A college grad that was president or treasurer of their fraternity or sorority lets me know that they probably get along well with others and have some basic organizational skills. Someone that has interned is going to hopefully have some real world experience in the field.

For an admin asst or office manager you are going to want someone who is halfway decent with people, but more importantly has good organizational skills and time management. You are going to want someone who can think on their feet and outside the box when needed. You are also going to want to have someone that is reliable and will be there on time and when needed. How you screen really depends on coming up with a list of priorities such as these and looking at the individual's background/experience along with interviewing them to determine how they fit into those priorities.

Customer service reps is a high turnover field so finding someone who has been in the industry for years with the same company may prove challenging. You are going to want to find someone that is "people friendly" and good with dealing with stressful situations (angry customers, etc...). It may be easier to find someone new to the field who is good at this, as I would imagine the "burn out" rate is high for these jobs. People grow cold to customer complaints, etc... and begin treating customers poorly.

Data entry, you are going to want someone who is good at typing and can enter things quickly. A basic typing test would be good here. Depending on the level of data entry you require you may have the person doing some basic error checking along the way which entail an ability to think quickly and react accordingly.

Long story short, when coming up with the job description for these positions I would put together a wants/needs list for the type of person you desire. As you receive applications/resumes for the positions do a basic screen against those wants/needs. Remember that a need always outweighs a want. For example, if you want someone with a college degree that has X years office manager experience, you should be able to sacrifice the college degree for substantial experience in the field (especially if the experience is directly related to your industry). If you find yourself throwing away more resumes than you may have to reevaluate your wants/needs list to see what you can sacrifice (in other words your standard for needs are set to high). If you are getting to many good resumes start evaluating more on the wants side of the list.</comment>


Learning technical writing using the engineering method (2016) [pdf] - <AUTHOR> https://www.cs.tufts.edu/~nr/pubs/learn.pdf <comment><USER2> I will say that even if you don't read the bulk of this link, the PDF document itself is a very visually pleasing layout, and the author clearly knows how to design, vary, and break up text to make it more interesting. It's worth a look just to see it briefly.

I will just add that I can recognize good technical writing in 3 stages of sophistication:

Stage 1) Someone who has barely mastered the topic and is at the most basic level just telling you the steps to reproduce the result or operate the items or workflow. Once you learn from the material presented (unless extremely complex or required to keep as reference), you rarely go back and study and appreciate this kind of writing repeatedly.

Stage 2) Someone who has done the analysis and exercise enough that the writing evolves into not just instructions or rote description, but narration through the reasons _why_ they did it this way, the pitfalls to watch out for, what _not_ to do. Starts you thinking about what to do next.

Stage 3) Someone whose telling of the technical detail is so fluid and practiced that the basics are unquestioned -- the writing now includes well- informed opinions and jokes about past attempts at the outcome, why they failed and their historical context in technical terms. Gives advice on the difficulties that will be encountered and the limits of the method. The writing is so informative that you may return to read it again and again throughout your career.

One of my favorite texts that reaches Stage 3 is _Numerical Recipes in C_ (which unfortunately I don't have much occasion to refer to nowadays), and the way that programming philosophy, advice, and technical instruction combines in that work is very impressive. Also, many of Griffiths' physics texts, who manages to write with both technical and conversational/narrative mastery.

If only more writers could be like this.

<comment><USER3> Well said, and, "Stage 3" in which fluency brings humor to a hard topic, immediately suggests to mind Steven S. Skiena's The Algorithm Design Manual [http://www.algorist.com/](http://www.algorist.com/)

</comment></comment><comment><USER4> This looks quite interesting, thanks for sharing.

I found the other recent thread on technical writing useful, too: Four kinds of documentation [https://news.ycombinator.com/item?id=21289832](https://news.ycombinator.com/item?id=21289832)

</comment><comment><USER5> How does one get technical writing work? I enjoy writing and wish to do more of it, preferably for money.

</comment><comment><USER6> Looks a bit like a LaTex output?

<comment><USER7> Yeah, this is a nice LaTeX document. The learning curve is pretty steep at first, but Overleaf.com has made that easier, and it's well worth learning if you're a writer of any kind.</comment></comment>


Sketchy Notebook - <AUTHOR> https://www.kickstarter.com/projects/timtwo/sketchynotebook

<comment><USER2> The whole "template" idea is interesting, but doesn't strike me as a great selling point for the notebook. Anyone can just print out some templates if they need them, and moving it page to page seems inconvenient.

OTOH, the notebook's binding sounds great. Lies flat and pages can be torn off cleanly? Sign me up. Anyone know of a notebook available today with a similar binding?

</comment><comment><USER3> I'd just use graph paper, cheaper and easily available.</comment>


Nokia releases Symbian Anna update. - <AUTHOR> http://conversations.nokia.com/2011/08/18/symbian-anna-downloads-begin-today/?sf2013419=1

<comment><USER2> I'm ambivalent about portrait QWERTY typing.

I struggle to type on a QWERTY touch keypad on the SO's iPhone 4, and much prefer Swype in landscape, and T9 in portrait.

Having said that however, Nokia has screwed around with the T9 algorithm to make it 'smart' (at least on the Symbian^3 range). As a result, you can't cycle through options in a predictable manner any more! As a life-long Nokia supporter (so far), and a fan of the awesome industrial design that goes into their products, this is ridiculously infuriating.

(For e.g.: 4663 produces 'home' or 'good' first depending on which was used more often recently. Cycling through punctuation symbols is again determined by [what the algo thinks] the most frequently used symbols. Gah.)

</comment><comment><USER3> Well, better late than never...</comment>


Welcome To The Team, Sarah Lacy - <AUTHOR> http://www.techcrunch.com/2009/03/20/welcome-to-the-team-sarah-lacy/ <comment><USER2> The quality of comments on TC never ceases to amaze me - eg "Whatever Sarah, just show us your tits x"

<comment><USER3> It's the natural byproduct of the growth of a blog.

I don't get why they don't just delete stuff like that. With TC's reputation, it should be no problem for them to hire a couple of interns to just patrol their comments and delete stuff like that plus the tons of spam that I've seen there lately.

<comment><AUTHOR> I've seen them delete comments before. I guess the comment patrol is on a break

</comment></comment></comment><comment><USER4> Yipes. Arrington's attitude, without his knowledge of startups.

</comment><comment><USER5> This is a big win for TechCrunch. People give Lacy a lot of guff, but I enjoy what I've read of her work.

<comment><AUTHOR> She is the only one who can actually write on techcrunch. All others are basically blogging(not as professional)

<comment><USER6> My experience with her was far from professional. She printed unfiltered digg PR in her book, including attributing words to me that I never said without any attempt at verification. She'll fit right in with the other PR people at techcrunch. A journalist she is not (I've worked at a newspaper so I've met actual journalists).

<comment><USER5> She might be a bad journalist in your opinion, but debating whether or not someone is a journalist is like debating whether or not someone who programs is a hacker.

<comment><USER6> I don't think that argument holds up for a second. Lack of integrity is obvious to even the uninitiated - many journalists have been exposed for fabrication. Lack of programming ability takes a certain amount of expertise to expose.

<comment><USER5> I don't see integrity as something specific to being a journalist. It's something specific to being a good one. Just like it's specific to being a good...anything.

She could well be a terrible journalist. I disagree from what I've seen, but you've seen otherwise. Cool.

But saying she's not a journalist doesn't make sense to me. She's paid to be a journalist by Businessweek. Therefore, she's a journalist, in my book.

<comment><USER6> One thing I learned while working at a newspaper is that the business section is a ghetto. It's the last cash cow they have left, basically thinly disguised display advertising. Business Week is like that from cover to cover.

<comment><USER5> You worked at one newspaper...and learned that ALL business sections are ghettos, pumping out thinly veiled display advertising?

one != all

It'd be fair to say that you worked at one place with a lousy business section, making you suspicious of business journalism.

It'd be fair to say you worked at one place with a lousy business section, making you think there are others out there like it, but to crap on ALL of them based on your experience at one?

I'm not expecting this to go anywhere. You've made your mind up on this. I'm just trying to point out that the reasoning here doesn't clock.

<comment><USER6> Along with the one newspaper, I've got 2 business degrees where I got to hear about the manipulation from the other side. Then there's the digg experience, where Jay and Kevin could fabricate whatever the hell they wanted to, and it would be printed verbatim in many, many blogs, magazines, newspapers, whatever. I can give you many examples. Or you could actually search for articles - there's plenty out there - about how business magazines and business sections of newspapers out there that suppress info because it displeases advertisers.

That's not to say there isn't good biz journalism out there - just as a random example, for every 100 breathless, admiring article about Enron back in the day, there was one journalist who actually tracked down the truth.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Papers Written by Googlers - <AUTHOR> http://research.google.com/pubs/papers.html <comment><USER2> At least one of the links for a paper links to a GoogleTM search for it.

</comment><comment><USER3> Well now I'm waiting for the obligatory list of papers Microsofters(?) have published. Cause I'm sure its long.</comment>


Ask HN: Review my prototype (webnodes) - <AUTHOR>

Webnodes is a site which will be centered around hosting online communities which are transparently, and democratically governed.
A key feature is the recognition of good discussion, which is one reason why threads are displayed as trees.
There are lots of little bugs which need work, but what I'd really appreciate is feedback on the usability/readability of the thread layout.
Thanks to reddit/proggit for providing the test data.  For those who are interested, the source code is available at http://github.com/csytan/webnodes/tree and will later be made available under a permissive license.
http://www.webnodes.org <comment><USER2> you should def fix it so <http://webnodes.org> doesn't throw a fatal server not found error

<comment><AUTHOR> You're right. I'll get right on that. For now, please use <http://www.webnodes.org/>

</comment></comment><comment><USER3> nicely done!

</comment><comment><USER4> The 'home' link in the top left corner is hard to read due to the font colour on the background colour. Red on a dark background is bad.

When first landing on your site, I have no idea what I'm looking at. It's just random boxes with unrelated text, I guess once you have a userbase this won't matter as people will know what's what, until then, you'll need to make it more obvious why I'm looking at your page, then you need to give me a reason to stay.

You also need to explain that clicking "next n" shows you children of the current parent comment. It's just not obvious. Don't make me think.

Reading your description, this sounds like something that is just not useful. I just don't see this working in any way that will bring money in, or even attract a community.

Honestly, yet another 'web2.0' pointless app that will die due to lack of funds or users. Sorry to come accross as being harsh, but I'm trying to be honest. You should use your python skills for something that actually provides 'real' value.

Don't be too put off by me though, I'm not exactly what you'd call an 'early adopter'.

<comment><AUTHOR> >You also need to explain that clicking "next n" shows you children of the current parent comment.

Good point. I'll change it to "Next n replies"

>Honestly, yet another 'web2.0' pointless app that will die due to lack of funds or users. Sorry to come accross as being harsh, but I'm trying to be honest. You should use your python skills for something that actually provides 'real' value. Sorry to come accross as being harsh, but I'm trying to be honest. You should use your python skills for something that actually provides 'real' value.

No worries. I enjoy working on this project, and it's been fun seeing it slowly morph into something I find useful.

<comment><USER4> As long as you're having fun then that's great, and if it's something you find useful then that's even better. It's refreshing to see someone making something for the love rather making any old crap in an attempt to go 'viral'.

:)</comment></comment></comment>


The Impact of Web Performance - <AUTHOR> https://simplified.dev/performance/impact-of-web-performance <comment><AUTHOR> Hey HN! After 4 years as an independent contractor, I'm finally spending some time sharing the knowledge I acquired on the job. Over the last couple months, I pushed measuring the impact of web performance at one of my clients and the results kind of blew me away (I mean, 300%+ more revenue when the site feels fast?)

I'll be watching these comments and answer any questions pretty happily.</comment>


Google buying Tesla Motors? Does it make sense? - <AUTHOR> http://www.treehugger.com/cars/google-buying-tesla-motors-does-it-make-sense.html

<comment><USER2> I don't understand these kind of articles. Did the author just wake up one morning and say "Hmm what bullshit should I make today for some page views?" Then they come up with some random idea like Google buying Tesla with no evidence what so ever and slap on a title that's a question like "Google buying Tesla?" then proceed to including the following words "journalists are speculating" to make their shitty article seem just.</comment>


How to Export Your Facebook Friends' E-mail Addresses - <AUTHOR> http://theharmonyguy.com/2010/11/05/how-to-export-your-facebook-friends-e-mail-addresses/

<comment><USER2> I'm not sure who these nebulous "many people have mentioned" are in your post, but the TechCrunch post you are addressing specifically states at the end: "Facebook has claimed in the past that there are sensitive issues around exporting contact information. But that hasn't stopped it from pulling in whatever data it can. And it has also forged deals with both Hotmail and Yahoo that will let those services access its contact data. Google didn't do a partnership with Facebook, so it doesn't get the goods."

The TechCrunch post was certainly not arguing that one couldn't export to Yahoo. Indeed, that is exactly what Google is in a fuss about.

<comment><USER3> Fair point. I linked to the TechCrunch story as it was the first to report Google's move, not as the basis for people saying you couldn't export contacts. Perhaps "many" overstated the situation, but I've seen it come up on Twitter and in various articles; see, for instance, [http://gigaom.com/2010/11/05/nice-move-google-what-took- you-...](http://gigaom.com/2010/11/05/nice-move-google-what-took-you-so-long/) Also, Arrington's follow-up mentioned that Facebook has "pretty much refused to let users export social graph data" ([http://techcrunch.com/2010/11/05/data-protectionism- begins-i...](http://techcrunch.com/2010/11/05/data-protectionism-begins-in- earnest/)) It's been my general experience that people don't seem to be aware of the Yahoo trick, and since the Google story has people talking once again about what data you can get out of Facebook, I thought it would be a good time to bring it up.

</comment></comment><comment><USER4> This is cool, but it mostly illustrates the danger of allowing random people you don't know to be your friends. If they can export all of their contact's emails, then you'll be on who knows how many spam lists.</comment>


Show HN: CryptoStandardizer – elegant API for headache-free development - <AUTHOR> https://cryptostandardizer.com <comment><AUTHOR> In recent weeks I've been focused on making the API as intuitive and as elegant as possible - I'd really love feedback on the landing page and service - all comments are welcome!</comment>


Kansas's Conversion into Brownbackistan, and Its Failure - <AUTHOR> http://www.bradford-delong.com/2016/07/monday-smackdown-kansas-experiment-in-right-wing-economics-is-still-failing-miserably.html <comment> blanka-herono When I was a teenager in Kansas, my boss in the boat store where I worked had a saying:

"Kansas is a good place to say you are from."

It took a while for me to understand the pun, but even this saying is no longer true. Now it should be:

"Better to have never lived in Kansas at all."

Wichita, in particular, has been pushing an "innovation economy" and trying to attract entrepreneurs like it used to have (Bill Lear, the Carney brothers, Beech, Clyde Cessna). But the reality is that Wichita is on a cultural as well as an economic downturn (along with the rest of Kansas):

[http://www.kansas.com/news/business/article36236142.html](http://www.kansas.com/news/business/article36236142.html)</comment>


How to discourage your employees - <AUTHOR> http://www.geekstuffdaily.com/2009/03/12/8-rules-to-discourage-your-employees/

<comment><USER2> Most of this is so obvious that it's not done at software companies, except for one, awards. A soon as a company gets large enough to have an HR dept., out come the awards. Then they have an all hands meeting to explain the huge new motivator. Then a monthly meeting with speeches and a few $25 Visa gift cards.

Here's what I do. If someone does a good job, give something to his team, a movie, lunch, something like that. If an individual does a really good job, give him/her an on the spot bonus, no ceremony or publicity.

The morale booster is success of he team, project, company. Of course I speak of companies that I would want to work for. I have no idea what happens at banks and insurance companies.

<comment><USER3> It's awful at banks. We're encouraged to spot other employees and write and submit 'good job' cards, which they will receive later. Then at random submitters and their recipients will be selected to win a $25 gift card. It's outsourcing recognition to the frontline employees.

I'm not against recognizing my team mates, but I'd rather not go through a formal channel. It cheapens the recognition.

</comment></comment><comment><USER4> Ugh, I hate to be 'that guy' but this is such obvious link bait.. these rules don't really tell me anything insightful.

<comment><USER5> Part of the point is not that the article tells you something you didn't know, but that it describes bad situations in a heartfelt and humorous manner. e.g. Objectively, sure, most people would say "IT workers need certain tools to do their job". But obviously some managers and organizations don't get that. The list is _funny_ , because I've seen these things happen, and I can empathize with the fight people went through while learning some of them.

</comment></comment><comment><USER6> You know, I read things like this and don't believe that it actually happens this way. At the very least, it can't possibly be this way in companies/organizations whose primary purpose is to develop things. Right? RIGHT?

<comment><AUTHOR> Sadly, I identified with a lot of these points. Added to them now are a salary freeze and an extremely low bonus not because of my technical achievements at the company, but rather because of what my manager perceives of me. The first one is "due to recession".

</comment></comment><comment><USER7> What's with all the non-programming related links today? Weekend?

<comment><USER8> It's a reaction to the Erlang overload earlier this week. Just the universe balancing itself out.

</comment></comment><comment><USER9> You want to discourage your employees?

Promise them huge bonuses at the end of the year if they exceed expectations and give them none blaming it on the crisis.

<comment><AUTHOR> Ooh, speaking from experience?

How about telling your employees that "We're too top-heavy and therefore won't be promoting anyone", and the only way to make more money in the company is to move up?

<comment><USER10> Better still, refer them to an HR drone instead of actually telling them face to face. That way you can hope their ire is directed at an amorphous initiative to cut costs.

</comment></comment></comment><comment><USER9> Another one is salary freeze.

If my only motivation to work is not being fired, then I´ll do the minimum required to stay employed.

That's also called the slacker principle.

<comment><USER11> This is precisely what is going on at Microsoft right now.</comment></comment>