orangewarp
Joined 16 years ago
Joined 16 years ago
Currently, we use Flash with a focus on OOP with ActionScript 3 (not timeline based loose junk). The advantage of this is that they can easily create rich assets in a simple and familiar environment to make the code part more genuine and purposeful for them. I've found that if you teach it this way they are very motivated to learn the programming concepts to realize their visions which are usually heavily tied to the visual and surface levels of a project. Gotta admit things you directly see are pretty sexy to many people. Once this "wow" moment is satisfied, it's much easier to point them in directions that go back to the programming theory to improve the depth of their work.
If you have a purpose and drive to want to accomplish something concrete you'll stick with the ups and downs so a programming language that supports that goal I think, is an appropriate language. It works well for us, the class is immensely popular and many of my students are very curious now of other languages like JavaScript, objective C, etc. The concepts transfer well too and some have even transitioned toward development. You can always learn new languages later although one commenter poses a good question of how one's starting language influences thinking. Don't have an answer for that one. But, my take is just try to get a good foundation with a language that supports what you want to do.
NOTE: I learned to program myself, and sought out specific programmers I admired to teach me so I don't have the experience of what a typical compsci program and curriculum is like. You might seek those opinions too. I would consider myself pretty darn good at understanding education and learning matters though so if you want any pointers, advice, or questions I'd be more than happy to discuss on this thread. I'm excited that you want to dive into programming. :-)
And this is part of the dilemma right? Being in the school environment is clearly a priceless opportunity to find and work with great colleagues. Very important to find out if you'd make it with these people after you're bumped out of the safe harbor that is academia. So, waiting till graduation is a cost with its own potential risks and drawbacks.
I agree that we should be cautious and try to minimize the footprint we leave for the school to point out. But the hurdle to truly separate everything is quite high, and given the options it's probably going to end up a situation where you just have to do what you do in stealth mode to some extent. At least until Universities address this issue very explicitly and clearly.
It's great that this issue is being raised. Perhaps there needs to be more student advocacy to take this issue forward and work with Universities to articulate very clear guidelines of what is acceptable and not. Like you said, the old models don't reflect the nature of entrepreneurship today and the nebulous boundaries are keeping people from charging ahead on the things that matter most.
When I was in middle school all we had in terms of understanding "business" was an annual pushcart fair where most of the kids just chose to sell gobstoppers and we call it a day. This program seems to go more in depth in terms of giving these kids a genuine problem, having them think, communicate, and plan their actions, and most of all, putting their theories of business to the test with real world results they can use to assess their predictions of the world. These types of applicable real world activities WITH resulting data to challenge ones understanding is crucial. Probably why for us older kids with startup dreams, it's so important to just do something rather than just think/talk only about tech projects and ideas. The earlier one gets real projects out (first foray need not be perfect) and starts getting real user results the earlier we can test our assumptions and adapt, grow.
That said, I think it's also really crucial for every member to be a specialist in something. The most productive group dynamics I've been in have been the ones where each member clearly understands their role and can execute it with flourish. Most of the talented bright people I know are usually hybrids in some regard anyway but above all, they are outstanding in a specific way which the other team members recognize.
If I had to choose between 5 people each with their respective DEPTH of knowledge and ability vs. 5 hybrids with breadth, I'll take depth in a heartbeat. Although, it might be cool to have 1 hybrid with excellent communication skills and 4 specialists!