my handle is Q U B I T, as in quantum bit, not CUPID the one with the arrows...although I think cupid might be more interesting... As for terms, I would suggest looking at the terms in the language specs on msdn for use in this class, as that will have a point of reference other than someone's related experience in other languages. I had not brought up the stack variables and such. It is natural to thinking of everything at once when you first start out, but for the sake of learning, I agree we should start with some simple objects and show their use. As I was reading the "getting started" in C# on microsoft.com, it described the common language interface (CLI) -- at least I think that is the acronym. This is the set of objects and resources common to all the managed (or .NET) languages. I suggest getting familiar with the CLI and terms relating to it and follow an orderly progression to implement whatever project you are doing, and once done the user will be able to apply that to his/her language of choice. Is this acceptable? --le ----- Original Message ----- From: Bryan Schulz To: programmingblind@xxxxxxxxxxxxx Sent: Saturday, May 22, 2010 12:41 PM Subject: Re: Vb.net or C#.net Tutorial Project hi, we can do without people being smart asses as that will quickly turn people off. if cupid or anyone else wants to quivel over wording of this project do it privately! Bryan Schulz ----- Original Message ----- From: RicksPlace To: programmingblind@xxxxxxxxxxxxx Sent: Saturday, May 22, 2010 6:11 AM Subject: Re: Vb.net or C#.net Tutorial Project That is exactly what we want. Ya, the type of pointer or reference to an object depends on wheher it is stored on the Stack or that other place where stuff can get stored. I forget all that internals stuff since I have not looked at it in over 5 years now. It is not relevant to the Vb.net or C# languages until you get into more advanced programming. We can just use the ByVal or ByRef keywords in a parm list if necessary. At least that is how it works in Vb.net. In fact, you don't even need to specify ByVal or ByRef at all and the language will put the appropriate type of reference into the parm list automatically. At least it works like that in Vb.ne. If CSharp is diferent post up since I have yet to even build my first CSharp program within the past 5 years at least. Rick USA ----- Original Message ----- From: qubit To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 10:10 PM Subject: Re: Vb.net or C#.net Tutorial Project well, the address of a method or function is data, which is a special pointer type object. By executable statement, I mean something like an if-then-else or a loop or an expression such as an assignment to a variable. I'm trying to think what kind of object a statement would be. If the language defines a value for the result of a statement -- like an expression has a value after it is evaluated -- then a statement could be thought of as a special case of an expression, which could be thought of as a super object, constructed from from other objects. Ok, there's a definition. If Python treats objects as you say then I am just speculating how it must view different constructs in the language. Never mind me, I'm just thinking out loud. Happy hacking. --le ----- Original Message ----- From: Donald Marang To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 7:44 PM Subject: Re: Vb.net or C#.net Tutorial Project I am not the person to respond to this question, I have not fully written any Python programs. Obviously the language had to start with something. If I can remember the tutorial examples, even some of the punctuation was treated as an object! Perhaps I was hallucinating? That's pretty strange. I am not sure what you mean by executable statements. statements are thought of as methods of objects. and even every subroutine / function is thought of as a method I think. Even if not specified, they inherit basic properties that we used to think of as the basic nature of all functions. Similarly, each data type will have standard methods defined, such as ToString. They are all considered objects, no matter how simple. I should stop now before I confuse everyone. After all, I am still trying to absorb all of this as well, and have no experience. Don Marang From: qubit Sent: Friday, May 21, 2010 7:56 PM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Vb.net or C#.net Tutorial Project ah, ok, so python uses that paradigm. Does it consider executable statements to also be objects? How about types? Do you declare objects to be of a given type, or is everything typed on the fly? And are the types attributes or are attributes objects? LOL you have to have some basic special objects that do certain things, or you wouldn't have a language. I was going to use python in a little program just to learn it. It sounds like an interesting little language. --le ----- Original Message ----- From: Donald Marang To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 5:43 PM Subject: Re: Vb.net or C#.net Tutorial Project In Python tutorials, they go to great lengths to stress that EVERYTHING is an object. I have trouble expressing or even getting my head around their examples. But they make it clear, EVERYTHING is an object! Don Marang From: qubit Sent: Friday, May 21, 2010 4:59 PM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Vb.net or C#.net Tutorial Project I wouldn't call everything an object -- it is true the word "object" is overused and has been applied to many things. But in OO programs, it is a set of data coupled with "methods" or functions defining operations on that data. In the OO languages, all built in types declare objects -- for example, something as simple as an int variable is an integer object with operations + and - and you know the rest. The most general object is one of a "class" type. This in C++ is a glorified struct with specialized data and member functions and inheritance from base classes whose data and functions you want to apply. It is similar with other OO languages. An object in my learning of the term is an instance of a type -- that is a variable or constant declared with that type. Perhaps the more recent textbooks redefine the term. I'll let other list members correct the holes or errors in my definition in modern parlance. And of course there are interfaces and templates and other beasties you need to learn in the various languages, generalizing types yet another level. So happy hacking. For the procedural programmers accustomed to COBOL or C or fortran or whatever, I hope this is a helpful intro. When I first made the transition from procedural to OO, it was like turning a C program inside-out -- or rather, OO style localized and hid more details of an implementation so the C version was like inside-out C++ with nits all scattered far and wide, even if the C program was well thought out. Happy hacking all. --le ----- Original Message ----- From: RicksPlace To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 12:04 PM Subject: Re: Vb.net or C#.net Tutorial Project Hi Jim. I was doing COBOL when you were still watching Barney - Grin! I started programming back in the 1970's with Cobol and all that MainFrame Jazz so know exactly what you mean. I will be addressing OOP which is really nothing more than thinking of everything as an object. A Subroutine is an object, A Function Is An Object, An Array is an Object everything is pretty much an object. And, objects have properties you can set and often they have methods which are themselves subroutines or functions. Anyway it is not a somplex as the gurus make it sound, it's pretty easy and intuitive after you play with it a little. Rick USA ----- Original Message ----- From: Homme, James To: programmingblind@xxxxxxxxxxxxx Sent: Friday, May 21, 2010 8:25 AM Subject: RE: Vb.net or C#.net Tutorial Project Hi Rick, First of all, thank you very much for taking the time to do this. Secondly, please don't skim over the object stuff. Speaking for myself, I'm an old Cobol programmer who has trouble thinking that way, so I need to get over it. I'll subscribe to the list from home, which is where I'll load the tools and do the work. Jim Jim Homme, Usability Services, Phone: 412-544-1810. Skype: jim.homme Internal recipients, Read my accessibility blog. Discuss accessibility here. Accessibility Wiki: Breaking news and accessibility advice From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of RicksPlace Sent: Friday, May 21, 2010 8:17 AM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Vb.net or C#.net Tutorial Project Hi Guys: After the postings I think the following project will hhelp get things off the ground. One: We want a modular project so folks can pick and choose what they want to include in it and allow for skipping modules without impacting later modules. This way you can pick and choose features and technicals to include in the project. Two: Start from the very beginning building upon our experiences. Three: Use both Vb.net and C# ( Pronounced CSharp) if possible. To this end I will build a series of tutorials this weekend and into next week comprising Module01. Module01 will just build the project and set up some fundemental building blocks we can expand on later. It will consist of 4 Tutorials: tutorial01: Step01 Set up the IDE for Accessibility using my settings, those on jamal's or the Elf's site or your own settings as you prefer. Step02 Add a ShortCut to Vb.net or C#.net to our DeskTop or whatever the same thing would be in Vista or Windows7. this way you can just click a DeskTop Icon to open your IDE for working on the project or any other Vb.net or C# project you build. Tutorial02: Step01 Create A Project named WinformBasics or one of your own choosing and Structure the project by adding a Utilities Folder with a Globals file and a Logger Utility for use throughout all the subsequent modules. Tutorial03: Step01 Add a Windows Form called RootForm to the project and set some of it's properties. Step02 Make rootForm the Default Project form and get rid of the automatically generated Form1 Windows Form that was added when the Project was created. Tutorial04 Add a MenuBar to RootForm with a Menu called HotLinks. Add one or more links as pull down items to the HotLinks Menu that will take you to someplace, Websites in my current thinking. Once we have Module01 up and running we will discuss the next set of tutorials which will add a second menu to the MenuBar of the RootForm.This Module will have features that will demonstrate basic programming techniques like working with strings, Arrays, Looping and anything else you might have questions about regarding the fundemental Vb.net or C# statements. It might prove cool to use this feature later in another series to create a project to display programming tips and snipet code for complex issues and would fit well in with a DataBase tutorial series if that is how you want to go later on. we will also touch on creating a Class with Subroutines, Functions and Properties and see how to use them. This is for the Raw Beginners and unless otherwise indicated can be skim read by more experienced programmers before we continue to the Third Module where we can dig into OOP more in-depth or go into using Data Files and, or, a DataBase. So, look for the WinformBasics project with 4, or so, file attachments. They will be txt files you can copy and save. I think this is easier than trying to use the tutorials directly from inside a e-list posting and how I have done it in the past. Well, unless someone yells out Stop! I will try and get something up this weekend and have this first Module done by the end of the week. Remember to speak up about anything because while we are on one topic we can all discuss and have input into the material learned. Post up any tips, suggestions or questions while we are working on a module to help make this series the best it can be in a short timeframe. EndOfArticle ------------------------------------------------------------------ This e-mail and any attachments to it are confidential and are intended solely for use of the individual or entity to whom they are addressed. If you have received this e-mail in error, please notify the sender immediately and then delete it. If you are not the intended recipient, you must not keep, use, disclose, copy or distribute this e-mail without the author's prior permission. The views expressed in this e-mail message do not necessarily represent the views of Highmark Inc., its subsidiaries, or affiliates.