What coding language to use?

A place to discuss the implementation and style of computer programs.

Moderators: phlip, Moderators General, Prelates

TGGeko
Posts: 36
Joined: Thu Mar 13, 2008 2:33 am UTC

What coding language to use?

Postby TGGeko » Tue Apr 01, 2008 12:14 am UTC

I have an idea for an IM program. Have any suggestions for a language to use? I want it to be easy to downloaf. And no, Ive never programed anything before. I plan to research a bunch of information on it later.

LOL I said downloaf
"She's hot and funny, what more could you want?"
"A sammich, thats what"

arcoain
Posts: 56
Joined: Thu Dec 20, 2007 12:34 am UTC

Re: What coding language to use?

Postby arcoain » Tue Apr 01, 2008 12:49 am UTC

I'm sorry, but frankly, the skills to build a robust IM program require years of experience that one simply can't learn over night. That said, I recently built an IM client / protocol called "Chateau" which uses RSA encryption in C#, with relatively low difficulty (to code). Java is also a valid language to approach this problem with. C++ would be difficult simply because of the how difficult it is to do sockets in c++, so I would stray away from that.
All this aside, go learn to program before you even consider taking on a project like this. Trust me.
arcoain

User avatar
Xanthir
My HERO!!!
Posts: 5281
Joined: Tue Feb 20, 2007 12:49 am UTC
Location: The Googleplex
Contact:

Re: What coding language to use?

Postby Xanthir » Tue Apr 01, 2008 2:26 am UTC

Nodnod. Start smaller, guy. ^_^

On that note, grab Practical Common Lisp. By the end you're doing web programming and building a shoutcast server, which gives you a lot of nice experience in something related to what you're wanting to do.
(defun fibs (n &optional (a 1) (b 1)) (take n (unfold '+ a b)))

qbg
Posts: 586
Joined: Tue Dec 18, 2007 3:37 pm UTC

Re: What coding language to use?

Postby qbg » Tue Apr 01, 2008 3:38 am UTC

Xanthir wrote:Nodnod. Start smaller, guy. ^_^

On that note, grab Practical Common Lisp. By the end you're doing web programming and building a shoutcast server, which gives you a lot of nice experience in something related to what you're wanting to do.

I concure. Start small and build from there.

TGGeko, could you give a general idea of what your idea is? It might help give us an idea of what skills you should have.

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What coding language to use?

Postby Berengal » Tue Apr 01, 2008 5:20 am UTC

I guess I have to say "python" and "twisted" then. I produced an irc-like program in two hours without knowing any twisted beforehand (but I had a guy to teach me).
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
bridge
Posts: 195
Joined: Sun Feb 03, 2008 2:24 pm UTC
Location: Zurich < x < Rome

Re: What coding language to use?

Postby bridge » Tue Apr 01, 2008 6:33 am UTC

You can write a decent IM program with more or less 20 lines of Erlang
In fact it's one of the most common simple example in online tutorials
No graphical user interface of course

Btw i agree with the first poster, learn to program first, or find someone that can help you,
writing an text only IM program is not really big deal
Excuse my Super Mario accent

User avatar
Sedim
Posts: 1
Joined: Fri Feb 01, 2008 3:36 pm UTC

Re: What coding language to use?

Postby Sedim » Tue Apr 01, 2008 6:48 am UTC

I've written a (basic and half finished but functioning) multicast chat app in C#, and I thoroughly reccommend it or Mono (If you are even considering the slight possibility of cross-os code go with mono, its the same language for the most part anyway). The socket libraries are, once researched, very useful. Also, it can do asynchronous callbacks with everything, which is great in networking applications.

Also, there is an open source IDE for it out there. I haven't tried it but you can find it at: http://www.icsharpcode.net/opensource/sd/

TGGeko
Posts: 36
Joined: Thu Mar 13, 2008 2:33 am UTC

Re: What coding language to use?

Postby TGGeko » Tue Apr 01, 2008 1:58 pm UTC

Thanks a lot guys. YEa, I know I will need a lot of experience. I just wanted to know where to start, seeing as how there are a lot of languages to use.
"She's hot and funny, what more could you want?"
"A sammich, thats what"

User avatar
evilbeanfiend
Posts: 2650
Joined: Tue Mar 13, 2007 7:05 am UTC
Location: the old world

Re: What coding language to use?

Postby evilbeanfiend » Tue Apr 01, 2008 2:07 pm UTC

any scripting language should do
in ur beanz makin u eveel

User avatar
segmentation fault
Posts: 1770
Joined: Wed Dec 05, 2007 4:10 pm UTC
Location: Nu Jersey
Contact:

Re: What coding language to use?

Postby segmentation fault » Tue Apr 01, 2008 4:28 pm UTC

java or python is what i would recommend.
people are like LDL cholesterol for the internet

User avatar
Shai
Posts: 86
Joined: Wed Dec 12, 2007 2:59 am UTC
Location: Guelph, Ontario, Canada
Contact:

Re: What coding language to use?

Postby Shai » Wed Apr 02, 2008 4:46 am UTC

I think if you really want to understand how programming works, start with C. If you get too used to garbage collection and the likes, you will become spoiled. The easier route is not always the better. If you understand C, you can program Java better, IMO.
I blame lag.

coppro
Posts: 117
Joined: Mon Feb 04, 2008 6:04 am UTC

Re: What coding language to use?

Postby coppro » Wed Apr 02, 2008 5:35 am UTC

Shai wrote:I think if you really want to understand how programming works, start with C. If you get too used to garbage collection and the likes, you will become spoiled. The easier route is not always the better. If you understand C, you can program Java better, IMO.
I would recommend splitting the difference and using C++. But you need good instruction on C++ - the traditional path says to introduce the basic language concepts, then add the complex stuff. I think that it's better to dive into OO fairly quickly, and then only add concepts like pointers and traditional arrays when you are ready for them - it's all one language, so each concept should work as an extension of another. C is too vastly different from Java for experience in one to help the other. But a skilled C++ programmer can program mediocre C and Java, which is a boon.

EvanED
Posts: 4330
Joined: Mon Aug 07, 2006 6:28 am UTC
Location: Madison, WI
Contact:

Re: What coding language to use?

Postby EvanED » Wed Apr 02, 2008 6:29 am UTC

Shai wrote:I think if you really want to understand how programming works, start with C. If you get too used to garbage collection and the likes, you will become spoiled. The easier route is not always the better. If you understand C, you can program Java better, IMO.

But why not leave out manual memory management and all the other crap C foists upon you learn how to decompose problems the way you need to to program? Learning that is the important part, and it's relatively invariant across programming languages. (Someone learning Java might think in more of an OO fashion while someone learning C might think in more of a procedural fashion while someone learning Scheme might think in more of a functional fashion. But many of the fundamentals are the same, and learning the fundamentals is way harder than switching to a different programming paradigm.) Once you learn problem decomposition, then you can worry about how to implement it taking into account all of a machine's quirks.

I would argue that most (read: almost all) programming should be done in a managed language anyway. (In particular, most parts of most projects.)

(If you think that he should use C because higher-level languages will spoil him, why stop there? Why not drop to assembly? "If you get too used to compilers and the likes, you will become spoiled." Why is C the right level of abstraction?)

User avatar
Berengal
Superabacus Mystic of the First Rank
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway
Contact:

Re: What coding language to use?

Postby Berengal » Wed Apr 02, 2008 8:53 am UTC

Haven't this discussion ventured into the realm of Religious Wars now?
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.

User avatar
evilbeanfiend
Posts: 2650
Joined: Tue Mar 13, 2007 7:05 am UTC
Location: the old world

Re: What coding language to use?

Postby evilbeanfiend » Wed Apr 02, 2008 9:33 am UTC

well lets just end it with http://norvig.com/21-days.html :wink:
in ur beanz makin u eveel

zahlman
Posts: 638
Joined: Wed Jan 30, 2008 5:15 pm UTC

Re: What coding language to use?

Postby zahlman » Wed Apr 02, 2008 9:43 am UTC

TGGeko wrote:LOL I said downloaf


If you feel the need to comment on your own misspelling instead of simply correcting it, in a non-realtime communication, this may be an indication that programming is not a good fit for your mental aptitudes.
Belial wrote:I once had a series of undocumented and nonstandardized subjective experiences that indicated that anecdotal data is biased and unreliable.

User avatar
Sc4Freak
Posts: 673
Joined: Thu Jul 12, 2007 4:50 am UTC
Location: Redmond, Washington

Re: What coding language to use?

Postby Sc4Freak » Wed Apr 02, 2008 10:00 am UTC

The only advice I can offer is: don't start with C or C++. These languages are far, far too complicated and low-level for an absolute beginner.

Since you're thinking of writing a GUI app of some sort, I think it would be best to start in something like VB.NET or C#. They make GUI frontends incredibly easy to make (point-and-click interface in Visual Studio), and the code is much easier to grasp than something like C or C++. Java may also be a valid alternative, but I have no experience with it so I can't comment.

User avatar
Hammer
Because all of you look like nails.
Posts: 5491
Joined: Thu May 03, 2007 7:32 pm UTC
Contact:

Re: What coding language to use?

Postby Hammer » Wed Apr 02, 2008 11:50 am UTC

Berengal wrote:Haven't this discussion ventured into the realm of Religious Wars now?

Yes. Relate this to writing an IM or go have this argument in Religious Wars.
"What's wrong with you mathematicians? Cake is never a problem."

User avatar
quintopia
Posts: 2906
Joined: Fri Nov 17, 2006 2:53 am UTC
Location: atlanta, ga

Re: What coding language to use?

Postby quintopia » Wed Apr 02, 2008 6:24 pm UTC

A n00b can hack up an IM program in around twelve lines of code using Hackety Hack:

http://hacketyhack.net/

The program has built-in conversational-style tutorials to get new users up to speed. Even very young children have already been seen to use it successfully.

collinstocks
Posts: 11
Joined: Wed Apr 02, 2008 7:52 pm UTC

Re: What coding language to use?

Postby collinstocks » Wed Apr 02, 2008 8:29 pm UTC

If you have absolutely no programming experience, I recommend starting by creating HTML pages just to get used to telling the computer exactly what to do and twerking things to suit your fancy. The good thing about HTML is that it is fairly lenient, and easy to get used to.

After that, its your call. I learned some Javascript, then a little PHP, then Python. I then took a programming course in school where I learned Pascal (while also teaching myself Python at home). However, I don't recommend this. Python is probably a good beginner programming language (and an excellent language in general), but you will get spoiled.

C and C++ are the most used languages, and so are probably good to know. With that in mind, I should probably find a good tutorial on one of the two when I have some time...

User avatar
tetsujin
Posts: 426
Joined: Thu Nov 15, 2007 8:34 pm UTC
Location: Massachusetts
Contact:

Re: What coding language to use?

Postby tetsujin » Mon Apr 07, 2008 4:20 pm UTC

More important than the language choice, IMO, is the choice of libraries. If you're writing an IM app you probably ought to build it on an XMPP or Jabber library.

If you want it to be easy to downloaf, then Java has certain advantages - you can wrap it up as a self-installing package, and it'll be almost as convenient to use as an applet would be (but without the applet restrictions).

The next easiest-to-downloaf option would probably be a compiled language of some kind - though scripting languages can also be bound to their interpreter to make a single binary executable...

I guess if I were doing it I'd go for Python. I agree with what others have said about the importance of understanding programming at the level of C - that's important if your goal is to learn programming - but if I were just going for writing the thing up and having it work, I'd go with Python.
---GEC
I want to create a truly new command-line shell for Unix.
Anybody want to place bets on whether I ever get any code written?


Return to “Coding”

Who is online

Users browsing this forum: No registered users and 5 guests