330 karma · joined October 29, 2009
Also, iPhone users should check out the Scan app[1] for a QR code reader. It's by far the fastest starting, simplest QR scanner I've been able to find; Most of the other apps seem to be cramming in price-checking features and have butt-ugly icons.
[1]: http://scan.me
But I think this is a mindset problem, not one with the state of modern software writing. We're standing on the shoulders of giants; There's plenty of unsolved problems out there to be solved by the next person willing to do it. And we do it armed with the work of the previous generation that's been packaged into the convenient form of libraries, modules and established knowledge.
Would your time really be better spent finding the most efficient sorting algorithm?
Disclaimer: Programmer who wishes his professional work contributed more to the greater good.
This seems to be a trend lately in Google's desktop software that I'm not comfortable with. On both my Linux and Mac machines 'ps aux | grep -i chrome' shows background processes running long after I've quit Chrome.
I don't see any GUI options to turn these off (there used to be an option in 'about: flags' that I think was related), and I have to end up killing them from the command line.
Not cool, Google.
> $number_hash{$_} = 1 for @list;
Meaning that any version of any of Gnome/KDE/XFCE/etc's screen lockers will be defeated by this exploit if they are running in this version of Xorg.
As far as I can tell this is probably true, unless someone knows a locker that uses an alternative method of locking out all keyboard/mouse input?
My question is: what is the actual function/line that causes the screen lock to die? My C knowledge is close to non-existent, but the ungrab all function looks a bit suspicious. Some commentary by someone who understands what's going on here would be appreciated.
[1]: http://cgit.freedesktop.org/xorg/xserver/commit/?id=7d2543a3...
I do find myself using Taskwarrior's shell mode[1] almost exclusively these days though, as it significantly cuts down on the number of keystrokes necessary to interact with my todo list. If you wrap task shell in rlwrap[2] you can still get autocompletion from within the shell.
[1] `task shell`
[2] I use 'ts' aliased to `rlwrap -i -r -C task task shell` for this
http://search.cpan.org/dist/Smart-Comments/lib/Smart/Comment...
http://wiki.basho.com/The-Riak-Fast-Track.html
It's a quick, interesting, and to the point into to Riak, including theory, installation, and usage. The Basho guys have seriously great documentation, I've enjoyed browsing through the Riak wiki despite not really having any live Riak deployments.
task proj:Foo due:tomorrow
Instead of: task 1,2,3,7,10-12 due:tomorrow.
For oh-my-zsh users, I've got an open pull request for adding a Taskwarrior autocompletion plugin:https://github.com/robbyrussell/oh-my-zsh/pull/370
The intelligent completion lowers the barrier to task entry even further.
You may also want to try using a combination of Taskwarrior's shell mode and rlwrap, which has become my main usage method:
`alias ts=rlwrap -i -r -C task task shell`
Combine this with a drop-down terminal like Guake or tilda, and you've got text-based-tasklist-anywhere nirvana.The idea itself is cool, communicating extra context about what the method does or its intended usage, but they're used so inconsistently (even withing the Ruby stdlib) that A) They're unreliable and you need to check the source to find out the behavior anyway and B) It's less predictable whether the method exists with the suffix or without, so you need to either run it and modify your method call if there's an error or check the lib/API docs. This is the sort of thing that makes having an IDE handy for completing method names, which is unfortunate because Ruby is generally very usable without any IDE crutches.
Maybe my expectations of an 'academic', FP language were low, but the clean, navigable design of the site, and easy to use package manager, and respect for the idioms of the various platforms (DMGs and not tar.gz's for Mac OS) show a regard for aesthetic that that even the 'friendlier' languages like Ruby or Python should strive for.
Aside from having the backing of Google, it provides C-like low-level access for systems programming, a clean syntax, static typic, a consistently evolving set of business-focused APIs, along with some of the conveniences normally associated with dynamic languages.
Obviously no language or set of libraries is designed with perfect foresight. But the painful aspects of popular languages like Java or C++ could probably be improved upon or even solved tomorrow given zero regard for backwards compatibility with legacy code. Go's relatively short legacy, combined with smart considerations for existing codebases (like gofix) mean that fundamental changes to the language or standard libs can be made in order to perfect the language. All while the language's limitations are being revealed in real world usage by the (presumably) demanding needs of users like Google and Go's early adopters.
I don't mean to sound like a fanboy, especially as someone who has mostly drank the dynamic typing Kool-Aid, but I can't wait to see what happens with go.
From what I've read during my usage of AWS over the last couple of years, this is more the norm than the exception.