Wednesday, November 24, 2010

Tahoe got a lot of snow in the last few days and the ski resorts are now open.

I already went to Squaw Valley on Saturday for the opening day. Only one lift was open but it was enough for my daugther and I to have a great time skiing there. The drive back was a little long as we had a big snow storm but it was worth it.

Going back to Squaw Valley again tomorrow morning with my kids and a friend and hoping for a great day as the snow accumulation is already about 9ft at 8200ft!

and the weather forecast looks really good too!

Schedule:
4:30am leaving San Carlos... ouch that's early :)
5:00am pick up a friend in San Francisco
6:30am pick up my daugther in Davis
8:30am breakfast in Squaw Valley
9:00am on the slopes!

Wednesday, November 17, 2010

Both agree that:"XML wasn't designed to solve the problem of transmitting structured bundles of atomic values. XML was designed to solve the problem of unstructured data. In a word or two: mixed content."

Noah then adds:"If you want to send along a list of job applicants and their recent salaries, JSON does fine; if you want to send their resumes, well JSON isn’t quite as helpful. A surprising amount of the world’s important information is in just such semi-structured documents. Think insurance policies, shop manuals, and even Web pages themselves."

+1 to that! I've worked -- and struggled sometimes :) -- with XML for years, and more recently with JSON, and couldn't agree more!

Adding my 2c:
When you work with structured business data, use an object (or struct, or record) model in your favorite programming language, and an object serialization encoding like JSON.

When you work with semi-structured document resources, use a document API or a document centric programming language (like XQuery, XSLT) or even better, a document-node centric programming language (like XLinq), and an XML document encoding.

You'll need both programming approaches. Don't use a single approach for everything, unless you're looking for trouble.

When you need to communicate both structured and semi-structured data, don't bundle them. Just link these resources using URI references.

Tuesday, November 16, 2010

The Apache infrastructure team is starting to work on full support for Git at Apache. Woo-hoo!!

Many contributors already use the Apache Git mirrors and git-svn, but this will take Git usage at Apache to the next level.

Discussions are happening on the Apache infrastructure-dev mailing list there and JIRA issues have been opened to track the initial tasks there.

Issue INFRA-317 will be particularly interesting, I think... as it's about describing the basic Git workflows that will be used by Apache committers.

Git is a distributed version control system which makes it very easy for individual contributors to work in isolation on local private repositories for some time, then publish and merge their work with others later.

That's different from the traditional Apache way, where contributors from a project community collaborate more closely around a centralized (Subversion) repository.

So, I think it'll be interesting to see how these distributed and centralized workflows can be reconciled, to allow people to use Git for everything it's good at, while still following the Apache way.

Monday, November 15, 2010

After a few years using Eclipse, I've gone back to VI. I actually use VIM, an extended version of the original VI.

I won't expand on the reasons, but I just find it simpler, faster, and less distracting than a graphical IDE like Eclipse.

I've experimented a bit and found that I'm able to better focus on writing code with VI in a single barebones 24x80 window, instead of spending time and energy clicking and moving around outline views and windows.

" navigate code using exuberant ctags
set tags=tags;$HOME
set tags+=$HOME/.vim/tags/cpp
set tags+=$HOME/.vim/tags/curl
set tags+=$HOME/.vim/tags/httpd
set tags+=$HOME/.vim/tags/libmozjs
set tags+=$HOME/.vim/tags/libxml2