123
-=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- (c) WidthPadding Industries 1987 0|682|0 -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=-
Socoder -> On Topic -> Choosing a programing language

Page : 1 2 Next 3
Prev
Sat, 05 Feb 2011, 07:58
jedimastersterli
OK I'm choosing my first programing language and i need a little help choosing. Basicly i want to know the qualities and difficulties of differient languages. What would you recommend?
Sat, 05 Feb 2011, 12:20
JL235
I believe you should chose what language to use based on what you want to build; so what interests you? Do you want to build something online or offline? A game, website or an app?
Sat, 05 Feb 2011, 13:19
dantheman363
Also it depends on whether or not you want the programming language to support multi-platforms. Do you want your game playable on a Mac or Linux, or just on Windows?

-=-=-
Extraterrestrial Grail
Sat, 05 Feb 2011, 13:36
JL235
dantheman363 Also it depends on whether or not you want the programming language to support multi-platforms. Do you want your game playable on a Mac or Linux, or just on Windows?

For now I'd not worry about multiple platforms, it's typically more hassle then it's worth and not something I'd advise a beginner to worry about.

But another place you might want to program is for smart phones; again if this is what you'd like to do then it has a big impact on what language you should support.
Sat, 05 Feb 2011, 13:55
dna

JL is right. Define what you want to do and then select a language.

For example some of the coders here are serious about getting their games onto many platforms and so they had to choose languages that would support those like the iPad or XBox.

What were you making?

-=-=-
DNA
Sat, 05 Feb 2011, 15:11
Jayenkai
I keep meaning to try out GLBasic. They've got a bunch of systems that it works with, and a semi-free version if you want to try it out/learn the language.
Like I said though, I've yet to have 10 minutes to even try the thing, so I can't really comment on what the language is actually like. sorry!

-=-=-
''Load, Next List!''
Sat, 05 Feb 2011, 16:11
dna

Freebasic is another one.

Just google the words 'Free Basic Compiler'

That will give you some place to start.

-=-=-
DNA
Sat, 05 Feb 2011, 16:15
JL235
There is also PlayMyCode and unlike GLBasic, FreeBasic and all the other similar languages out there you don't even have to download anything.

For example you try out writing and running code here in the sandbox. Sign up and you can save & share your projects too.
Sat, 05 Feb 2011, 20:44
dna
Oh yes. There's also Darkbasic. The people who make the software put a free version online.

Google Darkbasic and try one.

-=-=-
DNA
Sat, 05 Feb 2011, 20:59
Stealth
What do you want to do?

Games, apps, mobile apps, websites...?

-=-=-
Quit posting and try Google.
Sun, 06 Feb 2011, 03:24
Afr0
Here is the link to FreeBASIC. It doesn't support Macs yet, but it does support Linux.
If you want something more 'game' oriented, there's the Unity engine that can be heavily modified to do almost anything using C#.

Microsoft has also released free Express versions of their time-tested IDEs. As far as IDEs go, you won't find anything better for free.


-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Sun, 06 Feb 2011, 04:27
Jayenkai
Again, I forget about FreeBasic! geeze..

I'm trying to decide, though, which out of all these might be easier to actually learn from.

I'm actually thinking GameMaker.
I've seen fantastic things done with GameMaker, as well a whole buttload of utter tripe, but it seems to be a fairly common starting point for folk.
I wonder if that might be a good one to try?

-=-=-
''Load, Next List!''
Sun, 06 Feb 2011, 05:26
shroom_monk
Something to bear in mind is that pretty much all programming languages have quite a bit in common, at least in terms of theory. Once you've learnt how things like variables, expressions, functions, etc all work in one language, picking up other languages isn't quite as hard, since you already understand a lot of the theory. So really, as the others have emphasised already, first language choice really depends on what you want to do.

-=-=-
A mushroom a day keeps the doctor away...

Keep It Simple, Shroom!
Sun, 06 Feb 2011, 11:16
dna
Just for reference there's Purebasic, CoolBasic, and somthing called Basic4GL.

There are others just google the words 'Free basic compilers'


-=-=-
DNA
Sun, 06 Feb 2011, 11:25
JL235
I would advise using a non-basic language. They are outdated and only used by niche communities (except VB of course).
Sun, 06 Feb 2011, 14:43
Afr0
FreeBASIC isn't outdated. It was still being developed as of 8th of November 2010.
It is also compatible with Win32.
And most importantly, free.

It is probably what I'd choose if I were starting over.

In fact I'd say that FreeBASIC is at least as, if not more capable than BlitzMax.

FreeBASIC supports:

- Pointers.
- Function overloading.
- Dynamic arrays.
- Conditional compilation.
- Types and Unions.
- OOP (Polymorphism has to be simulated).

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Sun, 06 Feb 2011, 16:10
dna

You're right Afro. If not for that clumsy interface it might be the compiler of choice


-=-=-
DNA
Sun, 06 Feb 2011, 16:19
JL235
Afr0 FreeBASIC supports:

- Pointers.
- Function overloading.
- Dynamic arrays.
- Conditional compilation.
- Types and Unions.
- OOP (Polymorphism has to be simulated).

Very up to date, language features that are over 40 years old.
Mon, 07 Feb 2011, 10:00
rockford
I'm going to put my pimp hat on now

I use GLBasic and have done for a number of years (having previously used Blitz3D and BlitzMax). GLBasic is a true multi-platform language (code on Windows pc or recently Mac (WIP)) and make games for pc, Mac, iDevice, GP2X, Wiz, Pandora, Windows CE, PocketPc and Xbox! Palm Pre is also coming in the next update. No other BASIC style language supports as many platforms.

It is a very simple language to learn and you can create games and apps in 2D or 3D. It has network commands, so you can create games that can be played over the net. GLBasic is constantly updated and bug fixes generally come quick and fast when reported. The software is very stable.

The GLBasic forum is haven to many friendly peeps that can answer pretty much any question you may have - usually within 10minutes of asking. Newcomers are very welcome and well supported.

My last GLBasic game (Puzzled - Christmas 2010) won the SoCoder Christmas comp. My Guru Logic Champs game (coded in GLBasic) came 2nd in the GP32Spain Wiz competition last year (following a game that had been on development for 4years!).

You can also use external .DLLs and libraries created in C and C++ with GLBasic. And it's fast. Very fast. Both in terms of development and execution.

And if you only want to develop simple 2D games for pc, the language is completely free!
Mon, 07 Feb 2011, 12:21
Afr0
It has network commands, so you can create games that can be played over the net.


Most 'network commands' in BASIC languages are a scam, as they internally use the dreaded select() to process sockets, which limits you to 64 sockets on Windows and 900 on UNIX. Meaning you're not going to get much of an MMO going with BASIC. Unless you interface with Win32.

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Mon, 07 Feb 2011, 12:45
rockford
GLBasic isn't actually BASIC you know...

As for MMO's, pah - who cares!

Mon, 07 Feb 2011, 15:06
Jayenkai
Note to Afr0, not everyone is insane enough to attempt an MMO.

-=-=-
''Load, Next List!''
Mon, 07 Feb 2011, 17:44
mindstorm8191
Afro, that sucks, but I'm sure one could devise a work-around. If the connections reach the limit, you could use a tree system, where new players are connected to other players with a good connection. Data can then pass through that connection. If the middle-link player disconnects or is lost, the second-level player could reconnect. You would have to leave one or more connection slots open on the server for new connections, and 'instruct' them to connect though other players as needed.

I think it could work!

-=-=-
Vesuvius web game
Mon, 07 Feb 2011, 19:52
JL235
If you wanted to build an MMO you'd be better using a highly-concurrent language (erlang, go, occam-pi), or one with mature concurrent libraries (C++, Java, C#). You just wouldn't use a basic dialect.

This is because it will make it easier scale horizontally (which is where you add more servers) which is a good property of MMOs.
Tue, 08 Feb 2011, 02:44
Afr0
Afro, that sucks, but I'm sure one could devise a work-around. If the connections reach the limit, you could use a tree system, where new players are connected to other players with a good connection. Data can then pass through that connection. If the middle-link player disconnects or is lost, the second-level player could reconnect. You would have to leave one or more connection slots open on the server for new connections, and 'instruct' them to connect though other players as needed.


That is P2P, and is terribly insecure.

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Tue, 08 Feb 2011, 03:08
JL235
Afr0 That is P2P, and is terribly insecure.

I agree, but I think there must be a way to do this.

For example you could have a partial-P2P system where the MMO play in a P2P mode and all data is marked as untrusted. Eventually all data is sent to the trusted server in one go to be verified. The idea being that it's only insecure for say 5 minutes.

You could also do something along the lines of having all your data verified by multiple other players. I then contact them to verify your data is correct. The idea is that I don't trust you, but I probably can trust random people from around the globe.

I'd be interested in other distribution strategies. I find it hard to believe that a distributed P2P MMO is impossible.
Page : 1 2 Next 3
Prev