Go Back   MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Reply
 
Thread Tools Search this Thread Display Modes
Old Jul 9, 2006, 03:21 AM   #1
robbieduncan
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Huge Frameworks Ripping Into Tiny Innocent Apps

Ok, this is a serious thread despite a title you probably received in your spam this morning!

Where do you stand on including a framework larger than the app it's being included in just to gain a single feature? There are few cool frameworks out there that give you nice features more or less for free but they are often huge.

OK enough of the abstract stuff: a concrete example. I've been putting off finishing the next version of Poster Paint to write a small app to monitor web sites for changes (as requested in this thread).

Before I release 0.0.0 I want to include an auto-update feature as I may well release a number of small updates over the next few weeks. I could use my own framework which is not too massive but it only informs a user when a new version is available, then it's up to the user to download the new version and install it. So I looked into using Sparkle which is super cool. But it's huge:

World Wide Watcher (my app, without any Frameworks): 164KB
Sparkle (with lots of localisations): 1.7MB ( )
Sparkle (with just English and some file trimmed from nibs): 636KB.

So the question is: is it worth making my app 5 times as big just for some cool functionality?
robbieduncan is offline   0 Reply With Quote
Old Jul 9, 2006, 03:42 AM   #2
caveman_uk
Guest
 
caveman_uk's Avatar
 
Join Date: Feb 2003
Location: Hitchin, Herts, UK
That does seem a bit mad!

There are alternatives to Sparkle. You could use something similar to UKNiftyFeatures on this page. It's nowhere near as cool as Sparkle but then again it's a fraction of the size.
caveman_uk is offline   0 Reply With Quote
Old Jul 9, 2006, 03:45 AM   #3
robbieduncan
Thread Starter
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Quote:
Originally Posted by caveman_uk
That does seem a bit mad!

There are alternatives to Sparkle. You could use something similar to UKNiftyFeatures on this page. It's nowhere near as cool as Sparkle but then again it's a fraction of the size.
That's the real problem. I have my own code that is much smaller but no where near as cool. I am leaning towards using Sparkle as I intend using it in other apps as well. Whilst it will be making up a huge portion of the download in these days of super-fast broadband the size (especially when we are talking in KB) is not all that worrying.
robbieduncan is offline   0 Reply With Quote
Old Jul 9, 2006, 04:58 AM   #4
guifa
macrumors 6502
 
Join Date: Sep 2002
Location: Auburn, AL
Quote:
Originally Posted by robbieduncan
Ok, this is a serious thread despite a title you probably received in your spam this morning!

Where do you stand on including a framework larger than the app it's being included in just to gain a single feature? There are few cool frameworks out there that give you nice features more or less for free but they are often huge.

OK enough of the abstract stuff: a concrete example. I've been putting off finishing the next version of Poster Paint to write a small app to monitor web sites for changes (as requested in this thread).

Before I release 0.0.0 I want to include an auto-update feature as I may well release a number of small updates over the next few weeks. I could use my own framework which is not too massive but it only informs a user when a new version is available, then it's up to the user to download the new version and install it. So I looked into using Sparkle which is super cool. But it's huge:

World Wide Watcher (my app, without any Frameworks): 164KB
Sparkle (with lots of localisations): 1.7MB ( )
Sparkle (with just English and some file trimmed from nibs): 636KB.

So the question is: is it worth making my app 5 times as big just for some cool functionality?
How the heck is Sparkle so big? Especially the localisations? Are they localising images like Apple has been (stupidly) doing for the iWeb and iPhoto and iWork? I'll have to look at their source code (I'm on a Windows for the month) but it seems odd that something that just does a fancy update check would be multiple times larger than entire other apps.
guifa is offline   0 Reply With Quote
Old Jul 9, 2006, 06:30 AM   #5
HiRez
macrumors 601
 
HiRez's Avatar
 
Join Date: Jan 2004
Location: Western US
I agree it's strange it should add so much, but what's a couple hundred K nowadays? Go for it, make it good.
__________________
Go outside, the graphics are amazing!
HiRez is offline   0 Reply With Quote
Old Jul 9, 2006, 01:25 PM   #6
mduser63
macrumors 68040
 
mduser63's Avatar
 
Join Date: Nov 2004
Location: Salt Lake City, UT
Send a message via AIM to mduser63
As a percentage of your total app size it will be gargantuan, but in absolute terms, even 1.7 MB is not at all bad for a shareware app.
mduser63 is offline   0 Reply With Quote
Old Jul 9, 2006, 01:29 PM   #7
robbieduncan
Thread Starter
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Quote:
Originally Posted by mduser63
... a shareware app.
I give my stuff away for free

I've decided to strip away all the non-English languages as the app is not localised. Current size is under 800K all in. Once that's compressed it should be a reasonable size...
robbieduncan is offline   0 Reply With Quote
Old Jul 9, 2006, 05:26 PM   #8
Catfish_Man
macrumors 68030
 
Catfish_Man's Avatar
 
Join Date: Sep 2001
Location: Portland, OR
Send a message via AIM to Catfish_Man
If you do figure out how to make Sparkle smaller, then hooray for you Adium 1.0b is kinda chunky as a result of including a few more frameworks (joscar, sparkle).
Catfish_Man is offline   0 Reply With Quote
Old Jul 9, 2006, 05:37 PM   #9
AlmostThere
macrumors 6502a
 
Join Date: Feb 2005
Location: The royal throne of kings, the sceptred isle, the other Eden, the fortress built
Quote:
Originally Posted by HiRez
I agree it's strange it should add so much, but what's a couple hundred K nowadays? Go for it, make it good.
I agree ... a meg or two? Nothing.

Mac apps have always been "fat" and is one price to pay for a simple drag and drop installation process. At the end of the day, you can't have a "batteries included" system without including the batteries ... just sometimes, someone is going to get the erm, "dirty" end of the stick, so to speak.
__________________
Join the army of the dead: http://www.urbandead.com
AlmostThere is offline   0 Reply With Quote
Old Jul 9, 2006, 05:47 PM   #10
mduser63
macrumors 68040
 
mduser63's Avatar
 
Join Date: Nov 2004
Location: Salt Lake City, UT
Send a message via AIM to mduser63
Quote:
Originally Posted by robbieduncan
I give my stuff away for free
Even better. If it's free, no one can complain about the size .
mduser63 is offline   0 Reply With Quote
Old Jul 9, 2006, 06:52 PM   #11
savar
macrumors 68000
 
savar's Avatar
 
Join Date: Jun 2003
Location: District of Columbia
Send a message via AIM to savar
Quote:
Originally Posted by robbieduncan
So the question is: is it worth making my app 5 times as big just for some cool functionality?
Umm, are you sure that Sparkle isn't statically linked? If it is statically linked, then you'll only link in the code that you actually need, and hopefully that will be a subset if you're not using all of its features. Did you try linking against it yet?

If it really is bloated, maybe you can write to the author and suggest that the produce a "lite" version?
__________________
Mehce
savar is offline   0 Reply With Quote
Old Jul 10, 2006, 04:27 AM   #12
robbieduncan
Thread Starter
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Quote:
Originally Posted by savar
Umm, are you sure that Sparkle isn't statically linked? If it is statically linked, then you'll only link in the code that you actually need, and hopefully that will be a subset if you're not using all of its features. Did you try linking against it yet?

If it really is bloated, maybe you can write to the author and suggest that the produce a "lite" version?
Frameworks don't work like that! You link against them then include a copy of the framework in your app so it's all kind of dynamically linked. Looking at the sourceI think that it's just going to be that big! It does a whole heap of stuff to get the fancy stuff working.
robbieduncan is offline   0 Reply With Quote
Old Jul 14, 2006, 10:34 PM   #13
Catfish_Man
macrumors 68030
 
Catfish_Man's Avatar
 
Join Date: Sep 2001
Location: Portland, OR
Send a message via AIM to Catfish_Man
<updated> Get Sparkle 1.1. It's smaller </updated>

Last edited by Catfish_Man; Jul 15, 2006 at 04:53 PM.
Catfish_Man is offline   0 Reply With Quote
Old Jul 17, 2006, 06:33 AM   #14
robbieduncan
Thread Starter
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Quote:
Originally Posted by Catfish_Man
<updated> Get Sparkle 1.1. It's smaller </updated>
It certainly is.

I am just working on packaging before releasing an early version of my new app.
robbieduncan is offline   0 Reply With Quote
Old Jul 17, 2006, 09:00 AM   #15
gnasher729
macrumors G5
 
gnasher729's Avatar
 
Join Date: Nov 2005
Quote:
Originally Posted by robbieduncan
Ok, this is a serious thread despite a title you probably received in your spam this morning!

Where do you stand on including a framework larger than the app it's being included in just to gain a single feature? There are few cool frameworks out there that give you nice features more or less for free but they are often huge.

OK enough of the abstract stuff: a concrete example. I've been putting off finishing the next version of Poster Paint to write a small app to monitor web sites for changes (as requested in this thread).

Before I release 0.0.0 I want to include an auto-update feature as I may well release a number of small updates over the next few weeks. I could use my own framework which is not too massive but it only informs a user when a new version is available, then it's up to the user to download the new version and install it. So I looked into using Sparkle which is super cool. But it's huge:

World Wide Watcher (my app, without any Frameworks): 164KB
Sparkle (with lots of localisations): 1.7MB ( )
Sparkle (with just English and some file trimmed from nibs): 636KB.

So the question is: is it worth making my app 5 times as big just for some cool functionality?
"Five times as big" doesn't matter. What matters what it costs the user. So this framework takes 1.7 MB. A twohundred GB harddisk costs less than $100. That is 50 cent per GB. Less than one tenth of a cent for 1.7 MB.

I wouldn't worry about it.
gnasher729 is offline   0 Reply With Quote
Old Jul 17, 2006, 09:12 AM   #16
caveman_uk
Guest
 
caveman_uk's Avatar
 
Join Date: Feb 2003
Location: Hitchin, Herts, UK
Quote:
Originally Posted by gnasher729
"Five times as big" doesn't matter.
It might for users on dial up.
caveman_uk is offline   0 Reply With Quote
Old Jul 17, 2006, 09:48 AM   #17
robbieduncan
Thread Starter
Moderator
 
robbieduncan's Avatar
 
Join Date: Jul 2002
Location: London
Quote:
Originally Posted by caveman_uk
It might for users on dial up.
To be fair the app in question is probably not of much interest to dial-up users. It maintains a list of URLs and polls them every so often to check if they have changed.
robbieduncan is offline   0 Reply With Quote
Old Jul 19, 2006, 02:55 PM   #18
Catfish_Man
macrumors 68030
 
Catfish_Man's Avatar
 
Join Date: Sep 2001
Location: Portland, OR
Send a message via AIM to Catfish_Man
If someone wants about 10,000 awesome points... look into making Sparkle use zsync to do delta updates.
Catfish_Man is offline   0 Reply With Quote

Reply
MacRumors Forums > Apple Systems and Services > Programming > Mac Programming

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Similar Threads
thread Thread Starter Forum Replies Last Post
[New Free Game] - TINY NINJA by Mokool Apps mokoolapps iPhone and iPod touch Apps 0 Dec 19, 2013 07:36 AM
Speed of Ripping Apps old-wiz Mac Applications and Mac App Store 1 Nov 15, 2013 01:06 PM
Any free DVD ripping apps? DestroVega Mac Applications and Mac App Store 17 Jan 20, 2013 09:13 PM
building a very tiny computer. need a very tiny motherboard aPple nErd Mac Basics and Help 4 Jun 29, 2012 02:35 PM

Forum Jump

All times are GMT -5. The time now is 02:00 PM.

Mac Rumors | Mac | iPhone | iPhone Game Reviews | iPhone Apps

Mobile Version | Fixed | Fluid | Fluid HD
Copyright 2002-2013, MacRumors.com, LLC