View Full Version : Software & Application Development
iBlueBox
11-02-2011, 05:03 PM
I really want to get into Software & Application development, but where is the best way to start for beginners?
Edited by HotelUser (Forum Super Moderator): Thread moved from "Technology Discussion" as I feel it's more suited here.
Flisker
11-02-2011, 08:27 PM
Set yourself a project and then use online tutorials or help resources for tip on how to do elements of your project :) You will slowly but surely pick up the language that way.
Trinity
12-02-2011, 03:11 AM
I really want to get into Software & Application development, but where is the best way to start for beginners?
Edited by HotelUser (Forum Super Moderator): Thread moved from "Technology Discussion" as I feel it's more suited here.
Do you have any experience at all with any programming languages or even just HTML? If not, I suggest you learn some basic HTML. I know it's not software development, but it can help you learn about structuring and stuff. After that, I suggest you take a look at PHP. Again, not exactly what you're after, but it's a brilliant introductory language to get you used to using code and to help you realise all of the magic goodness that goes on in the background of websites and software.
Anywho, 'software and application development' is a bit vague. Are you looking to develop mobile apps (for iphone/android and whatnot), desktop software (in which case you'd need to decide if you want to build cross platform programs and bla bla lots of other stuff), web apps (I hate that term)?
I guess you could eventually do all of them, but it's best to pick one place to start with, get a solid foundation and then you'll find learning the new skills very easy. Do you have any ideas for applications that you want to create yet?
Once I know a few more details about what you actually want to do, I'll try to recommend a good language to start with and point you in the direction of some helpful guides and stuff.
La la laaaa. General tips that should apply to all programming languages - read other people's code and try to understand what they've done and why, don't be afraid to show other people your code (post a lot on here as you learn) so they can give you tips, keep coming up with new ideas that are outside of your programming comfort zone and master them. Lastly, always remember, your code sucks. Keep reading over every line of code that you're written and say to yourself, "this could be done better, cleaner, faster", then go find out how to improve it.
I'm pretty sure that last general tip applies to forum posts too, every sentence I've typed could be better written, but I'm bored of typing now, so I shall stop.
Homosexual
12-02-2011, 10:32 AM
In terms of developing, I'd say try SDK's like Adobe Air, which tie in with web-dev too.
Dentafrice
12-02-2011, 02:37 PM
Some people may agree / disagree... but I suggest you start with HTML, and slowly proceed to PHP.
PHP is a GREAT language that shares a lot of it's basic syntax with other languages. Once you've semi-mastered PHP, or have a basic understanding of the syntax, proceed on over to C#. C# is a language that differs from PHP, but still retains some of the *basic* syntax, easy to migrate over to with little to no knowledge of C#.
After C#, you can expand your knowledge even further to Java, as they have a lot of the same principals (may disagree.. but it's not a big learning curve after PHP and C#). PHP uses -> between methods and classes, and C# and Java use .
PHP:
$class_name = new MingleFramework();
$class_name->echo("Hey Der", true);
C# / Java
MingleFramework mf = new MingleFramework();
mf.echo("Blah", true);
MrPinkPanther
12-02-2011, 04:16 PM
I'd disagree with the above guys. In my opinion if you want to go into desktop programming then start with desktop programming (which is what I assume what you mean by software). Sure PHP and HTML will help you with structuring and some of the concepts are the same but unsurprisingly there is a great deal of difference between web based programming and desktop programming too. What language I would recommend is based what kind of thing you're looking to do. For example if you want to learn programming concepts then something like Java might be appropriate whereas if you think that will bore you and you'll lose interest then something like Objective-c might be more appropriate because developing for a device like the iPhone is arguably more enjoyable and interesting.
Dentafrice
12-02-2011, 04:20 PM
Why should you start with desktop programming first? Undoubtedly data types will confuse him the first time he tries anything. It's much easier to learn a method/function structure in PHP, then learning what static, void, and actually putting return data types in method declarations means.
I think he'd be better off learning something like PHP before he started off with desktop programming. I think if he started out with desktop programming he's going to be more confused to start with, than he would with web.
I'm just saying this because this is how I did it, and it worked great for me.. and learning a language is pretty simple now.
Trinity
12-02-2011, 04:24 PM
If you decide to go with C# like Caleb suggested, you should watch these videos:
http://vimeo.com/4098982
http://vimeo.com/4106301
They're made by Caleb and I found them very helpful :)
I'd disagree with the above guys. In my opinion if you want to go into desktop programming then start with desktop programming (which is what I assume what you mean by software). Sure PHP and HTML will help you with structuring and some of the concepts are the same but unsurprisingly there is a great deal of difference between web based programming and desktop programming too. What language I would recommend is based what kind of thing you're looking to do. For example if you want to learn programming concepts then something like Java might be appropriate whereas if you think that will bore you and you'll lose interest then something like Objective-c might be more appropriate because developing for a device like the iPhone is arguably more enjoyable and interesting.
Yes, there are many differences, but in my experience desktop programming has a much steeper learning curve than HTML and PHP. If he learns the basics of HTML&PHP then he should find starting desktop programming much simpler, his interest in developing will... develop (YEAHHHHH. I'm sorry.) and he'll be less likely to let the difficulties of learning a desktop programming language stop him.
Edit: Yeah, what Caleb said.
Dentafrice
12-02-2011, 04:31 PM
Hahaa woah those videos are old! Wow. Haha I'm going to watch them now for craps and giggles, thanks for posting those :) +REP.
MrPinkPanther
12-02-2011, 04:35 PM
But the thing is it's just as easy to understand concepts in a simple language such as Python as it is a web programming language such as PHP and yet the syntax in Python is much closer to your bog standard desktop programming language. Surely it makes no sense learning a web based language when you have no need for it and there are things that will help you more?
I'd actually argue that understanding fundamental concepts is one of the simplest parts of programming since many of them come from things in real life. For example an Array is simply a table which you can use to store elements in. Caleb you say that understanding data types will be difficult and of course it is one of the most complex areas at first but again much of the terminology is common knowledge, we all know what an integer is right? How about a character? How long does it take to tell someone that a String is a characters?
Dentafrice
12-02-2011, 04:43 PM
But then again.. how long does it take someone to realize that in C#, a string is..
string blah_blah = "Hello";
But yet Java...
String blah = "Hello";
One simple capitalization error would throw someone off majorly.
Now.. for someone who hasn't programmed before, he's not going to know when to use each data type... he doesn't have what I call programmers logic yet.. he doesn't know "hey, should I use an int, or a double..."
Is there user POSSIBLY going to input an int.. or what if he inserts a decimal.. and if he does insert a decimal, should I really typecast it?
At the beginning stages of developmental programming, a user should not be concerned with things like this, he doesn't have the skills yet to implement that kind of logic into his program, which is why I recommend PHP first to anyone who ever asks.
You don't have to worry whether or not the user input a decimal into a form field... when you retrieve it from a $_POST, you can simply add them together without converting the string to an int, or typecasting back and forth, or converting...
I just think that the user needs to get the application working, and develop some of this logic before he gets into desktop programming. Just my $0.02, and we can agree to disagree... but whichever route this lad takes is completely up to him.
Both routes are equal, we just believe one is better than the other... :)
Want to hide these adverts? Register an account for free!
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.