Jump to content



Photo

I'm really getting frustrated.

Answered Go to the full post

  • Please log in to reply
205 replies to this topic

#166 Seabizkit

Seabizkit

    Neowinian

  • Joined: 28-February 12

Posted 19 January 2014 - 07:47

@At All

 

Clearly there are some clever people in here...

but you being too clever...

Well if i was reading this as a noob I would get bogged down with some of the stuff that is just being said without, SellBox being the context.

I mean i understand what you guys are saying but i feel SellBox is just getting confused.

 

Its like some are having their own waffle which is cool just... not sure its helping SellBox.

 

@+LambdaLambdaLambdaFn 

 

I agree...

but i wanted to avoid the word template.... although you said it well.... I was trying to keep it very simplistic, I also wanted to avoid the word object as well.

Just until he had a good idea of what a class is. Do like the way you described some of it tho.

 

@ShellBox

 

Do you now know what a class is? As i feel that in order to get anywhere you need to understand this.

 

Example --> C# 

--------------------------------------

TeaCup A = new TeaCup();

--------------------------------------

Do you know what i am doing here: explain both sides




#167 OP ShellBox

ShellBox

    Neowinian

  • Joined: 15-January 14
  • Location: Northamptonshire
  • OS: Windows 7 Ultimate 64 bit
  • Phone: HTC Wildfire

Posted 19 January 2014 - 12:31

If you think that's easy, tell it to the folk who actually develop payroll software products and managed to screw it up throughout the last 20 years  :laugh:

 

 
 

Are you getting some of the concepts down that people are explaining?

 

 
 

That's a terrible use of enum :laugh:... Let's not introduce things that lead to subtle bugs...

 

Not really to be honest. Everyone's just throwing these terms at me that I don't understand. This is really confusing and most people are making it even more confusing.


@At All

 

Clearly there are some clever people in here...

but you being too clever...

Well if i was reading this as a noob I would get bogged down with some of the stuff that is just being said without, SellBox being the context.

I mean i understand what you guys are saying but i feel SellBox is just getting confused.

 

Its like some are having their own waffle which is cool just... not sure its helping SellBox.

 

@+LambdaLambdaLambdaFn

 

I agree...

but i wanted to avoid the word template.... although you said it well.... I was trying to keep it very simplistic, I also wanted to avoid the word object as well.

Just until he had a good idea of what a class is. Do like the way you described some of it tho.

 

@ShellBox

 

Do you now know what a class is? As i feel that in order to get anywhere you need to understand this.

 

Example --> C# 

--------------------------------------

TeaCup A = new TeaCup();

--------------------------------------

Do you know what i am doing here: explain both sides

Not exactly, no. I'm just so confused because everyone's saying go for this language or this language, learn it this way or this way, do it this way or this way. I'd be glad to just have a grasp on the fundamentals.



#168 vhane

vhane

    Neowinian

  • Tech Issues Solved: 1
  • Joined: 15-August 04

Posted 19 January 2014 - 14:56   Best Answer

To be honest there's no way you'll be able to learn programming from a forum. There's certainly no point in going into the nitty gritty. That's what a structured learning resource is for. So, as a general set of tips, here's what worked for me:
 
Pick a language, or have one picked for you. Maybe start with the one that your school will be using. Mine came with the computer I had as a kid: BASIC. It's a language that no one uses anymore. It's certainly a language that I can't use professionally, or even productively for my own projects. However, it doesn't matter much which language you start with. You will learn many more later on, and it gets easier to pick up new languages after the first.
 
Get some learning resources. Books. Lecture videos from online courses. There are plenty of free ones too.
 
Practise by writing code. Code examples in the book? Type it in. Code exercise at the end of a chapter? Do it.
 
Practise by writing code. Pick a small project and have at it. You will be more motivated to keep at it if you're working on something that has an end goal other than simply "learn programming".
 
I repeat: write code! You can't learn programming by reading 10 books from cover to cover. I once tried to learn data structures by sitting in a university library, reading my textbook, and writing out pseudocode using a pencil. What a total waste of time that was. I almost failed that class. No one told me that you can't learn programming that way. To learn programming you need to be sitting in front of your keyboard, typing in code, and running it to see what happens. You cannot learn programming in a non-interactive environment. Programming is all about iteration. You bash code in, no matter how crude, you run it to see what happens, and change your code. You mold the program like you mold clay to make a vase. Pseudocode can help to *plan* a program, but you do not use it to help you derive the logic for the program. Because it's way faster to work in an environment where you can see the results of your commands. That means writing out code and running it.
 
Keep at it. Spent the last hour trying to figure out a concept? I've spent days struggling with new concepts. The eureka moment will eventually happen. It comes faster if you play with the concepts by... writing code. Test things out. Break things, put them back together.
 
Keep at it. Spent the last hour trying to fix a bug in your code? I've spent days trying to fix a bug. Eventually you'll figure it out. You will. There's nothing that you can't solve if you apply yourself. And once you've figured how to fix something, you'll never be bogged down by the same issue again. Because you would have been so scarred by the previous encounter that it'll have been burned into your brain. This is what we call experience. Experienced programmers aren't better than novice ones because they are smarter. It's because they have made, and fixed more errors than the novice programmer.
 
I believe that it's not being better at logical thinking that allows some people to learn programming while others fail. It's perseverance. It takes a certain type of person to persevere for days on the same problem, and to see it through. This is what it takes to become a programmer. Sheer doggedness.


#169 Eric

Eric

    Neowinian Senior

  • Tech Issues Solved: 12
  • Joined: 02-August 06
  • Location: Greenville, SC

Posted 19 January 2014 - 16:13

Not really to be honest. Everyone's just throwing these terms at me that I don't understand. This is really confusing and most people are making it even more confusing.

Not exactly, no. I'm just so confused because everyone's saying go for this language or this language, learn it this way or this way, do it this way or this way. I'd be glad to just have a grasp on the fundamentals.


I've been trying to post information relative to C# when I can. If that's what you think you want to start with let us know and we'll try to keep the info simple and related to that. Did you have any luck porting your VB class?

#170 OP ShellBox

ShellBox

    Neowinian

  • Joined: 15-January 14
  • Location: Northamptonshire
  • OS: Windows 7 Ultimate 64 bit
  • Phone: HTC Wildfire

Posted 19 January 2014 - 17:13

I've been trying to post information relative to C# when I can. If that's what you think you want to start with let us know and we'll try to keep the info simple and related to that. Did you have any luck porting your VB class?

I won't actually get any programming until I get onto level 3 which is next year. I'm now struggling between JAVA and C# because both seem so attractive to me. They both seem fun and I've got a bit of experience in JavaScript and a bit of experience in VB. I will keep you guys updated.

Could anybody give me a small and easy project to start with? Just suggest anything that's do-able.

Thank you.



#171 +LambdaLambdaLambdaFn

LambdaLambdaLambdaFn

    Neowinian

  • Joined: 13-November 13

Posted 19 January 2014 - 17:22

Could anybody give me a small and easy project to start with? Just suggest anything that's do-able.

 

Here's assignment #1:  

 

Make a program, in the language of your choice, that asks the user two questions:

 

Q1:  What is the first number?

Q2:  What is the second number?
 

Print to the screen:  "The sum of those numbers is " firstNumber + secondNumber

 

Then tell us what language you chose (don't bother with explaining why -- it doesn't matter).



#172 Andre S.

Andre S.

    Asik

  • Tech Issues Solved: 11
  • Joined: 26-October 05

Posted 19 January 2014 - 18:46

I won't actually get any programming until I get onto level 3 which is next year. I'm now struggling between JAVA and C# because both seem so attractive to me.

C# without a doubt. The learning material is better, gaming libraries are better (if you're into that), the official documentation is better, the language is more flexible, the standard libraries are generally a joy to work with, out-of-the-box powerful visual design tools, etc. Install Visual Studio Express for Desktop and you're good to go.



#173 simplezz

simplezz

    Neowinian Senior

  • Tech Issues Solved: 6
  • Joined: 01-February 12

Posted 19 January 2014 - 22:27

I'm now struggling between JAVA and C# because both seem so attractive to me. They both seem fun and I've got a bit of experience in JavaScript and a bit of experience in VB. I will keep you guys updated.


It really comes down to whether or not you want your skills to be useful beyond Windows and Microsoft platforms. Language wise they're about the same in terms of features, documentation, tools etc. The key difference is that Java is truly multiplatform. You can code and run it pretty much anywhere, whereas with C# you're much more limited to Windows and poorly compatible and expensive alternate implementations like what Xamarin produces.

So if you want to write products in the future that target Linux, Android, OS X etc as well as Windows, it might be better to go with Java.

#174 riahc3

riahc3

    Neowin's most indecisive member

  • Tech Issues Solved: 11
  • Joined: 09-April 03
  • Location: Spain
  • OS: Windows 7
  • Phone: HTC Desire Z

Posted 19 January 2014 - 22:43

Hello,

ShellBox if you need some help, feel free to PM me.

Im personally done with this thread but its not your fault or has anything to do with you.

Good luck and I hope you learn and enjoy to program which seems to make you pretty happy :)

#175 notta

notta

    Neowinian

  • Joined: 20-April 05

Posted 20 January 2014 - 15:08

This is an excellent thread. Some real good information in here guys. This should almost be stickied.



#176 Andre S.

Andre S.

    Asik

  • Tech Issues Solved: 11
  • Joined: 26-October 05

Posted 20 January 2014 - 16:35

It really comes down to whether or not you want your skills to be useful beyond Windows and Microsoft platforms. Language wise they're about the same in terms of features, documentation, tools etc. The key difference is that Java is truly multiplatform. You can code and run it pretty much anywhere, whereas with C# you're much more limited to Windows and poorly compatible and expensive alternate implementations like what Xamarin produces.

So if you want to write products in the future that target Linux, Android, OS X etc as well as Windows, it might be better to go with Java.

Xamarin Studio is free for personal use with size limitations on the app; how is compatibility poor? The only libraries not supported are Windows-specific (WCF, WPF). Unity is the most widely used cross-platform game development toolkit, is free and uses C# as a scripting language. There's nothing inherently more cross-platform about Java.



#177 seta-san

seta-san

    Neowinian Senior

  • Joined: 17-February 05

Posted 21 January 2014 - 01:46

write a payroll program that calculates wages, taxes,  prints checks, and W2s. Don't come back or ask for help for help until it's done. It's an easy put tedious program to write.

 

developing a basic payroll program is easy. i did it for my capstone course for my degree. It's just tedious getting all the tax information together.



#178 +snaphat (Myles Landwehr)

snaphat (Myles Landwehr)

    Electrical & Computer Engineer

  • Tech Issues Solved: 29
  • Joined: 23-August 05
  • OS: Win/Lin/Bsd/Osx
  • Phone: dumb phone

Posted 21 January 2014 - 02:07

developing a basic payroll program is easy. i did it for my capstone course for my degree. It's just tedious getting all the tax information together.

Writing non-racey parallel code is easy also if you are an expert. The OP isn't there



#179 vhane

vhane

    Neowinian

  • Tech Issues Solved: 1
  • Joined: 15-August 04

Posted 21 January 2014 - 03:17

Xamarin Studio is free for personal use with size limitations on the app; how is compatibility poor? The only libraries not supported are Windows-specific (WCF, WPF). Unity is the most widely used cross-platform game development toolkit, is free and uses C# as a scripting language. There's nothing inherently more cross-platform about Java.

 

Unless we're talking server or command line applications, I'm not a big fan of write once, run everywhere. The first party UI toolkits are invariably different on each platform and I'd like to be able to fully take advantage of the specifics of each. When I write iOS apps, I do so in Obj-C and when I write Android apps, I do so in Java.


#180 Andre S.

Andre S.

    Asik

  • Tech Issues Solved: 11
  • Joined: 26-October 05

Posted 21 January 2014 - 04:39

Unless we're talking server or command line applications, I'm not a big fan of write once, run everywhere. The first party UI toolkits are invariably different on each platform and I'd like to be able to fully take advantage of the specifics of each. When I write iOS apps, I do so in Obj-C and when I write Android apps, I do so in Java.

That's exactly what Xamarin favours, actually. You get the native GUI toolkit of each specific platform. So you get to re-use all non-UI code and to use the same language and base libraries across all platforms, but you code a separative, native UI for each platform. Best of both worlds IMO.