PDA

View Full Version : An applenova members project ?


AsLan^
2005-11-29, 09:56
So... it's been mentioned in the past that people might be interested in starting some kind of open source project.

What do you guys think ? should we start something, and if so... what ?

Gargoyle
2005-11-29, 10:08
I am up for this and I know a few others probably will be too once they read the post. As for ideas tho' I am all out. I would like it to be Java or Objective-C and to start with something basic so I can learn as I go.

Or

We could make the new CMS which I have been working on open source. Its PHP MySQL at the moment and I would love feedback about not only my code but also with the theory behind the way I have done things.

AsLan^
2005-11-29, 10:14
I can do java, and I'm willing to try Obj-C too, perhaps we can make up an Apple trivia game or something, that's fairly basic and there is room for sprucing it up too.

alcimedes
2005-11-29, 10:19
Hey, smart people.

Could one of you take a look at this page (http://www.freeorion.org/index.php/Main_Page) and see if you'd be willing to help these folks out a touch. They're working on making a game along the lines of Master of Orion 2 that would be native in OSX. Excellent project. Unfortunatly, I know nothing of programming.

Brad
2005-11-29, 10:23
We could make the new CMS which I have been working on open source.
I think this would be a fantastic idea.

And, no, I'm not just saying that because I want us to have a kickass CMS. :D

AsLan^
2005-11-29, 10:28
Please forgive my ignorance, but what is a CMS ?

Gargoyle
2005-11-29, 10:29
Content Management System

Our front page is making a return soon. :)

ShadowOfGed
2005-11-29, 10:30
I think this would be a fantastic idea.

And, no, I'm not just saying that because I want us to have a kickass CMS. :DI will second that, because I also think it would be fantastic, not only due in part to the fact that I've been trying to motivate myself to create one on my own.

I was shooting for something like Python and mod_python, since Java feels like such a mess to me (trying to configure app servers and the like), whereas Apache, mod_python, and MySQL (or PostgreSQL) is much easier in my opinion. I like the OOP and AOP (add-on) nature of Python over PHP, hands down. I looked at Ruby on Rails, but Ruby didn't seem to have as tight integration with Apache as Python does with mod_python.

I think it would be great to work with others from AN on something like this. I've already fleshed out most of the basic framework for my ideas; if anyone else is interested, just say so! :)

Brad
2005-11-29, 10:40
FYI, AppleNova's servers do not have mod_python support.

trevo
2005-11-29, 10:50
Wow! Wish I could help... Give me a couple of years :|

ast3r3x
2005-11-29, 10:56
I'd be up for helping with any project that contains PHP/MySQL or else I am not sure I'd be much use.

Can someone go into detail a bit more about content management systems? I don't really understand what is so difficult/complicated about them...however I don't think I have a good enough understanding.

Lets create a kick ass forum board that is a lot easier to customize and theme for. Then Brad can do themes everyday! :lol:

Brad
2005-11-29, 11:01
Well, check out MamboServer (what we've used) or PHP-Nuke for some ideas about what a CMS can do.

Majost
2005-11-29, 11:03
Where's the "Meh, I'll look at it, test it, and maybe suggest a line or two of code if I get lucky. And then those few lines will thoroughly break it." option?

:D

Gargoyle
2005-11-29, 11:05
Basically CMS is a fancy name for an content that you update. This forum, a blog etc are all CMS systems. In their most basic guise, a general visitor can read the site as per normal, however, admins or other privileged souls can use a form (just like the ones on this forum) to edit the text the rest of the public will see.

ast3r3x
2005-11-29, 11:08
Still don't think it sounds hard, just tedious. I tend to loose interest in projects 3/4 of the way through once I get basic functionality done. At that point, you know you can finish it's just a matter of time and the challenge is over. But with a project like this with other people involved, it might be incentive to keep working! :)

Gargoyle
2005-11-29, 11:10
Still don't think it sounds hard, just tedious. I tend to loose interest in projects 3/4 of the way through once I get basic functionality done. At that point, you know you can finish it's just a matter of time and the challenge is over. But with a project like this with other people involved, it might be incentive to keep working! :)

Exactly! Right, since there seems to be a few willing peeps here, I'll tidy up the code a bit, and make a zip file of it...

ShadowOfGed
2005-11-29, 11:15
FYI, AppleNova's servers do not have mod_python support.Crud. I guess I've spoiled myself by running my own server out of my house. :\

Is there anything available other than PHP? It's just that the PHP object model isn't very condusive to creating a clean, well-designed, extensible CMS... well, that's just my opinion.

Maybe I just don't know enough about PHP, but I'm not sure you can do aspect-oriented programming with PHP, can you? Any other ideas? I still think it'd be awesome to work on something. :)

Gargoyle
2005-11-29, 11:33
OK, here is what I have so far. (http://www.gargeh.f2s.com/CMS.tgz)

BIG NOTICE
This is purely for you to have a look at the code to see if its something you understand, are interested in or have a much better way to do it! If we get a number of people interesting in this then we can setup a proper CVS/Subversion repository and coding standards etc.

Also, feel free to PM any comments about my code. I work alone on my projects a lot, and I always welcome feedback from others - positive or criticism alike.

ast3r3x
2005-11-29, 12:12
When designing a CMS, you want every shred of information you're dealing with to be an object (well, at least in my mind); scalars really make things messy, and PHP doesn't do much for providing type safety, which is also very useful. Python treats everything as an Object, even primitives like strings, integers, floats, and so on. PHP, Perl, C++, and others treat primitives as something that's not quite an object, so you can't just specify that you want an "Object" parameter in a function where any type will do.
Sorry...what do you mean by object parameter? Care to give a simple example? Are you saying all objects have a basic set of parameters that are the same?

Aspect-oriented programming also requires the language to provide facilities for code to intercept calls to functions and methods elsewhere in the program, and I looked through the PHP docs and found nothing that can provide that low-level functionality to the programmer, whereas there are modules for Python, Ruby, and Java (specifically, AspectJ) that let you do this. If there's something similar for PHP, just point me in the right direction.
What is the advantage of this? Again not trying to be annoying, I don't have a firm base in programming theory :p

Also, the fact that classes must be loaded using include() and require() statements seems like a hack, if you ask me (even if you declare an __autoload() function). PHP is clearly a procedural scripting language with an attempt at OOP bolted on after the fact, and that bothers me, but I'm quite the purist at heart.
How do you call them in Python?

Anyway, why is AOP useful for a CMS? It's because for certain things, like logging, you want a module to be able to alter the functionality of every other object without changing the code itself. The most useful part, I think, is actually if an add-on module wants to add content or modify the appearance of a specific page, be it rendered content, or adding additional fields to an input form. It's very useful to have in a CMS, but it requires a language that can support it.
How does an add on do that? Is this what you are talking about incepting call to functions?

Sorry, without simple examples, I am at a loss. :\

Edit: Maybe I'll understand better if I read that link you gave :p

ShadowOfGed
2005-11-29, 12:17
Interesting stuff ShadowOfGed. Brad, can we split this thread into the project posts and an OOP/AOP discussion?Do we really need to? I mean, if we're going to design and write a CMS, I'd think this small bit of discussion is probably pertinent. I was really just commenting on why we might want or need some of that functionality to design a CMS.

It seems that we have a fair interest in working on a project together, the only question is... what's square one, and how do we get there? ;)

Gargoyle
2005-11-29, 12:50
Well I was quite interested in discussing AOP a bit further, and didn't want it to get in the way of this thread. Oh well, I'll continue and let Brad or other mod decide if it needs splitting.

I have been using PHP for a while now more often than not using OOP. Although I feel I have a very good understanding of the principles - there are always bits that I don't like from a lot of the methodologies and/or language particulars. I have had the (mis)fortune to have spend the last 6 months doing a C# project so I am in a good position for an argument, err discussion on OOP. ;)

OK, first off the include or require statement in php is just like a using, import or whatever in other languages. I see no problem with this.

Second. After struggling with C#, I am very much leaning towards the opinion that a strongly typed language makes no difference at all if you are a good programmer. One just forces you to have the validation in place, the other assumes you know what your doing.

And third, I cannot see anything about AOP that is beneficial to most program scenarios I have come across. Having various bits of code "fire off" on their own seems to be heading towards the mess that used to exist before a LOT of people realised that the goto statement was evil and started avoiding it.

Can you think of any specific examples?

WBG4
2005-11-29, 13:16
A better irc app would be cool ;)

AsLan^
2005-11-29, 14:09
A better irc app would be cool ;)
I'm for a better IRC app, although I'm a little (quite a lot) drunk right now, the wife and I went out and drank some soju...

Seriously though, I'm afraid I personally don't know anything about PHP and I'm not too keen about html stuff, perhaps we could institute our own little version of sourceforge. If people are interested in developing an app, couldn't the posts relevent to that app be split and placed in another thread. That way the app could garner the full attention of the developers.

It seems to me that many members of applenova are developers in one way or another, be it coding apps or websites, or designing the graphics and content that make said websites worth visting.

In a perfect world we would all have a thread with a project we could contribute too.

Like I said, I'm a little drunk, I'll check back in the morning, goodnight all ;)

EDIT: also... I totally forgot to mention to alcimedes, I checked out the freeorion game, it seems they are fiinished with the main code and are mostly debugging right now (not to mention it's a little out of my league). I noticed you made a post about a mac installer which is a great idea but is it large enough in scope for mor ehtan one person ?

pmazer
2005-11-29, 14:32
I think a new poll is in order: What technologies is everyone comfortable with?

I'm personally comfortable with:
PHP/MySQL
Ruby on Rails
Python
Java
Cocoa (kind of, still learning, but would love to learn by participating in an app)

pmazer
2005-11-29, 17:48
Brad,

Perhaps if we go through with this we could get a subforum of this one? It seems like we're going to have a bunch of topics to talk about and one thread will get disorderly.

faramirtook
2005-11-29, 18:26
I'll do whatever I can for whatever project we settle on. I'm working on learning C, and the extent of my abilities is writing a program to solve a quadratic equation.

Brad
2005-11-29, 19:03
Perhaps if we go through with this we could get a subforum of this one?
Why else do you think I made this a separate forum just for programming topics? ;)

Seriously, though, I'll hold off a little bit until it looks like we actually need one. If the time comes that a group of members sets a serious plan in motion for a project, we may branch it off. Until then, I think traffic is low enough in here that just tossing back and forth some ideas won't do any damage.

PS. I decided to split off the AOP posts into a new thread here (http://forums.applenova.com/showthread.php?t=11638).

Mr Beardsley
2005-11-29, 19:18
Having an AN coding project would be cool. I vote we make it a Cocoa project. It seems there are always people asking how to learn Cocoa/Objective-C, and Cocoa is Apple's premier development framework. I would also say to pick a small project for the first time. Maybe after a couple smaller projects we could think of something larger, but for the first couple have them be something where people can get their feet wet, and quickly see the fruits of their labor.

An idea for a starter project would be a Solitaire or Poker game. We have many designers on the forum that we could try to schmooze for content, and a card game is something that any member of AN could install and use.

Mr Beardsley
2005-11-29, 19:22
Oh, and we can setup a Subversion repository at:

http://OpenSVN.csie.org

(Note I am in no way connected with that site, I'm just excited that I found a free place to host Subversion repositories.)

pmazer
2005-11-29, 19:49
I could also potentially host an SVN server, if people don't really want to use a third-party host.

drewprops
2005-11-29, 22:11
I consider myself between Freshman and Sophomore in PHP, not a tight coder yet and I comment the SHIT out of my stuff so that I can figure out what's happening when I come back to it later. I can illustrate a bit. And build cardboard robot suits.

I think that something small, like a Widget, would be a good place to build team skills.

Widget.

Brad
2005-11-29, 22:13
...and I comment the SHIT out of my stuff so that I can figure out what's happening when I come back to it later.
:lol: Don't feel bad. I suspect most veteran programmers do the exact same thing. I know I do.

ast3r3x
2005-11-30, 00:05
I don't comment enough. I often can figure out my code pretty easily when I come back, but looking at others code is always a chore.

WBG4
2005-11-30, 00:29
I think a new poll is in order: What technologies is everyone comfortable with?

I'm personally comfortable with:
PHP/MySQL
Ruby on Rails
Python
Java
Cocoa (kind of, still learning, but would love to learn by participating in an app)
I can do css html and more or less do xhtml

I'm personally comfortable with:
Giving feedback (someone has to beta test this stuff)

AsLan^
2005-11-30, 07:03
I've got a good one...

How about a EULA reader !

Basically it's integrated into the Services menu, whenever a EULA pops up you just highlight all the text, go up to Services -> EULA Reader, and the EULA reader will scan through for licence restrictions that might be odd or too restrictive for your tastes (configurable?).

This app would stop people having to actually read EULA's (like anyone does anyway) and protect you from the risk of giving away your first born or some other such thing that might be found in a EULA.

drewprops
2005-11-30, 07:23
That would be SO cool!!
I bet we'd make the 6 o'clock news~

ast3r3x
2005-11-30, 07:56
Interesting, but what's the point? You read something and will go "hmph, that's stupid" and click agree. If anything if you could do something like this it would be to summarize the restrictions in a couple bullets so the person at least sees them. Either way, I doubt if there are any EULA's that people disagree to. In the end, the want to use the software.

AsLan^
2005-11-30, 09:12
It's not that people won't agree to the EULA and wont install the software, it's that people will be made aware of the kinds of restrictions in EULA's and one day the boilerplate EULA might disappear to be replaced with something sensible.

Here's an example of a little known restriction in OS X. If you make a movie in iMovie and save it as MPEG4 or H264, you cannot sell it. You also cannot burn it to DVD and sell that either. Creation of a commercial product using MPEG4, H264, or MPEG2, is prohibited by the OS X EULA unless you have another license specifically granting you permission to make commercial products..

I'm not trying to defend my idea just because it's my idea, if no one likes it (except drewprops) that's cool. But it would nice to have a tool that summarized the restrictions imposed by EULA's or made the user aware of said restrictions.

The reason that I thought it would be a good project is because it would mostly consist of text filtering which is fairly straightforward and we could concentrate on coming up with algorithms and criteria for identifying restrictions in EULA's.

AsLan^
2005-11-30, 09:35
Some EULA's are just plain wrong too... from my Quake 4 Linux DEMO

Typed out by me because it wouldn't let me cut and paste...

Blah, blah, blah I agree to be bound...

YOU ACKNOWLEDGE AND UNDERSTAND THAT IN ORDER TO OPERATE THE SOFTWARE, YOU MUST HAVE THE FULL VERSION OF THE ID SOFTWARE GAME ENTITLED QUAKE 4(tm) INSTALLED ON YOUR COMPUTER.

So what's the point of the demo then ?

There's also some pretty good stuff in there... if I were to cheat in a multi-player game, my Agreement would "automatically" terminate and I would "have no right to play the Software against other players or make any other use of the Software". That last part (any other use of Software) should have already been covered by my agreement being terminated which (if it were to happen) would entail immediatley destroying all copies of the Software and any Printed Materials.

EULA's are silly.

ast3r3x
2005-11-30, 09:42
I'm not saying it's a bad idea, I just see it as a novelty that won't get used much. Maybe I'm alone in thinking this.

pmazer
2005-11-30, 11:15
I don't think a text parser on that scale would be a good open source project for a couple of people. Eula's all use different language, so searching for text saying particular things would be very, very difficult and would probably require the use of AI concepts such as neural networks, which many people probably do not have a grasp on.

drewprops
2005-11-30, 15:32
Again I come with the widgets...

How about a widget that lets you track threads on this forum?
Maybe just whenever Murbot posts? It could be called the Murbidget?
Is there a widget that lets you shop through all of the widgets available?
A widget that lets you turn OFF the widgets altogether?
A very, very, very SMALL widget? (aka, the midget widget)

Come up with a new DHTML tag to use in posts, a tag that is all our own, that our widget can grab and use.

Hmmmm, how about a global wrapper that wraps around posts from certain people... or people in certain groups. I know. This would be too much work on Brad's end to give the widget a handle and would be proprietary to this forum, possibly only a small group of people....

But when you want to know when there are new boobies....

Hmmm.




I KNOW!!!!!

How about a widget that collects the data from the internal gyro thingy in our powerbooks on a network level and records how much "seismic" activity there is in the Mac community? Maybe we could all shake our 'books at certain times and have it spike.

some kind of massively networked pong game?

Nevermind, I have reports to generate... back to work.

709
2005-11-30, 15:35
But when you want to know when there are new boobies....+++

This would be *most* useful.

Brad
2005-11-30, 15:37
Well, the upgraded forums will have an RSS feed that shows recent posts. There are lots of RSS-reader widgets out there; we could always slap a new faceplate on one of them, but that's not much of a project. :)

ast3r3x
2005-11-30, 15:42
Lets just create a full fledged AI. I'll be the project manager.

709
2005-11-30, 15:43
So if there was a hypothetical "Boobies!!!" thread, we could be updated on new postings for just that thread? Or would it be a global 'New AN Posts' thingy? It'd be cool if I didn't have to check a nonexistant place for a thread that doesn't exist for potential updates.

pmazer
2005-11-30, 15:51
It could be called the Murbidget?

I vote we do this, just so we can use the name.

Well, the upgraded forums will have an RSS feed that shows recent posts.

Woohoo! I've been hoping for this!


Brad, are you still planning on using vBulletin on this upcoming update? Maybe we could write a plugin or something for it, or for whatever you're going to use.

thuh Freak
2005-11-30, 16:23
i lack creativity in terms of ideas to program; but i like to think i'm a better than average programmer. i'll write code if you'll let me.

Brad
2005-11-30, 20:20
Brad, are you still planning on using vBulletin on this upcoming update?
Oh, yes. We have no plans to abandon vBulletin for the foreseeable future. vBulletin can actually create RSS feeds "out of the box," but that feature has not been working. It's working with the update.

ahdustin
2005-11-30, 21:07
I think this is a cool idea, and would be willing to join. In my experience if you are working on an App with some people its best to have a wiki so everyone can plan out whats going to happen and what features there will be as well as who will program what parts.

Wikis are pretty easy to set up in case this ever happens.

AsLan^
2005-12-01, 02:33
Okay, so after looking at all the ideas people have had I did up a quick list...

Content Management System
Trivia game
FreeOrion OS X installer
Better IRC application
Solitaire or other card game
A Widget
EULA Reader
Murbidget
A fully fledged AI

Should we vote ? or is there some other way to decide the direction of the first applenova members project ?

SilentEchoes
2005-12-01, 03:08
If I can ever seem to get an edge over my ADD and lack of free time I'll contribute, but that seems to be an uphill battle.

I have some stuff written for the Gargoyle's CMS though.

thuh Freak
2005-12-01, 11:42
Okay, so after looking at all the ideas people have had I did up a quick list...

Content Management System
Trivia game
FreeOrion OS X installer
Better IRC application
Solitaire or other card game
A Widget
EULA Reader
Murbidget
A fully fledged AI

Should we vote ? or is there some other way to decide the direction of the first applenova members project ?
my votes for AI. the rest of them seem too easy. ;)

drewprops
2005-12-01, 11:44
Okay, here's my contribution for the day...

http://homepage.mac.com/drewprops/applenova/murbidget_001.gif

ShadowOfGed
2005-12-01, 11:48
Okay, here's my contribution for the day...

http://homepage.mac.com/drewprops/applenova/murbidget_001.gifWouldn't a true Murbidget 6000 need to be rated "R"? :lol: :p

AsLan^
2005-12-01, 12:55
So... perhaps another poll then ? With a time limit and whichever gets the most votes is what we start a project on ?

I like the murbidget by the way, applenova doesn't show you who's online etc..

pmazer
2005-12-01, 13:13
This would put a lot of stress on the server unless we implemented a server-side plugin that would return XML of all the posts by one user.

drewprops
2005-12-01, 13:40
Remember that the Murbidget (as it was originally conceived) ONLY checks Murbot's posts... the stress would indeed be mighty. Especially when posting in Boobies, Beer or Hockey.

Edit: But, if it were a general handyman of messageboard navigation it could be cool.... keeping track of threads you're tracking, private messages and such. If it was rigged to work with the established structure of vBB then it might become a nifty, handy little gizmo.