Go to Post Kids don't just decide they want to build robots then build the next Einstein champion the next year. - kjolana1124 [more]
Home
Go Back   Chief Delphi > FIRST > General Forum
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 15-05-2016, 19:16
Phoenix Spud's Avatar
Phoenix Spud Phoenix Spud is offline
Everyone. Everywhere.
FRC #3132 (Thunder Down Under)
Team Role: College Student
 
Join Date: Jan 2009
Rookie Year: 2004
Location: Sydney, Australia
Posts: 702
Phoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond repute
[Help Needed] Transitioning to Object Oriented Programming

I'm currently completing my undergraduate research thesis on assisting students' transition from visual to object oriented programming. After struggling through this myself, and mentoring lots of students through the transition, it is something I have become quite passionate about.

As part of the project, I created a survey to better understand the problems students are currently facing. It has been approved by my university's ethics committee.

The survey is voluntary and available here: https://mqedu.qualtrics.com/jfe/form/SV_a99c6tE4IJIqN1j

If you could share the link around, I would greatly appreciate it!

Thanks!
Sarah
__________________
Sarah Heimlich
Outreach Mentor | Business Mentor
FIRST® TEAM 3132
Reply With Quote
  #2   Spotlight this post!  
Unread 16-05-2016, 09:40
phurley67 phurley67 is offline
Programming Mentor
FRC #0862 (Lightning Robotics)
Team Role: Mentor
 
Join Date: Apr 2014
Rookie Year: 2013
Location: Michigan
Posts: 65
phurley67 is an unknown quantity at this point
Re: [Help Needed] Transitioning to Object Oriented Programming

Our team is in the process of transitioning from LabVIEW to Java. We have 12 students with varying degrees of proficiency in LabVIEW. I am currently working on training materials for this summer's project of educating them and then having them customize the training materials for use again this fall while in boarding our new freshmen.

If it would be useful, I will be happy to ask them to fill out your survey at the end of the summer. I would also be most appreciative of any insight you may have in assisting in the transition (I have taught many people programming, so from scratch, most with at least some experience, but never helped kids who are transitioning from a visual based language to text).

Good luck on your thesis.
Reply With Quote
  #3   Spotlight this post!  
Unread 16-05-2016, 09:48
Mark McLeod's Avatar
Mark McLeod Mark McLeod is online now
Just Itinerant
AKA: Hey dad...Father...MARK
FRC #0358 (Robotic Eagles)
Team Role: Engineer
 
Join Date: Mar 2003
Rookie Year: 2002
Location: Hauppauge, Long Island, NY
Posts: 8,717
Mark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond reputeMark McLeod has a reputation beyond repute
Re: [Help Needed] Transitioning to Object Oriented Programming

It might be worth adding an intermediate step by transitioning to Object-Oriented LabVIEW before advancing to Object-Oriented procedural text programming.
__________________
"Rationality is our distinguishing characteristic - it's what sets us apart from the beasts." - Aristotle
Reply With Quote
  #4   Spotlight this post!  
Unread 16-05-2016, 10:13
Foster Foster is offline
Engineering Program Management
VRC #8081 (STEMRobotics)
Team Role: Mentor
 
Join Date: Jul 2007
Rookie Year: 2005
Location: Delaware
Posts: 1,387
Foster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond repute
Re: [Help Needed] Transitioning to Object Oriented Programming

So not to be a stickler for words but "visual programming and object oriented" are two different concepts.

Visual programming would be more drag and drop programming where you don't type code it, you do everything in a graphical environment. Like Scratch, the graphical part of RobotC and Labview.

Object oriented is where your program deals with objects where objects have data and methods associated with them. You invoke the method and it works on that objects data.

Some languages are procedural, so you do things in steps and have functions that you can call.

RobotC Graphical is a procedural visual language.

Scratch is mostly considered a procedural visual language, except you can treat sprites as objects and tell them (invoke their methods) what to do. (Start the flame war in another thread please)

Dataflow languages act on data streams. They models a program as a directed graph of the data flowing between operations. Labview is a dataflow language as is Microsoft Visual Programming Language (part of their Microsoft Robotics Studio.) My primary dataflow language is Verilog for programming chips. What makes dataflow languages interesting is lots of things happen concurrently, not in steps like a procedural language.

But there is a component of Labview that allows you to create objects and do a method invocation.

That leaves Java which is an Object Oriented text based (non-visual) language.

Hope this helps on some definitions. I tried to stay with "robotics" languages, there are dozens of dataflow languages, over 100 OO languages and lots more procedural languages. And some that try to be all things to all people (and fail)

Good luck with your paper!
__________________
Foster - VEX Delaware - 17 teams -- Chief Roboteer STEMRobotics.org
2010 - Mentor of the Year - VEX Clean Sweep World Championship
2006-2016, a decade of doing VEX, time really flies while having fun
Downingtown Area Robotics Web site and VEXMen Team Site come see what we can do for you.
Reply With Quote
  #5   Spotlight this post!  
Unread 16-05-2016, 19:49
Phoenix Spud's Avatar
Phoenix Spud Phoenix Spud is offline
Everyone. Everywhere.
FRC #3132 (Thunder Down Under)
Team Role: College Student
 
Join Date: Jan 2009
Rookie Year: 2004
Location: Sydney, Australia
Posts: 702
Phoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond reputePhoenix Spud has a reputation beyond repute
Re: [Help Needed] Transitioning to Object Oriented Programming

Quote:
Originally Posted by Foster View Post
So not to be a stickler for words but "visual programming and object oriented" are two different concepts.
Absolutely! My project looks at how to help students transition between these different paradigms. A number of researchers have noted this transition is difficult (as I think many FIRST alumni like myself know first hand) but there is very little information on why this is difficult.
__________________
Sarah Heimlich
Outreach Mentor | Business Mentor
FIRST® TEAM 3132
Reply With Quote
  #6   Spotlight this post!  
Unread 17-05-2016, 11:51
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 9,112
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Re: [Help Needed] Transitioning to Object Oriented Programming

Quote:
Originally Posted by Foster View Post
So not to be a stickler for words but "visual programming and object oriented" are two different concepts.
Quote:
Originally Posted by Phoenix Spud View Post
Absolutely! My project looks at how to help students transition between these different paradigms. A number of researchers have noted this transition is difficult (as I think many FIRST alumni like myself know first hand) but there is very little information on why this is difficult.
I don't think you understand. The concepts of "visual programming" and "object oriented" are not choices on the same scale. They are separate and unrelated. There is no such thing as transitioning between them; each can be used, or not, independent of the other.

The "difficult transition" you are positing is probably between procedural and dataflow languages, or perhaps between non-object-oriented and object-oriented ones. Talking about visual programming in this context is only a distraction.
Reply With Quote
  #7   Spotlight this post!  
Unread 17-05-2016, 12:35
Larry Lewis's Avatar
Larry Lewis Larry Lewis is offline
The Spiky Hair Guy
FRC #1511 (Rolling Thunder)
Team Role: Leadership
 
Join Date: Apr 2005
Rookie Year: 2005
Location: Rochester, New York
Posts: 108
Larry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to all
Re: [Help Needed] Transitioning to Object Oriented Programming

LabVIEW and Object Oriented programming are not separate concepts. You can do object oriented programming in LabVIEW using LabVIEW classes. The classes have common attributes desired in OOP such as abstraction layers, data encapsulation, and inheritance.
I would suggest reading up on how NI implemented OOP in LabVIEW and get familiar with classes to see if it can work for your application.

Here is a white paper on the topic: http://www.ni.com/white-paper/3574/en/
__________________
Larry Lewis
FIRST Team 1511 - Rolling Thunder
Team Leader
2013 - Present: Systems Engineer - Viewpoint Systems
2004 - 2013: Lead Test Engineer - Harris RF Communications
www.penfieldrobotics.com
Certified LabVIEW Architect
"I haven't failed, I've found 10,000 ways that don't work" ~Thomas Alva Edison
Reply With Quote
  #8   Spotlight this post!  
Unread 17-05-2016, 15:47
Foster Foster is offline
Engineering Program Management
VRC #8081 (STEMRobotics)
Team Role: Mentor
 
Join Date: Jul 2007
Rookie Year: 2005
Location: Delaware
Posts: 1,387
Foster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond reputeFoster has a reputation beyond repute
Re: [Help Needed] Transitioning to Object Oriented Programming

Quote:
Originally Posted by Alan Anderson View Post
I don't think you understand. The concepts of "visual programming" and "object oriented" are not choices on the same scale. They are separate and unrelated. There is no such thing as transitioning between them; each can be used, or not, independent of the other.
Thanks, that was the point I was trying to make.

Quote:
Originally Posted by Larry Lewis View Post
LabVIEW and Object Oriented programming are not separate concepts. You can do object oriented programming in LabVIEW using LabVIEW classes. The classes have common attributes desired in OOP such as abstraction layers, data encapsulation, and inheritance.
LabVIEW is a data flow language that they have bolted some OO programming features onto. So it is becoming more of a hybrid an attempt to be all things to all people.
__________________
Foster - VEX Delaware - 17 teams -- Chief Roboteer STEMRobotics.org
2010 - Mentor of the Year - VEX Clean Sweep World Championship
2006-2016, a decade of doing VEX, time really flies while having fun
Downingtown Area Robotics Web site and VEXMen Team Site come see what we can do for you.
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 13:51.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi