Drupal

Druplicon

Welcome message


Well it has come to an end...

Pippen101's picture

My code is in and done. Been for a little while now. She works like a charm :-D and I am very proud. I should take this time to thank Angie, Robert, Ted, Jeff and anyone else involved in Drupal for selecting me and giving me this opportunity. It has been a blast and what a way to spend the summer.

Drupal had 14 projects and all are ready for public testing : http://drupal.org/node/78942

I have taken the money that I have recieved and spent it on a robot (thats right, a robot). I figured it was time for a new one, this one will feature vision, speech recongition (just simple commands like "Robot, turn right"). O and it will be controllable from a web interface (perhaps a drupal module < evil laugh >).

Pippen101 – Mon, 2006 – 08 – 28 03:56

Long time...no bloggin...

Pippen101's picture

Long time since I have posted in here. Lots has changed (though, surprisly still waiting on a check..hmm..). I have Drupalized the Movielens database and it has shown some HUGE performance problems. I think I have found them and they will be squashed!

I plan on implementing a query object much like the views does. This will allow modules that implement my recommendation api to edit the query through hooks.

Install process has been revamped...again! It runs through and installs incrimentally through cron runs. Scary I know but

Pippen101 – Wed, 2006 – 07 – 26 07:41

Time for an Update

Pippen101's picture

Well I have done several cvs commits. But the real big one is coming soon! Right now you can see my current code, which works PERFECTLY (or so I assume) with nodes. It is still very basic but it will and can recommend only certain types of nodes (i.e. story, or page, or whatever you want) and it can recommend the best nodes no matter the type.

It also has a function that recommends items that are similar to the current node.

This is how it is set up....

Pippen101 – Tue, 2006 – 06 – 13 08:39

[Drupal Content Recommedation Engine] My First Post

Pippen101's picture

I would like to thank the Drupal team and Google for giving me this opportunity and for Webchick and all those envolved for creating this site.

I will post my application at some point to be made public but I dont feel like doing that now. My project is to design a engine to recommed content (in the form of nodes). I have decided on an alogithm by Daniel Lemire of Universit´e du Qu´ebec called Slope One. The module will provide ways for other modules to plug-in and get the top N nodes.

Right now, I am in the process of designing a good road map and reading Drupal docs. Its just read experiment read experiment and then watch a movie :-D. Though I do need to update my site to 4.7.

Pippen101 – Tue, 2006 – 05 – 30 20:24

As Mid-term evaluation approaches...

Pippen101's picture

I am not a fan of setting goals. Put simply, I believe in setting one and only one goal, make it work right. But I think its apporiate to iron out what my goals should be for midterm evals. So...

Pippen101 – Fri, 2006 – 06 – 23 23:55

Well, I just nuked my drupal installation....

Pippen101's picture

But other then that, everything is grand.

I am ahead of schedule! Never thought I would be typing that but its true. My module works, fully. I have been messing with views intergration, which is what nuked my drupal installation. Just a test server with about 3k users and 1k votes. I have gotten the Movielens database ready to be 'drupalized'. Just haven't had the guts to do it. Thats 1 million votes. I know that when my module installs it is going to 'fart' and not finish loading all the data for a site that LARGE!

Personally, I really want other developers to pick up my engine, and develop modules to use it. Right now I have developed node_recommendation.module that utilizes the engine and recommends nodes and only nodes. But I know people use voting data for things other then nodes. And even if they are nodes, they can still break it down to vote only on say movies and not consider any other nodes. Pretty simple to do that with the votingapi.module and cre.module (content_type stored by the voting widget must be 'movies' and the content_type recommended by the module must have content_type of 'movies'). In fact, this ability should be a part of the node_recommendation.module.I shall do that now :-D ....

Pippen101 – Wed, 2006 – 06 – 28 07:34

What is your opinion about a general purpose social network (similar to orkut) in your favourite CMS?

NAron's picture
Must have feature
12% (3 votes)
Visitors will like this
68% (17 votes)
Only interesting for site admins (for visitor analysis)
8% (2 votes)
What a boring idea
8% (2 votes)
Other - I'll explain as a comment
4% (1 vote)
Total votes: 25
NAron – Fri, 2006 – 05 – 26 08:26

IT WORKS!!!

Pippen101's picture

O man I got it to work! I now can get the top-n recommeded nodes for the current user! This is exciting! I created a _block() hook so someone could display it where ever.

Ok but it will recommend nodes that the user has already voted on but that is just a small detail.

Now we are getting close to having something to commit to CVS.

Pippen101 – Tue, 2006 – 06 – 06 06:32

Views Scheduler

Student name

A.Shakur Shidane

Student's member profile on PlanetSoC

Mentor's name

Earl Miles and John VanDyk

Mentor's member profile on PlanetSoC

Description

Views Scheduler project aims to provide the users of drupal with the ability to automatically manipulate content on a regular basis.
While the main objective is to be able to automatically publish
(schedule publishing) content on a regular basis, once the system is completed it should also be able to set up different views containing different contents. The project will also allow the administrator to create nodes in which work ready for publication can be queued up in and published when the time arrives.
Nevertheless it is also important that the 'system can be utilised by
users who have no prior knowledge of drupal site administration (i.e. writers and editors) so that they may concentrate on their main objective which is to produce content rather than worry about administrating. Many people are good content makers but someone needs to make the computer world a little easier for them.
In order to put together a flexible framework the scheduler project
will make use of pre-existing API of views, Actions and
Scheduler.

*Once Members log in they should be able to have their content page customised so that it only shows categories which they have selected.
They should also have access to different views that they can customise themselves, i.e. a view for all new content or a view for all bookmarked items etc

*Members will, furthermore, be kept updated on all new content in certain categories (taxonomy tags) which they can simply choose email updates. They then tick the categories he/she would like from a list of checkbox's with the existing categories. Once new contents are added, under thetaxonomy tags the user has chosen, user is emailed with Title and link to content.

*For an admin it should be easy to create nodes which will list
contents that have been chosen

*For editors it should be relatively easy for them to see all work that needs to edited or approved for publishing then decide on whenitems should be scheduled for release. The scheduler should then be able to publish items on at the chosen time.

Proposal

The project will most likely take me the whole allotted time,
therefore, to minimise errors and make the best of the given time, I
will attempt to make use of the rapid development methodology which
works by verifying/building on each stage against the previous ones.
I will, therefore, split the project:

A) [May 23-june7]
Becoming familiar with drupal core and the following API’s Views,
Actions and Scheduler.

B) [June 7-June 14]
Writing up the requirements / specification, complete with screenshots(This could latter on be used as docs) and this stage will also include the design phase too; how the system will interact with other modules, DB design, UIs design.

C) [June 15-August 10]
Developing code from the design that was produced in the previous stage.
'Making the code available is the first step, as soon as you have it share ASAP'(chx).
This will involve lot of iterative works as I get feedback/reviews from mentors and the community to ensure that the project is meeting its expectation.

D) [August 11-August 21]
Since drupal implements its testing as soon as a code is released, by
this stage most of the test will have been done therefore this time will be for final bug fixes and wrapping up the project and its documents. This time will also act as a buffer, in case previous stages were not finished on time.

= BIO =
======
I am 20 year old student studying computer science at Brunel
University in the UK and have been programming for the past 6 years,
using PHP and MySQL for the past 3 years. In that time, I have come to
develop a few content management systems of my own. Whilst
developing/coding scripts I have become more proficient in coding in
PHP as well as understanding many issues involved with designing
sites' UIs and how this relates to HCI (human computer interaction,
not to be confused with human computer interface), Functionality vs.
Usability.
Over the past few years, I have come to be a developer of www.bleach7.com, which has its own CMS system, which was built up from
scratch to meet the needs and requirement of our user base.

I am currently in the process of creating an editorial section for bleach7 where users are given permission to create editorials (a blog
by any other name is still a blog) and once they post something it is published in the editorial section under their rank.

For a while now I have wanted to get involved in open source
development but never really found a way I could participate since
most organisations that I have gone to seem to be full of those who
know too much about the product, creating an atmosphere unconducive to
my integration due to elitism within their team.
I personally believe the SoC allows students like me who would like to
get involved in great projects such as drupal, Apache and PHP. To
participate to their heart's content whilst having someone to show
them the ropes to begin with so that we feel like we are at home and
from there onwards imagination and coding skills are the limit.

Content Recommedation Engine

Student name

Scott Reynolds

Student's member profile on PlanetSoC

Mentor's name

Mentor's member profile on PlanetSoC

Anonymous

Description

This engine is designed to allow web site administrators to help guide their users to content that is more relevant and interesting. It is a Collaborative Filtering Approach using the VotingAPI.

Pretty simple goal....very tough to accomplish.

Proposal

My Google Proposal. It has changed but this is it
========================================

Drupal already has the basic modules needed to design a recommendation module in the VotingAPI and the SimpleVote. I would like to design a recommendation engine that uses these two modules and incorporates page views (and maybe a new voting module) to recommend content to users. This will allow web site administrators to help guide their users to content that is more relevant and interesting. Ideally, the module should keep track of the users page views to track their interests. Oftentimes, a user does not rate content that s/he found interesting. It should also use this information in conjunction with those that have similar interests to rate different content. It should work much like Findory, which rates content on the people that read it. But, it should strive not to be a popularity contest. Sometimes the most interesting items are those hidden from the popular view. It is an important function but a very difficult one to implement.

Goals:

1. Deliverables:
Determine a strong algorithm using users votes, current user peferences and page views.
Create ContentRecommendationEngine module
Design a road map for further development

2. Optional:
Develop an additional voting APIs to better extract important information

Time line

1.Project analysis and design (June 15)
Getting more familiar with Drupal and its module system
Gain complete understanding of both SimpleVote and VotingAPI
Determine what makes a node interesting/relevant and design basic algorithm

2.Design ContentRecommendationEngine (By August 10 )

3.Create a way to produce a list of content similar to users preferences (End of August)

Why Me:
I am graduating on Sunday May 7 from the University of Dayton with a B.S. in Computer Information Systems. In September I will be attending the University of Cincinnati on full tuition scholarship in their M.S. in Computer Science program. I am the recipient of the Computer Science Research award for my work in Grammatical Evolution and robotics from the University of Dayton. I was also awarded the GKM Systems Award for Innovative Programming, commonly known as the 'hacker' award. I have had 4 papers published at various A.I. conferences on Grammatical Evolution.

Besides my interest in computers, I am also a musician. I play the cello in both college orchestras and ensembles as well as studying privately. I will be receiving a minor in Music on May 7. It is a large part of my life and much of my creative energies flow from music. I am always amazed at the connections that can be drawn between programming and music performance. Both are very much an art.

I have spent the last two years working for both the Criminal Justice Studies and Music department designing web pages. Over my tenure, I have had the opportunity to explore web programming through PHP and VBScripting. I have designed a CD cataloging intranet site for the Music Department that uses MySQL and PHP. It also extracts the song information from an iTunes library XML file.
(http://academic.udayton.edu/crimjust)

I have also designed a site for Unique Plumbing Co that uses PHP. This site allows users to submit bid documents which are then created into pdf files via fpdf and sent as email attachments to the Unique's bidders. The main focus of this site though was to create a small but visible web presence for the company. (http://www.uniqueplbg.com)

Through my formal education I have had the opportunity to work on challenging problems in artificial intelligence and this experience (along with my interest in the field of A.I.) gives me solid experience in providing creative new approaches to difficult problems. I am a very creative person and I feel that I can provide a new and creative approach to providing recommended content to users. Drupal has all the basic tools and I want to provide a unique approach.

Open source and me

I have long known that graduating from college in no way makes you a good programmer. I started reading and using open source projects because it provided me an opportunity to enhance my education and I have always been one that likes to look 'under the hood'. Last year for SoC I remember browsing through the projects and finding few that particularly interested me and of those projects, I believed they were out of my programming experience. It would have been fun to work on XMMS2 but I have little knowledge of audio processing. I have always thought that the pride of open source programming lies in the quality of the program and I did not feel that I could contribute anything of quality. For this project, I feel that I can produce something of worth and it sounds likes fun.

I have been searching for a nice way into open source programming and this is an opportunity that I can not pass up. And through the research already for this project it has open my eyes to a great many interesting issues in providing a better experience to the user.

It is important to note that I will be returning to school in the middle of September so I can stay on with this project past August.

XML feed