by Ben Forta
During the MAX 2006 conference in Las Vegas, I had the opportunity to meet the youngest person at the conference, 14-year-old Max Zimet. In fact, anyone who attended the Day Two keynote caught a glimpse of this young developer because Adobe Chief Software Architect Kevin Lynch brought him on stage to chat and to present him with a backpack full of MAX-branded goodies. With his friend and mentor Steve Wickes at the wheel, Max traveled 640 miles from Colorado to Nevada to attend MAX. Like me, Max is a big fan of ColdFusion®, and lately he's been working with Flex™. While Max is still catching up on all the schoolwork he missed during his road trip to Las Vegas, he found some time (after swim practice) to talk to me about his passion for programming, his work with ColdFusion and Flex, and his plans for Apollo.
Ben: The last time I chatted with you was at the MAX conference after the keynote. Kevin Lynch brought you on stage in front of 3,000 people, and you quickly reached celebrity status in the web development community. What have you been doing since then?
Max: I've been continuously checking the blogs to see when Apollo's going to come out. I'm so excited about that. And mainly I've been doing a ton of Flex work.
Ben: What type of Flex work?
Max: I've been trying to build a custom component to follow some ActionScript, a gauge component for one of Steve's websites.
Ben: Do any of your classmates know that you became famous at the conference this year? Did they catch your name in the blogs and the postings?
Max: No. They don't pay attention to blogs. They're not that technical.
Ben: So, you've been doing ColdFusion, you've started doing some Flex, and you're now discovering how to integrate the two?
Max: Yes. That's my big thing right now.
Ben: You said you're building a gauge component but, bigger than the component itself, what kind of projects are you working on? Is it just playing and experimenting, or do you actually have a real project you're working on?
Max: Right now I'm just playing and experimenting but in a couple months, when I have more free time, I'll be using Flex and ColdFusion to build a website for my mom. She's a doctor, and she'd like to give her patients the ability to schedule appointments online. When Apollo is available, I'll have an Apollo version of the application, too. That way people can access the application online or from their desktop.
Ben: Are any of your classmates or peers interested in programming and trying to build applications?
Max: Yeah, I have one friend named Kevin who likes PHP. This year, I convinced him that PHP is awful, but now he's less into web development and more into desktop programming.
Ben: There's room for both. Do you ever try to persuade your friends to try programming?
Max: I think it would be futile. Most of my friends look at code and are overwhelmed by it. They say "Cool!" and then go do something else, like play video games.
Ben: What do you think it would take to get kids interested in programming?
Max: I think if you showed kids how to write one website, they would be hooked immediately. The problem is that most kids just don't see the point of learning how to develop. They think that coding is geeky or a waste of time. However, as people get older, they realize that it's a useful skill and it's a very cool thing to know how to do, especially as a job. It's also challenging. With programming, I get to solve a problem every day. And I think a lot of kids just don't have the mindset that solving problems is fun.
Ben: When I was in school, I was the stereotypical geek. Back then, I considered it a badge of honor. The more they called me a geek, the more it encouraged me to be one.
So, if you met somebody your age who was really interested in programming or development but didn't know where to start, what would you recommend?
Max: I'd suggest starting with the web — with HTML. Then try ColdFusion. There are a lot of programming languages, but ColdFusion is by far the best one to learn. Then I'd recommend Flex.
Ben: You told me that you've been working with ColdFusion. You're developing with Flex. You're interested in Apollo. What other programming languages have you played with?
Max: Lately my big programming language has been Ruby. I spent a lot of time working with Java and some time with Python. Then I was introduced to Ruby, and I immediately discarded all the others. Ruby is such a powerful programming language. You can do so many different things with it. But right now, there's not enough documentation. I think Ruby will explode once it has more documentation.
Ben: When you think about what you'll be doing in the future, what kind of programs do you want to write? What kind of problems do you want to solve?
Max: Well, right now there are a lot of bad websites out there. Every time I go to a bad website, it shocks me. In every page, the content is hidden, the UI is awful, and you can't find anything. I think that a lot of future programming work is going to be spent rebuilding websites. I don't think it will be hard because ActionScript and Flex make it so easy.
Ben: You want to see the whole next-generation web powered by Flex and ActionScript?
Max: Well, I think there are some websites and applications that should remain as HTML, but I think that many websites and applications that are built in HTML should be rebuilt in Flex. There are a lot of sites and applications out there that were written using a certain technology or method because there wasn't a better alternative. Now there are better, more efficient ways to do things.
Ben: On average, how much time per week do you spend programming or researching web development?
Max: On average, I spend about 10 to 15 hours of my weekend programming and doing research. The other half of my weekend I spend playing with friends and skiing and doing stuff like that.
Ben: How much time do you spend planning an application versus jumping in and starting to code?
Max: With the first couple applications I made, I wasn't experienced and I tried to dive right in. That lasted about a week. Then when I needed to make a change, I had to redo the whole website. Now I probably spend a day planning out a website and thinking about any possible changes I may want to make in the future. I try to make it as flexible as possible. And I try to reuse a lot of code.
Ben: You mentioned getting into the Ruby programming language and experimenting with other languages and technologies. I'm wondering how you learn about what's new and cool in the application development world?
Max: RSS feeds. My friend Kevin and I subscribe to a lot of different news feeds. So we have a lot of up-to-date information, especially about programming languages. Kevin spends a lot more time researching this stuff than I do, and I learn a lot from him.
Ben: Are you planning to attend MAX next year?
Max: Probably not because of all the problems I've had making up my schoolwork. I missed a lot of work, and I've had problems with my teachers. I'll definitely attend once I've graduated high school. Until then, I'll rely on Steve. He attends MAX every year and comes back with a lot of information to share.
Ben: In that case, we'll have to make sure we post online versions of all those MAX presentations so that you have access to the information you need.
Max: That would be great!
Ben Forta is a senior product evangelist at Adobe and author of numerous books, including ColdFusion Web Application Construction Kit and its sequel, Advanced ColdFusion Application Development, as well as books on SQL, JavaServer Pages, WAP, Windows development, and more. Visit Ben's blog to read his regular postings on ColdFusion and more.