skysight-inc/HackerNews huggingface dataset:
There are few viable competitors that:
- give access to as low a level as you need, in a way that you can tell what the costs of various actions are going to be,
- lets you manage different pools of memory differently,
- lets you use higher level abstractions (clear up to lambdas),
- gives you confidence that it will still be around in a decade or two (I have worked on code bases that lasted two decades), and that coders will still be available in that language.

It's not just the performance point. It's how well it's known. (Including how well the flaws are known. What's wrong with C++? Plenty, but there are people who know how to work around it. What's wrong with Rust? Presumably a fair amount as well, but we don't know what yet.) It's how mature our understanding is of how to build million line code bases that can be maintained for decades.

And, sure, people are going to scream about the memory bugs that are going to make that million-line code base a maintenance nightmare for decades. But what's going to make a Rust program a maintenance nightmare for decades? (Don't bother trying to tell me it won't be one.) You don't know. I suspect, however, that there is at least some danger that you won't be able to find many Rust programmers two decades from now.

tl;dr: C++, for all its flaws, is pretty well understood. We know that we can build at-least-somewhat-working large programs and maintain them for decades using it. We know of few other languages where that is true.
Jessica Kerr was discussing property-based testing (i.e. quickcheck, scalacheck) on a podcast recently, and I thought it was interesting she noted that the red-green-refactor cycle didn't make as much sense with property-based testing.

It's more "contemplative" - thinking about invariants of your software rather than designing for mocks and various injected components.

(although property-based testing is a bit less effective in languages that don't make type information available, to generate the input values)
Nice try Google PR guy.
Having Angular minification issues? This will solve your issues (not ngmin)
I'm a developer (probably not talented, but whatever :D ) in my 30s-40s and yup, Commodore basic, Logo, then qbasic and others... can you elaborate on why Javascript is not the "answer"?

I know that you don't generally have access to the whole machine like we do with something like Commodore basic, but at the same time it has a very low barrier to doing stuff and has a console in most browsers... at least to me it seems like a reasonable comparison.
What's even more worrisome is that summer is coming, and that usually means rolling blackouts. I wonder how this will affect all of their customers. I know companies like Green Mountain and others lease from Oncor, and put their power back into the grid elsewhere. Does anybody understand the electricity/utility business enough to explain how this will affect Texans?

I also wonder how Texas's emerging reliance on wind power affected this, too. It may be a very good thing, as Texas has a very high percentage of power coming from wind.
You get a pound a day of junk mail? That's absurd.
If you are going to sit around and "see what happens" for 3 years, you talk to a lawyer. You gather evidence. Emails, text chats, etc. You audio record meetings and conversations with people (subject to lawyer advice). You collect enough information over a long enough period of time so that an investigator can trivially search a dumped archive of email to verify your claims.

But we are supposed to believe someone who offers effectively no evidence from the duration of their claimed tenure, and who pushes it off as "I stayed because I had a family to support, and secondly I wanted to see how far they would go." and identity protection at the level of "such as waiting for the appropriate employee turn around"

So... no Hardy Boys level of investigation was performed, no evidence was gathered, no voices were recorded, no text messages were saved, no emails were forwarded, not a single byte was smuggled out on a flash drive nestled in the poster's pocket. Nothing was done to offer even the slightest bit of recording of anything.

The poster is either the most pathetic excuse for a whistle blower that I've ever heard, or it's a poor-quality April fool's joke that is 28 days too late.
I believe it prevents people from accumulating on old versions. Upgrading version becomes a routine thing. Windows XP is an example of what you get with longer release cycles. XP was out so long people began to rely on it in a big way and upgrading becomes a laborious process.

OS X doesn't have that issue, I suspect in part because they are have a more rapid release cycle.
If the crowd is stupider than individual people, why use it to curate? You'll have the latest Californian startups in drone delivery of gluten-free flour for the whole SOMA district area, but not the next disruptive stuff from a small Spain town.
In the case of Intel the underlying architecture is really fast, whereas my understanding is that Transmeta failed because the VLIW architecture did not really work out.

If Intel Cpus use a Risc like architecture nothing would prevent static translation to it, which was not feasible for Transmeta cpus. The x86 software layer would then only be there to preserve backwards compatibility.
Moreover it bugs me that people keep conflating net neutrality with all-you-can-eat data plans. There's nothing inherently wrong with charging consumers per-byte. I probably use a below average amount of data on my phone, it would be cool if I could pay less.
Unfortunately, there's also a cargo-cult aspect to this kind of thing, when managers start saying: "Everyone is now required to have three pens at their station at all times."

I'm in a company where the suit-wearing side says "we need innovation" to the tech side, but they don't actually want a discussion about what they see as opportunities or directions. They just want to invoke it by rote ritual, or order it as if we kept some on shelves.
Apparently, they drop bulk at your door every day. Not junk.
I think the real problem is the move from manual memory management to garbage collection. Garbage collection has immense advantages, and is indisputably the right choice for most application programming, but it only goes fast if you feed it lots of memory.

See figure 3 of this wonderful but terrifying paper:

http://people.cs.umass.edu/~emery/pubs/gcvsmalloc.pdf

(Caveat: that was published in 2005, and garbage collection has improved since then. However, i doubt it has improved enough to invalidate its conclusions.)

The best collector there needed ~3x as much memory as a (admittedly superhumanly perfect) manually memory management to get to a competitive speed.

There are plenty of problems where that memory is available. But there are plenty where it is not. I can justify giving loads of memory to the application that makes my company money. I can't justify giving it to some tiny little log shipper or message forwarder or other random system utility that i want to run on every machine in my infrastructure.
This is aligned with what I've heard from people working in Adsense department.
Support for that shipped in Firefox 29. At least on some platforms. Certainly my Mac version has it...

Edit: Oh, I see! You were saying that the fact that there is now support could be handy, not asking for it to be supported. ;)
I agree that doing these challenges helps you play the scales super fast. But I think the important segue to acknowledge is that the fastest pianists don't necessarily make the "best" pianists in terms of the quality of the compositions they're able to churn out. I'm saying that being a super fast pianist is not a necessary and not a sufficient condition to become a great pianist. Does it help? Sure it does! It helps to move up and down the scales and play rachmaninov for the evening's entertainment effortlessly, but at the end, it becomes one of many ingredients required to actually "make" good music.

The question is, is there a really good balance that we could engage in? What part of lives are best spent practicing heavily (and perhaps "composing" lesser music) and what's the best indicator to transition into a part where you're not practicing as heavily, but you're composing more music.
Pfizer Proposes a Marriage With AstraZeneca, Easing Taxes in a Move to Britain
I certainly do agree about integration tests being important. I've also started moving towards using a live database for my tests. I set up a postgres database by copying over a master copy to a temporary directory and running a postgres daemon from there. It takes ~100ms and with fsync turned off it makes for snappy tests. If it starts getting to be slow I can always move it to a ramdisk.

Here's a library I wrote for golang which wraps it all up in a convenient package:

https://github.com/surullabs/ghostgres
Huge congratulations Josh and Baremetrics !
It's a great app and it's good to see you growing well.

The brief conversations we've had with you have been great and we think you're a really nice guy.

We've built a similar app but hope to compete with slightly different features (more details to come).

We launched our private beta today, and it's either good or bad timing ;)

Axel, designer at SaaS Metrics
http://saas-metrics.com
On Android, when you use the inbuilt VPN functionality: no tethered traffic goes through the VPN.
The goal is to have all mail which the USPS would deliver to your address redirected. This includes advertisements. Upstream forwarding still results in the USPS putting junk into your local mailbox.
As a developer who's worked in games, embedded, and real-time situational awareness software (ex. air traffic control), my feeling is exactly the opposite.

People often greatly underestimate the amount of performance sensitive software out there, often because they're used to working on software where the hardware isn't a fixed constraint, or are indirectly relying on optimized C/C++ software provided by the system itself.

Moreover, simple benchmarks which are often used for comparing languages are not a valid indicator of the performance available in a lower-level language.

For example, switching loop-processed data from a standard AOS (array of structures) to a SOA (structure of arrays) format can improve performance by orders of magnitude by reducing cache misses (on an i7, main memory latency is ~25x that of L1 cache).

With that latency difference in mind, imagine for a moment the impact of iterating an array of objects stored disparately in memory versus a tightly packed array.

Or more related to memory management, a common allocation optimization used in games is to provide a block of per-frame memory; allocations are a simple addition, and deallocation is an assignment. All the easy cleanup of GC, but with a constant (and insignificant) cost.

Certainly most of the code does not need to be C++, nor heavily optimized; even the 16/32ms per frame game industry tends towards garbage collected scripting languages for a significant portion of the code base. That does not however obviate the necessity for a systems level language to provide the capacity for such optimization.
Agreed. It is interesting how "up in arms" so many people are getting. I've never used TDD and have been very successful both in the startup world and enterprise world. I used to think I was "inferior" and had to keep quite about my lack of TDD. At least DHH has "put a voice" to our kind.

I span that weird space between product and engineering though. So most of the time I'm hacking in something like "prototype" mode, so TDD just makes no sense. I approach it more like sculpting. I'm slowing hacking away at this block of marble to produce an elegant "beautiful" product. Once it start to take shape I can create tests and specs to define the learnings and creations that I've made.

Tests first? It just doesn't work for me.
It's possible that, since this was written on FB and not Kent's blog ( http://www.threeriversinstitute.org/blog/ ), that this wasn't intended for as public an audience as HN and was not an attempt to "whore himself out."
"Believe half of what you see, and none of what you hear" - a quote that really applies here. I've seen quite a lot of developers who are good at talking, and being critical to show knowledge - but usually it's a psychological cover for feeling insecure. This is why some developers brag about knowing obscure things, for example. Anyways, my point is - that if you haven't used it in 13 years, it doesn't matter anyways - don't feel insecure. In addition, many of those coding questions are usually created by 'inexperienced developers' who don't know how to gauge talent, so they put together 'obscure, factual' questions.
It's your opinion that "umm..." is snark. It's what I would say in person if I doubted your claims.

Notice that I actually had a question and it was answered in the thread, which I acknowledged.
Thanks man, caring is worth more than money and success to me. You can't buy caring with money or anything else, people choose to care or not care.

orionblastar@gmail.com if anyone wants to contact me via email.
Ok, but I didn't mean Scratch per se, rather the style of Scratch, and if it's useful for learning. MIT has taken over Google's App Inventor for example, and there are others like that.

http://appinventor.mit.edu/explore/
Projects don't live or die on technical merits. But more often than not, they are born or not on technical merits. Remember that lots of IT projects fail, often with no result at all to show.

That fact it easy to ignore when you interact only with competent developers.
High-leverage time-wasters
Introducing the new PHP on Heroku
Kent Beck is normally intelligent, concise and persuasive. This post is reactionary, and disappointing. I hope he follows it up with something a little more considered.
That is so old (2003). It is so much (am I supposed to read it?) (what is LISP ;).

And it is so wrong:

"XML is simple to parse": If I (I am a parser... or parser writer) hit the end of something then it is just the end: So it is "}" or the "EOF"-special-character

Again: Subtract everything (from XML), then you have "(XML-)elements only" (so "valid" xml):

What is (still) wrong then:

- Element repetition "</element>" (that won't be fast and compact):

Not fast for a parser to process and not compact to submit over the wire

- Use of more than one character to start (and end) a block (a block structure): < and > and everything in between :)

It is so super easy, nothing more
Precisely.

Every business with a pension promise/agreement should be required by law to maintain the monies to properly fund them. Anything else is criminal negligence and/or conspiracy to commit multiple felonies via theft.
Awesome. I've been using POP which uses the same concept. Will give this a try!

https://popapp.in/
The status bar is excellent for what the name indicates i.e. status. FoxyClocks in a great example - allows me to check the time in different countries at a glance, is too wide to fit on a top-side toolbar and basically something that is always present but not obtrusive.
You will then probably also like to set browser.fixup.alternate.enabled to False in about:config, to disable the trying to go to 'whatyoutyped.com' and such when hitting an NXDOMAIN.
Yes for me, I have iptables v1.4.11.1, 2008-08-01.
I'm not 100% sure that this post is supposed to be sarcastic (although I am about 60% sure.) The issues are certainly legitimate, and TDD does define one approach (of many possible approaches) for mitigating them.
The whole click bombing argument is undoubtedly true, I've seen it happen too many times. Additionally, from my experience, Google will wait until immediately before the payout period to ban. I had $750 waiting to be paid out one month then poof! Three days before the payout my account was banned.

I don't know if this guy is telling the truth, but his arguments have truth in them.
Are you terrified of actually going through the interviewing process, or are you terrified of getting rejected?

It seems like you feel that you're afraid of getting rejected, but if you're turning down in person interviews, that seems like you're worried about the interview itself and not what happens after.

It's important to clarify because they're two very different problems. Turning down offers to interview is silly; if you get rejected from the job, you haven't lost anything (because you don't have the job now anyways) and you get the experience of interviewing. Based on how it went, you can then start pinpointing where your weak points are and start trying to shore them up.

Don't be so concerned about nailing the first interview out of the gate; interviewing is a skill like any other, and it's okay to need some practice.
In brief because it needs some UI design work that hasn't happened yet. Except on FirefoxOS, where it has happened and date inputs are enabled.
The bittorrent vs voip argument has nothing to do with legality- it applies equally well if the torrent is of a Linux install iso. On purely technical grounds, some data is simply higher priority than others.

What this means is that good net neutrality rules are more nuanced than you "ISPs should not care where the packets are coming from, end of story." QoS needs to be factored in.
HN is not so simple neither ! But you have a point.
Disney Considered Buying BuzzFeed, but Balked at $1 Billion Price
He did tweet about it:
https://twitter.com/KentBeck/status/461175937892356096
"Although no other algebraic units are as famous as the golden ratio, they are of central importance to algebra."

Arguably more famous algebraic numbers include:
0, 1, The square root of two, the square root of any integer, i, any integer, the nth root of any integer,...
Same here, and that's why I still use "n" as for loop variable.
http://en.wikipedia.org/wiki/File:ZX_Spectrum%2B.jpg
I agree that the style of the typical errors differs, although there are definitely cases decided by some stupid mistake made when collecting evidence.

But even when I try and test I don't hit 1 bug per 2000 lines of code. For example, I wrote a collapsing futures library for obj-c [1]. It only has about 1000 lines of non-test non-header code. The code is tested, I've used it in projects, and I re-read it now and then trying to come up with ways to break it. Is it reasonable for me to lay 50:50 odds on a bug being present? I don't think so.

(Are you the owner of the github repo statsd.net [2]? `someGraphiteLine.Equals(null)` returns false but `someGraphiteLine.Equals((GraphiteLine)null)` throws an exception.)

1: https://github.com/Strilanc/ObjC-CollapsingFutures
2: https://github.com/lukevenediger/statsd.net
> In Java, the most obvious example of testing affecting the design of a class is the necessity of avoiding private methods in order to facilitate testing.

IMO, this is unnecessary and a failure to understand the point of unit testing: unit testing is testing the public interface of the unit-under-test in isolation from other components, so there is no reason to avoid private methods to facilitate testing since private methods are, ipso facto, not part of the public interface of the unit under test, they are called by methods in the public interface and tested by testing the methods which they serve. Making private methods public and directly testable makes unit tests more brittle and refactoring more expensive, which is exactly the opposite of what you should be striving for with unit testing.
Google's Nexus phones to be replaced by premium Android Silver handsets
Ah, missed that. Well, fair points then :)
حظك اليوم مع جاكلين عقيقى الاربعاء 30-4-2014 ..أبراج الاربعاء30 ابريل
I think you mis-characterize people's concern for pair programming and open workspaces. That alone makes me wonder how objectively you can look at this topic. TDD has become a foundational tenet of agile, so any criticisms of it naturally get seen as a criticism of agile (similar to open spaces and pair programming).

There's more than one way to skin a cat, and it isn't always fear of change that keeps people from changing.
Do you want to program, manage projects, or manage people? They're all entirely different, and usually a different personality. I am guessing by asking for a code school, you would rather program? Or are you mainly interested in a code school because of the perceived higher salary of coders (not true, btw)
Take-or-Pay gas contracts and wrong gas hedges can put you in the red. As an example, many European energy players during '10-13 struggled financially because take-or-pay + high agreed gas prices (while 50% cheaper on spot) coincided with a dip in demand, a double whammy for any utility.

Note how on the Energy Future Holdings situation, it's the trading/generation business that suffers i.e. EFH. The distribution business (i.e. Oncor), which was part of the original TXU acquisition was spun off as an independent, more resilient business (due to the regulated nature of income). Personally, KKR/TPG/GS is to blame big time for this - the acquisition financing has killed the company. They over-leveraged a highly volatile business (volatility in commodity prices + demand volatility), and this acquisition raised many eyebrows in its day.
Well, you see, we've wandered into a dogmatic war. This is like the early days of Vim vs Emacs. There will be thousands upon thousands of words expended, because being verbose means you're right. Nobody will listen to the other side because they're convinced they're right. We'll also see strawman effigies burned to the ground, and one side claiming victory because of it. I feel that this is long from over.
Here's another post as well in relation to our support where we look back at where PHP comes from, but also where it's heading - https://blog.heroku.com/archives/2014/4/29/php_a_look_back_a...
Nothing ! But you will have the opportunity to auto-retweet the offers you post
It already exists?
so some quick back of napkin math makes their annual burn rate around $1.6M in salaries.
WinXP Critical zero-day exploit – all vers of IE affected and no fix in sight
I'm not a huge user of Buffer, but I really like them because they've given us great insight into running a startup that's not a smash-hit-media-darling. VCs weren't knocking down their doors with truckloads of cold cash, they weren't beating journalists off their backs, etc, you get my point. They've had to stick to business fundamentals from day 1, methodically approaching issues like profitability, marketing, business development, growth, with only $500k of investment. They've been up and running for a few years now with a team of ~17 who're being paid competitive salaries. They've no doubt learned a lot and have been open about it. And this is just another example of their strategic biz dev, marketing and transparency they've become pretty masterful at.

I should add that this is also a great move by Baremetrics, who are likely to gain much more out of this.
The point of Turbo Boost speed is that it's unsustainable, therefore you may only get it for short flashes of time. If it wasn't unsustainable, that would be the real speed of the chip. But they can't make these chips at 3 Ghz, and also claim 10W of power consumption.

By using Turbo Boost, they have their cake and eat it, too. They can do well in benchmarks thanks to Turbo-Boost, but also do well in power consumption tests, because most of the time the chip will not be running at Turbo Boost speed, and will be throttled to "normal speed" as soon as it passes its power consumption limit.

So Intel is being misleading by using Turbo Boost speed as the normal speed.
the lack of options is what kills me, also the UI is filled with clear design flaws, and i still need an addon-bar, now i have to use even more add-ons just to make it work like it used to... ohh but we still have the weak performance, thats far from a priority...
Is It Time to Broaden the Definition of Insider Trading?
Show HN: Draw with emojis and make markdown fun