Please help me!

A forum for general discussion of the Python programming language.

Please help me!

Postby lakhn008 » Thu Jan 30, 2014 7:09 pm

Hello!
My name is Neil Lakhani and I have been asked to research the effectiveness of writing programs in a block programming environment compared with other programs such as Python, Java or CC+ by my school to help with my controlled assessment in GCSE Computing.
I would really appreciate if you could help me by answering a few questions:
Why do you prefer Python over writing in a block programming environment e.g App Inventor or Scratch?
Why do you prefer Python over other programming languages like Java, App Inventor or C++?
If you do like writing in a block programming environment, why?
Any feedback will be appreciated
Thank you very much
Last edited by micseydel on Thu Jan 30, 2014 7:11 pm, edited 1 time in total.
Reason: Locked OP.
lakhn008
 
Posts: 1
Joined: Thu Jan 30, 2014 7:06 pm

Re: Please help me!

Postby Marbelous » Thu Jan 30, 2014 8:38 pm

Well since Python and LabVIEW are my two primary programming languages I'll try to answer for you. Unfortunately my main response must be: I don't really prefer any particular language on an overall basis. They are all just tools in the box. If I need a particular job done, I try to pick the most appropriate tool.

I really wouldn't consider Scratch or App Inventor to be languages per se. They are more of a front-end interface that dumbs down the underlying code (whatever that might be) to make it easier for young students to get their feet wet.

A real block language like LabVIEW has the definite advantage of speed. Since there is so much power in the SubVIs (LabVIEW's Blocks) you can very quickly create large, complicated code. You also retain the top-level view of your overall program which is often lost in pages of text-based code due to the almost flowchart like look and feel of the block programming paradigm. Another advantage is the inherent consistency in block program. Things that can be connected together just work together. You rarely have to worry about interfacing issues which again, keeps you focused on the big picture instead of getting lost in the details. The power and convenience of LabVIEW does come at a price though... Its PRICE. :( By the time you buy the Dev package and some toolkits you're into several thousand dollars. Compare that to the Anaconda distribution of Python which has about equivalent capabilities but is totally open-source and FREE! :mrgreen:

If your questions are going to be the basis of a decision on what language to teach students I would recommend Python without hesitation. It does it's best to make text-based programming a logical and consistent. It's easy to learn but is very powerful with its "batteries included" attitude (i.e.: There's already a python module available for just about anything you can imagine.) The only downside I can think of is it's a bit slow in execution (but since it's written in C you can always just call C code when you need speed). The main reason I program in python and recommend it as a first language is that its very clear syntax makes it easy to write and read. Plus, once you learn the basics of programming in python you can easily move on to other languages with much of their learning curve already behind you.


BTW, please try and name your threads better than "Please help me!!". We program in Python here, BE EXPLICIT. :twisted:
Marbelous
 
Posts: 153
Joined: Fri May 31, 2013 8:12 pm


Return to General Discussions

Who is online

Users browsing this forum: Google [Bot] and 2 guests