On Wed, Oct 12, 2016 at 11:52 AM, Chris Kelling via Lazarus <
> I'll tell you, after years of doing top down modular programming, it took
> me a little time to adjust to event driven programing. It wasn't until I
> used a FOR loop on a form to collect the input that I realized what the
> difference is.
> For a beginning student, you can approach it in two ways - teach
> programming concepts or just teach the language. This is what I learned in
> my Computer Science classes.
> I had a couple of classmates who were hot shots in JAVA by reading the
> tutorials online. Where as their mastery of JAVA was impressive, they had
> no concept of what they were doing in the context of programming. This was
> a data structures class, and concepts and how to apply them was totally
> lost on them. Their code was sloppy, inefficient, and very hard to
> One exercise in my C class called for creating a linked list. I used
> recursion, which took my instructor off guard. He said it wouldn't work,
> and I asked, "It worked on all my tests, should I stop doing it this way?"
> He looked at my code again, get a huge smile and remarked that
> I used recursion. I said yes, the pre-req for the course was programming
> I and II, which is where we learned recursion. He still have me more
> credit because most students were using some king of loop
> The point being, the language doesn't matter except for syntax.
> Programming is programming. That being said, more to what you asked.
> To understand how the more advanced concepts work and are used, there
> needs to be a broad base. I still write a lot of my logic in a unit and
> then add that unit into a project. Defiantly start them off making simple
> console programs just to demonstrate the concepts. I'd do it via the
> Lazarus IDE so they get used to that environment. After they have the
> basic concepts, introduce what Lazarus is - a group of libraries extending
> FPC into the visual design. They should have enough of a grasp on the
> concept of say arrays to understand how a
> list control works, or how you can use conditional branching (both IF
> -THEN-ELSE and CASE) to check for radio button and check box states.
> But then again, I'm not a professional educator.
> On Wed, Oct 12, 2016 at 2:10 PM, Adrian De Armas via Lazarus wrote:
> Hello everyone, I am a professor of "introduction to programming".
> Currently we are working with matlab and c.
> Today I had a meeting about doing the module more interesting to the
> students. Currently we teach algorithms making console applications and
> usually I receive questions like "Why don't we do something more modern?".
> I recommended that we should use Pascal in General and Lazarus in
> particular to teach how to create rich GUI Applications and to my surprise
> the idea was well recieved. Now I have to make suggestions about how to
> prepare the module starting from zero. Students do not know how to program
> and I need to include subjects as: variable declaration, operations, if,
> while, for, functions and procedure, arrays and multidimensional arrays.
> I would love to know what you think about making the transition from
> console to GUI.
> This is an exciting opportunity I'd love to make it right.
I have taught mostly Fortran programming to the students ( with Cobol , but
, less frequently ) in a University ( Pascal in another University ) .
In those days , there was no any GUI programming facility like Lazarus .
When GUI is started , it was assumed that the students may learn more
effectively . My opinion is that such an assumption is misleading , because
, it is very easy to generate a GUI program . When it comes to perform some
, let's say , data processing , it is becoming necessary to write some
Pascal procedure parts ( or procedures ) within GUI program . In that part
, the students becoming helpless because they do not know how to write such
procedures or parts . To help to the students , my opinion is that , a
double way approach should be used :
First teach how to program in plain Pascal , for example , input - process
- output in a console program which is easy to write . After the students
have learned what can be down , embed main steps of this console program
into a Lazarus ( GUI ) program . In that way , the students will learn how
to write an algorithm in Pascal and test it in a simple console program ,
and then how to make it a GUI program .
They in that way learn how to generate a GUI program . Sometimes by
beginning from a console program or directly beginning a GUI program and
improve its procedures supplied by Lazarus generated sources , they will be
able to develop a software by selecting whichever way is easy and suitable
for them .
Mehmet Erol Sanliturk
Lazarus mailing list