Who:
Seth Vincent
sethvincent@gmail.com
Contributed to open source project?
I’ve built websites with Drupal for over 3 years, and have recently begun developing contrib projects for which I’ve created sandbox repos. This will be my first time working directly with others on a team for an open source project.
Overview:
Help move Aegir to a 2.0 release by working on the port of the Aegir frontend to Drupal 7, writing a DNS zonefile editor, and helping with other features and issues that need work before Aegir 2.0 can be released.
Description:
Aegir is one of the Drupal projects I’ve been most excited about since getting involved with Drupal. The ability to create, edit, migrate, clone, and delete sites with the click of a button makes site maintenance incredibly easy compared to making updates, upgrades, and other changes manually.
That’s why I want to support the Aegir project by helping to reach the 2.0 release. The 2.0 release of Aegir will include a lot of important improvements, including the port of the Aegir frontend to Drupal 7 and the creation of a DNS zonefile editor – and these are the two features I plan to work on for Google Summer of Code.
Upgrading the Aegir theme, modules, and install profile to Drupal 7 will ensure that the 2.0 release will be supported for far longer than if Aegir stayed with Drupal 6. The DNS zonefile editor will allow users easier control of DNS straight from the Aegir interface, making site setup even simpler.
Schedule:
In the first nine weeks I will focus on porting to Drupal 7 the theme, modules, and install profile that comprise the Aegir frontend. I’ll spend my first week porting the theme, Eldir, to Drupal 7. As I work on the theme port I’ll concurrently develop a broad goal and a task plan for porting the modules and install profile in consultation with the mentor(s) and communicating ideas and plans in relevant issue queues.
After work on the theme is completed and I’ve outlined a plan for doing the module and install profile ports, I’ll spend weeks 2 - 9 porting the Aegir modules and install profile and testing the ported code to ensure that it works.
In the remaining weeks I will work on writing a DNS zonefile editor. I’ll review the work done on DNS so far with the mentor(s), and create a plan for developing the zonefile editor. In week 10 I will begin implementing the plan for the zonefile editor, reviewing work I’ve done with the mentor(s) as I go.
If there is remaining time I will first spend it on testing the DNS zonefile editor and on further testing of the D7 port of the Aegir frontend. I’ll work on additional issues, such as improving multi-server support, at the end of the summer if there is leftover time.
Timeline:
Week one: Work on porting Aegir theme Eldir to Drupal 7. Finalize plans for porting the Aegir modules and install profile.
Week two: Finish porting Eldir to Drupal 7. Port the Aegir Hosting module to Drupal 7.
Weeks three through six: Port the Task, Client, DB Server, Package, Platform, Site, and Web Server modules to Drupal 7. Test ported modules.
Weeks six through nine: Port modules Alias, Clone, Cron, Migrate, Quota, Signup, Task, and Web Cluster to Drupal 7. Test ported modules.
Weeks ten and eleven: Work on the DNS zonefile editor.
Weeks twelve and thirteen: Continue testing ported projects and the DNS zonefile editor. Update documentation to reflect changes in the upgrade to Drupal 7.
Aegir 2.0 roadmap:
http://community.aegirproject.org/roadmap/2.0
Relevant issues regarding porting Aegir to D7:
https://drupal.org/node/1060902
https://drupal.org/node/517620
Relevant issues regarding DNS support:
http://drupal.org/node/922250
http://drupal.org/node/922252
http://drupal.org/node/922264
Mentors:
anarcat
Puzzle:
If we know that isset($a) === empty($a) then what $a could be?
Puzzle answer:
A possible value of $a: 0
isset() and empty() are both returning TRUE.
The var $a exists.
isset() is checking to make sure the var $a exists and is not set to NULL.
The var $a is empty.
empty() returns TRUE when a variable returns a value considered to be empty.
Link to google-melange.com application
http://www.google-melange.com/gsoc/proposal/review/google/gsoc2011/sdv_3...
Link to a sandbox project:
http://drupal.org/sandbox/seth.vincent/1113610
Comments
one happy mentor at one condition
Hi - I would be happy to mentor you. You would need to attend our weekly scrum meetings on tuesday 2200UTC (see http://community.aegirproject.org/scrums for more info) to coordinate with the rest of the team.
I'll take you in, but at one condition: I'd be curious to hear what your actual answer to the puzzle is - what would be a good value of $a in your opinion? ;)
Also, it's possible that I start working on the D7 port right away, what's the timeline for the gsoc applications? There are plenty of other things to do for 2.0, so i can wait for you to start working on this instead of tackling it myself right away.
Oh, dang. Yeah, a possible
Oh, dang. Yeah, a possible value of $a: 0
Thanks, anarcat. This is pretty exciting.
The weekly scrums shouldn't be a problem.
Application schedule:
Applications are due this Friday.
I turned in the application at google-melange.com, so that should be fine.
Accepted applicants are announced on April 25.
From April 25 to May 23 students are supposed to read docs, talk with mentors, and get up to speed on the project.
Actual work starts on May 24
Alright, you're in. If you're
Alright, you're in. If you're accepted by google of course, I can be your mentor. :) Let's hope it works out.
Do not worry about the D7 schedule, i didn't really want to work on this anyways, and it seems like I'll be able to find other work to push ahead before that, especially the queuing systems and security sides.
I made some slight edits to
I made some slight edits to the schedule and added a more concise and specific timeline to the schedule section. Let me know if anything in there seems wonky.
2 weeks seems a bit short for
2 weeks seems a bit short for DNS, but the planning for d7 seems about right.
There's so much to do about DNS that I wonder if we shouldn't focus just on that and let D7 run its course otherwise. Then again, if you figure out D7 entities and port the modules accordingly, DNS will be a breeze, so it makes sense to proceed that way...
Good work.