The Mighty Oldschool Ti83


I've been wanting to get back into coding (my last *major* project was in Blitz Basic on my Amiga!)

A few years back I got some books on C - I have to admit, I found it very difficult to get my head round. Didn't get too far past 'Hello World!'

But last few weeks, I've just started learning Python (and Pygame) - Hope to knock something silly together, and I'm finding at a nice language to use. I'm still getting used to the 'duck typing'... having always used hard typing for objects and variables, and *everything* is case sensitive! (That took me about two hours of headscratching to find out!)

I bought this book...
CODE
http://www.amazon.co.uk/Beginning-Game-Development-Python-Pygame/dp/1590598725/


Expensive, but helped me get started, and once you're up and running, the web has *loads* of resources.

Have fun!
 
Last edited by a moderator:
optional106 said:
(1)Rather than debating the merits and defending languages, can you agree on the language that you had wished you had learnt first ?

(2)Do you guys ( or girls) stick with one preferred style?
(3)or do you pick up languages as necessary depending on requirements to get the job done?
(4)and would it be a hinderance to not know any particular programming language?

(5)And most importantly as beginner am i going to get confused if i start learning more than 1 language at one?


(1) Language I wish I had started with: Scala. Second place: Python. Third place: Java.
(2) What d'ya mean, style?
(3) For some tasks, some languages are better. But all the languages mentioned so far have been general-purpose ones, so you can use them for pretty much anything.
(4) The three most important languages to know are C++, Python and Java. If you know those three, there's nothing you really CAN'T do.
If you skip one of them, there's one part of software that you will never touch or have available for you. C++ is for high-speed stuff, Java is for applications that require reliability and performance (aka stability), and Python is for things that you don't want to spend a lot of time making. Then there are hybrids: Scala is a mix between Java and Python, D is a mix between Java and C++, and Haskell is a mix (ok, not really, but paradigm-wise) between Python and C++.
(5) There are some major programming paradigms in the software world: Procedural programming (C, Visual Basic), Object-oriented programing(Java, C++, D, C#) and Functional programming(Haskell, Erlang, Scheme) (among others). If you start with multiple languages, then you should pick them from the same programming paradigm category or you are going to become totally confused.

Or you could start with a language that uses multiple paradigms, like Python or Scala (but only one of them to start with); if you start with one of them, it will be easier to continue with another language from any paradigm category afterwards, since you have gotten used to all of them.

If I were you, I would really start with Scala, because if you program in Scala:
1. It's easy to learn, but it isn't only a beginner's language; it has some very advanced features too and is more geared towards professional development.
2. It is high-performance, so when you create something really big later in your life, you can still do it in Scala, while in Python, some things can become really slow when they start to become big. I'd say that Scala is about 4x faster than Python.
3. It is cross-platform (as opposed to for example C++ or VB.NET), so when you have written your code, it can be used on all operating systems including mobile devices or the pandora without modification (most of the time)

A good book for this would, if you are interested, be www.artima.com/shop/programming_in_scala
(It covers everything from the basic stuff to the really, REALLY advanced stuff. It was writen by the language creator himself, and is good as a reference source, too)

And remember - Python is my second choice so don't forget that! :p
 
Last edited by a moderator:
If you're not a coder and have limited time, learn Python and Pygame. I'm sure most people that have tried them will agree with me.
Google for Pygame, really cool games can be made with just that.

If you don't plan to write complex, AAA title, 3D games, you can just stick with Python. It's not in any way less powerful than other languages and you probably won't care about extreme performance or realtime programming.
 
Last edited by a moderator:
I started with PHP and VB, and I'm glad I did with PHP. VB, not so much.

As a language to start out in, I think that PHP would be great. However, if you're looking at making games in the language that you start out with, then I would suggest looking at something different like Java. C and C++ are things that you'll eventually come to understand, and should learn, but they seem complicated until you get enough experience coding.

As for learning more than one language at a time, I would learn one normal language and other, easier ones with it, to avoid overload. mIRC scripting is a great little language to code in, and it can help you to come up with new ways to solve problems. I think it would make a nice additional language for you to learn. However, you would need to have the mIRC client, but that's just a plus, because mIRC is an overall good IRC client.

-God Ginrai
 
Last edited by a moderator:
God Ginrai said:
... PHP ... Java ... C ... C++ ... mIRC scripts ...
Wow, that's really some unconventional suggestions :p PHP is a very difficult language to start with I realize now, because 1. you can't DO "anything" with it, except printing stuff to the terminal and web pages and 2. it has a really broken syntax when you use some of the more advanced stuff.

And what if you don't talk a lot on IRC? :p What's up with mIRC then? And mIRC is a bit out-of-date, sure it's good but it doesn't really have a future, and if you start learning mIRC scripting, where would you go afterwards? You're stuck with a niche language.

The only language that I would imagine that someone could start with of the above is Java, but I still say that Scala and Python are the best ones.
 
Last edited by a moderator:
I basically started with mIRC scripts in a way, too, but it's a really awful language overall and would not suggest it.
 
Last edited by a moderator:
'sabregolly' said:
I've been wanting to get back into coding (my last *major* project was in Blitz Basic on my Amiga!)

But last few weeks, I've just started learning Python (and Pygame) - Hope to knock something silly together, and I'm finding at a nice language to use. I'm still getting used to the 'duck typing'... having always used hard typing for objects and variables, and *everything* is case sensitive! (That took me about two hours of headscratching to find out!)
Thanks Sabregolly, this is the kind of stage that I am too.
I spent the weekend reading up Python, but Pygame looks useful too.
As for resources, I'm finding the HK libraries are quite good for reference books compared to UK libraries, but books i'll invest maybe once i get a feel for it first.

Thank you dflemstr for your responses , I found them very useful.

I'll probably look into Scala after tackling the Python.
I'm not hoping to write high end or complex games, ( unless I suddenly find I have a knack for coding ) as i'm just starting out.
My last coding was Commodore 64 , with pages and pages of text input, but we all have to start somewhere, right?
I think getting people to try coding is a good thing, as general public seem to have no idea the importance/necessity of programming and have no idea how to get into it.

( I think they are frightened once they see the huge manuals on the book shelfs, written in pages of obscure text and header examples, and never return to the computing section ever again...)
 
Last edited by a moderator:
dflemstr said:
God Ginrai said:
... PHP ... Java ... C ... C++ ... mIRC scripts ...
Wow, that's really some unconventional suggestions :p PHP is a very difficult language to start with I realize now, because 1. you can't DO "anything" with it, except printing stuff to the terminal and web pages and 2. it has a really broken syntax when you use some of the more advanced stuff.

And what if you don't talk a lot on IRC? :p What's up with mIRC then? And mIRC is a bit out-of-date, sure it's good but it doesn't really have a future, and if you start learning mIRC scripting, where would you go afterwards? You're stuck with a niche language.

The only language that I would imagine that someone could start with of the above is Java, but I still say that Scala and Python are the best ones.



PHP can do a lot more than you give it credit for, if you really give it a shot.

As for mIRC, I would like to point out that I was choosing a language that would help him learn coding techniques. (specifically ones that help you deal with the limitations of a language) This guy is asking to learn, he didn't say it had to be popular or even of much use, just something that was easy to start in.

Also, everyone should talk on IRC, it's quite beneficial. ;)

-God Ginrai
 
Last edited by a moderator:
'Mithrildor' said:
Thats not true, I bet that test is done by someone who has more experience in Python coding than C++ coding. Readability isnt a problem at all aslong as you write it good.
Readability is a key component of well written code. If you can't pull the code up a decade later and work on it then it's failure no matter how well written. Sure it'll take you time to refamiliarize, but one should always be able to read the code, preferably with minimal relevant experience.

Not that I'm a great coder, it's just that assuming that code won't grow and expand to fill the container tends to be a bit optimistic.
 
Last edited by a moderator:
'Mithrildor' said:
Why is C++ so hard?
C++ is not hard in itself, is hard to learn if you don't have previous OO programming experience, because just like C it forces you to learn lots of things before you are able to write something useful.

Python hides the hard parts for later, so that you can learn by doing from the start.
 
Last edited by a moderator:
You don't need to use the OO stuff right off the bat in C++ like you do in Java. It's pretty easy to start using it as a procedural language and then build up. Basically it can be used as a slightly higher level C at first.
 
Last edited by a moderator:
It's much easier to learn a programming language when you can actually make something interesting when you're starting out. That's why I see alot of people fail at learning C++.
 
'PoisonedV' said:
It's much easier to learn a programming language when you can actually make something interesting when you're starting out. That's why I see alot of people fail at learning C++.
Thats a good point, learn something that is easy enough to get something interesting done. That way you can get excited about programming more complicated stuff, and with other programming languages later.
 
Last edited by a moderator:
Yay, rethpekt. I had a TI-83 in my sixth form... just over a decade ago too hehe. Essex boi innit. I liked drawing pictures by graphing elaborate functions..


'optional106' said:
Hi all,

I've been lurking in the forums for about a year now, and thought i'd introduce myself as its a public holiday today, and i need to justify that i'm still in bed at 4.00 in the afternoon.

Really excited for the Pandora, and love the community that has built up around it.

I have been reading up, but would love to know where or how to start to get into coding, compiling, building games as some fun on the side.
Unfortunately my expertise are in science, not computing.
I'm a pharmacologist in Hong Kong, and all my tech savvy geeky and nerdy best friends are all in UK or different countries, and i'm not even sure if theres an english speaking Pandora community here in HK

The closest i ever got to coding was writing simple games for my TI83 calculator in sixth form, but that was over a decade ago . Oh my, that really makes me feel old ><
I never would have thought that the gaming handheld i'd be waiting for 11 yrs later would be the powerful younger brother of the TI83 with its awesome 6Mhz power !
( At the time, it was fast, and dial up networking on 56k modems was just getting popular)

The calculators games for the modern TI's look good, Pandora will be amazing, so question is what can I be doing now to try coding?
Is it something beginners shouldn't try?
We all have to start somewhere, right ?

Thank god for the Pandora Toolbar that has made Pandora online resources much more faster and accessible. No more checking into the forums and sites nearly every day ^^

'Mithrildor' said:
'Mr devil45' said:
Because C++ is so low-level, it makes it easier to program games that run at decent speeds and are perfect for the underlying hardware. python is quicker tho...
im currently programming a very basic fps, and it will probablytake a long,long time in C++.but one day, i will have a game mch worse than anything i can buy in a shop,and i will say:WHY???????
Its not so low-level, I think mid-level is a better term for C++



Try writing that FPS in assembly language :wacko:
 
Last edited by a moderator:
the C++ is really hard to learn. i have learned it for 4 years to just get familiar with most of its features. with some experience of x86 asm, the pointer have no problem. and the OO is just a straightforward concept. but other things (like template, generic programming, meta programming) introduced by C++ is really hard and fun to learn:) Bjarne Stroustrup has said that it will take 1-1.5 years [1] for a experienced programmer to learning c++ [2].

[1] maybe this is wrong, can't remember the number exactly.

[2] The Design and Evolution of C++

after C++, i found there is nothing hard to learn:) haskell is the most hard-to-learn language i experienced after that (it took me 2 months in spare time) ...

Python is a good language to start. as a interpreted language, you can have your thought tested immediately in the interpreter. and due to the large library and application support to Python you can use it everyday and everywhere.

but if you really want to become a capable programmer, the C++ is a must-learn :) it can make you understand the machine and most of the design patterns better.
 
Last edited by a moderator:
'Archaemic' said:
You don't need to use the OO stuff right off the bat in C++ like you do in Java. It's pretty easy to start using it as a procedural language and then build up. Basically it can be used as a slightly higher level C at first.
Having learned C++ that way (procedural (hey, this is kinda like Pascal (Ugh, so stupid I was)) and then adding in the OO) I can honestly say I picked up a lot of bad habits that the OO part was designed to solve. It took me a long time to get out of those bad habits. If you're not going to learn the OO part along with everything else so you can at least know when and when not to apply it, you might as well stick with pure C and make no pretense that you're learning C++.
 
Last edited by a moderator:
'Fiesty Panda' said:
Wait for a Nintendo DS emulator and run Wabbit DS off of that ;)

Works fine, I use it in school when I forget my calculator. I probably shouldn't be forgetting my calculator more than my DS though...

http://ds.qj.net/WabbitDS-a-TI-83-emulator...g/49/aid/106820
I'm thinking I'm going to push for a Pandora version of Wabbit, even if I have to make it myself. :)
 
Last edited by a moderator:
Back
Top