
Kickstart the GNUstep Project - 0x09
http://www.kickstarter.com/projects/203272607/gnustep-project
======
kunai
Finally.

I have been extolling the virtues of Obj-C and Apple/NeXT's Cocoa's APIs and
its legendary user interface design since I first saw it. When I found out
about GNUstep about a year ago, I kept asking myself why nobody else had
picked it up.

I realized that the people who liked Obj-C and Cocoa just used OS X. GNUstep
was a pointless waste of time for a Cocoa developer, but with OS X quickly
seeming like the replacement for Windows on the desktop, I'm glad it's finally
picking up steam.

But, as we said prior, the people that care _just use OS X._ Their target
platform is OS X. The Linux users are happy with WINE and GTK+. There's
nowhere for the project to go, and I fear that this Kickstarter will be a
failed effort.

I'm putting down my cash for this. I want to see it succeed. I know it
probably won't.

If it does, well, the rest is history. Maybe it will jumpstart Obj-C
x-platform like Mono did for C#.

\------

also, for those interested in the NeXT-style look and feel, the Window Maker
(GNUstep WM) LiveCDs have had consistent snapshots and are always updated;
based on Debian testing:
[http://wmlive.sourceforge.net/](http://wmlive.sourceforge.net/)

~~~
gcasa
It's not about NeXT or WindowMaker or anything like that. I don't care about
the NeXT look and feel and as you can see from the video and the screenshots
GNUstep has moved away from that look.

I should point out that there are anumber of companies who have moved their
products to Windows using GNUstep. THIS is the point of GNUstep, to allow both
development of new projects and porting of existing projects to other
platforms without the need for much code change. There are two examples of
companies which do this today:

[http://www.testplant.com](http://www.testplant.com) \- Testplant ported their
EggPlant app (a testing app which is script driven) which is the core of their
company to Windows. NOW the revenue from the Windows version makes up more
than 2/3rds of the company's revenue.

[http://www.apportable.com](http://www.apportable.com) \- Got an Android? Got
an android that runs any game which is familiar to you from iOS... well, guess
what... chances are these guys probably ported it... and they used GNUstep to
do it. GNUstep is currently running on _millions_ of devices out there.

So the sentiment "just get a mac" in this context, makes absolutely no sense
at all and, in fact, completely misses the point.

Greg C.

~~~
weavie
Using GNUstep to develop Android apps is a HUGE win. You really should push
this angle more. Look at the success Xamarin have with their 1 language for
multiple mobile devices solution. You have the same thing going.

------
sillysaurus
I'm sorry to be a downer, but there needs to be a reality check, because
future open source projects can learn a thing or two from this.

This project is unlikely to be successfully funded. In fact, "unlikely" is a
mild word for just how unlikely it is to succeed.

Problem #1 - No clear value demonstration to the end user. The video is... not
very good. The primary reason it's not very good is because it's asking people
to read. People react instinctively to faces, to the sound of a person's
voice, and to feeling connected with them. It's no coincidence that virtually
every successful Kickstarter campaign contains monologues by their campaign
creators. Thus, while there may be a value proposition embedded somewhere in
the video, it's probably lost on most people who watch it because they just
aren't really identifying with what is being presented.

Problem #2 - a $25 minimum price point. The gamedev industry has repeatedly
proven that by enabling people to contribute $5 and $10, you reap about 20-40%
more income than you otherwise would have. This truth isn't restricted to the
domain of gamedev. The evidence for this is that virtually every successful
Kickstarter project has low-tier contribution levels, often contributing a
significant amount to the bottom-line of projects that aren't going to deliver
a tangible product. E.g. this may not be so important for projects like
Soylent, where the end-user will receive something tangible, but it's pretty
important for most projects that weren't set up with the goal of taking
preorders.

Problem #3 - Too high of a threshold for funding. $50k is not reasonable when
the value proposition is so unclear. I could see this project reaching $5k or
maybe even $10k. But it's not reasonable to calculate how much it would cost
you to work on it, and then use that as the funding goal. "What would the
crowds be willing to pay?" takes priority over "How much would this cost me in
terms of my time, and what is my time worth?"

~~~
chimeracoder
> Problem #3 - Too high of a threshold for funding.

I looked at this and had the opposite reaction. $50K is between 50 and 75% of
a full-time developer's salary in NYC for a single year (I believe it's
similar in SF). Are we expected to believe that that's _all_ it would take to
get Cocoa libraries running seamlessly on GNU?

Granted, I've never dealt with Cocoa at all, so maybe I'm overestimating this,
but it seems like a _lot_ of work.

I mean, how can you take a 15-year, multi-person project, and then assume it's
going to be completed with a single person-year[0]?

[0] I don't mean literally a single person - I'm referring to a person-year
being a unit of "work" (ie, the theoretical work equivalent of one person for
a year).

~~~
_delirium
I'm also skeptical, but I think the comparison with regular dev salaries
overestimates the money that would be needed, at least for some projects.
There are many volunteer contributors to open-source projects who would be
willing to move to working on them full-time, or at least more-time, for much
less than market rate. For example one of the SBCL devs did a _lot_ of work on
the compiler for only $16k ([http://www.indiegogo.com/projects/sbcl-
threading-2011](http://www.indiegogo.com/projects/sbcl-threading-2011)), and
the Git-Annex Assistant guy worked on it for a whole year for $25k
([http://www.kickstarter.com/projects/joeyh/git-annex-
assistan...](http://www.kickstarter.com/projects/joeyh/git-annex-assistant-
like-dropbox-but-with-your-own)).

Granted, if you have to hire devs not already part of your project at market
rate, things will go way up from that.

------
sthatipamala
I'm still really sad that the Etoile OS project died out.
([http://etoileos.com/etoile/](http://etoileos.com/etoile/)) Maybe it can
start up again if GNUStep catches up to 10.6.

~~~
0x09
Étoilé svn is actually rather active. I suspect the reason the site has
languished so badly is that the focus largely shifted away from the desktop
environment and towards producing a development platform with tighter
involvement in GNUstep's own development.

------
jbellis
Gregory Casamento, the Kickstarter author, is Chief Maintainer of GNUstep:
[http://www.gnustep.org/developers/whoiswho.html](http://www.gnustep.org/developers/whoiswho.html)

~~~
kunai
It's worth noting that this is the author of the _campaign_ , not the author
of the entire _company_.

~~~
gcasa
I am the chief maintainer of GNUstep. I wrote most of AppKit and all of the
InterfaceBuilder equivalent Gorm. I run the GNUstep free software project, I
was appointed as it's lead by Richard Stallman.

Please read:
[http://www.gnustep.org/developers/whoiswho.html](http://www.gnustep.org/developers/whoiswho.html)

Gregory Casamento

~~~
kunai
Gorm keeps giving me segfaults when I try to drag files from it to
ProjectCenter (or vice versa). Even when I open any interface builder file in
Gorm, it segfaults. I run Debian Wheezy.

~~~
gcasa
Ouch! I'll test this and see if I can recreate/fix it. One thing to make
certain of is that you're using GNUstep from subversion. The debian packages
are almost always about a year out of date, unfortunately.

~~~
kunai
Ah! That seems to be the problem. I'll try the SVN repositories; I just
downloaded the development packages from apt.

Thanks for your help. I see that the project has already reached 10% of its
goal... maybe we can make this happen.

------
asveikau
I had my first exposure to Objective-C using GNUstep on a Linux box in about
2002. I am grateful that it existed and it was there for me to be exposed to
it; I was pretty young and probably could not have afforded a Mac in those
days.

As objc and Apple itself has gained so much steam over the years, it's kind of
funny to have learned it long ago via a clone of NeXT stuff. Most folks
working in the language have no idea that it could possibly exist outside of
Apple and tend to think of all the framework underneath them as a black box. I
think maybe some of these folks would learn something by looking at an open
source re-implementation of these NS* classes, or attempting such an endeavor
themselves, even if on a small scale.

Also: objc is just too interesting for Apple to hog it all for themselves, or
for it to be a one-implementation language.

~~~
visualR
Agreed. Cocoa is the most productive environment for desktop development. It
is unrivaled.

~~~
asveikau
I don't know if I'll go quite that far; I'm not going to put on objc blinders
to the point where I'm unwilling to see what other platforms do well.

But man, seeing objc and comparing it with its peers across multiple
decades... In a world where most people were doing C++ and doing it badly[1],
or doing Java and doing it badly, it was very eye-opening to see this tiny
little runtime that adds objects to C and doesn't do a bad job of it.

[1] and I'm talking the pre-STL, pre-C++11 at that.

------
Argorak
My biggest problem with GNUstep is that there is never any mention of an OS X
build.

There was one, but it is pretty broken and answers to inquiries were basically
answered with "why would you even want to do that"?

Quite simply: for testing purposes! Most Cocoa applications are developed on
Macs, so being able to build them with the "other" framework on the same
machine would help alot.

------
reedlaw
While I'm glad to see the effort to enable more cross-platform application
development, I wonder why the open source community doesn't produce its own
cross-platform toolkit to rival those made by Apple and Microsoft. It seems
that far too often the vision behind open source projects is limited to
copying successful closed-source projects. I understand it's much harder to
launch an open source project in an altogether new category, but it's that
much more exciting when it does happen. How can innovation be encouraged in
open source? It seems somehow there needs to be a greater potential for
financial reward to encourage such developments.

~~~
schrijver
Loads of radical innovation takes place as Open Source. Git (the software and
the philosophy it embodies) being a really good example.

As to innovation in software frameworks, it is not going to take place on the
Desktop, it’s taking place in the browser—where every major burgeoning
framework is Open Source.

------
trumbitta2
The video says Elegant, then a picture appears and all I see is "old". Then
the video says Simple, and other qualities, and all I see is pictures of
something appearing "old".

I mean, I was there 15 years ago, and Windowmaker on Debian 2.[0|1|2] was my
environment of choice. I loved it.

But as I write from my new MBPr, I see pictures of something appearing "old".

That's why I hope the campaign is funded, but I know that it can and will be
funded mainly by developers. And developers not caring much for that part of
the UX which we call look & feel.

Unless of course somebody is doing a better video with more modern screenshots
while I'm writing.

------
mikecsh
I've backed this because I'd like it to succeed. However, I think Cocotron had
a far better chance at succeeding with their philosophy of using Xcode and
cross compiling to other platforms. This drastically reduces the barrier to
entry for the majority of Cocoa developers and lets them use Apple's
(excellent) developer tools. It's a shame there isn't more collaboration
between the two projects but I understand this is down to licensing
differences.

------
latj
Anyone know how close it is to 10.6? I havent looked at it in years but this
seems like a big job and a low price.

~~~
jdboyd
The projects lead's website mentions that 10.5 API completeness is already
close. Here is the reference:
[http://heronsperch.blogspot.com/2013/06/gnustep-
mythbusting....](http://heronsperch.blogspot.com/2013/06/gnustep-
mythbusting.html)

He certainly doesn't quantify this on either his blog, nor on the kickstarter
campaign though.

~~~
gcasa
Allow me to get this straight... you would like to see a complete analysis of
everything that's missing between the current state of GNUstep and 10.6? I can
produce that, no problem but it is very boring and not worthy of either my
blog or a kickstarter campaign.

~~~
jdboyd
No, it certainly wouldn't be worth posting in either place, but a link would
be cool, even if it was to a mailing list archive where it was previously
placed.

~~~
gcasa
I did do one which outlined which classes were missing, I'll find it and post
a link.

------
return0
GNUStep has been stagnant for years, it is obvious that nobody finds it
interesting. I understand that developers are willing to put up with some
anachronisms to make money off iOS/OSX , but they clearly opted away from them
for open source. I don't see how money is going to change its appeal.

------
synchronise
Does GNUstep support any languages other than Objective-C?

~~~
GuiA
"GNUstep features a cross-platform, object-oriented development environment.
Like Apple Cocoa, GNUstep also has a Java interface, as well as Ruby, Guile
and Scheme bindings."

[http://en.wikipedia.org/wiki/GNUStep](http://en.wikipedia.org/wiki/GNUStep)

~~~
e12e
Also note that Smalltalk could be/is supported:

[http://etoileos.com/dev/docs/languages/smalltalk/](http://etoileos.com/dev/docs/languages/smalltalk/)

------
malkia
If you are able to get WebObjects 4.5.1, then you can take a glimpse of how
GNUStep should've been done on the Windows.

Sorry, but detachable menus, while great (and I love them in Autodesk Maya,
but they start out as regular ones) would not make lots of people happy. Even
Apple more than 15 years ago realized that, and their menus on Windows looked
like Windows.

This is what for example ActiveDeveloper, an IDE based on WebObjects looked
like:

[http://img.brothersoft.com/screenshots/softimage/a/activedev...](http://img.brothersoft.com/screenshots/softimage/a/activedeveloper-88285-1.jpeg)

------
stuaxo
It might be worth looking at how pypy does donations .. the donations are
towards specific subprojects (eg numpypy, stm).

This isn't listed on the front page of the project .. (and the Donations link,
just goes to a wiki !? )

------
hbbio
TL;DR: It would be great to see GNUstep catch up with Cocoa, the guy who run
the campaign IS the project lead, but the only thing that may prevent the
campaign to succeed is the very poor marketing level.

------
adamio
What is the estimated man-hours required to complete this project?

------
chalst
What does "Darling integration" mean? Darling already depends on Gnustep,
doesn't it?

------
jvoorhis
LiveCD?

------
_pmf_
It's dead, Jim.

------
hardwaresofton
What about TideSDK?

[http://www.tidesdk.org/](http://www.tidesdk.org/)

~~~
PommeDeTerre
How does that have anything to do with GNUstep?

~~~
hardwaresofton
From what I can understand (which I wanted to also note -- half the time I'm
really not sure what GNUstep is -- correct me if my understanding of what he's
trying to achieve is wrong), he's trying to make extremely portable code that
will run identically in any OS right?

TideSDK has made pretty good progress on that front, by leveraging web tech.
He could maybe save a heck of a lot of time by porting TideSDK to cocoa and
then pushing that

~~~
visualR
If thats all it was you may as well have linked to Java Swing

~~~
hardwaresofton
so looking at this page:

[http://www.gnustep.org/information/aboutGNUstep.html](http://www.gnustep.org/information/aboutGNUstep.html)

I think my point still stands. He wants to bring cross-platform cocoa,
partnering with an existing product might be a better way to do it

~~~
kec
I think you're misreading the emphasis there. GNUstep is driven by an interest
in objective-c/cocoa, not in making yet another cross platform framework.

------
desireco42
I am sorry but I don't see the point of this.

~~~
coldtea
Because there's something inherently useless about it, or because you
personally don't care about the NeXTStep/Cocoa APIs? If it's the second, then
it's totally irrelevant to the discussion.

The point of this is:

1) to have a working Cocoa port on Unix, Linux and Windows platforms.

2) to provide a way for programmers creating ObjC/Cocoa apps (and with iOS and
the Mac App Store those are hundrends of thousands) to port their apps to
Linux/Windows.

3) To move the GnuStep project forward.

4) To provide an additional set of nice, modern APIs on Linux. E.g. GTK3 is
nowhere as good or feature complete as Cocoa (even 10.6 Cocoa).

5) To eventually give the possibility for cross-platform development of
Mac/iOS apps (e.g games).

~~~
plywoodtrees
The kickstarter page doesn't explain why those things are all worthwhile, or
why one system will solve all of them.

If they want to raise a moderately large amount of money they probably need to
speak to more than just people who already totally understand what they're
doing and why.

> 1) to have a working Cocoa port on Unix, Linux and Windows platforms.

OK but why? That's not a reason in itself.

> 2) to provide a way for programmers creating ObjC/Cocoa apps (and with iOS
> and the Mac App Store those are hundrends of thousands) to port their apps
> to Linux/Windows.

This may make sense, but there are important subsidiary questions:

\- Will you cover enough of the APIs that a substantial number of apps can be
ported? \- Will the coverage be sufficiently high-quality? For example, can
you do animation through GNUstep that's as good as on platform native APIs? \-
Will those app authors care about porting to Linux/Windows? \- Is this easier
for them than just writing a frontend to the native API, as they currently do?

> 3) To move the GnuStep project forward.

This is a tautology. Why does that matter?

> 4) To provide an additional set of nice, modern APIs on Linux. E.g. GTK3 is
> nowhere as good or feature complete as Cocoa (even 10.6 Cocoa).

OK. Will one guy part time for a year overtake GTK3 to get to parity with
Cocoa? What does "nice, modern" mean and why is GnuStep better? Providing the
best API on Linux seems in tension with providing fidelity to Apple APIs.

> 5) To eventually give the possibility for cross-platform development of
> Mac/iOS apps (e.g games).

This seems basically the same as #2, except if you explicitly mention games
then covering 3d and input APIs at high quality seems even more important.

~~~
desireco42
I think you pretty much covered relevant points. Thank you.

