John posed a question to me the other day: What’s important to you? I’ll leave out the obvious answers: wife, two kids, and church. He was asking more in relation to business and in particular, our business: 360|Conferences. So I was noodling on an answer for him.
Saturday morning, I finally caught up on a thread on an internal Flex list. The list was about a fairly common problem we have in the Flex world. There seems to be a nefarious void that people learning Flex tend to fall into. One where they’re beyond “This is a file. This a tag, made up of brackets and text in between them.” and below “I just rewrote the AdvancedDataGrid component to run 50% faster.” I have feelings in regards to how to help folks cross that void, so I started noodling a response to the thread.
Then it dawned on me, my two noodles were of the same type: helping folks grow and learn.
My last personal project (before jumping into the Flex world) was an online fiction magazine. The main purpose of the site was to give honest, indepth editorial responses to every entry that I received. The goal was that this type of response versus the “Sorry, this ain’t for us.” type could actually help the writers become better at their craft rather than let them stagnate at the same “unpublishable” level, i.e the writer’s equivalent to the void mentioned above.
For the conference biz, I’d say my two goals are these:
- To help people get so good at Flex that they can find a better job or go solo as a consultant
- To help people learn how to network with their peers
For the first item, I was so intent on helping that I wanted to do it myself and taught a lot of hands on sessions at our first conference. I realized though, with some help from John, that I’m better at being one of the organizers and leaving the teaching to the pros. However, the goal is still the same: help folks better their Flex skills. With Flex exploding, the opportunities for those looking to do better for themselves is amazing. This goes for folks who just want a nice paying FT job or those looking to move out on their own.
For the second item, I’m an introvert at heart. Therefore, I know how painful it can be to network. However, in this day and age, networking is a requirement for success. Therefore, John and I make sure that our attendees have plenty of opportunities to meet and network with their peers from all over, not just from their hometown. I purposely try to remember what one person said they were interested in and when I find a matching interest in another attendee, I make an effort to introduce them.
It is these two things that drive my interest in 360Conferences and in particular, 360|Flex. Reading posts like Doug’s and Ryan’s let me know that John and I are doing pretty good on these goals.
Now that John’s answer is out there, let me share with you the contents of my post to the list (modified to make sense without the thread).
The idea of finding an easy way to move from very basics up to knowledgeable in Flex is very dear to me. When I was handed Silvafug, I had this problem in mind. When I started my free training for people in the valley, I did so with the goal of helping solve this dilemna. Lastly, when I wrote my articles for the Flex ADC, it was in my thoughts and probably my best personal contribution to the cause.
I’ve been approached by publishers to write a book, but have declined. I even had the audacity to tell one publisher “I think the tech book medium is on its final leg and so writing a book for you would be pointless.” I have to admit, they took it better than I thought they would. LOL Note: I mean just instructional tech books, I still love me a good novel or biography.
I sorta run the gambit on Flex training from blogging tips to writing that article series to holding training sessions over connect to putting on a full blown 3 day conference. Whether I’m good at all those things is still up in the air, but one thing is for certain: it’s allowed me the opportunity to survey the land from many different angles. In addition to my personal output, I’ve read some of the Flex books out there, helped the Flex documentation team on their initiatives and even created a captivate session on Flex for the Edge awhile back.
I have a few ideas up my sleeve that I’d like to try to pull off: the future teaching tool to take the place of the now useless tech book. However, I’d like thoughts and input from those who feel they’re stuck in this unreachable void. You say what’s out there doesn’t work, but what would? How are you learning other things? Why is the tech book, which was once the bible of tech (before someone named their series the Bible) failing so much these days? Is it just poor writing/editing? Or is it the limitations of the media? What has lead to your most recent “Aha!” moments and how could someone help you have more?
I come from a tech background, not an instructional background. However, I’m pretty confident that if 360|Flex (a 300+ person, 3-Day conference) can come into being without prior knowledge of conference planning, there’s no reason why I can’t try to tackle the task of filling this void everyone seems to be referring too. Granted, three of us (me, John Wilker and Ted Patrick) got the conference started and John (luckily!) still makes up 50% of 360|Flex. All I need is some pointers on what you’re looking for to help you get over the Flex learning hump. This way I can narrow down my scope. To quote good ole’ Jerry McGuire, “Help me help you.” 🙂
I’m an extrovert, I admit it…
It’s probably what keeps me from being that crazy mad scientist cooked up in the basement. As my extrovertedness is pretty much only surpassed by my creativity and unending ability to come up with new ideas.
This puts me in a very unusual conundrum of the programming world – more commonly introverts. I have programming friends who would usually prefer programming to people. I prefer people to programming. The only thing that really allows me into the programming world is my creativity. And that I’ve got a pretty decent brain for strategy and workflow. But I always find myself struggling more with the more tedium end of programming.
It’s where Flex has been a bit of a challenge for me. I often wish I could just design and build on a logical workflow level. Flex while offering a lot of advantages, maybe the coding a bit more abstract. Many time I find myself unable to simply say “do this and this”. I now have to create this listener, create a new event, define that event. Then I can do this and this. Now I find myself with another page or two of code delay before I get to my gratification level.
And now as a father of a 1 yr old, I find myself struggling to find that free time in the balance of all other things.
***
“All I need is some pointers on what you’re looking for to help you get over the Flex learning hump.”
I think the biggest hump I’ve had with Flex is going from a more traditional procedural method of programming to a OOP event driven method of programming.
The two biggest challenges with regards to that are:
a) adapting, somehow wrapping my head around this new paradigm.
b) people making comments about “real programming” or “real languages” (drop the ego, in 20 yrs they’ll be laughing at OOP event driven language, just as the procedural language folks laugh at those GOTO LINE # programmers. And yet, some of the absolute best code ever written was by some of those old times. I bet you 99% of us programmers could not re-write most of those amazing games that ran on Commodores with only 64k.
***
Regarding the book deal. Maybe you should call them back up. Tell them, there will be more than enough total tech books for Flex. Tell them you’d be willing to write a social book on Flex. “Welcome to the Flex, Neo”
The book could be an intro to Flex, and event driven OOP. While at the same time an intro to the Flex community, resources. Can talk about life, being a developer + family. You know, it’d be something different. I bet a lot of people would pick it up.
New coders to learn about “Flex” and old coders for the social commentary portion.
***
Truthfully, I think there is probably a better fit for me. I’m not quite sure what it is. I mean, heck, I’d love just to pump out ideas and somehow be able to pay the bills, have a nice house for my family and enough freedom to travel with my loved ones.
I love giving ideas. I think it’s what I’m made for. (I, Idea). An interesting example:
For a number of years I have attended Cornerstone Festival (it’s a Christian rock festival out in Illinois). Two years ago I bought a funnel cake from one of the food vendors. I mentioned that since they come to the fair every year, they should make a mold to produce the funnel cakes as crosses instead of circles. The owner thought it was the best idea since sliced bread. Anyways, fast forward a bit. Last year we didn’t attend because my daughter was supposed to be born about the time of the festival. When we returned this year, I discovered they had actually modified a funnel cake pan in order to make funnel cake crosses. Turns out, they have been a huge hit, and opened the door for a lot of ministry. So when he realized I was the guy who suggested the idea. He ordered his cashier to return all of my money and refused to let me pay for any food the entire week.
I was quite thankful for the free food and lemonade. But I was even more pleased with having the rare opportunity to meet up with someone I had given an idea to who had in fact implemented it to great success. There is a beauty in seeing the success of an idea.
So how does this all tie together? One of the things I really love about 360Conferences is that you guys are always asking for input, open to suggestions, and receiving of ideas. It let’s me be more than just an attendee at a conference, rather I am participant and part of the conference.
One of the difficulties for me during the entire (never ending) journey of learning Flex, is that when I hit a very complex problem, I don’t know where to go for help. Bloggers and books and Adobe Development Center and all the other resources available on the Internet are extremely effective, in fact maybe 99% effective for me. But sometimes, I just need to talk to a person who has experience in the field.
I recall conquering many of the challenges of the Flex learning curve and thinking “That was a very difficult thing to figure out. I wonder how many other students of Flex will stumble the same thing.” As an example, back when I thought I would have time to be a blogger, I posted a blog called “Tripping over my own data bindings”, where I attempted to explain one of the gotchas in data binding that I had just discovered.
But that’s not a perfect solution because since then, more than one person on my team asked me questions about the same data binding topic. Obviously they didn’t think to go to Google and type in: “tripping over my own data bindings”. This exemplifies a limitation of posting and finding help topics on the Internet.
So, here’s my point: There will always be cases where it makes more since for people to help people directly, without playing the imperfect game of asking a search engine.
And here’s my idea: What if there were a way for Flex developers to find other Flex developers who have the area of expertise needed to answer their question? Then they could pick up the phone and talk to them.
In your post you said one of your goals was “To help people learn how to network with their peers”. Picture this: A database that people can go to, and register themselves as a Flex expert willing to take questions from people in the community about certain topics. And on the receiving end, Flex learners could use this database to search for people who have claimed to be experts about the specific subject regarding their question.
I could use this to find somebody to talk to who can answer my question about how to split up a Cairngorm FrontController that has grown way to big. And for karmic balance, Flex learners could call me and ask me why their data bindings won’t trigger.
In conclusion: There are probably a lot of knowledgeable Flex developers who would enjoy helping others in the Flex community. Let’s let them.
At the heart of things I think it’s hard to know where to start.
It is great that Flex allows drag-and-drop component use, but if that’s all you know you’ll be hosed the first time a designer gives you a mockup that can only be implemented by creating a custom component.
It is great that data binding is fairly simple to hook up, but it can be hard to debug when you’ve, say, inadvertently set up a binding that overwrites your model when the page is initialized.
It is hard to know where to go to learn these things. Those who know the answers tend to have a hard time passing that information on to folks with less knowledge.
People learn in different ways. I’m a book learner. I only recently discovered the Flex 3 Developer’s Guide was available offline…in a book. I had initially printed out the PDF…all 1400+ pages of it.
The Flex 360 stuff is excellent. I got a lot out of the data binding lectures. I’m also looking forward to watching one of the custom component lectures.