149 karma · joined September 9, 2012
> but how many people use Incognito for every search?
and then later:
> Likewise, it’s smart to turn off location history in Google Maps because once Google has that data, it's out of your control.
By providing inputs to either service mentioned (Google Search or Google Maps), you are already providing them with your "private data". That's the entire point: you give Google a set of keywords, and it gives you answers. If you didn't want Google to know what you're looking for, why would you tell them?
Also, K&R for kids ages 12-14?!
However, threads will never help you in an IO-bound system (unless you own some kind of thousand-core CPU with an equal number of OS threads). Threads will simply block at the first waiting IO call until you eventually run out of threads. Node.js from the beginning was built for non-blocking IO, as are several Python frameworks (e.g. Twisted, or more recently, Tornado), thus the need for more than one thread of execution was typically unnecessary (again, provided the bottleneck was IO).
----
Just a friendly note to the author of this page:
The total download size of this page's underlying Java resources are much larger than I realized (maybe a collective 30-40MB). Given that I waited almost 5 minutes after clicking "Compile & Run!" for nothing to happen (because I had clicked it well before the runtime JARs had fully downloaded), I would suggest to at least add a progress bar or something to let users know when they can actually compile and run the demo code, in addition to some acknowledgement that the code is compiling. This is definitely an interesting project though.On a more concrete note, there are scenarios where neither DNS nor special HTML metadata work. A great example of this is Uber or Lyft. Both of these apps support mobile deeplinking, however there is no real concept of a "page" in these apps. These kinds of apps are more like utilities or services (ride sharing, making phone calls, starting a run, etc), rather than content to consume (reading the news, playing music, watching a video, etc).
Last I recall, this is how YouTube works to open the app when you try to play it from the web player on a mobile device.
On another slightly relevant note, from the perspective of linked data and the semantic web, the <link> tag or "Link" header (both which are suggested by Google and URX) is meant precisely for this kind of reason: being able to link separate resources with a given relation (e.g. "alternate") who may have varying display/device/media qualities (e.g. media queries). Because semantic linkage is between two nodes of the web graph rather than DNS (which I guess would be a subgraph of the web?), one is able to use semantic metadata such as http://schema.org/docs/actions.html to describe not only how to access/consume a resource, but also alternate ways to do so (e.g. from an Android device instead of a desktop client).
Again the above isn't completely impossible to do with DNS, I'll give you that, but it simply is less tenable to assume template-like qualities of all URIs or to ignore the semantic implications of redefining how linked data has worked for the last decades.
Android has IMO done a good job of supporting deeplinks to some apps "just work" by allowing apps to handle HTTP URLs with specific host + path patterns (though it is noteworthy that this can lead to security problems!), but iOS does not support this same functionality.
I do, however, agree with the author in that a more seamless integration pattern that can use existing infrastructure would be ideal, but it seems that for now, the pattern of using metadata, HEAD requests, or Link headers in responses is as good as it gets.
> Before the crowd of technology enthusiasts, he sketched out his plan: grants of up to $100,000 each for up to 20 people under the age of 20 to "stop out of school" and pursue their passion.
Maybe I'm just being sore and jealous, but my decision to drop out was not for the prospects of pursuing my passions. Rather, it was based purely upon economic and temporal constraints: in order to go to school, I needed a ton of money; in order to get money I needed to work full-time; in order to work full-time, I needed to take less and less classes. The fact that I later ended up pursuing my passions was basically out of necessity, not because some investor said he'd been thinking about it for a year and thought it might be better to leave, and oh by the way here's $100K.
Other than that, I'd say skip the over dramatized dogma and just pick the tool that suits your problem space best.
This new framework, Civilian, on the other hand seems to be going back to over-complicating everything: requires servlet container by default, a shiny new templating language, HTML forms processing, etc.
For me personally, I'd be more concerned about someone in your position trying to learn Swift now because it's an incredibly immature language. Core language-level changes IMO are the hardest to cope with, as they can have a severe impact on code written in a previous version of the language, not to forget how much of a mental cluster-f!#@ it can cause.