Welcome, Guest. Please login or register.

Author Topic: Learn to program Amiga applications and games in #AmigaE  (Read 21813 times)

Description:

0 Members and 4 Guests are viewing this topic.

Offline nyteschayde

  • VIP / Donor - Lifetime Member
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 643
    • Show only replies by nyteschayde
    • http://www.nyteshade.com
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #29 on: November 09, 2011, 07:06:58 PM »
It is true that many junior developers write OO code, especially in Java, that has overly long inheritance chains, but junior developers make all kinds of mistakes. This is simply one of them.

I program in C, C++, Objective C, Java, PHP, Python, and web (i.e. HTML/CSS/JavaScript). I do so for a living and am considered a senior developer by my peers. What does this mean? This really means that I've worked myself out of making many of the junior level mistakes when programming.

Are there better developers than me? Hell yes.
Do I see them often? No.
Do I crave to meet and learn from them? Absolutely

For example, Karlos is a developer that I have spoken to many times on A.org and his ability and coding level usually make my head spin. He is VERY talented. I love learning from him.

How does all this pertain to OO? OO is good when used right. It generally can be a slower implementation though because any time you make the language easier for humans it becomes a bit harder for the computer. Most modern OO languages make the safe assumption that you're using a modern computer with modern programming power and therefore this extra overhead isn't much of an issue.

OO features can be leveraged on slower machines without much of a slow down as long as you don't go overboard and objectify every single possible idea in your code. There is quite a bit of reuse of code in my experience with OO design. The problem is, fundamentally, trust. Most programmers don't necessarily give trust to others code so easily. When it comes time to use another person's code, there is often a sinking feeling (when source isn't available) that bottlenecks, problems and poor implementations come from this black box code.

The amount of time saved by using many C++ STL classes for things like vectors, maps and strings over reimplementing the same thing (over and over again) in C is amazing. If I am trying to eek out the most possible performance from a game on a limited architecture (such as say an Amiga), then using C++ STL classes would have to be evaluated on a case by case basis (and obtaining the most performance would likely mean not using them).

There are several other factors such as executable size and memory consumption to consider. Modern languages can well afford to trade speed of development for heavier usage cost because most modern computers have an order of magnitude (or more) more resources to use. Don't blame OO code because it's not well suited to a machine that was built before OO was a term, let alone a popular one.


Quote from: Fats;655115
My major gripe with OO is that it often leads to overdesign by implementing unused methods to make APIs complete, very long inheritance chains etc. OO seems to really get the worst out of (some) mediocre programmers.
And if you look how many times programmers still reinvent the wheel, OO has not fulfilled it's promise of code re-usability either. Don't quote me on it but I think I once read it is inherent with OO and that generic programming is more fit for that.

greets,
Staf.
Senior MTS Software Engineer with PayPal
Amigas: A1200T 060/603e PPC • A1200T 060 • A4000D 040 • A3000 (x2) • A2000 Vamp/V2 • A1200 (x4) • A1000 (x3) • A600 Vamp/V1 • A500
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #30 on: November 09, 2011, 11:56:15 PM »
Quote
For example, Karlos is a developer that I have spoken to many times on A.org and his ability and coding level usually make my head spin. He is VERY talented. I love learning from him.

Karlos is by far a better programmer than I, and better chemist and musician too (we seem to have followed a similar life path in many respects)... But yet he can't come to terms with the beauty of Objective-C... That that forever will haunt him ;) honestly I feel sorry for his affliction :-p

Offline CammyTopic starter

Re: Learn to program Amiga applications and games in #AmigaE
« Reply #31 on: November 10, 2011, 01:53:52 AM »
It's a real shame you guys with years of programming experience don't actually code Amiga applications, the community would really appreciate it. I'm sure it wouldn't take you long, you guys seem to know so much. Is it because you have become so used to writing bloated code for modern systems that you don't think your brain could handle optimising the code for a low-end Amiga? Or is it because you're just greedy and only code for money? Where is your interest in Amiga now, other than posting like a bigshot on forums?
A1200 030@28Mhz/2MB+32MB/RTC/KS3.1/IDE-CF+4GB/4-Way Clockport Expander/IndivisionAGA/PCMCIA NIC
A1200 020@14Mhz/2MB+8MB/FPU/RTC/KS3.0/IDE-CF+2GB/S-Video
CD32 020@14Mhz/2MB+8MB/RTC/KS3.1/IDE-CF+4GB
A600 030@30Mhz/2MB+64MB/RTC/IDE-CF+4GB/Subway USB/S-Video/PCMCIA NIC/USB Numeric Keypad+Hub+Mouse+Control Pad
A500 000@7Mhz/512kB+512kB/ROM Switcher/KS3.1+1.3/S-Video

Get AmigaOS
 

Offline gazgod

  • Sr. Member
  • ****
  • Join Date: Sep 2005
  • Posts: 282
    • Show only replies by gazgod
    • http://www.lincsamiga.org.uk
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #32 on: November 10, 2011, 02:19:37 AM »
Quote from: Cammy;667206
Or is it because you're just greedy and only code for money?



In my case yup, but not greed, necessity.

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #33 on: November 10, 2011, 07:20:50 AM »
Quote from: Cammy;667206
It's a real shame you guys with years of programming experience don't actually code Amiga applications, the community would really appreciate it. I'm sure it wouldn't take you long, you guys seem to know so much. Is it because you have become so used to writing bloated code for modern systems that you don't think your brain could handle optimising the code for a low-end Amiga? Or is it because you're just greedy and only code for money? Where is your interest in Amiga now, other than posting like a bigshot on forums?
In some respects you are right, but I can put it another way...

When I got my A500, I stopped programming my old Sinclair ZX81... I became used to the extra power the Amiga had and you could say my code became too bloated to run on the old Sinclair. Now we have computers that have more features and more power than the Amiga, as a programmer you want to play with the new toys, to experiment with new ideas and push the limits of what can be done... It is hard, though sometimes fun, to go back to the older machines and be limited by what can be done. Unfortunately there is a limit with any machine, and once you have explored that, it gets a little dull.

There is a little extra note for me through:
When I was younger, I used to dream of an Amiga 500 that I could carry in my pocket and take anywhere with me. Call me weird, but I wanted to run my software sitting in a forrest or by a river, there is a degree of freedom that is appealing... Modern smartphones give me that power and more... I haven't written anything for a desktop machine in years!

An interesting aside:
When my youngest brother asked me to teach him to program, I set up Blitz2 in UAE and gave him his first taste of code using the Amiga! Though we soon moved to JavaScript... Which actually gave him a better idea of modern languages and event based architecture. But the Amiga was a quick way to show him programming and get results, as you lose a 10year old very quickly if they don't see immediate results :)

Offline kamelito

Re: Learn to program Amiga applications and games in #AmigaE
« Reply #34 on: November 10, 2011, 10:38:53 AM »
@Bloodline,

A bit offtopic but is your Iphone game doing well?
Kamel
 

Offline TCMSLP

  • Sr. Member
  • ****
  • Join Date: Sep 2008
  • Posts: 301
    • Show only replies by TCMSLP
    • http://www.coherer.net
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #35 on: November 10, 2011, 10:42:40 AM »
I'd love to start programming on the Amiga but I've not touched C in years (I'd be essentially learning from scratch) plus I've never used OO languages.

Thanks to Cammy's contagious enthusiasm I've started looking at AmigaE, but the PortablE compiler on the latest AROS/Icaros seems to be broken so even this hasn't got me very far.

The last real programming (excluding bash/perl) I did was on the Amiga/ST in assembly language some 15+ years ago.  I also dabbled with Microchip PIC assembly a few years back - but a recent attempt at picking this back up has demonstrated how little I remember and how frustrating it is to 'start over'.  :(
A1200 50MHz 68030 16Mb, PCMCIA Ethernet, Indivision AGA MkIIcr
http://www.coherer.net Coherer: Electro!
 

Offline nicholas

Re: Learn to program Amiga applications and games in #AmigaE
« Reply #36 on: November 10, 2011, 12:19:14 PM »
Quote from: Cammy;667206
Or is it because you're just greedy and only code for money? Where is your interest in Amiga now, other than posting like a bigshot on forums?

What wonderful social skills you have.

Has it occurred to you that most people have real lives that take priority over the deluded fantasies of unemployed dreamers?
“Een rezhim-i eshghalgar-i Quds bayad az sahneh-i ruzgar mahv shaved.” - Imam Ayatollah Sayyed  Ruhollah Khomeini
 

Offline CammyTopic starter

Re: Learn to program Amiga applications and games in #AmigaE
« Reply #37 on: November 10, 2011, 02:14:33 PM »
Sorry if I touched a nerve, bigshot, but I figure if people have the time to waste boasting on forums about how good they are at coding they could at least find some time to put their money where their mouth is and code something once in a while, whether or not they live real lives or delusional fantasy ones.
A1200 030@28Mhz/2MB+32MB/RTC/KS3.1/IDE-CF+4GB/4-Way Clockport Expander/IndivisionAGA/PCMCIA NIC
A1200 020@14Mhz/2MB+8MB/FPU/RTC/KS3.0/IDE-CF+2GB/S-Video
CD32 020@14Mhz/2MB+8MB/RTC/KS3.1/IDE-CF+4GB
A600 030@30Mhz/2MB+64MB/RTC/IDE-CF+4GB/Subway USB/S-Video/PCMCIA NIC/USB Numeric Keypad+Hub+Mouse+Control Pad
A500 000@7Mhz/512kB+512kB/ROM Switcher/KS3.1+1.3/S-Video

Get AmigaOS
 

Offline TCMSLP

  • Sr. Member
  • ****
  • Join Date: Sep 2008
  • Posts: 301
    • Show only replies by TCMSLP
    • http://www.coherer.net
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #38 on: November 10, 2011, 02:36:38 PM »
I'm not sure people were necessarily boasting (more discussing?) but Cammy makes a very good point ... we have some great talented people as part of the community but very few people willing to invest time to develop on the platform.

I know what it's like though - I commute 1.5 hours each way to a 9-5 job, so out of the house ~11 hours a day.  The little time I do have I hit issues (like PortablE not working under Icaros) and the little time I have is wasted.

Such is life :(
A1200 50MHz 68030 16Mb, PCMCIA Ethernet, Indivision AGA MkIIcr
http://www.coherer.net Coherer: Electro!
 

Offline nicholas

Re: Learn to program Amiga applications and games in #AmigaE
« Reply #39 on: November 10, 2011, 03:09:07 PM »
Quote from: Cammy;667237
Sorry if I touched a nerve, bigshot, but I figure if people have the time to waste boasting on forums about how good they are at coding they could at least find some time to put their money where their mouth is and code something once in a while, whether or not they live real lives or delusional fantasy ones.


Why should they?
“Een rezhim-i eshghalgar-i Quds bayad az sahneh-i ruzgar mahv shaved.” - Imam Ayatollah Sayyed  Ruhollah Khomeini
 

Offline SamuraiCrow

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2281
  • Country: us
  • Gender: Male
    • Show only replies by SamuraiCrow
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #40 on: November 10, 2011, 03:30:33 PM »
Quote from: TCMSLP;667242
I know what it's like though - I commute 1.5 hours each way to a 9-5 job, so out of the house ~11 hours a day.  The little time I do have I hit issues (like PortablE not working under Icaros) and the little time I have is wasted.

Such is life :(


The problems with Icaros are being addressed.  The problems with the beta version of PortablE that came with Icaros have been addressed as well.  If you're having trouble with PortablE, try downloading the latest version and installing it over the top of the existing install.  That will fix some of the issues.   The GUI issues have to still be fixed in Icaros 1.3.2 but I hear 1.3.3 should be out soon.
 

Offline TCMSLP

  • Sr. Member
  • ****
  • Join Date: Sep 2008
  • Posts: 301
    • Show only replies by TCMSLP
    • http://www.coherer.net
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #41 on: November 10, 2011, 03:56:52 PM »
Thanks SamuraiCrow - I'll give it a ago.  I wasn't criticising AROS though, merely using it as an example of how it's difficult to do anything useful when I have such little free time.

AROS + PortablE on the eeePC seem like a good commuting solution though :)
A1200 50MHz 68030 16Mb, PCMCIA Ethernet, Indivision AGA MkIIcr
http://www.coherer.net Coherer: Electro!
 

Offline gazgod

  • Sr. Member
  • ****
  • Join Date: Sep 2005
  • Posts: 282
    • Show only replies by gazgod
    • http://www.lincsamiga.org.uk
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #42 on: November 10, 2011, 04:28:37 PM »
Quote from: Cammy;667237
Sorry if I touched a nerve, bigshot, but I figure if people have the time to waste boasting on forums about how good they are at coding they could at least find some time to put their money where their mouth is and code something once in a while, whether or not they live real lives or delusional fantasy ones.


Lets turn your accusing compass around 180 degrees and ask what have you with the office, all Amigas and obviously all the time in the world have produced?

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #43 on: November 10, 2011, 04:38:24 PM »
Guys, I think that I and gazgod adequatelly challenged Cammy's position wihout needing to resort to hostility. Play nice :)

Offline SamuraiCrow

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2281
  • Country: us
  • Gender: Male
    • Show only replies by SamuraiCrow
Re: Learn to program Amiga applications and games in #AmigaE
« Reply #44 from previous page: November 10, 2011, 04:40:27 PM »
Quote from: gazgod;667257
Lets turn your accusing compass around 180 degrees and ask what have you with the office, all Amigas and obviously all the time in the world have produced?


She's working on a TileMap editor in MUI using AmigaE.