Tag Archives: Java

Evening Sessions at Java Posse Roundup

Java Posse Roundup After Hours

 In addition to the daytime (morning) sessions, we’ve been getting together in the evenings.  Someone suggested lightning talks in the evenings, and posted a signup sheet.  8-10 talks per night were quickly filled up.

The evening talks were a mix of technical and non-technical.  All talks were limited to 5 minutes.  Well, it quickly became apparent that 5 minutes was a bit too short, so we set the timer for 5 mins and gave the person 1 more minute to wrap things up.

The first night, there was an attempt to record the sessions, but they were highly visual, and since no one was really set up to capture the sessions with Camtasia (or the like), listening might not be all that useful.

So, Wednesday night, we had talks on such diverse topics as:

Thursday night, people got a little bit more creative in terms of talking “outside of the Java box”.  It was a tribute to the format of the lightning talks that several people chose to bring their spouses that evening, and everyone seemed to have a good time.

Those talks included (not complete list):

  • Yahoo Pipes
  • Flex running with Apollo (and communicating between them)
  • Orienteering
  • Java Docs in the year 2020
  • More racing from Joe (book link: http://tinyurl.com/2bd6vp)
  • Optimal letter spacing from Joel (who does beautiful calligraphy)
  • Right brain vs. left brain

We did the lightning talks at the very large house where the Java Posse was staying.  It was really perfect for this sort of a gathering.

On Thursday night, after the lightning talks, the Java Posse surprised us by telling us their intended format for that evening’s recording of the podcast.  As *** put it, “We provide this show for YOU guys all of the time.  How about this time, we just start it off and then go around the room and ask each of you what you thought about the Roundup?”.  Nice idea, but much stress in the room as we all contemplated actually speaking.  All in all, it was really great (for those present at least) to hear what the others thought about the Roundup, the Open Spaces format, the skiing, etc.

On Friday night, it was even more laid back.  Everyone showed up at the Secret Stash (a unique Crested Butte restaurant, that serves interesting pizza).  The menu is online, so I’m able to share our selections here:

ME & MY UNCLE'S PIE
grilled chicken ~ black beans & corn ~ chipotle sauce ~ cheddar cheese ~ fresh cilantro ~ roasted red peppers

KALADI'S FAVORITE
Grilled Assorted Veggies ~ Fresh Goat Cheese ~ and our Balsamic Reduction

We also had a blue cheese pizza, but I don’t see it on the online menu.

We sat at a table on the floor, with pillows.  This was a bit uncomfortable for the (inflexible) guys with long legs, but I was OK!  A good time was had by all, and those who drank a local beer called Mojo gave it high ratings.  After that, we all descended upon Bruce’s house and watched amusing stuff on YouTube, Google video, etc. well into the night.

 

 

Java Posse Roundup: Day 2

Java Posse Roundup: Day 2

Session 1: Java Development Environments

I convened a session on Java Development Environments (IDEs, tools, etc.). My question was, “Is it a benefit or a detriment that we have choice in our tools?”. For comparison, when programming on the Microsoft platform, developers are given tools that work together out of the box. If they choose to add new tools to their arsenal, they can (especially see Jim Holmes book, “Windows Developer Power Tools”, which includes a lot of open source tools for use on the Windows platform.

In any case, as Java developers, we’re not only free to choose our own tools, but sort of forced into choosing and configuring. Yes, there are packages like MyEclipse and NetBeans which bundle things together, but the IDEs have gone back and forth many times in the past several years. I’ve personally tried at least half a dozen. Currently, I’m using Eclipse, but on the recommendation of the group here, I’m encouraged to give NetBeans another try.

The consensus of the group was generally that we’re glad to have options. I’m still left thinking, however, that we spend a lot of time spinning our wheels, evaluating tools, instead of actually solving problems for our customers (or employers).

Session 2: User Groups

The next session that I attended was on User Groups. Graham, a Crested Butte local, is considering starting a user group here, in Crested Butte. He was looking for ideas and suggestions about how to get started, while others were looking for ideas about how to grow their user groups or to keep people coming back.

I held the position of president of the Ann Arbor Computer Society for 2 years, and I got some great advice from past leaders of that group: DELEGATE. I’m not always good at it, but it’s a good objective. Having a strong leader that can delegate tasks to get done is pretty critical, I think. Several (3) of the guys in the session were from Atlanta, and the AJUG has a dynamic and energetic leader, and it sounds like he does a phenomenal job of keeping their user group going. In addition to an annual DevCon, which is well attended, they offer Job Postings for both potential employers and job seekers (JRecruiter). The Ann Arbor JUG also has this, but I want to look at what they’re doing in Atlanta, because it sounds more effective than the blog-like postings on the AAJUG.

Remote user groups (Taos, Crested Butte) face different challenges. There are few area users, and having a JUG may be too restrictive. It sounds like Dean from Taos and Graham from Crested Butte may create a more encompassing group that serves all software developers, rather than limiting to a JUG.

Chris Adamson was also in attendance. He is an editor for java.net, and he offered to help solicit updates for the JUG list that they maintain. GREAT IDEA, since they really have gotten out of date.

The basic “take-aways” from the session were:

1.Start small. None of the big groups started big. We all started with 2 or 3 people who wanted to get around and talk about cool stuff.
2.Have a compelling reason for people to attend meetings. Good content, opportunities to learn about jobs, etc.
3.Mix in local and national speakers, if you can. National speakers provide visibility to the group, while local speakers get experience talking to a group of people.

Some groups charge dues, while others are free. Some are corporate sponsored, others are not. You just have to find what works in your area.

I would love to create a “meta-group” of JUGs or other user group leaders who might communicate on an eGroup or such to toss ideas back and forth. Maybe we can start with the list on Java.Net?

Java User Groups on Java.net: http://tinyurl.com/36r2ku

Here’s a view of what Sun coined as the Top 50 JUGS:

http://wiki.java.net/bin/view/JUGs/SunTop50JUGProgram

Session 3: Convergence of Desktop/Web/Mobile

Joe Nuxoll convened a session on the convergence of desktop, web, and mobile application development. Questions were raised about how to determine which platform to develop for, or if it made sense to sometimes build a web app that could be used on a desktop. Mobile has its own set of challenges, but even so, we’re becoming more demanding about what we expect in mobile apps.

One real key is that a lot of time users don’t even know where they’re running up against web/desktop boundaries. One good example of this is Google Earth and Google Maps. Google Earth is clearly a desktop app but it accesses the web to get data that Google maps also uses. Sketchup is a nice application that also pushes these boundaries, in connection with Google Earth.

Joe’s pretty adamant about good user interface design, regardless of desktop or mobile or web. Everyone pretty much agreed that we have to use the right tool for the job, and that it’s not always clear what people need when looking at what people are CURRENTLY doing. Sometimes we need to mix stuff up and come up with a new way of interacting with the user. There are some really cool demos from demo.com that really push this envelope.

Java Posse Roundup Day 1

The conference officially begins!

 

The Java Posse Roundup officially started today.  About 25-30 people have gathered here in Crested Butte, Colorado.  Bruce Eckel and the Java Posse together organized this open spaces event, and I’m really enjoying myself so far.   I won’t try to transcribe the sessions here, since the Java Posse will be putting them out in podcast format, assuming the audio is all fine.  It’s a great experiment, and I hope that it comes out great.  

 

The day started out at the event location, with Bruce describing the structure of Open Spaces.  I’ve blogged about that before, and I’m a total convert.  The ability to be able to put up ideas for discussion while at the event, thereby shaping your own experience, has totally ruined me for the eyes-forward (eyelids dropping) conferences.  

 

It always seems a bit strange to newcomers, but those of us who have done this before eagerly rushed over to the board to grab post-it notes and write down ideas for discussions.  We egged on the others, and soon the boards for all 4 days were pretty full, with 4 concurrent sessions. 

 

The first session of the day offered many choices, all difficult to choose from.  I went to a talk on Dynamic Languages on the JVM.  It started out with a discussion about dynamic languages, but quickly headed toward Domain Specific Languages (easy to build with dynamic languages).  At one point, we realized we had diverged, but everyone voted to keep going.  We had a great 1 hour talk that included mention of Jython, Groovy, Spring, Scala, CLOS, LISP, Ruby, tuples in Java, Domain Driven Design, performance of exceptions, and many many more topics. 

 

And, as always a huge number of book references came out of the discussion.  Some were technical, others fun but also offering some perspective to technical things.  I’ll list them here, just for fun (and so that I have a place to look when I want to read a new book):

 

Poignant Guide to Ruby (online book)

Innovation Games (by Luke Hohmann)

The Design of Everyday Things (by Donald A. Norman)

 

That was it for the first part of the first day.  We all headed off to ski, and planned to meet up later at Bruce’s house for a BBQ.  While most people downhill ski at these events, I had a hard time ignoring the Nordic trails, so off I went with another attendee and we skied the “Town Loop” (a free, flat loop in town).  It was great, just what I needed while I was adjusting to the altitude.

 

And yes, after skiing, everyone headed over to Bruce’s, where geek talk went on well into the night.  I finally left around 9:30 pm or so … it had been a long day.

 

 

CodeMash 2007

Well, the CodeMash conference has come and gone. Ah, all of that planning and now it’s over. How will I spend my days if I don’t have to help plan and publicize this event? Maybe I’ll actually get some work done (and see my kids)!

The conference was very cool. One problem in helping to arrange the event is that I had a lot of input into which talks were accepted. That meant that in every time slot, there were multiple talks that I wanted to attend! Ugh! So I moved in and out of the talks, sampling each. Sometimes, I got captivated with a talk and stayed until the end. Other times, some conference organization thing came up and I had to step out. But all in all, people seemed thrilled with the talks, the keynotes, and the venue. And I had lively conversations with attendees and speakers alike, WAY past my bedtime. The 6:30 am organizer scrum came very early on Thursday morning (since I had barely gotten to sleep, it seems). I dashed off without so much as washing my hair (eek, I had to be on stage to introduce Bruce Eckel’s keynote and there would certainly be photos!). Sigh. I had planned to get more sleep on Thursday night, but instead, I found myself talking to speakers and other attendees, including both Mark Ramm and Mike Levin (who I hear continued the conversation even later!) until 1:30 am. Friday night, much of the same. Oh well, maybe I can catch up on my sleep this week.

We kicked off the conference with an “Expert Panel on Languages”, which was moderated by Bruce Eckel and panelists included: Neal Ford, David Stanek, Bill Wagner, James Ward, and Jay Pipes. Many thanks to both Jay and James who stepped in at the last minute to round out the panel!

In addition to the scheduled talks, I attended (and convened) some Open Spaces talks. These are interactive conversations, decided by the makeup of the group. I was introduced to Open Spaces by Bruce Eckel at several conferences in Crested Butte (the next of which is the Java Posse Roundup in March). As he warned often happens, Open Spaces conferences have really spoiled me for eyes-forward talks. Sure, sitting in a lecture and listening to someone talk about something is often an effective way to learn. But I LOVE the interaction of Open Spaces, where every participant is actively involved in the conversation, sitting on the edge of their chairs, engaged. Not falling asleep.

Ah, anyhow, since Bruce was at CodeMash, we had him introduce the concept of Open Spaces and provided a board where people could post talks. His conferences are ALL open spaces, while this one had open spaces “on the side”. I think that we could have done things better in this regard, but I saw some engaging open spaces talks, including some convened by Bruce Eckel (for questions after his keynote) and Mary Poppendieck (for questions after her talk on Lean Software Development).

Other Open Spaces sessions that I attended …

Social Networking for Nerds (Versions 1 and 2):

One of the scheduled talks, for example, was “Networking for Nerds” (hardware stuff), but a few of us were thinking that a “social” networking for nerds might be a good thing to do, so we convened an open spaces session, “Social Networking for Nerds”. But as we were about to begin, there were rumblings about hitting the water park (CodeMash was at the Kalahari Resort and Indoor Water Park in Sandusky). So, we simply moved the “social networking” open spaces TO the water park. “Meet at the Lazy River!” And we did. A bunch of geeks in swimsuits … hmm, that knocks down some social barriers. As I explained to Josh Holmes later, “Once you’ve floated down the Lazy River in a raft, or raced down a water slide side by side with another conference participant, you don’t really feel too shy about asking if you can sit next to him at lunch!”.

Later, we did convene a second session, “Social Networking for Nerds 2”, in a more traditional venue … in the Nia Conference Center midday on Friday. It was well-attended as well. I think about 20 people showed up. I voiced my one regret in my career as not having kept in touch with people from prior jobs in my 20 years as a professional developer. One guy said that he keeps birthdays in Outlook and emails people yearly! He doesn’t feel like he’s “using” another person when he has a question for them later. Good idea (and it was his birthday as well, so we all wished him a happy birthday). Another guy (Barry Hawkins, who I first met in Crested Butte), indicated that his first Java User Group meeting was an eye-opener for him. He realized that people went and heard the presentation, but didn’t interact otherwise. So he announced a “pre-event” meeting where he would be at a local restaurant beforehand, and he gets a great turnout for that. Like our “social networking” session, it’s self-selecting. Those who are interested in networking, go! And while geeks have a bad reputation for being antisocial, I think that those who attend conferences perhaps have a bit more interest in socializing than the standard geek. The consensus seemed to be that most of us feel socially awkward at one point or another, but we push on and do it anyhow. And so we get better at it, just like software development!

Building a TurboGears Widget with Flex:

James Ward, Flex evangelist from Adobe, and Kevin Dangoor, the creator of TurboGears, paired to build a widget in TurboGears that embodied a Flex component. They built a DisplayShelf widget and deployed it to the Python Cheese Shop in under an hour. In a nice demonstration of pair programming, it actually worked the FIRST TIME. Phenomenal. About a dozen people sat around and watched the two at work, and later went to work themselves, grabbing the widget from the cheese shop and quickstarting a TurboGears app and using it themselves. When I got home from the conference and explained this to my husband, he insisted that I do the same. I easy_installed the widget and had it working in about 16 minutes (including copying images to use), in spite of me NOT wearing my glasses. Impressive.

Women in Software:

We brainstormed a bit on why there are so few women in software development these days. Mary Poppendieck explained that when she first got into software, about 40% of the developers were women. She thinks that companies were afraid to hire men because they might be drafted for Vietnam, and so it was “safer” to hire women. And women did it. Another attendee landed in software development from a secretarial field because of an awesome role model and mentor in her (female) boss. Another woman who attended came from a mechanical engineering background. Several men attended as well. We tried to work out some differences, and the one thing that kept coming up was … what drives us. Several of the women in attendance were really drawn by fulfilling customer’s (or company’s) needs. HELPING people. As a generalization, the men seemed more drawn by “building cool things”. Interesting. So maybe when we talk to girls about computer science, we need to talk to them about the human interaction component? That’s a thought. Mary Poppendieck brought up an interesting point as well. She doesn’t think that we need to reach young girls to convince them to go into computer science. She thinks we need to reach their PARENTS. Ah, interesting, especially since many of us indicated that our parents were guiding influences in our choice of professions. So we didn’t come up with “a solution” but that wasn’t really the goal. We have some insight and that’s a start.

User Stories: Reaping the Benefits of Agile Software Development:

Barry Hawkins convened an Open Spaces session on User Stories. A few of us gathered and described why user stories are so critical to the success of agile development. We delved into the representation of personas and we all really feel that these are key to user stories. It’s not all that productive to talk about “the user” as if my 67 year old retired dad and my 23 year old neighbor with a college degree see and use software in the same way. Should we just ban the words “THE USER” in our discussions? OK, maybe not, but building up personas really does help us keep in mind how people use software differently. And building stories for what the components are in software is a great way to help management define not only the complexity of a task but also how essential it is. Ah, now that we all clearly SEE what we’ve been talking about, maybe we can live without it. Or maybe it’s even more critical and needs to be elevated in priority. User stories really help that.

There have been a lot of blogs about CodeMash, since the conference ended. Those that say that they’re glad that they attended and that they would come again, or that they would recommend the conference to their colleagues, make me feel like I didn’t spend the last few months planning this conference for nothing. The real benefit in community-organized events is, however, in letting people know what you would like done differently next time. We’re not a bunch of conference organizers. We’re developers. As I said several times at the conference, this is the conference (and content) that WE wanted to attend. If others in the development community pitch in with ideas and speakers and keynoters and what to do differently, it can be even MORE awesome next time. Did I say “next time”? EEK! Don’t tell my family …. But do join the CodeMash google group and provide feedback, suggestions, etc.!

CodeMash website

CodeMash google group

CodeMash early bird deadline

CodeMash, a developer conference organized by volunteer developers, is to be held January 18-19 in Sandusky, OH. Drawing from national talent as well as regional experts, this conference provides a unique opportunity for a diverse set of people to get to

CodeMash deadline is TODAY!

Today is the last day to get in on the $99 registration for CodeMash. Tomorrow, it goes up to $149 (still incredibly reasonable). CodeMash is January 18-19, 2007 at the Kalahari Resort (www.kalahariresort.com) in Sandusky, OH, and will bring together developers from all worlds … Java, .NET, Python, PHP, Ruby, TurboGears … you name it! We’ll all learn from one another in a cool and fun environment.

Engaging keynotes by Bruce Eckel, Scott Guthrie, and Neal Ford. Talks by Brian Goetz, Mary Poppendieck, Jay Pipes, David Stanek, Kevin Dangoor, Ted Neward and more!

Don’t miss out on early bird pricing. But even more importantly, don’t miss out … space is limited, so sign up soon!

I’m promoting CodeMash heavily because not only am I on the organizing committee, but also because this is a conference with a theme that I believe in, strongly. SRT Solutions, with diverse knowledge among its staff, definitely benefits from the cross-pollination of ideas. One friend asked me if I thought that the “generic developer” would get much out of this sort of a conference. My response? Any time you learn something, you’re benefiting. You may not use any more than one of these languages in your job, but knowing about the others, and their strengths and weaknesses, makes you a better developer.

CodeMash Registration

Digg story on CodeMash and other events

Kalahari Resort
Conference Venue

OpenLevel Java Seminar

This unique approach to Java training will be held January 22-26 in Ann Arbor, Michigan.

I was first exposed to an Open Spaces conference at Bruce Eckel’s Programming the New Web conference in Crested Butte, CO last March. I was a bit mystified at first. The idea was to go, pick the topics that we wanted to discuss, discuss them, and go home knowing more than when we had arrived. No planned agenda. The seminar description listed things that we MIGHT discuss, but the agenda was to be decided by the participants. The idea is that at traditional conferences, the really useful knowledge is what you learn on coffee breaks, or when just standing around, talking to other attendees, so this is a way to organize an entire conference on what you REALLY want to learn, rather than an agenda set forth ahead of time. I loved it. I learned a ton … way more than I had ever learned at traditional conferences.

I even attended a second conference in Crested Butte, with the same flavor: the Web Frameworks Jam. Bruce said that he really hadn’t intended it to be based on OpenSpaces, but that it was going to be a fairly free-formed workshop where groups would work together toward learning and developing with a web framework of their choice. It turned out great, and the group I worked in had a blast with TurboGears.

So when I asked Bruce to come out to Ann Arbor to do some Java training, it felt a bit odd to ask him to do “traditional” training. Both of us kept going back to how much we learned at the Web Frameworks Jam, and we brainstormed a bit on how to make it more customized to the individual learning styles and different skill sets that people arrive with at a training class. And thus, Bruce started to form the plans for an OpenLevel Java Seminar.

The idea is that people will work on exercises from his book, Thinking in Java, 4th Edition. With the OpenLevel concept, people will be able to choose the exercises that interest them most, in the areas where they need work, or want to focus. One really cool aspect of this is that people can move forward at their own speed, but Bruce will be there as a Java expert, to get them over any stumbling blocks that the group encounters. Another really cool aspect is that this is not limited to beginning Java programmers. Advanced Java programmers can come, and be confident that they will not be bored by repeating the things that they already know about the language. Instead, they can move right on to the more advanced topics that they haven’t had exposure to yet (or haven’t quite been able to figure out on their own).

I’m really excited about this seminar. Not only is this the first training that Bruce has done from his book, Thinking in Java 4th edition, but it’s also the first time that he’s organizing it as an OpenLevel seminar. It’s going to be an amazing learning experience, and I’m thrilled that it’s going to happen in our town.

OpenLevel Java Seminar: January 22-26, 2007

(Registration and more details at http://mindview.net/Seminars/ThinkingInJava)

CodeMash Early Bird Deadline Coming Soon

CodeMash, a developer conference for programmers of all flavors, is scheduled for January 18-19 in Sandusky, OH. And the early bird deadline is coming up soon. Register by December 18 to get the early bird conference rate of $99. After December 18, the cost goes up to $149.

At any rate, it’s a great deal. With keynotes by Bruce Eckel, Neal Ford and Scott Guthrie … and talks on Python, Java, .NET, TurboGears, and more, I’m already looking forward to it.

Get more information and register now at www.codemash.org

Conference Location

CodeMash conference

CodeMash Organizer and CodeMash Speaker Mash it Up on Dot Net Rocks

Dianne Marsh, organizing committee member of the CodeMash Conference and CodeMash speaker, and Bill Wagner, CodeMash speaker, appeared on the Internet Talk Radio Show “Dot Net Rocks” today. Bill and Dianne, cofounders of SRT Solutions, a firm that specializes in mentoring developers, talked to hosts Carl Franklin and Richard Campbell about how broadening your horizons with different technology communities will help you become a better software development professional. At the end of the show, Carl and Richard gave away 2 free tickets to the CodeMash conference.

Topics discussed:

  • Objectives of CodeMash conference: bring together developers of different languages and platforms to learn from one another.
  • Lots about Python, including IronPython
  • How SRT best serves its clients with its multi-platform, multi-language approach

Our radio hosts

Developer Conference for ALL developers

TurboGears

Announcing Thinking in Java OpenLevel Seminar

SRT Solutions is pleased to announce that Bruce Eckel will be coming to Ann Arbor January 22-26, 2007, to train developers in Java. This seminar will provide training in Java 5 for developers from beginning to advanced. This model will be tailored to the individual learning styles of the participants.

You'll be doing exercises from the 4th edition of Thinking in Java, in groups and within a supportive environment. You will move at the speed that is comfortable for you, learning at your optimal rate. Guidance is available if your group gets stuck.

For more information and to register for Java 5 training, go to http://mindview.net/Seminars/ThinkingInJava

Thinking in Java: An OpenLevel Seminar

CodeMash Speaker Evaluation Underway

CodeMash is a conference that will be held in Sandusky, OH January 18-19, 2007 at the Kalahari Resort. We’ve lined up some really great talks for CodeMash. Here is a small sampling:

·Dave Donaldson: Let NHibernate be Your Data Layer
·Joe Wirtley, Dan Hounshell: Real World Continuous Integration using NAnt, NUnit, NCover, FxCop, and More
·Owen Taylor: End of Tier Based Architecture
·Chris Judd: Scripting for Java
·Mary Poppendieck: Lean Software Development
·Ben Carey: Beyond TDD: Exploring the Benefits beyond Testing
·Bill Wagner: Curry Favor with Closures:  An Introduction to Functional Programming

And more …

We’re going to have a birds of a feather session with technical book writers. How could we resist, with some great authors at the conference, including Bruce Eckel, Neal Ford, Bill Wagner, Jason Gilmore, and more.

And … we’re also going to have a language experts panel, moderated by Bruce Eckel.

And, of course, we have 3 really cool keynotes: Bruce Eckel, Neal Ford, and Scott Guthrie.

Get your reservation in early. Early bird prices ($99) end December 18.

CodeMash Conference