skysight-inc/HackerNews huggingface dataset:
> adding C++11 features to GCC is a far more difficult undertaking than it should be because of RMS and his fear of proprietary frontends to GCC

Whatever you think of RMS's stance on plugins, or gcc's plugin system, they have little relationship with the ease or otherwise of adding C++11 features to gcc.

The latter has much more to do with the difficulty of understanding the gcc C++11 front end, the difficulty of understanding the fine details of the C++11 standard sufficiently to implement it, and the amount of manpower available from people who can do both those things (or who have the time to learn).

gcc certainly does have a lot of historical baggage in its code base (though this is slowly improving with time), but given its rather complete support for C++11 (on par with clang certainly, and far ahead of MS's compiler and most other proprietary C++ compilers), they're not doing so bad...
The HFT boys are creating vast amounts of liquidity and squeezing the spread down to unprecedented lows. The volatility created by their trading is essentially invisible to a retail investor who observes the markets day-to-day rather than minute-to-minute.

It seems to me that people are fixated on volume, which is essentially an irrelevant figure - holding a big position for a couple of milliseconds has no meaningful impact on anyone but other HFTs. If we smooth our data to a resolution of minutes rather than milliseconds, market behaviour looks no different today than a decade ago. Even a supposed disaster like the "flash crash" of 2010 corrected itself within five minutes.

I'd be curious to see if the same debates were happening when computerised trading was first introduced. The magnitude of change was far greater, but there's broad consensus that computerisation led to fairer and more efficient markets. I just don't understand how faster trades can be bad in and of themselves. If your objection is to speculation in principle, then by all means argue for a Tobin tax; I just don't see why it matters very much whether that speculation occurs over the course of days, hours, minutes or milliseconds.
I believe Trello works fine on IE8 with Google Chrome Frame. I'm not sure whether that hack is still necessary in that case.
It's neither collaborative nor an editor.... this is a webapp to display 3d models
Boto is awesome for interacting w/ AWS, but managing an application stack in ruby (jekyll) and a deployment stack in python (https://gist.github.com/4596766) does not seem optimal.
That is true. Those books take "C programmers with a very basic understanding of some C++ fundamentals" to "C++ programmers"
I was not a big fan of Bill Gates in the 1980s and 1990s. But I think the philanthropic work he has done has been wonderful. Steve Jobs was not philanthropic, to a fault. He preferred to give to society by producing good things. I think Gates has given immensely to society by applying his exceptional problem solving skills to some extremely difficult problems.
Hopefully developers that had never used version control until Github had never written software outside of the classroom.
I've got to agree with some of the comments here that this is insane. Sounds fun, but insane. There are probably 3 or 4 programming-intensive undergrad courses wound together here, with a more difficult substrate than your average compilers course.

Then I remember that this is the Internet, and if it's 'free' you're usually not looking at the product; but you can see it in the mirror.
Everybody has a different list of a dozen intermed/advanced topics ;-}

http://www.reddit.com/r/haskell/comments/17gavl/what_you_con...

http://stackoverflow.com/questions/5778436/what-haskell-topi...

And most of those are fast moving topics these days but they're well covered in blogs, the Cafe list, stackoverflow, they just need to be collated/cataloged. At a minimum some wiki farming would address a lot of those. Unfortunately, I emailed the wiki contact a couple times about pitching in and never got response.

___________________

There's a few books you could look at, tho they're more building out what's in RWH, not up:

draft by Snoyman https://github.com/mezzohaskell/mezzohaskell

Bird's Functional algorithm pearls http://www.amazon.com/Pearls-Functional-Algorithm-Design-Ric...

http://haskell.cs.yale.edu/wp-content/uploads/2013/01/HSoM3....

JA Alonso has another book of exercises (in Spanish http://www.cs.us.es/~jalonso/publicaciones/Piensa_en_Haskell...

also the FP in Scala (Morris, Chiusano, Bjarnason) may include some haskell code, I haven't read yet, but definitely covers a lot of these hot topics

http://manning.com/bjarnason/
They are very good, particularly for the intermediate C++ programmer.
I borrowed a copy of the Dragon Book from a friend and I'm starting to go through some of the parsing exercises as a refresher. I think the undergraduate compiler course I took used MIPS, so this might be a little different, but I always did like AMD. C++ is a big language, but as the FAQ says, we won't be writing an optimizer, and hey, we're not even writing an OS or designing a CPU, so we're only doing a tiny fraction of a complete implementation.

I went to a C++ standards committee meeting once. They were having this fascinatingly complex discussion about temporary object lifetimes; it was so amazing how everyone there understood C++ so thoroughly. I'm hoping that taking this course will give me a better appreciation for their art.
I was just replying to the comment regarding GCC and MSVC -- the argument seemed to be that most of the development manhours were devoted to C++11 when in fact most of it was devoted to optimization strategies and cross-architectural compatibility.
Freud and Cocaine
Impressively smooth on my iPwn
No, I did not know Todd, except by celebrity reputation. We climbed in different circles.

He was a widely known and well-regarded big wall guy who had freed gigantic routes in Pakistan, Greenland and the Yukon. I read his trip reports with awe. I would have felt out of place carrying his rack from the truck to a picnic table, much less talking climbing with him.

I had not heard that he was tidying up. He was also reputed to be very generous with his time and expertise. I find the idea of him carefully cleaning up a new route (while passing an increasing load through a frayed harness) almost intolerably painful to think about.
This looks awesome! Now to read about compilers....
I disagree about the Dragon book. In particular, the code generation part was very valuable to me in the code generator.

But I think I see where you are going with this. Using a parser generator for compiling, in the words of Dave Conroy (author of MicroEmacs and many other things), "A Parser Generator makes the hard part harder and the easy part easier."

Edit: Wait--1985? Ah, that is the problem. I used the First dragon book, not the second. I only got the second after I did the compiler work. Was it much worse than the first?
I'm so not a candidate for a class like this, but damn I wish I could take it.
Also there is this announcement message https://groups.google.com/forum/?fromgroups=#!topic/comp.lan...
where they say
"For press information contact support@cppgm.org".
Nevertheless, the domain has no associated MX record. I'm calling it, this is almost definitely not real. And the class has a start date but no end date?
It's probably a recruiter phishing scheme.
This is true for the majority of animations, but .gifs have come to serve a niche for short video content sans audio that they uniquely fulfill on the web. If APNG or MNG or whatever could replace huge animated .gifs for things like r/cinemagraphs I'd be thrilled.
Entrepreneurship is world-building.
This also might be a top talent filtering system. If someone is able to complete the absolutely massive amount of work - in their spare time for fun, no less - they are quite likely to be of interest to some of the top companies.

In this case, putting a flashy name will lessen the scheme, as it will attract people that will do it with purely career-oriented motives. Or, as another post noted, it might just be a scam.
But here you are falling into the same trap that causes this problem in the first place, treating people as individual machines, assuming that the limits are to be solved with rules and guidelines.

The real problem is that social context matters and that devoting all one's time towards work for an extended period distorts that context. Coding in isolation (which to be fair is where we all bulk code) also distorts that context.

I usually put in far more than 38 hours a week. The reason I can do this is I work from home around my wife and kids. But I also put in less than 38 hours of heavy-lifting work (the rest is spent in smaller time parcels doing things like financial review, strategic planning, marketing, blogging--- yes I include that since it is part of my marketing--- etc).

To live is to work. But when work is devoid of non-work social context, i.e. where work and home life are separate, then one cannot merely work. This also has the effect of excluding women and all kinds of other problems.
Frases de sabiduria geniales
Big data pay premium
Bill Cheswick, of the "Firewalls and Internet Security; Repelling the Wily Hacker" fame, gives a great talk called "Rethinking Passwords" calling for a better solution:

http://www.youtube.com/watch?v=KRVRlhrLKkI [video, 22 min]
http://web.cheswick.com/ches/talks/rethink.pdf [slides]
weechat: http://www.weechat.org/
Do you find that this is a big deal in practice, or does it just feel messy to you?
> dancing around while shaking a bag full of broken glass

Depends what happens next.
Of my five startups, two have been virtual. I am gearing up to start a virtual team with my new startup. What I like about my virtual teams is that it makes the best use of each employee's time, it forces employees to communicate in ways they may not if they are in an office together everyday, and each employee feels like they have some control, which leads to a less bureaucratic environment.

All that said, you have to have an absolute level of trust in each employee, because not having the team within arms reach can leave you feeling a bit uneasy at times.
Explore the Grand Canyon With Google Street View
Not just "a definition", it's labeled Freedom Zero. The ability to run the program, for any purpose.

http://www.gnu.org/philosophy/free-sw.html
http://opensource.org/docs/osd#fields-of-endeavor (The OSI's open source definition is derived from Debian's Free Software Guidelines, which includes the same prohibition against licenses banning fields of endeavor).
IPMI is so bad, I don't even use it for my servers when it is available! Better to just wait and call someone at the datacenter who will take care of reboots properly.
So it's actually a grandfather-grandson dynamic, just compressed into 15 year cycles.
I'm not sure if it was related but Amazon wouldn't let me rent a movie tonight... Tried on multiple platforms (directly from PS3, website) Not cool!
It's not free if they lost millions of dollars in the process. The % of people in your situation is probably less than 1, so the net is still a loss.
Long ago I learned that system source code is not as important as data. You can always hire hot-shot software developers to (partially machine-)translate the system into the langue du jour.

Using XML allows means the data associated with every "page" in the system automatically doubles as a service (SaaS). XSLT allows those those services to be translated into JSON, ASCII, PDF (via LaTeX), XML, or the format du jour. With this architecture, the amount of time to publish a new export format for every "page" in the system is reduced to the time it takes to write a new XSL template: hours to a few days.

All pages can reuse the same code to render themselves:

$data = get_xml( $id );
$xml = get_xml_dom( $data );
$xsl = get_xsl_dom( $stylesheet );
$proc = get_xslt_processor( $id, xsl );

echo $proc->transformToXML( $xml );

This cleanly separates business logic and the data model from presentation, plus much more. Perhaps it is masochism, though. ;-)
A fine idea for a one or two man shop but if with a larger organization you then have a conspiracy. If word leaks could cause some major issues (along with more publicity).
The cheapest option they offer is $200 a year, my option has no ongoing cost, works offline or with a limited connection, works for locally hosted sites, works for resources I access through a VPN or tunnel, etc.
So this seems like a pretty enormous task. Having written a couple of compiler code generation phases, I must admit that this challenge is very attractive.

However, there is something a little off about this proposal. First, the size of this effort is really quite substantial, even neglecting optimization. Secondly, the phrase The C++ Grandmaster Certification began
development as an internal training program, and the foundation was founded to offer it publicly suggests some compiler-writing company heavily involved in the C++ space. How many of those are there really? I mean, it has been 20 years since anyone made any money producing C++ compilers. All for-profit companies do it as a side effect. VC++, for example, in the 90s had 50 people working on just the compiler itself, not counting the Visual part.

So it presents a secondary challenge, which is 1) is this a real company 2) what really is the end goal?

Edit: Also, the bootstrapping question is not well addressed. What do we have to start with? Regular C? can I do the first phase in Lisp or Arc or Factor?

Am I allowed to look at other source, like that of g++ or clang or llvm or objective C?

Finally, the apparent copyright terms seem at least unacceptable, if not downright goofy.
as @wglb said below I can't disagree with you more on the Dragon book. Yes, there are probably better resources out there for lexing and parsing but have your looked at the rest of the book? It actually covers most of the important static analysis techniques in sufficient detail to implement many of the important optimizations. In short: there is a reason people keep recommending it: it is a really great resource.

Also, if you do want to implement a traditional Yacc like parser generator then it is a pretty good resource for that as well (having done it). Finally, while writing a parser might be a "character building exercise" sometimes there is also no getting around it.
How long until an enterprising scumbag tries to use this to communicate with their botnet?

It's already been done with Twitter/Tumblr[1] -- anyone know if it's been done with pastebin or any other login-free online note app not protected by a decent CAPTCHA? I'm genuinely curious!

[1]http://ddos.arbornetworks.com/2009/08/twitter-based-botnet-c...
From Traction to Scale (~$10M): The Hardest Phase. But — The Cavalry is Coming.
I beg to disagree. For something as complex as C++, writing the preprocessor, the parser, and the code generator is very much beyond a man year.
why not give a 14 day trial? $29/month for 1 signature seems a bit high for someone like me thinking this is interesting but not sure if it's worth 3x what I pay for spotify..
site looks great btw, love the concept!
Am I missing something or is Jekyll an outrageously user unfriendly blogging platform?

I have to create a text file, specify the layout, ensure the timestamp and title is in the filename, and then write HTML.

I am stunned no one has made a simple scaffold that lets me create a post with a button click and then use markdown to write, on a simple web app.
When you are spending a significant amount of time telling the type system which assertions to make about your program, the compiler is not doing that work for you.

I am concerned that it is forbidden even to question Haskell advocacy around here, even where it extends into pretty bald bashing of other languages.
Note that despite the title this is about servers rather than PCs. But in some ways that is even scarier.
No, even the second edition is hugely out of date.

First, note that basically the first half of the book is about parser implementation. Then, it basically just teaches you that there's only one parser and it's called LALR. Of course, they didn't include anything like packrat, but even worse, they pretend like a LALR generator is still better than LR, even though LR was extended to be tractable for large grammars years ago.

And even with all that, it's far too high level to be of use in actually engineering a compiler (which, by the way, is a good intro book).
That's not static. That's client-side dynamic.

Words have broadly agreed meaning, despite what you or Humpty Dumpty may think.
http://www.loc.gov/exhibits/freud/freud03a.html
Regarding the company in question -- my own best guess would be one that does static code analysis -- Coverity [0] comes to mind, for example. I can't really think of any other companies that would benefit greatly from having a large stock of employees that all know the C++ standard intimately. Except of course for those that write compilers, but as you say, there aren't many of those around.

[0] http://www.coverity.com/
8 Retailers Closing The Most Stores 2013
Andrew Sullivan and the Limitations of the Subscription Model
Graph Search Does What Google+ Couldn't
Gonna go with "recruiter phishing schemes" for $1000, Alex
I wasn't saying that it would take a year or even a few years. I was merely saying that most of the effort in gcc/msvc was related to things like optimizing and maintaining multiple architectures. A simple compliant C compiler that only targets x86_64 and performs no optimization, for example, would be much smaller than GCC.
The People's Republic of Hacking
Heck, the second Google hit for "php mvc framework" for me was a 2009 guide to writing your own (talk about not getting the point of a framework). There were two more pages in the top ten for PHP MVC framework comparisons.

Ha ha ha... yeah... writing your own php framework... who would do such a thing...

I understand why it's supposed to be a bad thing but I also think it helps to understand the principles involved in frameworks and the mvc pattern, and one way to do that is try to make your own. Then when you pick a real framework it won't seem like magic.
> Five years, hell three years out the mac hardware is obsolete and unable to use the newest OS. I hope your software is still supported on the old hardware! How is your custom POS developer going to test for that by the way?

Why would their software suddenly stop working on old hardware?
I'd expect this to be the case every year.

Companies can only acquire companies they can afford. When you take outside investment, your investors want a significant return, which places a floor on your acquisition price. The value you have to create gets bigger, and the pool of companies that can acquire you gets smaller.

Raising money is hard, but should you want to and manage to, it's very easy to paint your self into a high-valuation corner that blocks all sorts of opportunities to make life-changing amounts of money.
When you use a programming language, you use its ecosystem. Haskell has its own tools and norms outside "the language itself" which I am obligated to take advantage of. If I develop software in Haskell, but completely ignore these tools, and make complaints which have DIRECTLY to do with my non-use of available facilities, I do not then have the right to say that Haskell is broken and objectively worse than language X. It does not follow.

Writing unit tests is not hard. Nor is it rare or exceptional. Wrestling Haskell's type system is not necessarily easy. Overall, making programs do the right thing is a big problem in any language, including Haskell, and one hopes that any system of significant size is being tested properly whether it uses a static type system or not.

The use of a type system is not in itself an objective slam dunk for Haskell over Python or anything else.
It's kinda like saying that most of the legwork in space exploration goes into space ships and mission logistics so just building a dumb launcher rocket is far more tractable problem.

Indeed, building Saturn V is nothing compared to flying men to the Moon and back. Does not mean you can build a Saturn V from scratch. And people who are promising to teach you how either are geniuses or just in denial.
Google doesn't necessarily need nano second or sub nano second resolution.
It would be good if a program let you view each sentences history on its own, so you could see different alternatives without needing to change the whole document.
Have you looked at it?

How can you say there are better references for lexing and parsing and leave out that the entire first half of the book is lexing and parsing?

There are a ton of books that are better at every single thing you would want. Engineering a Compiler. Modern Compiler Implementation in ML. The compiler Handbook.
not working in latest chrome?
packrat is not a panacea: once you try to add left-recursion into the mix, it becomes much slower than LALR parsers.

LALR represents a nice tradeoff: both LR and packrat involve much much larger state tables than LALR parsers.
Both of them did absolutely amazing things. They were both very complicated characters. They both made an enormous contribution to society. They both drove their employees to the limit, and sometimes over the edge. Bill is following the tradition trajectory of American tycoons. Questionable business practices amass a fortune, which is then spent improving the world. Jobs was an artist whose medium was technology. His art was his offering to the world. Just my two cents...
This looks great. Now I just need an android to play it on. :c
Ask HN: what do you do when you feel down? 
There is a lot of talk about depression since the death of Aaron Swartz. But even if a person is not clinically depressed, he or she will still feel down once in a while. What do you do when you start to feel down? What has helped you to bring your mood up?
Am I the only one who forgets Racket? Everytime I visit the site and browse through the documentation, I find myself wondering why I'm not using the language. Years ago I used Chicken Scheme but this seems more robust and the standard library is adequate. Who's using this in production? What's your experience?
Software maker faces jail because his product was illegally used
What is your definition of H though? If someone decides to offer a large block of shares for sale, and they break it into 100 lots, are they a high-frequency trader under this definition? What if it's 10,000 lots? 10,000,000?

This is a data structure problem at its core - the fact that someone entered one billion BUY orders at $15.51 should not prevent me from seeing that there's an outstanding order at $15.52. The stock market employs the queue only for legacy reasons.
Much of the news ia a facade. Reporters often get things like economic numbers and speeches prior to the event.

Things like the State of the Union Address and candidate speeches are usually provided to the press beforehand so that they can package together a story. Next time you watch a major political speech, listen to the pundits prior to the speech. They will talk about all the things that the candidates are about to say.

With regards to economic numbers, there's very good reasons for them to do it this way (pre-released to media and embargoed). If it is not pre-released, reporters will need to take time to report the numbers which gives certain people an advantage.

For example, if you're monitoring Bloomberg for the CPI and the reporter is a slow typer, a person monitoring Reuters would have an advantage over you. Secondly, this forces a situation where reporters are in a hurry to get the numbers out which could potentially lead to errors. With these types of numbers, an error could have impact of billions of dollars in trades.
Ah, a good possibility.

I can't find it now, but they published a paper that said "There is no such thing as C" in which they discuss the widely varying implementations and expectations of C, different enough that special flags had to be invented on their tool to get weird programs to pass.