skysight-inc/HackerNews huggingface dataset:
WRT your point about alignment - there is certainly no guaranteed alignment in C, so if you have (double star[1]) where (sizeof double) is 8 there is no guarantee that your pointer is evenly divisible by 8.

Most compilers will correctly align something like an array of doubles, but if you have something like a struct with a char followed by a double, it's unlikely that the compiler will add 7-bytes of padding to ensure that the double is aligned correctly.

It should not be possible to get two unaligned pointers if they are taken from the same array. However, there's nothing to say that the pointers actually point to an array of doubles as the code assumes. As you rightly point out, there's no guarantee the pointers are even into the same array.

To use the struct example again, you could have an array of structs with a total size 9 bytes and therefore, to correctly walk that array, you would need to go in increments of 9. However, by taking the address of just the double element within the struct (rather than the base address of the element itself) you have just performed a sort of "type safe but really unsafe" pointer conversion.

The code will now try to walk from point A to point B by adding 8 bytes each time (because it thinks (double star) is an array of doubles), but the elements are actually offset by 9 bytes each.

E.g.:

struct my_struct {
char confusticator;
double number;
}

my_struct my_array[10];

double* first = &my_array[0].number; // base address
double* second = &my_array[1].number; // base address + 9 !

There's no alignment issue with unions because if the above were a union rather than a struct then the total size would be 8 bytes (the size of the biggest element) and both elements would have an offset of 0. You're probably thinking of "safe" unions from other languages that resemble structs but are tagged in some way to indicate which of the values is in use. C unions just lay the values over the top of each other, so you better not try to use the wrong one! Trying to prove correctness of anything involving C unions would be a challenge.

Incidentally, when I was first starting out with C years ago, I had a lot of problems with pointers (as everyone does). I learned a lot of defensive programming techniques, one of which is to never construct a loop where the termination expression is based on equality; instead use (x < y) because that way, if something happens like begin and end being reversed, the loop will always terminate immediately. It also mitigates the problem is differently aligned pointer comparisons.

This is one of the things that bothers me a about iterators in C++11. Fortunately iterators themselves are safe; it's just that they encourage (and in fact, require) writing code in a way that is potentially unsafe.

[1] For "star" read an asterisk character. I cannot believe it's 2014 and Hacker News has no way to escape a goddamn asterisk in a comment unless it's in an indented block!
That's a weird stance. If there are complexities that programmers face that can be absorbed by a compiler, it must be, because that would pay off for every programmer , in every project, in every bug prevented.
I'm hoping that this type of 'filesystem as a utility' becomes a common method of chaining programs together, simmilar to the pipe.

On a related note, another FUSE filesystem I have used is ciopfs [1] which makes a case insensitive filesystem from a given folder. Very useful for running windows programs that are incidentally platform independent (as in written in a language like Java) and break on case sensitive filesystems.

[1] http://www.brain-dump.org/projects/ciopfs/
Fake chargers are often made to resemble the original product including the branding.
Don't forget FUSAR ;)

http://fusar-tech.com
The prevalence of Macbooks in just about every photo you see makes Microsoft look more doomed than it is in fact.

https://www.google.com/search?q=startup+office&safe=active&e...

Looking doomed is a sure way to be doomed shortly so, Microsoft needs to do something about it.
Do they only hire people at This American Life who sound like Ira Glass? This guy is like a carbon copy. It's uncanny.
The answer to the question "where should complexity go?" is always "as low as possible". Complexity at higher levels interacts with more code and begets more complexity. The lack of generics or macros is complexity that is forced on the end user which could be handled by the compiler (language devs).
Stomache flu, which is the symptom gastroenteritis, is unrelated to influenza. It's a misnomer. So the Spanish Flu is not a good example here.

And to the point, we've never successfully "beat" GI because the stakes were never this high.
Read "Don't Call Yourself A Programmer, And Other Career Advice" by Patrick McKenzie (patio11)
http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pro...

Read stuff like this by Ramit Sethi:
http://www.iwillteachyoutoberich.com/find-your-dream-job/
All of it is pushing you towards his paid course, but the free content is really good.

Then, once you have the right mindset and know to sell yourself, you can apply for remote jobs:
https://weworkremotely.com/
http://careers.stackoverflow.com/jobs?allowsremote=true
The two main differences I see are: 1) The Ebola death rate is still increasing, which makes it scarier that Malaria, which has a relativly stable death rate. 2) Malaria (being tied to mosquitoes) is inherently a regional disease. Ebola has much more potential to spread to other regions.
Other question: How can you use a JS library without having the source? ... I mean, how do you make sure that it remains closed source? As far as I know obfuscating and minifying is very easy to overcome. Do you have any special techniques?
Its a tank. At school.

Where the children are suspended for nibbling a pop-tart into the shape of a pistol.
> If you write reusable, future-facing code, generic types without the erasure of interface upcasting is required.

You're entitled to your opinions, but this is a patently false statement. There is plenty of C code currently running on my machine that was written decades ago and is still actively maintained.

> And this worse-is-better attitude of the Go community gives me a dim view of its future

The Go community actively embraces Worse-Is-Better. If your opinions are well formed enough that you know you want nothing to do with it, then what is your point exactly? Yeah, you hate Go because you hate Worst-Is-Better. So what?
Give a Cow Its Due
Opal is a really neat gem for translating Ruby to JavaScript. For those who know some math, I used it to convert some Ruby code I had written to perform finite field arithmetic (https://github.com/robertzk/FiniteFields) into an interactive webpage (http://therobert.org/finite_fields/). It would be just as trivial to do with Volt.
This has been posted three times already:

https://hn.algolia.io/#!/story/past_month/prefix/0/How%20not...
The engine warning light is actually the shittiest thing on the dashboard. It can mean anywhere from 10 to 500 things, and nobody knows.

Result? Manufacturer manuals ALL OF THEM will tell you: "Just keep on driving, if it doesn't go off after a few days/a few drives bring the car to a mechanic."

Seriously, go get your manual and check what it says.

I mean, what the fuck?
How the hell is that good in ANY way, shape or form?
Mine is not as old as yours, but a few years old (1689 days), and yet it feels like one of my newest accounts, something I've only started using recently. Maybe I don't pick up accounts as easily as I used to. Older still-active ones include, at least: Slashdot, Wikipedia, Musicbrainz, OpenStreetMap, Yahoo, Gmail, an IRC nick, Paypal, eBay, Amazon, AIM, and a webhosting account. HN feels like the new addition that I'm still sorting out, despite it being years now.
While I believe that nothing is ever 100% secure, I do think it is possible to implement a large range of security layers that protect Infrastructure from all but the most sophisticated attackers (aka state/country funded). The unfortunate truth is that different organizations put different priorities on securing their Infrastructure; Some might be great. Some might be not so great. So in my opinion, it doesn't matter if they have 1000 Engineers or 1 Engineer. If someone puts security higher on the priority list, then things will likely become more secure. The industry as a whole has always seemed to put security on the back-burner. SSL is a good example, released in 1996 (TLS in 1999), but not implemented as an industry best practice (aka standard) until about a decade later. When I watch this video of the Network Engineers (not Sysadmins) reacting to these slides, I get the feeling that security was not a priority. The huge red flag was the password (which was extremely weak, and obviously no two factor authentication), in conjunction with a poor design that would allow a customer enclave to gain access to the providers network (there should have been a DMZ and/or additional security controls). Another red flag; their reaction indicated that they would never have thought that someone would map out their Infrastructure (first slide was their Routing Topology, second was the Network Topology). So I'm guessing they are not security minded, since someone into security would have taken this into account when designing their infrastructure (aka, what data am I letting out of my network?), and expected this to happen. My summary; I see a bunch of Operations guys that got caught with their pants down (no offense intended, I've been there). There is a possibility that this could have been prevented with better policy, stricter policy enforcement, and better infrastructure design. It's also possible there are 10 other poorly implemented aspects of their infrastructure, and if someone wanted to get in, they would. And I guess this is my point; Unless you make it a priority to secure your infrastructure, it probably won't be secure.
We have a community moderator and strict guidelines to insure Glassbreakers is a safe place for women. Women.com is also gender gated and thus far, it's been full of really great conversations absent from trolls. Of course, both men and women can be trolls or write threatening things online. However, the vast majority of threats of violence or misogynistic rhetoric in online forums does stem from men. Check out #feminism on quora- total nightmare.
Ditto, in particular would be good to know whether this is only for post--intrusion forensics or also useful ahead of time.
Quite prescient:

> Jobs: The most compelling reason for most people to buy a computer for the home will be to link it into a nationwide communications network. We’re just in the beginning stages of what will be a truly remarkable breakthrough for most people—as remarkable as the telephone.
> But I know that fast compilers and runtimes that implement generics exist, so I don't find the whole discussion believable.

Are you arguing that an implementation of generics in a programming language is free? (Whether it be performance or implementation complexity.) Because if not, then you admit there are trade offs. If there are trade offs, then it is conceivable that some circumstances (including programmer tastes) may lead to a valuation that is different from yours.

"Performance" of the compiler is a critical goal of the Go project. Could you point out for me an industrial strength compiler that supports a type system of your liking that can match the compilation speed of the Go compiler? (I can't think of one.) Because if not, then I'll have to invoke this: talk is cheap, show me the code.
Radical Linguistics in an Age of Extinction
Starting November, No More 32-bit Google Chrome for Mac
As far as your first point is concerned, it has been 6 years since Eliezer first wrote that post so I wonder if maybe he would give a more nuanced view if he had to write it again. Perhaps to include the twice mentioned Monte Carlo integration.

Your second point is something I hadn't really thought about. If I understand you correctly, you're saying that Eliezer is probably correct, but it doesn't matter because randomness is an incredibly useful tool that we would use regardless of whether or not RP = P or BPP = P. I'm interested if you (or really anyone) could expound on that a bit?

I guess the analogue that comes to mind is that I find monads to be a really easy way to write parsers and it's really lucky for us that bind happens to be derivable from the monadic laws, but I'm not doing anything that can't be done on a turing machine. Is that more or less on track?
"is there anything to back the opposite up?"

I worked in a couple of well known not-for-profit and a few for profit.

The vast majority of people worked much harder in the not-for-profit (note: they're still paid a good salary) and didn't get in the for-profit, unless they were playing the political games.

I would imagine that small not-for-profit dont necessarily work as hard since they're probably making zero impact since forever and live on donations, yes.
But then again its the same problem with small but long lasting for-profit as well.

The only diff is that there are more of the later and less of the former.
Yeah...it's heart breaking. One of the people interviewed in that episode died after it was filmed. And, of course, there will be thousands more like him.
> A similar problem with CoffeeScript (conflation of declaration and assignment + scope rules)

That's an issue you simply cannot fix in CS, you need a new language/fork (not having var/let is at the heart of the language's syntax). I wouldn't compare it with Go's lack of generics.
Don't get me wrong, you're welcome to feel however you like. But many don't really see any difference anymore between texting and calling, since both go to the same device. Your objection "you should call because I may be out of cell range or have forgotten my phone" strikes me as illogical especially for the kind of synchronous situation like "I'm at the door, your doorbell doesn't seem to work."
Sure, you don't need to be an expert to have an opinion.

However I didn't come to Hacker News to read a stream of consciousness consisting of the word "shitty" and random screenshots.
Thank you! At least one person doesn't think I'm a "complete tool" :)

Personally I think Min's largest advantages over Picnic are:

* more features (button sizing, messages, input addons, 12-column grid instead of 6-column grid)
* vastly better browser support (not only does Min work on IE5.5+ but also it is tested across hundreds of browser and device configurations before each release)
* Unprescriptive - it's incredibly easy to override Min's styles and turn it into something else while still making use of Min's extensive testing and features. With Bootstrap you have to use !importants and strange selectors; with Min overriding things is easy as pie.
* LESS/Sass versions
* An icon-set that works out of the box
It's fine when you are targeting one browser with a specific version (e.g. developing an internal web application with IE8 baseline). However, when you are building a web application targeting various browsers and versions, there will be subtle differences that may 'break' your UI.

CSS frameworks like Bootstrap provides you with a tested baseline, so you can be confident that the front-end you created will look the same across a wide range of browsers.

Certainly Bootstrap won't be suitable for all scenarios, but starting from a framework is generally a good idea.
I had the same feeling, to be honest I just gave up caring about my Minecraft account. Mojang butchered their account system, Then butchered their own launcher. They went from a simple log in and play to this seemingly complex mash-up of features that barely anybody even needs thrust straight at you in an ugly way. 3rd Party launchers actually do this better, where you select what you want, and customisation is easily found, but optional.

Launcher aside, mods are easily able to have shady code in them anyway. I remember a server which required you to use a custom modded client which, upon decompiling, i found contained a nice FTP module inside its mandatory anticheat, allowing anyone with permission on the server to issue your client commands to retrieve anything from your minecraft directory.
> My first impression of min is that it looks nice. Really, for it's goals, it's pretty tight.

Thanks! You have no idea how good that feels.

> As a branding thing, I'd change that URL.
I have had minframework.com for a while and still do, but it seems too long (Right now it redirects to minfwk.com) but I just got mincss.com and I prefer it quite a bit. I'll update Github accordingly. Thanks for the suggestion!
'Fragile' Lenovo? Using a cheap Dell as a comparator? Not trying to stack the deck there?
Great read. Haven't finished it yet, but this answer was really perfect:

"Jobs: Let me compare it with IBM. How come the Mac group produced Mac and the people at IBM produced the PCjr? We think the Mac will sell zillions, but we didn’t build Mac for anybody else. We built it for ourselves. We were the group of people who were going to judge whether it was great or not. We weren’t going to go out and do market research. We just wanted to build the best thing we could build. When you’re a carpenter making a beautiful chest of drawers, you’re not going to use a piece of plywood on the back, even though it faces the wall and nobody will ever see it. You’ll know it’s there, so you’re going to use a beautiful piece of wood on the back. For you to sleep well at night, the aesthetic, the quality, has to be carried all the way through."
Sorry, I don't know anything about that subject.

I should have just said "Librarians are no slouches! [Personal experience.]"

:)

[IANAL]
Whoa, my mind is more than a little blown at this idea. Like Dropbox, but for actions or operations. Just drop a file and now its being converted or manipulated. I hope this becomes a reality!
This is cool. Do you run this site?
I didn't answer the poll. I did look up how long ago I posted here on HN about how misleading voluntary response polls are. (One instance was in the last week.[1]) Another instance[1] was 1319 days ago, and I refer in that comment to a previous comment on the same issue.

Fun trivia fact: my join date is the same as patio11's join date.[3] He deservedly has much more accumulated comment and story karma here than I have, included probably hundreds of upvotes from me by now.

[1] https://news.ycombinator.com/item?id=8298063

[2] https://news.ycombinator.com/item?id=2177163

[3] https://news.ycombinator.com/user?id=patio11
Strategic Investors – You'll have sold your company. You just won't know it
Beautiful visualization! I really like it.

Only semi-related, but something I've always wondered: Like a lot of other sources, this graph shows us running surplus in '98 & '99.

At the same time, the federal debt increased in those years:

http://www.treasurydirect.gov/govt/reports/pd/histdebt/histd...

Can anyone explain why?
Apple Pay: The Real Magic Is in the API
I think trade-offs have been made already. If they bring in "generics" they would have to back-pedal and now many in the community would have to in a way refute their previous excuses of why they didn't need generics. ("But I have been arguing on public forums for the last 2 years that generics are not useful, what do you mean we'll now implement generics....")

There is also a chance that it will slow down compilation and or runtime. Java, C++ and other code compiles slower. Is it because those languages are stupid and slow and made by idiots? Not necessarily, it is because they have more features. Many added later (with added complexity of keeping backwards compatibility). The fear I think, is if Go gains those new features, its compilation and/or execution speed or claims of simplicity will not hold any more.
Dashboards are a visualization and interactive tool and like any tool have better and worse uses.

While the OP hits lots of points squarely, I strongly disagree about the "no one needs real time". In particular, any service that does onboarding or signups would be really well served to track new users through the getting started process.

I live in the custom dashboard that I built for my startup.

Screenshot: https://www.evernote.com/shard/s16/sh/c8cdeadc-643d-4028-b58...

It tracks every single signup from provisioning through to successful setup. It lets me easily see if people are flailing trying to get things working and if it looks like they are I send them a personal email like: "It looks like you might be having some issues with picking an email approver address, can I help?"

Having this real-time insight into customer issues lets me provide much better support and from an ROI basis is incredibly worthwhile.

The actual service: https://addons.herokuapp.com/expeditedssl
I'm wondering how observational dependence works when there are multiple observers. It would be neat if two observers could be seeing entirely different results. One could observe the cave lit, while the other observes it dark. I'm not sure how the engine could go about merging the two potentially very divergent versions of the world.
The Goal of Philosophy Should Be to Kill Itself
Probably school or connections. I got my first internship via a personal connection. My wife and old roommate got theirs from school. Schools will sometimes have job fairs, or councilor/advisor have some.
Steps to getting inside Anonymous.

1) Join correct irc channel

There is no step 2.
In this interview, Jobs' obssesion with fighting IBM is quite present. A decade later, the obsession was to defeat Microsoft, or at least to gain substantial market share from them.

It's quite funny that Apple became the most valuable company in the planet when they let go of this obsession and instead focused on beating the old Apple.
Extent of Antarctic sea ice reaches record levels, scientists say
Certainly times have changed. If the bubble does burst anytime soon, people might look at this in hindsight as being another warning sign we missed.
I agree that invasion is wrong, but why isn't a large-scale quarantine viable? It's not like you have to lock everyone in; you just allow those who are willing to be subjected to medical treatment passage, and deny passage to anyone else. Seems like it could help those who wish to be helped while not infringing on the right of the superstitious to reject medical treatment.
Growth is number of people per unit time. Rate of growth is number of people per unit time squared. Just as with speed vs. acceleration, there certainly is a distinction.
Even though it sounded hyperbolic at the time, I doubt even Jobs himself realized this was actually an understatement.
Sure, but this one came out of the Apple box, purchased in an Apple store in the USA
This is really impressive. Well done.

Having build a number of CMSes I have a few, hopefully constructive, criticisms:

1) I understand why you are utilizing a lot of inline styles in your rendered HTML output. However, this will become a huge problem if the HTML becomes stored in a database and the site's front-end CSS needs to change.

2) Outputting HTML in general is tough to work with in a CMS type environment. It would amazing to have a markdown output for this!

3) I fully understand why you are saving images as inline data as it does not require any backend development. However, it would be helpful to have the option to post uploaded files to a URL for server-side processing.

Great job!
corporate pr never fails to make the front page on hn now days, 63 votes 7 hours 1 comment.