Could you share more about how you've used it for less structured information? I've used Anki for about 3,000 Chinese words, and also some structured information (world capitals / countries). I've been experimenting with Anki for more conceptual knowledge and it's not nearly as easy.
Probably the CS stackexchange (http://cs.stackexchange.com/), or CStheory (http://cs.stackexchange.com/). Unfortunately, neither are anywhere near as popular as StackOverflow, so the chances of getting a good discussion are lower.
I think the main point here is to avoid general catches and instead catch specific exceptions.
The author raises the interesting point that if it's truly an exception, you're better off letting the system crash all together (especially in a webapp, where you're basically dropping a single request for a single user) -- and if it's an "expected exception", then you should be handling it directly.
I don't see how that reduces to "never use try/catch" though, since catching a specific exception (or types of exceptions) is a way of "handling it directly."
Something about this just strikes me as arrogant. Please enlighten me if I misunderstood ...
"How does it work?
We communicate with Snapchat's servers and pretend to be their mobile app. This gives us access to everything that you can do through the mobile app. For example, we can send messages, view (and save) messages, create new accounts..."
That's a detail that's not relevant at all to their "users" (the people sending in snapchats). It sounds like they're bragging about their circumvention of Snapchat's lack of an API.
I don't want to diminish the technical accomplishment here -- reverse an engineering an API and writing a Snapchat bot is impressive. But, as other posters have pointed out, they're likely violating the Snapchat terms and misleading their "users."
The says that a big barrier to adopting 'open source science' is the prestige that comes with publishing in heavy weight, closed journals. It then draws the comparison to software, and why open source software is quite successful:
> Addressing this issue, Toni references the open spirit amongst coders working on open-source software. “There’s no reward system right now for open science. Scientists’ careers don’t benefit from it. But in software, everyone wants to see your GitHub account.”
This got me thinking. First, I think a large reason a lot of people (read: people in my bubble, mostly students / recent CS grads) use GitHub is precisely because of the prestige. I'd say the people who use GitHub without ever contributing to an open repo vastly outnumbers the people who do contribute. Instead, many people start using GitHub as a way to show-off their own projects -- the whole "GitHub as my resume" idea. But as more people do so, having a GitHub becomes a standard, and you get a positive feedback loop.
Second, how could we shift the status quo for science to associating prestige in an open system? I'm not familiar with the history of open source software, but I wonder if there are any parallels from how OSS grew that we could apply to science publishing.
Finally, there's a big systemic difference between doing collaborative science and writing open source software I can think of:
the barrier to entry to software is much lower. A lot of hobbyist programmers contribute to open source projects (or at least have a GitHub account, which feeds more attention / prestige to the ecosystem), whereas it's pretty hard to contribute to science without both a graduate education and (in many fields) expensive equipment.
Semi related question -- how is this implemented security wise? I took a look at the github repo and it seems to be all clientside JS, and it's just making ajax GET search requests to StackOverflow, then parsing the results. Isn't this prevented by same origin policy?
The problem with this is that it can take a significant amount of the candidate's time. Scheduling a project (here's a spec, you have 3 days) is a major inconvenience for a lot of candidates.
I haven't used an iOS device since I switched to the Galaxy Nexus about 5 months ago. How does this compare to Google Now on android 4.1?
In general I've been very pleased with voice search on Google Now -- just reading the blog post I wasn't too amazed by the examples they gave for iOS because it sounds identical to what Google Now provides. I assumed that Google would release these features for android before iOS, but am am surprised by the overwhelmingly positive comments others here have to say here. Can anyone do a comparison and shed some light?
I do have to say that Google Now is sometimes rather slow -- the voice recognition is very fast (type as you talk realtime) but web search can sometimes take 10+ seconds to load even when already connected to wifi. Other times, it just works.
I'm not sure having a modal is the best idea -- aren't modals generally frowned upon because they require a mental recontextualization and disrupt the user's flow? I'm just curious if anyone else had this thought.
Although I can see why having a prepackaged one-button solution would make sense, where Stripe takes care of the presentation / styling / inputs, so there actually is a change of context.
For the record, I use Stripe at my company, and I love it!
One big problem with this approach: what happens when your email is down? Does a website really want to tie its availability to that of Gmail / other web mail services?
I'm quite interested in productivity hacks and I've adopted / created a few systems of my own. The key insight in the OP, that you'll eventually do what you truly care about, is one that took me a few years to realize, yet unfortunately it's also a vast simplification.
For me, there are many tasks that I know I enjoy, whose results I know I care about, yet, if left to my own devices, I don't go and do them because the activation energy is too high. I offer two examples: running (I always feel great afterward and I know it's good for me, yet it's a hassle to actually get out there and run) and working on side projects (I love learning and building, yet I don't do it as often because I get mentally blocked by how overhelming a project is before I begin).
Previously, I would make up excuses (I don't have enough time... too busy... much school work... overcommitted) and my personal projects languished as I got caught up in external commitments. The biggest tip in my productivity system is this: Every month/week/day, write down the one thing I most want to accomplish for that time period, that I would likely not accomplish otherwise. If I can accomplish that one thing, I can call that day/week/month a successful one. I track my progress and results as well.
With this one objective system, I found myself delegating time for these projects and implementing all sorts of hacks to reduce the energy barrier of starting these projects.
Another way to think of this is how you structure your priorities. Instead of saying 'I don't have time', try saying 'it's not a priority' [1]. This lets you tell exactly what you do care about, and frequently, that set of things you care about is still larger than the set of things you get done.
The biggest problem I foresee here is that there would be no tactile feedback -- it's essentially the inverse of using a touch screen! You wouldn't know whether your "lift-click" actually went through or not, whereas on a normal mouse you get that very satisfying physical click as feedback.
Can anyone think of a way to get around this issue? Very cool idea by the way.
I think Ruby does a pretty good job with this, as far as an object oriented main stream language goes. For example, the switch case example from the article can be implemented in ruby as
case n:
when 1: "one"
when 2: "two"
etc, and the entire construct can be assigned to a variable because it is an expression.
This really makes me wonder what took Google so long. Google practically defined large scale commodity cluster computing with mapreduce (2004). Amazon EC2 was launched in 2006. The closest thing Google has done was app engine, and my understanding is that was not a tremendous success.
Does anyone have any explanations why Google didn't move into this space earlier?
I disagree. Certainly some agencies may have data that ought to be examined holistically via CSV (at least for researchers?), but having data available via API is better than the status quo.
While this might not set a "high bar for the quality of information," the President's effort shows a level of commitment to both technological streamlining of government agencies and to transparency and is, at the very least, a step in the right direction.
Funny you mention this -- this was almost exactly what I and a friend did for a final project last semester. we did it in Go, which was probably much more enjoyable than C :)
I used a Chromebook (Samsung Series 5) for an entire academic year as a student. The biggest benefits were having everything synced in the cloud (so you're not too attached to it), extreme portability (super thin and super light, instant on is fantastic) and ~10 hours of battery life. I charged the thing about once a week!
However, I question who would get a Chromebox though, because the portability + battery life + instant on are no longer relevant in this case, and those were by far the biggest benefits for the Chromebook. For a little more (~400), you could get a very respectable machine running a more powerful OS.
Some general thoughts on my experiences with the Chromebook:
As a general computing device, I thought it was more or less completely sufficient. I used it to take notes (google docs / evernote) in class and it was awesome for that (light and portable).
With more than 7-8 tabs, things can get slightly sluggish (read: not instantaneous). Running more than 15 or so and you start getting serious performance issues. This is less of a problem than I thought because it forces me to maintain focus (I regularly can have >100 tabs when using my desktop). Full screen 1080p video also was sluggish.
It has a shell, so you can SSH and code also.
Frequently less technical friends would ask "but ... it only runs chrome?" to which I respond "well what can you not do in chrome?" and they have a very hard time giving an example. With gmail / calendar / docs / evernote / your music web app service of choice / etc, almost everything can be done in the browser.
To be fair, I also use a powerful desktop for more intense tasks (photo editing, coding, and occasional gaming). I doubt I would use the chromebook/box as my primary computer.