Qhimm.com Forums

Miscellaneous Forums => General Discussion => Topic started by: chowderhead on 2001-08-31 18:42:00

Title: programming???
Post by: chowderhead on 2001-08-31 18:42:00
Okay, so since I got canned last month, I've went back to my (previous) and whoop-de-doo, it still sucks.  So I've went back to school (community college, so I can take night courses) and I'm out for something.  Not quite sure what I'll do yet, but something related to computers.  Now here's the rub.

Since I had to take some prerequisite courses before I could dive into the 'meat' of what (I think) I'll need, I had an extra class I could take to fill things up.  Soooo, I took one in BASIC programming.  So far, it's pretty cool, and I'd think I'd like to take some more programming classes in the future.  So here's my question:

If I do go farther than this with it, where should I go next?  C?  Java?  Are they all pretty much related on most of the basic concepts?  I know you can't decide for me, but I'd just like some of your opinions...

Title: programming???
Post by: Alhexx on 2001-08-31 19:30:00
Well, I'm currently programming in VB. I like it, b'cause it's quite easy - MUCH more easier than C/C++ or anything else.

But there's something else: VB isn't the most popular language here (ask SaiNt or Fice    :D ). I'm currently trying to learn (MS Visual) C++ (6) - it sux! It's quite hard to learn it...I mean, you've got to insert a lot of code... but I'm going to learn it anyway, b'cause I WILL need it in the future...(b'cause of that cross-platform and source-from-other-guys-thingy...)

My Tip: If you are going to program a bit, you should try to learn VB. If you are going to program more, you should learn Delphi (Fice: Yeah!). If you are going to program REALLY professional or cross-platform (Windoze, Mac, Linux), or you want to use source from other programmers on the world then you should learn C++ ...

Okay, at least that's my opinion. I'm quite sure that SaiNt and Fice MIGHT have other opinions...

- Alhexx

- edit -
Added some comments and:
'bout that source-from...:
I know that there's also a lot of source available for VB or Delphi...but most 'normal-user' tools are programmed in C(++)

- edit 2 -
Hey, that's my 255th post!
I wonder if I can post on or do I have to use a 2-Byte Integer?  :)

[This message has been edited by Alhexx (edited August 31, 2001).]

Title: programming???
Post by: chowderhead on 2001-08-31 19:39:00
Visual basic is an option as well, but I know what you mean about the *ahem* venom dripping and flaming arrows when you mention it  :wink:  that's why I didn't bring it up before.  

Title: programming???
Post by: eerrrr on 2001-08-31 20:22:00
I'm gonna start programming in VB. The bloke who I'm buying VB off decided to go on holiday, so now I've got to wait even longer  :x. But hopefully he'll be back next week. If you're gonna learn VB chowderhead take a look at  VB Web , thats what I'm gonna use to learn it. I'm hoping that once I get to college, I'll be pretty good at VB, and maybe they'll have a C course running so I could start learning that too.
Title: programming???
Post by: ficedula on 2001-09-01 16:08:00

I'd regard VB as a bad move, purely because there's nowhere to GO from it. If you learn Delphi (or C++, or Java) you can probably use any OOP language - which is most of the main ones - without too much effort beyond syntax changes. VB isn't properly OO so switching to a PROPER OO programming language afterwards is a real shift - there's so many things to get used to ... you're far better off starting with OO from the beginning. I, of course, recommend Delphi, simply because it's well designed, OO, AND easy to use. C++ is an option, but it is a bit complex for a beginner. Java isn't much use for a home user, but it's a fairly good language generally.

BTW, if you go to any half-decent university, knowing Basic/VB is marginally better than not knowing programming at all, but not much - and I'm not exaggerating there. What languages have I touched in my first year?

-C
-Java
-SML
-Assembler
-Perl
-A very small amount of pascal

Knowing VB means you'd have a basic knowledge of how programming works, but that's all ... knowing just about ANY other language would give you skills in something specific - like object orientation (*very* important - I can't really emphasise that enough) - which would be a big boost on lots of topics. Java, Delphi, or C++ would all give you that, and make uni a lot easier. Plus you've got a good chance of USING one or more of those languages! The chance of a proper computer course needing VB are very, very, very low.

VB is just about OK for people whose main job isn't programming, or even computing. The accountant who needs a small macro in Excel, say. If you're serious about computers at all, though, just DON'T touch VB. PLEASE. It won't help you much.

[This message has been edited by ficedula (edited September 01, 2001).]

Title: programming???
Post by: eerrrr on 2001-09-01 13:20:00
Argh, well I've kinda bought VB now. I guess I will take Delphi or C or whatever if they have them at college, but I'll give VB a go first.
Title: programming???
Post by: Alhexx on 2001-09-01 13:43:00
Fice: Wooo, that's hard...

Fice 2: What the heck is OO?

....

- Alhexx

Title: programming???
Post by: Anonymous on 2001-09-01 13:51:00
Message.
Title: programming???
Post by: Sir Canealot on 2001-09-01 17:15:00
Hmm.
A freind of mines cousien although only 18 knows C++ damn well. Hes getting quite a name for himself apprently.

He said to me and my freind with programing its best to five into the pool(with C++) then get in slowly(with Vb).

Thats all I have to say on the subject though.

Title: programming???
Post by: Ant on 2001-09-01 19:45:00
Fice:  Isn't VB.NET going to be totally object orientated?
Title: programming???
Post by: ficedula on 2001-09-01 20:59:00
OO does mean Object Orientated, yes. How to explain. Oookay, this is gonna get long...

In most programming languages, you can define your own "types". Then you can declare variables of that type (which store that sort of information, which use your "template", however you want to look at it). VB will do this.

Now, objects contain methods - code - as well as data.

Don't understand? A record (NOT an object) is a "type" that contains ONLY data. Like:

MyType = record
    Age:     Integer;
    DOB:     Date;
    Height:  Integer
.....
etc.
etc.

So then you can declare variables of type "MyType" , eg. Person1: MyType, Person2: MyType, and do

Person1.Age = 23
or
Person2.Height = 100

or whatever.

Now, with objects, your type could also have code (methods) in it. So as well as that, you could also do

Person1.ShowDetails()

which would run some code, ShowDetails, associated with that type which - presumably - popped up a nifty little window showing their details.

I think the later versions of VB can do this, too. It's still not full object orientation.

With proper OO, your type can "inherit" from another one. For example, I could do

MyNextType = class(MyType)
end;

and I've got a new type which AUTOMATICALLY has all the variables, methods (code), and so on that MyType had. And I can add more in, of course.

Now the clever thing is, say some code is expecting me to give it a MyType variable. I *could* give a MyNextType and it'd still work perfectly OK - after all, it still has all the data and code that MyType does! So it works fine.

This is cool, then. You can have general types that all your code works on, and then a few more specific cases you store EXTRA data, methods, and so on - but all your old code will still work with it, since you've just *added* stuff on. All the data the old code needed is still there in your new data type.

This STILL isn't OO though! For PROPER OO, you need abstract and virtual methods.

What THIS means is: Say I've got a type, TPerson (like the MyType I showed above). It contains these properties:

Name
Age
Height

And it contains these methods (code):

ShowDetails()
GetTelephoneNumber()

(presumably, ShowDetails pops up a window with details in it, GetTelNo looks up their number in a database or something. Who knows. Who cares.)

Now, say we declare ShowDetails() to be ABSTRACT. What THIS means is, we don't write any code for it! Seems silly? All will be revealed .... all we define is the name of the method and what parameters it takes (any data we need to give to it, for it to work).

Now, we declare two NEW types, TCustomer and TEmployee. They obviously both "inherit" from TPerson (they're more specific examples of a Person, so they need everything a person has - plus some more specific data, like Rank for an employee, or CustomerNumber for a customer).

Now, in both of those, we now write code for the ShowDetails method! The employee ShowDetails obviously needs to do different stuff to the customer one, so each has its own version.

Now comes the clever part. Say you're dealing with a person. You've got a variable P of type TPerson. What you can do now is call P.ShowDetails(). But Person doesn't have a full ShowDetails() method, I hear you say! Well, this is the clever part. You could actually have an Employee variable here - since Employee is a kind of TPerson! Or you could actually have a Customer variable. Now, the language will either call the Employee or the Custom ShowDetails() code for you. You don't have to tell it which one to use! You don't have to test, "oh, what type of person is it, well, if it's this type, run this code, otherwise, run this code" - the computer will figure it out for you. In fact, YOU don't need to know exactly what type of Person it is at all. The computer will figure it out even if all you know is "there's SOME sort of Person here".

I hope you understood that  :wink: I probably didn't explain it very well. But trust me, OO is VERY useful. The Remake engine relies on it for practically all of the rendering (display) and input code, and believe me, it saved me hours of work.

Title: programming???
Post by: eerrrr on 2001-09-01 21:26:00
Wow, you know I think some of that made sense to me. Like the words, but when I put the words together it became kinda strange. So does VB really suck that much? Should I start straight away with C or C++? I'll see if I can change the program for....Vicual C? Is that the program used? Man, from what fice just wrote I think it's gonna take me a long time to get to grips with programming.  :(
Title: programming???
Post by: dagsverre on 2001-09-01 21:35:00
Woah, congrats on one of the longest posts on this board (I think). I didn't read it because I know what OOP means...

Anyway, I'm going to be even more radical than the others in here. The others have proposed mainly tools for creating graphical applications:
 - VB should of course be avoided as the plague
 - Microsoft Visual C++ should be avoided because it makes you learn the Microsoft-infested horrible library known as MFC (they use CONSTANTS for communicating types of events for crying out loud! Every windows message is a given number! I mean, everyone knows (well, should know) that if you are even thinking about adding a "switch" statement to a C++ program then you are dealing with some very bad design decisions...)
 - Delphi is probably the one most beginner-friendly, and also it has a lot of good principles. My main problem with Delphi is that it is mainly graphical...

To really learn programming one should begin with console programming (at least that's the traditional approach). This means writing what you might describe as "an obsolete DOS text-based program". The thruth is that most text based programs are still far better than most graphical ones (not games of course), you should care more about learning how to code than eye-candy. I just programmed from Windows on a Linux box on the other side of Europe...try doing that with a windows system.

But, Delphi is nice if you are addicted to the windows GUI way (otherwise you should start with console C++ programming). And, you can download Delphi 6 for free at www.borland.com.

Later on, when you have learned programming, you should always learn new languages. The most useful thing now is to become really really good at OO (at least to the level that you know "programming patterns" (like the very useful visitor pattern (related to my "switch"-rant above)) and how to use them). Then, they way further would be looking at the languages that use other paradigms like Common Lisp, ML and such. I haven't gotten that far yet myself but I have a growing suspicion that those really are better than the OO that has become popular (OO isn't everything, there is better paradigms out there they just aren't widely used).

To sum up: Get a book on whatever you want to learn (which should be either C++ console-mode programming ("C++ for Dummies" does the trick as it has a very good explanation of polymorphism/virtual functions, if a somewhat shallow description of the language...the thing is you don't want to dive deep yet!), or Delphi grapical app programming).

Title: programming???
Post by: ficedula on 2001-09-01 22:16:00
(You don't need to pay attention to this if you're learning programming ... it's a reply to Dag).

I've learnt ML (well, SML, which is basically the same) and ... it's freaky. First of all you think "that's crap!". Then you realise that for some things it's incredibly efficient and concise. But then you realise that at anything else, it's REALLY crap.

Which doesn't mean you shouldn't learn it, of course - every language has pros and cons. ML just has EXTREME pros and cons.

For those of you who wonder what ML is ... well, it's a functional language. You can't (well, aren't supposed to) issue any commands. The main thing this boils down to, for newbies to ML, is that there aren't any variables. Or at least, you can't change the value of a variable - once it's set, its fixed.

If you're a programmer already, you're probably thinking "that's crap!". Well, congrats, you've just entered Stage One like I documented above  :wink:

(No variables - that's not its selling point, of course, but it was the main thing everyone learning it complained about at the beginning - understandably, if you're used to normal "imperative" programming).

So what is its selling point? Well, for one thing, instructions can be executed to some extent out of order and it doesn't make any difference. The main advantage of THAT is, you can execute ML programs in parallel (ie. on multiple CPU's simultaneously) without designing them to do so specially.

Damn, that was TOTALLY off topic wasn't it? Urgh.

Title: programming???
Post by: Alhexx on 2001-09-01 22:51:00
I've saved this site to my comp so I can read it offline  :D

- Alhexx

Title: programming???
Post by: The SaiNt on 2001-09-02 12:24:00
Well of the above, let's say I'm best at C. (Slowly moving to C++)

I've touched Visual Basic before, and I can tell you that Visual Basic is simple. Honestly, thats where its good points stop. VB is many abstraction levels higher than C so you can expect it to be much easier to understand, but after a while you'll find out how limiting it is. It's alright if you need to write something quick and dandy.

I went throught some of the MFC classes and all I have to say is, it sucks. Unfortunately, I have to stick to it cause I've been having problems looking for resources on how to build "windows" using the console. So, most of my written programs are "console" based.

I've never touched delphi before so I wouldn't be too sure. I'm starting Java in November I think. It's part of my course so it isn't my choice   :wink:

I wouldn't recommend VB at all. Go ahead and start with C/ C++. It doesn't matter if you start with either of them, C++ is a superset of C so you don't lose out either way. However, IIRC, there are slight differences if you use specific C / C++ compilers I think. If you start of from C & progress to C++, you'll really appreciate OO   :wink:
Using classes, inheritance & polymorphism really kick ass   :wink:

*EDIT*
Did you know that php is SO C++ based?

[This message has been edited by The SaiNt (edited September 02, 2001).]

Title: programming???
Post by: eerrrr on 2001-09-02 17:58:00
Wow! Delphi's free?! I'm gonna start that then. From what you guys have been writing it sounds great too. Hmm, I'll look for a website on Delphi tutorials, and maybe a dummy book too. Yay, I've finally decided! Hey chowderhead, why dont you learn Delphi too? Then we can learn it together!......uhh    :-?

EDIT: Nooooo, I'm downloading Delphi 6 Personal Edition and its.....140MB!!! NOO!! 3KB/sec. This is gonna take forever.   :(

EDIT 2: There's no point. It'll take WAY too long. And sometimes DAP re-starts the download when you resume it for some wierd reason, I really wouldnt want that to happen at 100MB. Does Delphi come in cheap boxed pakages? On the site it only delivered to the U.S.  :x. Well, I could be stuck with VB then...

[This message has been edited by eerrrr (edited September 02, 2001).]

[This message has been edited by eerrrr (edited September 02, 2001).]

Title: programming???
Post by: ficedula on 2001-09-02 19:01:00
I've got every version of Delphi previous to v5 on cover CD's from various mags - PC Plus in particular is good about giving away Delphi versions, sometimes even the Pro releases rather than the Standard versions.

You live in England? Then you could probably order a back issue of one of the Delphi cover CD's straight from PC Plus for about £5 or so. If you want to that, I'll dig out the issue no's of coverdisks with Delphi on them.

[This message has been edited by ficedula (edited September 02, 2001).]

Title: programming???
Post by: eerrrr on 2001-09-02 20:43:00
Hey that would be cool fice. Could you dig one out with Delphi Pro? Preferably a recent one? If there isnt a recent one with Pro, Standard would be fine. That way I'd be able to get hold of it easier.
Title: programming???
Post by: dagsverre on 2001-09-02 20:43:00
Functional languages (Ficedula): I don't know much about ML...I've heard that to do output the rule of side-effects is...stretched a bit. Anyway, I'm mostly referring to Lisp...Lisp works in a functional way but you can still use OO techniques etc., basically they say that it's very easy to define OO yourself in the language (everything can be defined, kind of like operator overloading in C++ just much much more powerful). The only reason I'm not learning it straight away but saving it until I actually get the time is that it is not type-safe and that puts me a little off...

Saint: Creating windows shouldn't be too difficult...first you must "#include " (you probably already knew this) and then you must call the right API functions (get hold of the Microsoft Windows Platform SDK and it should getyou far in that). But using an abstraction layer is usually better (unless it's one created by Microsoft)... if you have access to a Unix of some sort I'd try out QT (you can use QT on windows as well I think, www.trolltech.com).  And of course there's Borland C++ Builder, it's not perfect (it feels like forcing a Delphi library into C++) but at least it's way better than MFC.

Title: programming???
Post by: Anonymous on 2001-09-02 21:24:00
ive been having a lot of fun learning javascript
Title: programming???
Post by: ficedula on 2001-09-02 22:17:00
eerrrr: The March 2000 PC Plus cover cd has Delphi 3 Pro on it. The Jan 2001 DVD has Delphi 4 standard on it ... the CD version may well also have Delphi on it, but I don't know of course, since I only have the DVD version.

Not sure which to recommend ... the Pro version has more features like Net connectivity, advanced synchronisation and so on ... but D4 has more language features like method overloading.

Dag: Yes, ML doesn't exactly have a fully consistant paradigm ... when you're dealing with file manipulation, you're really using non-functional commands that've been wrapped by a functional/ML layer ... there's no way around that, since file systems ARE imperative concepts.

Title: programming???
Post by: dagsverre on 2001-09-03 00:05:00
Delphi availability...well, 6 is best of course, 150 MB isn't so bad is it? I mean, if you know someone with ISDN or DSL it shouldn't be a problem.

Delphi 4 Standard is IMO much better than Delphi 3 Proffesional...think dynamic arrays...and all the other nice langauge features added in. (If you get Delphi 4 you have to take care to install all the service packs though as it's very buggy).

BUT, Delphi 3 Prof. has the VCL source code included. Myself I wouldn't be able to create a single Delphi program without the source code for the libraries, your mileage might vary (most people don't look on the source until they have at least a year of experience with Delphi anyway...I think...)

Title: programming???
Post by: ficedula on 2001-09-03 02:20:00
Personally I wouldn't say you need the source code THAT much - I don't need to refer to it that much even now - the Delphi help files are very good at documenting everything. It's good to have it, though.

For a beginner, I guess D4 is perhaps better, since as Dag says when you're starting having the VCL source isn't really important.

Title: programming???
Post by: chowderhead on 2001-09-03 07:41:00
Thanks for the dynamite responses, guys-you've really helped a lot.

I'll probobly go ahead and enroll in a C course next semester-my uni (as ya'll lovingly refer to it) says I have to take it before I move on to C++.   :(   Oh, well, I can always buy the book and study ahead...

This place  doesn't offer a ton of courses, but will get me by until I can move on to a "regular" university.  (these places are rather expensive, aren't they?)

Fice:  Sorry, no Delphi courses where I'm at-but that doesn't mean I'll not try it out, either.  I think I might have a disk here with an older version of Delphi on it.

Hey eerrrr, you ready to do some studying?

Title: programming???
Post by: eerrrr on 2001-09-03 12:12:00
fice: Hmm, I think I'll try to download Delphi 6 from a friend with a high bandwidth connection. I dont know anyone with one though, so I guess I'll try Delphi 4 Standard.

chowderhead: ....did you have to put it that way? Lol, I'm just gonna be learning it in my spare time.

Title: programming???
Post by: mirex on 2001-09-07 11:31:00
People please, dont write sooo many words, I dont have nerves for reading it. And i would like to, coz it is about programming. But i cant  :-?

Something from me:
As i see it, language can be easy, or good. Like with easy one itll be hard to code something good. But easy ones are good for start.  :)
So ill try to rate them, 1-easy 10-good. Higher number => harder & better.

2 - Basic(terminal)
6 - Pascal(terminal)
6 - Delphi
8 - C++(terminal)
8 - Visual C++
10 - Assembler

(terminal) means that it is old, dos like, you wont create any pretty windows with them

any corrections are welcome

Title: programming???
Post by: eerrrr on 2001-09-07 20:49:00
Hmm, thanks mirex. I'm still having trouble getting hold of Delphi. I didnt know PC Plus did DVD cd's so I cant use them. I'll ask my computing teacher if I can use the school PC's to download it, and get it on disc somehow.
Title: programming???
Post by: ficedula on 2001-09-07 21:44:00
PC Plus only recently started doing DVD coverdisks, and they still do CD versions as well, though obviously the CD disk doesn't have as much on it as the DVD.

Languages that're harder also aren't necessarily any better! Assembler is THE hardest "language" short of straight binary, but on a modern PC there's very little advantage to it over C++ or Delphi; modern CPU's do so much optimisation that hand coded assembler is only rarely any better. Plus, I'd put Delphi on a par with VC++ at least; doesn't have some things (Templates, Macros), but does have some other things (reliable RTTI, sets, etc). And unlike VC++ it runs on Linux   :wink: (Yes, I know C++ code runs on Linux, of course, but if you've written in VC++ it's probably not going to).

Likewise, an easy language isn't necessarily less good. I'm biased, of course (but with reason), but I'd say Delphi is very nearly as easy to learn as VB (not really much difference) - but you can do an awful lot more with it once you're familiar with the language.

Oh, and most languages nowadays can create visual programs. True, it's easier in Delphi, or VC++ (or C++ Builder), but even a command-line C++/Pascal compiler could be used to create a windows app.

[This message has been edited by ficedula (edited September 07, 2001).]

Title: programming???
Post by: Alhexx on 2001-09-07 23:50:00
mirex: So Visual C++ has got 8 points? That's good! I'm going to learn it, or better: I've already started...  :D

- Alhexx

Title: programming???
Post by: ficedula on 2001-09-07 23:55:00
*I* wouldn't've given it 8 points...
Title: programming???
Post by: Srethron Askvelhtnod on 2001-09-08 03:45:00
I can hear dagsverre now.  :D

 

Quote
Microsoft manages to do everything possible wrong in their MFC framework. They have esentially stripped away what is beutiful with C++, you have to program directly to the Windows API instead of using some middle-layer like the rest of the world does. I feel it's a bit prehistoric, really... Also, the compiler itself lacks a lot of C++ features (for instance decent template support).

[This message has been edited by Srethron Askvelhtnod (edited September 07, 2001).]

Title: programming???
Post by: The SaiNt on 2001-09-08 11:01:00
 
Quote
Originally posted by ficedula
Languages that're harder also aren't necessarily any better! Assembler is THE hardest "language" short of straight binary, but on a modern PC there's very little advantage to it over C++ or Delphi; modern CPU's do so much optimisation that hand coded assembler is only rarely any better.
True to some extent. However, when you're programming something where every second counts, you might consider doing it with assembler. Besides, with Assembler you can do all the required optimizations immediately when new processors with new "features" are out. On a side note, I can't think of anyone sane enought to write in direct binary  :)

Quote
Originally posted by ficedula
And unlike VC++ it runs on Linux  (Yes, I know C++ code runs on Linux, of course, but if you've written in VC++ it's probably not going to).
Exactly, I don't understand why you guys mix up Visual C++ & C++. Visual C++ is just C++ with lots of "graphics" and libraries premade for the Windows enviroment(another of Msft's sales gimmicks). Visual C++ is just "C++ packaged and endorsed for use with Msft products"  :D

Quote
Originally posted by Srethron Askvelhtnod as a quote of dagsverre
They have esentially stripped away what is beutiful with C++, you have to program directly to the Windows API instead of using some middle-layer like the rest of the world does
Lol. With that you find a whole bunch of idiots in the world memorizing the MFC classes. When asked to do something different, they say, "Eh, it's not in my MFC manual, so it isn't possible. We'll wait till Msft thinks of a workaround"  :)
Title: programming???
Post by: Alhexx on 2001-09-08 14:13:00
(I'm feelin' like a damn rookie here  :D )

- Alhexx

Title: programming???
Post by: chowderhead on 2001-09-08 17:30:00
Alhexx:  You ain't the only one!  :)
Title: programming???
Post by: Anonymous on 2001-09-09 05:16:00
I didn't notice Java mentioned anywhere in this topic.  Java IS object oriented.  The syntax is very similar to C++.  There are tons of guides and examples for it on the web.  Its platform independant, for those of you guys and gals that don't know that means that "in theory" it could run on any computer. And best of all its free :-).

[This message has been edited by GattMan (edited September 09, 2001).]

Title: programming???
Post by: ficedula on 2001-09-09 15:01:00
Yes ... for learning stuff, Java is great. The performance is far too slow to use for any serious applications (on the PC anyway), but syntactically it's a lot better than C++. Still not totally consistent, but better at least.
Title: programming???
Post by: GattMan on 2001-09-09 19:34:00
In my programing class in Highschool and and my Intro to CS class here at college, the focus has been mainly on Java.  In high school, spent sometime on basic and VB to get everyone used to the basic concepts of programing, then spent the majority of the time on Java.  Here at college, we are working on Sun Solaris Workstations using Unix to program in Java.  Java is very good to get yourself used to OO. Thats my $0.02.
Title: programming???
Post by: ficedula on 2001-09-09 20:32:00
Yeah, my uni taught us mostly Java as well. For learning OO I'd agree that Java's as good as any language, though I wouldn't use it by choice for many things.
Title: programming???
Post by: eerrrr on 2001-09-10 00:20:00
fice: Good work on the post count.

Man, this thread's actually staying on topic! Uhmmmm, dont mind me, carry on! See how long its goes...

Title: programming???
Post by: Caddberry on 2001-09-10 22:46:00
Ya know pizza is good.. LoL just a joke there this is gonna be on topic.. I want to learn VC++ someday i will VB is kinda lame but its still kinda cool.. I am gonna check out Delphi.. I will probably have to have my friend download it aswell... he wont mind.. And my god programming in straight Binary? i guess someone had to do it though.. where would you even find an assembler for that? pretty crazy..
Title: programming???
Post by: ficedula on 2001-09-10 23:09:00
Well, you think about it; what are assembly compilers written in? The very first ones? Couldn't write them in assembler, at least not to start off with, because nobody's written assemblers yet  :wink: To start off with, everything had to be written in binary ... until someone used their l33t binary skillz to code an assembler.
Title: programming???
Post by: chowderhead on 2001-09-11 06:37:00
All bow to the first great binary programmer!  
How he hath bettered our very existence!
How he hath - er - ah, done good stuff for us!

*hmph*  I couldn't imagine trying to do that-just getting used to school after being out 8 years is bad enough.

Title: programming???
Post by: The SaiNt on 2001-09-11 09:33:00
 :)
A lot of things today seem difficult because of the new was all of us are brought up in and educated.
Nowadays, most people have to use a calculator to crunch those big numbers.
What about the people who didn't use calculators back then?
It has been proven that the human mind is in fact able to calculate much faster than most computers. I'm not saying it applies to everyone, but I'm saying it's possible if we were brought up in the perfect conditions.
Title: programming???
Post by: mirex on 2001-09-11 11:57:00
I remember that my friend has a friend  :) and he used to code in pure binary. But he was programming on Z80, and there are fewer instructions, so twas easier to memorize.

Anyhow, I think its nothing more like learning some language. Just have to remember what number means what, and what will some combination do. I was not learning pure asm, and still i remember
$A8 $05 - mov ax, 5
$CD $21 - int 21h
and $DC was INC AX, or JMP ?.  :-?
If my memory serves me right.

Allhex: as far as i remember, there allways were these fights Pascal-fans vs C-fans.
I was pascal-fan, but then I got error message in pascal "Code segment too large" and I couldn't do anything with that, so I had to go to C++. Now I like them both. So fice, Im with you too. And I dont like M$

err: you surely have some crackers group somewhere near you, and they should have a Delphi in their list, so get it from them. Its the easiest way

Title: programming???
Post by: Ant on 2001-09-11 15:18:00
Doesn't everyone think that its pretty cool how most C compilers are written in C.

Poses the question "What came first, C or the C compiler?"

..Joke

Title: programming???
Post by: ficedula on 2001-09-11 15:34:00
IIRC Delphi is written in Delphi  :wink:
Title: programming???
Post by: The SaiNt on 2001-09-11 15:52:00
Obviously the first compiler cannot come before the language itself  :)
Title: programming???
Post by: dagsverre on 2001-09-11 17:34:00
Today's Java JIT compilers actually produce code that can be faster than C++ (with exceptions turned on and ALL functions declared virtual, that is) because JIT makes sure it is compile natively for the processor (like, if you have a P4 it will actually use all those exotice instructions...)

However, I don't like Java as a language because it's quite inflexible compared to C++. And it isn't really more pure OO than C++ either, for REAL OO one should look to Smalltalk, Ruby and the like...

About binary compilers: Back in the old days people could write something in Fortran, compile it, and then if something was wrong they'd change it directly in binary rather than recompile...resulting in a complete mess of course, that's why there's still stories about it...

To do basic cracking one has to know about it anyway...changing 0x74 to 0x75 to change "if" to "if not" (or was it the other way around) is a trusted trick to get around shareware programs (in other words, you change the test to "if not registered" instead of "if registered" and get full access).

Title: programming???
Post by: Ant on 2001-09-11 17:42:00
Thats cool Dag,

Do you know of any actual programs where that works?

Title: programming???
Post by: ficedula on 2001-09-11 19:06:00
Well, that's how my patches to the FF7 EXE work to make it run in windowed mode, dump debug messages, or run in 32-bit colour; I just hacked some of the assembler code out, using the technique mentioned. FF7.EXE actually has run-in-a-window code in there, but it's only enabled in some kind of special "debug mode". So you just do what Dag says, and make it so it runs when you AREN'T in a special debug mode instead  :wink:
Title: programming???
Post by: Ant on 2001-09-15 21:48:00
I just read in my Computing textbook that Bill Gates invented BASIC, how interesting.
Title: programming???
Post by: dagsverre on 2001-09-15 22:59:00
That's not true. Bill Gates picked the source code for Basic up from the paper bin in a university where he was cleaning the floors.

That says quite a lot: The only "programming" language that Bill Gates has ever claimed inventing, a very bad one as such, is in reality stolen.

Yeah I'm serious...because I've read it from people who also where dead serious, of course it *might* be an urban legend. But considering how he also stole DOS from his best friend I wouldn't consider it unlikely.

[This message has been edited by dagsverre (edited September 15, 2001).]