-  [WT]  [PS]  [Home] [Manage]

[Return]
Posting mode: Reply
Name
Email
Subject   (reply to 5393)
Message
File
Password  (for post and file deletion)
  • Supported file types are: GIF, JPG, PNG, TXT
  • Maximum file size allowed is 5120 KB.
  • Images greater than 200x200 pixels will be thumbnailed.
  • Currently 422 unique user posts. View catalog

  • Blotter updated: 2009-07-22 Show/Hide Show All

File 125623818451.jpg - (38.22KB , 450x340 , asteroid-impact-001.jpg )
5393 No. 5393
Noob programmer looking for opinion.

I've just started to learn Visual Basic .Net in college, and i'm having no problem. But i've noticed it takes more than half the class 2 hours to understand and write simple codes. for example
Dim sngAdd Single

sngAdd = Val(first.Text) + Val(secound.Text)
Third.text = sngAdd

that literally took my proffessor 2 hours to explain to the majority of the class. Is this normal for firs time learners or should they all just give up?

Also, what's your thoughts on Visual Basic?
Expand all images
>> No. 5395
Well, how deeply was it explained?
Given half the class was of those, who "play lot of games and would like to know computers more deeply" -you know the type.

And indeed, lot to explain there is. What is assignment, what is variable declaration, what is function call, what is record, what is object. And these are bare basics.
It really takes talent from the professor to explain such things to complete muggles.

Just think of your self when you were first learning your first language.
>> No. 5397
Depending on experience. If you have never used VB before, and this was your first lesson, then I suppose it would be acceptable. If not, it was probably just a couple idiots who didn't understand.

And in my experience, it is better to learn C(++), first as it is said to be very difficult to transition between VB and C.
>> No. 5398
>>5397
In my experience it's the other way around. I've been programming since I was 9, so watching my group mates at the university now is rather interesting

They've never touched programming before, and we all start out with lectures in C. It's so hard for them. They think that combining different number types would expand to the largest type involved or resulting from the operations, but in C it just isn't so.

Don't get me started on pointers and dereferencing. They get the basic idea, and try their best, but it just isn't an intuitive syntax to them.

Coding in C sure has it's advantages, for experienced programmers. But I don't think it has any advantage for beginners who need to learn how an imperative language works.

Now, I won't say how good VB.Net is as a starter language either, but atleast you don't have to be so aware of pointers..
>> No. 5400
That sounds about right. Comp Sci/programming is different than a lot of different disciplines because it's always a clear cut between the people who can do it and the people who can't. In college you always find the class shrinks considerably between the first and second semesters.

To put it simply, if you struggle to understand concepts like assignment, functions, and return values it's probably just not worth the effort.

Thoughts about VB? I think it's great. It's easy to learn, easy to make cool apps, and it's a good judge of whether or not you like programming. It's also a decent skill to have because it's often used in industry to puke out a simple GUI.
>> No. 5406
VB.NET != VB

Anyway, math is a prereq to CS for a reason. Presented properly to total programming novices who have presumably been familiarized with math concepts, you do this:

Here is a mathematical variable. It is of a type. A type is a set of possible values. Here is how we express it to the computer.

Here is a mathematical function. It has a domain and range. The inner workings of the function can be ignored until we need it. Here is how we express it to the computer.

..And continue to work FROM the familiar TOWARD the new material, so it relates to something they can connect with.
>> No. 5407
I can understand the program above relatively easy without knowing Visual Basic because it looks like something I have done before.

In my Java and C classes, it's been quite difficult for more than a few people in the classes. I'm doing quite well in both classes. I don't think it's because I'm more clever or perhaps more intelligent than the other people in the classes. I think the reasons I'm doing better boil down to one or more of the following:
1) I'm younger than the 50+ year olds taking the class. I'm not completely set into how I think about the world.
2) I have an extensive background in math. I have taken close to 3 years worth of calculus, and another 2 years of physics.
3) I have stayed in school. I have people in the classes that it's been close to 30 years since they last sat in a classroom, which I feel puts them at a huge disadvantage.
4) I have prior foreign language experience(and that it was taken later in my life). Coupled with me learning to express myself in a different, though somewhat related language(French and Italian respectively), I have had to break down how I think about language structure, internal logic and such atleast two times(Try transforming French or Italian word by word into English and you'll end up with a soup of words).

In short, don't look down on your classmates. Be nice to them and maybe they have a nice daughter or sister or something they'd be willing to set you up with. Or offer to tutor them for money/pizza/grass/whatever else you can get.
>> No. 5408
>>5407
I don't think language has much to do with it. I'm near the top of my class, but nearly failed Spanish in high school :|

Calculus and physics are most certainly key though.
>> No. 5416
>>5393
Does this happen to be a slow-learners class?
Christ I started FreeBASIC three months ago, moved onto C in a week when I wanted portability and speed, studied that for two weeks then moved straight to Java, which imho sucks for a beginner.

I'm moving to C++ soon because Java just doesn't have the flexibility I need, that and I've pretty much nailed the GOF patterns. :)

This and I've never taken CS classes.
[inserts over-inflated head]
>> No. 5418
It's not that VB can't do every other language can, it's just that teachers/lecturers have gotten it into their head that it's the easiest language to learn (possibly because it was their first); teaching it therefore ensures a greater proportion of the class will understand... in theory.

The problem is that not everybody has their brain wired to understand programming, let alone any particular language.

It's an OK language, but is far more complicated than it needs to be (mainly because it was designed to be easy, and things designed to be easy never are).

Personally I'd teach Python because:
- It's much closer to actual English than VB
- It enforces good grammar and etiquette (you must indent your code, etc)
- Fast prototyping because of extensive built-in libraries
- Isn't too dissimilar from the C family, so you can easily copy/paste and translate where needed, or just use a Python-C run-time executor. It works well as a scripting language for things like Games.
>> No. 5421
>>5406
Americans stress way too much math. It's just a tool, not religion.

In my school, we basically have normal engineering maths and programming parallel from the beginnig. Only third year do the algorith analysis courses begin.

I think this is the right order, as the way how computers calculate is a very different when compared to claccical maths. Everything has a type and bound and internal representation of the number matters. Also, recursion is bad. If the math is taught first, it gives very wrong mindset to leap into programming.
>> No. 5422
OP HERE
wow, didn't expect so many replies so fast

It's not a slow learning class, it's just a CS class that's suppose to make us proficient in VB .Net. The majority of people who can't understand it is people 30+. I do usually help them, but then there's this guy i just meet this year, we're friends now but he just has trouble understand some of the concepts and i have to explain it to him about 5 times till he gets it. It kinda gets me angry because he has a 100% in the class and I have a 97% in the class because of one bad quiz that i was sick. But i guess it'll show who's really better when we get the jobs in the future =/.
>> No. 5424
File 12563139216.jpg - (29.49KB , 304x400 , mil.jpg )
5424
>>5421
>Also, recursion is bad.
>> No. 5435
Not everyone will get it right away, which is forgivable, but there will be less few who will practice it after class. I didnt know shit about programming, and we started right away with c++, and I just dont know how I got C in that class. Now, well, i can't say i'm hardcore pro, but if I need to get something done i'm confident enough to find a solution. I was completely disgusted with object-oriented programming, and I got an A in calculus two (taylor series bullshit and all that), math didnt really prepare me. Experience and long frustrating nights debugging, only to find out i had a ";" instead of ":" did. For most of us, the non-gifted coders, how good you are at something is determined by how hard and for how long you're willing to work at it.

One of the things that make learning a language the hardest is the syntax. C++ syntax grew natural to me AFTER 2 years I took the class. Relatively simple and clear syntax really helps at first, its my reason to explain why so many begginers hate java. I think personally ruby is a good starting language, because shifting from function-based style to object oriented is more clean on its syntax, but I regret that it's just not as powerful as C... There will be something better one day.
>> No. 5445
>>5424
You can't disagree. It's a job too big for a compiler to entirely optimize recursion away.
Most languages don't give any guarantees, and the rest only for tail-recursion.

Algorith requires O(<something>) space as it runs?
Alloca() is for that!
>> No. 5446
>>5445
You've never used Lisp have you?

As far as I know, the only language that has trouble with recursion (as far as compilation and execution, anyways) is Java, and that's only with tail recursion because it stores all the intermediary steps for reflection purposes. It's a known and admitted flaw in the language, but so far Sun has refused to allow reflection to be redesigned because of it.

Recursion is more natural than looping anyways. Look at the algorithms that predate computers.
>> No. 5458
>>5446
I used lisp briefly in school. I kept running out of stack.
>> No. 5472
>>5458
When was this 1970?
>> No. 5478
>>5445

Technically every linear recursion can be converted into tail recursion/iteration which is the same thing.

Recursion can be "pessimized away" away with the use of two stacks. Said Literal Genie.
>> No. 5479
>>5458
i've driven a car when i was a teenager. i kept hitting things. therefore, you should not use cars.
>> No. 5480
>>5472
>>5479
It was 3 years ago.

Excuse me for using the 2 free implementations of common lisp the instructor provided.
>> No. 5596
most people have math and programming language retardation--also learn common lisp instead
>> No. 5609
>>5596
can someone please explain lisp
>> No. 5614
>>5609
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((

>> No. 5615
>>5614
I lol'd...

also, if you look at the object code of ANY recursive function you will see it's still adding to the program stack with each call... Iterative > Recursion
>> No. 5616
>>5615
Well, in languages that DON'T support Tail Call recursion (look it up), that is true. However some languages do support that.

Now... are you a fucking moron, or have I been trolled? That is the question.
>> No. 5619
>>5615
Iteration is an expansion upon tail recursion. A smart compiler will do it right.
>> No. 5620
>>5616
Common Lisp doesn't guarantee any recursion optimization. Only Sceme does.

Lisp has commendably avoided the common pit ridden by other academic languages: "we're so pure, we don't need X. You should do it in the pure way!"
>> No. 5623
>>5620
Most decent CLisp impls do optimize recursion though. It's a silly thing not to do.
>> No. 5631
I particularly despise Visual Basic, as it teaches you bad habits, but it's how I started out thinking like a programmer. Oh yes, and your class is composed of fucktards.
>> No. 5637
>>5631
Today's Visual Basics are actually quite decent. Gotos and gosubs are is still there and the procedural functions for math, string and windowing. Elseways, VB.NET is almost like C# 1.0 with funny syntax.

Think Commodore BASIC of C64 for example had only FOR and IF structured stantements. Of course, no named labels for goto and no RENUM command to reorganize labels. Everything was in same namespace, so no need to support parameters in GOSUB ether. (GOSUB worked by line numbers too!)
That's pretty BASIC language, and that's why it has a bad name.
>> No. 5670
Consider yourself lucky.

It's week 6 in CS university, and we've just started university. We've been using a program called ALICE until now which is kind of fun to mess around with, but fuck all good to you if you want to learn how to program.

Why do universities across England insist on students learning Java? I don't plan on making web applets, so there's a fuck ton of better languages to learn.
If I had it my way (nineteen year olds know everything amirite guiz?) they'd teach Python for learning how to code, and perl or c++ when students want to learn a language that'd get them a job.
>> No. 5671
>>5670
>It's week 6 in CS university, and we've just started university

Wat.
>We've just started programming.
>> No. 5678
>>5670
Java is more likely to net you a job than C++ and much much more likely than Perl.
>> No. 5679
>>5670
>>5671
hey namefag, change your name next time and don't post 2 seconds after
>> No. 5681
>>5679
He was fixing a typo.
>> No. 5726
>>5678

But all of them are likely to get you a job if you're good at it.
[Return]


Delete post []
Password  
Report post
Reason