Tag Archives: TurboGears

UI Smackdown: Session 4

Combining Flex with other technologies

Is it possible to combine Flex with other technologies?  We saw James Ward build a Flex front end for a TurboGears app at CodeMash.  What else makes sense? Those are the questions that we tried to answer in the last session that I attended at the UI Smackdown.

Flex runs on the Flash VM, which has a small memory footprint. It's possible to build a GWT programming model for Flash.  This would generate ActionScript instead of Javascript. That's interesting.  The goals of such would be to reuse components so that you don't have to learn a new interface, leveraging the Flex framework (e.g., tab navigation, etc.).  You would want to use the GWT Compiler, which is written in C/C++.

This would provide good discipline in Javascript, in terms of using libraries and namespaces.  It would improve searchability.  This would be heavy on HTML, rather than AJAX.  One downside of AJAX is that it's not spiderable, hence the reduced searchability.

This is an interesting area which certainly requires more thought. It sounds like James Ward IS thinking in that direction and it will be interesting to see what Adobe comes up with.

Web Frameworks Comparisons at the Java Posse Roundup

Java Posse Roundup Day 0

 I’m here in Crested Butte for an Open Spaces conference, The Java Posse Roundup.  The conference officially starts this morning, but we had an “extra session” last night at Bruce’s house.  Graham Ullrich presented his experiences with TurboGears and Django, both web application frameworks written in Python. 

Graham’s experience with TurboGears was in the summer of last year, with about the 0.9 release.  Since then it has been released as 1.0, and I think that the documentation has been improving steadily.

The major drawbacks of TurboGears include:

  1. Kid templating errors are hard to decipher
  2. SQLObject is limited in functionality

Both of these can be addressed now, as you can drop Genshi in place of kid (and Genshi has awesome error reporting), and SQLAlchemy is more powerful than SQLObject (and arguably than the ORM built into Django).

The major drawbacks of Django include:

  1. Incomplete documentation
  2. Newforms development incomplete 
  3. Not easy to understand what to do with static content

The Django project was poorly advised to put a note in the documentation that new projects should use newforms, since there are major pieces that are not implemented.

Overall, Graham reported that his experience with Django was more “pythonic” than his experience with TurboGears.  It’s hard to tell whether that’s because he was using an earlier version or whether it just feels more natural to him.  In particular, he likes the admin interface and database mapping.

Here are some more comparisons of the 2 toolkits:

http://www.oreillynet.com/onlamp/blog/2006/02/a_brief_djangoturbogears_compa.html

http://www.petersblog.org/node/1083

And, if you missed the presentation and want to read through his slides, he's provided them (see below).

Graham's presentation on Django vs. Turbogears

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

TurboGears 1.0 is released!

TurboGears, which has been at 1.0b1 for a while now, was released as 1.0 today. Here’s a link to an IRC chat that describes what that means, and more about the future of the TurboGears project.

http://irclog.turbogears.org/archive/freenode/turbogears/2007/01/03 (scroll down to timestamp 17:00 for the relevant info).

This is all great timing, since the TurboGears Jam is starting in just a week and a half, here in Ann Arbor. It’s January 14-16 (more details on Bruce Eckel’s site: http://mindview.net/Conferences/TurboGearsJam/).

Here’s Kevin’s mention of the TurboGears Jam from the IRC chat:

Next minor item: I'd just like to remind folks that Bruce Eckel's TurboGears Jam is happening here in Ann Arbor, Michigan in less than two weeks. It should be a lot of fun and I hear that Bruce creates a great learning environment at these kinds of events. I will be at the Jam as much as I can. Also, I'll be introducing TurboGears at CodeMash in Sandusky, Ohio later that same week.

I’m really looking forward to the TurboGears Jam, and I’m excited to see what 1.0 has to offer that I haven’t already seen in 1.0b1. If you haven’t already signed up, I think that there’s still room for a few more people. Join us! Sunday is “introductory day” with pricing that allows you to attend Sunday only (great for those who want exposure to TurboGears, but can’t justify it to their bosses … yet). Monday and Tuesday should give us a lot of time to experiment.

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

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

CodeMash … and Football!

Have I mentioned CodeMash? LOL! Even my conversations IRL these days seem to find their way to CodeMash. So no one will fall over when I mention CodeMash and football in the same blog post, right? Well, at least not my real life friends …

Yeah, we were being daring, putting together developers of all languages and platforms to learn from one another. Back when the conference planning started (ahem, discussions last spring!), we didn’t really THINK about football. But … it’s happened. One of the longest standing rivalries in college football has escalated to be The Game. Not just for the Big Ten Championship, but likely for rights to go to the National Championship. And it is coincidentally occurring on the same year that we’re putting together Michigan and Ohio programmers for CodeMash.

In this family, my 1 year old son signaled “touchdown” before he said “Mommy” (and I was OK with that). And my 3 year old daughter yells, “GO, GO, GO! RUN!”, and “NO!” at all of the appropriate times. Yup, we’re huge football fans. MICHIGAN football fans.

Sadly, even though Josh is an Ann Arborite, he isn’t really a football fan. So, on the organizing committee for CodeMash, it’s me against the Ohio guys (many of whom are in Columbus). They’ve been polite, even as they were apologetic in their hopes that Michigan would lose to Notre Dame in the early season, setting up a OSU/Notre Dame national championship. But alas, we know what happened (reminder to the Fighting Irish: it was 47-21 MEECHIGAN!). I didn’t gloat. I just quietly sat in meetings throughout the year, hoping that both teams would go UNDEFEATED into the UM/OSU matchup.

So on November 18, I’ll be cheering on Chad Henne, Mike Hart, and Steve Breaston (no trash-talking on my buddy Breaston, Kirk Herbstreit!), and all of the other guys including the AWESOME defensive line. And then the following Tuesday, I’ll go back to our weekly CodeMash organizing meeting with “the Ohio guys”.

So come one, come all to CodeMash! We’ve got Java and Python and .NET … and even some people from both Michigan and Ohio State!

CodeMash – I'll be there! 

Announcing CodeMash 2007

Ohio … where you need to be January 18-19

What? January in Ohio?! That’s always the first reaction. But … once I tell them what’s going on (and that it’s at an indoor water park), the tune changes to, “Really? Cool!”.

I’ve been involved with the planning of CodeMash, a 2-day conference for developers, to be held in Sandusky, Ohio January 18-19. 2007. It’s a conference for developers of all flavors: Java, .NET, Python, PHP, Perl … you name it! We’ll have some Ruby on Rails and some TurboGears, some Oracle and MySQL. The goal is to all get together and learn from one another. We all benefit from advances in other languages and platforms.

We’ve scheduled some really cool keynotes. Bruce Eckel is going to talk about issues of design in software development, from a philosophical standpoint. Neal Ford is planning a talk about the evolving programming paradigm. Scott Guthrie will also be doing a keynote.

We’re accepting abstracts right now, and conference registration will be open really soon (you can reserve a spot now, though!). The pricing is phenomenal … early bird price of $99 for the 2 day conference, if you stay at the Kalahari Resort (conference hotel, discounted room rate of $88/night). The regular price for registration (after Nov 30) is $149.

I think it’s going to be an amazing event.

CodeMash – I'll be there!

Code Mash Conference Page

TurboGears Jam

I’m very excited to announce that Bruce Eckel is going to do a TurboGears Jam in Ann Arbor, Michigan from January 14-16, 2007. That’s a Sunday-Tuesday, which gives people who can’t get time off of work to learn a new technology ample opportunity to pursue it on their own. Bruce is offering pricing based on whether you attend just Sunday or Sunday through Tuesday.

My company, SRT Solutions, here in Ann Arbor, is “on the ground” to help coordinate the event, which will be held at the Ann Arbor ITZone (SPARK Central). Bruce will offer us some guidance and his never-ending Python experience and excitement. Kevin Dangoor (creator of TurboGears) and Mark Ramm (author of the emergent Turbo Gears book: Rapid Web Applications in TurboGears) are Ann Arborites who have expressed interest in attending and participating. I sure hope that they can come!

I can’t wait! Hope to see old friends (you know who you are) and meet new friends at this event! Judging from the turnout at the Ann Arbor Computer Society meeting last week, where TurboGears was the topic, I’m pretty sure that this is going to be a well-attended event!