skysight-inc/HackerNews huggingface dataset:
There are some new CSM's out there that are growing at an amazing rate. I have been a part of the craft cms[0] community since beta and now they have their own stack overflow (stack exchange) site which was the fastest any stack exchange site has ever been put into production from user voting and participation.

I encourage everyone to check it out.

[0] http://buildwithcraft.com
It is still going, and there are a multitude of free emulation servers that have an incredible amount of popularity still
I don't mean to nitpick, but I have to take exception to the line "don’t talk loudly on their cell phones about you in a foreign language".

Obviously talking loudly on a cell phone is an undesirable trait for a driver. No question. But I do question the assertion that they're talking about you. I speak a few common languages and have heard taxi drivers around the world speak on their phones and assuming that I only speak English. They very rarely talk about me and if they do, it's usually in a relatively professional context, i.e. "I just picked a guy up at the airport", not "this idiot doesn't know what I'm saying so I'm going to say insulting things about him".

I don't know quite why people who hear others speaking a foreign language tend to assume they are the topic of conversation. People usually have more important things to talk about. Of course, sometimes you do catch somebody talking about you and that tends to be hilariously awkward when you respond in his/her language!
I thought the headline meant to count to ten when a plane goes down...while you are in it!
and stop signs and traffic lights and people crossing the street whenever they damn well feel like it
While there are many cogent points to take away from the OP, I feel that the attack and attribution of motives to very large, very faceless organizations is misguided at best. I'm sure there are some who value the revenue that comes in, especially given how many other large organizations duck their responsibility in supporting public infrastructure. But I'm also sure that there are people who voted for politicians to create these laws, precisely because there were issues with unlicensed, unregulated taxis. Take the OP as one data point; I'm sure that there are just as many horror stories about Uber experiences out there, some of which could have been prevented by regulations.

Not saying it's perfect, there's definitely room for improvement. But the broad brush strokes of this piece feel too broad, and not nearly deep enough.
When you delete a github repo, you have to retype the fully-qualified name of the repo you want to delete. I think that's exactly the right level of annoyance: it makes sure that if you're mistaken about where you are, you realize it, and that if you're making a typo, you'll have to make it the same way twice.
the vast, vast majority of drivers do not own their medallions, or the cars they drive for that matter.
Appropriate or not, it's probably what was to be expected in what I imagine even in 1981 was not the most enlightened HR management regime (the US foreign service). Also, 32 years is a lot of time to wash away the bitterness of having been unfairly fired from a summer job, especially if you, as the author, ended up doing pretty well for yourself.

Also, whether or not it was appropriate is completely irrelevant to the story being told.
Cool - the one I wrote was years ago. Looks like it's not necessary any more.
To the curious - I got this working (thank you def- for the rosetta code examples!). Point of correction - the library I was actually using for bignum support was GMP, not GSL. (I was getting confused because I used functions from GSL for a different problem).

Importing a standard procedure from a C library like GMP actually is pretty easy (use the importc/header pragmas).

Here's what tripped me up:

* Calling variadic functions from Nimrod (just wrote a wrapper)

* Getting to link against gmp (used the passL: "-lgmp" pragma)

* Remembering to free what was allocated by C library functions (can't GC what you didn't allocate) - caught with valgrind

I'll probably push to my github repo, but can post to a pastebin or something if there's interest in a less cookie-cutter example
'Enigma' the novel by Robert Harris on which that movie was based, is superb though. Definitely makes 1943 seem like 1943.

Another book worth reading is David Kahn's historical account 'Seizing the Enigma.'
Do people think this is a move to compete with Facebook's Parse acquisition?
Probably not: in the past, Pin has matched stripe's pricing so we'll see if they do it again.
All of my best projects have been effectively coordinated over email - no other productivity tool involved. In my experience, if a small, nimble team can’t effectively coordinate over email - any tool will only exaggerate their problem.
You can negotiate with AWS.
Fiddler will generate its certificate on the fly for you, reducing the risk a fair amount.
That is kind of hilarious and amazing. My understanding is that the writers' strike also accounts for the notorious clip-show episode "Shades of Grey" in Season 2, in which an entire plot is loosely constructed around Riker's "flashbacks" to footage from previous episodes -- made all the more jarring by the fact that it's only Season 2, and there haven't even been all that many clips to flash back to.
SpiderMonkey uses one of the rather elaborate, carefully-tuned modern allocators (tcmalloc or jemalloc, I forget which) that's designed around clustering allocations into 'size categories', and carving allocations out of those categories. As a result, a given allocation will end up with overhead based on the size bucket it's put into, and certain buckets may perform better.

In this environment it's very useful for each type to be fixed-size (within reason) and be consistently sized. You'll end up with all your JSStrings allocated out of the same size bucket and other things get simpler and faster.

For example, with fixed-size JSStrings allocating out of a fixed-size allocation bucket, perhaps thread-local, you can allocate a string by atomically incrementing a pointer. Speedy!
That's a bad interface that allows you to split strings at useless codepoints and get illegal UTF-16 strings as the result.
Spotify, Pandora and how streaming music kills jazz and classical
A very awkward way of using Fiddler from OS X would be via a Windows VM that had Fiddler set up to allow connections from other machines.
How many ancient Egyptians are around wanting to trade their silver coin for cows?
You already have UTF16 which is both complex and inefficient (because of two byte representations of Latin characters)
The simplest rule of computing is, if you have a problem that can be solved economically by just throwing more RAM into a single machine at it, you should do it (instead of any other dimension, and assuming you don't have other constraints).

No, that's no common for production servers for popular web services, though- they tend to shard across other dimensions because the web services are often CPU or network-bound.
Not as much as we hate the person who made the decision to prevent phones/computers from turning on immediately when the battery is empty, even if they're plugged in :P

If I ever meet that person IRL... I might even go so far as to make a tasteless joke about committing physical violence in retaliation for the hassle they've caused me.
...no, I think what the comment parent is saying is that ATMs:Bank tellers :: Uber : Taxi drivers is not a valid analogy.
I don't, I think it's dumb.. but I think that's how people are defining it? I'm no economics major though. Totally ignorant.
For the sake of someone who has never developed on a Macintosh and only saw CodeWarrior in action a few times, could you explain what happened and how Apple responded?
Gotcha. I've been thinking a lot about BTC recently, but I'm useless when it comes to economics and there is a lot of "faffing" around it. Thanks for the information. :)
To be fair, the compiler is checking against what you told it the database looks like. This can help with lots of things, but still has the fundamental disconnect problem you'll get at runtime with either approach.

A huge problem with the tradeoff we had (well, still have in some areas) is the generated SQL is nasty, and finding the original code it came from is often non-trivial. Lack of ability to hint queries, control parameterization, etc. is also a big issue when trying to optimize queries. For example we (and by "we" I mean, "I made Marc Gravell do it") added literal replacement to Dapper to help with query parameterization which allows you to use things like filtered indexes. In dapper we also intercept the SQL calls to dapper and add add exactly where it came from. Here's what that looks like, replicate for the other methods:

public static IEnumerable<T> Query<T>(this DataContext db, SqlBuilder.Template template, bool buffered = true, int? commandTimeout = null, IDbTransaction transaction = null, [CallerFilePath]string fromFile = null, [CallerLineNumber]int onLine = 0, string comment = null)
{
using (db.Connection.EnsureOpen())
{
return SqlMapper.Query<T>(db.Connection, MarkSqlString(template.RawSql, fromFile, onLine, comment), template.Parameters as object, transaction ?? db.Transaction, buffered, commandTimeout);
}
}

And here's the our marking method tailored for our code, but you get the idea:

private static string MarkSqlString(string sql, string path, int lineNumber, string comment)
{
if (path.IsNullOrEmpty() || lineNumber == 0)
{
return sql;
}

var commentWrap = " ";
var i = sql.IndexOf(Environment.NewLine);

// if we didn't find \n, or it was the very end, go to the first space method
if (i < 0 || i == sql.Length - 1)
{
i = sql.IndexOf(' ');
commentWrap = Environment.NewLine;
}

if (i < 0) return sql;

// Grab one directory and the file name worth of the path
// this dodges problems with the build server using temp dirs
// but also gives us enough info to uniquely identify a queries location
var split = path.LastIndexOf('\\') - 1;
if (split < 0) return sql;
split = path.LastIndexOf('\\', split);

if (split < 0) return sql;

split++; // just for Craver

var sqlComment = " /* " + path.Substring(split) + "@" + lineNumber + (comment.HasValue() ? " - " + comment : "") + " */" + commentWrap;

return sql.Substring(0, i) +
sqlComment +
sql.Substring(i);
}

This results in a comment at the top of the query like this:

/* Models\Post.LinkedQuestions.cs@105 */
select top (@top)
p.Id
, p.Title
, p.Score

It's such a simple approach using the caller member attributes, but it saves so much time tracking things down.
Read/watch this advice from Derek Sivers. (The answer is 0)

http://sivers.org/multiply
https://www.youtube.com/watch?v=QgaBvEO2LYY
I would agree that hundreds of drives is a large enough sample that you would expect to see some failures.

That said, all the SSDs I've had have taken repeated pounding with no complaints. I accidentally swapped a few terabytes to swap on an SSD, and was simply surprised that the job I was doing finished faster.
Are you talking about yourself? Living in a first world country, access to first rate medical care, not dying of malaria in sub saharan africa?

Because you could be.

If wanting to live a very long time makes me hubristic then hell yes I'm hubristic. But I think your definition is way off. What's hubristic about wanting to live? Are thousand-year old trees "hubristic"?
> true scotsman
Airbnb Drops Homejoy From Cleaning Trial
> Why the fuck do you get to resell something that I made? It's mine, I should get the money for it

Because I paid you for it. I bought it off you, just the same as if someone later re-sells a desk I made for them I can't demand further payment.
I was leaving my old job and handing in my MacBook Pro. After getting permission from the network guys (who were going to format it anyway) I ran rm -rf / as root.

It was surprisingly boring, taking a very long time to delete all my files (I should have deleted them first). Eventually it got around to deleting fonts, which caused things to render a little strange, but after 60 minutes nothing much had changed and it was still chugging, so we shut it down and went to the bar for my last "Friday night drinks".
> What is left is keeping track what everyone has put in, and what they have taken out.

And that's exactly what Bitcoin is; a secure digital ledger. It's a way to securely and globally record "person A has 10 BTC, gave person B 5BTC, then person B gave persone C 3 BTC" in a way that doesn't allow person A to simultanously have given those same 5 BTC to person D (who, given the anonymity of the internet, may also be person A).

That's all Bitcoin does; it provides a secure way to record such transactions without having a trusted third party who must trust to increment and decrement the right accounts in the right way.
> Yet, in an epic fight over telecommunications policy, the paradigm is now being flipped on its head, with corporate forces demanding the government squelch competition and halt the expansion of those high-quality services.

ISPs and Telecoms are amongst the industries that lobby governments the most - they are actively fighting against Free Market, so there's nothing about this which is "flipping this paradigm on its head".
NC's law was practically written by TWC after Wilson, NC got fed up and ran its own fiber. For years Wilson had attempted to get its citizens decent broadband and TWC et al didn't want to invest in the city. So Wilson ran its own fiber. TWC didn't want to see that happen again, and after 4 years of lobbying eventually got a bill passed to ensure it wouldn't.

https://www.wilsonnc.org/living/fiberopticnetwork/greenlight...

http://www.engadget.com/2009/04/22/time-warner-and-embarq-ca...
licensing is a must, especially for the game engines themselves
cue another round of mobile analytics startups.
> e.g. different areas of RAM are differently fast, depending on the core on which your current process runs, you need to disable individual CPU lines displayed in top etc.

this is NUMA, in case anyone 'new to sysadmin' or to architecture is trying to Google this
I think we're going trough a thesis/anti-thesis cycle on tests - in the beginning, there was militant testing, 100% coverage, testing getters and setters etc (as well as more complex stuff, obviously). Then some people started coming around to the idea that there are actually large swathes of code that is simple enough that testing doesn't actually add much value especially compared to the effort of writing them, then that probably got a bit out of hand (to what you're referring to). Maybe the pendulum will swing back and we'll find a good heuristic for just how much testing is the right amount that isn't all or nothing?
>Ward Cunningham, the inventor of the wiki

Given the context, I feel obligated to "correct" you and point out that this is, in fact, correct. I googled it assuming you were deliberatly lieing.
I looked at it in some detail but they were a pain to assess. Wouldn't give me any details of the API or feature set unless I created an account... for a non-refundable $200 fee. I pointed out how ridiculous this was, and they said that if I went through their signup process and committed to paying the $200, they would let me look at the documentation without actually paying the fee. It was all so vague and ad-hoc I found it pretty hard to trust whatever might be behind the curtain.

(edit: Looks like fee is now $99, and there's a little more detail on their developers page.)

PX pricing is actually pretty good if you've got high transaction volume. But it's terrible for small biz. Most people I know default to Paypal.

Please Stripe, please come to NZ fast. You've been talking about it for more than a year. I know we must look like smaller-poorer Australia, but I promise there are people here who'd use you!
Ok, that's pretty persuasive, especially since most of the comments here are about the code. We changed it back.
The guys at Thinkmill recently did an amazing presentation at SydJS where they released the full source to a Keystone app project. Should be a great place for anyone starting out.

http://www.sydjs.com/showbag

Big thanks to @bladey who put a lot of it together!
Best Star Trek.
The article seems to be down for me. But I'm curious if there would be any mechanism in place to limit used sales in any way since electronic copies do not suffer from the same problems of wear and tear etc that a physical book would.

If I can buy a used copy of a digital book cheaper then there is really no reason ever to buy a new copy.

Hell , if the market is convenient and has enough liquidity then what's to stop me from buying a book, reading a chapter and then selling it and buying the same book back again at a reduced price when I want to read the second chapter?

I could see this might cause the price for ebooks to crash towards 0 unless there is something in place to rate limit purchases/sales.
More easily, "rm -rf ~" with a premature "Enter"
It's needed for compatibility with the Web, unfortunately.
I think JS may be from the time when UCS-2 was all there was and there were only 65535 Unicode characters.
I guess they just mean a superannuation plan.
This title is not what the article says. Can someone please change it?
Hey Internet, where's my talking city?
In general Firefox uses jemalloc, so shipping builds of SpiderMonkey do as well. However, individual JavaScript objects are allocated using a custom SpiderMonkey-specific allocator that uses fixed-size bins, knows about garbage collection information, and (as of this year) supports multiple generations. No production-quality JavaScript engine uses the C malloc interface for individual JS objects; you'd get killed in the benchmarks if you tried.
A he said, she said at the Times
The problem with this model would be actually convincing a large majority of residents. The New Zealand Government is funding fibre to most cities and towns in New Zealand. Currently they're at 15% of their target population covered, and only 3% of those 15% are connected with UFB (ultra fast broadband) service.[1]

I should note, these fibre services are a free installation for residential use and many businesses. Monthly charges are the same price as ADSL2+ internet is here.

1. http://northpowerfibre.co.nz/index.php/news/entry/slowly-int...
I believe UAC works well even when a human always hits OK. The point is to make sure a human is there and trying to do something and not some malicious code.
At the time, I thought it was utterly forgettable and stopped watching after the first season. I netflixed it a couple of years ago and was surprised to find myself very pleasantly surprised at how good the writing was. I'm inclined to agree with you, even if the original series holds a special campy place in my heart (no, I'm not old enough to have seen it in its first run).

Then I watched Voyager hoping it too was better than I remembered. It was not.

As an aside, I've been enjoying the youtube series "Star Trek Continues." They've done a great job of capturing the aesthetic of the original. I'm hoping they'll have some new episodes soon.
You should come down our way and do a tech talk about it.

If only for the wailing, gnashing of teeth and rending of garments.
If you do this in Firefox, you can go to History -> Restore previous session. This will bring up all the tabs you had open last time it quit.
Insofar as this is your guess, it's down to the language. In Ruby or Javascript it's very easy to TDD. In Java, much less so. (I'm not sure where C# lies on the spectrum).
PGM is a tough book. I'm not sure it's the right book for "level 3" unless you want to be a level-3 who is good at PGMs.

The problem with ML is there are so many different kinds. Bishop's book is a decent light weight survey, but it doesn't come close to covering all the interesting fields. You could read that and Hastie/Tibshirani's book and still know almost nothing about online training (hugely important for "big data" and timeseries), reinforcement learning (mentioned, but not in any depth), agent learning, "compression" sequence predicting techniques, time series oriented techniques (recurrent ANNs for starters, but there is a ton to know here, and most interesting data is time ordered), image recognition tools, conformal prediction, speech recognition tools, ML in the presence of lots of noise, and unsupervised learning. I don't own PGM, but it probably wouldn't help much in these matters either. I know guys who are probably level 4 at machine learning who don't know about most of these subjects. On the other hand, Peter Flach's book "Machine Learning" at least mentions them and makes pointers to other resources.

"Deep learning" is becoming kind of a buzzword for a big basket of tricks. I think it's worth knowing about drop-out training, and the tricks used to do semi-supervised learning, but the buzzword is silly. Technically "deep learning" just means "improved gradient descent." I figure level-4 is anyone making progress coming up with new techniques.

That said, reading good books is one way to make progress. Knowing the right people is the other way.
PINBALL (something flashy with buttons) was a demo. And that demo got us to the moon:

"Apparently, nobody had yet arrived at any kind of software requirements for the AGC's user interface when the desire arose within the Instrumentation Laboratory to set up a demo guidance-computer unit with which to impress visitors to the lab. Of course, this demo would have to do something, if it was going to be at all impressive, and to do something it would need some software. In short order, some of the coders threw together a demo program, inventing and using the verb/noun user-interface concept, but without any idea that the verb/noun concept would somehow survive into the flight software. As time passed, and more and more people became familiar with the demo, nobody got around to inventing an improvement for the user interface, so the coders simply built it into the flight software without any specific requirements to do so."[1]

[1] http://www.ibiblio.org/apollo/ForDummies.html
Fair enough. In this case, there's ample reason to believe the email sender wasn't spoofed.
I have never given a fingerprint to open a bank account.
There are good reasons for this

- When the battery has just started charging, the voltage will not be high enough for the phone to actually work, because the draw from the battery exceeds the plug pack input

- Sometimes when transmitting, the phone uses more power for a fraction of a second than the power pack can deliver. This surge of energy could come from the battery, but the battery is empty so it won't work correctly

- Having some amount of battery means the phone can soft-off correctly when the plug is removed suddenly. The alternative is an un-expected hard off which is usually bad. The user might experience data loss.

There are a bunch of grey areas around low voltage, such as flash writes failing marginally or radio not working correctly or partial saves. Much easier for the engineers and perhaps more reliable for the users to make them wait just a little.
As I mentioned in another comment, the broader (and bold) hypothesis here is that our passions and peeves play the strongest role in determining success of close working relationships.

If anyone here thinks this is an interesting hypothesis worth chasing AND/OR thinks they'll get along well with me (http://willwegetalong.site44.com/), I would absolutely love to chat to you.

Or if you simply know of someone who would be interested in investigating this hypothesis.

EDIT: big thankyou to all the comments here. Much good feedback that will go into v0.2