August 29th, 2010
North Carolina
This week, I made a four day journey to the very forested state of North Carolina. Joey knew a Coloradoan was coming and turned on the statewide AC to bring it down to a comfortable 72 degrees Fahrenheit when I landed. The food was great, the people were super, and the technology was awesome.
Relevance
I had an open invitation to come out and visit the team at Relevance, which I’d been waiting to cash in. The Research Triangle NFJS Symposium finally made that visit possible.
I had a great time meeting the entire Relevance team, working with Stu Halloway on automating the Clojure release scripts through some Bash scripting, Git calls and Maven Ant Tasks.
At lunch, I gave a live demo of my workflow with the DevonThink Pro product, including capturing and aggregating multiple RSS streams alongside archived emails and snippets from web pages.
In the afternoon, I had the fun assignment of working with Aaron Bedra on an implementation of JCE symmetric AES encryption on a Clojure project. He followed up a day later on “Relevance Open Source Friday” by beginning to move the implementations over to a standard library for upcoming public consumption.
No Fluff, Just Stuff
I had the pleasure of presenting Encryption, Open Source Debugging on the JVM (over 50 deliveries of that one now), Hadoop, Maven 3 and Git to the engaged audience in Raleigh on Friday and Saturday. The during-presentation questions were spot on, and even when the topics got heady, the students just leaned forward in their chairs and kept on making insightful inquiries. Attendees of that nature are pure candy to a passionate presenter like myself. I especially want to thank Darin Pope, Billy Dupre, David Bloom, David Deininger, Sri Sankaran, Asif Rashid, and Ed Savage for providing much-desired feedback on Twitter.
I know I’ll be back for the NFJS show next year, but I’ll make all efforts to put in a few more visits prior to that. A city with a technology culture of this strength demands that I do. Thanks for having me and perhaps I’ll see some of you at the Rich Web Experience in December on the beaches of sunny Florida.
Resources
For the folks that attended my talks this weekend, here are some constantly updated supplemental materials to resources that are paired with the slides:
Encryption
Open Source Debugging
Hadoop
Maven 3
Git
Tags: Clojure, Encryption, Git, Hadoop, Maven, NFJS, Presenting, Programming
Posted in Programming | No Comments »
August 23rd, 2010

I’m excited to be presenting at the Rich Web Experience this December. It’ll be a great show, but the venue location simply adds to the magnetism. Who can resist beaches and Florida in December?
I’ll be doing a sharpened version of my iOS workshop with Ben Ellingson. Attendance numbers will be greatly limited compared to our last time we ran this workshop so as to give plenty of one-on-one attention to students. We’ll get to use the latest iOS 4 SDK with its polished UI, developer-helpful features and Git integration. I hope you’ll consider joining us for this special one-day addition to the conference. Ben and I will be tempted to run the workshop on the beach.
I’ll also be doing a Git workshop in the main portion of the show. If you haven’t already heard, Git (and GitHub) is the hot new open source source code control tool that is agnostic to your programming language of choice but adds features driven by developer needs, not by marketing teams. Bring your notebook, see what the buzz is about, and walk away with a Monday-morning-equipped set of skills to apply Git on your next project.
See you on the beach!
Tags: Git, iOS, iPhone, NFJS, Presenting, Programming
Posted in Programming | No Comments »
August 18th, 2010
I’ve recently been asked about my Bash prompt (derived from a conglomerate of similar OSS solutions) that shows off the current Git branch and the status in the prompt. Here is my version for both Mac and Unix.
gist: 48058 Windows (Cygwin) Show Git dirty status in your Unix bash prompt
gist: 47267 Show Git dirty status in your Unix bash prompt (symbols not compatible with CygWin)
Tags: Git
Posted in Programming | No Comments »
August 17th, 2010
Today, I’m excited to be presenting Git (my current favorite topic) to the Atlanta JUG (AJUG) on behalf of the No Fluff Just Stuff Symposium Series. Gunnar Hillert has been most welcoming, and Pratik Patel has been a great promoter of the talk. Thank you both.
In about 75 minutes, I’ll explain why the Git Version Control System deserves your attention as your next version control system. I’ll show you its blazing speed adding 5000 files to a repo, creating a repository at GitHub, initiating a local branch, merging with a colleague’s repository, and finding which commit broke the integration tests.
I’ve also set up a few resources for attendees to peruse after the talk, including:
In short, if you have the least bit of dissatisfaction with your existing version control system, this talk should tip you squarely in favor of the new world of Distributed Version Control Systems (DVCS), and specifically, my favorite implementation, Git.
Tags: Git, NFJS, OpenSource, Presenting, Programming
Posted in Presentations, Programming | No Comments »
August 14th, 2010
The Bad News of Data Breaches
The news keeps pouring in day after day and week after week of significant company-damaging data breaches. No wonder; Only 23% of companies surveyed in a recent poll indicated that data encryption was even a priority. We should not be having, reading about and reacting to most of these. Such events are typically quite preventable. The JVM platform has some of the strongest and simplest support for encryption of any programming language. An easy to use Java API for encryption, as well as several high level open source libraries, are at developers’ beck and call. I’ve embarked on a mission this year to educate as many developers as possible about the basic vocabulary of encryption, the history of how these algorithms and techniques came about, and how to effectively implement the right use of encryption for business applications.
The Solution in the form of Education
I first brought this topic of Encryption on the JVM to user groups in my home town of Denver, Colorado, USA. It received a more than warm welcome and deep after-talk discussions. Next, I took this topic on the road with the No Fluff Just Stuff symposium series in the USA. Next, I’m excited to get to share these same concepts with audiences in Sweden at the always-cutting-edge Øredev conference, shortly followed by the equally esteemed Devoxx in Belgium.
Acting on the Need for Encryption
Discard the notion that encryption is too hard to learn. Embrace that encryption is quickly becoming a necessary skill of sought-after developers, the world over. This talk will get you up to speed and send you on your way to making your applications more secure, leverage encryption properly, and protect your valuable customer data from prying eyes. No longer just a notable stretch goal, this is the new responsible level of application engineering. I hope to see you at one of these exciting events!
Tags: Encryption, Java, OpenSource, Programming
Posted in Programming | No Comments »
August 12th, 2010
Andy Glover recently interviewed me for his new series of IBM podcasts. I was able to share about 20 minutes of my experience with and passion for the Git version control system with his audience. It was an exciting opportunity. Thanks Andy!
Give it a listen and tell me what you think. But more importantly, give Git a try! I think you’ll be pleasantly surprised.
Tags: Git, OpenSource, Productivity, Programming, SourceCodeControl
Posted in Programming | No Comments »
August 9th, 2010
I’m excited to announce that I’m presenting several informative talks in Europe and Scandinavia this Fall.

First up is JavaZone in Oslo, Norway. I can’t believe this classy and large of a show is put on by a user group (in a sports arena). Clearly, it has a great committee and a great director at the helm. This is where I first met the likes of Ola Bini of JRuby and Kohsuke Kawaguchi of Hudson fame. If you are in reach of Norway, this is a must-see developer event with presenters gathered from all over the world.

Next up is the exciting Øredev in Malmö, Sweden. I’ve heard from my colleagues at No Fluff Just Stuff that this is a stellar event. The quality of materials Øredev has sent out to speakers has been amazing thus far, and literally table-discussion worthy for inclusion in our Presentation Patterns book. I’m going to be in every one of Evan Doll’s iOS sessions.

Finally, I’m presenting a nitro-enhanced version of Encryption on the JVM at Devoxx in Antwerpen, Belgium. Another conference (like the awesome Jazoon) in a movieplex? Anytime! No worrying about the size of code samples on the screen, that’s for sure. Is a 30 meter screen big enough for you? I hear that Devoxx is the JavaOne of Europe. The lineup of speakers is phenomenal. I will be in a chair for every session besides mine.

If you are in Europe, or are of a traveling persuasion like I am, any one of these three venues would be a big enhancement to your knowledge and relevancy in the JVM development world in 2011. I hope to meet many of you I’ve only spoken with digitally before. I’ve already received dozens of “see you there messages.” Add your name to that list.
Tags: Encryption, Maven, Presenting
Posted in Programming | No Comments »
July 30th, 2010
I love the NFJS stop in Des Moines. It competes for the title of “Friendliest” stop on the NFJS tour. It also has a plethora of smart, energetic folks looking to remain on the cutting edge.
To make it efficient for the attendees of my sessions to get to the resources of my talks, I’m listing them all in this blog post.
Encryption on the JVM
Hadoop
Maven 3
Tags: NFJS, Presenting, Programming
Posted in Programming | No Comments »
July 21st, 2010
With my new iPhone 4, I thought “I’ll just switch to a 200MB data plan” since I mostly use WiFi and have rarely had a month of greater than 150MB data usage.
What a mistake. With no apps running in the background, Push turned off and Notifications turned off, according to the myWireless AT&T app, my phone is using between 5 and 50 MB of data per night. The usage occurs between 11pm and 3am MT. Upon waking the phone up, it shows it is connected to WiFi, but I get a momentary flicker of the 3G icon. That’s what makes me suspicious it is using 3G instead of WiFi when it goes to sleep. That behavior is contrary to documentation.
Articles and Links
There’s no shortage of material to point at extolling variations of this problem. Some are old — as far back as 2008 — but the post frequency and number of new threads has increased, centered around the iPhone 4 launch and anyone transitioning to a 200MB data plan.
An Apple forum 3+ page post on iPhone 4 using Cellular Data when on standby and connected to wifi.
A MacRumors thread that states “it’s speculated that it’s being sent via 3G because the phone typically is sleeping when this occurs, and iPhone (at least until iOS 4.0) never connects via WiFi while asleep – only via 3G”
The 10 page Apple discussion entitled “Unknown data usage early morning”.
An AT&T forum thread entitled “iphone 2am unauthorized data usage”
Another AT&T thread from 2009 stating similar complaints on iPhone OS 3.0
A claim that it is just a usage tally (which still doesn’t explain the days I never leave the office WiFi).
“iPod touch can stay connected to Wi-Fi when asleep so you can receive incoming VoIP calls and notifications from compatible third-party apps.” So, WiFi should stay connected.
“There’s no word on whether this applies to the iPhone as well (since cellular data is typically persistent anyway), but it would be a nice feature to have in all iOS devices — including iPad, especially when roaming with data turned off, or even just to prevent the delays that usually accompany reconnecting to Wi-Fi based remote control apps.”
Older, 2008 post claiming “Wi-Fi is usually turned off a little while after in standby.”
Conclusion
The only logical explanation is that everyone is just holding it the wrong way, thereby causing it to use more data on 3G than it should.
.

Tags: Apple, iPhone
Posted in Programming | No Comments »
May 14th, 2010
In concert with my NFJS Tour talks on MuleSoft iBeans, I’ve just released a corresponding 15 minute video on writing an iBean with a quick explanation of the motivations and syntax contributing to this unique lighter-than-ESB platform.
Tags: iBeans, Java, OpenSource, Programming
Posted in Programming | Comments Off