One way to network is to go to job interviews. Be open about the fact that you're mostly interested in contracting and maybe you'll consider joining after a time (which is true in my case - there's a lot of overhead in contracting).
People forget that doing backward breaking changes take a while.
Python 3 was released at the end of 2008, 2 years after Java 6. How many systems you know still run on Java 5?
Code written for Java 2 runs fine on Java 8, with extremely limited exceptions.
Java, just as Windows, is used too much in enteprise apps to lose backward compatibility.
Two things:
1. IMO sup (http://supmua.org/) is more mature and does about the same. However it's interface is a curses based one which is a plus and a minus.
2. Why not use an existing search products (like xapian)?
Mostly, the reason we do things the way we do, is because one of our primary goals is to make an end-user desktop app. Packaging is therefore a significant task and minimizing dependencies will help a lot.
We still have quite a bit of work to do on our website and message.
One of the reasons I started lumail (http://lumail.org/) was because none of the existing console clients worked for me. Specifically sup will die importing my 2013-1994 = 19 year mail archive.
None of this implies committing untested code. The index is not a commit; it is a pre-commit staging area. When you use 'git add -p', you are adding hunks to the staging area, not committing them.
What's the difference? When you're done staging your patch, you can then check out the staging area and run unit tests on it prior to promoting it to a commit. Doesn't compile? Tests fail? Restage as necessary.
With stash -k you can test without committing first. Although git is very flexible regarding this, I prefer to at least test the code before committing it.
`git checkout-index` allows you to run tests on the index before committing and without messing with your working tree. The only downside is that it might take a while for a large project. Example script: https://github.com/philc/vimium/blob/master/git_hooks/pre-co...
Nothing wrong with committing untested code, it's pushing it as a ref one can reasonably expect people will merge/fast-forward to that it becomes a problem. git add -p is a nifty workaround for the type of people who don't like the workflow of "commit early, commit often" (some people have 'save file' bound to also make a commit) but who still want to have lots of small, contained commits.
A lot of times I use "git add -p" to cleanup code, e.x. if I added some extra logging statements I don't want to commit I can go through adding everything except the log statements, then reset everything that hasn't been added to the index.
Committing untested code is an excellent idea. You should do it several times a day. Pushing untested code to a shared branch on a public remote is a bad idea.
I find this technique great to keep unrelated fixes in separate commits. A single revision may not pass a set of unit tests, but the entire feature branch will before being merged into the release line. Keeping the barrier low for committed code is one of git's best features.
> Keeping the barrier low for committed code is one of git's best features.
When I first learned git, I was told, 'You'll never have to comment out code again'. Keeping the barrier for commits low (along with git -p and git rebase -i) makes this a reality.
_ is also used in the node.js REPL to mean the last expression. This means that you can't require() underscore.js as you normally would and must instead choose a different name.
Yes, I'm aware of this problem, underscore.php solved this using double underscores maybe I can add a noConflict method to rename the library and free up underscore variable.
This was my thought, too: there seems to be a limit beyond which memcached simply breaks. I learned this 5 years ago, and it had nothing to do with Python.
Well, if there are too many users of an existing library, it makes it hard to do large changes. So in their case, it seems like the original library would silently fail on exceptions, they want to make things bubble up to the top which could be bad for a large number of users who have been depending on the silent-fail operation.