MDC
Posts: 167
Joined: Thu Jul 28, 2011 6:27 pm

Re: No programming skills

Fri Jul 29, 2011 9:57 pm

I have no programming skills, but would like to learn, hence why I am interested in this device. Could anyone give me a starting point to learn or lead me in the right direction or maybe offer some hints and tips.

Cephadai
Posts: 3
Joined: Fri Jul 29, 2011 2:48 pm

Re: No programming skills

Fri Jul 29, 2011 9:59 pm

It really depends on what your interested in.

To start off i would recommend either Basic or Python

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6162
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: No programming skills

Sat Jul 30, 2011 10:25 am

Python is a good suggestion (as a starting point). I'd start with python and move on to C++ once you've mastered basic programming concepts.

There are plenty of tutorials online, but I've found that having a proper book with you helps a lot. I'd suggest you look up some reviews on amazon and then get a book from the library.

It also helps to have a project in mind. If you just read the book for the sake of getting through it, it won't stick. However, if you read it and think about how you can use what you've learned in your own programs, you'll find it much more interesting.

A great starting point is card games. You learn about data structures, flow control, randomizing, sorting and so on. So maybe recreating solitaire in text-mode might be a good idea. Normally books give boring examples like payrolls, book keeping and so on and it's hard to really care about what you're reading. Something like a card game is a bit more interesting.

L_J_S_23
Posts: 14
Joined: Thu Jul 28, 2011 7:01 pm

Re: No programming skills

Sat Jul 30, 2011 10:37 am

I'm also really excited about the Raspberry Pi as an opportunity to learn to program. Since BBC BASIC way back at school over 20 years ago I've only really dabbled in C#. And that's been in the last few months over the last few months.

Will the Pi support C#? Or would i be better to start with Python as a general starting language anyway?

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6162
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: No programming skills

Sat Jul 30, 2011 10:52 am

LJS, which platform are you planning to develop for? Linux or Windows? C# is not a good idea for linux.

eggn1n3
Posts: 106
Joined: Fri Jul 29, 2011 10:36 am

Re: No programming skills

Sat Jul 30, 2011 1:40 pm

As it is a Linux platform, you can use almost any programming language or scripting interpreters.
It depends what you want to achieve, but I would say start with something like basic and then try C as it is well documented and used for many projects. Maybe from there on you can try C++ although I find C++ more suitable for desktop applications and sometimes a bit overkill for some applications (but that's personal).

L_J_S_23
Posts: 14
Joined: Thu Jul 28, 2011 7:01 pm

Re: No programming skills

Sat Jul 30, 2011 3:50 pm

Quote from ShiftPlusOne on July 30, 2011, 11:52
LJS, which platform are you planning to develop for? Linux or Windows?

Well I'd like to get experience of both. Although my knowledge of Linux is absolutely zilch currently!

maybe I should go for c# in windows and get some practical knowledge of Linux / Ubuntu / Python ahead of the Raspi coming out.

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6162
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: No programming skills

Sat Jul 30, 2011 4:40 pm

Quote from L_J_S_23 on July 30, 2011, 16:50
Quote from ShiftPlusOne on July 30, 2011, 11:52
LJS, which platform are you planning to develop for? Linux or Windows?

Well I'd like to get experience of both. Although my knowledge of Linux is absolutely zilch currently!

maybe I should go for c# in windows and get some practical knowledge of Linux / Ubuntu / Python ahead of the Raspi coming out.

Whatever works for you. Chances are that you'll start with one language then get curious about others and come to learn their strengths and weaknesses and finally settle on what works for you. I don't actually know how C# is as a starting point, I've never had an interest in it, so I don't want to discourage you from it based on my own biases. Having said that, I'd probably go with Python. It's cross-platform and well structured. Also, Pascal was actually designed for the purpose of teaching programming. You could check out Lazarus which is an excellent development environment for FreePascal. In many ways Pascal is much better than the C's. I'd be trying to decide between Pascal and Python and C#.

These might help you decide:
http://onstartups.com/tabid/33.....eoffs.aspx
http://csharp.wikia.com/wiki/C.....hi/Lazarus

L_J_S_23
Posts: 14
Joined: Thu Jul 28, 2011 7:01 pm

Re: No programming skills

Sat Jul 30, 2011 5:26 pm

Thanks loads for the advice / insight ShiftPlusOne. That's really useful and interesting stuff.

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6162
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: No programming skills

Sat Jul 30, 2011 6:00 pm

You're welcome, just take whatever I say with a grain of salt, I am no expert.

bruceD
Posts: 7
Joined: Sun Jul 31, 2011 1:57 pm

Re: No programming skills

Sun Jul 31, 2011 3:01 pm

Would a list of Hello World's be useful to give us a flavour of each language?
And maybe a simple sample of Eliza?

Novo
Posts: 7
Joined: Thu Jul 28, 2011 12:04 pm

Re: No programming skills

Mon Aug 01, 2011 6:05 am

What do you want?
If you want to learn programming, so and buy a book od c# or Java, whatever.

MDC
Posts: 167
Joined: Thu Jul 28, 2011 6:27 pm

Re: No programming skills

Mon Aug 01, 2011 7:28 am

Anyone can learn from a book. I just wanted to hear some peoples opinions of people who have an interest / work in that field, just to get started, whatever.

jonokrause
Posts: 3
Joined: Sun Jul 31, 2011 12:04 pm

Re: No programming skills

Mon Aug 01, 2011 12:13 pm

I remember starting out learning using MS Dos and Qbasic programming language, then a bit of Turbo Pascal and then VB Basic in college, but sadly like anything if you not use it for awhile you loose it, but for me i always liked VB Basic because it was easy to pick up on, though im hoping in college i not have to learn Java, i have fear of having to learn it :D

User avatar
abishur
Posts: 4477
Joined: Thu Jul 28, 2011 4:10 am
Location: USA
Contact: Website

Re: No programming skills

Mon Aug 01, 2011 12:42 pm

Ah, the trusted and good hello world program. How exciting it was to watch that simple little thing compile then run! I think that such a resource would be very useful and insightful to those who were just looking into the world of programming. More than just the program, some basic instructions on how to compile and run the program (and if any version has licensing issues) would also be good. After all, writing the program is only half the battle. IF such a resource were put together I'd also suggest showcasing a couple programs to highlight some benefits and pitfalls of the various languages. It would definitely make for an interesting read.
Dear forum: Play nice ;-)

ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6162
Joined: Fri Jul 29, 2011 5:36 pm
Location: The unfashionable end of the western spiral arm of the Galaxy

Re: No programming skills

Mon Aug 01, 2011 1:18 pm

Quote from abishur on August 1, 2011, 13:42
...showcasing a couple programs to highlight some benefits and pitfalls of the various languages...
... and the c vs c++ battle would be ensue. :o

User avatar
ukscone
Forum Moderator
Forum Moderator
Posts: 4196
Joined: Fri Jul 29, 2011 2:51 pm
Contact: Website

Re: No programming skills

Mon Aug 01, 2011 1:41 pm

Quote from ShiftPlusOne on August 1, 2011, 14:18
Quote from abishur on August 1, 2011, 13:42
...showcasing a couple programs to highlight some benefits and pitfalls of the various languages...
... and the c vs c++ battle would be ensue. :o

oh that battle isn't too bad. lets start a vi vs emacs battle :)

/me dons flame proof armour and redirects all emails to /dev/null

User avatar
abishur
Posts: 4477
Joined: Thu Jul 28, 2011 4:10 am
Location: USA
Contact: Website

Re: No programming skills

Mon Aug 01, 2011 2:26 pm

Quote from ShiftPlusOne on August 1, 2011, 14:18
Quote from abishur on August 1, 2011, 13:42
...showcasing a couple programs to highlight some benefits and pitfalls of the various languages...
... and the c vs c++ battle would be ensue. :o

:D :D :D I'd like to think that an objective look at the pitfalls of any programming language should be possible. I mean I'm not saying we try and say "And because of this pitfall this language is inferior to this language". I was thinking more along the lines of "One pitfall of C is blah blah blah" then let people decide on their own which one they wanted to use based on the pros and cons of the language and the process to debug, compile, and run programs.

But yeah, back in reality there's no way such a subject could be mentioned on a forum and not have some people stroking the flames a little.
Dear forum: Play nice ;-)

Svartalf
Posts: 596
Joined: Fri Jul 29, 2011 6:50 pm

Re: No programming skills

Mon Aug 01, 2011 6:17 pm

Think of C# as Microsoft's mutated attempt to embrace, extend, and extinguish Sun's Java. It brings a few useful modifications to the Java language (If you code in Java or C#, you'll largely be right at home with the other...) coupled with a slightly improved concept on the Virtual Machine side of things. It's a Patent minefield for anyone trying to implement a third party implementation (at least until you abolish such notions as Software Patents...) so it's a bit of a sore subject...and a bad idea...in the Linux space.

Svartalf
Posts: 596
Joined: Fri Jul 29, 2011 6:50 pm

Re: No programming skills

Mon Aug 01, 2011 6:19 pm

Quote from ukscone on August 1, 2011, 14:41
oh that battle isn't too bad. lets start a vi vs emacs battle :)

/me dons flame proof armour and redirects all emails to /dev/null

Heh... Better be flame-proof against solar level heat...those vi/emacs flame-fests burn pretty fiercely... ;)

Svartalf
Posts: 596
Joined: Fri Jul 29, 2011 6:50 pm

Re: No programming skills

Mon Aug 01, 2011 6:24 pm

Quote from MDC on August 1, 2011, 08:28
Anyone can learn from a book. I just wanted to hear some peoples opinions of people who have an interest / work in that field, just to get started, whatever.

Well...

Gambas is a VB-like tool for Linux that should work on the thing pretty well.
Lazarus is pretty much Delphi resurrected. It should also work adequately in 128Mb.

There's...heh...tons of tools that will NICELY work within the constraints of the system- even Ada or Forth is available if you were masochistically inclined... :D

bircoe
Posts: 37
Joined: Wed Jul 27, 2011 9:43 pm

Re: No programming skills

Mon Aug 01, 2011 9:22 pm

I can't believe no one has suggested this already... Arduino.

Arduino is an opensource embedded platform that is programmed with a language very similar to C++, it will teach you the basics of a C based language and about programming for embedded hardware, ie IO's, Digital to Analog conversion, Analog to Digital conversion, using clocks, PWM and timers, interfacing with hardware like LCD displays (Small text based display's), there's all sorts of libraries already written to support like digital thermometers, Wii controllers etc, it's a very fun platform.

Very flexible, robust and hard to kill and above all very fun, you can create interactive projects that can be web aware. They're very easy to program for, supports Linux, Mac and Windows for the programming IDE.

Great starting point, very well documented with a huge community and tons of examples on the website.

http://www.arduino.cc/
http://www.sparkfun.com/products/9219 <= my favorite Arduino boards, cheap and full featured.

User avatar
Emanuele
Posts: 182
Joined: Wed Aug 03, 2011 5:28 pm
Contact: Website

Re: No programming skills

Thu Aug 04, 2011 6:08 am

Quote from MDC on August 1, 2011, 08:28
Anyone can learn from a book. I just wanted to hear some peoples opinions of people who have an interest / work in that field, just to get started, whatever.

I think one of the reasons why it's so difficult to give general advice is that there are so many choices today. There are dozens of legitimate starting points, and what is best for you depends on your interests/inclinations.

The best overall is probably Python. It's a nice, clean language and high quality documentation is available.

The only (minor) problem I have with Python is that it's quite a rich language and so it takes a while to master. A lot of people like myself who started in the 80s with BASIC remember the sense of accomplishment that comes from mastering a simple language. I would say that the modern equivalent of BASIC is LUA (http://www.lua.org/)
.
Here are two niche alternatives.

A) If you like maths and abstract reasoning, Scheme is good; not so much for the language itself (nice and clean, but quite inconvenient), but because you can learn from this book:

http://mitpress.mit.edu/sicp/f...../book.html

and these video lectures:

http://groups.csail.mit.edu/ma.....-lectures/

B) The other one is very cheeky of me, since it's my own pet project, but I guess it's also a way to introduce myself. If you spend a lot of time commuting, don't carry a laptop around and have a cheap Java phone with tradition keypad, you can try this:

http://jbit.sourceforge.net

The documentation is not very good, but if you fall in the category above, it might be a convenient way to make some practice.

User avatar
abishur
Posts: 4477
Joined: Thu Jul 28, 2011 4:10 am
Location: USA
Contact: Website

Re: No programming skills

Thu Aug 04, 2011 11:53 am

From a system's administrator standpoint, if you want to learn how to just make the computer do stuff (especially remotely) learning some scripting is a pretty good idea. Windows uses WSH. It's not quite full on programming, but it gets your foot in the door while at the same time giving you immediate gratification from being able to do some REALLY powerful stuff! It's really only useful (or at least most useful) if you're an administrator, and if you are then you can study it at work and tell everyone you're just learning more skills for your job! ;)
Dear forum: Play nice ;-)

MrUmunhum
Posts: 34
Joined: Fri Aug 05, 2011 4:37 pm

Re: No programming skills

Fri Aug 05, 2011 5:57 pm

Everyone has "programming skills", just a question of "how good are you?".
Working in the computer field for over 30 years, I have seen a vast array of skills.
The bottom line question is "What do you want to do?". Do you really want to learn programming or "I want to do this and I need to learn programming to do it".

I would recommend looking at PHP. The PHP.net site is well documented.

My language of chose is Rexx but I would not recommend it because it is very rarely use anymore.

Return to “General discussion”