skysight-inc/HackerNews huggingface dataset:
What about the 2015 macbook? I own one and it's been great. (can't remember the last time I needed any ports on my laptop anyway.)
Can vouch for modern linux kernels working out the box on the 2015 XPS 13. It's the happiest I've ever been with a laptop.
And still somehow feature switching works great at Facebook, Google and Goldman Sachs with big teams.

Merging complex changesets across branches is impossible to do 100% correct every time. Not unless you're a 10 feat tall code crunching robot.
That would be news to the Pension Benefit Guaranty Corporation (https://en.wikipedia.org/wiki/Pension_Benefit_Guaranty_Corpo...), which I'll note was set up in 1974. Yeah, it's for private plans, but no one who's been following current affairs is surprised by what's been happening with government pensions, if you study much economic history you'll know municipalities went bankrupt during the Great Depression, and that the Federal government massive devalued the dollar in the early '30s when it seized all of our gold.
The sons of murdered also go to cinemas...
http://news.nationalgeographic.com/news/2013/01/220113-sneak...

Possibly the cat.
The Instagram FAQs on their site say that account names are first come, first serve.

They say that if the name you want is on an account that seems inactive you should consider periods, numbers, underscores, or abbreviations to come up with an available name.

They say he violated their terms of service. I took a quick look at the TOS, and don't see anything that having the same name as a celebrity and using your name for your Instagram account would violate. I suppose it is possible that he violated some other term completely unrelated to this whole name thing, and that's why he got kicked off, and then they gave it to the football player even though the football player already had an established, verified, active Instagram account using the same name he uses for his verified Twitter account.

There is one TOS term that his name could be construed as violating, if one were take a ridiculous reading of the term. That's Basic Term 12: "You must not use domain names or web URLs in your username without prior written consent from Instagram". The football player has the andresiniesta.es domain. If we take "domain name" in the rule to include the domain name with the TLD portion removed, then any username with the string "andresiniesta" in it would be covered.
"ah, I remember that - that's when I more or less stopped commenting. I still think it was a really bad move."

Why would that cause you to stop posting?
Yea but who would ever do that. If you know that the performance of freeing the entire graph is important, then group the entire thing in an arena and free the whole arena in O(1) time.
If you mean "hacker friendly" as in completely free/libre software, one of these would probably be ideal:

http://shop.gluglug.org.uk/product/libreboot-x200/

The older X60 is slower but also similar, and Thinkpads (before Lenovo bought them) are very robust hardware-wise.
Check the actual connection for the video server, until a few months ago, that was still RC4. They only changed to 128-bit AES-GCM with ECDSA after Firefox started blocking RC4 encryption.
Have you ever used one? Please go read all the stuff about java.util.concurrent. It holds for almost all lock-free libraries, but it's way better documented than anything else.

They provide consistency and atomicity. Lock-free data structures are always in a consistent state. The view they provide is always "atomic". It moves from one consistent state to another with no inconsistent state ever visible in-between.

They provide isolation under composition quite well. They compose far better than locks which can't even handle a simple inversion of order.

What they generally don't provide are guarantees of progress under high contention. The structure will never be wrong, but it may not be efficient.

The problem is that everybody equates "consistent" and "atomic" with "absolutely must exist in one and only one place at all times". And that's too strong for most uses.

Yes, if you are writing bank software, you want that transaction to ever only exist in exactly one place.

But, 99% of the time, that's too strong a guarantee.
If freedom is an issue, ThinkPad X60 would be the only viable option. If not, a high end MacBook or ThinkPad depending on what you like.
Native english speaker, math major.

This seems really awesome! I feel like descriptive, long variable names have both an advantage and a disadvantage: advantage, obviously, that they're clear, but disadvantage that simply having all that filler text everywhere begins to make the code harder to follow in a serious way. So there's always this tug-of-war between short variable names that make flow easy to follow but require a lot of context or guessing to decipher and long variable names that obscure flow.

Math (and languages like APL, K) are extreme examples of this: as an aid to thinking really hard, they go to extremes of dense notation requiring lots of context/previous to even begin to understand what's going on.

Using Chinese characters in normal code seems like it could fairly painlessly (once you knew Chinese!) get you a lot of the advantages of small-space characters while still encoding a lot more helpful context than a single latin letter.
I think that anyone reading the post you're replying to understands what the poster is saying. Feigning ignorance just makes you come off very poorly.
The point is that for your first project it just doesn't matter.
If you don't mind waiting a bit, the ThinkPad "Retro" is quite promising. We might get a good ThinkPad with modern hardware: http://www.zdnet.com/article/a-retro-thinkpad-classic-could-...

The company is even asking customers and thinking about backtracking to old designs. It's wise decision. I thought I would never see this, especially after introducing island-style keyboards and the Superfish fiasco: http://youropinioncounts.lenovo.com/s/87869/Survey2/nc/

If you are in a hurry, I would recommend getting a x220 and then waiting to see what we get. The x220 was really good, except for a horrible trackpad and a slightly noisy fan.
We are using a constant database for a similar use-case (MNP database), albeit much smaller, around 15 million phone numbers. It requires almost no RAM and you update the database as a whole with no downtime.

[1] https://en.wikipedia.org/wiki/Cdb_(software)
C, D, R, and Go are the first links presented in Google search results searching simply on their name.
He is probably using Crouton : https://github.com/dnschneid/crouton
I hope someone more serious is looking into it (or has already done so) but my alarm is checked by the crack-pot flags this guy's raised for me. Most obviously that he tries to demonstrate P(A|B) by testing P(B|A) - if you don't understand basic statistics, your conclusions are suspect.
I'll definitely check them out. Picking a new email provider is really hard, reliability is key. And to me gmail used to represent the ultimate reliability, but no more.
I can confirm the X220 has excellent ergonomics.
> GC could actually be really useful in C++ or Rust for postponing the destruction of many small objects and doing it in one big sweep instead.

I've seen this claim before, but I've never understood it. You could add delayed reclamation to your system malloc if it actually helped things: just replace free() with a function that adds to a free list but doesn't actually recycle the memory. That wouldn't require more than a couple of writes and a TLS lookup.

I suspect that the reason why mallocs don't do this is that there's little benefit compared to just recycling the memory right away. Prompt reclamation is actually really nice for cache reasons, and adding memory blocks to a free list is what free's fast path does in the first place.

Now that's not to say that GC wouldn't be useful in C++ or Rust. I think what a GC would be useful for is for lock-free data structures and long-lived structures with dynamic lifetimes, especially ones shared between threads, to eliminate reference counting traffic. But for short-lived objects, if you have any sort of mark phase, you've already lost. Fundamentally, it's really hard to beat a system that precomputes the object lifetimes at compile time—which is what manual memory management is—with a dynamic system that has to compute them at runtime.
Feature Toggles are one of the worst kinds of Technical Debt
> many of the low latency, memory hungry domains that comprise modern systems.

I would say it really depends on the situation, and especially what you consider low-latency. It also depends very much on what your definition of low-latency is.

For background: we run a betting exhange. Customers will notice and complain if any action with their money takes more than ~100ms. This threshold aligns quite well with old research about human response times [0].

On the other hand, if we were running an interactive chat/forum system, it would be acceptable to have >500ms latencies from click to comment display. When it comes to communications, reliable persistence tends to be more important to raw latency. (Or to put it another way: it is okay to delay displaying of a fresh comment until it has been stored. That way the user knows they do not need to rewrite their contribution.)

I personally have a background in embedded systems, where hard latency limits are the norm for user experience. Developers, end users and companies are all willing to sacrifice throughput for near-immediate feedback .. and doubly so when the system in question happens to control a vehicle dashboard.

At 60 frames per second, one frame refresh is about 17ms. When you need to provide visibly immediate feedback to the user, you have at most 6 frames to display it. Because the data must be available before the rendering of the 6th frame starts, you actually have on average no more than 5,5 * 17ms = 93ms to calculate the response.

The real trick is figuring out where you can get away with non-immediate latency requirements. And incidentally, this has knock-over effects: if hard low-latency is not necessary, some GC spikes should be tolerable. Spend the engineering effort where it is crucial, not where it might be nice.

At least until you have more workforce than engineering problems.

0: http://www.nngroup.com/articles/response-times-3-important-l... (Nielsen, 1993)
Clever idea. Top item on mine:

My YC app: Dropbox - Throw away your USB drive (getdropbox.com)

https://web.archive.org/web/20070405032412/http://news.ycomb...

Edit: Look at the stats! 27 points kept it at the top after 8 hours. How things have changed.
Hacker Search Engine Becomes the New Internet of Things Search Engine
Sourceforge isn't providing most of the distribution infrastructure, you usually download tarballs from mirror sites, you only connect to sf.net itself if you want to use the SCM system for a given project.
I agree. I've a T530 with Quad Core i7 and I prefer it to my previous MacBook Pro. I'm running Debian Jessie.

I believe it's also possible to replace the BIOS with CoreBoot, however I haven't tried.

I like the fact that I can easily replace components (battery, cd-rom with an extra HDD, etc.). Lastly, I agree, they're rock solid and survive most drops and even waterspills.
I am a Python/Django developer. I love my learning and work in Django web development.

Aren't you injecting me a negative thoughts?

From web development, try to go for scaling multiple architecture machines, or go for big data processing or go for Arudino, you have plenty to explore..

I personally feel, there is nothing wrong to switch the work, as long as you have the desire to obtain the specific label in that area and dedicating yourself for it.
Indeed; by the time I came of political age in the early '70s, Mafia and insider skimming of Teamster pension funds was notorious, and no doubt one of the reasons the PBGC was established in 1974. People weren't even all that surprised by Hoffa disappearing into thin air/concrete in 1975.
Same laptop but with the 3200 x 1800 screen. The pre-installed Ubuntu version was so slow; stuttering, major screen tearing, and HDPI font issues everywhere. Basically unusable. However, I updated the BIOS and installed Fedora 22. Had to install proprietary Broadcom WiFi drivers, but GNOME 3 works great with HDPI and the system is way more responsive. Touchscreen is a little useless though :)

That being said, I like the laptop with Fedora and would recommend it.
11. What Every C Programmer Should Know About Undefined Behavior #2/3 (llvm.org)

LOL, some things change, some things stay the same
I couldn't get the hand on one yet, so i honestly don't know how well it performs on a daily basis. I went with the new 13"pro for now, and so far its been excellent.
Yes, but then you build your own layer of auth on top of it. Signed messages should work fine, though. Its an interesting idea, for sure.
I am not qualified to say if it is a net negative or positive. I just presume that if you are homeless and you have a roof over your head that is definitely a net positive.

I would actually consider donating. Ho much does it cost to build a "shed?"
What exactly was the point of this article? It certainly isn't an advertisement for becoming a foreign worker. There's no call to action and no real lesson or point of understanding that this article conveys.
Go I will give you, and maybe Io. But I actually think "None" is worse than any of your other examples.
Customer Journey Map Benefits
Somehow this turned into a thread of people debating the merits and faults of PHP. There's a place for that, to be sure, but that's not really the point.

The point is that getting started is the most important thing, and moving forward is the next most important thing. I'm not saying if someone comes to you and says, "I want to build a web app" one should say, "Do it in PHP." But if someone says, "I'm building my first web app in PHP" the most damaging thing you could say is, "lol you're coding like a noob. You should be doing that in {language x}."

I see happening all the time. Coding in PHP is better than not coding because you're terrified of not doing things "the right way," and that often is the alternative. Let him or her finish a project in PHP before you try to turn the ship around and make him or her learn Rails. Or JavaScript or Python, or Java or whatever. Just start.
I had a similar thing happening to me. Friends were traveling and shared their photos on Instagram, so I decided to log in to my old account which I hadn't accessed in a few years.

On the web page, it says "Your username or password was incorrect." Upon trying to recover my password with my email address I get "
That e-mail address or username doesn't have an associated user account. Are you sure you've registered?" When trying with my username instead I get "Sorry, this user is not active."

I decided to try to login with the app, and there I got a message basically stating that my account was disabled because of not following the Terms and Conditions (same as OPs, don't remember the exact wording in English). They don't tell you what you did to break those conditions. They do tell you however, that there is no possible way to contact them or to get your account back. All your images are gone, your friends can't follow or contact you again and there is no way you can reactivate the account or get access to the user name. No email was ever sent notifying me of this happening, ever.

Worst "customer" experience ever.
Wow, I guess I showed up pretty early. I still remember going to Startup School in 2007 and being so excited and inspired that I quit my job a few months later.

Note: I probably should have stopped following startup news after the first year or so, I don't think anything I've read after that has been that beneficial, it's just an addiction at this point. I went to Startup School for a second time in 2008 and realized that I didn't need to be there, I was trying to recapture a feeling -- but after the initial inspiration I just needed to get busy.

Why we made this site

34 points by pg 5 hours ago | 7 comments

Odeo up for sale (so they could focus on this Twitter thing)

17 points by beau 11 hours ago | discuss

Web 2.0 is a bubble for 3 reasons

12 points by xyzzy 16 hours ago | discuss

Startup School 2007: 3/24 at Stanford

26 points by phyllis 1 day ago | discuss
What was your old account name? Just bishop?
"sourcing from an organic farm or your back yard"

Sourcing from your back yard (and to a lesser degree, a single farm; and to a still lesser degree a single geographic region) means you're not eating veggies grown in a variety of soil compositions, even if you are eating a variety of plant species.

The most extreme way this can fail (that's common enough to note) is if the soil in your back yard is high in lead.
> If you would free memory as soon as it's no longer used, it could lead to delays when freeing a large object graph.

A GC still has those same delays when freeing a large object graph (assuming that large object graph is in the tenured generation). They're just sometimes incrementalized or done in a background thread. Your malloc implementation could do that too. If this were actually much of a problem, batched deallocation APIs that work on a background thread could be easily added to (or layered on top of!) the popular modern mallocs.

> Also, a lot of performance can be gained be re-using frequently-allocated short-lived objects' memory, rather than freeing them without special treatment.

Your malloc is already doing this, if it's any good. free is usually implemented with a free list.
> That seems a bit of a generalization.

Well, have you been raped, or are your opinions purely formed from a third party position?

"Yeah, I heard it's not so bad", is probably one of the most careless, senseless, benevolent quips you can possible make to someone who has been raped. No wonder the judicial system is so flawed when it comes to the victims of this horrible crime.

I am so sorry to topoligel who has to read your comment. I'm so sorry to topoligel, just in general. I wish there was something I could do myself, to make things better, other than be a kind, caring, empathic person, and try to do as little harm in my life as possible. I am so sorry the above comment was even uttered. No rape victim needs to hear something like that again
This project looks quite interesting I have to say.
There are objective differences between programming languages and it's reasonable to have strong opinions about the relative merits and demerits of each. Yes, it's toxic when people who have no real-world experience with a language or platform rant about it, because this tends to be useless bile. But that does't mean PHP is just as good as anything else.

If you only know a single programming language, you should have some inner doubts, no matter what that language is. This is healthy.
Moth generator
GuGo described its service as a “group-centric social intelligence platform.”

isn't this the worst kind of pitch, I can't make sense of any word of it.
>I used to have "rbishop", now some other developer has it.
Ask HN: Which PC's BIOS is most resistant to rootkits?
Hi,

It's become clear that both my HP PC's have rootkits installed to their BIOS. I hear my upstairs neighbors reading off my screen regardless of what OS I install. I filed a Police report, & a claim w/ my Renter's insurance, but it doesn't look like anything positive will happen- the PD hasn't got back to me in a week, & the claims adjuster said there's not much that can be done since I don't have ID Theft coverage.

I'm hoping the insurance claim will at least provide enough to get a new PC that's not infected. Naturally, I'm thinking about what PC I can get that'll be most resistant to re-infection.

Thus, I ask here- as my attackers watch my screen.
It's not just the readers that are innumerate, unfortunately.
Thank you for sharing, and I know it doesn't mean much but I'm sorry that such a thing has happened to you.
Exponential runtime.
Per wikipedia, (https://en.wikipedia.org/wiki/Invariant_%28computer_science%...):

"In computer science, an invariant is a condition that can be relied upon to be true during execution of a program, or during some portion of it. It is a logical assertion that is held to always be true during a certain phase of execution. For example, a loop invariant is a condition that is true at the beginning and end of every execution of a loop."

I didn't mean it in any more specialized sense, except that there will always exist some invariants that can't be statically enforced (Halting problem). That said, there are lots of things that types can enforce - that's what types are good for (and they are spectacularly good things).
>>> This goes for every sport

.. and many professions. Popping Aderalls is doping for geeks much like EPO is doping for cyclists.
I'm pretty sure it's a self-depreciative joke, in a "the best programming is no programming" kind of way, or at least that's how I saw it.

Just take it for what it is, don't get stuck on the details.

That said, as someone who really liked the idea of Terra and enjoys Scheme (but hasn't applied it to games yet), this is exciting.
Space exploration is towards the apex of our technological achievement

really? says who? humans have evolved to be on Earth for 100,000 years .. we're not going to colonize Mars or interstellar space. perhaps cyborgs, robots, single-cell life .. but not humans.

once you accept that, it opens an enormous set of questions. like .. is a world full of post-humans something we should be striving for? (seeing ppl's faces glued to smartphones is only the beginning, and that is sad enough).

i'm sorry, but you're talking out of your ass .. and imho, you have watched too much star trek and have become enamored with sci-fi garbage.
I've been using one for almost a month now. Solid device as long as you're not doing anything super demanding on the hardware (A couple of VMs work just fine).

My only complaint is that it's not very waterproof.
Why are Google products a no go for you and people you know?
Mac laptops are definitely the go to in the startup world. If you're using it for work and you plan on doing programming, this will make that transition much easier. Biggest perk? They have a unix operating system.

For things that are linux specific, you can always use a VM through Vagrant (there's few practical reasons you'd need a Linux GUI).

If you truly want a "Hacker" laptop, then what you actually want is the Novena. :D https://www.crowdsupply.com/sutajio-kosagi/novena
That's very well thought-out. The tinfoiler in me wonders if that's true, though, and if there aren't subtler avenues for circumvention that still target this trust-based system, especially via social engineering.

I had little interest in security before Snowden, so admittedly, I need to lurk moar and keep learning. Thanks for offering another argument I can try to fit against new facts I encounter and helping me continue that process.
Whatever laptop a hacker can get his hands on, is a hacker's laptop. and a friendly one is one that is easily upgradeable, like x86. Get a reasonable x86 laptop. In my opinion, something with an 8gb, 500gbs i5 equivalent should be more than sufficient.
I was being interviewed by an engineer at Palantir about 3 years ago, and they asked me if I browsed HN. I don't remember exactly how it came up, but it was a rhetorical question aimed at setting up some context.
Siren Song of Tech Lures New Doctors Away from Medicine
> E.g. тайна in Russian is more like 'enigma', definitely not 'classified/secret'.

How about "государственная тайна" then?
Thank you for your compassion. It does mean something.
It sounds like you need some way of applying downward pressure to the number of feature toggles, so they get cleaned up when no longer relevant. I don't have an immediate suggestion, though...
I've got a macbook pro 15 retina and the new Macbook. Would recommend either. Though you might want to offload heavy workloads to a droplet/linode if you go for the new Macbook.