skysight-inc/HackerNews huggingface dataset:
I wrote up my own guide a few months ago, when setting up commit signing[0] - keybase optional but encouraged as a nice tool to use.

[0] https://thejacklawson.com/2016/05/gpg/index.html
I totally get where you are coming from. I really do. Some software is just complex, and it feels impossible to ship anything without all those parts in place.

Regardless. You must find a way to ship early and often. You will go under if you do not.

It helps to make a mental shift, and understand that the problem you are trying to solve is not related to features. You're trying to prove whether enough people want what you are building, and if so, what exactly it is they want (you will get it wrong the first time, and probably the second time too... this is why iterating fast with as many customers as possible is key).

Will the product be sort of crappy and missing all sorts of "essentials"? You bet. But, crappy code that does what people want and they will pay money for always, always beats an untested fully-engineered solution.
For the curious, the Equation Group Wikipedia article has a section dedicated to Possible links to Stuxnet and the NSA: https://en.wikipedia.org/wiki/Equation_Group#Possible_links_....

If nothing else, I found this compelling*

> In addition, timestamps in the malware seem to indicate that the programmers worked overwhelmingly Monday–Friday in what would correspond to a 08:00–17:00 workday in an Eastern United States timezone.

*assuming you trust the timestamps.
No. You are now lying. You said that 'not many' support it, but a majority do. Go re-read your original post.

I have not read beyond your first paragraph, because you clearly demonstrated that you are EXTREMELY DISHONEST in it, and there is zero value in attempting conversation with a proven liar.
>Not everything needs a schema.

Everything does. Data without schema are just noise.

The real question is whether you'll enforce it at the DB level (and suffer from inflexibility) or enforce it at the code level (that, obviously, should know what field is what, and which fields are available, e.g. enforcing a schema at runtime) and get potentially corrupted data, management overhead, etc.
Ask HN: Swift tips on Snapchat feeback?
Hey,

So I recently starts doing mini tutorial / snapstorms on snapchat (@rustywicket) would love some feedback on what you think would be good topics to cover.

Started after finding stories to be a great way to learn after watching fitness tips etc.. as it was short and to the point.

Any feedback / advice would be great!
Lost efficiency. If you want a semi-persistent relational DB, you can use BerkleyDB. There are also embedded DBs for Java, and probably other languages. If you do this, you're not wasting RAM for the VM and the guest OS. The DB gets its memory from the large application install.

edited for typo.
Most of these houses, and most McMansions, would look and function much better if they just rid of two features:

1) Gables that don't terminate a wing of the house
2) Massive hip roofs

#1 makes no sense from either an aesthetic or functional point of view and ends up doing nothing besides adding cost and making solar panel installation more difficult.

#2 also makes solar panel installation more difficult, is harder to ventilate (or air seal and insulate, in the case of cathedral ceilings), and unless labor is extremely cheap, more expensive to build compared to trussed gable roofs.
Matrix-IRC bridge v0.4.0 has been released
If you choose to live in a place where you voluntarily pay taxes to Boko Haram, and you do not use any time, money, or energy to oppose those policies, then yes.
And then you need to wait for browsers to support it...
It's so funny that someone even downvoted you for calling him out on his bs.

Databases like Postgres can run languages like JavaScript or Python for their stored procedures. ArangoDB does nothing new in that regard.
>"Internet feminism" represents pretty much the entire range of feminism; if you disproportionately perceive some particular segment, its probably because you have a disproportionate reaction to it.

Please stop playing with words, and please stop the thinly-veiled accusations.

Yes, the full range of feminism is represented on the internet, but far from proportionally. Some groups are distinctly louder, more zealous, and receive more "air-time" than others.

>I'm surprised you think that they haven't taken up the issue of men in nursing , since its been a fairly common theme in feminist circles (including on the internet) for quite a number of years

Indeed, though not in third-wave revolutionary circles that are the object of my criticism.

Please understand you're conversing with a feminist, and please understand that most people would be surprised by the (very valid) examples you bring up. This speaks to my original point: a very thin and radical sliver of feminism is over-represented on the internet and in the media, which in turn hurts our cause.
Smart people screw up all the time..

If they're real, that's probably how these files got out there in the first place.

If you got your hands on something like this, you probably think you're pretty smart, and you'd probably try to come up with some smart way to make some money off this, and this is the plan you'd come up with...

See my first sentence...
Palo Alto planning commissioner resigns protests restrictive land-use policies
Js2-mode: a new JavaScript mode for Emacs (2008)
Pick a state whose laws, people, and culture you view as being backward, ignorant, or otherwise undesirable. Let’s oversimplify and call it a bad state. The bad state also has some influence over the federal government, exercise of its power, and therefore control of good states.

Should Mississippi rule over California? Should New York rule over Texas? Most will reject at least one of these propositions. Thus, the United States are a system of divided powers.
Not being optimized for a particular use case, makes it a poor choice for anything outside toy, or best case, medium sized applications.
I'd usually start from a problem and choose a store rather than looking at what stores excel at. So I won't speak to places where I haven't seen something solved, but here are some examples:

1. Redis is great for caching in front of a relational database, and also for running task queues. I've used it personally in both cases. Unlike MongoDB it drops data based on cache invalidation criteria, rather than dropping it randomly. Caching is one of the cases other people are proposing MongoDB for, but it's ridiculous to use MongoDB here when Redis exists.

2. Cassandra is used by Reddit and Twitter--search around and you can find lots of good writing about how they use it. Personally I've only used it indirectly via Stream.io.
Without starting a VCS war:

+1 for Mercurial.

If, like me, you do not have a good memory for arbitrary syntax, then mercurial is a lot easier. Takes a bit of cognitive load away from using your VCS. It is thus also much easier to learn than git, so the cost of giving it a whirl is much lower.

It also has that nice feeling of being designed with the end user interface in mind, which is satisfying if you care about such things. I enjoy using tools that give me clarity about what I'm doing, and mercurial achieves this by carefully separating the different actions VCS must support.

(I regularly use both systems and have done so for years. I am not a power user. I use mercurial whenever I have a choice).
WebGL performance – PlayCanvas vs. Unreal
“The Mess We're In” by Joe Armstrong (2014)
Practical Design: Pitching
#13 should probably say 'Most deals fall through.'

surviving the sales roller coaster requires a particular (and peculiar) mindset.
Why? Now I have to learn a crappier version of SQL (no support for real date types, no user management, etc) and heaven help me if my toy project actual gets traction. I'll have to migrate everything over to Postgres or I'll have to keep my DB on a single server because it's just a single file.

Compared to just using Postgres or even MySQL I do not understand the benefit. It takes less than an hour to spin up a PG database with user permissions and migrations to make tables and indexes.
To me, the best reason for a developer to build this sort of tool is because it solves their own issue [or by proxy that of their customer/user/client]. The reason is that there is a natural pressure to build the least amount of functionality that gets the job done and there is less tendency to speculatively develop features for which there might be little or no value based on imagination about how a not yet existent user might use the tool.

The best place to sell such a tool is to organizations that are unwilling or unable to develop such a tool in house but have a need for it. That's B2B sales and determining the demand in that market is probably best done by talking to people in relevant businesses where there might be a need.

Which is a round about way of saying that that the number of responses in this thread may not be indicative of the size, potential, or enthusiasm of the relevant market.

Good luck.
Woah now, everyone knows making a site with less than 10,000 dependencies isn't possible these days.

Wait, we're talking about bytes?
And as noted nearly every time this 7-year-old comment by Torvalds is mentioned, this is of course technically correct due to the properties of git's Merkle tree, but completely impractical as far as the human implications.

Consider: You've just written 20 lines of code, and you're creating a commit. Can you validate that all 20 lines were created by you before you commit?

Now, consider that you're looking to create a tag for version 2.0, coming from 1.4, with a net 4,000 new lines of code. Can you quickly and confidently validate that all 4,000 lines of code are as expected?

Clearly, the frequent, small validations are much simpler than infrequently signing huge releases. When integrity matters and humans are involved, small batches win.
It wasn't his assertion. The user who made the assertion posted evidence that you can respond to if you like.
I took one of the binaries from the free sample and started playing with running it (!) in a VM:

https://asciinema.org/a/72dry36qqo8o97kma1gs4e6jj
Yep. And the cycle will continue...

Which makes me wonder how one decides where and when to get off the treadmill. Sadly I think it's a factor of age as much as technical merit. I hit the point where I felt that we'd reached perfection with Postgres to do relational plus the ability to go schemaless when it made sense, a nice MVC framework in a sane language such as Django or Rails, a smattering of client side magic where required using good old jQuery and finally something like PJAX or Turbolinks to give you that satisfying 'no page reload' feeling.

Get off my lawn...
> Like the author, I really cannot wrap my head around this. While I understand that duplicating documents across collections may make querying faster, what about when you want to change the document? You need to propagate the change across every duplicate of the document in every collection where it exists. This means that any "de-duplication" logic needs to happen at the application level, rather than the database level.

You're assuming that you need to change things. Almost all big-data approaches work better when you abandon that and go for a log-structured model where you only ever append.

> I think the real issue is that "if you have a hammer, everything looks like a nail." Mongo and other NoSQL stores have some real use cases, but people who are more familiar with Mongo than RDBMS are too trigger happy to employ it as a solution to problems where a RDBMS is the clear solution.

True enough, but I think the converse is more true. If you're using a traditional RDBMS you're accepting a big series of constraints in exchange for functionality you often don't use. Indices are updated synchronously on every insert, slowing your writes, for the sake of transactional guarantees that most applications aren't written to take advantage of. Queries have to be passed over the wire as strings, so your application will spend a significant chunk of its time building them (hopefully using a library without vulnerabilities to send them over the wire so the database can spend a significant chunk of its time parsing them), or else you get to deal with the db-specific and per-connection quirks of prepared statements, for the sake of supporting ad-hoc querying in a language that frankly isn't great for humans. Tables, materialized views and the like occupy this awkward in-between condition where it's not clear whether you're supposed to create and modify them ad-hoc (and manipulate them programatically) or not; if you really do need to do ad-hoc reporting then they're what you want, but often the performance implications of that make it unacceptable to do in production.

I don't think a lot of cases are good fits for RDBMS. If you don't need ad-hoc reporting then you're better off building a data processing pipeline where you produce your results directly rather than the sort of semi-aggregating you end up with with an RDBMS. If you don't need full ACID then it's not worth paying the performance cost of it. And I don't know why there aren't RDBMSes without better query languages and schema definition languages, but there aren't.
This isn't really true. ARIN keeps requesting the few unused large blocks from hoarders, but that's a dry well now for the most part. What happened was the cost per IP for businesses went up. We used to get huge blocks for free or cheap but now have an economic cost to keep usage low.

Also, some cell carriers, foreign carriers, etc are IPv6 with v4 gateways handling non-v6 traffic, so a lot of the demand that would have exhausted v4 completely just went v6 to avoid the hassle. Big roll outs can't expect v4 to work for them, so v6 is now the default for many of these carriers who are told by ARIN to go suck a lemon.

What you're seeing is a very slow and ugly move to v6 that's just enough not to cause a v4 panic. This is just the way its going to be for a long time. No one is just going to go to v6 as long as their existing v4 IP's are okay. They'll just go v6 when their requests for /8's, /12's, and /16's get denied.
You may want to mention what firmware version.
Linus has a point, but it's not without flaws. Linus is saying that it makes you complacent, and doesn't prove anything about any release, and that you should sign golden commits. He says this because only what is shipped needs to be trustworthy; and the value of a signature degrades with the more things it signs.

This raises the question, though; how do you know when you reach that golden commit? Is the signer responsible for auditing every commit since the last signature, every line of code? If he doesn't, what does the signature prove?

That's what Linus has wrong; The signatures aren't about proof, they're about audit trail. For Linus and the kernel.org use case, this isn't necessary. They've already built tooling, and most importantly structure around the code auditing. Every commit that goes into the mainline is somewhat audited by Linus himself. There's a whole layer of competent release engineers in front of him. Code doesn't make it onto the kernel.org repos without having been trusted by a very select group, and doesn't get pulled to master without the word of God.

I suggest, for the average developer, having two keys. One online, to verify that the commit was developed on your computer. One offline, that is only used for releases. One for audit trail, one for golden.
What I'd really like to see, personally, is Dropbox syncing over wifi with an arbitrary library of ebooks.
I've jailbroken mine to have custom covers. Instead of famous dead American authors I've never read, I have famous dead physicists whom I've actually read and whom I admire.
I really like this idea, and I'm a mid-level developer in the market to maintain a package like you've described. I would love to participate, and I'm going to watch this.
> Normalization for high volume insert/update transaction requirements (faster writes). Denormalization for (faster reads), typically used for data warehouses and reporting.

Normalization also better supports ad hoc inquiries and reporting compared to denormalization; denormalization is an optimization for regularized reporting patterns (responding to a question that a denormalized reporting design didn't anticipate often requires effectively renormalizing the data, which recovers the logical benefits of normalization, at a potentially very high performance cost.)

> NoSQL is designed to support both of these scenarios well.

Without the integrity benefits of normalization on updates, and without the benefits of normalization for ad hoc queries.

OTOH, there are very few uses of normalized RDBMSs where only the write performance benefits are sought -- usually at least integrity is a concern, and sometimes ad hoc querying as well.
https://GitHub.com/GitAlias provides many git aliases like yours, plus ones for topic branches, packing, publishing, logging, and more.

I'm the maintainer so feel free to suggest ones.
http://spritesmods.com/?art=hddhack
My favorite Git tip is to use SmartGit.

http://www.syntevo.com/smartgit/

It gives you so much more visibility into the state of your repo, and many operations that take several Git commands are just a single step in SmartGit. And it does show you the underlying commands it uses.

I like the way SmartGit unifies things like the reflog. If you "lose" some commits because of an amended commit or a rebase gone bad, you don't have to hunt through the reflog looking at hashes and commit messages, just click the Recyclable Commits checkbox and everything in the reflog shows up as normal commits in your log. You can immediately look through these commits and see the changes without having to check them out.

I've also heard good things about SourceTree, but I can definitely vouch for SmartGit.
I did some playing with a Kindle 3 a few years back --- I was writing programs that integrated into the native UI. I built an app which was a Javascript interpreter bolted onto a VT52 terminal emulator. You could type in programs and run them! Using the K3's fiddly little keyboard! Um, awesome. http://cowlark.com/kindle/javascript.html

This was on the 3.1 firmware, so it's likely all completely obsolete on modern devices.

...the 3.1 firmware was terrible. It was all Java based, but Java 1.4. No generics! No autoboxing! No foreach! People forget just how awful early versions of Java were in comparison to what we have today. I ended up building a toolchain using RetroWeaver to convert modern Java bytecode into something that would run on the Kindle.

Also, the firmware was based on the Personal Basis Profile 1.1. Think back, way into the past, before there were smartphones and Android and iOS... back to the heyday of the downloadable Java applet for your T9-based phone. Yup, that. Kindle apps were midlets, and anyone who remembers writing programs for midlets will be shuddering by now.

And it gets worse! The Kindle ran the entire UI, third-party applications included, in a single Java VM. It was as fragile as hell, and it tended to silt up with un-garbagecollectable data until it crashed and rebooted. If you left a thread running on application exit, it would crash and reboot. If your app hung you had to power cycle the device. I believe that the reason why Amazon never really opened up the Kindle to large-scale third party apps was mainly embarrassment.

Good times. Good times...
Show HN: NomadFeed.com – Daily Travel Blog Aggregator
Having had several visits to Italy recently, I value their sense of what is beautiful. Firstly, it feels great to be there. Secondly, the lot of them look really cool no matter what they do.

My take on this is that these McMansions are an in-between step. They look like a Picasso - and not in a good way - because they are not designed as a whole.

Once complex manual labour (most importantly: masonry) can be automated, and once one figures out how to combine a modern, relaxed lifestyle with architecture, these "mansions" will come to be seen as barbarous monstrosities.
I've been using rollupify in my projects for a few months now with no issues, but I didnt know it didnt work on npm modules. I would be interesting to see benchmarks of rollupify vs rollup on ots own to see if its worth changing bundlers.
> Please stop playing with words, and please stop the thinly-veiled accusations.

I'm not playing with words, and the accusation was direct and not veiled at all. Your description that internet feminism represents only the particular narrow subset that you claim is ridiculously unconnected with reality and only explainable by either a complete ignorance of the domain (which you deny, and I believe you), outright dishonesty (which I don't suspect, and, as the least-charitable interpretation, I wouldn't suggest even if I had suspicions in that direction), or the common human trait of magnifying the significance of things to which one has a particularly strong negative reaction.
This is really interesting. I think there's a lot of room for improvement in the tooling, though, and my gut instinct is that theoretically, Browserified/Webpacked code can be as fast if not faster than other compiled methods. The reason for this is that the bundler has more structural information about the code it's working with. More information theoretically equals more opportunities for optimization.

Not saying those optimizations will be easy. I'm marginally familiar with both the Browserify and Webpack codebases, and I certainly wouldn't want to be the one to implement any of this. But, assuming all the benchmarks in this post prove to be reproducible (and I'm expecting them to be), I hope that those more familiar with the tooling will be able to build a world where we get to have both the user experience and developer experience we want.
Sleep the weight away
I agree with the long held role of newspapers in aggregating a set of articles based on their criteria.

But in the current age, bundling seems to be broken for 2 particular reasons:

- Most people discover content via their social networks (Twitter, Facebook, Reddit etc) where they have invested a long time to curate a set of individual journalists, public figures and acquaintances rather than orgs.

- Diversity of audience expects a rather focussed content curation from different view points rather than all encompassing single identity.

This makes me believe that going forward in future, people should be able to show appraisal to unique pieces rather than a wrapper organisation, based on their quality. This might be encourage grass root level curation by people who are incentivised for their effort rather than association with an existing brand.
Starwood, Marriott, Hyatt, IHG Hit by Malware: HEI
It's a trade-off. There are a lot of reasons to duplicate (faster reads, etc.), with the big drawback being consistency. The duplications are basically caches, with similar pros and cons.

I think a good solution is to use something like DynamoDB and use hot/cold tables. Like, if you're storing something high read/write (i.e. today's olympic stats), keep it in the hot table with a frequent cache timeout. Later, when they become yesterday's stats, move them to the cold table which will basically be read-only, with a longer valid cache.

The problem with MongoDB is that it discourages this type of data management, at least how I've seen it used.
Meteor in Front, Phoenix in Back – Part 1
To think in terms of parametrizing containers I find the libcontainer spec [1]
and runc to be way more useful than what docker has to offer.

[1] https://github.com/opencontainers/runc/tree/master/libcontai...
Don't Trust Your Plugins