Roodhouse Tech Blog

Technology at Geneseo Community School District 228

Archive for the ‘Apple’ Category

The District’s main server http://www.dist228.org or http://www.geneseoschools.org has been powered for years by a Mac Pro G5 standalone machine.  This unit was top of the line in its day with a 1.5 gigs of RAM, a G5 1.6 GHZ processor, and a SATA hard drive with 80 gigs of storage.  Unbelievably this unit is actually water cooled and is the only Apple water cooled computer that I have ever seen.  To the credit of Apple this machine has worked well and continues to run although the hard drive has shown signs of wear and will soon fail.

Old Webserver Mac Pro

At one point in the School Districts history student records were managed with PowerSchool, to power this program a rack mountable XServe G5 was purchased.  This unit has 4 gigs of RAM, dual G5 PPC processors at 2.3 GHZ, and three drive bays with a RAID storage controller.  PowerSchool no longer exists here in District 228 (and rumor has it will no longer be supported anywhere in 6 months – This project once was owned by a startup, then Apple, then sold to Pearson in 2006) and thus this server has not really been used for anything or than storing student transcripts for its brief time in service.

This little used PowerSchool Server has the perfect specs for an excellent web server more RAM, more processing power, better storage capabilities.


Steps taken to Move the WebServer to New Hardware

1. The Project consisted of backing up existing Web Server. (Simple used TimeMachine on external Drive).

2. Fixing the XServe needed a new Power Supply, needed to be upgraded from 10.3 to 10.4 so that it was able to restore a backup from 10.5.  Most time consuming step,  since the XServe was running 10.3 Panther, it had to first get upgraded to 10.4 before it would accept or run installer to restore a time machine image.

XServe G5 PowerSupply (135.00$ GSX Price)

XServe G5 Internal – New Power Supply Installed

3.  Restore Backup Image to XServe

4.  Fix the Apache Configuration on new server (install new PHP module 5.2).  Good to run latest stable builds of Apache and PHP when moving to a new system.

5.  Test new system (fix minor errors, PostFix problems, permission errors)

6.  Go Live and Power Down old Server.

Site is up and running on the XServe and is working well.

New Webserver Rackmounted at the Middle School

Last Week Apple approved my iPhone app WGRG 100.5 FM.  This app connects to the ogg online radio stream for WGRG 100.5 FM, Geneseo’s High School radio station.  This was created with Geneseo sports in mind,  often I find myself out of town on the weekend and it can be difficult to get a live or current score on Geneseo Football.

Click here to view the app in iTunes

With any iPod, iPad or iPhone and a signal you can now listen to the live broadcast anywhere in the world. Works well on EDGE network so app is great for the iPhone.  I have considered making a blackberry version of this app but will wait and see if there is sufficient interest.

The radio feed itself is being broadcast using winamp and edcast (lame mp3) to capture the audio and is streamed using icecast.  All products are open source and free.  You can read about how I stream the audio online in an earlier post here.

App is free on available on the iTunes app store.

My two new iPhone Apps

Emergency Dial

Princess and the Goblin

My First iPhone App

Roodhouse Tech Blog iPhone App

I have spend a little more time familiarizing myself with mobile app development on the iPhone and now have two more approved apps on the itunes app store.  The first app is called the Princess and the Goblin and is my first attempt at creating a mobile reading platform for the iphone.  The app is free and straightforward featuring over 30 high res illustrations and sketches along with the entire text of the novel. Since this is a chilldren’s fantasy story I thought including full illustrations a definite must and was surprised that larger free domain literature warehouses like Gutenberg do not include illustrations.  I also have hopes for this being my first iPad specific app as well since I am almost finished working on a modified version of this app that uses the better screen resolution on the iPad and includes more illustrations.

Here is a screen shot of this app from the itunes App Store.

My next recently approved app is called Emergency Dial.  The concept is simple and comes from a friend of mine(Thanks Tom).  How does a 3 year call for help on an iPhone?  With many families abandoing landlines and only having cell phones this can actually present a real issue.  This app – currently free as of this writing is straigtforward and acts like a modified Speed Dial.  With a Red Phone Icon you simply go to settings and setup a special emergency number (the police, 911, relatives, etc).  Then when you hit the red button this number is automatically dialed.  Simple and to the point, a 3 year old can simply hit the red help phone button and help is called.

Here is another iTunes App Screen shot.

Using the 3.2 SDK development tools from Apple I developed my first IPhone app.  The goal of this intial project was to simply create a working functional app and submit it to ITunes – as a kind of test run to see what is involved in the process.  The SDK tools for XCode are well polished and their is a multitude of API’s available to get things moving.  For this App I decided to make a simply program that launches a web browser (without an address bar – so you get a more full screen effect) and add two buttons at the bottom for Back and Forward.  This App simply goes directly to my IPhone optimized blog and is able to play embedded podcasts etc.

The process of compiling the software with the correct Iphone framework and correct security certificates is not that straightforward.  There are guides available from Apple but I found this guide to be the most useful.  So useful in fact I will post it in its entirity here in case anyone else is looking for a step by step method of submitting an app.

http://adeem.me/blog/2009/04/04/list-guideline-for-submitting-iphone-application-to-apple-store/

—— Start of Guide ——

I assume that you have iPhone Developer License. Please follow the following steps, one by one:

  • Step 1:

    Certificate is very important part for submitting or testing your application on iPhone. It has the code-sign(Signatures) which will be checked when you submit your application on apple store or to test it on your iPhone. (You can bypass those to install application on your jail-break iPhone or to submit it to Cydia but you will not be able to submit it to appstore. Check my previous post to bypass code signature).There are two steps to create a certificate from developer portal. I simply copied those two from “iPhone developer portal”

    1. Generating a Certificate Signing Request
    2. Submitting a Certificate Signing Request for Approval

    Generating a Certificate Signing Request

    1. In your Applications folder, open the Utilities folder and launch Keychain Access.
    2. In the Preferences menu, set Online Certificate Status Protocol (OSCP) and Certificate Revocation List (CRL) to “Off”.
    3. Choose Keychain Access -> Certificate Assistant -> Request a Certificate from a Certificate Authority.
    4. In the User Email Address field, enter your email address. Please ensure that the email address entered matches the information that was submitted when you registered as an iPhone Developer.
    5. In the Common Name field enter your name. Please ensure that the name entered matches the information that was submitted when you registered as an iPhone Developer.
    6. No CA (Certificate Authority) Email Address is required. The ‘Required’ message will be removed after completing the following step.
    7. Select the ‘Saved to Disk’ radio button and if prompted, select ‘Let me specify key pair information’ and click ‘Continue’.
    8. If ‘Let me specify key pair’ was selected, specify a file name and click ‘Save’. In the following screen select ‘2048 bits’ for the Key Size and ‘RSA’ for the Algorithm. Click ‘Continue’.
    9. The Certificate Assistant will create a CSR file on your desktop.

    Submitting a Certificate Signing Request for Approval

    1. After creating a CSR, log in to the iPhone Developer Program Portal and navigate to ‘Certificates’ > ‘Development’ and click ‘Add Certificate’.
    2. Click the ‘Choose file’ button, select your CSR and click ‘Submit’. If the Key Size was not set to 2048 bits during the CSR creation process, the Portal will reject the CSR.
    3. Upon submission, Team Admins will be notified via email of the certificate request.
    4. Once your CSR is approved or rejected by a Team Admin, you will be notified via email of the change in your certificate status.


    Download/Installing Certificate on your machine

    1. Upon CSR approval, Team Members and Team Admins can download their certificates via the ‘Certificates’ section of the Program Portal. Click ‘Download’ next to the certificate name to download your iPhone Development Certificate to your local machine.
    2. On your local machine, double-click the downloaded .cer file to launch Keychain Access and install your certificate.

    Certificate is installed on your MAC now the next step is create a App ID. (Note:You have to follow this step only once and later you don’t have to make certificates for your other applications.)

  • Step 2:

    Creating an App Id is very easy, you have to follow few simple steps:

    1. Log in to the iPhone Developer Program Portal and navigate to ‘App IDs’ and click ‘Add Id’.
    2. In “App Id Name” enter the name of your application (i.e iphoneapp) and in “App Id” enter something like com.yourdomain.applicationame (i.e com.adeem.iphoneapp) and clicked on Submit
    3. Please write done the “App Id” because you will used this in Info.plist, Bundle identifier tag
  • Step 3:

    Now the next step is to create a Provisioning File for your Xcode and this will be your last step for creating binary which you submit it to appstore.

    1. In to the iPhone Developer Program Portal and navigate to ‘Provisioning’ > ‘Distribution’ and click ‘Add Profile’.
    2. Now select “App Store” in “Distribution Method”
    3. In “Profile Name” type your application name (i.e iphoneapp) which will be your provisioning profile name as well.
    4. In “App ID” select the app name (i.e iphoneapp) which you created in Step 2
    5. Download the Provisioning profile and copy it to your /YourUserName/Library/MobileDevice/Provisioning Profile
  • Step 4:

    Now everything is step up, open your project in Xcode

    1. Select your project from “Group & File” in left side bar and click on “i” ( info ) button.
    2. Move to “Configuration” tab and select “Release”. Press the “Duplicate” button from bottom, name is “iphoneDistribution”.
    3. Click on “Build” tab and select “iphoneDistribution” and type in “Search in Build Settings” filed ‘Base SDK’ and select the current selected Device and change it to what device your application is targetting ( I prefer “Device – iPhone OS 2.0)
    4. Now in “Search in build setting” field type “code signing identity” and select the provisioning profile you created in Step 3. Also do the same thing for the child property “Any iPhone OS Device”.
    5. Now Close the Info screen and select the “Target” > “YourApp” from “Group & File” in left side bar and clicked on “Info” button again from Xcode.
    6. Repeat the step 3 and 4 again for safe side.
    7. Now Info screen is still open clicked on “Properties” tab and in Identifier field type the “App Id” (i.e com.adeem.iphoneapp)
    8. Everything is set up, click on “Build”(cmd+B) from Xcode>Build
    9. Now right click on “Product”>”YourApp” and select “Reveal in Finder”. This is your binary file so please zip this file.
  • Step 5:

    Now you are done from Xcode and iPhone Developer Protal. Now you will submit this binary to itunesconnect.

    1. In your browser type https://itunesconnect.apple.com/ (this website is very slow over https) and login using your iphone developer account.
    2. Click on “Manage Your Account” > “Add Application”
    3. Now answer simple question from apple and submit your application to appstore. Few thing you should have before you submit your application there in System/Mind:
      • Application Name ( must be uniqe)
      • Application description
      • Application Category
      • URL for your application feedback
      • Icon of your application in 512×512 size
      • Main picture of your application in 320×480 or 320×460 size. (Optionaly you can submit up to 4 more pictures of your application as well)

—– End Of Guide —–

As you can see the process is a little intensive probably requiring 2-4 hours of time.
Here is a screenshot of my App. (Roodhouse Tech Blog – bottom right hand corner).

It still remains to be seen if Apple will approve of my free App but I am now familiar and confident in the process of design/compiling/and submitting.  With this first project down I am going to start development a more full featured and functional application.  If you are looking for my app – it is not yet listed as it is still being “evaluated” by Apple :) .

Boxee Internet TV – New Beta

Boxee is probably the best application that is able to convert your computer into a hybrid cable TV media player device.  Recently Boxee has released a new beta version with a much better user interface.  Although Boxee is designed for home entertainment it also contains thousands of video feeds to educational resources.  With the easy to use interface this program works nicely on projector/touch screen setups and could easily be used in a classroom setting.

You can download Boxee from here.  You will need to sign up for a free account.   http://www.boxee.tv/

You can watch a short Podcast on using Boxee (very quickly) on a Mac below: