FeetWetCoding: Trying to make learning C++ a little more fun!

Mario Fux edu-ml at unormal.org
Wed Aug 22 07:25:23 UTC 2012


Am Montag 20 August 2012, 23.06:13 schrieb Robert Holder:

Good morning Robert

First and foremost. Thx for posting this link and email here!

> Greetings!  I'm writing about a project my wife and I worked on.  It is
> not specifically a "KDE" project, but it uses Qt, and it is educational,
> so I thought I might be able to post here.  If this is not an
> appropriate place for me to post, my apologies.

It's a good start ;-). KDEedu and other KDE people, what do you think about a 
dot story of this? (dot is our (dot.kde.org) news portal).

> FeetWetCoding ( http://feetwetcoding.com ) is a non-commercial open
> source project we started in our spare time, intended to make it a
> little more fun to learn C++ for the beginner.  It is not finished yet,
> but it does run, and does have enough documentation for someone to get
> started with it, and see how it works and what it is intended to do.
> 
> Learning to program is a lot more enjoyable when one is able to draw
> graphics on the screen, rather than being limited to console-style
> programs using cout.  But modern, GUI-based, event-driven programming is
> just not within the reach of the beginning programmer.  The old days (as
> it was when I was growing up) of being able to get started with some
> simple graphical programming on a TRS-80 or an Apple II are very
> different than how it is today.
> 
> We created a learning framework with a very limited set of simple
> graphics tools for the beginner.  The beginner's code runs in a separate
> thread from a.exec() so that we can give them things like a simple
> version of sleep(), and let them do simple graphics, while concealing
> the details of the Qt event-driven, signals and slots scheme from them
> until they have their feet under them and can start to tackle those more
> complex learning challenges.
> 
> We worked on the project in our spare time for about five months, and
> although it is far from complete, we believe that Computer Science
> Professors and other Software Developers should be able to see the
> potential there.  We showed it to friends, a few other software
> developers, and some high-school teachers (which may not be the right
> audience, as this software might be better suited at the university level?)
> 
> The responses we got typically fell into two categories:
> 
> 1)  Why isn't it about Ruby/Python/Java/Javascript/etc.?
> 2)  Can it be made to run in the web browser?
> 
> The answer to (1) is that we were interested in helping C++
> programmers.  We felt that this effort would be of most benefit to newer
> C++ coders.  My wife has about fifteen years of professional experience
> working with Qt, and we felt that we could get our idea up and running
> most quickly by basing it on the Qt SDK.  We have, and will continue, to
> decline to participate in language holy wars. :-)  C++ is going to be
> around for a long time, and the world needs competent C++ programmers.
> Beyond that, we have ceased to try to justify our choice of language.
> We have nothing against other languages!  We just chose to focus on C++.

Thanks for this! 

> Given that choice, the answer to (2) is that since C++ is a compiled
> language, it is simply outside the scope of our time and capability to
> try to make our learning framework run in a web browser. Frankly, we
> have no idea how that would work.  Many people seem to believe that web
> and mobile development is the only kind of software development worth
> learning, but we believe that single-computer desktop type software
> development is still a good way to get started.
> 
> I'm posting here because we put a lot of work into the project, and we
> believe that some of our ideas might benefit the beginning programmer,
> as well as perhaps be useful to University-level Comp Sci Professors.
> We think that the side-by-side exercise/solution UI layout we came up
> with, the fact that the student can look at the solution code if they
> get stuck, the fact that the learning process happens in the IDE
> directly, and the exercises themselves which we created are all good
> ideas, and might be helpful to students and educators.
> 
> We have not worked on the project in some months now, because it seems
> to us from the reactions we've gotten that nobody is really interested
> in it!  :-)  I guess that's pretty common with many open source
> projects.  But it seems a shame to me that nobody is getting the benefit
> of that work.  Perhaps FeetWetCoding just isn't really useful?  We don't
> know.  We think it has promise, but maybe we're wrong.  We posted a
> notice about FeetWetCoding on the Qt Developer Forum at
> http://qt-project.org/forums/viewthread/14171/ but that was over six
> months ago, and there have been no replies.
> 
> So I'm posting here hoping that there might be somebody who teaches C++
> for a living who might find time to take a look at our little project
> and see if they think it would be useful, and is worth our spare time to
> improve.  We had already decided to stop working on it, but that might
> change if we thought someone might use it!  :-) We would be interested
> in any feedback from any Computer Science Professors, teaching
> assistants, or even just beginning C++ programmers who were willing to
> read our documentation and try some of the exercises.  Since it is far
> from finished, we are not focusing on trying to promote it to beginning
> programmers in a widespread way.  What would really be most useful to us
> is feedback from actual C++ teachers.  People who have taught C++ will
> certainly be in a better position to evaluate FeetWetCoding, and say
> whether it might be useful or not.

I don't teach C++/Qt myself professionally but I teach at a vocational school 
and did one or two small programming course. I'll will definitively take a 
closer look but the overview looks good and great.

> Thank you for your time and attention!

Thanks for your obviously big amount of work!
Mario


More information about the kde-edu mailing list