Tuesday, April 17, 2012

Documentation has Little Value - Read the Code

Again, I got this from Jeff Atwood HERE. But I feel so strongly about this that I'm plagiarizing  and not just linking to his page...

"... writing for people is way harder than writing for machines, the documentation will continue to suck for the forseeable future. There's very little you can do about it.
Except for one thing... You can learn to read the source.

No matter what the documentation says, the source code is the ultimate truth, the best and most definitive and up-to-date documentation you're likely to find. This will be true forever, so the sooner you come to terms with this, the better off you'll be as a software developer.

Nobody reads other people's code for fun. But we must read other people's code because we have to understand it to get things done. So don't be afraid to read the source.

Tuesday, February 21, 2012

Good Software is Hard to Create

This is copied nearly verbatum from a post by Dave Winer, HERE. But I found it so compelling the I'm not just linking to it, but stating it.


"... to make good software, requires lots of thought, trial and error, evaluation, iteration, trying the ideas out on other users, learning, thinking, more trial and error, and on and on. At some point you say it ain't perfect, but it's useful, so let's ship. That process, if the software is to be any good, doesn't happen in 24 hours. Sometimes it takes years, if the idea is new enough.

If you want an idea of an art that's like making software, look at film and food. It's got a lot in common with both. But there will never be a Julia Child of software. It's not an art where you can observe the creative process, because that goes on inside the creator's head. In that sense it's like film. And it's not a science, as some people seem to think it is. Good software makers are also joyous software eaters. We use the stuff, so we know when it's done because it's useful."

Thanks Dave!

Tuesday, February 7, 2012

MoDevDC 2/1/2012

I went to MoDevDC meetup last Wednesday night - two subjects were presented and both were (for me) very interesting. http://www.meetup.com/modevdc/events/48923902/?a=ea1_grp&rv=ea1

First was a presentation on PhoneGap by Andrew Glover of App47. 
I had been fooling with PhoneGap for a while now - mostly to see just how easy it would be to create a multi-phone app. I had not moved beyond the "HelloWorld" stage, but had gotten that deployed on both a Droid and a Blackberry. I figure that the iXX wouldn't be any harder. So I was very interested in this presentation. Here were my take-aways:

  1. PhoneGap is a framework for creating multi-platform apps. 
  2. It is designed for creating apps using javascript, HTML5 and CSS3.
  3. It provides a way to create a "shim" (my word) for leveraging a webkit browser on any mobile device. In the iXX world, this happens fairly automajically. In the Droid and other mobile worlds, I still have some file organization and a little coding to do.
  4. PhoneGap provides a seamless javascript API to some of the phone's features, such as the GPS, camera, accelerometer, and so on, so that my app will work across devices without having to change the way I access those phone functions.
  5. In addition to PhoneGap, I need a decent mobile javascript framework for my app. There are several such frameworks:
    • jQueryMobile
    • Sencha Touch
    • Appcelerator

Second was on HTML5 Caching by Ryan McGeary of BusyConf.
This was a very interesting discussion of the caching capabilities of HTML5 and how to use them to create an HTML app that could be downloaded and then used when offline. Most of the discussion was on the contents and syntax of the cache file and some of the "gotchas" that come from that. The material Ryan presented is from http://diveintohtml5.info/

Thursday, February 2, 2012

Verizon, Thunderbolt, Network Connectivity

I have an HTC Thunderbolt and I've been having problems lately maintaining a connection to Verizon's broadband network. After reading a few comments on this, it would seem that the issue has to do with 3G/4G network availability (someone please correct me if I'm wrong). I found this suggestion:

Enter the following from your dial pad- *#*#4636#*#* 
Then open the phone information- scroll down and change from CDMA + LTE/EvDo auto to CDMA auto (PRL)

Well - this seems to have done the trick for me.