Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

AphoticD

macrumors 68020
Original poster
Feb 17, 2017
2,297
3,481
As some of you may have picked up throughout my random (and often off-topic) thread contributions, I started using Xcode and teaching myself C/ObjC/Cocoa mid-April this year. I feel that I now have a good enough handle on it all to truly buckle down and tackle some bigger, and somewhat ambitious projects which I have in mind.

A fundamentel underpinning of my “Corporate vision” is to support a greater than average range of computer hardware. This comes from an economic and environmental position. I believe we can do less damage to the earth by simply putting what we have to good use, instead of replacing everything all the time with shiny, brand new things (cars, phones, computers, shoes, TVs, etc etc). The _real world expense_ is far greater than the financial jab in the ribs received by your credit card bill.

I believe a quality repair is worth more to the planet and is more gratifying (and consolidating) for our own inner wellbeing, than throwing away something which is somewhat broken and buying a new one. This is the quick fix mentality which is clearly depleting our natural resources.

With all of this in mind, I am dedicated to Mac OS, and the desktop environment, first and foremost. This means support for the latest and greatest Intel Macs and High Sierra, but more importantly (on this forum), my apps will have full support For our beloved old big-endian PowerPC Macs :cool:

I can’t reveal much at this stage, however I will be working in a “Productivity meets creativity” space for the first major project.

My question to you, the loyal PowerPC advocate is;

Minimum OS support: Tiger or Leopard?

It seems like a no brainer to say “Hey, if you’re going to support PPC, why not support Tiger?” Well that is fair enough, but Leopard was a technological giant leap for Mac OS X. Tiger lacks some really fundamental (and cool) frameworks which Leopard introduced. Many of which are still standard in the latest macOSes.

Tiger support means:
* No Garbage Collection or Automatic Reference Counting. All memory management must be manually handled. This can be painful and very time consuming.
* No Objective-C 2.0 support (not really a showstopper as even Xcode 9 will handle older style ObjC code, but it requires quite a lot more setup work from the programmer when writing classes and accessor methods).
* Very limited animation support (No Core Animation or Layers).
* Limited (and slower) Core Image implementation for visual effects/filters.

The question I need to ask myself is:
Are these truly roadblocks which _prevent_ supporting Tiger or are these “limitations” purely putting me off because more work is involved? o_O

How many PowerPC users actually stick with Tiger ONLY? I know G3s are limited to this, but does anybody choose to avoid Leopard?

Feel free to discuss... :apple:
 
Last edited:
  • Like
Reactions: G4fanboy
I didn't realize supporting Tiger was such a hassle compared to Leopard, as many applications dropped PowerPC altogether before discontinuing Tiger support and only working on Leopard. Even Apple's own iWork '09 had barely more support on PowerPC Leopard than PowerPC Tiger.

The truth is, I tend to prefer Tiger on my old PPC Macs, for a few reasons:
  1. That OS is period-correct to both the hardware and most of the applications I'd choose to run on it. For example, I have the 2005 boxed Final Cut Studio suite, Virtual PC 2005, and other applications from the Panther or Tiger era.
  2. The performance on G4s is decent, and on high-end G5s it flies. No optimizations are required to get it to run well. This is mainly why I'd keep Macs like my iBook G4 on Tiger.
  3. Apple's return to lighter-accents, 2D Dock, etc. in OS X Yosemite has actually helped Tiger look less outdated than it used to. Yet it still maintains the classic Aqua look in many areas, and that nicely reminds me I'm using a PPC Mac instead of one of my more modern Intel Macs.
That being said, if PPC was my only Mac platform and I was trying to squeeze everything possible out of it, I'd probably prefer Leopard over Tiger.
 
  • Like
Reactions: z970 and AphoticD
Yes, we saw a lot of ongoing Tiger supported apps during the golden years of PowerPC because most of those apps started life on Tiger (or Panther) and then evolved to suit Leopard.

So in terms of an app’s foundations, it takes far less work to adapt code to a newer Mac OS than to retrospectively write-in support for an older system. Especially after development has begun on the newer platform.

What we noticed during Leopard’s life cycle though were a lot of new apps booming and most of these new apps were marked as 10.5 only. Many of those apps had great looking user interfaces, but weren’t backwards compatible because of their dependence on Core Animation.

There is no doubt that Tiger outperforms Leopard. It is lightning fast on my DC G5, especially now with an SSD.

I also have the boxed Final Cut Studio HD, which was Panther/Tiger only. But decided to grab Final Cut Studio 2 boxed for $80 (last year) as I intended to push the G5 to do video editing in Leopard. (I haven’t gotten to this yet!)
 
I always choose Tiger over Leopard unless there's something specific I want a machine to do that will only work under Leopard - and, of course, if the machine has the spec to run it.
However, if supporting Leopard only facilitates an easier path to development of new software, I'm all for it - afterall, new apps for Leopard are better than no new apps at all.
 
  • Like
Reactions: AphoticD
There is no doubt that Tiger outperforms Leopard. It is lightning fast on my DC G5, especially now with an SSD.
I think that depends on your viewpoint.

Oh, I won't argue speed, as many will mention that Tiger is speedy after the initial install where Leopard needs optimization. And even then Leopard is somewhat slower on older hardware.

I won't even repeat my oft-mentioned refrain about the G4 here at work.

So, if performance solely equals speed then yes, that means Tiger.

But I happen to believe that performance also means taking advantage of the latest available to the OS. In this equation, hands down Leopard beats Tiger because it's more modern.

That said, I think you have to include support for Tiger. If you want to include all of the community you need the broadest range of Macs possible and that means Tiger.

It's one of the reasons TenFourFox is STILL TenFourFox and not TenFiveFox and why Cameron Kaiser still does what he does. Of course, Kaiser loves Tiger more than Leopard but I think that's beside the point. :)
 
  • Like
Reactions: z970 and AphoticD
I think what I would do is only bring certain stuff to Tiger anything that would mean security to an older machine so anything that asks for a network connection and the rest Leopard.
 
  • Like
Reactions: AphoticD
I think what I would do is only bring certain stuff to Tiger anything that would mean security to an older machine so anything that asks for a network connection and the rest Leopard.

Good point. Are you saying to limit in-app network connections on Tiger, but not Leopard?

I am planning network services in this app for sharing a collection of files in an online "gallery", both private and public sharing available, via a custom built web service (SSL signed and delivered over HTTPS).

So, instead of having that direct connection in-app on Tiger and Leopard, the best solution might be to allow the user to save a packaged file to the Desktop and then ask the user to login to the web service via their most modern browser and upload the selected file. This would remove the security/privacy concerns within the app on the older OSes. Is this too much to ask of the user or would it be acceptable if the security considerations are clearly explained? On a newer OS, this could be a direct in-app connection. What do you think?

Looking back a couple of months, I think I answered myself in regards to supporting older Macs on another thread;

Despite all [the Mac OS X Leopard] advancements (and then the decade which followed), it's worth remembering that everyone got the job done successfully (or even just adequately) before all of this. So if anyone is developing an app and can live without a certain tech for the sake of compatibility with the older OSes, it's worth either limiting snazzy features or making a special build just for an older OS.

I personally don't have a problem with special builds for each OS (or in the case of TFF and Camino, each processor type). Is this considered bad-form?

That said, I think you have to include support for Tiger. If you want to include all of the community you need the broadest range of Macs possible and that means Tiger.

Yes, I agree. It's not impossible to command GCC to compile OS-specific code, ignoring code which is marked not suitable for a specific OS.

Most of this app's current compatibility (10.4 - 10.13, with very limited 10.3 support) has been achieved using this technique. I think it's just a matter of building a generic infrastructure first which relies on only the oldest OS's frameworks, then filling in components with newer OS specific frameworks and having 'generic' fallback techniques, which in many cases means dropping bells and whistles on the older systems.

(Maybe too much technical info, but) Tiger has been mostly achievable, whereas Panther has proven to be difficult. It is really ancient and as I am leveraging GPU processing via Core Image as much as possible (which wasn't available back then). [The alternative method to utilize GPU acceleration in Panther is to move] images into the GPU as OpenGL textures, which is a long-winded process and not something I am confident with.

Also, systems like the Pismo with 8MB of VRAM are tricky to juggle efficiently. The biggest bottleneck I have found in this app is moving and mapping memory between CPU <-> GPU on a slower bus (133Mhz and under), it takes a lot of time to process these operations (sometimes even 10-20 sec per operation). Whereas the G5s handle these operations instantaneously, especially in Leopard.

Core Image is one place where Leopard shines over Tiger.
 
Last edited:
  • Like
Reactions: z970 and philgxxd
I think all of the points brought up so far are valid, on both sides.

For my usage of PowerPCs, I use Leopard only on the highest spec'd machines, and even then, some of them are dually running Tiger. I also use a bunch of G3 machines and lower-end G4s, so Tiger is vital to my PowerPC usage. It's also good to keep in mind that if someone is looking to get into the PowerPC atmosphere, they might not be able to go out and find the best and (more expensive) G4 or G5; they probably are getting a G3 (iMac or iBook, most likely).

Either way, I'm excited to see what you have in store! Good luck! :D
 
  • Like
Reactions: AphoticD and z970
ARC could be a big deal unless you are experienced with manual memory management.

Have you looked at PyObjC at all?

Tiger support would be great anyway but it also depends on whether you are targeting higher or lower end machines.
 
  • Like
Reactions: CooperBox
ARC could be a big deal unless you are experienced with manual memory management.

Have you looked at PyObjC at all?

Tiger support would be great anyway but it also depends on whether you are targeting higher or lower end machines.

I've got my head around manual memory management. And, in a way, I guess it suits my perfectionist (purist? Anal-retentive? Self-torturous?) tendencies. It just takes time and constant forethought to thoroughly prevent, detect and patch memory leaks.

I have briefly gone through the PyObjC demos from the Tiger developer release and I can see the quick prototyping and cross-platform advantages. But again, the purist in me says to stick to Objective-C and Cocoa, the core language of Mac OS X. This is the reason why, where I could have jumped straight into Swift, iOS and Intel macOS, I made a conscious decision to start at the "Foundation" and chose to start my new software development career on the blunt edge of a PowerPC Mac in 2017.

Let's just hope I don't dig myself a hole in the process!

(Then again, I've become quite adept at climbing out of self-dug holes o_O).
 
ARC could be a big deal unless you are experienced with manual memory management.

Have you looked at PyObjC at all?

Tiger support would be great anyway but it also depends on whether you are targeting higher or lower end machines.

It's always pleasing to see newbies coming onto the ppc forum, even more so when they can offer suggestions that may well assist others.
On the other hand, I wouldn't recognize a PyObjC, even if I tripped over one on the sidewalk. ;)
 
As some of you may have picked up throughout my random (and often off-topic) thread contributions, I started using Xcode and teaching myself C/ObjC/Cocoa mid-April this year. I feel that I now have a good enough handle on it all to truly buckle down and tackle some bigger, and somewhat ambitious projects which I have in mind.

A fundamentel underpinning of my “Corporate vision” is to support a greater than average range of computer hardware. This comes from an economic and environmental position. I believe we can do less damage to the earth by simply putting what we have to good use, instead of replacing everything all the time with shiny, brand new things (cars, phones, computers, shoes, TVs, etc etc). The _real world expense_ is far greater than the financial jab in the ribs received by your credit card bill.

I believe a quality repair is worth more to the planet and is more gratifying (and consolidating) for our own inner wellbeing, than throwing away something which is somewhat broken and buying a new one. This is the quick fix mentality which is clearly depleting our natural resources.

With all of this in mind, I am dedicated to Mac OS, and the desktop environment, first and foremost. This means support for the latest and greatest Intel Macs and High Sierra, but more importantly (on this forum), my apps will have full support For our beloved old big-endian PowerPC Macs :cool:

I can’t reveal much at this stage, however I will be working in a “Productivity meets creativity” space for the first major project.

My question to you, the loyal PowerPC advocate is;

Minimum OS support: Tiger or Leopard?

It seems like a no brainer to say “Hey, if you’re going to support PPC, why not support Tiger?” Well that is fair enough, but Leopard was a technological giant leap for Mac OS X. Tiger lacks some really fundamental (and cool) frameworks which Leopard introduced. Many of which are still standard in the latest macOSes.

Tiger support means:
* No Garbage Collection or Automatic Reference Counting. All memory management must be manually handled. This can be painful and very time consuming.
* No Objective-C 2.0 support (not really a showstopper as even Xcode 9 will handle older style ObjC code, but it requires quite a lot more setup work from the programmer when writing classes and accessor methods).
* Very limited animation support (No Core Animation or Layers).
* Limited (and slower) Core Image implementation for visual effects/filters.

The question I need to ask myself is:
Are these truly roadblocks which _prevent_ supporting Tiger or are these “limitations” purely putting me off because more work is involved? o_O

How many PowerPC users actually stick with Tiger ONLY? I know G3s are limited to this, but does anybody choose to avoid Leopard?

Feel free to discuss... :apple:

Hi, thanks for the many ideas and posts, you've contributed to this forum!
My first thought about and desperate wish for "new" software for PPC (Tiger or Leopard) would be a fork of Cyberduck, that adds two-factor authentication enabled to get access to dropbox, drive etc. (like the intel-version of Cyberduck already does). No idea, how difficult that would be, but the folks from Cyberduck emailed me, that anyone can feel free to modify (the PPC version of) Cyberduck ...
 
Last edited:
  • Like
Reactions: AphoticD
I have downloaded the source and stepped through the build process under El Cap. I’ll need to find the last PowerPC compatible source and figure out how to plug more recent changes in.

So the two-factor authentication is over SFTP for accessing services like Dropbox? I’ll need to do some research to understand the process before attempted to backport. I’d take a guess and say it is likely related to OpenSSL code which no longer runs on the older Macs, but might be possible via Homebrew/MacPorts.

I’ll dig around some more, but can’t make any promises!
 
Last edited:
  • Like
Reactions: bobesch and Lastic
I have downloaded the source and stepped through the build process under El Cap. I’ll need to find the last PowerPC compatible source and figure out how to plug more recent changes in.

So the two-factor authentication is over SFTP for accessing services like Dropbox? I’ll need to do some research to understand the process before attempted to backport. I’d take a guess and say it is likely related to OpenSSL code which no longer runs on the older Macs, but might be possible via Homebrew/MacPorts.

I’ll dig around some more, but can’t make any promises!

Thank you so much!
If you may succeed to fork Cyberduck for 2factor-authetification for Dropbox, GDrive etc, the whole Cloud is at hand of PPCs again...
Thumbs up!
Robert
 
I have downloaded the source and stepped through the build process under El Cap. I’ll need to find the last PowerPC compatible source and figure out how to plug more recent changes in.

So the two-factor authentication is over SFTP for accessing services like Dropbox? I’ll need to do some research to understand the process before attempted to backport. I’d take a guess and say it is likely related to OpenSSL code which no longer runs on the older Macs, but might be possible via Homebrew/MacPorts.

I’ll dig around some more, but can’t make any promises!

Yup OpenSSL is available via Macports.

I'll also have a look, have a school degree in Programming 23 years , mainly Assembler and C and bash scripting altough I've been playing around in Python and Perl. Biggest lack is Object-Oriented programming which became the norm when I quit school and started working.

First hurdle , where did you find the source-code ?
[edit found it ]
svn co https://svn.cyberduck.io/tags/release-x-y(-z)


I found that 5.2 looks like the first stable version connecting to Dropbox and 4.3.1 seems to be the last PowerPC version.

[edit 2]
Java found, knowledge inexistant :) wont'be much of a help here but will poke around
 
Last edited:
How many PowerPC users actually stick with Tiger ONLY? I know G3s are limited to this, but does anybody choose to avoid Leopard?

Feel free to discuss... :apple:
I only have one PowerPC Mac left and haven't turned it on in awhile. With that said, when I finally do get some time to use it, my preferred OS is Leopard because I can use LeoRebirth, there's much more app support, and Leopard-WebKit. I used to use Tiger but eventually I just decided that if I wanted to get real use out of this machine in 2017 I needed Leopard.

As much as I hate to admit it, Tiger is dying and it's just not usable for real purposes today. Software support is just too bad.
 
  • Like
Reactions: z970 and AphoticD
As much as I hate to admit it, Tiger is dying and it's just not usable for real purposes today. Software support is just too bad.

Maybe you should tell that to Cameron Kaiser, the developer of TenFourFox and probably the most hardcore Tiger user around ;)

It all depends on what you are doing with your Mac - why use up extra resources when you don't need to?
 
  • Like
Reactions: z970 and AphoticD
Tiger is the utilitarian’s choice. Disable Spotlight and Dashboard and you have a highly optimized Panther with better tech and software options.

I’ve been appreciating Tiger more and more, especially since obtaining the Pismo and Sawteeth(?). My G5s have only been rebooted into Leopard recently for a few specific apps, otherwise they’ve been on Tiger.

I feel that Tiger provided great results due to the optimization of technologies like Quartz (CoreGraphics 2D drawing and view-based compositing) and Quartz Extreme (Hardware accelerated window compositing) which both evolved into their most efficient state for PowerPC at 10.4.11. Couple this with a mostly consistent minimalist design and only marginal added eye candy (over Panther) and it made a thoroughly snappy UI.

Through my Cocoa research and development, I’ve discovered that Core Image, being brand new at 10.4, didn’t mature until Leopard (~10.5.6). I’ve observed Leopard as faster on nearly every CoreImage operation, which mostly consists of transparently mapping bitmap images to OpenGL surfaces (in VRAM) and the process of applying still and animated image filters against those bitmap GPU based images.

I’ve said it before, but again; Leopard is an amazing OS. With seriously cool technology like CoreAnimation, which is still mostly current tech and the basis for a lot of the success of iOS. The OS is feature packed and beautifully refined. Leopard was arguably the best looking version of Mac OS X and is still a delight to use, especially with the fresh, out-of-the-box experience after a clean install.

But, the OS was not optimized to make efficient use of the hardware at the time. It really wasn’t a complete, finished product until 10.6.

Either way, it is amazing to see efficiency of programming and optimization turn hardware like a 350Mhz G4 Sawtooth from a boxed in, one-thing-at-a-time, don’t-rely-on-it-for-anything-critical-or-secure Mac OS 9 machine into a versatile (and still somewhat compatible) 10.4 workstation, with all of it’s underlying technology, BSD Core and rock solid, efficient, kernel-level networking support.

Stepping through the earlier iterations of OS X, including the Rhapsody origins, I can appreciate the rapid evolution Apple pushed through with each major release.

There was a time when new OS X releases were pushed out on a less contrived schedule and provided users with actual gains, like improved performance and increased hardware support and not just more superficial, “Now Trending”, wiz-bang features, resulting in decreased hardware support.

I know I asked you guys for the feedback, I guess I just wanted to share some thoughts :apple:
 
I'd put Leopard on all my PPCs if it were practical but I cut my cloth accordingly and don't overburden lower specced machines.
I've found the best approach is try it out and see, often the big difference is having a GPU that Leopard 'likes' - also, I've experienced a Leopard install that doesn't seem right but works on the 2nd (or 3rd) attempt.
 
  • Like
Reactions: AphoticD
Tiger is the utilitarian’s choice. Disable Spotlight and Dashboard and you have a highly optimized Panther with better tech and software options.

I’ve been appreciating Tiger more and more, especially since obtaining the Pismo and Sawteeth(?). My G5s have only been rebooted into Leopard recently for a few specific apps, otherwise they’ve been on Tiger.

I feel that Tiger provided great results due to the optimization of technologies like Quartz (CoreGraphics 2D drawing and view-based compositing) and Quartz Extreme (Hardware accelerated window compositing) which both evolved into their most efficient state for PowerPC at 10.4.11. Couple this with a mostly consistent minimalist design and only marginal added eye candy (over Panther) and it made a thoroughly snappy UI.

Through my Cocoa research and development, I’ve discovered that Core Image, being brand new at 10.4, didn’t mature until Leopard (~10.5.6). I’ve observed Leopard as faster on nearly every CoreImage operation, which mostly consists of transparently mapping bitmap images to OpenGL surfaces (in VRAM) and the process of applying still and animated image filters against those bitmap GPU based images.

I’ve said it before, but again; Leopard is an amazing OS. With seriously cool technology like CoreAnimation, which is still mostly current tech and the basis for a lot of the success of iOS. The OS is feature packed and beautifully refined. Leopard was arguably the best looking version of Mac OS X and is still a delight to use, especially with the fresh, out-of-the-box experience after a clean install.

But, the OS was not optimized to make efficient use of the hardware at the time. It really wasn’t a complete, finished product until 10.6.

Either way, it is amazing to see efficiency of programming and optimization turn hardware like a 350Mhz G4 Sawtooth from a boxed in, one-thing-at-a-time, don’t-rely-on-it-for-anything-critical-or-secure Mac OS 9 machine into a versatile (and still somewhat compatible) 10.4 workstation, with all of it’s underlying technology, BSD Core and rock solid, efficient, kernel-level networking support.

Stepping through the earlier iterations of OS X, including the Rhapsody origins, I can appreciate the rapid evolution Apple pushed through with each major release.

There was a time when new OS X releases were pushed out on a less contrived schedule and provided users with actual gains, like improved performance and increased hardware support and not just more superficial, “Now Trending”, wiz-bang features, resulting in decreased hardware support.

I know I asked you guys for the feedback, I guess I just wanted to share some thoughts :apple:

Snow Leopard is better. :p

350 MHz Sawtooth? Are you sure it isn't a Yikes!?

Do you think there's a way to turn off Core Image? I hope so. It's a resource hog which my 12" G4 doesn't like, especially with its skimpy soldered GPU. Some people would probably agree with me.

And does anyone else get this bug when using Tiger? Say you just got done moving files to your desktop. Nothing is selected. You want to make them look nicer. So, you go to the menu bar and click View, then Clean Up. But sometimes, even when nothing is selected, you see 'Clean Up Selected'. So then you have to click a file, then click the desktop for the 'Clean Up' feature to behave properly.

Tiger for PowerPC life.

 
What would lead you to that conclusion?

Just checked Wikipedia, Sawtooths actually do have a 350 MHz version.

I just thought that since Yikes! was the first version of the PMG4, and 350 MHz is such a low speed for a G4, it might have been the Yikes!.

Rational thinking hiccup.
 
Just checked Wikipedia, Sawtooths actually do have a 350 MHz version.

I just thought that since Yikes! was the first version of the PMG4, and 350 MHz is such a low speed for a G4, it might have been the Yikes!.

Rational thinking hiccup.

Apple initially over-promised on both the Sawtooth and Yikes!, which were released concurrently, and Motorola could not supply enough high speed CPUs.

Thus, both models were "speed dumped"(without a change in price) to meet demand.
 
  • Like
Reactions: LightBulbFun
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.