The Adron Code Tour, Let’s Hack, Bike and Talk Hard Core Technology

I’m aiming to do over the first couple of months of 2013, to come to various towns throughout the United States and prospectively parts of Europe & England to code, bike, code some more, bike and generally hang out with the coders that are making waves and getting work done in the particular cities that I’m visiting. That’s where my question comes into play.

What towns should I visit, and who’s interested in hacking some code, talking shop, biking around town, showing me the places to be and generally hanging out? A few of the cities that are on my list of places to visit already include the following.

United States Stops

  • Spokane, Washington
  • Seattle, Washington
  • Portland, Oregon (this doesn’t really count, since I live here)
  • Oakland, California
  • San Francisco, California
  • Los Angeles, California
  • Orange County, California
  • San Diego, California
  • Austin, Texas
  • Phoenix, Arizona
  • New York, New York
  • Boca Raton, Florida
  • Jacksonville, Florida
  • New Orleans, Louisiana,
  • Charlotte, North Carolina

England & Europe Stops

  • London, England
  • Edinburgh, Scotland
  • Berlin, Germany
  • Amsterdam, Netherlands
  • Copenhagen, Denmark

So that’s the list so far. I’ve got a lot of logistics to figure out. But it still leaves the question, who else is up for a visit? Is there a user group in your town that I should stop at? Anything related to PaaS, Cloud Computing, or Coding & Software Craftsmanship you’d like me to come speak about?

The things I’ll be aiming to hack on and blog, code, discuss and find out what each local community is focusing on and trying to make progress on includes these things:

Key Discussion Topics : I’d love to talk with as many people as possible about these.

  • PaaS – Platform as a Service Technologies. What are you using? AppHarbor, AppFog, Tier 3, AWS, Azure or something else?
  • Cloud Computing – What do you see as the greatest benefits, but more importantly what are the greatest issues to resolve and make progress around in your country, community and in your day to day job?
  • What’s the stack, framework and languages that you deal with on a daily basis? What’s your polyglot soup and what trends are you seeing?

Polyglot Soup : Are you hitting the Node.js, .NET, Java, Ruby on Rails, Sinatra or is the focus elsewhere?

  • What’s the feel for Ruby on Rails, Sinatra and the ruby community in general in your area?
  • How’s the Java vs. .NET peacetime activities (cuz ya know the war is over). How are each holding up under Oracle and Microsoft respectively? Are you still using them anywhere?
  • What’s the Node.js community like in your area? Are you doing full JavaScript stack development yet?
  • Hitting any of the outlier languages that have big impacts like; Go, Scala, F#, Erlang or any of the others? Powerful languages with an extremely small development community. I’m always curious about the activities here.

Feel free to send me an e-mail, call me, txt me, message me, skype me, or please comment below! I’m open to all ideas and thoughts. If you have a couch I can crash on, have a suggestion about a cool hotel, an awesome place to visit in one of these cities, please let me know. Over the next few months I’ll be trying to figure out this tour of mine and will be finalizing the locations soon, which I’ll announce and blog heavily on what we’ll hack, etc. I’ll also alude to the biking adventures I’ll partake upon.

Biking wild and coding crazy, cheers!

A Tour of My Workspace & Dev Tools – Virtual & Physical

First off, here’s a tour of my physical space where I do the bulk of my coding when I’m not travelling.

Right Side Monitors (and iPad3)

Right Side Monitors (and iPad3) Click for full size image

The second bit, a good many months ago I published my developer tools list, which is still available in my blog entry “My Current Windows Developer Machine“. That entry however is very outdated. I’ve since dropped the Windows OS as my primary developer platform operating system for a deluge of reasons. In it’s place is OS-X, Ubuntu, and VMs for Windows and other operating systems. Even though I’ve changed my OS of choice, and boy has life been much simpler ever since, I still do a ton of .NET & C# Development. My toolset however has been minimized for Windows. It now includes the following.

Music Generation

Music Generation (Click for full size image)

Virtualized Windows Development Machine

  • Windows 7
  • Visual Studio 2010 w/ SP1 + other downloads available at http://www.asp.net
  • ReSharper ( I keep this updated, even if I buy it out of pocket because it saves THAT much time w/ .NET Dev )

Yup, my Windows machine is now THAT simplified. Dev on it is just as easy or easier before. With an SSD drive in my MacBook Air and the iMac I have w/ 16GB of RAM, it’s easy to have the VM perform BETTER than a natively installed version of Windows 7. I know it is hard to believe, but it is true. But I digress, I won’t try to sell you on that. Give it a try, research it, you’ll need to know for sure yourself to make that leap.

My main development OS these days however is OS-X, and here’s my stack of tools for it.

  • Ruby on Rails (It comes w/ the default install, but in case hit the site to check out the latest bits)
  • Gems so I can get any of those shiny bits I need.
  • Node.js w/ Express.js generally.
  • WebStorm for PHP/JavaScript/Ndoe.js hacking w/ an IDE => Check out JetBrains
  • IntelliJ for Java Dev => Check out JetBrains
  • Objective-C with XCode (easy, just grab it via the app store)
  • TextMate
  • Sublime 2

For office things, I sometimes use Microsoft Office, but generally Google Docs works just fine.

For video editing and creation, such as the video above I use ScreenFlow. Again, something you can easily get via the App Store.

I use MOU for editing README.md files on github, cuz it makes life simpler.  :)

…and that about wraps it up. Enjoy. If you have any suggestions, thoughts, or rants, please let me know in the comments!  Cheers!

Day #1 => Cloud Expo & Cloud Bootcamp

Thanks to Larry Carvalho and Krishnan Subramanian for lining me up to speak at the kick off bootcamp keynote and for a PaaS Session at the Cloud Expo Boot Camp. I had a great time and was able to cover some great material with the audience. It was great to hear a number of companies and people diving into PaaS Technology and learning about what this technology can do.

The audience, above all was very open to the idea of openness with technologies that are open. See the theme there? ;) There were a few resounding themes to things people would like to see added to the Open Source PaaS Solutions such as Cloud Foundry, Iron Foundry and Open Shift. Here are a couple of these;

  • People want to have continuous deployment or continuous integration features added to the PaaS Capabilities so that the PaaS doesn’t just deploy code blindly. The two companies that came up that have some capabilities around continuous deployment and integration are AppHarbor and CloudBees. But the stronger ask from the audience was for there to be some type of integration with one of the open offerings like Cloud Foundry or Open Shift. Some discussion also followed around these capabilities being a default “service” within a PaaS or even IaaS offering.
  • The other thing that brought up a lot of questions was the architecture behind the various PaaS Solutions. I walked the audience through a description based on what I wrote up in “Cloud Foundry Architecture – Removing the Operating System Barriers with PaaS Part 4“. It generally tends to fit similar architectures in the PaaS realm and most of the audience liked the idea of how PaaS operations are working.
If you attended either of my talks and want to check out the PaaS Providers that came up during questions and discussions, here’s the one’s I can remember:
  • Tier 3 – Enterprise grade IaaS and PaaS w/ the Web Fabric Product. This company I currently work for, they’re doing a rock solid job with the offering.
  • AppFog – Very application focused and IaaS autonomous, i.e. you can pick AWS, HP Cloud, or Azure with more options to come in the future. I’ve worked with these guys also and they too kick ass!
  • AppHarbor – .NET focused PaaS running atop AWS, provides a free tier and continuous integration and rollback features. I haven’t worked for these guys, but I’ve met everyone on the team and they’re all top notch. Props guys! :)
  • CloudBees – Java focused PaaS with Enterprise focused CI/CD capabilities with Jenkins.
  • Heroku – These are the guys who kicked off the whole PaaS thing a few years ago. They started Ruby on Rails focused but also cover Java and Node.js too.
  • EngineYard – A solid PaaS offering running primarily atop AWS with some IaaS style features available too.
  • Windows Azure – Microsoft’s cloud offering, with a lot of updates around Node.js lately. They’ve traditionally focused on .NET, but lately have put as much or more focus on Node.js. Looks like things are improving in the Azure Camp.

More to come tomorrow with DeployCon at the Cloud Expo.  Until then, cheers.

Coder Society Inaugural Kick Off!

As promised, the Coder Society is kicking off!  There will be more information at the Coder Society Site, but I wanted to get information posted here too. The first meeting for Coder Society in Portland will be this coming April 7th. The Seattle meeting will be on May 5th. Our first meetings will cover the following get things done goals! So bring your skills, your passion to learn, and your desire to do!

To RSVP for the Portland Meeting or RSVP for the Seattle Meeting.

Here’s a review of our goals for the meeting:

Primary Goal: PolyGlot Systems
For this we would do a simple project where we pick technologies using at least two different programming languages and have them perform different roles in an application and share information across something neutral like ZMQ or Redis. Some of the options would be to implement with C# + Node.js/JavaScript + Ruby/Sinatra is a good starting point.

Stories: We’re kicking off the meeting goal with a theme many software developers will be super familiar with. Coffee!

  • A coffee drinker wants to add a rating for the coffee beverage.
  • A coffee drinker wants to list the price of the coffee beverage.
  • A coffee drinker wants to review the Barista.
  • A coffee drinker wants to rate the Barista.
  • A coffee drinker wants to know where the beverage.
  • A coffee drinker wants to know where the Barista was working.
  • A coffee drinker doesn’t want to read huge reviews.
  • A Barista wants to be able to list their coffees they use.
  • A Barista wants to be able to comment on reviews.
  • A Barista wants to be able to list their prices for coffee.
  • A Barista wants to be able to select their specialty.
  • A Barista or coffee drinker wants to be able to add or view outlets, wifi, or other information about the coffee shop.
  • A coffee drinker wants to be able to “follow” their favorite Barista.
  • A Barista wants to be able to send an alert to all of their coffee drinkers.

Arbitrary Limits:

  • Coffee Drinks are limited to: Cappuccinos, Lattes, Mochas, Macchiatos, Espresso.
  • Server Availability: 6x Ubuntu Server 10.04 LTS

Frameworks: After splitting into teams, we’ll iron out which frameworks we want to use and implement using the choice frameworks.

  • Node.js + Express.js / Bricks.js
  • Ruby on Rails
  • Ruby + Sinatra
  • ASP.NET MVC
  • Java w/ Spring
  • Python
  • Django
  • Flask
  • Assembly. Ya know, for the insanely hard core. :)

Database:

  • Mongo DB!

Prerequisites:

  • Bring a Laptop (or computing device you can do development on).
  • Bring some familiarity for setting up and using your development platform. This could be .NET, Ruby on Rails, Sinatra, Node.js, PHP, or whatever.
  • Bring a spirit to learn about new frameworks, get all polyglot, and have fun.

Meeting Workflow:

  1. The meeting will join.
  2. Teams will form.
  3. The kanban board will be explained and setup for use by the teams.
  4. We’ll unpack the user stories, setup workflow, and idea behind the meeting will be reviewed.
  5. Select team technology & domain element (barista or coffee drinker).
  6. Setup tasks within teams.
  7. Pick pairs to work on tasks.
  8. Code… implement…
  9. After implementation, we’ll review everything, and trade war stories.

Coder Society: Vote, Group, Create!

A New Kind of User Group…  Coders Unite Pt 2!

Call it a hackathon, coder session, workshop, or whatever. What it is not, is a presentation. What am I talking about? A user group effort that I’m working, and mentioned recently regarding coders uniting, on with others that will be centered around doing something, a range of things, during a specific time frame, to expand one’s knowledge, skills, or help mentor on the specific thing that is being worked on. Instead of me going on and on with an explanation, I’ll describe a scenario from this new user group.

Vote, Group, Create!

First a conversation kicks off a thread (sign up to kick off a thread yourself). From that thread a topic arrises that people want to work with, work on, learn more about, and try to implement. Recently one of these topics that has come up is Continuous Deployment. The idea has been batted around now for a few weeks and it is ripe for a meet up and for a group to get together and actually implement a solution. This is a perfect example of something that can be implemented in a set time, with a group of people, individuals can then take that knowledge and go forth to make their development shops better.

So join the e-mail list, help us come up with ideas, and we’ll see you at an upcoming meet up and we’ll build something awesome!

Google Groups
Coder Society
Visit this group

AppFog, Fort of Awesome & Node PDX Updated!

Time for the secret to be out of the bag. I’m currently working on contract with the awesome company of AppFog in the Fort of Awesome. Let me tell you, it is indeed awesome too! You might ask why I am working with them? How do I align with them? What is it they do?

Well you’re in luck, I’ll tell you all about it.

A few months ago, I started really digging into PaaS more. Not that I needed a reason, because I’m one of those “PaaS is the future” guys. I see this as a huge shift, kind of like when the developer world moved on from Assembly and punch cards to C & C++. It’s a big deal, and it is shifting the way companies build apps, the way they stay competitive, and stand out and above the herd with better process, better capabilities, and more efficient operations. PaaS, is the path to tomorrow.

What is AppFog building? Currently if you’re fortunate enough to have beta access, you may be able to play with the amazing PaaS offering that they’re putting together, and I’ve stepped forward to help put even more awesome into it with their kick ass team! So what will AppFog be aiming for? Well, it is an impressive list, check it out!

Help us out, take the poll and get your favorite technology added to the list! There’s a whole list of other things that will be coming too, this is just the basic big hitters list.  :)

In other news, Node PDX has just finished the list of speakers, we’re finalizing the rest of the sponsors and related things, and just waiting (ok, we’re really busting our butts over here running around to make sure this is a cool event for all you node coders!)

Some of the cool things you’ll be able to look forward to is…

…and awesome Saturday “open drinks” party w/ New Relic! So be sure to be there for that…

We’ve aimed to get everyone a Node PDX t-shirt…

…and more. So go get RSVPed already, time is running out.

Getting Things Done! Coders Unite!

Over the last few years I’ve contributed to, organized, worked with, and been in the audience of hundreds of user groups throughout Portland, Seattle, San Francisco, and Vancouver BC. By far, this area of North America has the most active, resilient, and density of thought leaders in the technology world. There is something missing however and I’d like to start working toward filling this gap. What’s missing you ask?

Problem: People often get together and talk about tech, but rarely get together and do something about tech.

The vast majority of user meetups end up as presentations. I must sadly say, often boring presentations that don’t really teach or demo all that much. Attendees often just come to talk afterwards or otherwise socialize, which is hugely important to the community. However there has to be a way more could be done. A better outcome would be to create a two way conversation, instead of the one way presentation, and to involve ourselves in creating solutions, new technology, and idea. In a few rare situations I have found groups that do something about this void. What’s their solution?

Solution: They actually get together, implement code, pair, and work together on problems. Kind of like a Hackathon, but way more often.

That’s what I’d like to create. To start off with, I’d like a group that is technology agnostic, is fairly skilled yet willing to pair and bring others up to speed, and simply gets together at least once per month to implement a specific project or effort that is predetermined by group submission and conversation (i.e. we’ll use a google group, e-mail list, or such). I think, and feel like there is enough support to get something like this started in Seattle, Portland, San Francisco (especially here), and Vancouver BC. My question is though, would you be interested in helping out, coordinating with me, and otherwise uniting coders to do more, learn more, and better themselves?

If you are interested, please leave a comment and help me out by answering a few questions:

  1. Is “Coders United” a good name for the group? What ideas do you have?
  2. Do you have a project or three or four that may be of interest for a group to get together and work on?
  3. This type of group would probably need to meet for more than an hour, would you be able to meet for 3-4 hours, maybe even on a weekend to implement a full project?
  4. What’s your preferred method of contact (e-mail, twitter, facebook, text message?) and how should I get in touch with you?