skysight-inc/HackerNews huggingface dataset:
I read this, and I wonder "What happens to your company when Google goes away?"

It seems like Google has everyone gunning for it, from anti-trust, to privacy, to patents, to governments. Every tech company that has been in a war of attrition with the world has paid a heavy price. IBM and Microsoft were relatively recent examples. The battles wear on the company and while shields are at maximum now, they erode over time. People get burned out from fighting, and governments change.

I have no idea what the Google of 2020 will look like compared to the Google of 2010. But having been at Sun as a 'startup' and watched it rise, flare up, and then fade away, I realize that tech companies have a horrible track record of permanence. The list is long, Compaq (the unkillable titan), DEC (the company that 'invented computing for the masses'), 3COM, Tandem, Cabletron, Ungerman-Bass, Telebit, Etc.

Google is on a path to join them. Google is intensely protective about how they do what they do. A common complaint on the ex-Google email lists is "Where can I find feature <x> in the FOSS or even enterprise software world?" when they slip below the waves, there is a very real possibility that stuff running on their infrastructure not only won't be extractable (due to lack of access) but even if it was could not be recreated elsewhere.

I see Google's CE/AE and Amazon's EC2/AWS as a quick way to demonstrate you're product has 'legs' and if you can afford to run it on their stuff and still make a profit then, once you get above about 500 'instances' you can afford to run it yourself as well. The downside is that once you get that validation, its probably a good idea to start your migration plan off of them.
This is great to see, trying right now.

Btw - We've avoided this in past using Google Analytics as in the TOS they mention (http://www.google.com/analytics/tos.html).

7. PRIVACY . You will not (and will not allow any third party to) use the Service to track or collect personally identifiable information of Internet users, nor will You (or will You allow any third party to) associate any data gathered from Your website(s) (or such third parties' website(s)) with any personally identifying information from any source as part of Your use (or such third parties' use) of the Service. You will have and abide by an appropriate privacy policy and will comply with all applicable laws relating to the collection of information from visitors to Your websites. You must post a privacy policy and that policy must provide notice of your use of a cookie that collects anonymous traffic data.

Hadn't heard of https://www.intercom.io/ - thanks for sharing @reustle.
jesus h. christ. these people really might need medication.
Ah. Hiccup is new to me. Will have to play around with it. Thanks for posting that.

Likewise, if I find a more comprehensive tutorial, will post as well.
Here are some references about boot malware which UEFI secure boot can prevent.

http://www.chmag.in/article/sep2011/rootkits-are-back-boot-i...

http://www.theregister.co.uk/2010/11/16/tdl_rootkit_does_64_...

http://www.computerworld.com/s/article/9217953/Rootkit_infec...

I recommend reading atleast the first link.

Here's one juicy bit:

TDL4 is the most recent high tech and widely spread member of the TDSS family rootkit, targeting x64 operating systems too such as Windows Vista and Windows 7. One of the most striking features of TDL4 is that it is able to load its kernel-mode driver on systems with an enforced kernel-mode code signing policy (64-bit versions of Microsoft Windows Vista and 7) and perform kernel-mode hooks with kernel-mode patch protection policy enabled.

When the driver is loaded into kernel-mode address space it overwrites the MBR (Master Boot Record) of the disk by sending SRB (SCSI Request Block) packets directly to the miniport device object, then it initializes its hidden file system. The bootkit’s modules are written into the hidden file system from the dropper.

The TDL4 bootkit controls two areas of the hard drive one is the MBR and other is the hidden file system created at the time of malware deployment. When any application reads the MBR, the bootkit changes data and returns the contents of the clean MBR i.e. prior to the infection, and also it takes care of Infected MBR by protecting it from overwriting.

The hidden file system with the malicious components also gets protected by the bootkit. So if any application is making an attempt to read sectors of the hard disk where the hidden file system is stored, It will return zeroed buffer instead of the original data.

The bootkit contains code that performs additional checks to prevent the malware from the cleanup. At every start of the system TDL4 bootkit driver gets loaded and initialized properly by performing tasks as follows:
Reads the contents of the boot sector, compares it with the infected image stored in hidden file system, if it finds any difference between these two images it rewrites the infected image to the boot sector.
Sets the DriverObject field of the miniport device object to point to the bootkit’s driver object and also hooks the DriverStartIo field of the miniport’s driver object.
If kernel debugging is enabled then this TDL4 does not install any of it’s components.

TDL4 Rootkit hooks the ATAPI driver i.e. standard windows miniport drivers like atapi.sys. It keeps Device Object at lowest in the device stack, which makes a lot harder to dump TDL4 files.

All these striking features have made TDL4 most notorious Windows rootkit and it is also very important to mention that the key to its success is the boot sector infection.

Another bit:

The original MBR and driver component are stored in encrypted form using the same encryption. Driver component hooks ATAPI's DriverStartIo routine where it monitors for write operations. In case of write operation targeted at the MBR sector, it is changed to read operation. This way it is trying to bypass repair operation by Security Products.
> You can have Cloudflare cache your assets, but it doesn't seem to respect expires headers.

Why do you expire assets at all? If it's because you are deploying new versions of the app, would it not be better to solve this by using revision-stamped URLs? When you deploy a new version of your app, just change the stamp and let the old assets expire.

This has the secondary benefit of ensuring that all application-served pages use the assets the page was designed for, ie. avoiding the race condition when a user gets served a page from app version 1, but gets the asset for app version 2. (If app version 2 has changed an internal API used by the JavaScript, for example, this will result in actual app errors, not just a page that looks a bit weird due to mismatched CSS rules.)

Invalidation is a challenge with any kind of caching system. Invalidating passively by changing the cache key means that the cache has to keep more old cruft around until it expires naturally, but it's easier to implement and works around the race condition problem.
If it were a downloadable, installable app, I'd already be on board. As a web page, though, I'm not interested.
Eh, I figure the downvote brigade hits stories quickly and the rest of us who read things thoughtfully and don't have time to check constantly will get to it after a few minutes and issue corrective votes. ;)
You can actually make *more* money by charging less for software
IMO you should add an option to play a game with a random user. While I like playing every couple hours a la words with friends, it would be nice to be able to play with whomever is online right now...

and if you don't mind me asking, are you planning on monetizing it? there doesn't seem to be ads anywhere I've been
IBM Tackles Boston Traffic Merging Data Streams to Predict Ease Congestion
Having worked at a high end ad agency for a bit a long time ago my first reaction to this is to feel really bad for their customers. If they're willing to squander this level of their own resources on something so random they're almost assured to be doing ten times worse to their client accounts.
Didn't they already try the Facebook video idea?

(Ah, yes, here – facebook movie rentals: http://articles.latimes.com/2011/mar/09/business/la-fi-faceb... and they already offer video posting/sharing options in one's profile)
You're missing the point -- those people aren't your friends anyway. The fact that you can "like" a picture of someone's kid or say happy birthday on their Wall doesn't change that fact.

Facebook can be a great tool for sharing photos and other things with your friends. But most of what is actually happening on Facebook is voyeurism -- you get to stalk people whom you sort of know.
There are multiple kinds of rice, some area cheaper and easier to grow than others.

Same for wheat - low gluten types are cheaper. (Which is basically why they invented the http://en.wikipedia.org/wiki/Chorleywood_bread_process )
Good point, html5 has some catching up to do here but I think it's possible, at least on JIT'd js environments, to achieve the same performance. Can.js has one of the best performing UI code right now and can do the lazy loading, live binding patterns you're talking about http://canjs.us/
I prefer to put anything ORM-related inside the model. This way, I free views and controllers from the specifics of the platform and, as long as I keep the model API the same, I can move from one platform to another easily.

If userService.login method knows how to check a User's password, it's probably inextricably tied to the model and, therefore, part of it. Even if it's on a different module, it cannot be reused with a completely different model.
New Samsung App + Free Office Suite for Galaxy S3
The Samsung in the day today released a major update to its stores, the Samsung Apps.
The interface has been completely redesigned the layout and incorporates part of the app to the Galaxy Suggest S S3.
As I understand it, there is a big difference between what the studios say that made and what they actually made - see "Hollywood accounting".

Example: According to this, "Return of the Jedi" did not turn a profit.

http://www.techdirt.com/articles/20110912/13500315912/hollyw...
Actually one possible use case could be a replacement for ERB. I'm trying to work on integration with rails at the moment: https://github.com/alexcoplan/sculpt/issues/1
Every-damn-body that's not technologically inclined. Are you this myopic about everything?
A Powerful Insight from Highlight
I agree, I really like the "services" layer. I used it for years programming with Java/Spring and missed a lot when learning RoR. I think it is no coincidence that the two RoR real-world projects that I worked had enormous controllers. The service layer is great to orchestrate operations between models and I don´t know a reason for not using it.
APNewsBreak: Evidence of 'God particle' found
Tara and Charles are most clearly mentally ill. At least they have each other.
It's not clear that he wasn't getting paid:

On the last day of the canceled project, Avitzur’s manager called him into her office to say goodbye. He hadn’t completed the length of his contract, but the company would pay it in full anyway.

“Just submit your final invoice for what’s left,” she told him. That’s when it clicked: If Avitzur didn’t submit the invoice, his contract stayed in the system. And if his contract stayed in the system, his ID badge would keep getting him in the front door.

The article doesn't specify, but I would imagine that he submitted his invoice once his badge was deactivated.
This is a great motivator for bringing back lead based paint :-) More seriously though, its useful to know that back scatter x-rays are blocked by a number of easily obtained materials, and I don't doubt that the same guys who installed vibration dampening foam in your car for a better stereo experience, or the house siding/insulation sales guys, will have a pitch for you if this becomes an issue.
If this associates analytics with personal data, it is a tremendous invasion of privacy, especially in the mobile space where it is not expected that interacting with a local application would send your usage data to a remote server.
My experience is that for image/colour quality, the number one thing you want is a display using IPS tech. I believe that Apple 27" is such.
He's saying the same thing as you. Basically, it's hard to know what benefits society most at any given. That's the job of historians.
Any plans to add Bitbucket (git or hg) support?
Congrats! That's really amazing and inspiring. Just tried your app - it's fantastic. No wonder so many people downloaded it.

I noticed you also have in-app purchases. Do you make much money off those?
"I would be surprised" is not a very good argument. What is clear is that there is no principle guiding the Supreme Court in these decisions; you have to know which way the political winds are blowing. That may "surprise" you, but it's still perfectly consistent with the reality of our political situation.
It is not a spam filter. I just checked my "Other" after days and found a mail that was not spam but from a old friend that I had not accepted as a friend yet. It is not 'detecting' spam but marking everything not-from-facebook as unimportant.
Try trello.com. Highly recommended.
Comcast and Boxee deal will let third-party devices access encrypted cable TV
Is this The Onion?
This is interesting. I think it's a good fit from a business model perspective (both are ad-driven, albeit TWC more so), but the fan bases are very different. The geeks at Wunderground are already crying foul ("YOU ARE GOING TO DESTROY WXUG!") and the typical fan of The Weather Channel is probably wondering why everyone is talking about weather happening underground all of a sudden. Also, Wundergrounders trust the lack of hype/sensationalism from Wunderground, but the same is never said about TWC.

Does anyone want to venture a guess as to why TWC would bother to acquire Wunderground?
OAuthorize - Implement OAuth 1.0 servers in Node.js
Building an Organ on a Chip
There's no hate in that post. (Unless it's been edited)?
Good price. I genuinely can't argue with that!
Sure but people need to go on vacation, multiple projects need to be worked simultaneously, developers may leave their jobs, etc.

There are lots of good reasons to have multiple developers on a project other than simply throughput.
Is Require.js worth using for large applications?
I've been working on porting a large application to Require.js and keep hitting roadblocks that lack documented solutions that work for me (Underscore not loading, dependencies for modules being undefined)? I was wondering if anyone else had this experience and if it's worth continuing to try to implement on my site. I don't want to spend all this time implementing it and then have to deal with bugs whenever I add some JS to the site.
I definitely hope that the site continues on as it is, I love the sheer amount of data that's available.
You win 100 internets.
> I don't wish to be misunderstood as implying that MVC is bad […] Since it was invented however, new programming techniques have become popular.

This doesn't make any sense to me.

The first problem is the blatant argumentum ad populum—just because other things are popular right now doesn't mean they're better.

The second problem is: I simply do not agree that we have new technologies that are so radically different and empowering from those that were available when MVC was invented. Indeed, Smalltalk (the language in which MVC was conceived) has late binding, dynamic typing and code blocks. I still think ‘modern’ scripting languages are playing catch-up with Smalltalk and LISP in terms of power, performance and clarity of expression.

Trygve Reenskaug (the inventor of MVC) later went on to develop DCI, a system which complements MVC, rather than replacing it wholesale. I'd recommend reading the Wikipedia page for more info, it's a coherent proposal and it seems to require the creation of far fewer classes and objects: http://en.wikipedia.org/wiki/Data,_context_and_interaction
The Importance of A Good Internet Marketing Center
> ... LINQ in the C# world works similarly (in fact, there is supposedly a lot of bleed-over of ideas from Haskell into .NET because Simon Peyton-Jones works alongside some of the .NET language designers at Microsoft Research).

Erik Meijer, the creator of LINQ, is himself a functional-programming guru. A couple of years ago, he gave a series of lectures on Haskell for MSDN's Channel 9 [0] that are a great introduction to Haskell and FP generally. Throughout the series, he points out intriguing connections between the ways of doing things in Haskell and C# that at first seem like they could not be more different.

0. http://channel9.msdn.com/Series/C9-Lectures-Erik-Meijer-Func...
The problem with monads is that its hard to justify the whole concept until you start wanting abstract some code to work with more then one monad.

That said, specific monads actually show up pretty often. A very important example is the Promise monad used by some Javascript async libraries:

(for example, see https://github.com/kriskowal/q or http://dojotoolkit.org/documentation/tutorials/1.6/promises/)

Basically, creating a new promise is the monadic "return" and the "promise.then" method is the monadic "bind" (or "fmap", if the callback returns a normal value instead). I found that knowing a bit about monads helped me work better with the promises from the Dojo framework but I guess your mileage may vary...
Competition is great! I'm very glad that Apple has managed to exert some pressure on Microsoft here. I really don't think that this would have occurred otherwise.
Amazon moves into Mapping
No, the iPhone Isn't the Most Disruptive Product in History
should we upgrade, or wait for the initial reaction from the public? So far, its only the tech crowd that has commented on Win 8, and it seems that people either hate it, or love it
I sort of evolved my own PHP framework pattern after I did my first few webdev jobs and identified the problem areas. This was before I had ever used a MVC framework.

Looking back at it now, it had everything your typical web MVC framework has, just slightly diffrent:

* Models, with cleanly encapsulated functionality, but without an ORM. I only built small websites, so all related database tables were managed by the same model.

* Controllers that handled all input and delegate it to models.

* Views in the form of HTML code following the controller code in the same file, but strictly separated.

* "Forms" that abstracted away the controller/view and input validation of forms in a neat, reusable package.

My point is that whatever you come up with that actually works well and lets you be productive will more-or-less resemble MVC.
Why do you think this isn't doable in HTML+JS? Seems rather trivial to me. IndexedDB will cover the pagination of large data sets, and removing DOM elements that are out of view is commonly done already.
I totally agree: the web does not have a decent abstract UI layer for devs to use. Help us build out Web Components! https://github.com/mozilla/x-tag
Ideally we'll build something to play random users. It just wasn't something we build out at first.

To answer about monetization, we have loose ideas. I'm really against pop up ads and awkward experiences that most sites tend to have around this. I've toyed with ideas such as premium accounts, or something like old Pandora that used to show one, integrated ad for the entire page.

Mostly though, we're waiting to see how people use the site. It's impossible to monetize something when you don't understand how people use it.
You're echoing my thoughts exactly. The first thing that came to mind with this headline was 'Well, about the only weather site I care about.'
That is the viewer. It does not allow you to input the functions to plot. Fun, but not half as much as the real tool.

Max OS X has Grapher (in Applications/Utilities). That likely is a descendant of this tool.
JSON and RSS views don't make sense - in MVC, views are visual representations of data (the model). Views are how the user percieves the application. JSON and RSS are just different methods for representing data to be communicated to other systems.
The concern is not that bootloaders/bios is compromised. It is that once the PC is compromised, the malware can load from the bootloader before the OS or antivirus can even load, and then hide itself from them completely, thus making it effectively invisible.

Think of it like a VM loader, an OS running in a VM may not even be able to find out if it's running on Linux or Windows, but the host can transparently see everything going on in the guest OS.
Design-Build the New Construction Trend.Agree?
The really bizarre aspect of this is that Carreon, in his non-lawyer private life, has a blog. So you can't say he doesn't know what the Internet is.
Very cool! Would not have thought of that.
I concede on the pseudocode formatting point. Upon rereading, that is uglier than necessary.

The trouble with exceptions is that, unless you're referring to Java-style checked exceptions, there's nothing that forces you to handle them. You can still forget that the exception can occur, and then your code will blow up at runtime. And in one sense, exceptions are even worse than the repetitive if-then clauses: if statements at least handle the failure right there at the call site, whereas exceptions let you move your error handling code to some other place in the call stack, non-local to where the actual error might occur. There are advantages as well, for sure, but I see this as potentially very confusing.

Haskell has exceptions but most people prefer to avoid them, favoring the use of MonadError instances (such as Maybe) instead, since they make the potential failure highly explicit and impossible to forget about or ignore. And while I don't think using Maybe is at all the same as ignoring errors, I suppose I see how it could be construed that way. That's why there's Either as well, which allows you to associate some piece of data with the failure. So you could use the Either String monad to pass back an error message on failure, or Either [String] to pass a list of them, or Either (IO ()) to specify an action to be taken in response to the failure, or whatever you want. I guess that ends up being a lot like exceptions, except for the fact that you can't ignore or forget them, so your code is still verifiably safe at runtime, and there is nice syntactic sugar from the Monad class (do notation, >>= chaining, etc.) to make them concise and elegant to use without cluttering your code.
I don't believe gay persons should marry and I can put 1+1 together even when my life doesn't depend on it.

I'm not really sure what social conservatism has to do with launching flagrantly frivolous legal complaints and comparing satirical writers to Jared Loughner, though...
Eric Lippert talks C# 5.0 and more
It's great to see Apple really sticking it to MS. Apple has no need to make money off their OS upgrades since the cost of the OS is already built into the hardware, but for MS, Windows is over 25% of their total revenue.

Plus this is great news for web developers. Hopefully this means that IE6-8 will be going away much faster than was previously anticipated.
AWS blog post on events of last week - no mention of outage
High-quality, low-latency audio on Android, at last
Sure its a bit annoying, but this is the first time a new member gets to read a fascinating story like this one.
Can you upgrade if your computer doesn't support "Secure Boot"?

If so: 1) Buy a box with no OS 2) Install an older Windows 3) Upgrade.

Permanent path to 8 without secure boot?
I am referring to the criticism about ARM devices that Windows RT runs on, not about the x86 version.
It's a quote, not my words, thanks God :)
How is SOA like teenage sex?

Everyone thinks everyone else is doing it, few are actually doing it and the ones that ARE doing it are doing it wrong.