Part of the EllisLab Network
   
1 of 2
1
Calling all CI developers… interested in developing a tutorial?
Posted: 31 August 2008 09:45 AM   [ Ignore ]  
Grad Student
Rank
Total Posts:  74
Joined  06-03-2006

I’ve had this idea in my head now for a while and I thought the best way to get it out would be to check with others to see if it’s really a good idea or not.

With the new version of CI and EE on the horizon I have been thinking that it would be cool if a bunch of developers from the community came together and wrote a kick ass tutorial series. For those of you who have looked around at other frameworks, Symfony (http://www.symfony-project.org/) did it with Askeet but I don’t think their community was involved. Derek Allard did something similar with BambooInvoice, but that’s not so much a tutorial as an open source app written with CI. I was thinking of putting together something more of a how-to. I think this would be a great way to highlight the CI community and show people how to use CI to build a large scale real world web application. I think it would also generate some good buzz around the framework.

The idea is we would get a group of CI developers together and decide on an app to build. Once we have that we would split up the work and each developer would contribute a piece of the app and a write up explaining what they did. Then as the pieces are completed they will be posted on a site and at the end we should have a pretty nice open source web app with a complete narrative on how it was built.

Since the new version of CI isn’t out yet, I wasn’t thinking of diving head first into this right away but I wanted to get a discussion started to see if there were any developers interested in participating or if anybody else thought this would be a cool idea.

Something to keep in mind is that the new version of EE is going to be written using CI, so maybe that’s all the tutorial people will want. I don’t know, I just wanted to see if this idea sparked a discussion.

If you would be interested in participating or would like to see something like this developed, let me know. If you think I’m nuts or have any ideas or suggestions please post those too.

 Signature 

10 Reasons Why CI Rocks
Built with CI: Sign-Up-Sheet.com

Profile
 
 
Posted: 31 August 2008 10:11 AM   [ Ignore ]   [ # 1 ]  
Grad Student
Avatar
Rank
Total Posts:  81
Joined  09-13-2007

So, what I’m interpreting that you’re saying is you want to develop a tutorial that is based around building an application, right?

I think this is a very good idea.  CI has a couple of video tutorials that do this already, like the blog tutorial and I think there was something else, but I forget what it was.  However, the blog tutorial only goes so far and doesn’t touch on some important concepts in depth, like MVC and best practices for data, imho.

Anyway, maybe a more in-depth blog application would be a good idea.  Also a CMS would be good.

Some sticky points for these projects would be authentication… as CI does not have a built in auth system.  Maybe the tutorial team could ask for input from the various independently developed auth systems like FreakAuth, or Redux.  It would be nice to see several ways to incorporate an auth system.  Or even better, have part of the tutorial be on how to develop an auth system that is flexible enough to use across many applications (or at least this application).

Profile
 
 
Posted: 31 August 2008 10:58 AM   [ Ignore ]   [ # 2 ]  
Lab Technician
RankRankRankRank
Total Posts:  1040
Joined  06-19-2007

@mrtopher - I want you to know first and most importantly I think this idea is grand and has great merit.

In my mind I come back to a few questions such as “oh boy, is this going to be just another CMS, BLOG, PORTAL, ‘backend’”?  You get the idea right?  There are so many of these in the open space already that folks can learn from. Creating a tutorial application that is one of these non-imaginative applications may be duplicative.  I recommend an application that has use for a broad range of small businesses such as an inventory management system, a rental resource management system, a multiuser collaborative workspace (we will have jQuery to work with), etc.

Another stumbling block that rears up is about the use of the user-land extensions that exist.  You will undoubtedly encounter the need for some type of authentication and maybe even a need for ACL.  Supposing that is the case for 22 seconds, which of the user-land provided options is used?  And how do you go about the selection process?  Then, how do you cool the egos of the non-selects involved? 

It will be easy enough to blow that last paragraph off as insane. OK, lets assume Colin (;-))will do that. 

Let’s say you don’t use any pre-built, user-land functionality. Who scrutinizes the code for coding standards or quality (test) before release?  Other than agreeing that CI allows us to built applications in widely varying ways to meet our specific needs - the way we see fit, community opinions vary widely about application development.  The “other” frameworks have established patterns of development and rules established that assist this process along.  They lack the freedom we enjoy with CI. Our freedom to do things as we see fit may present a challenge.  Sure it could just “cum by ya”.  he,he,he.

It’s a great idea. One that has come and gone…and come and gone…and come and gone…and…

Look forward to seeing where this one goes.

Randy

 Signature 

My new therapist is working with me every day, the third one gave up… ohh

Profile
 
 
Posted: 31 August 2008 01:09 PM   [ Ignore ]   [ # 3 ]  
Grad Student
Rank
Total Posts:  74
Joined  06-03-2006

@ehicks727 - Yep, you got the idea exactly!

Your right, most of the tutorials only go so far… the idea behind this one would be 2 fold: to act as a “how-to” and to show those new to CI that it can be used for large scale applications and also to show those that have been using CI for a while how to do new things or a new way of doing something.

I don’t really know what application would be built. I’m trying to keep an open mind until we have a group of interested developers and then we will decide as a group. I have to side with Randy on this one though, I don’t want to build something that has been done over and over again. Because EE is going to be built on CI I think building a CMS is out and blogs pretty much follow the CMS concept so I think that’s out too.

I would envision authentication and application security as one of the pieces to the tutorial. I would rather not use any of the existing plug-ins or libraries out there just because they have been discussed already. But of course this all depends on the kind of app that is developed. I would like to see the tutorial touch on some of the following:

* User authentication with an ACL
* Ajax integration
* Development of an API (REST or SOAP)
* Use of other APIs like Paypal or Facebook, etc.
* Development of a community piece like a Facebook app or something similar
* etc.

Those are just some ideas I thought would be nice to cover in detail.


@Randy - You bring up some good points. I don’t want this to end up being “just another…” anything. I would like to come up with something unique that will really show people who aren’t familiar with CI it’s strengths.

The plug-ins and such might be an issue but I would hope that those developers that would participate would be developing unique code. Maybe some new libraries/plug-ins might be created as a result. But I do see your point… I’m not sure how that would be handled at this time. One thing to keep in mind though is I don’t know if current plug-ins or extended libraries will be necessary with the new CI. Maybe we will be able to get along without them or need to develop new ones anyway. May be able to kill a couple of birds with a single stone.

Let’s say you don’t use any pre-built, user-land functionality. Who scrutinizes the code for coding standards or quality (test) before release?  Other than agreeing that CI allows us to built applications in widely varying ways to meet our specific needs - the way we see fit, community opinions vary widely about application development.

This is a valid point… but to play devils advocate, many non-CI users would see this as a con and not a pro. Many people turn to the RoR or Zend Framework because of the standard way you have to do things. I don’t think it would hurt the CI community to have an example of standards used to develop a large scale app.

I would envision the participating developers would agree on a “standard” for the project and that would be used for development. Of course we would back up our decisions and choices we make and leave the final decision up to the reader. Who knows… if users respond to it, it may become a quasi standard for large scale CI projects.

 Signature 

10 Reasons Why CI Rocks
Built with CI: Sign-Up-Sheet.com

Profile
 
 
Posted: 31 August 2008 01:37 PM   [ Ignore ]   [ # 4 ]  
Lab Technician
RankRankRankRank
Total Posts:  1040
Joined  06-19-2007
mrtopher - 31 August 2008 01:09 PM

I would envision the participating developers would agree on a “standard” for the project and that would be used for development. Of course we would back up our decisions and choices we make and leave the final decision up to the reader. Who knows… if users respond to it, it may become a quasi standard for large scale CI projects.

Sounds good.  I can see a great opportunity for a “proof point” to come in the form of modularized team development through some standardization.  It will be interesting to see how 2.0 addresses this issue.

Cum by ya.  hehehe.  Yes, still a little giggle. But I still think it’s a good idea.

Randy

 Signature 

My new therapist is working with me every day, the third one gave up… ohh

Profile
 
 
Posted: 02 September 2008 06:21 PM   [ Ignore ]   [ # 5 ]  
Grad Student
Rank
Total Posts:  74
Joined  06-03-2006

Well, so far we have had some positive feedback and discussion. Sounds like there are a handful of people who would like to see something like this developed.

Are there any developers out there who would like to throw their hat in the ring to help develop something like this?

 Signature 

10 Reasons Why CI Rocks
Built with CI: Sign-Up-Sheet.com

Profile
 
 
Posted: 02 September 2008 06:56 PM   [ Ignore ]   [ # 6 ]  
Sr. Research Associate
Avatar
RankRankRankRankRank
Total Posts:  2915
Joined  07-27-2006

I don’t typically consider myself “a developer,” at least not professionally-speaking, but I like the idea and would be interested in helping out in some way. I’m also quite swamped with work. (Everybody has a huge project they want to launch Jan 1, 2009…)

Funny how Randy brought me name up about the user-land, ACL discussion. Apparently I’m some ACL naysayer now? Right, I don’t believe in access control! Actually, I can see something like this as a way to show how decisions about that specific topic are handled: Specifically, how they don’t necessarily make sense as part of CI core. Or maybe the conclusion is reached that there is actually a very elegant way for something like that to exist in core. The beautiful thing will be that we demonstrate it through a working example and not a heated forum discussion, where people tend to irresponsibly mix in their feelings and curl up in a cushy chair somewhere, caressing their laptop, sulking and s-s-sobbing like my teenage sister…

Anyway, put me on the list of interested contributors. Professionally I’m a designer, so I would be more than thrilled to manage any design aspect of the project (site-design, art direction, etc).

 Signature 

Check out the Template Library
Oh yeah, I tweet, too (regarding CodeIgniter on occassion).

Profile
 
 
Posted: 02 September 2008 07:29 PM   [ Ignore ]   [ # 7 ]  
Lab Technician
RankRankRankRank
Total Posts:  1040
Joined  06-19-2007
Colin Williams - 02 September 2008 06:56 PM

Funny how Randy brought me name up about the user-land, ACL discussion. Apparently I’m some ACL naysayer now?

It was a joke…as in “I’m sure Colin will call me crazy…again”.

The last two or three “thought pieces” (remember the quotes) you followed me by chiding me about how out of my mind I was.  (I was proven right later, of course, but that doesn’t make me any less nuts).

Lighten up Colin…it was a friendly poke. smirk

Wasn’t meant to offend you.

Randy

 Signature 

My new therapist is working with me every day, the third one gave up… ohh

Profile
 
 
Posted: 02 September 2008 08:02 PM   [ Ignore ]   [ # 8 ]  
Sr. Research Associate
Avatar
RankRankRankRankRank
Total Posts:  2915
Joined  07-27-2006

Oh, come on, Randy. You for one split second thought I was offended? You really are going out of your mind! smile

I actually liked how you almost perpetuated me into this anti-ACL character… I was going to run with it, darnit! Trust me. You know me as well as you think you do.

 Signature 

Check out the Template Library
Oh yeah, I tweet, too (regarding CodeIgniter on occassion).

Profile
 
 
Posted: 04 September 2008 06:42 AM   [ Ignore ]   [ # 9 ]  
Grad Student
Rank
Total Posts:  74
Joined  06-03-2006

Thanks Colin!

You bring up a good point regarding time frame. There is no defined time line and as a matter of fact I don’t even envision doing anything other than planning until the new version is released. Then once it’s out we will come up with a time line that works for everyone. I myself have a project I need to get released by the 1st of the year so I’m with ya there.

Anyone else interested in getting involved?

 Signature 

10 Reasons Why CI Rocks
Built with CI: Sign-Up-Sheet.com

Profile
 
 
Posted: 04 September 2008 06:56 AM   [ Ignore ]   [ # 10 ]  
Research Assistant
Avatar
RankRankRank
Total Posts:  638
Joined  05-28-2008

I could rewrite my auth library tutorial a bit. Maybe it can be off any help? Not too much work there, so might be handy as it’ll probably come as one of the first things.

 Signature 

Bramme.net webdevelopment
If I had a nickel for every time someone told me that my idea for melting down coins to make a giant robotic parrot was a bad idea, I would have one kicka$$ giant robotic parrot.

Profile
 
 
Posted: 04 September 2008 07:48 AM   [ Ignore ]   [ # 11 ]  
Grad Student
Rank
Total Posts:  74
Joined  06-03-2006

Thanks for the offer Bramme!

Authentication will definitely be part of the tutorial as every system needs security/user management, but before you start to write anything let’s see if this is going to take off or not.

There does appear to be some interest in doing this so before we go much further I think we should probably discuss what we’re going to build. That way we might be able to get developers excited about participating. So, below I am including some options that I have come up with. Feel free to vote or voice your opinion for one of the options I have offered here or vote for #4 and post your own idea. If there is a clear consensus then we’ll say “we are building…” and that might help our cause more than just saying “we want to build a large scale web app”.

App options:

1. Online form builder - web app that allows users to dynamically create online forms and manage their submissions through a web control panel (similar to Woofu but you would host it yourself).

2. User/group collaboration system - either project management or some other type of group collaboration system (I think we could use a good open source one of these).

3. Web community in a box - a web community app that has a couple of default community features but is also expandable.

4. Other - you specify

I think this will be the true test as to whether this idea will fly or not. If no one really voices an opinion as to what we should build then this might not be worth doing. So the options are above, the question now is:

As the CI community, what would you like to see built as a complete tutorial series?

 Signature 

10 Reasons Why CI Rocks
Built with CI: Sign-Up-Sheet.com

Profile
 
 
Posted: 04 September 2008 08:55 AM   [ Ignore ]   [ # 12 ]  
Summer Student
Total Posts:  19
Joined  08-27-2008

I am actually in the process right now of creating some PHP Screencast tutorials including a series on CodeIgniter. I am somewhat waiting on the release of the new CI before I publish the CodeIgniter tutorials. The lessons (tutorials) I’m making include a screencast, a PDF book with supplemental information, and source code. I have a Getting Started With PHP tutorial available for free right now so people can get an idea of the quality of the screencasts I will be releasing. Because of the hosting expense, bandwidth costs, and time required to serve the screencasts I’ll be charging $15 per lesson. Anyone who pre-registers before the other lessons are available will get 50% off all the lessons we ever publish.

I am extremely interested in knowing what the CI community thinks of this. Take a look at TheWebLessons.com and let me know what you think.

 Signature 

PHP Screencast Tutorials

Profile
 
 
Posted: 05 September 2008 06:01 AM   [ Ignore ]   [ # 13 ]  
Summer Student
Total Posts:  10
Joined  02-08-2008

First impression is the web site is very clean, no clutter.

This is carried over to the tutorial, I liked the amount of detail provided, often I find books or tutorials miss some very simple explanation which holds me up for ages.

Quality of screen-casts is excellent.

Hope you do well with this project, you can be sure I will watch with interest.

Cheers
Phil

Profile
 
 
Posted: 05 September 2008 06:26 AM   [ Ignore ]   [ # 14 ]  
Research Assistant
Avatar
RankRankRank
Total Posts:  638
Joined  05-28-2008
mrtopher - 04 September 2008 07:48 AM

App options:

1. Online form builder - web app that allows users to dynamically create online forms and manage their submissions through a web control panel (similar to Woofu but you would host it yourself).

2. User/group collaboration system - either project management or some other type of group collaboration system (I think we could use a good open source one of these).

3. Web community in a box - a web community app that has a couple of default community features but is also expandable.

4. Other - you specify

I think this will be the true test as to whether this idea will fly or not. If no one really voices an opinion as to what we should build then this might not be worth doing. So the options are above, the question now is:

As the CI community, what would you like to see built as a complete tutorial series?

I vote number 2. I think it’d be interesting to read tutorials on this because it will cover some pretty advanced stuff like user groups etc.

 Signature 

Bramme.net webdevelopment
If I had a nickel for every time someone told me that my idea for melting down coins to make a giant robotic parrot was a bad idea, I would have one kicka$$ giant robotic parrot.

Profile
 
 
Posted: 06 September 2008 01:42 PM   [ Ignore ]   [ # 15 ]  
Research Assistant
Avatar
RankRankRank
Total Posts:  472
Joined  09-20-2006

I think that this is a fabulous idea.  I went through Mike Boyink’s tutorials as I was learning the ins and outs of ExpressionEngine and they were very helpful.  It would be really helpful to follow something from the start to finish.

Really any of the suggestions I could see as a good subject.

I’m waiting to learn..!

 Signature 

“I am so clever that sometimes I don’t understand a single word of what I am saying.”

Profile
 
 
   
1 of 2
1
 
Post Marker Legend
New Topic New posts Hot Topic Hot Topic with new posts New Poll New Poll Moved Topic Moved Topic Sticky Topic Sticky topic
Old Topic No new posts Hot Old Topic Hot Topic with no new posts Old Poll Old Poll Closed Topic Closed Topic Announcement Announcements
Theme
Change Theme
Visitor Statistics
The most visitors ever was 721, on January 06, 2010 09:38 AM
Total Registered Members: 115021 Total Logged-in Users: 55
Total Topics: 122455 Total Anonymous Users: 6
Total Replies: 647344 Total Guests: 516
Total Posts: 769799    
Members ( View Memberlist )