First Draft of Patch Attached

I've just completed a first draft of a tklpatch for IEP-IPP 1.0.006. The patch is intended to apply to the TKL LAMP stack. It brings IEP-IPP to an almost fully configured state: when first navigating to the site, it will ask for the sql password for IEP-IPP database. In this draft, the original code forces IEP-IPP to configure a fixed IP address. I think if another draft is needed, I'd like to try changing the code in init.dist.php (in /var/www/etc) to replace the IP address with $_SERVER['REMOTE_ADDR'] - which I realize could completely not work since I know next to nothing about php.

Note that Jedmeister called my attention to a version 2 left in an unknown state in SVN [1]. After I have tested it and if our admin team has determined it's ready for production, I will guide my students to create a patch for 2.0.



root user: root

root passwd: set on install

mysql root pw: set on install

iep-ipp db: ipp

iep-ipp mysql user: ipp

iep-ipp mysql pw: ipp

IEP-IEP Admin Username: admin

IEP-IEP Admin pw: admin


Intro (Revised)

Individual Education Programs are kept for US American students with exceptionalities. These IEPs are records of their academic, social, etc goals and objectives, their present levels of performance, and their accommodations and modifications. This appliance, IEP-IPP, keeps a database of these things and allows teachers and administrators to track progress.

It should be noted that in most cases, districts manage their IEPs with proprietary web apps. But in the cases of independent schools and especially private pay students, schools have resorted to paying IEP hosting companies that specialize in IEPs to maintain this data.

We have found IEP-IPP sufficient for our needs and our moving away from proprietary, outside vendors. After having in production for several weeks, our administrators find it superior then the proprietary pay solution Excent ( as well than proprietary solutions for local school districts. Hopefully, this can be a boon to private and nonpublic schools.

With the success we're having with it, I thought it would be worth sharing the build notes. If there's any interest at all, my team and I will build a TKLPatch.

THe virtual appliance for VMware that the build notes were derived from are available to .

A link to the developers' site:

I'm not sure what's become of the formatting below, but I believe the notes are still at the very least readable and reproduceable.

IEP-IPP Build Notes (revised 9/25)

Download and start TKL Lamp (hardy) appliance

  apt-get install wget


  tar -xzvf iep-ipp_1.0.006.tar.gz

  mv ipp /var/www/ipp

  apt-get install php-pear

apt-get install php5-gd
pear install mail
pear install mail_mime
Pear install net_smtp

apt-get install php5-pspell (optional and perhaps not implemented well)

apt-get install aspell-en (optional and perhaps not implemented well

mysql -u root -e "CREATE DATABASE ipp"

mysql -u root -e "CREATE USER 'ipp'@'localhost' IDENTIFIED by 'ipp'"

mysql -u root -e "GRANT ALL on ipp.* to 'ipp'@'localhost' IDENTIFIED by 'ipp'"

nano/vim/emacs to edit /etc/confconsole/usage.txt to replace "web" with IPP

Browse to http://ipaddress

touch /var/www/ipp/etc/init.php; chmod 777 /var/www/ipp/etc/init.php

Confirm installation's requirements and suggestions are fulfilled

Have school IEP administrator configure questions about school address, etc

Jeremy Davis's picture

and who knows perhaps Liraz & Alon may decide there is not enough interest to make it a TKL appliance, but TBH I still think its worth making a patch of it if you can be bothered (and/or get your crew doing the hard yards). That way others who may be interested or think it may be useful can have a relatively casual look and test drive.

Regardless, thanks for sharing.

PS IEPs are used in Australia too. Personally I would like to see all students have one and it follow them for the whole of their schooling. But that is another matter...


I think your suggestions are spot on. We're going to proceed to build the patch in the event it can be of use to someone, somewhere.

Liraz Siri's picture

I like that this is a well defined need shared by all schools. I played with the demo and it's a nice application.

A well tested TKLPatch will make it much more likely this makes it into the TurnKey library even though I imagine this will get very little demand initially. But there's no way to tell for sure without trying. Who knows, it might spread by word of mouth and get TurnKey's foot in the door of the educational system.

Also, I second JedMeister - all students should have a file. They're all exceptional.

We've been working with it in a production environment for a few weeks now and so far our IEP coordinator finds it much stronger than the state mandated solutions with which we work. That's a high mark. I'm taking down a list of things that we'd like to change, but they appear at the coding level rather in a configuration file. It's possible we'll make changes to the code if a PHP person can point me where to look; my students and I will try to make the alterations. They're small things (like adding an option in a drop down box. In any event, it's in testing and production now and I will continue to keep detailed notes. As for a patch, my students need a review of the basics and then they'll get on it.

As an English teacher first, and a special education teacher by accident, I've said for years IEPs should be for all students. I suppose it's up to our development communities to take the stinging pain out of that for the administrators. Couldn't agree with you and Jedmeister more. And the content teachers I know who also find themselves working with students in special education - they'd all agree.

Jeremy Davis's picture

I seem to recall you mentioning somewhere at some point that you had emailed the Dev of IEP-IPP, was that true or did I just make that up? If so did you have any reponse? It's unfortunate that it seems to be abandonware (3yr+ since last activity) but I notice that the latest version available for download is 1.0.006 but in the SVN there is a v2.0 (obviously beta, or perhaps even alpha - I haven't actually inspected it). Perhaps if you could rally the troops and/or a suitable programmer type person steps up, it may be possible to resurect the project or otherwise fork it and go from there? If its sufficently useable and a TKL appliance is produced from the current stable code then perhaps that may assist to attract the right attention to revive the project? I don't know a lot about these things but I would think that reviving the original project (either with the asistance of the original dev, or even if they are willing for someone else to take it over) would be preferable to forking.

I did try to email the devs but got no response.

Great to here that their plans for 2.0 are at least partly realized in subversion. I had no luck finding it. Can you, if you get the time, throw me a link so I can take it for test and run it by my IEP coordinator and see if he notices any benefits or obvious deficiencies? hopefully the svn line. I don't know of a way to search with svn.

I won't have a dedicated dev team, as my PHP is very limited (although growing)and there's zero funding. I do have some awesome support from #ampache, where folks have offered to spot the code I need to change. So that could lead somewhere, if I can ever get up to speed on PHP.

I've got basic flow control down for PHP, Python, and Bash, but I can't keep the syntax straight. So here's a question: if I can get funding would you recommend a course, or time spent hacking on my own in a chair, with some distant mentors?

Thanks again,


Jeremy Davis's picture

I guess that only leaves the option of forking it if you (or someone) wants to continue development on it.

The somewhat general SourceForge SVN background/info which includes instructions on how to checkout the IEP-IPP code is here. The V2.0 trunk itself can be browsed online here. I haven't looked at it at all so I have no idea how complete (or incomplete) it may be. If its workable then perhaps that may be a better base for future work, rather than the v1.x trunk. Although without any documentation or guidance from the original dev it may just be easier to start a new version trunk altogether?

As for dev work, though I sometimes manage to create the impression that I know what I'm talking about, the reality is that I am way above my paygrade on most of this stuff! :) Bash (and even then...) is pretty much my limit! If its not practical for you guys to take it on, perhaps we could get some other students learning programing somewhere to pick it up?

As for learning more programing stuff yourself, I don't know. Where I am, I doubt there would be any courses that would be worth it, although it may be different for you. If you're self directed enough, I'm sure there's plenty of good resources online, especially if you have a good mentor in mind who could assist, guide and critic as/when required.

{edited to remove some of the rambling]

I took this thread seriously and built a patch and attached to the original post. Although I did it independently, the kids reviewed it today and blessed it. Spell check is a problem - I reckon it's a problem with the implementation rather than the library.

I'm going to build a VM with the 2.0 version from svn and review it; if it looks strong to me, I'll have the admin team at school check it out and determine whether it's a viable upgrade path. Based on their determination, I may have the kids built a TKLPatch for the 2.0 version - it it's a good candidate.

As I always, look forward to the feedback and really appreciate the strong community here.


Tried to build from v2.0 of IEP-IPP from svn, based over TKL LAMP. 2.0 appears not ready for production. At all.

Jeremy Davis's picture

Sorry to head you off in the wrong direction!

I have been in touch with the developer, and have learned that IEP-IPP v1.0.006 is being put to work at districts and sites around the globe. I suggested he stop in at this forum and share with us use scenarios, project status, etc. I don't know that he'll do it, but he was very pleased to see progress toward making the installation and deployment of this solution made painless through the power of virtual appliances. He characterizes the development as stalled, and suggested he allowed it to stall because of the success of the stable version.

At last count, I've got 18 downloads of the IEP-IPP appliance (direct downloads notwithstanding), and another 10 downloads of the ISO distro (again, direct downloads notwithstanding). I think I mentioned it before, but they're available at, along with the patch itself and build notes.

I'm still hoping the dev shares with us some use scenarios and deployment information. He suggested it is in widespread use.

Hope this lil bit of info is helpful. I guess with Google Analytics...

Update: Between the ISO and the VMs, downloads of the IEP-IPP appliance are at 101 (direct downloads notwithstanding) as of 11/30/10.

Jeremy Davis's picture

Great to hear that its not abandonware, and just stalled. Also I would say that 28+ downloads in a month, while maybe not as high as many existing TKL appliances, still shows considerable interest IMO! Its pretty much one a day!

Hopefully we'll hear from him here, but regardless I think it'd be great to have this join the raft of new appliances to be released. Just have to cross our fingers and hope that Liraz and Alon agree :)

I was pleased to get a response the one time. As I've said, we've found it far better than proprietary solutions we've used, and, of course, I'd love for this one to be picked up and cared for with the other adopted appliances. But I'll certainly be understanding and won't take it personally if it isn't. What the original project needs is a vocal advocate and a forum of potential users. The stable release I've used has been in place for several years with few bugs reported. Once I learn to customize the logo and school name on the src generating the PDF, I will share what I've learned.

But I can say this: IEP-IPP with TKLBAM is a fantastic match that solves so many issues simultaneously - and with zero expense so far. That will be attractive to administrators of small, independent, nonpublic, and private schools alike.

Update 10/11: I've just interviewed the people who rely on IEP-IPP daily here - our IEP coordinator and our curriculum director. I wanted to see if they still felt as strongly as they first did. Everything I've passed on from them still goes. It's better than the proprietary system we did rely on, and in some ways (simplicity, ease of use) it's better than the district webapps we have to work with. With that in mind, I think we're submitting a write up about it in a publication by MANSEF (Maryland Association for Nonpublic Special Education Facilities). Let's see where that leads.

I'd love to know about other versions that the original.

Add new comment